toaster
bdc50487b7
thinker_era
...
A first pass in attempts to fix crashes when ACS causes map changes.
Frustratingly still got a crash, but I think this is definitely the right foundation to work with.
2024-10-15 22:15:30 -04:00
toaster
5f43f1c2cd
ACS: Invalidate mapscope before PU_LEVEL purge occours
...
Fixes the MapWarp memory corruption conclusively.
2024-10-15 22:12:51 -04:00
James R.
dc680c6698
ACS music functions: add optional bool to only affect player activator
2024-10-15 22:10:01 -04:00
toaster
a8112ecaf7
ACS: Add PlayerBot
...
Returns bot status of activating player
ZDoom had a bot status function that could be mimiced... but it used a passed player number, when all we need to check for is the activator.
To this end, has a different name (the ZDoom version was "PlayerIsBot")
2024-10-15 22:06:54 -04:00
toaster
652479a257
ACS: Add IsNetworkGame
...
- Mimics existing ZDoom(/Hexen?) ACS function for checking Netgame status
2024-10-15 22:06:14 -04:00
Eidolon
71294823d1
Merge branch 'acs-printkill' into 'master'
...
Add ACS branch limit and implement printKill
See merge request KartKrew/RingRacers!22
2024-10-15 22:04:37 -04:00
Sally Coolatta
d29e3f2f6f
Implement thing special
...
Executes when an object is killed.
2024-10-15 21:57:27 -04:00
NepDisk
e0acf82e94
fix
2024-10-15 21:51:44 -04:00
NepDisk
bd0457c311
reapply Merge branch thing-radius-acs into master
...
This reverts commit 5672fd6d50 .
2024-10-15 21:35:15 -04:00
Sally Coolatta
5dc56a413e
Copy first mapthing tag to their mobjs
...
Allows the ThingCount and ThingSound ACS functions to fully work now, and adds significantly more possibilities for scripting later.
2024-10-15 21:34:16 -04:00
NepDisk
5672fd6d50
Revert Merge branch thing-radius-acs into master
...
This reverts commit 31fd1bbd3e .
2024-10-15 17:02:12 -04:00
toaster
31fd1bbd3e
Merge branch thing-radius-acs into master
...
"Radius Action" thing type
See merge request KartKrew/Kart!1429
2024-10-15 16:51:35 -04:00
toaster
e9a588c5b6
Add "GrandPrix" check function to ACS
...
Resolves #669
Done in this branch to keep ACS changes together
2024-10-15 16:49:57 -04:00
James R
6d0b9526e4
ACS: add Music_Play, Music_StopAll and Music_Remap
2024-10-15 16:49:18 -04:00
James R
a9a2aef018
acs/call-funcs.cpp: add ExitLevel function
2024-10-15 16:44:50 -04:00
James R
35b1554ca4
acs/call-funcs.cpp: add StopLevelExit function
2024-10-15 16:44:43 -04:00
Sally Coolatta
acf0466ba6
Add bot styles & bot spawn ACS function
2024-10-15 16:44:29 -04:00
James R
c81bbf3a20
Add GAMEOVER ACS script type
...
Triggered when the level ends with a losing condition and
there are no extra lives.
2024-10-15 16:32:32 -04:00
Sally Coolatta
4ccdf8f43f
Add additional script types
...
- POSITION: Runs when POSITION period ends. Has no activator.
- OVERTIME: Runs when the time limit runs out. Has no activator.
- EMERALD: Runs when the Special Stage UFO's Chaos Emerald is grabbed. The activator object is set to the player that grabbed it.
2024-10-15 16:30:38 -04:00
Sally Coolatta
9b950fb5e7
Fully implement existing script type
...
Missed in the original merge.
2024-10-15 16:29:40 -04:00
NepDisk
af277ad1d9
Split G_ExitLevel into G_BeginLevelExit and G_FinishExitLevel
2024-10-15 16:19:50 -04:00
James R
fe4c882741
ACS_SectorThingCounter: fix infinite loop in touching iterator
2024-10-15 15:47:06 -04:00
--get
fc96a81762
ACS: Better thing counting
...
- ThingCount has an extra argument for sector tag.
- CountEnemies and CountPushables have an extra argument for thing tag.
- Sector tag 0 for CountEnemies and CountPushables now redirects to activator sector.
2024-10-15 15:47:00 -04:00
NepDisk
c63b4c8968
rewrite for og map numbering system
2024-10-15 15:46:42 -04:00
toaster
6346a4ffa6
ACS: void MapWarp(str mapname, bool showintermission)
...
An immediate level change on command, to the specified level (via string).
Utilises the existing nextmapoverride and skipstats system, but with skipstats assumed to be the default.
2024-10-15 15:35:20 -04:00
toaster
9e56a78e41
ACS_GetColorFromString; Fix copypaste error indexing into skin array rather than color array
...
Discovered while writing the following commit.
2024-10-15 15:35:13 -04:00
Sally Coolatta
1902839c1f
ACS: Fix floor & ceiling FOF triggers
2024-10-15 15:35:02 -04:00
Sally Coolatta
285401707c
ACS: Fix enter triggers on intangible FOFs
2024-10-15 15:34:56 -04:00
Sally Coolatta
b8c2112847
ACS: Prevent spectators from using sector actions
2024-10-15 15:34:50 -04:00
Sally Coolatta
d897e9ac79
ACS: Fix tag iterations not working
2024-10-15 15:34:42 -04:00
Sally Coolatta
8bbfd18608
ACS: Add SIDE_BOTH support for SetSideProperty
2024-10-15 15:34:36 -04:00
Sally Coolatta
988dafa667
ACS: Try to fix sprnames garbage
2024-10-15 15:34:30 -04:00
Sally Coolatta
6c026f59cb
ACS: User properties can tell bool from string
2024-10-15 15:34:23 -04:00
Sally Coolatta
061e6e727c
ACS: Get/SetThingProperty
2024-10-15 15:34:17 -04:00
Sally Coolatta
71b7c34b0a
ACS: Allocate user properties with PU_LEVEL
2024-10-15 15:34:10 -04:00
Sally Coolatta
b98b23b901
ACS: Add SIDE_PROP_REPEATCOUNT
...
Missed this one.
2024-10-15 15:34:03 -04:00
Sally Coolatta
89a03a85f3
ACS: UDMF user properties
...
Lines, sides, sectors, and things now all support the "Custom" tab properly. Label a property as `user_[whatever you want]` in this tab, and it will be added to the structure. ACS will then be able to retrieve it using the `Get[x]UserProperty()` function.
2024-10-15 15:33:16 -04:00
Sally Coolatta
6895a04051
ACS: Implement Line and Side get/set functions
...
Additionally, these all now support tag 0 as getting/setting properties from the activator.
2024-10-15 15:27:30 -04:00
Sally Coolatta
1c2b4d5898
ACS: Get/Set property prototyping
...
Mostly proof-of-concept so that Charyb can play around with it and tell me if it works for her.
2024-10-15 15:27:12 -04:00
Sally Coolatta
7aac06b96e
Add equivalent of "Each Time" triggers for ACS
2024-10-15 15:25:06 -04:00
NepDisk
8b3a8611ab
Remove noflags
2024-10-15 15:24:17 -04:00
Sally Coolatta
4c6abb84e2
Fix overlap for ACS_Execute args
2024-10-15 15:23:19 -04:00
Sally Coolatta
03de6d0641
Add TimeAttack ACS function
2024-10-15 15:22:28 -04:00
Sally Coolatta
7a6546e42f
Add BreakTheCapsules ACS function
...
Returns true or false if the map is being played in Break the Capsules or not.
2024-10-15 15:22:20 -04:00
Sally Coolatta
84904d897f
SetLineRenderStyle ACS function
...
SetLineRenderStyle(int tag, int blend, int alpha)
Changes the blend mode and transparency of a linedef. Requires new compiler config for the blend mode constants.
2024-10-15 15:21:31 -04:00
Sally Coolatta
a1e1e5ce22
Add PodiumPosition ACS function
...
Returns the best position of all non-CPU players.
2024-10-15 15:17:32 -04:00
Sally Coolatta
a12ad40610
Add CameraWait ACS function
...
Pauses a script until the tagged camera has no more waypoints to follow.
2024-10-15 15:17:15 -04:00
toaster
1a5ba23947
ACS Environment::loadModule: Free vres after generation
...
Discovered (temporary) memory leak while writing the following commit
2024-10-15 15:15:27 -04:00
Sally Coolatta
47a59591b1
Add string comparison funcs for ACS
2024-10-15 15:14:48 -04:00
Sally Coolatta
1f6574e9a3
Copy first mapthing tag to their mobjs
...
Allows the ThingCount and ThingSound ACS functions to fully work now, and adds significantly more possibilities for scripting later.
2024-10-15 15:13:50 -04:00