Commit graph

592 commits

Author SHA1 Message Date
James R
335fc0b327 Use levelflat->name instead of flatname 2020-06-27 14:30:41 -07:00
James R
067d9b9a63 Merge remote-tracking branch 'origin/next' into gtr-fixes 2020-06-24 19:31:19 -07:00
SteelT
bff6b19056 Merge branch 'marathonmode' into 'next'
MARATHON RUN

See merge request STJr/SRB2!941
2020-06-17 19:36:10 -04:00
MascaraSnake
371a1851e3 Polyobject waypoint movement: Prevent infinite loop if all waypoints are in the same location 2020-05-16 10:24:06 +02:00
toaster
d593e2e1bb 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
MascaraSnake
d708789c3a Store waypoints (for zoom tubes, rope hangs, polyobjects) explicitly 2020-05-12 23:50:30 +02:00
Jaime Passos
39c5ab4e17 Merge remote-tracking branch 'origin/next' into gtr-fixes 2020-05-09 17:12:52 -03:00
MascaraSnake
700b340827 Allow map-wide gravity to be set via level header 2020-05-03 18:33:18 +02:00
MascaraSnake
4b87bee759 Add level header options for setting special stage time and spheres requirements 2020-05-03 17:56:49 +02:00
MascaraSnake
485a4e5035 Remove POLYOBJECTS and POLYOBJECTS_PLANES defines 2020-05-02 12:08:31 +02:00
Monster Iestyn
d1d006a1a7 Merge branch 'thinker-cleanup' into 'next'
Plane movement thinker cleanup

See merge request STJr/SRB2!880
2020-04-24 14:30:52 -04:00
Monster Iestyn
4ef8093e92 Merge branch 'emeraldspawnfix' into 'next'
Fix emerald hunt not working properly, part 2

See merge request STJr/SRB2!887
2020-04-23 15:41:27 -04:00
sphere
f85bfc87f5 Move variable declarations outside of for loops. 2020-04-22 23:17:18 +02:00
sphere
e26788d014 Fix variable-length array definition, just in case. 2020-04-22 23:10:43 +02:00
sphere
01a1297631 Make P_SpawnEmeraldHunt even more concise, using Fisher-Yates shuffle. 2020-04-22 22:46:12 +02:00
sphere
b254cb186b Fix a mistake with P_SpawnEmeraldHunt and make it more concise. 2020-04-22 20:38:58 +02:00
sphere
25affe6948 Make emerald hunt shards spawn at correct heights, and add Float option. 2020-04-22 18:58:40 +02:00
Louis-Antoine
f6e2c7063f Rename lumpinfo_t.name2 to lumpinfo_t.fullname 2020-04-20 23:40:41 +02:00
MascaraSnake
fd598f315e Add an enum for crumblestate 2020-04-17 23:54:37 +02:00
Nev3r
74bd23c275 Actually remove the entire code block in T_MovePlane(), and remove line_t.tagline as it served no other purpose. 2020-04-13 15:17:53 +02:00
James R
b8d40a5783 Merge branch 'dye' into 'next'
Expose colorization to mappers and SOC

See merge request STJr/SRB2!679
2020-04-09 19:50:32 -04:00
Louis-Antoine
892a8dd6e7 Make SRB2 flat like Earth 2020-03-20 18:55:29 +01:00
Louis-Antoine
e3cbdf8fab Use HAVE_BLUA as fuel for my fireplace 2020-03-19 18:36:14 +01:00
Monster Iestyn
31b1188a3e Merge branch 'master' into next 2020-03-15 20:32:43 +00:00
Monster Iestyn
f4cb6e1f5e 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
Jaime Passos
d3ed5ad44f Race is Competition without the lives 2020-02-28 23:47:38 -03:00
Jaime Passos
94738bfd2d Don't get chosen as the tagger if you're a spectator 2020-02-23 19:28:16 -03:00
SteelT
a1cf58cf7f Merge branch 'update-copyright-year' into 'master'
Update copyright year

See merge request STJr/SRB2!801
2020-02-21 20:59:56 -05:00
James R
fb0bedf02c Merge branch 'ogl-colorbug' into 'master'
Fix OpenGL "color bug"

See merge request STJr/SRB2!795
2020-02-20 19:32:34 -05:00
James R
7060083db5 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Tatsuru
3022e38d15 Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into Tatsuru/SRB2-dye
# Conflicts:
#	src/d_player.h
#	src/dehacked.c
2020-02-19 17:46:18 -03:00
Tatsuru
80edefa56e Merge branch 'next' of git@git.magicalgirl.moe:STJr/SRB2.git into dye 2020-02-19 17:32:43 -03:00
James R
8054f341a1 Merge branch 'startup-file-not-found' into 'master'
Fix the issue !678 did, but just don't exit if the file was added twice

See merge request STJr/SRB2!753
2020-02-18 21:50:11 -05:00
Sally Cochenour
07d71778dc FIX COLOR BUG 2020-02-17 01:19:28 -03:00
James R
57492347ed Don't I_Error on startup files only if a file was added twice 2020-02-01 19:32:08 -08:00
Jaime Passos
cf7b4d826a Remove redundancy 2020-01-26 23:46:07 -03:00
Monster Iestyn
ef53672deb Merge branch 'master' into next
# Conflicts:
#	src/g_game.c
2020-01-26 19:23:05 +00:00
Louis-Antoine
b0b22b53d6 Ignore disconnected players in tag gametypes
Disconnected players do not become IT at round start.

If all non-ITs are disconnected, the round ends.

If all ITs are disconnected, one of the non-ITs
becomes IT, or the round ends if in Hide & Seek.
2020-01-23 19:58:13 +01:00
Louis-Antoine
f209721ded Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into keep-body
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2020-01-22 03:57:22 +01:00
Louis-Antoine
412ba38a81 Refactor player spawning code a little 2020-01-22 03:19:15 +01:00
James R
2373a0aa83 Actually actually match the old behavior and check existing levelflats in P_AddLevelFlatRuntime BRUH 2020-01-21 16:47:47 -08:00
James R
d90c0b8fbd Don't check "Too many flats in level" with P_AddLevelFlatRuntime
Also moved the debug down in case anyone uses that.
2020-01-21 15:35:07 -08:00
James R
9cd101c68d Revert "Fix Ploadflat closing the game with "Too many flats in level" error message"
This reverts commit ea129f701c.
2020-01-21 15:35:07 -08:00
James R
f93ddc3f37 Merge branch 'keywords-back-again' into 'next'
Level header keywords

See merge request STJr/SRB2!656
2020-01-16 20:05:24 -05:00
Tatsuru
5d33ca42cf Expose colorization to mappers and SOC 2020-01-11 20:40:57 -03:00
MascaraSnake
661c44b260 Merge branch 'udmf-vslopes' into 'next'
Add textmap vertex slope support

See merge request STJr/SRB2!633
2020-01-11 10:02:51 -05:00
MascaraSnake
2046f524c7 Fix incorrect cast 2020-01-10 23:32:31 +01:00
MascaraSnake
ba7a1c0375 Some minor cleanup 2020-01-10 19:56:29 +01:00
MascaraSnake
682e683a71 Merge branch 'fakeplanes-colormap' into 'next'
Don't create colormap data out of sidedef text for fake planes linedef

See merge request STJr/SRB2!648
2020-01-09 15:04:33 -05:00
James R
735289502c Call it KEYWORDS 2020-01-08 14:41:38 -08:00