* Fix SpawnEntitiesBehavior crash and add test
* Fix comparer, add duplicated behavior
Turns out this isn't Java
* Threshold behaviors are now "linearly" executed
* Fixes YAML threshold behaviors to be linear
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
* Revert "Make handheld explosives affect tiles (#2806)"
This reverts commit 005e142949.
* Fixes tiles being destroyed under walls by an explosion
* Extra imports removed
* Handles explosion in space and different grids
This handle explosions across different grids, and tiles are still protected if there is an entity airtight and currently blocking air on top of them that survived the explosion.
* Some bug fixes
- The way tiles were being protected was silly.
- Big explosions cause a lot of objects to trigger multiple events and at the same time they are destroyed.
- Explosions spawning inside containers like closets work now.
* Range bug fixes
* Explosive
The explosion works even if the entity exploding is inside multiple 'layers' of containers like.
bomb -> survival box -> tool box -> closet
* Explosions are different now
Explosion can't jump over walls now.
Explosions work like rays now, if an explosion breaks a wall it can scatter inside the room.
If entities are behind impassable entities that survive the blast they are left unscathed.
* Little fix
* Remove the extra lookup of tiles
* Another small change
* Restore the second lookup
I thought this was extra, but this protects the tile under it if there is an Impassable entity on top. None wants anchored girders on top of lattice/space
* Changing order of conditions
IsBlockedTurf is cheaper to run than InRangeUnobstructed.
* Yep
* Conveyor Belt appearance when power is off
If the conveyor belt is running and the power turns off the belt stops pushing things but the animation continues. This changes it so the animation stops if there is no power and resumes when it returns.
* Change from using Initialize, to OnAdd and OnRemove
* Traitor Deathmatch: Add the preset [Rebase onto factors line]
* Traitor Deathmatch: Being a human head or other not-quite-fully-animate object counts as dead. [ROFL]
* Traitor Deathmatch: Add redemption machine (but it doesn't work) [ROFL]
* Traitor Deathmatch: Map in redemption machines [ROFL]
* Traitor Deathmatch: Make the rounds end properly [ROFL]
* Traitor Deathmatch: PDA redemption works [ROFL]
* Traitor Deathmatch: New redemption machine sprite ( @Tomeno )
* Traitor Deathmatch: Get rid of redundant using
* Traitor Deathmatch: Change scoring, prevent redeeming your own PDA, fix bug where PDAs are not tagged with their owner names
* Traitor Deathmatch: Better messages, change cvar name, don't count ghosts for spawnpoint selection