Commit graph

34 commits

Author SHA1 Message Date
Monster Iestyn
fa382c0233 Merge branch 'public_next' 2018-08-10 19:36:51 +01:00
Monster Iestyn
2738f3a537 Rewrite archiving/unarchiving of Lua strings for netgames.
This now means:
* Lua strings longer than 1024 chars can now be read properly without awful crashes
* Lua strings with embedded zeros can be written/read without truncating anything (hopefully)
2018-08-05 22:02:20 +01:00
Alam Ed Arias
59f5b46ad3 Merge branch 'public_next' into master 2018-04-03 16:09:11 -04:00
Alam Ed Arias
5a04145e43 Merge branch 'master' into next 2018-03-14 14:29:42 -04:00
Louis-Antoine
aefe06e2ef Fix Lua panic when archiving a table element with an userdata key 2018-03-09 16:40:34 +01:00
Monster Iestyn
8556a05668 Fix SOC/Lua loading messages to display full names or even display at all (for PK3s at least), and otherwise some cleanup of existing code for the messages.
Also, I moved lua_lumploading on/offing to LUA_LoadFile.
2018-02-09 22:43:08 +00:00
Monster Iestyn
b1695de124 Merge branch 'public_next' 2018-02-08 20:31:53 +00:00
Monster Iestyn
fa3998e942 Some fixes to prevent bad table key types causing Lua panic errors for joining players in netgames:
* ArchiveTables: print an error if invalid key, to alert script author potentially
* UnArchiveTables: if the key is found to be nil after reading key and value, print an error and don't set them in the table
2018-01-20 21:18:16 +00:00
Monster Iestyn
61176ee736 Merge branch 'public_next'
# Conflicts:
#	src/doomdef.h
#	src/sdl12/macosx/Srb2mac.xcodeproj/project.pbxproj
#	src/win32/win_vid.c
2018-01-02 17:32:24 +00:00
Alam Ed Arias
bd86f98822 Merge branch 'master' into next 2017-12-16 16:07:31 -05:00
Louis-Antoine
beb9b0f103 Return for both players and mobjs if they've got an empty table, instead of just mobjs 2017-12-15 22:02:34 +01:00
Louis-Antoine
0b836a9841 Fix missing lua_pop in ArchiveExtVars 2017-12-15 16:31:27 +01:00
Monster Iestyn
0dd15ed8a4 Merge branch 'master' into lua-lump-load-only 2017-07-09 15:06:15 +01:00
Monster Iestyn
023d91a02e Merge branch 'public_next'
# Conflicts:
#	src/y_inter.c
2017-07-08 17:49:54 +01:00
Monster Iestyn
c751971d57 Fix integer type slipup in ArchiveValue for saving mobjinfo/state #s that LJSonic spotted
Apart from the fact that UnArchiveValue reads UINT16 for both anyway (which alone causes problems), but UINT8 isn't even enough to store the higher end of the object types list and definitely most of the states welp
2017-07-02 16:50:11 +01:00
Monster Iestyn
1462c638cb Added the "lua_lumploading" variable for restricting certain Lua functions to lump load time only 2017-04-25 21:45:53 +01:00
Monster Iestyn
aa146dee41 Disabled all seg_t/node_t-related Lua code for now
To re-enable support for the above, uncomment the define HAVE_LUA_SEGS line in lua_script.h. Plain bbox userdata stuff is not disabled (though currently it's not used anyway)
2016-11-24 21:11:44 +00:00
Monster Iestyn
dc1e7165f7 Created lua_blockmaplib.c, for Lua's blockmap library
my P_SearchBlockmap_* functions are now a single searchBlockmap function, you can choose between "objects" and "lines" with the first arg to decide what to iterate through. I also rearranged the argument order a bit for easy stack cleanup etc

I'll remove the old stuff later, don't worry, it's disabled for now
2016-10-27 18:10:30 +01:00
Monster Iestyn
98e43ac0d9 Fixed ffloor_t Lua variables not actually saving to $$$.sav
Stupid overlooked semicolons
2016-10-25 16:15:17 +01:00
Monster Iestyn
3fba690d0a Allow $$$.sav to archive and read ffloor_t userdata Lua extvars
Oh, and P_GetFFloorByID is now a thing, to assist with the above. Also added a suitable description for P_GetFFloorBySec
2016-07-10 17:58:54 +01:00
Monster Iestyn
c8a2eaf8a6 Make sure to invalidate sector.lines and all ffloors for the previous map's sectors as well
(yes, I changed my mind about doing it in public repo, probably too much hassle if we want 2.1.16 out soon)
2016-07-10 17:35:05 +01:00
Monster Iestyn
f2b3640c6a Make sure seg/node arrays are invalidated in LUA_InvalidateLevel
(I'll fix sector.lines and ffloors and other things I missed in the public repo)
2016-07-08 20:43:02 +01:00
Monster Iestyn
4c723d05ac Added node_t and nodes[] to Lua
Still some issues with node.bbox, but the rest seems to work
2016-07-08 20:05:54 +01:00
Monster Iestyn
8211e89aec Add seg_t to Lua, may be of use to Nev3r (and possibly others, I guess)
segs[i] is the segs table, "for seg in segs.iterate" iterates through segs, you know the drill by now I hope
2016-05-25 17:15:44 +01:00
Inuyasha
f07585191b copyright dates/statements updated and such
(no actual SLOC changes)
2016-05-17 17:42:11 -07:00
Yukita Mayako
9d6e75ae4f Cleanup LUAh_NetArchiveHook prototype mess. 2016-03-03 17:30:10 -05:00
Yukita Mayako
0b704ba618 Updated NetArchiveHook to lua_hooklib.c
Fixes I_Assert failure crash due to hooks working differently now.
2016-03-03 17:07:05 -05:00
Alam Ed Arias
04c1a507ba Merge remote-tracking branch 'public/hotfix-hook_NetVars' into next 2015-09-03 13:54:12 -04:00
Yukita Mayako
52e2087ee7 Fixed NetVars hook mistakenly assuming index starts from 0. 2015-09-03 13:13:55 -04:00
Yukita Mayako
0af32ee2fa Move garbage collection out of Lua hooks.
That's supposed to be run once a frame, not once per hook
per mobj per frame you moron. If you just run it seven
thousand times a frame, of course your framerate will drop.
2015-06-10 13:42:45 -04:00
JTE
ef0e61fc33 Change LUA_NUMBER to fixed_t, change angle_t handling in Lua.
Angles now go from 0 to 0xFFFF (360 degrees == FRACUNIT) instead
of using a full UINT32. Lua only has one number type, so signedness
gets in the way of using angle_t directly. This handling of angles
matches up with how ZDoom ACS scripting and the like does it.

I also changed all the integer casts and pushes of fixed_t to
their own macro in preperation for possible future seperation.
2015-05-20 23:54:04 -04:00
Alam Ed Arias
d6c29e19ab SRB2 2.1.10 release 2014-08-05 19:59:40 -04:00
Alam Ed Arias
c028c83235 SRB2 2.1.9 release 2014-08-03 23:49:33 -04:00
Alam Ed Arias
b93cb1b65a SRB2 2.1 release 2014-03-15 13:11:35 -04:00