Commit graph

208 commits

Author SHA1 Message Date
Lachlan Wright 27b7b5efce Merge branch 'fix-noscalepatch-with-string-drawers' into 'next'
Fix string drawing functions so they account for V_NOSCALEPATCH effectively…

See merge request STJr/SRB2!1107
2020-09-27 22:41:39 -04:00
SteelT a033f482be Merge branch 'pictureformats' into 'next'
PNG conversion refactoring

See merge request STJr/SRB2!675
2020-09-10 15:58:18 -04:00
Jaime Passos 4e437076c1 Use color look-up table for PNG conversion 2020-09-10 02:10:31 -03:00
Jaime Passos f24647dc4d Change method of color look-up table generation 2020-09-10 01:43:46 -03:00
James R 5ccafe0314 REMOVE THE LAST OF CV_ALLCAPS 2020-08-14 21:01:41 -07:00
GoldenTails 23edfd6d09 Fix string drawing functions so they account for V_NOSCALEPATCH effectively multiplying the width of the screen 2020-08-09 11:03:02 -05:00
SteelT bff6b19056 Merge branch 'marathonmode' into 'next'
MARATHON RUN

See merge request STJr/SRB2!941
2020-06-17 19:36:10 -04:00
Hannu Hanhi da98ea242e Merge remote-tracking branch 'upstream/next' into shaders-224-next-merge 2020-06-07 20:01:05 +03:00
Monster Iestyn 7e562a3ca5 Merge branch 'master' into next 2020-06-06 20:35:48 +01:00
Monster Iestyn 5349a0bf62 V_Init: count to NUMSCREENS, not NUMSCREENS+1 (though I can't help thinking this one might have been deliberate somehow?) 2020-06-03 20:47:49 +01:00
SwitchKaze b37c73b008 Make colors UINT16, increase color freeslots to 1024 2020-05-23 19:35:36 -05:00
toaster 2aa542d2bf Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into marathonmode
# Conflicts:
#	src/doomdef.h
2020-05-15 13:23:37 +01: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
sphere 4eb5f09c6f Restore SHORT(). 2020-05-12 17:20:29 +02:00
sphere 0287c6956e Fix some errors and add some comments. Also, actnum is not an INT32. 2020-05-12 17:20:28 +02:00
sphere 69c11a8220 Support act numbers up to 99 and draw both digits individually. 2020-05-12 17:17:24 +02:00
sphere c55d6dbc9f Make showfps save to config, and add a compact option. 2020-05-08 15:40:50 +02:00
fickleheart b9d7b3e5c5 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
Steel Titanium 76f26cda24 Merge branch 'master' into next 2020-02-21 21:01:29 -05:00
James R 62d943b609 Merge branch 'thin-fixed' into 'next'
Add more strings (and respective functions) for v.drawString().

See merge request STJr/SRB2!770
2020-02-20 19:27:01 -05:00
James R 7060083db5 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
Jaime Passos 00bdb41640 Merge remote-tracking branch 'origin/master' into sal-oglshaderport 2020-02-17 12:28:16 -03:00
GoldenTails fe17933156 Make V_DrawCenteredSmallThinString() a less precise wrapper for V_DrawCenteredSmallThinStringAtFixed() for new "small-thin-center" option in v.drawString() 2020-02-01 11:01:39 -06:00
GoldenTails 7d9f138160 Make V_DrawRightAlignedSmallThinString() a less precise wrapper for V_DrawRightAlignedSmallThinStringAtFixed() for new "small-thin-right" option in v.drawString() 2020-02-01 11:01:22 -06:00
GoldenTails b2b4c4c79e Create V_DrawCenteredSmallThinStringAtFixed() for new "small-thin-fixed-center" option in v.drawString()
Thankfully "center" is just "right" but with the X offset divided by 2.
2020-02-01 11:01:03 -06:00
GoldenTails 4cbcb68795 Create V_DrawRightAlignedSmallThinStringAtFixed() for new "small-thin-fixed-right" option in v.drawString()
You guys have no idea how long this took to code.
2020-02-01 11:00:45 -06:00
GoldenTails c858d9fd4d Make V_DrawSmallThinString() a less precise wrapper for V_DrawSmallThinStringAtFixed() to fix rounding errors. 2020-02-01 11:00:24 -06:00
GoldenTails 75d94c6c1a Create V_DrawSmallThinStringAtFixed() for new "small-thin-fixed" option in v.drawString()
I removed the limitation present in "small-thin" by converting all relevant variables to fixed_t's and using FixedMul() and FixedDiv() when necessary. Who'da thunk it would actually work?
2020-02-01 11:00:02 -06:00
GoldenTails a216736ef4 Create V_DrawCenteredSmallStringAtFixed() for new "small-fixed-center" option in v.drawString() 2020-02-01 10:59:38 -06:00
GoldenTails 5f56d19a43 Create V_DrawRightAlignedSmallStringAtFixed() for new "small-fixed-right" option in v.drawString() 2020-02-01 10:59:21 -06:00
GoldenTails f7085fc171 Create V_DrawCenteredThinStringAtFixed() for new "thin-fixed-center" option in v.drawString() 2020-02-01 10:58:55 -06:00
GoldenTails cb5c90fc40 Create V_DrawRightAlignedThinStringAtFixed() for new "thin-fixed-right" option in v.drawString()
These function names are starting to become rediculous...
2020-02-01 10:55:54 -06:00
GoldenTails d147a50e9b remove large commented broken version of V_DrawSmallThinString() lol 2020-02-01 10:54:10 -06:00
GoldenTails 6527b5d16b Create V_DrawSmallThinString() for new "small-thin" option in v.drawString()
Note this has some major limitations to prevent squished text. It defaults to using V_MONOSPACE|V_OLDSPACING and you cannot change the size of characters. V_6WIDTHSPACE seems to act exactly the same as V_OLDSPACING too.
2020-02-01 10:53:06 -06:00
GoldenTails 9f50b6ef73 Create V_DrawCenteredStringAtFixed() for new "fixed-center" option in v.drawString() 2020-02-01 10:51:43 -06:00
GoldenTails dc1871a74f Create V_DrawRightAlignedStringAtFixed() for new "fixed-right" option in v.drawString() 2020-02-01 10:50:57 -06:00
GoldenTails 426ccc9203 Create V_DrawCenteredThinString() for new "thin-center" option in v.drawString() 2020-02-01 10:50:50 -06:00
GoldenTails df15ad82d2 Create V_DrawCenteredSmallString() for new "small-center" option in v.drawString() 2020-02-01 10:50:46 -06:00
GoldenTails 37cef69c95 Add V_COLORMAP support for small-fixed and thin-fixed text. 2020-02-01 10:46:26 -06:00
GoldenTails 63721b99cf Create V_DrawSmallStringAtFixed() for new "small-fixed" option in v.drawString() 2020-02-01 10:43:04 -06:00
GoldenTails 93b64a8d7d Create V_DrawThinStringAtFixed() for new "thin-fixed" option in v.drawString() 2020-02-01 10:42:15 -06:00
Jaime Passos 636093a59d Fix color LUT using the wrong palette 2020-01-27 13:55:13 -03:00
Sally Cochenour ca5b56181b Merge next 2020-01-07 07:35:39 -05:00
Sally Cochenour da3d5a0184 Merge next 2019-12-25 14:41:31 -05:00
Sally Cochenour 7851bef929 Port of Jimita's shader stuff + my lighting shader
Co-Authored-By: Jaime Passos <jimita@users.noreply.github.com>
2019-12-25 14:22:01 -05:00
Jaime Passos 03a3b02301 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-25 05:43:46 -03:00
Jaime Passos cc54163210 Merge remote-tracking branch 'origin/master' into renderswitch 2019-12-17 16:12:44 -03:00
Jaime Passos c3f0e6aa44 Avoid recreating the color LUT mid-recording-frame 2019-12-17 15:37:43 -03:00
Jaime Passos 3d08664de4 Merge remote-tracking branch 'sonicteamjuniorheadquarters/master' into gl_gifs 2019-12-17 15:14:22 -03:00
James R 2a22adaa60 Oops C90 2019-12-14 12:55:11 -08:00