Commit graph

12616 commits

Author SHA1 Message Date
James R
8dd964e3a7 Lua: taglist.add and taglist.remove for sector tag lists 2020-12-05 02:02:06 -08:00
James R
e5a3e6a845 Fix removing a tag unsetting the bit array even if more elements with that tag exist 2020-12-05 01:14:52 -08:00
James R
ae663e7247 Don't realloc twice when adding to the taggroup 2020-12-05 00:46:51 -08:00
James R
828d7e71ce Fix uninitialized last element when using Taggroup_Remove 2020-12-05 00:36:54 -08:00
James R
314fd2783a Lua tag lists
Index and take length of tag lists like a table, 1-indexed. There are three
methods which may be used on tag lists:

list:iterate() - returns an iterator over the tags in the list
list:has(tag) - returns a boolean whether the tag is in the list
list.shares(list2) - returns whether two lists share a tag

"find" is also an alias to "has". Each method may be accessed from the global
taglist library too, e.g. taglist.iterate(list)

Tag lists may be compared with an equality operator too. This will tell you if
the two lists are composed of identical tags.

Accessible from sector.taglist, line.taglist and mapthing.taglist.
2020-12-04 13:53:27 -08:00
James R
c2217bb426 Mkae Lua taggroups indexable
They are 1-indexed.
2020-12-04 04:54:12 -08:00
James R
96851e52a1 hehehehehe what if I forgot to git add? 2020-12-04 02:27:46 -08:00
James R
621efbfa15 Lua taglib for accessing taggroups
The global "tags" can be iterated upon for every unique tag which is set in the
level. If a tag is set on a sector/line/thing, it will be included. Taking the
length of "tags" will give you the number of these unique tags. (If a tag is
set on multiple sectors/lines/things, it will only be counted once though.)

For sectors, lines and mapthings, call the field "tagged". This function takes
one argument, which is the tag. The return value can be iterated over for all
the sectors/lines/things with that tag. The length can also be taken for the
number of such objects. If no argument is given, the global tag is default.
2020-12-04 00:30:08 -08:00
Jaime Ita Passos
2017eb4d9e Fix polyobject segs messing with 3D floors they shouldn't be 2020-12-04 00:03:54 -03:00
Steel Titanium
4c53eabc59 Reword the error to be more consistent with other errors 2020-12-03 21:14:27 -05:00
Steel Titanium
7d45a7c91a Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into lua-skinsprites 2020-12-03 17:29:08 -05:00
Tatsuru
fae845f935 Initialize in p_spec.c too + magic number replacement 2020-12-03 17:50:10 -03:00
Zippy_Zolton
29f56fb2d8 g 2020-12-03 02:05:10 -06:00
Zippy_Zolton
c28bd8005e Fix fire objects disappearing in lava 2020-12-03 01:28:54 -06:00
GoldenTails
b5526312e7 Fix missing stuff 2020-12-02 19:47:00 -06:00
Radicalicious
c98108df27 Revert "Update hw_light.c"
This reverts commit b254439592
2020-12-03 00:46:28 +00:00
Jaime Ita Passos
47b8c0648b Don't clip if the 3D floor is fog 2020-12-02 15:34:11 -03:00
Jaime Ita Passos
0ffb241c0a Fix 3D floor culling with polyobject segs 2020-12-02 15:31:11 -03:00
Tatsuru
a67862665a Don't spawn the projectile if you're just gonna delete it 2020-12-02 12:05:40 -03:00
Radicalicious
b254439592 Update hw_light.c 2020-12-02 00:17:57 -05:00
Nev3r
4d716cb170 Move the numerical arg check below so that the string gets checked first (who decided to give them such similar names anyway). 2020-12-01 19:44:58 +01:00
Nev3r
c8ae28bbaf Follow GZDoom's convention for stringargs. 2020-12-01 18:35:24 +01:00
Zachary McAlpin
7fde15d066 Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into expose-selectheading 2020-11-30 23:48:49 -06:00
James R
d004515d6a Fix double define 2020-11-30 19:04:23 -08:00
Zippy_Zolton
69248cc684 thanks zap 2020-11-30 16:39:24 -06:00
Tatsuru
9770368ee9 Initialize junk line tag lists 2020-11-30 18:21:06 -03:00
Zippy_Zolton
20d1811983 oops 2020-11-30 12:05:45 -06:00
Zippy_Zolton
da1a3029a9 overhaul 2020-11-30 12:04:35 -06:00
Zippy_Zolton
412f3fc42b P_GivePlayerRings 2020-11-29 17:39:54 -06:00
Zippy_Zolton
f913d60a9f Make P_DoSuperTransformation (with giverings) add 50 rings instead of setting it 2020-11-29 17:16:57 -06:00
GoldenTails
119d2e9e37 Remove the rest of the Playing() checks for GameQuit hook 2020-11-29 16:53:29 -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
Zachary McAlpin
51d52f7327 Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into expose-selectheading 2020-11-29 13:59:10 -06:00
GoldenTails
b389700de3 Always call GameQuit when quitting via the Quit menu option on the title screen. 2020-11-29 08:32:04 -06:00
GoldenTails
59d2646593 Send a quitting argument to the GameQuit Lua hook 2020-11-29 08:30:50 -06:00
Nev3r
ecb333511b Merge branch 'fix-playercmd' into 'next'
Fix PlayerCmd not handling angle and aiming correctly

See merge request STJr/SRB2!1265
2020-11-29 05:30:01 -05:00
Nev3r
42ced125a1 Merge branch 'no-dd-make' into 'master'
Remove Direct Draw from Makefile

See merge request STJr/SRB2!1263
2020-11-29 05:29:21 -05:00
Nev3r
ab649e853d Merge branch 'optimise-overridden-actions' into 'fix-stacktrace'
Only call the Lua API for overridden actions

See merge request STJr/SRB2!1254
2020-11-29 05:27:33 -05:00
Nev3r
bcf6823cbf Merge branch 'dehacked-hell' into 'next'
Split dehacked.c into multiple files.

See merge request STJr/SRB2!1222
2020-11-29 05:18:45 -05:00
James R
445d040795 Don't print W_VerifyFile errors more than once 2020-11-28 20:51:21 -08:00
SMS Alfredo
95dfb93a11 Allow non-player objects to apply the CR_PLAYER carry type without crashing the game 2020-11-28 22:03:02 -06:00
James R
6b4d422664 Don't add pk3 if there are holes
ZIP tools often read the final central directory, but SRB2 may not if there are
multiple central directories. It's just easier to not allow "holes", or
unaccounted for bytes in the file.
2020-11-28 20:00:01 -08:00
James R
75c5c8ba6a Add missing *individual* skin flags 2020-11-28 02:22:08 -08:00
James R
b9f6069cd0 Replace TC macros with an enum that automatically counts up
Also fixes TC_DASHMODE not being accessible to Lua.
2020-11-28 02:19:52 -08:00
Zachary McAlpin
0280721f08 Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into expose-selectheading 2020-11-26 10:39:41 -06:00
Zippy_Zolton
db6b0c6aa0 Fix normal one-up sound playing in Mario mode 2020-11-25 21:46:45 -06:00
James R
4ab667c6a0 Merge branch 'spritestuff2-fixes' into 'next'
Some fixes for spritestuff2

See merge request STJr/SRB2!1264
2020-11-25 19:26:49 -05:00
SMS Alfredo
5c71fe0710 Allow player.lastlinehit and player.lastsidehit to be used outside of Knuckles' climbing ability 2020-11-25 14:31:24 -06:00
SMS Alfredo
b2d6d4f83f Expose player.skin and player.availabilities to Lua as Read-only 2020-11-25 12:35:36 -06:00
Zachary McAlpin
d095517999 Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into expose-selectheading 2020-11-24 20:42:08 -06:00