Room and lobby chat, /host, /fashion, player-colored lines, context tips, and American spelling

- Chat goes to your room (the sandbox, or your game) by default, and to the whole lobby with /all or a leading !.
  Lines from elsewhere say where they came from ([Sandbox], [Game 2]), lobby-wide ones from your room say [All].
  Typing shows only to your room. Protocol 8.
- Hosting: everyone is told who hosts now, and the host can hand it over with /host "player".
- /fashion <item> wears a fashion locally, like /color.
- Lines that mention a player show in that player's color, looked up as they draw.
- Tips are tagged with the item and situations they fit, and those that fit are 1.5x as likely. They turn over every
  10 seconds on one continuous run, show under the menu too, and can be turned off with Tips in HUD / Gameplay. The
  HUD hotbars hide while the menu is up (except on its item tabs).
- American spelling throughout: color, center, gray, mustache, and so on.
This commit is contained in:
shweet committed 2026-11-10 19:37:19 -05:00
1 parent f4e7784f3c
commit 93cdf46d5a
38 files changed
+603 -325

No files matched your search

+3 -3
View File
@@ -18,7 +18,7 @@ constexpr SDL_WindowFlags WINDOW_FILL = 0;
constexpr float CAMERA_FOLLOW = 0.15f;
// Where the camera's corner wants to be: this screen's living fighters' middle (or the spectated fighter) in the
// middle, clamped to the world or centred when the world is smaller.
// middle, clamped to the world or centerd when the world is smaller.
static Vec2 camera_target_get(Game& game)
{
Vec2 world = game.sim.world.size_get();
@@ -44,14 +44,14 @@ static Vec2 camera_target_get(Game& game)
return target;
}
// Eases the camera towards its target.
// Eases the camera toward its target.
static void camera_update(Game& game)
{
game.camera = game.camera + (camera_target_get(game) - game.camera) * CAMERA_FOLLOW;
}
// One tick of the game this screen shows, with what it asks of the match offline: the menu's Play, Escape (or B)
// leaving the results unless it's just closed the menu, and its player's colour. The menu is this screen's alone, so
// leaving the results unless it's just closed the menu, and its player's color. The menu is this screen's alone, so
// it updates before the tick (see frame_run), not in it.
void game_tick(Game& game)
{