Commit graph

329 commits

Author SHA1 Message Date
Shane Ellis
b73a15a0bf fixed G_AddPlayer not sending return value 2021-01-15 22:50:15 -05:00
Shane Ellis
4e029dbc67 Update lua_baselib.c 2021-01-15 17:45:41 -05:00
Shane Ellis
00462323c3 Revert "Implementation of lua function P_AddPlayer()"
This reverts commit 5e8313e157
2021-01-15 22:42:35 +00:00
Shane Ellis
5e8313e157 Implementation of lua function P_AddPlayer() 2021-01-15 16:50:01 -05:00
Nev3r
b642682dde Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into lua-tag-iterator
# Conflicts:
#	src/doomtype.h
2020-12-16 17:27:44 +01:00
Sally Coolatta
c5474436af Use FixedHypot over P_AproxDistance
Not convinced that the small speed benefit from P_AproxDistance is worth the "aproximate"[sic] results it gives. Let's instead try a define to replace it with FixedHypot. In Lua, the function gives a deprecated warning.

Inspired by the hyperwall fix for vanilla, except for everything. From little testing, actively improves waypoint checks, bumping, speed checks, wall collisions, Jawz targetting, Lightning Shield attacks, so on.

The only way I see this as a potential downgrade is A_Look (and related functions) getting slower, which are barely used in Kart.
2020-12-12 14:49:25 -08:00
Steel Titanium
ab156e1709 Remove music slot compatibility 2020-12-11 23:11:15 -05:00
James R
8dd964e3a7 Lua: taglist.add and taglist.remove for sector tag lists 2020-12-05 02:02:06 -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
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
Jaime Ita Passos
5e890ee6f8 Merge branch 'next' into spritestuff2 2020-11-19 00:52:43 -03:00
James R
50e15840fb Merge branch 'udmf-multitag' into 'next'
UDMF: Multitag support

See merge request STJr/SRB2!1097
2020-11-14 19:18:14 -05:00
Nev3r
fb9432ae57 Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into udmf-multitag 2020-11-10 11:46:53 +01:00
Steel Titanium
050a22f1ce Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into lua-musicfuncs 2020-11-08 21:20:07 -05:00
Louis-Antoine
9f851dc285 Return explicitly when failing to register a metatable 2020-11-09 00:16:40 +01:00
Louis-Antoine
e52cb7f6fa Throw an error if too many metatables are registered 2020-11-08 17:20:25 +01:00
Steel Titanium
1320f10839 Allow access to skin.sprites[]
Only numframes so far though, as there's already a function for what spriteframe provides.
2020-11-07 23:55:37 -05:00
Jaime Passos
36550725f3 P_DeleteFloorSpriteSlope -> P_RemoveFloorSpriteSlope 2020-11-05 00:42:14 -03:00
Steel Titanium
ac7781a3b3 Expose more music functions to Lua 2020-10-31 21:15:41 -04:00
Louis-Antoine
1155d875d5 Use the same names as userdataType() for userdataMetatable() 2020-10-30 15:00:13 +01:00
Louis-Antoine
f943f247af Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2.git into register-metatables 2020-10-30 14:46:04 +01:00
Nev3r
c62ef355ef Merge branch 'next' of https://git.do.srb2.org/STJr/SRB2 into udmf-multitag
# Conflicts:
#	src/lua_baselib.c
#	src/lua_maplib.c
2020-10-27 20:48:25 +01:00
James R
bd9fda8ceb Merge branch 'lua-polyobjects' into 'next'
Lua polyobjects

Closes #19

See merge request STJr/SRB2!1140
2020-10-15 19:08:54 -04:00
Jaime Passos
e63efdac13 Only create floor sprite slopes when needed, instead of always allocating them.
Has to be done manually in Lua. Use P_CreateFloorSpriteSlope, and P_DeleteFloorSpriteSlope when done with it.
2020-10-14 13:07:02 -03:00
James R
9538ca696a Merge branch 'ceilingz' into 'next'
Add P_CeilingzAtPos function

See merge request STJr/SRB2!1164
2020-10-12 17:44:51 -04:00
James R
ddb6823fe5 Merge branch 'fix-theoretical-lua-exposure-crashes' into 'next'
Fix some theoretical crashes when using the P_*XYMovement, P_*ZMovement, and P_RailThinker functions in Lua.

See merge request STJr/SRB2!1173
2020-10-08 22:01:02 -04:00
James R
c3c34c489b Merge branch 'lua-sectorsounds' into 'next'
Support sectors as sound origins in Lua

See merge request STJr/SRB2!1144
2020-10-08 21:05:01 -04:00
GoldenTails
2ae5c02050 Fix some theoretical crashes when using the P_*XYMovement, P_*ZMovement, and P_RailThinker functions. 2020-10-03 13:24:47 -05:00
Louis-Antoine
e49032eaf7 Let Lua scripts access userdata metatables 2020-10-03 18:40:37 +02:00
Louis-Antoine
121c7da809 Let Lua scripts relink tables to their metatables when unarchiving
This is done through the new "registermetatable" function,
in a somewhat similar fashion to "freeslot" but for metatables:
it must be called at script load to tell SRB2 your metatable
can be automatically relinked during the unarchiving process.
2020-10-03 16:31:04 +02:00
Snu
82ceddb2be god damnit 2020-09-30 08:10:28 +01:00
Snu
feb011ee52 Expose function to Lua 2020-09-30 07:58:41 +01:00
Tatsuru
013714a26f Encapsulate userdata checks 2020-09-14 17:33:26 -03:00
Tatsuru
454682df70 Use the sector's actual soundorg (how did it even work) 2020-09-13 13:54:43 -03:00
Tatsuru
782e559adf Check for sector_t userdata as well 2020-09-13 12:33:18 -03:00
Monster Iestyn
097986b1d9 added polyobj_t to userdataType list
(also added slope_t, vector2_t and vector3_t since they were all missing from here)
2020-09-09 21:24:07 +01:00
Zachary McAlpin
e5b6d19f57 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2 into playercmd-kart-port 2020-07-30 15:37:41 -05:00
Nev3r
c914ac99b4 Bring back P_FindSpecialLineFromTag() for backwards compatibility reasons; emulate the old taglist behavior for this function. 2020-07-29 17:26:43 +02:00
Nev3r
c65ada7dd7 Merge branch 'next' into udmf-multitag
# Conflicts:
#	src/hardware/hw_main.c
2020-07-29 13:55:14 +02:00
Nev3r
6dfe236602 Merge branch 'udmf-next' into 'next'
Merge udmf-next into next

See merge request STJr/SRB2!1075
2020-07-28 14:03:59 -04:00
Zachary McAlpin
117943012a Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2 into playercmd-kart-port 2020-07-25 20:06:12 -05:00
James R
6fd9e25b11 Merge remote-tracking branch 'origin/next' into g_findmap-lua 2020-07-24 02:14:03 -07:00
lachwright
cea3f64c88 Fix default NiGHTS skin brightness for non-super characters 2020-07-20 22:24:16 +08:00
Zachary McAlpin
d26c7654ff Ported Lat's PlayerCmd hook to vanilla SRB2 2020-07-17 00:08:38 -05:00
James R
34bd0d9fe7 Merge branch 'various-color-fixes' into 'next'
Various color fixes

See merge request STJr/SRB2!1060
2020-07-13 18:24:55 -04:00
GoldenTails
ada06910dc Expose P_MovePlayer to Lua. 2020-07-12 18:02:50 -05:00
GoldenTails
4b3d6f04f8 Expose P_PlayerZMovement to Lua.
Finishing off these changes; how a player moves vertically.
2020-07-12 18:02:50 -05:00
GoldenTails
df1fd0c456 Expose P_SceneryZMovement to Lua.
Still more complex than P_RingZMovement.
2020-07-12 18:02:50 -05:00
GoldenTails
4710e4f07c Expose P_RingZMovement to Lua.
Ever wanted to move like a ring vertically?
2020-07-12 18:02:50 -05:00
GoldenTails
6d3a2919a2 Expose P_ZMovement to Lua.
Because P_XYMovement wasn't enough.
2020-07-12 18:02:50 -05:00
GoldenTails
27c25bfa1e Expose P_SceneryXYMovement to Lua.
Ironically this seems slightly more advanced than P_RingXYMovement...
2020-07-12 18:02:50 -05:00
GoldenTails
6ac3d62321 Expose P_RingXYMovement to Lua.
Ever wanted to move like a ring horizontally?
2020-07-12 18:02:50 -05:00
GoldenTails
fe67781d68 Expose P_XYMovement to Lua.
It was so easy; it took a grand total of one compile to implement!
Why wasn't this done before...
2020-07-12 18:02:49 -05:00
kaysrishaq
0f9e3554e2 various color fixes 2020-07-12 07:39:52 -04:00
GoldenTails
7015e656ce Expose P_RailThinker to Lua. 2020-07-12 00:36:22 -05:00
Nev3r
ad55f5f872 Merge branch 'udmf-next' of https://git.magicalgirl.moe/STJr/SRB2/ into udmf-multitag
# Conflicts:
#	src/hardware/hw_main.c
#	src/p_ceilng.c
#	src/p_floor.c
#	src/p_mobj.c
#	src/p_mobj.h
#	src/p_polyobj.c
#	src/p_saveg.c
#	src/p_setup.c
#	src/p_spec.c
#	src/p_spec.h
#	src/p_user.c
#	src/r_bsp.c
#	src/r_defs.h
2020-07-10 18:18:07 +02:00
Nev3r
fd5b05cafc Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2/ into udmf-next 2020-07-06 11:13:27 +02:00
lachwright
527e682931 Add sightcheck boolean to P_RadiusAttack
Also now destroys Egg Guard shields, and circumstantially Minuses
2020-07-04 18:27:06 +08:00
lachwright
8652bbc1a5 Knuckles changes:
- Buffed crouch landing; lasts slightly shorter and cuts speed less
- Support for swimming! Knuckles has slightly different glide controls when he has swim sprites underwater
- Improved glide controls in 2D mode
- Super Knuckles perks: land from a glide or latch onto a wall to generate a shockwave and damage nearby enemies
- Refactored skid dust
- Made super sparks use FF_FULLBRIGHT
- Added P_SpawnSkidDust and P_Earthquake to Lua
2020-07-04 01:54:00 +08:00
Nev3r
ff8759e507 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2/ into udmf-next
# Conflicts:
#	src/hardware/hw_main.c
2020-06-30 20:29:48 +02:00
James R
067d9b9a63 Merge remote-tracking branch 'origin/next' into gtr-fixes 2020-06-24 19:31:19 -07:00
MascaraSnake
4a0206b38d Merge branch 'next' into udmf-next
# Conflicts:
#	src/p_mobj.c
#	src/p_polyobj.c
2020-06-09 09:38:01 +02:00
SwitchKaze
b37c73b008 Make colors UINT16, increase color freeslots to 1024 2020-05-23 19:35:36 -05:00
SwitchKaze
46191cade7 Update to 2.2.4 2020-05-22 16:47:51 -05:00
James R
4eeae51cbb Merge branch 'more-lua-map-names' into 'next'
G_BuildMapTitle for Lua, G_BuildMapName outside of levels

See merge request STJr/SRB2!694
2020-05-19 23:13:35 -04:00
Louis-Antoine
435643b958 Fix P_GetZAt for Lua 2020-05-18 16:16:45 +02:00
Louis-Antoine
d0abd6e86c Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2.git into slope-cleanup
# Conflicts:
#	src/hardware/hw_main.c
#	src/p_spec.c
2020-05-18 16:14:05 +02:00
Louis-Antoine
a06c4a8c98 Rename P_GetZAt to P_GetSlopeZAt and P_GetZAt2 to P_GetZAt 2020-05-18 15:23:56 +02:00
Monster Iestyn
20e4d5ab9e lib_sStopSoundByID: fixed mixed declaration and code compiler warning 2020-05-16 16:14:47 +01:00
Jaime Passos
39c5ab4e17 Merge remote-tracking branch 'origin/next' into gtr-fixes 2020-05-09 17:12:52 -03:00
ZipperQR
d0376e284a S_StopSoundByID Lua support 2020-05-06 16:22:04 +03:00
Nev3r
ab7690346d Merge branch 'udmf-thingargs' into udmf-multitag
# Conflicts:
#	src/doomdata.h
#	src/lua_mobjlib.c
#	src/p_setup.c
2020-04-22 10:54:27 +02:00
Nev3r
95c7690a40 Remove P_FindSpecialLineFromTag() 2020-04-15 10:16:49 +02:00
Nev3r
ca694c8c43 Merge branch 'udmf-next' into udmf-thingargs 2020-04-12 10:02:12 +02:00
Nev3r
4128f826b7 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2/ into udmf-next
# Conflicts:
#	src/lua_hooklib.c
2020-04-12 09:57:19 +02:00
Nev3r
21de33bd08 Add mapthing arg support. 2020-04-11 12:54:34 +02: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
MascaraSnake
1580e14cbc Merge branch 'next' into udmf-next
# Conflicts:
#	extras/conf/Includes/SRB222_linedefs.cfg
#	extras/conf/Includes/SRB222_misc.cfg
#	src/p_spec.c
2020-03-21 20:04:31 +01:00
Louis-Antoine
892a8dd6e7 Make SRB2 flat like Earth 2020-03-20 18:55:29 +01:00
Louis-Antoine
e3cbdf8fab Use HAVE_BLUA as fuel for my fireplace 2020-03-19 18:36:14 +01:00
fickleheart
05b2570ae7 Merge remote-tracking branch 'upstream/next' into lua-music 2020-03-18 22:43:07 -05:00
fickleheart
520e3c5dc3 Are these casts unnecessary...?? 2020-03-18 22:40:11 -05:00
Nev3r
68f60f3c29 Merge branch 'next' of https://git.magicalgirl.moe/STJr/SRB2/ into udmf-next 2020-03-11 09:31:31 +01: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
Jaime Passos
4e7b47440f G_CoopGametype, for all the GT_COOP cases 2020-02-29 00:57:22 -03:00
fickleheart
352029fd76 Add music position functions to Lua 2020-02-23 17:58:32 -06:00
fickleheart
c5f3868819 Expose P_PlayJingle/Music() to Lua 2020-02-23 17:19:18 -06:00
fickleheart
40488096c0 Make P_PlayLivesJingle player optional in Lua 2020-02-23 15:40:59 -06:00
fickleheart
283bb52e7d Disable NOHUD/INLEVEL checks on Lua sound functions
None of these are implicitly sync-safe anyway, and most have
no need to be walled off from HUD code or intermission thinkers.
2020-02-23 12:50:45 -06:00
SwitchKaze
58d435484c Fix userdataType typo 2020-02-23 12:17:52 -05:00
SwitchKaze
6415e10216 Merge branch 'next' of https://github.com/STJr/SRB2 into next-luacolors 2020-02-23 11:50:13 -05:00
James Hale
56b67a3b4f Custom skincolors 2020-02-21 21:56:39 -05: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
MascaraSnake
cae99654be Merge branch 'next' into udmf-next 2020-02-18 18:39:11 +01:00
Steel Titanium
45ab4244fc Restore this that got shifted. 2020-02-15 17:55:25 -05:00
Steel Titanium
2b678aaef0 New Lua functions: R_GetColorByName and R_GetNameByColor 2020-02-15 17:35:00 -05:00
James R
0218f58f48 userdataType can check light userdata too! 2020-02-02 15:08:22 -08:00
MascaraSnake
97c58957ee Merge branch 'next' into udmf-next 2020-01-24 22:38:26 +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