[No GBP] Minor fixes to Haunted Trading Post, Garbage Truck & Lizard Gas (Lavaland) ruins, and MI13 Food Truck (#87026)

Haunted Trading Post
-
- Shock traps no longer trigger when Syndicate mobs move nearby. This
stops patrolling bots wasting the traps' charges.
- Employee lounge has had its items rearranged, to prevent the 1-in-8
chance of the shock trap in the room emitting sparks in just the right
direction to ignite the fuel tanks.
- Dedbots now become sparks and robotic debris when destroyed.
- Space outside the map has been replaced with turf passthrough. By
default this doesn't change anything, but this stops the map template
bringing space tiles with it if it's force loaded on planetary maps.

Garbage Trucks
-
-Space outside the map has been replaced with turf passthrough.

Lizard Gas (Lavaland)
-
- Asphalt turfs in the unroofed parts of the ruins now use planetary
atmos. Atmospheric mishaps (ie plasmafloods and fires from broken or
sabotaged equipment) will spread in a more intuitive pattern (ie they
will bunch up and bubble under the roof, instead of sticking to the
road)

MI13 Food Truck
-
- Removed a decal in a wall.
- Minor tweak to thruster sprites.
## Why It's Good For The Game
These are maintenance fixes on maps I've made. 
## Changelog
🆑
balance: [Haunted Trading Post] Explosive trap in Employee's Lounge is
now less sensitive.
balance: [Haunted Trading Post] Shock traps will no longer be triggered
by Syndicate mobs.
fix: Dedbots now properly spawn post-death visual effects.
fix: [Lizard's Gas (Lavaland)] Atmos outside the gas station has been
tweaked, for realism.
fix: [MI13 Food Truck] Minor visual fixes.
/🆑

---------

Co-authored-by: Ghom <42542238+Ghommie@users.noreply.github.com>
This commit is contained in:
Da Cool Boss
2024-10-23 13:11:52 +02:00
committed by GitHub
co-authored by Ghom
parent 3896c422da
commit e9d8130aa3
11 changed files with 110 additions and 105 deletions
@@ -224,7 +224,7 @@
mouse_opacity = MOUSE_OPACITY_TRANSPARENT
icon = 'icons/effects/effects.dmi'
icon_state = "empdisable"
//trap wont damage mobs in its faction
//trap won't damage mobs in its faction. set this to null to make it attack everyone
faction = list(ROLE_SYNDICATE)
invisibility = INVISIBILITY_ABSTRACT
plane = ABOVE_GAME_PLANE
@@ -269,35 +269,29 @@
if(donk_ai_slave)
SSqueuelinks.add_to_queue(src, SELFDESTRUCT_QUEUE)
/obj/effect/overloader_trap/proc/check_faction(mob/target)
for(var/faction1 in faction)
if(faction1 in target.faction)
return TRUE
return FALSE
/obj/effect/overloader_trap/HasProximity(mob/living)
/obj/effect/overloader_trap/HasProximity(mob/living/target as mob)
if(!locate(host_machine) in loc) //muh machine's gone, delete myself because im disarmed
qdel(src)
return
if(!isliving(target))
return
if(!COOLDOWN_FINISHED(src, trigger_cooldown)) //do nothing if we're on cooldown
return
if(uses_remaining == 0) //deletes trap if it triggers when it has no uses left. should only happen if var edited but lets just be safe
qdel(src)
return
if (!isliving(living)) //ensure the guy triggering us is alive
if (target.stat) //ensure the guy triggering us is alive
return
if (living.stat && check_faction(living)) //and make sure it ain't someone on our team
return
COOLDOWN_START(src, trigger_cooldown, 4 SECONDS)
trap_alerted()
if (!faction_check_atom(target)) //and make sure it ain't someone on our team
COOLDOWN_START(src, trigger_cooldown, 4 SECONDS)
trap_alerted()
/obj/effect/overloader_trap/proc/trap_alerted()
if(host_machine in loc)
if(host_machine in loc) //if someone breaks or moves the machine before the trap goes off, this should fail to do anything
visible_message(span_boldwarning("Sparks fly from [host_machine] as it shakes vigorously!"))
do_sparks(number = 3, source = host_machine)
host_machine.Shake(2, 1, trigger_delay)
addtimer(CALLBACK(src, PROC_REF(trap_effect)), trigger_delay)
//if someone breaks or moves the machine before the trap goes off, this should fail to do anything
/obj/effect/overloader_trap/proc/trap_effect()
for(var/mob/living/living_mob in range(shock_range, src))