summaryrefslogtreecommitdiff
path: root/Userland/Games
AgeCommit message (Collapse)Author
2022-08-26Chess: Highlight piece origin square when dragging pieceJean Lourenço
2022-08-22LibCards+Games: Replace card "value" int with a Rank enumSam Atkins
Because `card->value() == 11` is a lot less clear than `card->rank() == Cards::Rank::Queen`, and also safer. Put this, along with the `Suit` enum, in the `Cards` namespace directly instead of inside `Cards::Card`. Slightly less typing that way.
2022-08-22Spider: Migrate to CardGameSam Atkins
2022-08-22Hearts: Migrate to CardGameSam Atkins
2022-08-22Solitaire: Migrate to CardGameSam Atkins
2022-08-14Base: Launch FileSystemAccessServer at session start-upLucas CHOLLET
2022-08-14Everywhere: Replace hardcoded anon's uid in unveil path with `%uid`Lucas CHOLLET
2022-08-14LibCore+LaunchServer: Move portal directory to `/tmp/user/%uid`Lucas CHOLLET
The `/tmp/user` directory is owned by root, this solution prevents malicious users to interfere with other users' portals. This commit also moves `launch`'s portal in the user directory.
2022-08-08Chess: Import/Export chessboards using LibFileSystemAccessClientKarol Kosek
With this change, the wpath and cpath promises as well as unveiling user's entire home directory are no longer needed. :^)
2022-08-05Minesweeper: Update GML and fix layout issuesthankyouverycool
Converts Minesweeper's main widget to GML, polishes the custom game window, formats the clock as human readable digital time, and defers invoking Field's callback until the main widget has finished relayout. Fixes inability to downsize the main window when shrinking field size.
2022-07-24Minesweeper: Remove decimal point from the time labelKarol Kosek
The timer was updating fast enough to be a little distracting for me.
2022-07-19LaunchServer+SystemServer: Move the portal to a user-specific directoryLucas CHOLLET
Various changes are needed to support this: - The directory is created by Core::Account on login (and located in /tmp). - Service's sockets are now deleted on exit (to allow re-creation) - SystemServer needs to handle SIGTERM to correctly destroy services.
2022-07-12Everywhere: Replace single-char StringView op. arguments with charssin-ack
This prevents us from needing a sv suffix, and potentially reduces the need to run generic code for a single character (as contains, starts_with, ends_with etc. for a char will be just a length and equality check). No functional changes.
2022-07-12Everywhere: Add sv suffix to strings relying on StringView(char const*)sin-ack
Each of these strings would previously rely on StringView's char const* constructor overload, which would call __builtin_strlen on the string. Since we now have operator ""sv, we can replace these with much simpler versions. This opens the door to being able to remove StringView(char const*). No functional changes.
2022-06-30Applications+Games+LibGUI: Fix layout problemsFrHun
2022-06-28Applications: Remove usages of deprecated implicit conversionsFrHun
These deprecated conversions are currently in place to make the system compile, but they are to be removed soon. This prepares that.
2022-06-15Userland+Base: Remove Breakout and Pong gamesAndreas Kling
These games were not very playable and definitely not fun.
2022-06-05Pong: Paint ball antialiasedMacDue
2022-06-05Chess: Paint move marker antialiasedMacDue
2022-06-05Breakout: Paint ball antialiasedMacDue
2022-05-29Everywhere: Fix a bunch of typosLinus Groh
2022-05-26MasterWord: Check guesses against the word listPaweł Łukasik
Previously guesses were not checked which allowed guesses like 'aaaaa' to be entered. Currently there's an option to set if a guess should be checked against the dictionary and rejected if it doesn't exist there. Additionally settings from Game menu have been moved to its own entry - Settings.
2022-05-13LibGUI+Userland: Make Dialog::ExecResult an enum classSam Atkins
2022-04-15Pong: Explicitly clear held keys in Game::reset()Martin Frederic
The paddle's movement is determined by the currently held keys. A key is no longer considered held when a matching keyup_event() fires. However, the event does not fire when the timer has stopped (e.g. due to a game over condition), which can result in the paddle keeping its former direction and moving on its own -- even after the player started a new game. Therefore, any held keys will be cleared explicitly.
2022-04-15Pong: Restart timer if necessaryMartin Frederic
When the player runs into a game over condition, Game's timer is stopped. In order for reset() to work properly, the timer has to be started again. The condition is tracked via a new member variable, `m_game_over`. To prevent confusion, game_over() has been renamed to show_game_over_message().
2022-04-15Pong: Extend Game::reset()Martin Frederic
Previously, the method reset the ball and the paddles. Now, it will also reset and redraw the scores and update the ball's rect.
2022-04-15Pong: Add 'New Game' actionMartin Frederic
This declares Game::reset() public and lets the menu action invoke it.
2022-04-09LibGfx: Move other font-related files to LibGfx/Font/Simon Wanner
2022-04-01Everywhere: Run clang-formatIdan Horowitz
2022-03-18LibCards+Games: Change name of card type to card suitLenny Maiorani
Playing cards have a `suit` such as `hearts`/`diamonds`, not a `type`. Make the internal naming consistent with the way playing cards are typically named.
2022-03-18Libraries: Change enums to enum classes in LibCardsLenny Maiorani
2022-03-18Userland: Change static const variables to static constexprLenny Maiorani
`static const` variables can be computed and initialized at run-time during initialization or the first time a function is called. Change them to `static constexpr` to ensure they are computed at compile-time. This allows some removal of `strlen` because the length of the `StringView` can be used which is pre-computed at compile-time.
2022-03-18Games: Add MasterWordJoe Petrus
A simple wordle clone.
2022-03-18Hearts: Add icon to settings actionLinus Groh
2022-03-18Applications+Games: Drop ellipsis from settings actionLinus Groh
There is no second step to complete after activating this action.
2022-03-18Games: Add reload icon to 'New Game' actionsLinus Groh
2022-03-04LibGfx: Rename Color::from_rgba() => Color::from_argb()Andreas Kling
This matches the rename of RGBA32 to ARGB32. It also makes more sense when you see it used with 32-bit hexadecimal literals: Before: Color::from_rgba(0xaarrggbb) After: Color::from_argb(0xaarrggbb)
2022-03-04LibGfx+GameOfLife: Remove Gfx::make_rgb() and its one userAndreas Kling
2022-02-24LibGUI+Apps: Convert Statusbar Labels to Segmentsthankyouverycool
Segments inherit from Button and let us add clickable widgets to status bars. This patch also adds proportional, fixed and autosized modes for segments and lets the status bar consume all non-clickable segments for override text.
2022-02-16Games: Use default constructors/destructorsLenny Maiorani
https://isocpp.github.io/CppCoreGuidelines/CppCoreGuidelines#cother-other-default-operation-rules "The compiler is more likely to get the default semantics right and you cannot implement these functions better than the compiler."
2022-02-13Userland: Run gml-formatIdan Horowitz
This brings the existing GML files up to spec with the new requirements
2022-02-11LibConfig: Rename pledge_domains(String) => pledge_domain(String)Vitaly Dyachkov
pledge_domains() that takes only one String argument was specifically added as a shortcut for pledging a single domain. So, it makes sense to use singular here.
2022-02-07Meta+Userland: Run the GML formatter on CI and pre-commitkleines Filmröllchen
Now that the GML formatter is both perserving comments and also mostly agrees to the existing GML style, it can be used to auto-format all the GML files in the system. This commit does not only contain the scripts for running the formatting on CI and the pre-commit hook, but also initially formats all the existing GML files so that the hook is successfull.
2022-02-06AK: Move integral log2 and exp to IntegerMath.hHendiadyoin1
2022-01-28Chess: Don't use Vector in a literal iteratorkleines Filmröllchen
2022-01-13Snake: Add link to help pages in menuDavid Lindbom
2022-01-13Pong: Add link to help pages in menuDavid Lindbom
2022-01-13Minesweeper: Add link to help pages in menuDavid Lindbom
2022-01-13Hearts: Add link to help pages in menuDavid Lindbom
2022-01-13GameOfLife: Add link to help pages in menuDavid Lindbom