mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2025-12-22 16:21:31 +00:00
Portal fixes - adds oldloc to Crossed()
This commit is contained in:
@@ -189,7 +189,7 @@
|
|||||||
T.to_be_destroyed = 0
|
T.to_be_destroyed = 0
|
||||||
T.max_fire_temperature_sustained = 0
|
T.max_fire_temperature_sustained = 0
|
||||||
|
|
||||||
/obj/effect/hotspot/Crossed(mob/living/L)
|
/obj/effect/hotspot/Crossed(mob/living/L, oldloc)
|
||||||
..()
|
..()
|
||||||
if(isliving(L))
|
if(isliving(L))
|
||||||
L.fire_act()
|
L.fire_act()
|
||||||
|
|||||||
@@ -119,7 +119,7 @@
|
|||||||
owner = null
|
owner = null
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/obj/effect/ebeam/deadly/Crossed(atom/A)
|
/obj/effect/ebeam/deadly/Crossed(atom/A, oldloc)
|
||||||
..()
|
..()
|
||||||
A.ex_act(1)
|
A.ex_act(1)
|
||||||
|
|
||||||
|
|||||||
@@ -194,7 +194,7 @@
|
|||||||
|
|
||||||
// Previously known as HasEntered()
|
// Previously known as HasEntered()
|
||||||
// This is automatically called when something enters your square
|
// This is automatically called when something enters your square
|
||||||
/atom/movable/Crossed(atom/movable/AM)
|
/atom/movable/Crossed(atom/movable/AM, oldloc)
|
||||||
SEND_SIGNAL(src, COMSIG_MOVABLE_CROSSED, AM)
|
SEND_SIGNAL(src, COMSIG_MOVABLE_CROSSED, AM)
|
||||||
|
|
||||||
/atom/movable/Bump(atom/A, yes) //the "yes" arg is to differentiate our Bump proc from byond's, without it every Bump() call would become a double Bump().
|
/atom/movable/Bump(atom/A, yes) //the "yes" arg is to differentiate our Bump proc from byond's, without it every Bump() call would become a double Bump().
|
||||||
@@ -219,7 +219,9 @@
|
|||||||
if(destination)
|
if(destination)
|
||||||
destination.Entered(src)
|
destination.Entered(src)
|
||||||
for(var/atom/movable/AM in destination)
|
for(var/atom/movable/AM in destination)
|
||||||
AM.Crossed(src)
|
if(AM == src)
|
||||||
|
continue
|
||||||
|
AM.Crossed(src, old_loc)
|
||||||
var/turf/oldturf = get_turf(old_loc)
|
var/turf/oldturf = get_turf(old_loc)
|
||||||
var/turf/destturf = get_turf(destination)
|
var/turf/destturf = get_turf(destination)
|
||||||
var/old_z = (oldturf ? oldturf.z : null)
|
var/old_z = (oldturf ? oldturf.z : null)
|
||||||
|
|||||||
@@ -142,7 +142,7 @@
|
|||||||
take_damage(Proj.damage, Proj.damage_type)
|
take_damage(Proj.damage, Proj.damage_type)
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
/obj/structure/blob/Crossed(var/mob/living/L)
|
/obj/structure/blob/Crossed(var/mob/living/L, oldloc)
|
||||||
..()
|
..()
|
||||||
L.blob_act(src)
|
L.blob_act(src)
|
||||||
|
|
||||||
|
|||||||
@@ -271,7 +271,7 @@ var/list/blacklisted_pylon_turfs = typecacheof(list(
|
|||||||
return
|
return
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/effect/gateway/Crossed(AM as mob|obj)
|
/obj/effect/gateway/Crossed(AM as mob|obj, oldloc)
|
||||||
spawn(0)
|
spawn(0)
|
||||||
return
|
return
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -545,7 +545,7 @@
|
|||||||
light_color = LIGHT_COLOR_CYAN
|
light_color = LIGHT_COLOR_CYAN
|
||||||
health = 10
|
health = 10
|
||||||
|
|
||||||
/obj/structure/swarmer/trap/Crossed(var/atom/movable/AM)
|
/obj/structure/swarmer/trap/Crossed(var/atom/movable/AM, oldloc)
|
||||||
if(isliving(AM))
|
if(isliving(AM))
|
||||||
var/mob/living/L = AM
|
var/mob/living/L = AM
|
||||||
if(!istype(L, /mob/living/simple_animal/hostile/swarmer))
|
if(!istype(L, /mob/living/simple_animal/hostile/swarmer))
|
||||||
|
|||||||
@@ -42,7 +42,7 @@
|
|||||||
do_teleport(M, M, 10)
|
do_teleport(M, M, 10)
|
||||||
new /obj/effect/temp_visual/guardian/phase/out(get_turf(M))
|
new /obj/effect/temp_visual/guardian/phase/out(get_turf(M))
|
||||||
|
|
||||||
/mob/living/simple_animal/hostile/guardian/fire/Crossed(AM as mob|obj)
|
/mob/living/simple_animal/hostile/guardian/fire/Crossed(AM as mob|obj, oldloc)
|
||||||
..()
|
..()
|
||||||
collision_ignite(AM)
|
collision_ignite(AM)
|
||||||
|
|
||||||
|
|||||||
@@ -103,7 +103,7 @@
|
|||||||
invisibility = 1
|
invisibility = 1
|
||||||
|
|
||||||
|
|
||||||
/obj/item/effect/snare/Crossed(AM as mob|obj)
|
/obj/item/effect/snare/Crossed(AM as mob|obj, oldloc)
|
||||||
if(isliving(AM))
|
if(isliving(AM))
|
||||||
var/turf/snare_loc = get_turf(loc)
|
var/turf/snare_loc = get_turf(loc)
|
||||||
if(spawner)
|
if(spawner)
|
||||||
|
|||||||
@@ -99,7 +99,7 @@
|
|||||||
icon_state = "table2-idle"
|
icon_state = "table2-idle"
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
/obj/machinery/optable/Crossed(atom/movable/AM)
|
/obj/machinery/optable/Crossed(atom/movable/AM, oldloc)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(iscarbon(AM) && LAZYLEN(injected_reagents))
|
if(iscarbon(AM) && LAZYLEN(injected_reagents))
|
||||||
to_chat(AM, "<span class='danger'>You feel a series of tiny pricks!</span>")
|
to_chat(AM, "<span class='danger'>You feel a series of tiny pricks!</span>")
|
||||||
|
|||||||
@@ -88,7 +88,7 @@ var/global/list/image/splatter_cache = list()
|
|||||||
return TRUE
|
return TRUE
|
||||||
|
|
||||||
//Add "bloodiness" of this blood's type, to the human's shoes
|
//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))
|
if(!off_floor && ishuman(O))
|
||||||
var/mob/living/carbon/human/H = O
|
var/mob/living/carbon/human/H = O
|
||||||
var/obj/item/organ/external/l_foot = H.get_organ("l_foot")
|
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
|
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))
|
if(ishuman(O))
|
||||||
var/mob/living/carbon/human/H = O
|
var/mob/living/carbon/human/H = O
|
||||||
var/obj/item/clothing/shoes/S = H.shoes
|
var/obj/item/clothing/shoes/S = H.shoes
|
||||||
|
|||||||
@@ -345,7 +345,7 @@ steam.start() -- spawns the effect
|
|||||||
return 1
|
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(istype(M, /mob/living/carbon))
|
||||||
if(M.internal != null && M.wear_mask && (M.wear_mask.flags & AIRTIGHT))
|
if(M.internal != null && M.wear_mask && (M.wear_mask.flags & AIRTIGHT))
|
||||||
@@ -569,7 +569,7 @@ steam.start() -- spawns the effect
|
|||||||
M.coughedtime = 0
|
M.coughedtime = 0
|
||||||
return
|
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(istype(M, /mob/living/carbon))
|
||||||
if(M.internal != null && M.wear_mask && (M.wear_mask.flags & AIRTIGHT))
|
if(M.internal != null && M.wear_mask && (M.wear_mask.flags & AIRTIGHT))
|
||||||
@@ -672,7 +672,7 @@ steam.start() -- spawns the effect
|
|||||||
R.updatehealth()
|
R.updatehealth()
|
||||||
return
|
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(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)))
|
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)
|
qdel(src)
|
||||||
|
|
||||||
|
|
||||||
/obj/structure/foam/Crossed(var/atom/movable/AM)
|
/obj/structure/foam/Crossed(var/atom/movable/AM, oldloc)
|
||||||
if(metal)
|
if(metal)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -94,7 +94,7 @@
|
|||||||
spawn(5)
|
spawn(5)
|
||||||
qdel(src)
|
qdel(src)
|
||||||
|
|
||||||
/obj/effect/particle_effect/foam/Crossed(atom/movable/AM)
|
/obj/effect/particle_effect/foam/Crossed(atom/movable/AM, oldloc)
|
||||||
if(metal)
|
if(metal)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -52,7 +52,7 @@
|
|||||||
steps--
|
steps--
|
||||||
return 1
|
return 1
|
||||||
|
|
||||||
/obj/effect/particle_effect/smoke/Crossed(mob/living/M)
|
/obj/effect/particle_effect/smoke/Crossed(mob/living/M, oldloc)
|
||||||
if(!istype(M))
|
if(!istype(M))
|
||||||
return
|
return
|
||||||
smoke_mob(M)
|
smoke_mob(M)
|
||||||
|
|||||||
@@ -11,7 +11,7 @@
|
|||||||
/obj/effect/mine/proc/mineEffect(mob/living/victim)
|
/obj/effect/mine/proc/mineEffect(mob/living/victim)
|
||||||
to_chat(victim, "<span class='danger'>*click*</span>")
|
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))
|
if(!isliving(AM))
|
||||||
return
|
return
|
||||||
var/mob/living/M = AM
|
var/mob/living/M = AM
|
||||||
|
|||||||
@@ -3,7 +3,6 @@
|
|||||||
desc = "Looks unstable. Best to test it with the clown."
|
desc = "Looks unstable. Best to test it with the clown."
|
||||||
icon = 'icons/obj/stationobjs.dmi'
|
icon = 'icons/obj/stationobjs.dmi'
|
||||||
icon_state = "portal"
|
icon_state = "portal"
|
||||||
density = TRUE
|
|
||||||
unacidable = TRUE
|
unacidable = TRUE
|
||||||
anchored = TRUE
|
anchored = TRUE
|
||||||
|
|
||||||
@@ -17,9 +16,6 @@
|
|||||||
var/can_multitool_to_remove = FALSE
|
var/can_multitool_to_remove = FALSE
|
||||||
var/ignore_tele_proof_area_setting = 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)
|
/obj/effect/portal/New(loc, turf/target, creator = null, lifespan = 300)
|
||||||
..()
|
..()
|
||||||
|
|
||||||
@@ -49,10 +45,13 @@
|
|||||||
/obj/effect/portal/singularity_act()
|
/obj/effect/portal/singularity_act()
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/effect/portal/Crossed(atom/movable/AM)
|
/obj/effect/portal/Crossed(atom/movable/AM, oldloc)
|
||||||
if(isobserver(AM))
|
if(isobserver(AM))
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
|
if(target && (get_turf(oldloc) == get_turf(target)))
|
||||||
|
return ..()
|
||||||
|
|
||||||
if(!teleport(AM))
|
if(!teleport(AM))
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
|
|||||||
@@ -9,7 +9,7 @@
|
|||||||
/obj/effect/step_trigger/proc/Trigger(var/atom/movable/A)
|
/obj/effect/step_trigger/proc/Trigger(var/atom/movable/A)
|
||||||
return 0
|
return 0
|
||||||
|
|
||||||
/obj/effect/step_trigger/Crossed(H as mob|obj)
|
/obj/effect/step_trigger/Crossed(H as mob|obj, oldloc)
|
||||||
..()
|
..()
|
||||||
if(!H)
|
if(!H)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -578,7 +578,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d
|
|||||||
/obj/item/proc/is_equivalent(obj/item/I)
|
/obj/item/proc/is_equivalent(obj/item/I)
|
||||||
return I == src
|
return I == src
|
||||||
|
|
||||||
/obj/item/Crossed(atom/movable/AM)
|
/obj/item/Crossed(atom/movable/AM, oldloc)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(prob(trip_chance) && ishuman(AM))
|
if(prob(trip_chance) && ishuman(AM))
|
||||||
var/mob/living/carbon/human/H = AM
|
var/mob/living/carbon/human/H = AM
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
if(S.merge_type == merge_type)
|
if(S.merge_type == merge_type)
|
||||||
merge(S)
|
merge(S)
|
||||||
|
|
||||||
/obj/item/stack/Crossed(obj/O)
|
/obj/item/stack/Crossed(obj/O, oldloc)
|
||||||
if(amount >= max_amount || ismob(loc)) // Prevents unnecessary call. Also prevents merging stack automatically in a mob's inventory
|
if(amount >= max_amount || ismob(loc)) // Prevents unnecessary call. Also prevents merging stack automatically in a mob's inventory
|
||||||
return
|
return
|
||||||
if(istype(O, merge_type) && !O.throwing)
|
if(istype(O, merge_type) && !O.throwing)
|
||||||
|
|||||||
@@ -283,7 +283,7 @@
|
|||||||
..()
|
..()
|
||||||
pop_burst()
|
pop_burst()
|
||||||
|
|
||||||
/obj/item/toy/snappop/Crossed(H as mob|obj)
|
/obj/item/toy/snappop/Crossed(H as mob|obj, oldloc)
|
||||||
if(ishuman(H) || issilicon(H)) //i guess carp and shit shouldn't set them off
|
if(ishuman(H) || issilicon(H)) //i guess carp and shit shouldn't set them off
|
||||||
var/mob/living/carbon/M = H
|
var/mob/living/carbon/M = H
|
||||||
if(issilicon(H) || M.m_intent == MOVE_INTENT_RUN)
|
if(issilicon(H) || M.m_intent == MOVE_INTENT_RUN)
|
||||||
|
|||||||
@@ -48,9 +48,9 @@
|
|||||||
/obj/item/grenade/plastic/receive_signal()
|
/obj/item/grenade/plastic/receive_signal()
|
||||||
prime()
|
prime()
|
||||||
|
|
||||||
/obj/item/grenade/plastic/Crossed(atom/movable/AM)
|
/obj/item/grenade/plastic/Crossed(atom/movable/AM, oldloc)
|
||||||
if(nadeassembly)
|
if(nadeassembly)
|
||||||
nadeassembly.Crossed(AM)
|
nadeassembly.Crossed(AM, oldloc)
|
||||||
|
|
||||||
/obj/item/grenade/plastic/on_found(mob/finder)
|
/obj/item/grenade/plastic/on_found(mob/finder)
|
||||||
if(nadeassembly)
|
if(nadeassembly)
|
||||||
|
|||||||
@@ -239,9 +239,9 @@
|
|||||||
if(nadeassembly)
|
if(nadeassembly)
|
||||||
nadeassembly.process_movement()
|
nadeassembly.process_movement()
|
||||||
|
|
||||||
/obj/item/grenade/chem_grenade/Crossed(atom/movable/AM)
|
/obj/item/grenade/chem_grenade/Crossed(atom/movable/AM, oldloc)
|
||||||
if(nadeassembly)
|
if(nadeassembly)
|
||||||
nadeassembly.Crossed(AM)
|
nadeassembly.Crossed(AM, oldloc)
|
||||||
|
|
||||||
/obj/item/grenade/chem_grenade/on_found(mob/finder)
|
/obj/item/grenade/chem_grenade/on_found(mob/finder)
|
||||||
if(nadeassembly)
|
if(nadeassembly)
|
||||||
|
|||||||
@@ -87,7 +87,7 @@
|
|||||||
return
|
return
|
||||||
..()
|
..()
|
||||||
|
|
||||||
/obj/item/restraints/legcuffs/beartrap/Crossed(AM as mob|obj)
|
/obj/item/restraints/legcuffs/beartrap/Crossed(AM as mob|obj, oldloc)
|
||||||
if(armed && isturf(src.loc))
|
if(armed && isturf(src.loc))
|
||||||
if( (iscarbon(AM) || isanimal(AM)) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/hostile/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator))
|
if( (iscarbon(AM) || isanimal(AM)) && !istype(AM, /mob/living/simple_animal/parrot) && !istype(AM, /mob/living/simple_animal/hostile/construct) && !istype(AM, /mob/living/simple_animal/shade) && !istype(AM, /mob/living/simple_animal/hostile/viscerator))
|
||||||
var/mob/living/L = AM
|
var/mob/living/L = AM
|
||||||
@@ -193,6 +193,6 @@
|
|||||||
/obj/item/restraints/legcuffs/bola/energy/throw_impact(atom/hit_atom)
|
/obj/item/restraints/legcuffs/bola/energy/throw_impact(atom/hit_atom)
|
||||||
if(iscarbon(hit_atom))
|
if(iscarbon(hit_atom))
|
||||||
var/obj/item/restraints/legcuffs/beartrap/B = new /obj/item/restraints/legcuffs/beartrap/energy/cyborg(get_turf(hit_atom))
|
var/obj/item/restraints/legcuffs/beartrap/B = new /obj/item/restraints/legcuffs/beartrap/energy/cyborg(get_turf(hit_atom))
|
||||||
B.Crossed(hit_atom)
|
B.Crossed(hit_atom, null)
|
||||||
qdel(src)
|
qdel(src)
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -67,7 +67,7 @@
|
|||||||
else
|
else
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/obj/item/shard/Crossed(AM as mob|obj)
|
/obj/item/shard/Crossed(AM as mob|obj, oldloc)
|
||||||
if(isliving(AM))
|
if(isliving(AM))
|
||||||
var/mob/living/M = AM
|
var/mob/living/M = AM
|
||||||
if(M.incorporeal_move || M.flying || M.throwing)//you are incorporal or flying or being thrown ..no shard stepping!
|
if(M.incorporeal_move || M.flying || M.throwing)//you are incorporal or flying or being thrown ..no shard stepping!
|
||||||
|
|||||||
@@ -452,7 +452,7 @@
|
|||||||
icon_closed = transparent ? "bluespacetrans" : "bluespace"
|
icon_closed = transparent ? "bluespacetrans" : "bluespace"
|
||||||
icon_state = opened ? icon_opened : icon_closed
|
icon_state = opened ? icon_opened : icon_closed
|
||||||
|
|
||||||
/obj/structure/closet/bluespace/Crossed(atom/movable/AM)
|
/obj/structure/closet/bluespace/Crossed(atom/movable/AM, oldloc)
|
||||||
if(AM.density)
|
if(AM.density)
|
||||||
icon_state = opened ? "bluespaceopentrans" : "bluespacetrans"
|
icon_state = opened ? "bluespaceopentrans" : "bluespacetrans"
|
||||||
|
|
||||||
|
|||||||
@@ -377,7 +377,7 @@
|
|||||||
qdel(i)
|
qdel(i)
|
||||||
. = ..()
|
. = ..()
|
||||||
|
|
||||||
/obj/structure/table/glass/Crossed(atom/movable/AM)
|
/obj/structure/table/glass/Crossed(atom/movable/AM, oldloc)
|
||||||
. = ..()
|
. = ..()
|
||||||
if(!can_deconstruct)
|
if(!can_deconstruct)
|
||||||
return
|
return
|
||||||
|
|||||||
@@ -363,7 +363,7 @@
|
|||||||
qdel(mymist)
|
qdel(mymist)
|
||||||
ismist = 0
|
ismist = 0
|
||||||
|
|
||||||
/obj/machinery/shower/Crossed(atom/movable/O)
|
/obj/machinery/shower/Crossed(atom/movable/O, oldloc)
|
||||||
..()
|
..()
|
||||||
wash(O)
|
wash(O)
|
||||||
if(ismob(O))
|
if(ismob(O))
|
||||||
|
|||||||
@@ -77,9 +77,9 @@
|
|||||||
if(bombassembly)
|
if(bombassembly)
|
||||||
bombassembly.HasProximity(AM)
|
bombassembly.HasProximity(AM)
|
||||||
|
|
||||||
/obj/item/onetankbomb/Crossed(atom/movable/AM) //for mousetraps
|
/obj/item/onetankbomb/Crossed(atom/movable/AM, oldloc) //for mousetraps
|
||||||
if(bombassembly)
|
if(bombassembly)
|
||||||
bombassembly.Crossed(AM)
|
bombassembly.Crossed(AM, oldloc)
|
||||||
|
|
||||||
/obj/item/onetankbomb/on_found(mob/finder) //for mousetraps
|
/obj/item/onetankbomb/on_found(mob/finder) //for mousetraps
|
||||||
if(bombassembly)
|
if(bombassembly)
|
||||||
|
|||||||
@@ -85,11 +85,11 @@
|
|||||||
a_right.HasProximity(AM)
|
a_right.HasProximity(AM)
|
||||||
|
|
||||||
|
|
||||||
/obj/item/assembly_holder/Crossed(atom/movable/AM)
|
/obj/item/assembly_holder/Crossed(atom/movable/AM, oldloc)
|
||||||
if(a_left)
|
if(a_left)
|
||||||
a_left.Crossed(AM)
|
a_left.Crossed(AM, oldloc)
|
||||||
if(a_right)
|
if(a_right)
|
||||||
a_right.Crossed(AM)
|
a_right.Crossed(AM, oldloc)
|
||||||
|
|
||||||
/obj/item/assembly_holder/on_found(mob/finder)
|
/obj/item/assembly_holder/on_found(mob/finder)
|
||||||
if(a_left)
|
if(a_left)
|
||||||
|
|||||||
@@ -269,7 +269,7 @@
|
|||||||
/obj/effect/beam/i_beam/Bumped()
|
/obj/effect/beam/i_beam/Bumped()
|
||||||
hit()
|
hit()
|
||||||
|
|
||||||
/obj/effect/beam/i_beam/Crossed(atom/movable/AM)
|
/obj/effect/beam/i_beam/Crossed(atom/movable/AM, oldloc)
|
||||||
if(!isobj(AM) && !isliving(AM))
|
if(!isobj(AM) && !isliving(AM))
|
||||||
return
|
return
|
||||||
if(istype(AM, /obj/effect))
|
if(istype(AM, /obj/effect))
|
||||||
|
|||||||
@@ -93,7 +93,7 @@
|
|||||||
return
|
return
|
||||||
..()
|
..()
|
||||||
|
|
||||||
/obj/item/assembly/mousetrap/Crossed(atom/movable/AM)
|
/obj/item/assembly/mousetrap/Crossed(atom/movable/AM, oldloc)
|
||||||
if(armed)
|
if(armed)
|
||||||
if(ishuman(AM))
|
if(ishuman(AM))
|
||||||
var/mob/living/carbon/H = AM
|
var/mob/living/carbon/H = AM
|
||||||
|
|||||||
@@ -140,7 +140,7 @@
|
|||||||
/obj/effect/meatgrinder/New()
|
/obj/effect/meatgrinder/New()
|
||||||
icon_state = "blobpod"
|
icon_state = "blobpod"
|
||||||
|
|
||||||
/obj/effect/meatgrinder/Crossed(AM as mob|obj)
|
/obj/effect/meatgrinder/Crossed(AM as mob|obj, oldloc)
|
||||||
Bumped(AM)
|
Bumped(AM)
|
||||||
|
|
||||||
/obj/effect/meatgrinder/Bumped(mob/M as mob|obj)
|
/obj/effect/meatgrinder/Bumped(mob/M as mob|obj)
|
||||||
|
|||||||
@@ -65,7 +65,7 @@
|
|||||||
STOP_PROCESSING(SSobj, src)
|
STOP_PROCESSING(SSobj, src)
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/obj/effect/portal_sensor/Crossed(A)
|
/obj/effect/portal_sensor/Crossed(A, oldloc)
|
||||||
trigger()
|
trigger()
|
||||||
|
|
||||||
/obj/effect/portal_sensor/Uncrossed(A)
|
/obj/effect/portal_sensor/Uncrossed(A)
|
||||||
|
|||||||
@@ -514,7 +514,7 @@
|
|||||||
/obj/structure/spacevine/obj_destruction()
|
/obj/structure/spacevine/obj_destruction()
|
||||||
wither()
|
wither()
|
||||||
|
|
||||||
/obj/structure/spacevine/Crossed(mob/crosser)
|
/obj/structure/spacevine/Crossed(mob/crosser, oldloc)
|
||||||
if(isliving(crosser))
|
if(isliving(crosser))
|
||||||
for(var/datum/spacevine_mutation/SM in mutations)
|
for(var/datum/spacevine_mutation/SM in mutations)
|
||||||
SM.on_cross(src, crosser)
|
SM.on_cross(src, crosser)
|
||||||
|
|||||||
@@ -589,7 +589,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
|||||||
health -= P.force
|
health -= P.force
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/effect/fake_attacker/Crossed(mob/M, somenumber)
|
/obj/effect/fake_attacker/Crossed(mob/M, oldloc)
|
||||||
if(M == my_target)
|
if(M == my_target)
|
||||||
step_away(src,my_target,2)
|
step_away(src,my_target,2)
|
||||||
if(prob(30))
|
if(prob(30))
|
||||||
|
|||||||
@@ -151,7 +151,7 @@
|
|||||||
T.on_consume(src, usr)
|
T.on_consume(src, usr)
|
||||||
..()
|
..()
|
||||||
|
|
||||||
/obj/item/reagent_containers/food/snacks/grown/Crossed(atom/movable/AM)
|
/obj/item/reagent_containers/food/snacks/grown/Crossed(atom/movable/AM, oldloc)
|
||||||
if(seed)
|
if(seed)
|
||||||
for(var/datum/plant_gene/trait/T in seed.genes)
|
for(var/datum/plant_gene/trait/T in seed.genes)
|
||||||
T.on_cross(src, AM)
|
T.on_cross(src, AM)
|
||||||
|
|||||||
@@ -160,7 +160,7 @@
|
|||||||
..()
|
..()
|
||||||
StartBurning()
|
StartBurning()
|
||||||
|
|
||||||
/obj/structure/bonfire/Crossed(atom/movable/AM)
|
/obj/structure/bonfire/Crossed(atom/movable/AM, oldloc)
|
||||||
if(burning)
|
if(burning)
|
||||||
Burn()
|
Burn()
|
||||||
|
|
||||||
|
|||||||
@@ -51,7 +51,7 @@
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
/obj/item/grown/Crossed(atom/movable/AM)
|
/obj/item/grown/Crossed(atom/movable/AM, oldloc)
|
||||||
if(seed)
|
if(seed)
|
||||||
for(var/datum/plant_gene/trait/T in seed.genes)
|
for(var/datum/plant_gene/trait/T in seed.genes)
|
||||||
T.on_cross(src, AM)
|
T.on_cross(src, AM)
|
||||||
|
|||||||
@@ -137,7 +137,7 @@
|
|||||||
regrowth_time_low = 4800
|
regrowth_time_low = 4800
|
||||||
regrowth_time_high = 7200
|
regrowth_time_high = 7200
|
||||||
|
|
||||||
/obj/structure/flora/ash/cacti/Crossed(mob/AM)
|
/obj/structure/flora/ash/cacti/Crossed(mob/AM, oldloc)
|
||||||
if(ishuman(AM) && has_gravity(loc) && prob(70))
|
if(ishuman(AM) && has_gravity(loc) && prob(70))
|
||||||
var/mob/living/carbon/human/H = AM
|
var/mob/living/carbon/human/H = AM
|
||||||
if(!H.shoes && !H.lying) //ouch, my feet.
|
if(!H.shoes && !H.lying) //ouch, my feet.
|
||||||
|
|||||||
@@ -31,7 +31,7 @@
|
|||||||
else if(W.isOn())
|
else if(W.isOn())
|
||||||
to_chat(user, "<span class='info'>Not enough fuel to smelt [src].</span>")
|
to_chat(user, "<span class='info'>Not enough fuel to smelt [src].</span>")
|
||||||
|
|
||||||
/obj/item/stack/ore/Crossed(atom/movable/AM)
|
/obj/item/stack/ore/Crossed(atom/movable/AM, oldloc)
|
||||||
var/obj/item/storage/bag/ore/OB
|
var/obj/item/storage/bag/ore/OB
|
||||||
var/turf/simulated/floor/F = get_turf(src)
|
var/turf/simulated/floor/F = get_turf(src)
|
||||||
if(loc != F)
|
if(loc != F)
|
||||||
|
|||||||
@@ -72,7 +72,7 @@ var/const/MAX_ACTIVE_TIME = 400
|
|||||||
/obj/item/clothing/mask/facehugger/equipped(mob/M)
|
/obj/item/clothing/mask/facehugger/equipped(mob/M)
|
||||||
Attach(M)
|
Attach(M)
|
||||||
|
|
||||||
/obj/item/clothing/mask/facehugger/Crossed(atom/target)
|
/obj/item/clothing/mask/facehugger/Crossed(atom/target, oldloc)
|
||||||
HasProximity(target)
|
HasProximity(target)
|
||||||
return
|
return
|
||||||
|
|
||||||
|
|||||||
@@ -455,7 +455,7 @@
|
|||||||
popup.open()
|
popup.open()
|
||||||
|
|
||||||
|
|
||||||
/mob/living/carbon/human/Crossed(atom/movable/AM)
|
/mob/living/carbon/human/Crossed(atom/movable/AM, oldloc)
|
||||||
var/mob/living/simple_animal/bot/mulebot/MB = AM
|
var/mob/living/simple_animal/bot/mulebot/MB = AM
|
||||||
if(istype(MB))
|
if(istype(MB))
|
||||||
MB.RunOver(src)
|
MB.RunOver(src)
|
||||||
|
|||||||
@@ -48,7 +48,7 @@
|
|||||||
..()
|
..()
|
||||||
light_color = LIGHT_COLOR_PURE_RED //if you see a red one. RUN!!
|
light_color = LIGHT_COLOR_PURE_RED //if you see a red one. RUN!!
|
||||||
|
|
||||||
/mob/living/simple_animal/bot/secbot/griefsky/Crossed(atom/movable/AM)
|
/mob/living/simple_animal/bot/secbot/griefsky/Crossed(atom/movable/AM, oldloc)
|
||||||
..()
|
..()
|
||||||
if(ismob(AM) && AM == target)
|
if(ismob(AM) && AM == target)
|
||||||
var/mob/living/carbon/C = AM
|
var/mob/living/carbon/C = AM
|
||||||
|
|||||||
@@ -298,7 +298,7 @@
|
|||||||
target = user
|
target = user
|
||||||
mode = BOT_HUNT
|
mode = BOT_HUNT
|
||||||
|
|
||||||
/mob/living/simple_animal/bot/honkbot/Crossed(atom/movable/AM)
|
/mob/living/simple_animal/bot/honkbot/Crossed(atom/movable/AM, oldloc)
|
||||||
if(ismob(AM) && on) //only if its online
|
if(ismob(AM) && on) //only if its online
|
||||||
if(prob(30)) //you're far more likely to trip on a honkbot
|
if(prob(30)) //you're far more likely to trip on a honkbot
|
||||||
var/mob/living/carbon/C = AM
|
var/mob/living/carbon/C = AM
|
||||||
|
|||||||
@@ -439,7 +439,7 @@ Auto Patrol: []"},
|
|||||||
target = user
|
target = user
|
||||||
mode = BOT_HUNT
|
mode = BOT_HUNT
|
||||||
|
|
||||||
/mob/living/simple_animal/bot/secbot/Crossed(atom/movable/AM)
|
/mob/living/simple_animal/bot/secbot/Crossed(atom/movable/AM, oldloc)
|
||||||
if(ismob(AM) && target)
|
if(ismob(AM) && target)
|
||||||
var/mob/living/carbon/C = AM
|
var/mob/living/carbon/C = AM
|
||||||
if(!istype(C) || !C || in_range(src, target))
|
if(!istype(C) || !C || in_range(src, target))
|
||||||
|
|||||||
@@ -24,7 +24,7 @@
|
|||||||
/mob/living/simple_animal/cockroach/can_die()
|
/mob/living/simple_animal/cockroach/can_die()
|
||||||
return ..() && !SSticker.cinematic //If the nuke is going off, then cockroaches are invincible. Keeps the nuke from killing them, cause cockroaches are immune to nukes.
|
return ..() && !SSticker.cinematic //If the nuke is going off, then cockroaches are invincible. Keeps the nuke from killing them, cause cockroaches are immune to nukes.
|
||||||
|
|
||||||
/mob/living/simple_animal/cockroach/Crossed(var/atom/movable/AM)
|
/mob/living/simple_animal/cockroach/Crossed(var/atom/movable/AM, oldloc)
|
||||||
if(isliving(AM))
|
if(isliving(AM))
|
||||||
var/mob/living/A = AM
|
var/mob/living/A = AM
|
||||||
if(A.mob_size > MOB_SIZE_SMALL)
|
if(A.mob_size > MOB_SIZE_SMALL)
|
||||||
|
|||||||
@@ -91,7 +91,7 @@
|
|||||||
to_chat(src, "<span class='warning'>You are too small to pull anything.</span>")
|
to_chat(src, "<span class='warning'>You are too small to pull anything.</span>")
|
||||||
return
|
return
|
||||||
|
|
||||||
/mob/living/simple_animal/mouse/Crossed(AM as mob|obj)
|
/mob/living/simple_animal/mouse/Crossed(AM as mob|obj, oldloc)
|
||||||
if(ishuman(AM))
|
if(ishuman(AM))
|
||||||
if(!stat)
|
if(!stat)
|
||||||
var/mob/M = AM
|
var/mob/M = AM
|
||||||
|
|||||||
@@ -526,7 +526,7 @@ Difficulty: Hard
|
|||||||
sleep(1.3) //slightly forgiving; the burst animation is 1.5 deciseconds
|
sleep(1.3) //slightly forgiving; the burst animation is 1.5 deciseconds
|
||||||
bursting = FALSE //we no longer damage crossers
|
bursting = FALSE //we no longer damage crossers
|
||||||
|
|
||||||
/obj/effect/temp_visual/hierophant/blast/Crossed(atom/movable/AM)
|
/obj/effect/temp_visual/hierophant/blast/Crossed(atom/movable/AM, oldloc)
|
||||||
..()
|
..()
|
||||||
if(bursting)
|
if(bursting)
|
||||||
do_damage(get_turf(src))
|
do_damage(get_turf(src))
|
||||||
|
|||||||
@@ -36,7 +36,7 @@
|
|||||||
desc = "A thick vine, painful to the touch."
|
desc = "A thick vine, painful to the touch."
|
||||||
|
|
||||||
|
|
||||||
/obj/effect/ebeam/vine/Crossed(atom/movable/AM)
|
/obj/effect/ebeam/vine/Crossed(atom/movable/AM, oldloc)
|
||||||
if(isliving(AM))
|
if(isliving(AM))
|
||||||
var/mob/living/L = AM
|
var/mob/living/L = AM
|
||||||
if(!("vines" in L.faction))
|
if(!("vines" in L.faction))
|
||||||
|
|||||||
@@ -33,11 +33,10 @@
|
|||||||
return 0
|
return 0
|
||||||
|
|
||||||
|
|
||||||
/obj/machinery/field/containment/Crossed(mob/mover)
|
/obj/machinery/field/containment/Crossed(mob/mover, oldloc)
|
||||||
if(isliving(mover))
|
if(isliving(mover))
|
||||||
shock_field(mover)
|
shock_field(mover)
|
||||||
|
|
||||||
/obj/machinery/field/containment/Crossed(obj/mover)
|
|
||||||
if(istype(mover, /obj/machinery) || istype(mover, /obj/structure) || istype(mover, /obj/mecha))
|
if(istype(mover, /obj/machinery) || istype(mover, /obj/structure) || istype(mover, /obj/mecha))
|
||||||
bump_field(mover)
|
bump_field(mover)
|
||||||
|
|
||||||
|
|||||||
@@ -287,7 +287,7 @@ field_generator power level display
|
|||||||
fields += CF
|
fields += CF
|
||||||
G.fields += CF
|
G.fields += CF
|
||||||
for(var/mob/living/L in T)
|
for(var/mob/living/L in T)
|
||||||
CF.Crossed(L)
|
CF.Crossed(L, null)
|
||||||
|
|
||||||
connected_gens |= G
|
connected_gens |= G
|
||||||
G.connected_gens |= src
|
G.connected_gens |= src
|
||||||
|
|||||||
@@ -39,7 +39,7 @@
|
|||||||
var/obj/singularity/S = A
|
var/obj/singularity/S = A
|
||||||
S.energy += energy
|
S.energy += energy
|
||||||
|
|
||||||
/obj/effect/accelerated_particle/Crossed(atom/A)
|
/obj/effect/accelerated_particle/Crossed(atom/A, oldloc)
|
||||||
if(isliving(A))
|
if(isliving(A))
|
||||||
toxmob(A)
|
toxmob(A)
|
||||||
|
|
||||||
|
|||||||
@@ -41,7 +41,7 @@
|
|||||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||||
return ..()
|
return ..()
|
||||||
|
|
||||||
/obj/item/shard/supermatter/Crossed(AM as mob|obj)
|
/obj/item/shard/supermatter/Crossed(AM as mob|obj, oldloc)
|
||||||
if(ismob(AM))
|
if(ismob(AM))
|
||||||
var/mob/M = AM
|
var/mob/M = AM
|
||||||
to_chat(M, "<span class='danger'>You step on \the [src]!</span>")
|
to_chat(M, "<span class='danger'>You step on \the [src]!</span>")
|
||||||
|
|||||||
@@ -25,7 +25,7 @@
|
|||||||
/obj/machinery/power/treadmill/update_icon()
|
/obj/machinery/power/treadmill/update_icon()
|
||||||
icon_state = speed ? "conveyor-1" : "conveyor0"
|
icon_state = speed ? "conveyor-1" : "conveyor0"
|
||||||
|
|
||||||
/obj/machinery/power/treadmill/Crossed(mob/living/M)
|
/obj/machinery/power/treadmill/Crossed(mob/living/M, oldloc)
|
||||||
if(anchored && !M.anchored)
|
if(anchored && !M.anchored)
|
||||||
if(!istype(M) || M.dir != dir)
|
if(!istype(M) || M.dir != dir)
|
||||||
throw_off(M)
|
throw_off(M)
|
||||||
|
|||||||
@@ -281,7 +281,7 @@
|
|||||||
Range()
|
Range()
|
||||||
sleep(1)
|
sleep(1)
|
||||||
|
|
||||||
obj/item/projectile/Crossed(atom/movable/AM) //A mob moving on a tile with a projectile is hit by it.
|
obj/item/projectile/Crossed(atom/movable/AM, oldloc) //A mob moving on a tile with a projectile is hit by it.
|
||||||
..()
|
..()
|
||||||
if(isliving(AM) && AM.density && !checkpass(PASSMOB))
|
if(isliving(AM) && AM.density && !checkpass(PASSMOB))
|
||||||
Bump(AM, 1)
|
Bump(AM, 1)
|
||||||
|
|||||||
@@ -246,9 +246,9 @@
|
|||||||
if(assembly)
|
if(assembly)
|
||||||
assembly.HasProximity(AM)
|
assembly.HasProximity(AM)
|
||||||
|
|
||||||
/obj/item/reagent_containers/glass/beaker/Crossed(atom/movable/AM)
|
/obj/item/reagent_containers/glass/beaker/Crossed(atom/movable/AM, oldloc)
|
||||||
if(assembly)
|
if(assembly)
|
||||||
assembly.Crossed(AM)
|
assembly.Crossed(AM, oldloc)
|
||||||
|
|
||||||
/obj/item/reagent_containers/glass/beaker/on_found(mob/finder) //for mousetraps
|
/obj/item/reagent_containers/glass/beaker/on_found(mob/finder) //for mousetraps
|
||||||
if(assembly)
|
if(assembly)
|
||||||
|
|||||||
@@ -187,9 +187,9 @@
|
|||||||
if(rig)
|
if(rig)
|
||||||
rig.HasProximity(AM)
|
rig.HasProximity(AM)
|
||||||
|
|
||||||
/obj/structure/reagent_dispensers/fueltank/Crossed(atom/movable/AM)
|
/obj/structure/reagent_dispensers/fueltank/Crossed(atom/movable/AM, oldloc)
|
||||||
if(rig)
|
if(rig)
|
||||||
rig.Crossed(AM)
|
rig.Crossed(AM, oldloc)
|
||||||
|
|
||||||
/obj/structure/reagent_dispensers/fueltank/hear_talk(mob/living/M, list/message_pieces)
|
/obj/structure/reagent_dispensers/fueltank/hear_talk(mob/living/M, list/message_pieces)
|
||||||
if(rig)
|
if(rig)
|
||||||
|
|||||||
@@ -178,7 +178,7 @@ GLOBAL_LIST_INIT(conveyor_switches, list())
|
|||||||
else if(still_stuff_to_move && !speed_process)
|
else if(still_stuff_to_move && !speed_process)
|
||||||
makeSpeedProcess()
|
makeSpeedProcess()
|
||||||
|
|
||||||
/obj/machinery/conveyor/Crossed(atom/movable/AM)
|
/obj/machinery/conveyor/Crossed(atom/movable/AM, oldloc)
|
||||||
if(!speed_process && !AM.anchored)
|
if(!speed_process && !AM.anchored)
|
||||||
makeSpeedProcess()
|
makeSpeedProcess()
|
||||||
..()
|
..()
|
||||||
|
|||||||
@@ -266,7 +266,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
|||||||
/obj/structure/stone_tile/singularity_pull()
|
/obj/structure/stone_tile/singularity_pull()
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/structure/stone_tile/Crossed(atom/movable/AM)
|
/obj/structure/stone_tile/Crossed(atom/movable/AM, oldloc)
|
||||||
if(falling || fallen)
|
if(falling || fallen)
|
||||||
return
|
return
|
||||||
var/turf/T = get_turf(src)
|
var/turf/T = get_turf(src)
|
||||||
@@ -310,7 +310,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
|||||||
falling = FALSE
|
falling = FALSE
|
||||||
fallen = FALSE
|
fallen = FALSE
|
||||||
|
|
||||||
/obj/structure/stone_tile/proc/crossed_effect(atom/movable/AM)
|
/obj/structure/stone_tile/proc/crossed_effect(atom/movable/AM, oldloc)
|
||||||
return
|
return
|
||||||
|
|
||||||
/obj/structure/stone_tile/block
|
/obj/structure/stone_tile/block
|
||||||
|
|||||||
Reference in New Issue
Block a user