If you define a variable with type auto and initialize it
with the result of a builder chain -- e.g.
auto var = Draw().x(0)
-- the resulting variable will be an instance of
srb2::Draw::Chain, and calling builder methods on it will
modify the instance itself, instead of creating a
temporary, like an instance of srb2::Draw would.
Hiding the copy assignment can make this a little more
obvious by emitting an error if you try to reassign the
variable later. E.g.
var = var.x(0)
That's the best I can do to mitigate this.
Replaced all mentions of starpostnum and Starpost w/ cheatchecknum and CheatCheck (so Ivo can stop asking why we still need it when its going to save our asses on release patches)
- Fixed followers.pk3 asset hash checking.
- Moved asset hashes from config.h to d_main.c directly.
- Changes to config.h.in require building the game twice
and having it in d_main.c is just more contained.
- Removed old reset on holepunchserver if it was set to
the wrong address. This was only relevant for a short
period of time during development.
- Fixed cv_kartencoremap being used outside of DEVELOP.
- Fixed unused variable warning in GotOurIP.
- Store a netsynced SINT8 `hudrings` on the player struct which stores the last rings the player has during play
- So this doesn't get updated after you finish the level
- Fixes the issue where the bot ghost that inhabits your body after finishing will use your rings, muddying how many you took into the total
- Fixed order of operations that prevented lives earned with GP rings from being given
- Also uses hudrings for consistency
- Make the life-give context in P_DoPlayerExit cleaner
- GPEVENT_NONE
- no GTR_SPHERES
Based on VC discussions
- When you've unlocked add-ons, show "Core Servers" or "Modded Servers" in lieu of "Server Browser
- Adjust the vertical height of the Room Select graphics to not be visually overlapped
Reduces the toxicity of "userlist-bumping", the phenomena where you pick a name that begins as early in ASCII as possible for clout.
Now that only continues to apply to the sort that is already just a little toxic.
Instead of putting you on the room select but forbidding changing the room...
- You haven't unlocked add-ons (formerly forced to CORE)
- Skips the Room Select and takes you directly to the CORE mode Server Browser
- Game has add-ons loaded (formerly forced to MODDED)
- Forbid accessing the Server Browser with a helpful message.
- Reduces tech support burden.
- Parity with the previous entry in the series.
- Let players know if their cv_masterserver was changed, and give them the opportunity to change it back
- A limited number of nag attempts, so if people are using a legitimate custom Server Browser they won't be annoyed for the rest of the game's lifespan
- Show the Server Browser at the bottom of all online menus
- KNOWN BUG: currently overlaps with the Join IP
- we're redoing this menu before launch because it's buggy so this is just another bug on that pile
Ported from KartKrew/Kart-Public!286
Unlike the previous entry in the series, this actually defers outbound rules checks for either selecting "Host Game" on the menu, or starting a server via the console/command line parameters. Only attempting to host a non-advertised game via the menu will have sent out an unnecessary rules request to the MS!