mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 10:12:45 +00:00
Merge pull request #10898 from Heroman3003/incorporeal-fires
Makes incorporeal things properly immune to bonfires and lava (and tram and elevator...)
This commit is contained in:
committed by
Chompstation Bot
parent
b40f14fc6b
commit
e9cb44d9ca
@@ -190,8 +190,9 @@
|
||||
O.fire_act(null, 1000, 500)
|
||||
else if(isliving(A) && get_fuel_amount() > 4)
|
||||
var/mob/living/L = A
|
||||
L.adjust_fire_stacks(get_fuel_amount() / 4)
|
||||
L.IgniteMob()
|
||||
if(!(L.is_incorporeal()))
|
||||
L.adjust_fire_stacks(get_fuel_amount() / 4)
|
||||
L.IgniteMob()
|
||||
|
||||
/obj/structure/bonfire/update_icon()
|
||||
cut_overlays()
|
||||
|
||||
@@ -77,14 +77,14 @@
|
||||
for(var/thing in thing_to_check)
|
||||
if(isobj(thing))
|
||||
var/obj/O = thing
|
||||
if(O.throwing)
|
||||
if(O.throwing || O.is_incorporeal())
|
||||
continue
|
||||
. = TRUE
|
||||
O.lava_act()
|
||||
|
||||
else if(isliving(thing))
|
||||
var/mob/living/L = thing
|
||||
if(L.hovering || L.throwing) // Flying over the lava. We're just gonna pretend convection doesn't exist.
|
||||
if(L.hovering || L.throwing || L.is_incorporeal()) // Flying over the lava. We're just gonna pretend convection doesn't exist.
|
||||
continue
|
||||
. = TRUE
|
||||
L.lava_act()
|
||||
|
||||
@@ -192,12 +192,12 @@
|
||||
|
||||
for(var/turf/T in destination)
|
||||
for(var/atom/movable/AM in T)
|
||||
if(istype(AM, /mob/living))
|
||||
if(istype(AM, /mob/living) && !(AM.is_incorporeal()))
|
||||
var/mob/living/M = AM
|
||||
M.gib()
|
||||
else if(istype(AM, /mob/zshadow))
|
||||
AM.Destroy() //prevent deleting shadow without deleting shadow's shadows
|
||||
else if(AM.simulated && !(istype(AM, /mob/observer)))
|
||||
else if(AM.simulated && !(istype(AM, /mob/observer)) && !(AM.is_incorporeal()))
|
||||
qdel(AM)
|
||||
|
||||
origin.move_contents_to(destination)
|
||||
|
||||
@@ -170,7 +170,7 @@
|
||||
|
||||
// Walking on maglev tracks will shock you! Horray!
|
||||
/turf/simulated/floor/maglev/Entered(var/atom/movable/AM, var/atom/old_loc)
|
||||
if(isliving(AM) && prob(50))
|
||||
if(isliving(AM) && !(AM.is_incorporeal()) && prob(50))
|
||||
track_zap(AM)
|
||||
/turf/simulated/floor/maglev/attack_hand(var/mob/user)
|
||||
if(prob(75))
|
||||
|
||||
Reference in New Issue
Block a user