Portal fixes - adds oldloc to Crossed()

This commit is contained in:
Mark van Alphen
2019-07-15 20:16:17 +02:00
parent 10ef2311ab
commit fd579015b1
59 changed files with 77 additions and 77 deletions
@@ -88,7 +88,7 @@ var/global/list/image/splatter_cache = list()
return TRUE
//Add "bloodiness" of this blood's type, to the human's shoes
/obj/effect/decal/cleanable/blood/Crossed(atom/movable/O)
/obj/effect/decal/cleanable/blood/Crossed(atom/movable/O, oldloc)
if(!off_floor && ishuman(O))
var/mob/living/carbon/human/H = O
var/obj/item/organ/external/l_foot = H.get_organ("l_foot")
@@ -29,7 +29,7 @@ var/global/list/image/fluidtrack_cache = list()
blood_state = BLOOD_STATE_HUMAN //the icon state to load images from
/obj/effect/decal/cleanable/blood/footprints/Crossed(atom/movable/O)
/obj/effect/decal/cleanable/blood/footprints/Crossed(atom/movable/O, oldloc)
if(ishuman(O))
var/mob/living/carbon/human/H = O
var/obj/item/clothing/shoes/S = H.shoes
+4 -4
View File
@@ -345,7 +345,7 @@ steam.start() -- spawns the effect
return 1
/obj/effect/effect/bad_smoke/Crossed(mob/living/carbon/M as mob )
/obj/effect/effect/bad_smoke/Crossed(mob/living/carbon/M as mob, oldloc)
..()
if(istype(M, /mob/living/carbon))
if(M.internal != null && M.wear_mask && (M.wear_mask.flags & AIRTIGHT))
@@ -569,7 +569,7 @@ steam.start() -- spawns the effect
M.coughedtime = 0
return
/obj/effect/effect/sleep_smoke/Crossed(mob/living/carbon/M as mob )
/obj/effect/effect/sleep_smoke/Crossed(mob/living/carbon/M as mob, oldloc)
..()
if(istype(M, /mob/living/carbon))
if(M.internal != null && M.wear_mask && (M.wear_mask.flags & AIRTIGHT))
@@ -672,7 +672,7 @@ steam.start() -- spawns the effect
R.updatehealth()
return
/obj/effect/effect/mustard_gas/Crossed(mob/living/carbon/human/R as mob )
/obj/effect/effect/mustard_gas/Crossed(mob/living/carbon/human/R as mob, oldloc)
..()
if(istype(R, /mob/living/carbon/human))
if(R.internal != null && usr.wear_mask && (R.wear_mask.flags & AIRTIGHT) && R.wear_suit != null && !istype(R.wear_suit, /obj/item/clothing/suit/storage/labcoat) && !istype(R.wear_suit, /obj/item/clothing/suit/straight_jacket) && !istype(R.wear_suit, /obj/item/clothing/suit/straight_jacket && !istype(R.wear_suit, /obj/item/clothing/suit/armor)))
@@ -984,7 +984,7 @@ steam.start() -- spawns the effect
qdel(src)
/obj/structure/foam/Crossed(var/atom/movable/AM)
/obj/structure/foam/Crossed(var/atom/movable/AM, oldloc)
if(metal)
return
@@ -94,7 +94,7 @@
spawn(5)
qdel(src)
/obj/effect/particle_effect/foam/Crossed(atom/movable/AM)
/obj/effect/particle_effect/foam/Crossed(atom/movable/AM, oldloc)
if(metal)
return
@@ -52,7 +52,7 @@
steps--
return 1
/obj/effect/particle_effect/smoke/Crossed(mob/living/M)
/obj/effect/particle_effect/smoke/Crossed(mob/living/M, oldloc)
if(!istype(M))
return
smoke_mob(M)
+1 -1
View File
@@ -11,7 +11,7 @@
/obj/effect/mine/proc/mineEffect(mob/living/victim)
to_chat(victim, "<span class='danger'>*click*</span>")
/obj/effect/mine/Crossed(AM as mob|obj)
/obj/effect/mine/Crossed(AM as mob|obj, oldloc)
if(!isliving(AM))
return
var/mob/living/M = AM
+4 -5
View File
@@ -3,7 +3,6 @@
desc = "Looks unstable. Best to test it with the clown."
icon = 'icons/obj/stationobjs.dmi'
icon_state = "portal"
density = TRUE
unacidable = TRUE
anchored = TRUE
@@ -17,9 +16,6 @@
var/can_multitool_to_remove = FALSE
var/ignore_tele_proof_area_setting = FALSE
/obj/effect/portal/Bumped(mob/M as mob|obj)
teleport(M)
/obj/effect/portal/New(loc, turf/target, creator = null, lifespan = 300)
..()
@@ -49,10 +45,13 @@
/obj/effect/portal/singularity_act()
return
/obj/effect/portal/Crossed(atom/movable/AM)
/obj/effect/portal/Crossed(atom/movable/AM, oldloc)
if(isobserver(AM))
return ..()
if(target && (get_turf(oldloc) == get_turf(target)))
return ..()
if(!teleport(AM))
return ..()
+1 -1
View File
@@ -9,7 +9,7 @@
/obj/effect/step_trigger/proc/Trigger(var/atom/movable/A)
return 0
/obj/effect/step_trigger/Crossed(H as mob|obj)
/obj/effect/step_trigger/Crossed(H as mob|obj, oldloc)
..()
if(!H)
return