Commit graph

109 commits

Author SHA1 Message Date
Steel Titanium
e0b524d6a9 Address compat with old-style names 2020-06-29 23:54:45 -04:00
SteelT
dbd5198ac2 Merge branch 'marathonmode' into 'next'
MARATHON RUN

See merge request STJr/SRB2!941
2020-06-17 19:36:10 -04:00
Hannu Hanhi
6961bba693 Merge remote-tracking branch 'upstream/next' into shaders-224-next-merge 2020-06-07 20:01:05 +03:00
sphere
a0a16e2e79 Fix the "Custom skincolors" branch not compiling with GCC 10. 2020-05-28 18:43:04 +02:00
SwitchKaze
58cac1fd73 Make colors UINT16, increase color freeslots to 1024 2020-05-23 19:35:36 -05:00
SwitchKaze
afe56667b8 Update to 2.2.4 2020-05-22 16:47:51 -05:00
toaster
4c412d931a Introducing Marathon Run. (I was going to call it Marathon Mode, but NiGHTS Mode being right next to it on the menu looked terrible.)
Basically a dedicated Record Attack-like experience for speedrunning the game as a continuous chunk rather than ILs. Has several quality of life features.

Benefits include:
* An unambiguous real-time bar across the bottom of the screen, always displaying the current time, ticking up until you reach the ending.
* Disable the console (pausing is still allowed, but the timer will still increment).
* Automatically skip intermissions as if you're holding down the spin button.
* Show centiseconds on HUD automatically, like record attack.
* "Live Event Backups" - a category of run fit for major events like GDQ, where recovery from crashes or chokes makes for better entertainment. Essentially a modified SP savefile, down to using the same basic functions, but has its own filename and tweaked internal layout.
* "spmarathon_start" MainCfg block parameter and "marathonnext" mapheader parameter, allowing for a customised flow (makes this fit for purpose for an eventual SUGOI port).
* Disabling inter-level custom cutscenes by default with a menu option to toggle this (won't show up if the mod doesn't *have* any custom cutscenes), although either way ending cutscenes (vanilla or custom) remain intact since is time is called before them.
* Won't show up if you have a mod that consists of only one level (determined by spmarathon_start's nextlevel; this won't trip if you manually set its marathonnext).
* Unconditional gratitude on the evaluation screen, instead of a negging "Try again..." if you didn't get all the emeralds (which you may not have been aiming for).
* Gorgeous new menu (no new assets required, unless you wanna give it a header later).

Changes which were required for the above but affect other areas of the game include:
* "useBlackRock" MainCFG block parameter, which can be used to disable the presence of the Black Rock or Egg Rock in both the Evaluation screen and the Marathon Run menu (for total conversions with different stories).
* Disabling Continues in NiGHTS mode, to match the most common singleplayer experience post 2.2.4's release (is reverted if useContinues is set to true).
* Hiding the exitmove "powerup" outside of multiplayer. (Okay, this isn't really related, I just saw this bug in action a lot while doing test runs and got annoyed enough to fix it here.)
* The ability to use V_DrawPromptBack (in hardcode only at the moment, but) to draw in terms of pixels rather than rows of text, by providing negative instead of positive inputs).
* A refactoring of redundant game saves smattered across the ending, credits, and evaluation - in addition to saving the game slightly earlier.
* Minor m_menu.c touchups and refactorings here and there.

Built using feedback from the official server's #speedruns channel, among other places.
2020-05-14 23:10:00 +01:00
toaster
67e01ad66e Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2.git into fickleheart/SRB2-menu-soc-bullshit
# Conflicts:
#	src/m_menu.c
2020-05-11 15:00:31 +01:00
James R
eb0ba37dce Merge remote-tracking branch 'origin/master' into HEAD 2020-04-24 22:10:59 -07:00
toaster
0f591967ff Disable continues outside of no-save/Ultimate by default, but allow SOC to re-enable them globally.
Please look at the merge request description for a full explanation, since I know the vanilla team has been hashing this out and I don't want to add fuel to the fire without at least presenting a solid case.
2020-03-26 20:16:44 +00:00
fickleheart
33a9e5aa83 Merge remote-tracking branch 'upstream/master' into shaders-222
# Conflicts:
#	src/hardware/r_opengl/r_opengl.c
#	src/i_video.h
#	src/r_main.c
#	src/r_main.h
#	src/screen.c
#	src/sdl/i_video.c
#	src/sdl/ogl_sdl.c
#	src/w_wad.c
2020-03-14 12:52:15 -05:00
Monster Iestyn
f186def0bf Include r_skins.h instead of r_things.h in many files where all they wanted from it was skins stuff
(oddly enough, this actually revealed some secret file dependencies previously included via r_things.h! I also needed to include d_player.h in r_skins.h itself it seems)
2020-03-09 13:54:56 +00:00
fickleheart
eaeae45ec2 Use a named macro for menu hierarchy
This _really_ needs to be a UINT8 array instead of
all this bit-shifting nonsense that saves no space,
but at least this way reading the menu structs doesn't
make me want to die.
2020-02-24 18:00:17 -06:00
fickleheart
564cb7d41c Fix missing menuname entries 2020-02-24 17:56:00 -06:00
Jaime Passos
41469d0116 Remove unused SOC menu types 2020-02-23 22:31:17 -03:00
SwitchKaze
99a1840101 Merge branch 'next' of https://github.com/STJr/SRB2 into next-luacolors 2020-02-23 11:50:13 -05:00
James Hale
51137837c4 Custom skincolors 2020-02-21 21:56:39 -05:00
James R
2274129f57 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Monster Iestyn
eca4bc63da Merge branch 'master' into next
# Conflicts:
#	src/g_game.c
2020-01-26 19:23:05 +00:00
Louis-Antoine
4777829d45 Fix mouse in controls setup menu 2020-01-18 20:18:20 +01:00
James R
f97afe47fa Merge remote-tracking branch 'origin/master' into next 2020-01-08 13:27:14 -08:00
Steel Titanium
9a48bc65ec Update copyright statements for changed names 2020-01-06 17:16:27 -05:00
fickleheart
ce0c42a767 Merge branch 'newcontrols' into next-newcontrols 2020-01-04 09:56:24 -06:00
fickleheart
992ead1c85 Merge remote-tracking branch 'origin/master' into newcontrols 2020-01-04 09:35:12 -06:00
fickleheart
77ba835f4f Merge branch 'next' into next-newcontrols
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2019-12-31 12:58:36 -06:00
James R
7616bf5734 IT_PAIR for when you want to define both sides of a menu item 2019-12-30 21:40:13 -08:00
Jaime Passos
9b900e6fc7 TOL/Level platter stuff 2019-12-18 13:24:10 -03:00
fickleheart
0775ddbcf9 Replace direction toggles with a playstyle selection
It's kinda ugly right now...
2019-12-09 22:06:50 -06:00
MascaraSnake
fffd385151 Merge branch 'datestuff' into 'master'
Date stuff

See merge request STJr/SRB2Internal!618
2019-12-06 16:10:36 -05:00
Steel Titanium
a5cdb0a4b3 Update copyright date on source files 2019-12-06 13:49:42 -05:00
lachwright
ea20a1a118 Fix whitespace issues from when I was new to this shit 2019-12-07 02:31:31 +08:00
sphere
693d6b5ca5 Rename "secrets" to "extras". 2019-11-21 01:34:32 +01:00
MascaraSnake
d648a2ad87 Merge branch 'radiomode' into 'master'
Radio mode

See merge request STJr/SRB2Internal!443
2019-11-13 04:16:38 -05:00
James R
6ae6089343 That's a lot of whitespace 2019-11-07 13:42:54 -08:00
toaster
a8169e3844 Sound test is cool now!
https://cdn.discordapp.com/attachments/405336003239477249/641295998395613224/srb20042.gif

* Port MUSICDEFs from Kart.
    * Safe to modify without modifying game, so we can put it in music.dta eventually.
    * "Title", "AltTitle", "Authors" fields are self-evident.
    * "Soundtestpage" and "Soundtestcond" are used to determine which sound test unlockable can play them (set with Unlockable's variable, just like Level Select).
    * "Stoppingtime" and "BPM" both accept floats, and are used for presentation stuff on the sound test.
    * Ironically, we don't share a single field name with them. Such is the case of differing foci, though, and I expect they'll change their implementation to match (since this is necessary for a sound test).
* Change how S_AddSoundFx works to avoid iterating through all of them, and to allow cv_soundtest to only scroll through defined slots (instead of the infinite wall of thok sounds when scrolling to the left).
* Change V_DrawFixedPatch to allow scaling on two seperate axes.
    * Now called "V_DrawStretchyFixedPatch".
    * "V_DrawFixedPatch" is a macro to V_DrawStretchyFixedPatch now (same scale on both axes).
    * Available to Lua under v.drawStretched!
    * Even works in GL!
* Bugfix: Add SR_PLAYER to SOC's menutypes_list.

Stay tuned for the merge request, where I put the onus on the Music Team to finish this off...
2019-11-05 16:23:46 +00:00
mazmazz
0b6651eb00 Remove TTCOUNTERSET to simplify custom title SOC 2019-11-02 12:40:12 -04:00
mazmazz
31d7254d14 Merge branch 'master' into new-title 2019-10-25 22:29:29 -04:00
MascaraSnake
0073310c39 Merge branch 'newmenus' into 'master'
Better looking menus, nametags and much more. (Resolves #245 and #244 and #252)

Closes #245, #244, and #252

See merge request STJr/SRB2Internal!389
2019-10-25 17:46:16 -04:00
James R
96a12b6bed Miscellaneous window de-focus options
Music pausing is now optional.
Sounds may be paused--on by default.
The game itself being paused in off-line mode is now optional.

(showfocuslost now loads from config.)
2019-10-22 21:15:20 -07:00
James R
3c2ccd7107 Don't fade to character select from secret level select 2019-10-19 12:42:53 -07:00
James R
85b453e5b9 Don't fade to Server Options 2019-10-19 12:25:02 -07:00
toaster
869c2e0d1a * Implement fixes/tweaks as written on the gitlab.
* `SPR2_NTAG` last vestiges removal.
    * Removed need for `getskinfromdescription()` by calculating it once, at Menu load, and storing in `description_t`.
    * Fixed nametag colour issues.
    * Support widescreen with nametags.

* Fix a metric SHITTON of compiler errors.
    * Redefining `x` and `y` within scope of previous `x` and `y` (`M_DrawSetupChoosePlayerMenu`)
    * GCC straight up will not let you cast a `const char*` to a `char` (`V_DrawNameTag`)
    * Redefining `lines` within the scope of the global.
    * Redefining `string` within the function-specific `string`.
    * It would be recommended for y'alls to turn ERRORMODE on!
2019-10-19 18:15:54 +01:00
Jaime Passos
8ba122a3fd A bunch of stuff 2019-10-14 02:24:44 -03:00
Steel Titanium
2c7e53f32f Merge branch 'master' into newmenus 2019-10-01 16:52:31 -04:00
Steel Titanium
a18872652f Merge branch 'master' into internal-hotplug-stableid 2019-09-23 00:44:34 -04:00
Alam Ed Arias
924b76d4ee Undo file mode change on menu files 2019-09-20 12:18:57 -04:00
toaster
d7ba804e22 Merge branch 'camerafix' into 'master'
Camera fixes

Closes #105

See merge request STJr/SRB2Internal!303
2019-09-20 11:51:30 -04:00
lachwright
a797e3afed Added Camera Options submenu (provided my files aren't broken again (please D:)) 2019-09-19 17:34:04 +08:00
Steel Titanium
0b5bc8f64f Merge branch 'master' into internal-hotplug-stableid
Just merged in known working code, note that I haven't tested it, so I have no idea if it compiles still.
2019-09-08 01:55:36 -04:00
Steel Titanium
414bff33bf Better directory structure 2019-09-08 01:29:09 -04:00