jaywcjlove /
awesome-mac
This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.
Loading repository data…
Misbah-Aftab / repository
This project is a simple and fun version of the classic Scrabble game, made using C++ and the SFML library. It’s a two-player game where players take turns making words to score points, just like the original board game.
This project is a simple and fun version of the classic Scrabble game, made using C++ and the SFML library. It’s a two-player game where players take turns making words to score points, just like the original board game.
• Upon loading the game, a user-friendly menu is displayed with options to either "Play Game" or "Quit Game." Choosing "Play Game" starts the match. Each player draws seven tiles from the bag.
• The first player places a word on the center square of the board, covering it completely. This word must be at least two letters long.
• Players take turns to make words.
• New words must connect to existing words on the board.
• Words can be formed horizontally or vertically, but not diagonally.
• Players use tiles from their rack to form words.
• Each correct word increases the player’s score, while an invalid word triggers a message indicating that the word is not valid.
• If a player can't make a word, they can Pass their turn.
• Players may choose to skip their turn.
• However, if a player skips their turn three consecutive times, they automatically lose the game, and the opposing player is declared the winner. This feature adds strategic depth to the gameplay.
• A player can give up at any time by selecting the surrender option, making the opponent the winner.
• The game includes a tile bag that shows how many tiles are left.
• As players use tiles, the number decreases, helping them track the game’s progress.
⦁ The game ends when all tiles are used, or all possible words are made on the board, leaving no moves or tiles. The player with the higher score wins.
⦁ If a player skips their turn three times in a row, they lose the game.
⦁ A player can also win if their opponent surrenders.
Trie(Prefix Tree): Used in: TrieDictionary class Purpose: Efficiently stores and looks up valid words by allowing fast prefix matching.
HashMap/Dictionary: Used in: TileBag, Player classes Purpose: Stores and retrieves tiles in the bag and the tiles a player holds, enabling quick access.
Vector(Dynamic Array): Used in: Player, TileBag, Game classes Purpose: Dynamically stores data like player tiles, remaining tiles in the bag, and the list of players in the game.
Tree Traversal(for Valid Word Search): Used in: TrieDictionary class Purpose: Traverses the Trie to check if a word is valid by exploring all possible prefixes.
Recursion: Used in: Board class Purpose: Used in backtracking to recursively check and validate word placements on the board.
Selected from shared topics, language and repository description—not editorial ratings.
jaywcjlove /
This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.
microsoft /
WinGet is the Windows Package Manager. This project includes a CLI (Command Line Interface), PowerShell modules, and a COM (Component Object Model) API (Application Programming Interface).
google /
This project is deprecated and stale. The latest ExoPlayer code is available in https://github.com/androidx/media
microsoft /
This repo is the official home of .NET on GitHub. It's a great starting point to find many .NET OSS projects from Microsoft and the community, including many that are part of the .NET Foundation.
wong2 /
This project is deprecated. Check my new project ChatHub:
The-PR-Agent /
🚀 PR Agent: The Original Open-Source PR Reviewer. This project It is not the Qodo free tier.