Commit graph

9997 commits

Author SHA1 Message Date
Louis-Antoine
8bd897a269 Be silent when "kicking" a disconnected player
This lets the host manually remove a body if they want,
without polluting the chat with redundant messages.
2020-01-24 19:56:57 +01:00
Louis-Antoine
9658ef2c5b Add .dat and .csv to whitelisted file extensions 2020-01-24 17:51:20 +01:00
Louis-Antoine
e0f0984fcc Rename "luafiles/shared/" to "luafiles/client/" 2020-01-24 17:11:00 +01:00
James R
4304fe91e6 Name the archive like the EXE 2020-01-23 21:06:48 -08:00
James R
70cf119a84 Windows is dumb so no colon
srb2win-jameds-appveyor-exename-b1d931d47.exe
2020-01-23 20:35:53 -08:00
James R
e082553f6d Check if this actually is a PR before using those variables 2020-01-23 20:34:26 -08:00
James R
6337932190 I promise I know what I'm doing 2020-01-23 20:13:57 -08:00
Tatsuru
295f052f2d I don't know how these even come up 2020-01-24 01:03:38 -03:00
James R
ef2febe1e0 Use the pull request repo, branch and commit
srb2win-jameds:appveyor-exename-b1d931d47.exe
2020-01-23 19:58:26 -08:00
James R
b1d931d471 Well I'm an idiot 2020-01-23 18:55:25 -08:00
James R
d3315ae03c Put the abbreviated commit hash in the EXENAME for AppVeyor
srb2win-master-a6d49eaaa.exe
2020-01-23 18:10:31 -08:00
James R
c3f4285988 Put branch name and commit hash in EXENAME for AppVeyor builds
srb2win-master-a6d49eaaa70be5f88c26623c7b4a2fa5a770341e.exe
2020-01-23 18:01:59 -08:00
Louis-Antoine
3b22a84296 Split open() into open() and openlocal()
open() for normal, consistency-friendly reading,
openlocal() for writing and local reading.
2020-01-24 02:47:51 +01:00
James R
3d9466e5f5 Semantics 2020-01-23 13:57:39 -08:00
Louis-Antoine
ba127008cf Do not spam player quit net commands 2020-01-23 19:59:41 +01:00
Louis-Antoine
b0b22b53d6 Ignore disconnected players in tag gametypes
Disconnected players do not become IT at round start.

If all non-ITs are disconnected, the round ends.

If all ITs are disconnected, one of the non-ITs
becomes IT, or the round ends if in Hide & Seek.
2020-01-23 19:58:13 +01:00
Louis-Antoine
ce20642fa7 Do not protect non-IT players in tag gametypes 2020-01-23 18:52:16 +01:00
James R
f0daea39d4 Don't set controls to keys out of array bounds
Shout-out to TAG's config that somehow had
`setcontrol2 "custom3" "KEY931926528"`, cuasing the game to crash only in
Splitscreen.
2020-01-22 22:19:00 -08:00
Louis-Antoine
e8760fe5dd Update Lua I/O support to 2.2 2020-01-22 23:08:57 +01:00
Bartu Ä°nce
875774a45f no message 2020-01-22 22:08:08 +01:00
Bartu Ä°nce
c72e0efee4 "page x of y" 2020-01-22 21:57:28 +01:00
Bartu Ä°nce
912734ffe6 Extra emblems display, take 2. 2020-01-22 21:52:15 +01:00
Bartu Ä°nce
aa05581de2 Added support for 10+ emblem hints 2020-01-22 18:53:17 +01:00
Louis-Antoine
fb28ede660 Rename R_IsPointInSubsector to R_PointInSubsectorOrNull/Nil
The old name made it really easy to accidentally read
R_IsPointInSubsector as R_PointInSubsector, and anyway it
didn't even make sense...
2020-01-22 16:58:57 +01:00
Louis-Antoine
cfec8609f9 Fix missing declaration 2020-01-22 04:01:06 +01: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
2527b6c389 Teleport disconnected players to starpost if they fall in a pit 2020-01-22 03:20:27 +01:00
Louis-Antoine
412ba38a81 Refactor player spawning code a little 2020-01-22 03:19:15 +01:00
Louis-Antoine
d03c928baa Give flashing tics to disconnected players and prevent drowning 2020-01-22 03:14:44 +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
James R
2373a0aa83 Actually actually match the old behavior and check existing levelflats in P_AddLevelFlatRuntime BRUH 2020-01-21 16:47:47 -08:00
SteelT
a6d49eaaa7
Merge pull request #447 from ConfusionAlphaX/local-resynch-fix
Fix title screen broken when leaving during resynch
2020-01-21 19:09:15 -05:00
James R
d90c0b8fbd Don't check "Too many flats in level" with P_AddLevelFlatRuntime
Also moved the debug down in case anyone uses that.
2020-01-21 15:35:07 -08:00
James R
9cd101c68d Revert "Fix Ploadflat closing the game with "Too many flats in level" error message"
This reverts commit ea129f701c.
2020-01-21 15:35:07 -08:00
James R
f297f4ff56 Sonic is dead again 2020-01-21 12:24:24 -08:00
James R
c347254e80 Reorder Sonic's ass so the OpenGL wipe doesn't see garbage 2020-01-21 12:23:34 -08:00
James R
dfcd058c80 (BRUH MOMENT) activettscale was -1, so do recache after it's set 2020-01-21 12:21:18 -08: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
James R
5b08e1802d Trim the trailing zeros off floats for cvars 2020-01-20 23:14:26 -08:00
James R
2d8ea7125c Remove unnecessary optimization 2020-01-20 15:36:27 -08:00
James R
0d460aed1d Merge branch 'gl-dropshadows' into 'next'
OpenGL drop shadows

See merge request STJr/SRB2!703
2020-01-20 16:52:40 -05:00
Zwip-Zwap Zapony
c1097813f4 Fix "cam2_turnmultiplier"
In splitscreen stuff, player 2's "cam2_turnmultiplier" implementation
was wrong compared to player 1's "cam_turnmultiplier"
This commit makes player 2's multiplier work just like player 1's does
2020-01-20 16:14:20 +01:00
Tatsuru
431206ebee Die 2020-01-20 10:04:44 -03:00
Tatsuru
fed000b724 Remove Tails pick-up lock 2020-01-19 23:18:49 -03:00
Tatsuru
697dbd58e7 Turn cv_exitmove on by default 2020-01-19 21:56:53 -03:00
Tatsuru
db22d503a4 HUD visual indicator + property fix 2020-01-19 21:55:08 -03:00
Tatsuru
9e4c519cad In-map visual indicator 2020-01-19 19:02:03 -03:00
Tatsuru
e9a8c2d21a No more losing lives when finished 2020-01-19 14:30:05 -03:00
Confusion
ad505a6fe7 Fix title screen broken when leaving during resynch 2020-01-19 17:55:22 +03:00