Commit graph

214 commits

Author SHA1 Message Date
Jaime Ita Passos
5293c52bca Remove SHORT macros for referencing patch width/height/offsets 2020-11-22 20:02:47 -03:00
Jaime Passos
b872222b50 Implement blend modes 2020-10-27 00:03:41 -03:00
Jaime Passos
b15bbd505c Merge branch 'next' into patch-stuff-again-2 2020-10-10 17:01:10 -03:00
James R
dbd79a29a4 Replace C90's junk with a modest macro 2020-10-06 23:04:23 -07:00
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
Jaime Passos
78cc4a78d0 Refactor renderer switching 2020-08-14 22:27:16 -03: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
Jaime Passos
91ed56ef40 Refactor patch loading 2020-08-08 05:16:47 -03: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