Commit graph

74 commits

Author SHA1 Message Date
Logan Aerl Arias
b700c3a8bf Merge branch 'next' into cv-can-change 2023-12-31 12:06:27 -05:00
Krabs
7b1939c346 Merge branch 'lua-input-improvements' into 'next'
A few Lua input improvements

See merge request STJr/SRB2!2185
2023-11-04 16:02:09 +00:00
Lactozilla
01922d94f1 Add can_change for console variables 2023-11-01 15:50:59 -03:00
Alam Ed Arias
419925036b Merge remote-tracking branch 'origin/next' into lua-minmax-plus-bruh-moments 2023-10-30 22:44:44 -04:00
Alam Ed Arias
97e449bd59 Merge branch 'master' into lua-minmax-plus-bruh-moments 2023-10-28 22:29:19 -04:00
LJ Sonic
8608ded317 Add deprecation TODOs 2023-10-28 15:19:35 +02:00
LJ Sonic
bc9a378521 Refactor userdata metatable registration 2023-10-27 20:17:27 +02:00
LJ Sonic
2a896538d9 Merge branch 'netcode-rerefactor' into 'next'
Re-delete netcode

See merge request STJr/SRB2!2083
2023-09-18 16:47:28 +00:00
Lactozilla
6414e9db79 Fix possible crashes in the Lua API when accessing invalid fields 2023-08-31 15:02:59 -03:00
LJ Sonic
0ade3ae0bc Move tic and net command handling to new files 2023-07-27 15:38:45 +02:00
SteelT
464110ed81 Add CV_TrueFalse as possible value types for console variables
This also adds support for using true/false as value aliases for On/Off, Yes/No or 1/0
2023-07-13 01:02:15 -04:00
Gustaf Alhäll
2f2de7d3d3
Optimize field lookups in Lua metatables 2023-06-18 18:05:16 +02:00
sphere
2df3fb53da Merge branch 'strong-lua-command-restrictions' into 'next'
Fix up Lua command/cvar safety

See merge request STJr/SRB2!1943
2023-04-12 17:50:01 +00:00
spherallic
1470d099e3 Update copyright year & credits 2023-03-31 14:53:31 +02:00
James R
0405df1a47 Merge COM_SAFE with other COM flags
Renames COM_SAFE to COM_LUA.
2023-03-15 16:40:21 -07:00
James R
5d08bfd706 Rename CV_NOLUA to CV_ALLOWLUA, opt IN to Lua mutability 2023-03-15 16:40:21 -07:00
LJ Sonic
379cc4207a Revert "Merge branch 'netcode-refactor' into merging"
This reverts merge request !1920
2023-01-15 17:57:23 +00:00
LJ Sonic
7c2fe20cd5 Move tic and net command handling to new files 2023-01-05 22:51:17 +01:00
SteelT
534b610a76 Plug up some holes with lib_cvRegisterVar
* Error if a consvar is set to an empty string
* Error if a consvar is not given a defaultvalue
2022-10-03 16:04:38 -04:00
spherallic
14295ac7de 2022 2022-03-03 20:24:46 +01:00
James R
14c5d2c916 Warn if Lua attempted access NOLUA consvar
And quote variable name.
2021-07-05 18:39:12 -07:00
LJ Sonic
d325c7e6d3 The year is 2021 2021-05-07 17:45:56 +02:00
James R
aee963f4e9 Replace LUA_PushLightUserdata with LUA_PushUserdata
See 7df6a309 and 83a87042. I didn't realize that light
userdata's metatable is shared--like numbers or strings.
So it cannot be paired with a metatable.

I also made a few minor tweaks to Lua cvars, other than
accounting for the double pointer in the userdata.
2021-05-02 21:59:23 -07:00
James R
ed5a7f51e8 Revert "Merge branch 'lightmemedata' into 'next'"
This reverts commit d4c08a8410, reversing
changes made to e100f21dda.
2021-05-02 21:32:07 -07:00
James R
b975eedd9b Fix two bugs with Lua MIN, MAX Plus cvars
1) Any cvar without MIN, MAX would be disallowed; now
check that at least one of those values is actually
present.
2) Handle value index properly when shifting array.
2021-04-26 14:00:34 -07:00
LJ Sonic
0d4d3a5207 Revert "Lua: ensure order of MIN, MAX possible values"
This reverts commit c51c478740.
2021-04-26 21:11:24 +02:00
James R
c51c478740 Lua: ensure order of MIN, MAX possible values
Cvars could now have a range (MIN, MAX) plus some preset
values, but Lua could not take advantage of this due to
table order not being guaranteed.
2021-04-25 21:51:24 -07:00
GoldenTails
971518d22e Have Lua_OnChange restore the stack to what it was before it was called.
So we don't get Luas with access to LUA_GetErrorMessage.
2020-12-20 21:43:14 -06:00
LJ Sonic
eef3028110 Merge branch 'fix-stacktrace' of https://git.do.srb2.org/STJr/SRB2.git into next
# Conflicts:
#	src/dehacked.c
#	src/dehacked.h
2020-11-29 21:54:15 +01:00
Louis-Antoine
01124f2076 Fix Lua stacktrace not showing in various situations 2020-11-13 19:12:25 +01:00
James R
b62a3b623a Don't let Lua cvar setting functions work on CV_NOLUA vars 2020-11-09 18:54:00 -08:00
James R
39ccd12f04 Add CV_Set, CV_SetValue, CV_StealthSet, CV_StealthSetValue and CV_AddValue to Lua
CV_SetValue merged with CV_Set (same with CV_StealthSetValue and CV_StealthSet).
2020-10-20 16:08:34 -07:00
GoldenTails
03b7a1c368 Make the player optional for COM_BufInsertText and COM_BufAddText.
When no player is supplied, the command will run for all players.
2020-07-26 12:08:33 -05:00
kaysrishaq
7f9175033d minor lua fixes
minor lua fixes
2020-07-14 01:34:57 -04:00
James R
d4c08a8410 Merge branch 'lightmemedata' into 'next'
Cvars returned by CV_FindVar did not work with userdataType

See merge request STJr/SRB2!754
2020-04-09 19:48:39 -04:00
Louis-Antoine
e3cbdf8fab Use HAVE_BLUA as fuel for my fireplace 2020-03-19 18:36:14 +01:00
James R
7060083db5 Update copyright year to 2020 2020-02-19 14:08:45 -08:00
James R
deaf5cfa28 LUA_PushLightUserdata takes the fun out of lib_cvFindVar 2020-02-02 15:19:19 -08: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
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
2b95ea0135 Merge remote-tracking branch 'origin/master' into next 2020-01-12 14:17:52 -08:00
LJ Sonic
6eba68bc3b Merge branch 'fix-node-player-mixups' into 'master'
Fix node player mixups

See merge request STJr/SRB2!684
2020-01-12 15:57:20 -05:00
Louis-Antoine
e9108de365 Replace all instances of XD_KICK with a SendKick function 2020-01-12 19:43:04 +01:00
James R
3b90571987 Merge branch 'local-lua-commands' into 'next'
Local Lua commands + no magic numbers

See merge request STJr/SRB2!602
2020-01-08 16:14:30 -05:00
James R
12e87d58b4 Merge branch 'findvar' into 'next'
CV_FindVar for Lua

See merge request STJr/SRB2!583
2020-01-02 20:54:16 -05:00
James R
e3fcd860de Merge remote-tracking branch 'origin/next' into local-lua-commands 2019-12-30 15:08:34 -08:00
James R
d670139404 Revert revert revert
This reverts commit 6546e3c3bc.
This reverts commit 8a15e9abc4.
2019-12-30 12:31:53 -08:00
James R
65921c1702 Improve COM_AddCommand boolean deprecated warning 2019-12-29 21:09:07 -08:00
James R
802ef0aba1 COM_LOCAL makes your commands NetXCmd free, FUCK NetXCmd 2019-12-29 21:07:28 -08:00
James R
6546e3c3bc No. 2019-12-29 21:02:42 -08:00