Commit graph

104 commits

Author SHA1 Message Date
Monster Iestyn
00f8c2ceff Merge branch 'lua-side-enum-bruh' into 'next'
Fix missing bruh string in Lua side string options.

See merge request STJr/SRB2!1017
2020-06-22 15:23:34 -04:00
Latapostrophe
5d81856427 Fix missing bruh string in lua side options. This is stupid. 2020-06-22 21:11:33 +02: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
MascaraSnake
2df5758ecf Allow map-wide gravity to be set via level header 2020-05-03 18:33:18 +02:00
MascaraSnake
9abfcacc3c Add level header options for setting special stage time and spheres requirements 2020-05-03 17:56:49 +02:00
Louis-Antoine
4e7605f0e2 Make SRB2 flat like Earth 2020-03-20 18:55:29 +01:00
Louis-Antoine
46df2b9551 Use HAVE_BLUA as fuel for my fireplace 2020-03-19 18:36:14 +01:00
James R
2274129f57 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
James R
ab86ef936a Merge branch 'keywords-back-again' into 'next'
Level header keywords

See merge request STJr/SRB2!656
2020-01-16 20:05:24 -05:00
James R
4f0acda87c Call it KEYWORDS 2020-01-08 14:41:38 -08:00
James R
d3da473d4c Revert "Oh right, the keywords..."
This reverts commit 7431794b5c.
2020-01-08 14:26:47 -08:00
Nev3r
d8b24fcfba Merge branch 'remove-vertex-z-mk2' into udmf-vslopes
# Conflicts:
#	src/lua_maplib.c
#	src/p_setup.c
#	src/r_defs.h
2020-01-04 22:59:42 +01:00
Nev3r
764a8ad43f Remove vertex_t's z variable. 2020-01-04 18:29:02 +01:00
Nev3r
1d5b435de1 Add Lua support for vertex heights. 2020-01-04 11:40:21 +01:00
MascaraSnake
1fc2a4755a -Add linedef pointer to side_t, so sidedefs are able to tell if they're a front or back sidedef during setup
-Fix a broken condition during setup of texture fields for the change music linedef
2019-12-29 09:39:50 +01:00
James R
248e452d7d Merge branch 'titlecard2' into 'next'
More customisable title card

See merge request STJr/SRB2!552
2019-12-24 14:47:55 -05:00
Jaime Passos
607d066c01 More customisable title card
Add TitleCardZigZag, TitleCardZigZagText and TitleCardActDiamond fields to SOC.
Add the same fields to Lua under their internal names.
Turn map header level flags into an UINT16, so that NoTitleCard works. (NOBODY caught this, I'm actually disappointed.)
2019-12-18 00:28:58 -03:00
Monster Iestyn
b0a42140e6 Fix numoflines calculations in sectorlines_* functions by first typecasting seclines (the sector.lines address) to size_t before doing any math on it, then (after the math) typecast the result to size_t * and dereference it.
And yes, this time I tested it to make sure it works :)
2019-12-16 17:46:27 +00:00
Steel Titanium
a5cdb0a4b3 Update copyright date on source files 2019-12-06 13:49:42 -05:00
Monster Iestyn
59109b6ef4 Write a new hack for getting sector->linecount from sector->lines in Lua, to put my mind at rest about it at last.
1) In sector_get, actually push the memory address of the lines array within sector_t, rather than push the value of "lines" itself (essentially, we we want a pointer to a double pointer, or rather a TRIPLE pointer haha)
2) In the sectorlines_* functions, use offsetof to shift the memory address so we can obtain the value of linecount within the sector_t struct, and dereference the result to obtain the value of linecount itself
3) ??? profit

Untested and uncompiled atm, but I have some confidence this might work
2019-09-25 20:27:41 +01:00
mazmazz
2c7eb91460 * Added FORCERESETMUSIC level header
* cv_resetmusicbyheader toggle to disable said override
* Never reset music during time attack
* Change cv_resetmusic default back to off
2019-08-04 20:02:38 -04:00
toaster
534b98251b Revert "Revert "Merge branch 'musicplus-aug2019-b' into 'master'""
This reverts commit a76668f55a.
2019-08-04 12:03:57 +01:00
toaster
a76668f55a Revert "Merge branch 'musicplus-aug2019-b' into 'master'"
This reverts commit 0f89fb123f, reversing
changes made to 8fb211d8cf.
2019-08-04 11:32:55 +01:00
mazmazz
8a637168f4 Merge branch 'musicplus-feature-postboss' into musicplus-aug2019-b 2019-08-04 03:22:36 -04:00
toaster
3b99335605 * Strip the word "function" from INLEVEL error messages, since they're now shared between access and function cases.
* Move it into lua_script.h, so it's available to everything that needs it.
2019-07-30 17:57:57 +01:00
toaster
c659e3f26b Fix lua scripts erroring on the title screen because they're run there but it's not counted as GS_LEVEL (aka #168). 2019-07-30 17:48:13 +01:00
MascaraSnake
9f666e125e Merge branch 'master' into thinkerlists
# Conflicts:
#	src/f_finale.c
#	src/p_enemy.c
2019-07-02 23:08:37 +02:00
Steel Titanium
c2a8c82b6a Forgot to do this. 2019-06-23 18:51:42 -04:00
Nev3r
bb083f20b4 Dynamic slopes now use thinkers.
* Moved dynamic slope-related data into its own thinker.
* Vertex slopes no longer use the mapthings directly.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-19 14:14:43 +02:00
mazmazz
822b4d12bf Merge branch 'public_next' 2019-03-15 01:43:03 -04:00
mazmazz
1381343a2e Implement MUSICINTERFADEOUT level header 2019-03-15 01:05:52 -04:00
mazmazz
83e89ba62c Merge branch 'public_next' 2019-03-15 00:33:06 -04:00
mazmazz
2eb04ab17d Merge branch 'public_next' 2019-03-14 22:15:34 -04:00
Monster Iestyn
74cb384be2 revert to LF_SAVEGAME system code, removing all traces of saveoverride
(I believe Sal wanted us to do this anyway, so...)
2019-01-08 17:14:21 +00:00
mazmazz
403565e92f Merge remote-tracking branch 'origin/musicplus-core' into musicplus-feature-postboss 2019-01-07 01:10:54 -05:00
Steel Titanium
2ba11a6d69 Support for per-map intermission music 2019-01-02 05:15:23 -05:00
mazmazz
81352aece1 WIP 20190101 merge
d_netcmd.c
filesrch.c
m_menu.c
p_setup.c
p_spec.c
r_data.c
r_main.c
r_things.c
w_wad.c
w_wad.h
2019-01-02 01:09:15 -05:00
mazmazz
2326a58bc7 Merge remote-tracking branch 'public-gl/master' into public-musicplus-core 2019-01-01 10:41:40 -05:00
Monster Iestyn
f7698de3ea fix ffloor.toppic/bottompic to be consistent in behavior with sector.floorpic/ceilingpic 2018-12-20 16:47:17 +00:00
Digiku
2ede537861 Merge branch 'save-override' into 'next'
Feature: Save override for level header

See merge request STJr/SRB2!392
2018-12-19 13:04:41 -05:00
TehRealSalt
4d8fe70aa7 Undo 53dfb4c8 2018-12-16 21:36:54 -05:00
TehRealSalt
079c0ec709 Save override for level header
Kind of like 2.2's, but with backwards-compatability with 2.1
2018-12-16 20:09:59 -05:00
Alam Ed Arias
8a47cf93f6 Revert "Merge branch 'kart-luatextures-backport' into 'next'"
This reverts merge request !387
2018-12-16 22:57:39 +00:00
TehRealSalt
dde29e47c5 Expose R_TextureNumForName
Backport from SRB2Kart
2018-12-16 15:58:47 -05:00
Monster Iestyn
d824e05a6f Merge branch 'master' into next 2018-11-25 20:39:17 +00:00
mazmazz
c91b2b4456 Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
mazmazz
df7d23f00d Merge branch 'master' into musicplus-core 2018-11-13 13:46:30 -05:00
Monster Iestyn
027ad8aca9 adding lua_maplib.c comments for new slope-related userdata types 2018-11-10 15:47:04 +00:00
Monster Iestyn
7989e9a482 Merge branch 'public_next'
# Conflicts:
#	src/d_netcmd.c
#	src/d_netcmd.h
#	src/dehacked.c
#	src/g_game.h
#	src/hardware/hw_draw.c
#	src/hardware/hw_main.c
#	src/lua_baselib.c
#	src/lua_hook.h
#	src/lua_hooklib.c
#	src/lua_hudlib.c
#	src/lua_libs.h
#	src/lua_maplib.c
#	src/lua_script.c
#	src/m_misc.h
#	src/p_mobj.c
#	src/s_sound.c
#	src/sdl12/mixer_sound.c
#	src/w_wad.c
2018-11-10 15:41:57 +00:00
Monster Iestyn
7d31440ca6 WHY DID I FORGET THIS 2018-11-08 21:22:45 +00:00