Commit graph

630 commits

Author SHA1 Message Date
Jaime Passos
299f2bd8cd GTR_TEAMFLAGS 2019-12-18 11:43:50 -03:00
Jaime Passos
ea5e0d28ed More gametype rules yay!! 2019-12-18 01:54:45 -03:00
James R
23951cf938 bleh 2019-12-17 20:54:44 -08:00
Jaime Passos
7bfdc2caa0 Gametype rules draft, mind the debug command 2019-12-18 01:25:57 -03:00
fickleheart
1f88c70d6a Fix RVZ autocam AGAIN 2019-12-15 13:33:21 -06:00
Sryder
76d59330f7 Port the deadzone cvar stuff from kart.
Add menu items for deadzone.
2019-12-15 15:36:13 +00:00
Sryder
b17bf5d836 Use Scaled Radial Deadzones, instead of Axial deadzones.
Additionally fixes some weird padscale 0 stuff that was flipped.
This does have gameplay implications in both NiGHTS and regular gameplay. Notably you won't feel like you're locked into up/down left/right when you want to turn, but this can make running perfectly straight a little bit more tricky.
2019-12-15 14:37:30 +00:00
fickleheart
a885380e8a Add analog deadzone option separate from digital deadzones 2019-12-14 19:41:54 -06:00
fickleheart
3db7e48c73 [POTENTIALLY RISKY] Show target arrow above lock-on target
My judgement on "is this netgame-safe" is "Gunslinger's
targeting spawns this only for the local player, so maybe".
2019-12-14 19:21:11 -06:00
fickleheart
0702e366b6 Allow setting center view to a toggle 2019-12-14 19:17:41 -06:00
fickleheart
a812ddd88e Fix turn-to-input jerk when braking sideways 2019-12-14 19:04:29 -06:00
fickleheart
bc2ed52625 Double sensitivity and halve default of turn to input 2019-12-13 22:55:34 -06:00
fickleheart
252b77c651 Scale angle-related camera turns by player speed
They also operate at full when idle, too.
2019-12-13 22:30:04 -06:00
fickleheart
097fc48f52 Even MORE tta changes:
- All automatic turning is suspended upon manual rotation
- Dest angle uses drawangle again for rolling only
2019-12-13 20:30:56 -06:00
fickleheart
fdc3347e22 More turn-to-angle changes 2019-12-13 20:19:38 -06:00
fickleheart
022a44fb01 Don't turn-to-ability while climbing 2019-12-13 19:49:56 -06:00
fickleheart
a03ab5e294 Patch slight camera turn when airbraking 2019-12-13 19:37:01 -06:00
fickleheart
87ad91a2be LMAO right stick checking used the wrong value 2019-12-13 17:35:48 -06:00
fickleheart
c41b2e7456 Suspend turn-to-angle when rotating the camera 2019-12-13 00:52:48 -06:00
fickleheart
098c99a834 Adjust how turn-to-angle tweens 2019-12-13 00:34:34 -06:00
fickleheart
bc4b1e1abe Allow switching lockon targets with turn buttons 2019-12-12 23:52:13 -06:00
fickleheart
d14fa39d7a Expand options for aim assist
This will need a lot of testing to ensure each type
works properly.
2019-12-12 23:03:51 -06:00
fickleheart
4941ef4aac Don't turn strafe keys into turn when locked onto something 2019-12-12 22:13:44 -06:00
fickleheart
a188cd5db8 Add boss target assist and finally organize camera options 2019-12-12 00:48:15 -06:00
fickleheart
efec52c48a Fix input turning still happening with centered view 2019-12-11 22:47:09 -06:00
fickleheart
34706515ca Make locked input turn act the same as normal turning 2019-12-11 21:34:32 -06:00
fickleheart
a0ecb4b71d Fix the console spam issue AGAIN 2019-12-11 21:20:07 -06:00
fickleheart
f1b5a2b2d3 Move Z-targeting behavior to Center View 2019-12-11 21:09:23 -06:00
Jaime Passos
43946d9826 Merge remote-tracking branch 'origin/master' into wipes2 2019-12-11 12:57:59 -03:00
fickleheart
f74d7163e6 Fix RVZ camera stuff 2019-12-11 01:26:43 -06:00
fickleheart
69b623e086 Add option to always turn with input while locked
Uhhh also camera options scrolls now.
2019-12-10 22:01:17 -06:00
fickleheart
cdf5287fcc Turn camera with strafe keys in camlock while charging spindash 2019-12-10 21:34:57 -06:00
fickleheart
a89f8e91f7 Change defaults and factors of simplecam options 2019-12-10 21:24:43 -06:00
fickleheart
054d51dac6 Make input turn speed tween by lateral momentum, not total 2019-12-10 21:14:50 -06:00
fickleheart
2b70b4bf36 TODO 2019-12-10 09:08:30 -06:00
fickleheart
72cf5d9927 Don't flood directionchar commands!!! 2019-12-10 08:17:41 -06:00
fickleheart
194e77a6f0 Give spindash turn a separate slider 2019-12-10 08:07:41 -06:00
fickleheart
e1d4e2edcb Suspend directionchar while holding cam reset
This should make it completely clear that thok will face
the camera while it's held.
2019-12-10 07:58:50 -06:00
fickleheart
2a9819947e Disable all new camera behavior if playstyle is not Simple 2019-12-09 22:09:58 -06:00
fickleheart
834a3bf334 Port deadzone configuration from Kart
I don't feel like getting out my gamepad, so I'll trust
that this works.
2019-12-09 20:39:05 -06:00
fickleheart
3735134948 Fix smoothing into input-based camera rotation 2019-12-09 20:31:19 -06:00
fickleheart
27996ada04 Scale down turn values (and increase defaults to compensate)
This allows more granularity in menu sliders while limiting the
maximums to reasonable amounts.
2019-12-09 20:26:12 -06:00
fickleheart
e4626e9396 Lock camera behind player when holding cam reset
This also disables abilitydirection movement temporarily.
2019-12-09 20:21:32 -06:00
James R
4f9e227830 Cvar and menu option to let user increase turn speed
cam_turnmultiplier and cam2_turnmultiplier.

"Camera Speed" has been renamed to "Camera Spacial Speed" in the menu. "Camera
Turning Speed" is now an option.
2019-12-09 16:30:03 -08:00
fickleheart
c99b137298 Fix abilitydirection camera breaking minecarts 2019-12-08 20:47:11 -06:00
fickleheart
0cad5021a9 Make input turn slow down when moving slowly 2019-12-08 18:26:20 -06:00
fickleheart
a30623e4ed Default to no turn-facing since it looks like controller drift 2019-12-08 15:54:37 -06:00
fickleheart
e92d7eca8e Shift camera sideways toward player angle 2019-12-08 15:54:16 -06:00
fickleheart
c94d7895df Make cam_rotspeed affect non-mouse turn speed
10 remains the default and is vanilla behavior.
2019-12-08 15:17:46 -06:00
fickleheart
eee0d42b1f Make first-person and directionchar-off work as expected 2019-12-08 15:05:44 -06:00
fickleheart
36fa94a22c Automatically rotate camera to reflect player actions 2019-12-08 14:35:50 -06:00
fickleheart
075f751f67 Add cvar to use abilities in input direction 2019-12-08 14:17:48 -06:00
fickleheart
32c9c912ab Consolidate G_BuildTiccmd 2019-12-08 13:27:11 -06:00
MascaraSnake
a3549cc8f2 Merge branch 'datestuff' into 'master'
Date stuff

See merge request STJr/SRB2Internal!618
2019-12-06 16:10:36 -05:00
Jaime Passos
d7bfe7d652 Merge branch 'lt-extraneous-parameters' into 'master'
Remove unnecessary function parameters from title card code

See merge request STJr/SRB2Internal!603
2019-12-06 14:22:39 -05:00
Steel Titanium
d415cd5c6d
Update copyright date on source files 2019-12-06 13:49:42 -05:00
Jaime Passos
ed34cb8d79 Change st_overlay to cv_showhud.value 2019-12-05 16:25:19 -03:00
toaster
2b5957fd1c Fix #457 and another bug I just realised in one fell swoop.
That is to say, MV_PERFECT can be applied in singleplayer, but that doesn't update your best rings on the map in record attack, so the thing being yellow doesn't make sense if your rings are (none). Therefore, make it a two-flag, two-bit process.
2019-12-05 09:47:29 +00:00
Jaime Passos
13c6b38b13 Merge remote-tracking branch 'origin/lt-extraneous-parameters' into wipes2 2019-12-05 02:03:09 -03:00
Jaime Passos
c0cc742fb8 Remove unnecessary function parameters from title card code 2019-12-05 01:58:19 -03:00
Jaime Passos
6adb957f0f Slap colormap fades everywhere 2019-12-04 19:25:39 -03:00
toaster
cbc49882bc Fix screen buffer not being cleared if a map command is used during the intermission. 2019-11-29 15:25:55 +00:00
Louis-Antoine
ec69195fc9 Keep counting players as finished even after dying 2019-11-27 17:32:02 +01:00
toaster
f1387a07a1 Instead of making conditions which check for death individually check for special stages to prevent lives loss, just set G_GametypeUsesLives to false in a special stage. 2019-11-26 12:30:32 +00:00
MascaraSnake
bdc0075ee0 Merge branch 'speclook' into 'master'
Speclook (resolves #340).

Closes #340

See merge request STJr/SRB2Internal!529
2019-11-25 13:20:00 -05:00
LJ Sonic
9541137f5e Merge branch 'join-bug-fix' into 'master'
Fix for the join bug

Closes #302, #338, and #347

See merge request STJr/SRB2Internal!545
2019-11-25 12:58:48 -05:00
toaster
71e74ca363 Fix a bunch of shit with MP special stages!
* Prevent an infinite quantity of Emeralds being spawned when P_GiveEmerald is called while a MP Special Stage is in session (resolves #347).
* Fix FuriousFox's ridiculous timer on special stage spawn (mentioned in the comments of the previous issue) by correctly marking spectator players in special stages as finished, and preventing the underflow.
2019-11-25 14:33:15 +00:00
Louis-Antoine
74ae5819c4 Account for exiting but non-finished players in G_EnoughPlayersFinished 2019-11-24 23:40:40 +01:00
toaster
fcfbd403f0 Make mouselook follow the first-person option when a spectator, even when other variables assume you're in third person (resolves #340). 2019-11-24 13:30:49 +00:00
Jaime Passos
e850d42bc2 fix RA fade 2019-11-23 18:15:09 -03:00
Jaime Passos
faa305a2f2 Fix crossfades
Fixes NoReload using the wrong wipestyle.
Also fixes non-titlemap title screen wipes using the wrong wipestyle.
2019-11-22 17:44:42 -03:00
MascaraSnake
f7c4ec1965 Merge branch 'mapvisitedupdate' into 'master'
Intermission fixes/cleanup

See merge request STJr/SRB2Internal!509
2019-11-22 14:11:31 -05:00
MascaraSnake
18babe3268 Merge branch 'followghost' into 'master'
Followmobj Record Attack fix (resolves #322).

Closes #322

See merge request STJr/SRB2Internal!510
2019-11-22 14:10:59 -05:00
MascaraSnake
a3a7dc6bed Merge branch 'remove-unused-levelwipes' into 'master'
(Cleanup) Remove unused levelwipes

See merge request STJr/SRB2Internal!507
2019-11-22 09:21:17 -05:00
toaster
143d4aa053 Move all the visitation/emblems/record attack update stuff into a single function, and call that function in two different places depending on whether the tally screen is visited or not. 2019-11-21 23:38:33 +00:00
toaster
990d9ed40c Correct location of followmobj scale write to match read (resolves #322).
Requires deleting all of RC1's Record Attack replays with followmobj characters, but I think you'll agree that's a reasonable price to pay.
2019-11-21 22:50:04 +00:00
toaster
7ff616b26e Do a whole bunch of cleanup for mapvisited and intermission related things.
* Move the visitation flags, Record Attack/NiGHTS Attack data, and emblem checking to outside of Y_StartIntermission.
* Y_CleanupScreenBuffer never got called for maps which skip the intermission, leading to a small memory leak; this is now fixed by moving it to G_AfterIntermission.
* Y_FollowIntermission was just G_AfterIntermission with modeattacking specific behaviour, but this is desired for all places where G_AfterIntermission is called, so just merge this into G_AfterIntermission.

Notably, these changes are necessary because there are now three maps in the main SP campaign which do not end with traditional intermissions. As a result, this fixes an issue where Black Core's tracks are not available in the Sound Test (due to MV_BEATEN never being applied).

Also, since I was here: Remove "gotperfect" from recorddata_t. This is a duplicate of `mapvisited[gamemap-1] & MV_PERFECT` which uses more memory. I have kept the new spacing in the gamedata for compatibility with RC1 savedatas, but moved it across to the original method everywhere else.
2019-11-21 16:10:28 +00:00
Jaime Passos
248306ccb0 Remove D_ProcessEvents call in G_PreLevelTitleCard 2019-11-21 02:16:09 -03:00
Jaime Passos
1e4060af8c remove unused levelwipes 2019-11-18 19:22:46 -03:00
Jaime Passos
8a05afa1aa Merge remote-tracking branch 'origin/master' into f_wipes 2019-11-18 18:48:19 -03:00
Jaime Passos
aa659836ee Merge remote-tracking branch 'origin/master' into titlecards 2019-11-18 17:55:47 -03:00
MascaraSnake
233ff8bd27 Merge branch 'exit-move-lj' into 'master'
Post-exit movement

See merge request STJr/SRB2Internal!486
2019-11-18 15:10:15 -05:00
MascaraSnake
5649365c19 Merge branch 'titlecard-lowercase-support' into 'master'
Lowercase support in titlecards

See merge request STJr/SRB2Internal!481
2019-11-18 15:05:02 -05:00
Jaime Passos
6920d20a0f map header option 2019-11-18 14:08:47 -03:00
Jaime Passos
e40bf85a6f lua 2019-11-18 13:50:44 -03:00
Jaime Passos
4ea3513076 Organize 2019-11-18 12:56:41 -03:00
Jaime Passos
6c98dde736 stuff 2019-11-18 11:39:54 -03:00
Nev3r
5dc494da16
Mapname lowercase support (#146)
*  Moved levelname parsing to before where uppercase conversion occurs.
*  Extended titlecard font range.
*  Replaced misc. "ZONE" strings with "Zone" for titlecard purposes.
*  Don't convert to uppercase when rendering the titlecard name.


Signed-off-by: Nev3r <apophycens@gmail.com>
2019-11-16 20:36:25 -05:00
Louis-Antoine
29501a992b Merge branch 'master' into exit-move-lj 2019-11-15 19:35:47 +01:00
Louis-Antoine
ff62a0732a Let players move after completing the level
This only takes effect in co-op,
and can be disabled with "exitmove off"
2019-11-15 15:35:28 +01:00
toaster
d91d07da5b Fix Metal Sonic not correctly flipping with gravity. (Doesn't require a new Metal recording.) 2019-11-15 13:10:41 +00:00
MascaraSnake
031a352f72 Merge branch 'titleflash' into 'master'
Improved title screen flashes

See merge request STJr/SRB2Internal!462
2019-11-14 18:07:05 -05:00
MascaraSnake
8f6890025c Merge branch 'secretstuff' into 'master'
The letter

See merge request STJr/SRB2Internal!438
2019-11-14 17:49:23 -05:00
toaster
da1b4f2277 Disable menu input on the title screen for the first second (ie, before the flash), to guarantee people won't start the menu the very first tic after the fade and ruin the animation. (Console and gif/screenshot recording still works, for the impatient.) 2019-11-14 12:52:34 +00:00
MascaraSnake
510f36fbdf Merge branch 'map-by-name' into 'master'
New map command

See merge request STJr/SRB2Internal!424
2019-11-13 13:45:36 -05:00
toaster
5729ba3cd2 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into metalrecording
# Conflicts:
#	src/p_user.c
2019-11-12 21:56:46 +00:00
MascaraSnake
66123b8165 Merge branch 'internal-md3-vanilla-c' into 'master'
Internal MD3 merge 2 good riddance glBegin

See merge request STJr/SRB2Internal!362
2019-11-12 15:44:20 -05:00
MascaraSnake
aa5a3a46e8 Merge branch 'gamedata-param' into 'master'
Custom gamedata parameter

See merge request STJr/SRB2Internal!423
2019-11-11 11:36:53 -05:00
Louis-Antoine
068c712824 Shut up 2019-11-09 17:24:10 +01:00
Louis-Antoine
aa20e304cf Fix silly typo :P 2019-11-09 15:46:34 +01:00
toaster
915e50a1e4 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into internal-md3-vanilla-c
Merge seems fine, but won't compile for some reason.
2019-11-02 18:34:12 +00:00
toaster
fc22d1adc3 * Restart Metal recording from beginning if retry is used.
* Disable lives when Metal recording (and have a big flashing REC instead, because I'm a riot).
* Correct some minor directionchar issues (some introduced in this branch, some not).
2019-11-02 11:56:51 +00:00
toaster
67f5b2245f Secret stuff. (I intend to keep candid discussion of this outside of any commits; you'll see me write up a comment describing what's going on here soon.) 2019-11-01 15:48:50 +00:00
toaster
56d095e39f Finish the Metal demo if the Metal playback object is dead. 2019-10-29 18:17:04 +00:00
toaster
2d1a574e09 * Add a death animation for killing the Metal object, in case somebody wants to Lua up a Sonic CD style race finish for the Metal object, or in case of the following...
* Add an alternate DEMOMARKER for ending the Metal Recording on death, which kills the Metal object as well.
* Add some more relevant exceptions to the "most objects are removed when touching a deathpit" thing, primarily for the sake of ghosts and Metal playback.
2019-10-29 17:38:14 +00:00
toaster
d7ea986d7b I was right on the money - SendWeaponPref seems to have been delayed compared to earlier in development. Doesn't matter a lick for regular gameplay (net or otherwise), but absolutely mandatory to get it sorted ASAP in Record Attack. 2019-10-29 15:59:59 +00:00
toaster
f0f8b544de * Add thok auras to Metal playback.
* Add height changes to demos and Metal playback (to properly place thok aura relative to object).
* Fix followmobj recordings in reverse gravity (done via more strenuous flag setting + info height serialisation).
* Make RA ghosts fade in from start tic, and go colorized on their final one.
* Fix thok auras potentially doing bad things if they're set to MT_NULL.
* Add sprite change support to Metal playback.
* Re-enable some stuff I previously disabled for Metal recording/playback.
* Make ALL objects spawned with skins properly acknowledge that their spawnstate's frame is a sprite2, rather than just specific objects.
* Fix placement of Metal Sonic fume in reverse gravity.
* Since not backwards compatible with the previous test build, increment DEMOVERSION again. (Don't worry, we've got like 65524 more versions allowed before we run out of possible DEMOVERSIONs...)
2019-10-29 15:32:22 +00:00
toaster
1906709cf2 * Improve the Metal Sonic recording/playback system.
* Make the skin to record with Metal rather than Flesh Sonic. (Allowed even if not unlocked!)
    * Make the object that plays back the recording actually use the Metal skin, rather than just a seperate spriteset. (The boss will still need the spriteset, though.)
    * Actively record the player's sprite2, frame, and followmobj, just like regular ghosts do.
    * Disable dashmode while recording, for a fairer race.
    * Fix a probably long-standing bug where, while recording, being "hurt" would get Metal stuck in pain frames until they physically left the area of hurt.
    * Always start Metal recording in wait frames for bonus taunting.

Other relevant changes:
* Increment DEMOVERSION *again*.
* Improve the Record Attack ghost followmobj recording to accomodate Metal's jet.
* Increase the datatype width of spritenum_t read/write for Record Attack ghosts because SUGOI 4: Back With A Revengance will probably also use more than 255 sprites alone.
* Return to standing frames (or prolong them if you're in them, rather than going to wait frames) if the player rotates on the spot with enough force.
    * This was specifically done *for* Metal recording, but I decided it looked good enough to enable all the time.
2019-10-28 22:12:47 +00:00
James R
a00dfcf420 Oh right, the keywords... 2019-10-27 14:26:29 -07:00
James R
56ee233b08 Fix compiler warnings 2019-10-27 14:23:53 -07:00
James R
70df5242a3 Extend map name text matching code into a function 2019-10-27 14:23:03 -07:00
James R
2078b47952 Move gamedata param to cover -resetdata 2019-10-27 10:33:40 -07:00
James R
4ac136f626 Custom gamedata parameter 2019-10-27 10:31:17 -07:00
lachwright
63d24d529a Merge branch 'master' into knuxstuff 2019-10-26 05:53:49 +08:00
MascaraSnake
03c5b70fc5 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
923f43f887 Move change viewpoint control checking so it doesn't take precedence
Notably over chat.
2019-10-22 21:32:12 -07:00
James R
5ac8a26814 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
Steel Titanium
9c33f160a6
Lots of changes
* Show emblem requirement on record attack menu
* Use bigger emblems on the menu.
* Display your best number of collected rings in yellow if reached perfect bonus.
* Adjusted XTRA frames (again)
2019-10-15 22:54:21 -04:00
Jaime Passos
7746767735 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-10-06 17:40:41 -03:00
lachwright
7d57d53d45 Allow camera movement while climbing; allow sliding while landing from a glide 2019-09-30 14:38:58 +08:00
Lachlan Wright
5de1225b3e Hopefully added the newline back? 2019-09-25 05:06:04 -04:00
lachwright
51cee6d5bd removed outdated comment 2019-09-25 03:16:04 +08:00
lachwright
dc637736ea Trigonometric input capping 2019-09-25 03:12:56 +08:00
toaster
3285cc9a0d Properly scrub the player struct clean between level transitions. (Good chance this fixes our new bug where the player gets stuck in their standing pose when the map begins..?) 2019-09-18 16:06:13 +01:00
Nev3r
777e7f8760 Merge branch 'deathstuff' into 'master'
Lots of death stuff

Closes #207

See merge request STJr/SRB2Internal!306
2019-09-16 16:32:45 -04:00
toaster
71cc09c8c2 Merge branch 'luabanks' into 'master'
Lua save-banks!

See merge request STJr/SRB2Internal!295
2019-09-16 07:56:49 -04:00
Jaime Passos
db979845e0 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-c 2019-09-15 16:24:24 -03:00
toaster
440b63ef13 Merge branch 'musicplus-resetmusic-followup' into 'master'
Follow-up fixes for reset-upon-dying music

See merge request STJr/SRB2Internal!284
2019-09-11 14:14:09 -04:00
toaster
ab1472bfc1 Tweak gameovertics slightly to avoid having no sound for too long. 2019-09-11 13:30:24 +01:00
Alam Ed Arias
9d64ee88a0 Be clear on what FALLTHRU we really want 2019-09-09 15:02:13 -04:00
toaster
2b0344a22f Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into deathstuff 2019-09-09 15:25:48 +01:00
toaster
2c898841e9 Extend gameovertics again by two seconds. 2019-09-08 18:03:51 +01:00
toaster
d26ff197dc * Store gravflip (resolves #206) and destscale in starposts. (Using the same field, taking advantage of the fact that object scale will always be positive!)
* Update the function signature of P_MixUp to accomodate both it and drawangle instead of doing it outside of the function.
* If the player is spawning from the start of the stage and it's from the ceiling, be in fall frames as requested (resolves #191).
2019-09-07 22:12:47 +01:00
toaster
0986195d21 Bunch of fixes for dying in MP special stages.
* Don't allow the stage to be reloaded in G_DoReborn.
* If you do ANY spawn after the very beginning moment, you're forced to be a spectator.
* Have the "%d player%s remaining" Co-op exiting count visible at the same time as spectator controls.
2019-09-04 15:51:14 +01:00
Jaime Passos
1e506ef180 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-b 2019-09-02 23:35:36 -03:00
Jaime Passos
d99026df3b Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-b 2019-09-02 20:27:50 -03:00
toaster
f07309707d Lots of death stuff.
* Genesis-style love and attention to the death event.
	* Only visibly decrement lives/rings when you're respawning (or game over, see below).
	* Faster no-button-press respawn.
* Game Over specific love.
	* Animation of Level Title font coming in from the sides.
	* https://cdn.discordapp.com/attachments/428262628893261828/617692325438554132/srb20067.gif
	* Change gameovertics to 10 seconds instead of 15.
	* Make the minimum time before you can force going to the Continue screen longer.
* Accomodate death in MP special stages as a form of exit.
	* Don't have your rings or spheres reset when you die in a special stage, so that the stage isn't softlocked with the new harder limits.
* Fix a bug with CoopLives_OnChange where changing to infinite lives didn't force a game-overed player to respawn.

Also, two not-quite death things which nonetheless were relevant to change:

* Fix quitting a special stage having some of the shared spheres/rings disappear into the aether.
* Fix a warning during compilation for the Ring Penalty print.
2019-09-01 15:55:23 +01:00
James R
89c4989987 Show a negative number to indicate ammo penalty 2019-08-26 16:07:17 -07:00
Monster Iestyn
db3a2e02a5 Modify defaults for smpstage_start and smpstage_end to 60 and 66 respectively 2019-08-25 22:24:08 +01:00
toaster
4e256b73b2 Lua save-banks!
* Array of 8 INT32's natively embedded into savedata (net and SP)!
* Initialised to zero whenever a new save (or equivalent) is started, otherwise untouched by the base game.
* Requires reservation to avoid clobber-conflicts.
    * Access via `reserveLuabanks()` - returns a read-write userdata.
    * Assign userdata to local variable or global rawset to use later.

Mostly for future SUGOIlikes, but I'm sure someone could figure out an unrelated usage eventually.
2019-08-24 18:25:27 +01:00
Monster Iestyn
0685b9705c Initialise player_names[] in D_RegisterClientCommands such that we don't need to have to manually update it if MAXPLAYERS ever changed 2019-08-12 15:18:36 +01:00
Monster Iestyn
37dd048f12 tweak the defaults for titlescrollxspeed and numDemos 2019-08-11 22:28:32 +01:00
mazmazz
84c9633579 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla-b 2019-08-04 21:33:13 -04:00
mazmazz
46993268ae * 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
8a0f1e7ed4 Merge branch 'ending' into 'master'
ENDINGS

See merge request STJr/SRB2Internal!264
2019-08-03 16:23:51 -04:00
toaster
d541bb7ead * Fix something I neglected earlier when fixing Ghosts and Replays for 2.2 - the fact that the player's skin will change if they don't have NiGHTS sprites like Sonic does not being accomodated. 2019-07-30 17:24:21 +01:00
toaster
47554b57e4 * Made the evaluation screen even more attractive.
* Fixed an unused variable warning in lua_skinlib.c.
- fixed post-level cutscenes playing when you get game over in MP (still kinda on-topic)
Also with apologies to MI:
- golden egg statue mode for tutorial, since the grey doesn't contrast enough with the blue and lime green
- fixed closed captions for replaced player sounds being incorrect
- fixed closed captions overlapping tutorial text
2019-07-29 14:55:36 +01:00
toaster
063e350c63 A good and bad ending cutscene now exist.
Also:
* SPR2_XTRA - instead of defining lumpnames in S_SKIN, those kinds of assets can just be bundled into the spriteset. Required for ending cutscene stuff, I guess, but also done for HUD life icon and character select image (aside from Sonic&Tails, still SOC'd in).
* Minor oversights in SPR2 support corrected.
* Better evaluation, featuring ending assets.
* Intro has warping-in blackrock, reusing ending assets.
* Cutscene text now supports lowercase (intro and custom).
* Disable the asset-fucking "gamma correction" I put in over two years ago when implementing colour cube. (This is the only thing I could move into another branch if you MUST, but it's basically invisble in the diff so w/e.)
* Don't blank the screen if the top left pixel of a screen-covering patch is transparent. (Checked via nonzero topdelta for first column)

Bugs:
* OPENGL ONLY: The first ~20 frames of both endings are fucked. A little help here? Might be HWR_DrawFadeFill's fault, which I just created. OR it could be in f_finale, but I doubt it, since it doesn't appear in Software.
2019-07-28 00:32:57 +01:00
Jonas Sauer
166f1fac66 Fixed the thinkerlist issues by removing THINK_LIMBO. Delay-removed thinkers now stay in their list.
Also includes toaster's assorted fixes and improvements from target_painted_on_your_ass.
2019-07-13 01:42:03 +02:00
MascaraSnake
e9978b2955 Merge branch 'master' into thinkerlists
# Conflicts:
#	src/f_finale.c
#	src/p_enemy.c
2019-07-02 23:08:37 +02:00
mazmazz
dc0a92ea62 Merge remote-tracking branch 'origin/master' into internal-md3-vanilla 2019-06-29 17:51:30 -04:00
mazmazz
22629cccbe Merge branch 'public_next' into internal-md3-vanilla 2019-06-29 16:23:19 -04:00
Monster Iestyn
9913cc39a1 Merge branch 'public_next'
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
#	src/p_user.c
#	src/r_data.c
2019-06-29 20:55:58 +01:00
mazmazz
654e07e84a Merge branch 'md3-vanilla' into internal-md3-vanilla 2019-06-29 15:02:50 -04:00
mazmazz
521d8fd8c1 Merge remote-tracking branch 'public-gl/master' into md3-vanilla 2019-06-29 15:02:07 -04:00
Steel Titanium
47eb711097 Merge branch 'public-musicplus-feature-endoflevel' into 'next'
Fade out music at end of level, before intermission

See merge request STJr/SRB2!472
2019-06-28 18:21:07 -04:00
Steel Titanium
8026fe0d4b Some few changes.
The amount of rings you start with also applies when you respawn from a starpost.

Startrings counts the ring total requirement for a perfect bonus.
2019-06-24 16:21:03 -04:00
Steel Titanium
2e200a784c Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal into levelheader-startrings 2019-06-23 18:24:15 -04:00
Steel Titanium
7a23b19be8 Add startrings level header option 2019-06-23 18:15:40 -04:00
Monster Iestyn
ce6db1cc9c Merge branch 'public_next' 2019-06-22 22:44:42 +01:00
Monster Iestyn
755e4a8b2c Merge branch 'make-credits-great-again' into 'next'
Prevent just anyone from skipping credits but allow admins

See merge request STJr/SRB2!478
2019-06-22 16:13:04 -04:00
mazmazz
89ab777c40 Merge remote-tracking branch 'origin/master' into menu-execs 2019-05-02 18:47:43 -04:00
Nev3r
a9110c0645 Fixed more mobj thinker iterator oversights and removed all mobj thinker function checks
Mobjs got their own thinker list after all, and disappearing thinkers are automatically purged from their lists and sent to the limbo list.
So it's safe to assume all thinkers inside the mobj list must be mobjs.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 16:39:57 +02:00
Nev3r
696ccbd943 Fix mobj list iteration oversights.
Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-21 12:58:22 +02:00
Nev3r
39ba20be6b Basic multiple thinker list implementation
Set up a main thinker list and a polyobject mover list to test things up. Works so far, networking as well.

Signed-off-by: Nev3r <apophycens@gmail.com>
2019-04-20 22:39:22 +02:00
James R
d00cc7cddb Prevent just anyone from skipping credits but allow admins
exitlevel works too
2019-03-25 16:19:40 -07:00
Monster Iestyn
2fb569857a Added the Gametype_Names array and G_GetGametypeByName for ease in converting gametype nums to strings and vice versa
gametype_cons_t is now initialised using the Gametype_Names array, like how Color_cons_t is initialised using Color_Names

# Conflicts:
#	src/doomstat.h
#	src/m_menu.c
2019-03-18 22:00:23 +00:00
mazmazz
f18103a473 Declare exitfadestarted properly 2019-03-15 11:01:41 -04:00
mazmazz
773f9dc2ba Merge remote-tracking branch 'public-gl/next' into public-musicplus-feature-endoflevel 2019-03-15 00:39:26 -04:00
mazmazz
9ec98c588f Merge branch 'public_next' 2019-03-14 22:15:34 -04:00
mazmazz
c021e29835 Restore MUSIC_RELOADRESET if block in g_game 2019-03-13 21:18:23 -04:00
mazmazz
47bd042a7e Misssed alwaysfreelook defaults (first person) 2019-01-08 01:29:12 -05:00
mazmazz
b3f7b169b2 Merge errors for compile 2019-01-07 17:05:20 -05:00
mazmazz
075f28b7c8 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
b7bb570f97 Merge remote-tracking branch 'public-gl/master' into public-musicplus-core 2019-01-01 10:41:40 -05:00
mazmazz
b3908755af Add CSV functionality to timedemo
* Append timedemo trials to timedemo.csv
* Specify -csv <trialid> to toggle CSV behavior
* Specify -quit to immediately quit after timedemo
* Add ticrate, rendermode, video mode, demo name, bits to CSV timedemo row
2018-12-29 04:51:00 -05:00
mazmazz
56892c13ab Add framecount to timedemo message 2018-12-28 22:59:54 -05:00
mazmazz
89c12a4ee8 Reset timedemo counters after wipe 2018-12-27 23:23:09 -05:00
mazmazz
a626660564 Merge remote-tracking branch 'public-gl/next' into 2122-version 2018-12-25 00:19:42 -05:00
mazmazz
82a40f0dba Support Look Up/Down keys for NiGHTS movement 2018-12-24 23:48:03 -05:00
Latapostrophe
b7d7472a88 Merge branch 'next' into SRB2-CHAT 2018-12-23 22:53:24 +01:00
Latapostrophe
619dd9d08a Fixed various issues: added some free()s, lua_optboolean, other things, and also made sure chat can't send empty messages. 2018-12-22 12:34:17 +01:00
Digiku
9525de2d83 Merge branch 'camera-backport' into 'next'
Suggestion: 2.2 camera changes backport

See merge request STJr/SRB2!393
2018-12-20 16:57:23 -05:00
TehRealSalt
03a4bd8f53 Revert default changes
Digiku said they'd handle the new button defaults so \m/
2018-12-18 12:55:05 -05:00
Latapostrophe
45aba493c7 2.1.21 and all of the kart additions. Woo. 2018-12-17 20:43:59 +01:00
TehRealSalt
e763eab6cd 2.2 camera changes backport
- Very slightly less claustrophobic camera defaults
- Changed camera settings are saved
- Camera distance increases relatively with splitscreen & analog mode.

These changes are kind of debatable because them not saving was an intentional decision initially, and the camera being farther out could potentially clip more geometry where it previously didn't... still, thought I'd open this for consideration
2018-12-16 18:18:59 -05:00
TehRealSalt
c69cfefb6d 2.2 backport of jump/spin axes
Needs the config default-changing shenanigans done still, not sure how to tackle that yet. Now the game is TOTALLY playable from a fresh install if you just plug in a controller.
2018-12-16 17:45:49 -05:00
Latapostrophe
25e6d5388c merge conflict 2018-12-16 16:48:15 +01:00
Digiku
17e9188c89 Merge branch 'execversion' into '21-version'
Block previous versions' config defaults with EXECVERSION consvar

See merge request STJr/SRB2!371
2018-12-06 12:41:20 -05:00
mazmazz
70aa4ce18e Add alwaysfreelook2 and mousemove2 to config versioning
* Change alwaysfreelook2 to be consistent with alwaysfreelook (the only one that wasn't the same)
2018-12-06 11:59:34 -05:00
mazmazz
a802069313 Move joyaxis_fire default to right trigger 2018-12-06 05:55:56 -05:00
mazmazz
aaf5d2e1dc Change 2p controller defaults 2018-12-06 05:26:28 -05:00
Digiku
42cb597731 Merge branch 'joystick-juggling-two' into 'next'
Joystick additions for menu, axis defaults, and vertical look toggle

See merge request STJr/SRB2!359
2018-12-03 22:59:19 -05:00
mazmazz
6ca1130551 Hardcode Screenshot, GIF, and Viewpoint to their F keys 2018-12-03 13:21:16 -05:00
mazmazz
205e52f6d4 thisjoyaiming fix for chasefreelook 2018-12-03 13:13:01 -05:00
mazmazz
7e523a1e35 Reset vertical look when toggling joyaiming 2018-12-03 13:10:24 -05:00
mazmazz
59cabea8bd Add joyaiming qualifier for joystick look up/down 2018-12-03 13:10:19 -05:00
mazmazz
6dd44ca1de Change PC axis defaults to 360-friendly values 2018-12-03 13:10:15 -05:00
mazmazz
31f23fda8d Add gc_viewpoint from Kart 2018-12-03 11:50:57 -05:00
Jimita
6d7689c1a7
Merge branch 'next' into lua_mapchange 2018-11-30 15:10:59 -02:00
MPC
54cae84849 Change MapChange so Lua returns the map number you change 2018-11-30 14:01:40 -03:00
Monster Iestyn
cd57be640c Merge branch '21-controls' into 'next'
Default control changes for 2.1.21

See merge request STJr/SRB2!343
2018-11-27 11:50:42 -05:00
mazmazz
ab47e83939 Merge remote-tracking branch 'origin/master' into menu-execs 2018-11-25 19:03:22 -05:00
Monster Iestyn
1b2aea81dc Merge branch 'master' into next 2018-11-25 20:39:17 +00:00
mazmazz
eb95289ea4 Rearranged menu presentation methods
* Menu parameter retrieval and hierarchy in m_menu
* Presentation logic (background display) in f_finale
2018-11-25 15:08:12 -05:00
mazmazz
ea7162a76a Update source copyrights to 2018 2018-11-25 07:35:38 -05:00
mazmazz
17ff7e69a0 Add chasefreelook to separate third and first person mouselook 2018-11-22 17:05:24 -05:00
mazmazz
f926774ee1 Hardcode Pause/Break key and change Pause default; show prompt in menu about Pause key 2018-11-22 14:37:21 -05:00
mazmazz
2acad7ad86 Dont show Hold to Retry HUD when using Pause/Break key 2018-11-21 11:10:18 -05:00
mazmazz
8a9c10e633 Hardcode Pause/Break key and change Pause default; show prompt in menu about Pause key 2018-11-21 10:58:07 -05:00
mazmazz
74da082c75 Merge remote-tracking branch 'origin/master' into HEAD 2018-11-20 23:19:36 -05:00
mazmazz
dcac157ccd Merge remote-tracking branch 'origin/master' into menu-execs 2018-11-20 18:31:30 -05:00
Monster Iestyn
b2c3a39a2f I forgot to do this earlier, welp 2018-11-20 21:17:46 +00:00
Monster Iestyn
224c0fccdb Merge branch 'public_next'
# Conflicts:
#	src/Makefile.cfg
#	src/d_clisrv.c
#	src/p_setup.c
#	src/r_segs.c
#	src/r_things.c
2018-11-20 14:33:10 +00:00
mazmazz
d2bbddbed4 Implemented features
* M_SkyScroll optimization with still speeds; refactor background drawing
* Music (in time attack screens so far)
* FadeStrength
* HideTitlePics
* Scrolling backgrounds in Time Attack (moved F_SkyScroll to m_menu)
2018-11-17 01:21:21 -05:00
Alam Ed Arias
d4cb81cb28 Merge branch 'master' into next 2018-11-14 15:45:29 -05:00
mazmazz
6c69dd1f78 Merge branch 'master' into text-prompts 2018-11-13 11:12:44 -05:00
mazmazz
a362407886 Merge branch 'control-selector' into text-prompts 2018-11-12 21:11:53 -05:00
mazmazz
40e5a2104b Also set cv_analog for tutorialgcs
* M_TutorialSaveControlResponse CV_Set adjustment
2018-11-12 17:34:56 -05:00
mazmazz
acd922886a Change mouse cv vars temporarily alongside control scheme 2018-11-12 17:30:21 -05:00
mazmazz
31c1145cf3 Uncomment gcs_platform defaults 2018-11-12 16:54:42 -05:00
mazmazz
ab084f1bc9 Add tutorialgcs variable for optional control scheme loading 2018-11-12 16:50:03 -05:00
mazmazz
3f72e1bacf New gclists and const modifier; added tutorialmode declarations to this branch 2018-11-11 08:44:08 -05:00
mazmazz
99a0831b0b Hardcode tutorial prompt offset index 2018-11-10 10:15:16 -05:00
mazmazz
e1e94c3af2 Added page tags and find page by tag
* Added tutorial mode defines to this branch
2018-11-10 09:32:53 -05:00
mazmazz
1855359ac0 Moved TextPrompt logic to f_finale.c
* Added basic TextPrompt ticker and drawer functions
* Added chevron animation
2018-11-04 22:32:45 -05:00
mazmazz
95c68c331a TextPrompt/Page freeslots; SOC Prompt/Page parsing 2018-11-04 22:31:52 -05:00
LJSonik
b52158eb48
Merge branch 'master' into analog-flipcam-synch-fix 2018-10-29 19:52:08 +01:00
Louis-Antoine
3d0daf2202 Fix desynch when toggling analog mode or flipcam
Special thanks to Lat' for asking weird questions
2018-10-29 00:49:23 +01:00
Monster Iestyn
29b242a5bd Merge branch 'endgame-code-refactor-backport' into 'next'
Endgame code refactor

See merge request STJr/SRB2!297
2018-10-19 17:31:19 -04:00
Monster Iestyn
feceaf6d30 Removed all code in Y_FollowIntermission that's already handled in G_AfterIntermission
Only real difference here is that CEcho messages will always be cleared when going to credits/evaluation, but that's hardly a loss tbh.
2018-10-11 21:25:15 +01:00
Monster Iestyn
2bb7df5f49 G_ExitLevel tweak: Use HU_ClearCEcho() instead of HU_DoCEcho(""), the latter causes an empty line to appear in log.txt 2018-10-11 21:25:04 +01:00
Monster Iestyn
31f3f8b8e7 Moved Y_EndGame from y_inter.c/h to g_game.c/h, renamed it to G_EndGame 2018-10-11 21:24:53 +01:00
Monster Iestyn
9c464742b7 Remove "playerdeadview" variable; it's not been used for its stated purpose for who knows how long now
Besides rankings popping up when you die just sounds weird anyway, maybe I'm just used to SRB2 not doing it I guess
2018-10-11 20:00:45 +01:00
mazmazz
d542c2440d musicplus-feature-endoflevel 2.2 -> 2.1 backport 2018-09-18 15:50:12 -04:00
mazmazz
c5ea6b5efe MusicPlus Core (positioning and fading) 2.2 -> 2.1 backport 2018-09-18 10:22:17 -04:00
mazmazz
a44be49535 Merge remote-tracking branch 'origin/master' into nights-inufixes 2018-08-30 08:13:34 -04:00
Monster Iestyn
7db7a739d4 Use INFLIVES macro in place of 0x7f for infinite lives check 2018-08-29 21:31:15 +01:00
Monster Iestyn
5eddb1f455 Merge branch 'master' into hud-n-menu-tidbits 2018-08-29 21:28:11 +01:00
mazmazz
dc86fe9b5f Merge remote-tracking branch 'origin/master' into nightsplus-laplogic 2018-08-29 10:16:49 -04:00
Monster Iestyn
1af8d3ac02 Merge branch 'master' into hud-n-menu-tidbits
# Conflicts:
#	src/m_menu.c
#	src/screen.c
#	src/st_stuff.c
2018-08-28 20:51:46 +01:00
Monster Iestyn
58a844d3cf Merge branch 'public_next'
# Conflicts:
#	src/r_things.c
#	src/v_video.c
2018-08-28 19:31:08 +01:00
toaster
91eb248e46 Fix up them there ghosts!
* Stop orphaning their memory. They ARE PU_LEVEL, so they'll disappear eventually, but, like... it's not good memory management practice to just *orphan* them when you're literally never going to do anything with them ever again. Y'know?
* Make ghosts spawn properly on slopes.
2018-08-25 17:11:49 +01:00
Latapostrophe
8747a8529d Changed chat position,
Added chat back tint
Fixed word wrapping glitches
2018-08-19 10:58:29 +02:00
mazmazz
487c62fe31 Merge branch 'master' of https://git.magicalgirl.moe/STJr/SRB2Internal.git into nightsplus-laplogic
# Conflicts:
#	src/p_setup.c
2018-08-10 13:35:59 -04:00
mazmazz
09f4309f45 Standardize NiGHTS link timer w/ NightsLinkTics MAINCFG option 2018-08-09 23:14:14 -04:00
Latapostrophe
ad187c26f0 Repositionning chat & bugfixes 2018-07-31 15:57:19 +02:00
Latapostrophe
ac7c249fd2 SRB2chat test rework 2018-07-31 11:10:02 +02:00
Monster Iestyn
dfb5f06d7e fix compiler errors (shadowed vars, comparisons between unsigned + signed, an unused function arg, and a non-static function with no prototype) 2018-07-02 21:03:04 +01:00
Monster Iestyn
76c8d30ed2 Fix special stage map end var defaults to use the correct map numbers 2018-06-30 18:14:04 +01:00