Commit graph

771 commits

Author SHA1 Message Date
Monster Iestyn
dcb4ce8cb9 Created g_demo.c/.h, for the demo recording and playback code that formerly lived in g_game.c 2020-03-19 20:09:55 +00:00
Louis-Antoine
e3cbdf8fab Use HAVE_BLUA as fuel for my fireplace 2020-03-19 18:36:14 +01:00
Steel Titanium
5dac9c6875 Merge branch 'master' into next 2020-03-18 15:42:02 -04:00
SteelT
e3a5164ddf Merge branch 'deadzone-sigfpe-fix' into 'master'
Fix division-by-0 crash from 100% gamepad deadzones, and lack of input from 0% deadzones

See merge request STJr/SRB2!838
2020-03-18 15:39:04 -04:00
SteelT
bd058ecc4b Merge branch 'viewpointswitch-fix' into 'next'
Fix incorrect newdisplayplayer in forced ViewpointSwitch

See merge request STJr/SRB2!814
2020-03-18 15:34:18 -04: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
Zwip-Zwap Zapony
bce6349b1d More gamepad deadzone tweakage 2020-03-04 21:44:57 +01:00
Zwip-Zwap Zapony
df220aa2c2 Hotfix for 100% deadzone returning 0 input
It makes more sense for 100% deadzone to just make it so that
you have to push the axis all the way to trigger it,
rather than 100% deadzone resulting in no axis input
ever happening... So, let's make it be the former way instead
2020-03-04 21:11:55 +01:00
Zwip-Zwap Zapony
27e084a827 Fix division-by-0 crash with gamepad deadzones
Fix division-by-0 crash with gamepad deadzones
The problem was that it checked if A was more than B,
then lowered A to a max value, then subtracted B from A,
then divided something by that, without checking if A minus B was 0,
allowing division by 0 if B was the same as that max value

This fixes that by making sure that A is less than the max value
2020-03-04 17:31:52 +01:00
Jaime Passos
70a103b9af Fix G_TOLFlag returning the wrong type 2020-03-02 00:20:53 -03:00
Louis-Antoine
29d8389461 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into resend-gamestate 2020-02-29 13:43:47 +01:00
Jaime Passos
7d77600e71 Make exitmove friendly, don't start empty intermission screens 2020-02-29 01:51:45 -03:00
Jaime Passos
4e7b47440f G_CoopGametype, for all the GT_COOP cases 2020-02-29 00:57:22 -03:00
Jaime Passos
6fb5a6efb6 Consider hide-and-seek as GTR_HIDEFROZEN 2020-02-28 23:52:33 -03:00
Jaime Passos
b103a792c0 Let spectators decide where they spawn
Also fixes some issues with tag gametypes
2020-02-23 19:23:00 -03:00
Jaime Passos
678935f26a Turn players IT if they join the game after the hide time in tag gametypes
Except in gametypes with hide time stasis, because they can't change team.
2020-02-23 17:02:50 -03:00
Jaime Passos
7439ab5296 Allow countdown time-up in any campaign gametype 2020-02-23 16:50:36 -03:00
Jaime Passos
a334542f34 Scan for emeralds in gametypes with Emerald Hunt 2020-02-23 16:41:39 -03:00
Jaime Passos
f313a0386f Don't reset player between maps in campaign gametypes 2020-02-23 16:40:16 -03:00
Jaime Passos
0362f53e9b Fix incorrect newdisplayplayer in forced ViewpointSwitch 2020-02-23 12:14:52 -03:00
Steel Titanium
76f26cda24 Merge branch 'master' into next 2020-02-21 21:01:29 -05:00
James R
7060083db5 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
James R
2d8522b9ec Merge branch 'titlecard-options' into 'next'
Allow more options for when the titlecard shows up

See merge request STJr/SRB2!765
2020-02-18 21:52:03 -05:00
Monster Iestyn
2b3034a7af Merge branch 'master' into next 2020-02-18 17:38:05 +00:00
James R
7ed7e53c81 Merge branch 'tolfix' into 'master'
Don't freeslot TOL_ twice

See merge request STJr/SRB2!779
2020-02-16 23:52:45 -05:00
Jaime Passos
ae013108ab Merge remote-tracking branch 'origin/next' into fix-overtime 2020-02-17 00:48:42 -03:00
fickleheart
187bd9ab23 Merge remote-tracking branch 'upstream/master' into titlecard-options 2020-02-16 21:32:27 -06:00
Jaime Passos
5dc0f0649e Fix overtime not working 2020-02-15 13:07:53 -03:00
Jaime Passos
7bc58c4c0e Add MAXTOL 2020-02-12 13:41:30 -03:00
James R
ae2041d686 Remove extra tokens if we got all 7 emeroods 2020-02-11 19:36:09 -08:00
fickleheart
19cdb002ab More fixes for titlecard option stuff 2020-02-09 17:53:50 -06:00
Jaime Passos
2d0e72d756 Fix broken GT_ constants with custom gametypes 2020-02-08 21:40:30 -03:00
fickleheart
fed8167a81 Allow more options for when the titlecard shows up 2020-02-08 11:13:40 -06:00
Louis-Antoine
d02c4c0cc7 Add "resendgamestate" command 2020-01-31 15:57:04 +01:00
Jaime Passos
cf7b4d826a Remove redundancy 2020-01-26 23:46:07 -03:00
LJ Sonic
53e2cfbde2 Merge branch 'keep-body' into 'next'
Let clients rejoin the server without losing their status

See merge request STJr/SRB2!722
2020-01-24 18:50:03 -05: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
Louis-Antoine
73d0549fa4 Ignore players towards exit count 30 seconds after their disconnection 2020-01-22 03:11:05 +01:00
Louis-Antoine
d374bf4f9b Let clients rejoin the server without losing their status
This is accomplished by simply preserving
the player's body after disconnecting.

Bodies will despawn after the number of minutes
specified by the "rejointimeout" console variable (float).
A value of 0 disables the feature completely.

Clients rejoining are identified by their IP address,
and may rejoin even if the server is full or joins are disabled,
for as long as their body remains.

From a technical standpoint, when the user disconnects,
the player they were controlling does not leave,
the underlying player_t just keeps working normally,
except it does not receive any input anymore.
When the user reconnects, they are simply "relinked"
to their player_t.

Those "soulless" players can be identified through
their "quittime" field, which is the number of tics
elapsed since the user disconnected, or zero
if still connected. "quittime" is exposed to Lua.
2020-01-22 03:05:08 +01:00
Zwip-Zwap Zapony
49a4c7d5f3 Separate "turnmultiplier"s for splitscreen players
This fixes player 2 using player 1's "cam_turnmultiplier"
instead of player 2's "cam2_turnmultiplier"
2020-01-21 14:53:05 +01:00
Alam Ed Arias
b09341383f Merge branch 'master' into next 2020-01-17 11:12:10 -05:00
Louis-Antoine
9504ba96da Increase maximum and default chat width 2020-01-15 15:36:11 +01:00
James R
735289502c Call it KEYWORDS 2020-01-08 14:41:38 -08:00
James R
74364b84f9 Revert "Oh right, the keywords..."
This reverts commit a00dfcf420.
2020-01-08 14:26:47 -08:00
fickleheart
6211c80a69 Mixed code and declaration stuff 2020-01-08 00:22:17 -06:00
fickleheart
5abf0c24f9 oh god I forget why this is here but let's not remove it now 2020-01-08 00:21:03 -06:00
fickleheart
f8a3e3b898 Merge remote-tracking branch 'origin/next' into next-newcontrols 2020-01-04 09:57:09 -06:00
fickleheart
f0e6a56b6b Merge branch 'newcontrols' into next-newcontrols 2020-01-04 09:56:24 -06:00
fickleheart
34fe284416 Fix camera stuff in splitscreen 2020-01-04 09:54:56 -06:00
fickleheart
794d74c4d7 Merge remote-tracking branch 'origin/master' into newcontrols 2020-01-04 09:35:12 -06:00
fickleheart
eac8732bc8 Make holding both turn keys freeze camera direction (broke in merge) 2020-01-03 23:26:31 -06:00
Alam Ed Arias
a26c5f5428 Merge branch 'master' into next 2020-01-03 14:56:37 -05:00
LJ Sonic
c6aec51d99 Merge branch 'ungrab-mouse-in-menus' into 'master'
Let the mouse move freely when a menu is open or game is paused

See merge request STJr/SRB2!617
2020-01-02 18:48:38 -05:00
Louis-Antoine
5bde4df439 Grab mouse again when closing menu, unpausing, etc 2020-01-02 00:45:28 +01:00
James R
0c40a466d8 Merge remote-tracking branch 'origin/master' into next 2020-01-01 15:39:05 -08:00
James R
48c83be89e Merge branch 'respawndelaygametyperule' into 'next'
Gametype ruleset changes

See merge request STJr/SRB2!585
2020-01-01 17:49:53 -05:00
fickleheart
b22de48c03 Merge branch 'next' into next-newcontrols
# Conflicts:
#	src/g_game.c
#	src/p_setup.c
2019-12-31 12:58:36 -06:00
lachwright
d3c56cd807 Remove flight indicator when AI Tails is taken over by second player 2019-12-31 16:48:29 +08:00
James R
3112dff345 Merge branch 'oops' into 'next'
Fix unknown gametype for map command crashing the game

See merge request STJr/SRB2!606
2019-12-31 01:34:39 -05:00
James R
34687e85d7 Merge branch 'emeraldhunt-fix' into 'next'
Fix emerald hunt not working properly

See merge request STJr/SRB2!593
2019-12-31 01:34:17 -05:00
fickleheart
0eb65d0fa7 Fix tailsbot behavior that broke with Simple mode 2019-12-30 23:58:58 -06:00
James R
5e94ca07bc Use gametypecount in G_GetGametypeByName 2019-12-30 17:57:38 -08:00
fickleheart
2c45ecbaa5 Fix camera reset button 2019-12-30 15:34:43 -06:00
fickleheart
a51f2500e0 Update playstyle menu handling to use analog/directionchar combo 2019-12-30 15:15:37 -06:00
fickleheart
c3d14064e2 Convert simple movement to directionchar+analog
Analog + no directionchar is old analog (now known as
CS_LMAOGALOG because lmao if you still use it).
2019-12-30 15:05:24 -06:00
fickleheart
e0f35d207f Convert analog/directionchar cvars into 2-long arrays 2019-12-30 14:01:14 -06:00
fickleheart
631b5ff883 Disable lock-on in Ringslinger 2019-12-30 12:13:41 -06:00
fickleheart
b46cbe76d6 Somehow miss committing the ACTUAL stickyhold part 2019-12-30 11:36:59 -06:00
fickleheart
d980d526c8 Change defaults to match my personal settings 2019-12-30 11:36:40 -06:00
fickleheart
ebbe5938a8 Fix tailsbot flying weird with P1=standard P2=simple controls 2019-12-30 11:07:29 -06:00
fickleheart
f4e7227e11 Fix compilation errors 2019-12-30 11:01:56 -06:00
fickleheart
a9b80bf1f0 Merge branch 'master' into newcontrols
# Conflicts:
#	src/d_netcmd.c
#	src/g_game.c
#	src/g_game.h
#	src/m_menu.c
2019-12-30 10:47:09 -06:00
Jaime Passos
7676f11112 Merge remote-tracking branch 'origin/next' into respawndelaygametyperule 2019-12-30 12:09:45 -03:00
MascaraSnake
bf25128986 Merge branch 'mapload-refactor' into 'next'
Refactor map loading functions

See merge request STJr/SRB2!594
2019-12-29 10:04:27 -05:00
MascaraSnake
bb9093ff57 Merge branch 'kill-zshift' into 'next'
Eliminate all unnecessary uses of ZSHIFT

See merge request STJr/SRB2!580
2019-12-29 08:35:52 -05:00
James R
566b4a1626 Don't let us warp to a map that doesn't exist (really!)
Okay so 6464df9876, I WAS mistaken! Except that's
not how you check for a map's existence, at least not how the old map command
did it.
2019-12-29 02:44:27 -08:00
James R
0a014755b9 I'm still an idiot 2019-12-29 02:16:37 -08:00
James R
2ffff56b39 Who cares? 2019-12-29 02:15:48 -08:00
James R
19aafbfd0b Split map code checking from Command_Map_f 2019-12-29 02:14:02 -08:00
Steel Titanium
0d15f27026 Fix emerald hunt not working properly 2019-12-28 21:57:29 -05:00
Jaime Passos
e63f77ea1a Merge remote-tracking branch 'origin/next' into respawndelaygametyperule 2019-12-28 21:39:38 -03:00
Jaime Passos
dede51fc4c Disallow few more characters. 2019-12-28 21:05:42 -03:00
Jaime Passos
5b1b556946 Remove characters that will not be allowed in the constant string. 2019-12-28 20:54:22 -03:00
Jaime Passos
2166571920 Add GTR_CUTSCENES. And I ran out of rule slots. Cool. 2019-12-28 20:33:28 -03:00
Jaime Passos
7a00b3a331 Add GTR_FRIENDLY. 2019-12-28 19:56:18 -03:00
Jaime Passos
45af6d8899 Rename GTR_MATCHEMERALDS to GTR_POWERSTONES. 2019-12-28 19:49:34 -03:00
Jaime Passos
4b604328d5 Rename GTR_HIDETIME to GTR_STARTCOUNTDOWN. 2019-12-28 19:47:03 -03:00
MascaraSnake
5590343043 Rename P_LoadThingsOnly to P_RespawnThings to make it clearer that it doesn't actually reload the things from the file, it just respawns them. 2019-12-28 14:13:26 +01:00
MascaraSnake
319ed09c00 Rename P_SetupLevel to the more accurate P_LoadLevel and separate out some of its content into subfunctions 2019-12-28 11:30:39 +01:00
Jaime Passos
3b341245f1 Same deal, but for starposts. 2019-12-27 17:14:56 -03:00
Jaime Passos
1f96f70173 Preparing for the inevitable gametype rule that will handle cooplives... 2019-12-27 17:08:20 -03:00
Jaime Passos
f8eed7171a add G_CompetitionGametype(void) 2019-12-27 12:28:00 -03:00
Jaime Passos
9613bdeca6 use GTR_DEATHMATCHSTARTS 2019-12-27 12:14:33 -03:00
MascaraSnake
e71d07fa8e Merge branch 'next' into kill-zshift
# Conflicts:
#	src/p_mobj.c
2019-12-27 08:11:04 +01:00
Jaime Passos
51404130af Respawn delay gametype rule 2019-12-27 01:44:27 -03:00
James R
1dac3d174e Merge remote-tracking branch 'origin/master' into next 2019-12-26 15:35:53 -08:00
James R
414a066ec8 Merge branch 'turnmultiplier' into 'master'
Option to increase the turning speed

See merge request STJr/SRB2!553
2019-12-26 18:18:23 -05:00
MascaraSnake
7ccb695fa1 Use mthing->z instead of mthing->options >> ZSHIFT in G_AddGhost 2019-12-26 20:54:06 +01:00
Jaime Passos
7e5ec552ee Merge remote-tracking branch 'origin/next' into gametype-clownery 2019-12-25 06:09:00 -03:00
Jaime Passos
3622829504 Merge remote-tracking branch 'aaaaaaaa/next' into gametype-clownery 2019-12-24 17:55:46 -03:00
James R
75a5142aad Merge branch 'wipes2' into 'master'
Wipe styles cleanup

See merge request STJr/SRB2!525
2019-12-24 14:47:14 -05:00
Jaime Passos
c61c1e2514 Turn the babysitting deterrent into its own rule. 2019-12-24 16:30:18 -03:00
Jaime Passos
9319014d8d Title card fixes. 2019-12-24 16:22:25 -03:00
Jaime Passos
5b4d587b1a Don't warn about missing CTF starts if the gametype doesn't have team flags. 2019-12-24 16:12:05 -03:00
Jaime Passos
a657392d39 ViewpointSwitch improvements. 2019-12-23 20:22:57 -03:00
Jaime Passos
630c06b7b0 Turn GTR_CHASECAM into GTR_FIRSTPERSON. 2019-12-23 19:24:06 -03:00
Jaime Passos
61b72203a8 Merge remote-tracking branch 'origin/master' into gametype-clownery 2019-12-23 18:21:13 -03:00
James R
f574cd0ce2 Whoops I forgot player 2 2019-12-22 21:29:41 -08:00
James R
3e2b28e162 Merge remote-tracking branch 'origin/master' into turnmultiplier 2019-12-22 21:26:36 -08:00
Jaime Passos
74a4ec6f54 Make G_PlatformGametype only check the gametype rules, to avoid unintended side effects 2019-12-19 16:31:38 -03:00
Jaime Passos
9b2b526eb4 Removing commented out code 2019-12-19 16:22:55 -03:00
Jaime Passos
7efd9662d1 Remove GTR_NOGAMEEND 2019-12-19 16:13:27 -03:00
Jaime Passos
f4bb618f93 Organise rules 2019-12-19 16:12:10 -03:00
Jaime Passos
6d7262e985 Remove GTR_PLATFORM 2019-12-19 16:05:03 -03:00
Jaime Passos
768080977f Remove GTR_ROUNDENDMESSAGE 2019-12-19 15:47:37 -03:00
Jaime Passos
ce0e4201b8 GTR_DEATHMATCHSTARTS 2019-12-19 02:26:17 -03:00
Jaime Passos
ebdd9c6257 fix warnings 2019-12-19 02:20:49 -03:00
Jaime Passos
019e52a4f4 allow CTF spawns in GTR_TEAMS gametype rule 2019-12-19 02:17:03 -03:00
Jaime Passos
fb6f2fc9b0 Lua! Lua! Lua!
Expecting the buildbot to complain
2019-12-19 02:13:09 -03:00
Jaime Passos
ef7e53488d GTR_CAMPAIGN and GTR_NOGAMEEND 2019-12-18 22:50:49 -03:00
Jaime Passos
5daedc70e7 Special Stages/token stuff 2019-12-18 22:46:17 -03:00
Jaime Passos
9228f99260 Fix timelimit/pointlimit checks in HU_DrawRankings, organise rules in gametypedefaultrules a bit 2019-12-18 22:23:30 -03:00
Jaime Passos
5e818e1dab Custom gametype rankings 2019-12-18 22:02:37 -03:00
Jaime Passos
0421c81e04 ViewpointSwitch hook for Lua 2019-12-18 20:43:54 -03:00
Jaime Passos
d0e18444fb GTR_FRIENDLYFIRE, renamed GTR_HIDETIMEFROZEN, fixed other mistakes 2019-12-18 20:12:52 -03:00
Jaime Passos
396106829a Ringslinger tweaks 2019-12-18 19:26:45 -03:00
Jaime Passos
ec8682b2af GTR_NOTITLECARD 2019-12-18 18:39:59 -03:00
Jaime Passos
5f73d48614 Some sort of intermission tally support. 2019-12-18 17:13:05 -03:00
Jaime Passos
e3584e8230 GTR_ALLOWEXIT 2019-12-18 16:52:05 -03:00
Jaime Passos
5b0a094f67 TOL stuff 2019-12-18 16:00:02 -03:00
Jaime Passos
94f2b8f970 Fix warnings 2019-12-18 15:41:03 -03:00
Jaime Passos
7c3cde4564 How did I mess this up? 2019-12-18 15:23:41 -03:00
Jaime Passos
d3d91726f5 GTR_EMERALDHUNT and GTR_SPAWNENEMIES 2019-12-18 14:57:42 -03:00
Jaime Passos
1e2331d672 SOC stuff 2019-12-18 14:37:48 -03:00
Jaime Passos
79d5192b7c TOL/Level platter stuff 2019-12-18 13:24:10 -03:00
Jaime Passos
7807424633 NUMGAMETYPES vs gametypecount 2019-12-18 12:30:01 -03:00
Jaime Passos
15862ed02c G_NewGametype 2019-12-18 12:23:42 -03:00
Jaime Passos
da4e759a73 GTR_DEATHPENALTY 2019-12-18 12:13:24 -03:00
Jaime Passos
83732f38a9 GTR_PITYSHIELD 2019-12-18 12:09:44 -03:00
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