Commit graph

25047 commits

Author SHA1 Message Date
toaster
e91115a8fa Goner Setup: Cook 2
- More dialogue
- Restrict access to your choices based on your progress through the Goner Setup.
- Save progress through the setup to gamedata
    - Resets to beginning when Challenges is cleared
- Passwords
    - Only permit the password entry in like the first two seconds
        - Preemptively disarms potentially annoying people in stream chats
    - Make wrongwarp also quit the game on exit instead of returning to the title screen
    - Add GDQ cheats
        - `savetheanimals`
        - `savetheframes`
        - Both do practically the same thing, with slightly modified dialogue.
            - Skips all of the normal dialogue.
            - Performing a social experiment on anyone who might stream this game at a charity event. :)
2023-12-03 22:34:06 +00:00
toaster
f5566ff8c4 Typewriter::WriteText: If dialogue ends with a hyphen, cut down the time to textDone massively 2023-12-03 21:56:09 +00:00
toaster
7fba9321d1 M_HandleProfileEdit: Tidy 2023-12-03 21:51:49 +00:00
toaster
40566274d9 Jart DM assistance
- anonymous namespace for filescope variables, funcs
- Step away from std::optional, use anonymous initialiser instead
2023-12-03 13:01:33 +00:00
toaster
ffb34204f5 Goner setup: cook
- Build list of incoming text
    - First pass of very first section of dialogue
- Use srb2::Dialogue::Typewriter class to handle ticking through dialogue
- Store history log as incoming text is processed (possible todo: scrolling?)
2023-12-02 23:40:02 +00:00
toaster
1cf14f29dc k_dialogue: Seperate srb2::Dialogue::Typewriter out from srb2::Dialogue
This is the minimal subset of properties useful for various non-popup Dialoglogs, such as the impending Goner Setup.
2023-12-02 16:50:42 +00:00
toaster
299e0c3b71 main-goner.cpp: convert from C sourcefile
Also fixes sleepily-commited compilation-breaking typo
2023-12-02 15:40:20 +00:00
toaster
df85b5d625 First pass horizontal menu for Goner Setup 2023-12-01 22:50:03 +00:00
toaster
30383ba82f Replace a whole bunch of copypasted boilerplate with direct call to Command_ExitGame_f
Fixes not going back to the Title Screen at the cusp of the game's true beginning.
Also generally cleaner code
2023-12-01 17:03:37 +00:00
toaster
d0117bc222 Bottom-mounted Dialogue
Makes the drawer more complicated, but the benefit for most circumstances is significant.
In non-splitscreen contexts, pushes V_SLIDEIN|V_SNAPTOBOTTOM HUD elements upwards when the Dialogue is open.
2023-12-01 16:44:11 +00:00
toaster
00fdae8b52 srb2::Draw::Chain: Make the button function name different between public and private contexts
The author of this commit's compiler was overzealous and kept on matching the wrong one
2023-12-01 15:56:08 +00:00
toaster
b2315484d4 Tutorial gametype: No sidebar or timer 2023-11-30 23:35:16 +00:00
toaster
f01e3bce9b CallFunc_DialogueSetCustomSpeaker: Support empty string 2023-11-30 17:54:51 +00:00
toaster
426e9001a5 Dualogue::Draw -- split into multiple segment patches
- Changes the length of dark colour underneath the speaker's name
- Optionally hides the speaker's face if no portrait is provided
- Frosted glass background when player has control
2023-11-30 17:53:26 +00:00
toaster
42f37e7ded Small improvements to Dialogue internals
- Guarantee not-visible dialogue on map transition/invalidation
- Don't grab a portrait for skins that don't have portraits
2023-11-30 15:03:48 +00:00
toaster
4c284680ff Without access to the full game, trying to back out of the Goner Setup/Tutorial will give you a quit prompt instead 2023-11-30 00:11:37 +00:00
toaster
0f687be7b5 The Goner Setup
The simplest passable version of the first boot experience.
- The minimal set of options you will want are available right in front of you.
    - Quit
    - Password
    - Video Options
    - Sound Options
    - Profile Setup
    - Begin Tutorial
- Will not start any menujams while this is in progress.
2023-11-29 19:37:05 +00:00
toaster
fd0466a8df M_OptionsTick: Instant transmission
If a menu fade has occurred, perform the relevant offsetting imemdiately, no smooth animation.
2023-11-29 19:36:17 +00:00
toaster
cff207e7aa Don't update menujam before game has truly started 2023-11-29 19:03:11 +00:00
toaster
ada8b362f1 M_LevelListFromGametype: Auto-select the first Tutorial Mode course if there's only one available 2023-11-29 18:58:33 +00:00
toaster
d41188ded3 Permit re-entering the Tutorial Challenge if the full game is accessible to you 2023-11-29 18:51:52 +00:00
toaster
050bf43a87 New intro: Fix other aspect ratio border around STARTUP 2023-11-28 20:43:41 +00:00
toaster
3c19c80842 Intro changes
Multi-stage swagscreens.

Also fixes some issues with using playintro under New Menu conditions
2023-11-28 00:51:34 +00:00
toaster
fcb696d1ad First pass at the "Game Truly Starting" apparatus
- Unlock Ring Cup to get the real Title Screen, demos and all.
- Allows M_InterruptMenuWithChallenges.
2023-11-27 23:52:14 +00:00
James R.
a578f9b37c Merge branch 'disable-cusval-print' into 'master'
Disable console print on cusval change

See merge request KartKrew/Kart!1662
2023-11-27 13:30:27 +00:00
AJ Martinez
4372d0fda8 Disable constole print on cusval change
We use this for a bunch of stuff now, it's just clutter—even in DEVELOP
2023-11-27 02:33:52 -07:00
Oni
29c92b8c31 Merge branch 'limit-prison-bonus-time' into 'master'
Scale Prison bonus time to remaining time and difficulty

See merge request KartKrew/Kart!1661
2023-11-27 06:20:04 +00:00
AJ Martinez
bcf59845e3 Prison bonus time: fix a shitton of bad math 2023-11-26 20:27:04 -07:00
AJ Martinez
119f309cb8 Scale Prison bonus time to remaining time and difficulty 2023-11-26 15:34:11 -07:00
Oni
6666f6d024 Merge branch 'hardcode-ivo-balls' into 'master'
Hardcode Mach Spheres (BIG performance boost for Phantom Cup!)

See merge request KartKrew/Kart!1660
2023-11-26 19:55:05 +00:00
Oni
d90f0b5eed Merge branch 'hardcode-frozen-production' into 'master'
Hardcode Frozen Production Frost Throwers

See merge request KartKrew/Kart!1659
2023-11-26 19:30:31 +00:00
James R
401321e310 Hardcode Ivo Balls 2023-11-25 05:35:06 -08:00
James R
b36695db8d Add Ivo Ball states 2023-11-25 05:10:51 -08:00
James R
1cadcf8804 Add srb2::Mobj::voice_reduced 2023-11-25 05:10:51 -08:00
James R
764a692a5e P_IsLocalPlayer, P_IsMachineLocalPlayer, P_IsDisplayPlayer: let player pointer be const 2023-11-25 04:51:13 -08:00
James R
455b402731 SidewaysFreezeThruster::init: fix infinite loop under MinGW 2023-11-23 00:47:26 -08:00
James R
9ff174dd06 Hardcode Frozen Production Frost Throwers (ceiling and horizontal versions) 2023-11-22 23:53:14 -08:00
James R
e6d375d127 Add Frozen Production Frost Thrower states
Change from Lua: Ice Dust hitbox is twice as wide
2023-11-22 23:53:14 -08:00
James R
ea697d2048 Physics changes for players in ice cube state
- Cancel offroad
- Inputs do not work
  - Cannot accelerate
  - Drift/Brake does not work (side-effect of P_PlayerInPain)
- Sprite shakes if icecube.shaketimer
- Sprite is colorized Cyan
- Max friction (slippery)
- Player is considered to be in a pain state
- Sprite slowly turns clockwise
- Sprite tilting is disabled
2023-11-22 19:04:30 -08:00
James R
e89c34ac74 player_t: add icecubevars_t 2023-11-22 19:04:30 -08:00
James R
063d7946a3 mobj.hpp: add srb2::Mobj class, abstraction around mobj_t
API is still a work in progress and is not yet
comprehensive.
2023-11-22 19:04:30 -08:00
Oni
f49206b1cf Merge branch 'ringbox-offset-fix' into 'master'
Fix visuals on roulette latency compensation

See merge request KartKrew/Kart!1657
2023-11-23 02:02:00 +00:00
Sally Coolatta
6216b077f0 Make ring box use khud_rouletteoffset 2023-11-22 20:49:52 -05:00
Oni
392d4a4d5f Merge branch 'greyscale-vote' into 'master'
Dimmed votes are greyscale

See merge request KartKrew/Kart!1658
2023-11-23 01:31:37 +00:00
Sally Coolatta
5207af40b1 Fix odd low player count servers
Has been killing me ever since it got into master. When vote count changes, one of the votes won't be sliding back and forth across the entire screen.
2023-11-22 20:14:01 -05:00
Sally Coolatta
770293e04c Dimmed votes are greyscale
Makes the visuals on the voting screen significantly more clear
2023-11-22 19:44:39 -05:00
Sally Coolatta
0b22e8eb00 Fix visuals on roulette latency compensation
- Latency is based on D0 instead of D2.
- Confirm offset is now adjusted for latency, so it should feel more correct when stopping it.
- Slot machine offset is properly set up to use the slot machine offset instead of the item roulette offset.
2023-11-22 18:50:13 -05:00
Oni
687769623f Merge branch 'buff-faraway-ringboost' into 'master'
Buff faraway ringbox

See merge request KartKrew/Kart!1655
2023-11-22 23:41:09 +00:00
AJ Martinez
98b77b6d37 Reduce ringbox awards in Thunderdome 2023-11-22 16:18:06 -07:00
AJ Martinez
074f1e0061 WIP: Nerf Ringbox handling by a LOT 2023-11-22 15:50:03 -07:00