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.max_fire_temperature_sustained = 0
|
||||
|
||||
/obj/effect/hotspot/Crossed(mob/living/L)
|
||||
/obj/effect/hotspot/Crossed(mob/living/L, oldloc)
|
||||
..()
|
||||
if(isliving(L))
|
||||
L.fire_act()
|
||||
|
||||
@@ -119,7 +119,7 @@
|
||||
owner = null
|
||||
return ..()
|
||||
|
||||
/obj/effect/ebeam/deadly/Crossed(atom/A)
|
||||
/obj/effect/ebeam/deadly/Crossed(atom/A, oldloc)
|
||||
..()
|
||||
A.ex_act(1)
|
||||
|
||||
|
||||
@@ -194,7 +194,7 @@
|
||||
|
||||
// Previously known as HasEntered()
|
||||
// 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)
|
||||
|
||||
/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)
|
||||
destination.Entered(src)
|
||||
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/destturf = get_turf(destination)
|
||||
var/old_z = (oldturf ? oldturf.z : null)
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
take_damage(Proj.damage, Proj.damage_type)
|
||||
return 0
|
||||
|
||||
/obj/structure/blob/Crossed(var/mob/living/L)
|
||||
/obj/structure/blob/Crossed(var/mob/living/L, oldloc)
|
||||
..()
|
||||
L.blob_act(src)
|
||||
|
||||
|
||||
@@ -271,7 +271,7 @@ var/list/blacklisted_pylon_turfs = typecacheof(list(
|
||||
return
|
||||
return
|
||||
|
||||
/obj/effect/gateway/Crossed(AM as mob|obj)
|
||||
/obj/effect/gateway/Crossed(AM as mob|obj, oldloc)
|
||||
spawn(0)
|
||||
return
|
||||
return
|
||||
|
||||
@@ -545,7 +545,7 @@
|
||||
light_color = LIGHT_COLOR_CYAN
|
||||
health = 10
|
||||
|
||||
/obj/structure/swarmer/trap/Crossed(var/atom/movable/AM)
|
||||
/obj/structure/swarmer/trap/Crossed(var/atom/movable/AM, oldloc)
|
||||
if(isliving(AM))
|
||||
var/mob/living/L = AM
|
||||
if(!istype(L, /mob/living/simple_animal/hostile/swarmer))
|
||||
|
||||
@@ -42,7 +42,7 @@
|
||||
do_teleport(M, M, 10)
|
||||
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)
|
||||
|
||||
|
||||
@@ -103,7 +103,7 @@
|
||||
invisibility = 1
|
||||
|
||||
|
||||
/obj/item/effect/snare/Crossed(AM as mob|obj)
|
||||
/obj/item/effect/snare/Crossed(AM as mob|obj, oldloc)
|
||||
if(isliving(AM))
|
||||
var/turf/snare_loc = get_turf(loc)
|
||||
if(spawner)
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
icon_state = "table2-idle"
|
||||
return 0
|
||||
|
||||
/obj/machinery/optable/Crossed(atom/movable/AM)
|
||||
/obj/machinery/optable/Crossed(atom/movable/AM, oldloc)
|
||||
. = ..()
|
||||
if(iscarbon(AM) && LAZYLEN(injected_reagents))
|
||||
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
|
||||
|
||||
//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
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -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 ..()
|
||||
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -578,7 +578,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d
|
||||
/obj/item/proc/is_equivalent(obj/item/I)
|
||||
return I == src
|
||||
|
||||
/obj/item/Crossed(atom/movable/AM)
|
||||
/obj/item/Crossed(atom/movable/AM, oldloc)
|
||||
. = ..()
|
||||
if(prob(trip_chance) && ishuman(AM))
|
||||
var/mob/living/carbon/human/H = AM
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
if(S.merge_type == merge_type)
|
||||
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
|
||||
return
|
||||
if(istype(O, merge_type) && !O.throwing)
|
||||
|
||||
@@ -283,7 +283,7 @@
|
||||
..()
|
||||
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
|
||||
var/mob/living/carbon/M = H
|
||||
if(issilicon(H) || M.m_intent == MOVE_INTENT_RUN)
|
||||
|
||||
@@ -48,9 +48,9 @@
|
||||
/obj/item/grenade/plastic/receive_signal()
|
||||
prime()
|
||||
|
||||
/obj/item/grenade/plastic/Crossed(atom/movable/AM)
|
||||
/obj/item/grenade/plastic/Crossed(atom/movable/AM, oldloc)
|
||||
if(nadeassembly)
|
||||
nadeassembly.Crossed(AM)
|
||||
nadeassembly.Crossed(AM, oldloc)
|
||||
|
||||
/obj/item/grenade/plastic/on_found(mob/finder)
|
||||
if(nadeassembly)
|
||||
|
||||
@@ -239,9 +239,9 @@
|
||||
if(nadeassembly)
|
||||
nadeassembly.process_movement()
|
||||
|
||||
/obj/item/grenade/chem_grenade/Crossed(atom/movable/AM)
|
||||
/obj/item/grenade/chem_grenade/Crossed(atom/movable/AM, oldloc)
|
||||
if(nadeassembly)
|
||||
nadeassembly.Crossed(AM)
|
||||
nadeassembly.Crossed(AM, oldloc)
|
||||
|
||||
/obj/item/grenade/chem_grenade/on_found(mob/finder)
|
||||
if(nadeassembly)
|
||||
|
||||
@@ -87,7 +87,7 @@
|
||||
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( (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
|
||||
@@ -193,6 +193,6 @@
|
||||
/obj/item/restraints/legcuffs/bola/energy/throw_impact(atom/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))
|
||||
B.Crossed(hit_atom)
|
||||
B.Crossed(hit_atom, null)
|
||||
qdel(src)
|
||||
..()
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
else
|
||||
return ..()
|
||||
|
||||
/obj/item/shard/Crossed(AM as mob|obj)
|
||||
/obj/item/shard/Crossed(AM as mob|obj, oldloc)
|
||||
if(isliving(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!
|
||||
|
||||
@@ -452,7 +452,7 @@
|
||||
icon_closed = transparent ? "bluespacetrans" : "bluespace"
|
||||
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)
|
||||
icon_state = opened ? "bluespaceopentrans" : "bluespacetrans"
|
||||
|
||||
|
||||
@@ -377,7 +377,7 @@
|
||||
qdel(i)
|
||||
. = ..()
|
||||
|
||||
/obj/structure/table/glass/Crossed(atom/movable/AM)
|
||||
/obj/structure/table/glass/Crossed(atom/movable/AM, oldloc)
|
||||
. = ..()
|
||||
if(!can_deconstruct)
|
||||
return
|
||||
|
||||
@@ -363,7 +363,7 @@
|
||||
qdel(mymist)
|
||||
ismist = 0
|
||||
|
||||
/obj/machinery/shower/Crossed(atom/movable/O)
|
||||
/obj/machinery/shower/Crossed(atom/movable/O, oldloc)
|
||||
..()
|
||||
wash(O)
|
||||
if(ismob(O))
|
||||
|
||||
@@ -77,9 +77,9 @@
|
||||
if(bombassembly)
|
||||
bombassembly.HasProximity(AM)
|
||||
|
||||
/obj/item/onetankbomb/Crossed(atom/movable/AM) //for mousetraps
|
||||
/obj/item/onetankbomb/Crossed(atom/movable/AM, oldloc) //for mousetraps
|
||||
if(bombassembly)
|
||||
bombassembly.Crossed(AM)
|
||||
bombassembly.Crossed(AM, oldloc)
|
||||
|
||||
/obj/item/onetankbomb/on_found(mob/finder) //for mousetraps
|
||||
if(bombassembly)
|
||||
|
||||
@@ -85,11 +85,11 @@
|
||||
a_right.HasProximity(AM)
|
||||
|
||||
|
||||
/obj/item/assembly_holder/Crossed(atom/movable/AM)
|
||||
/obj/item/assembly_holder/Crossed(atom/movable/AM, oldloc)
|
||||
if(a_left)
|
||||
a_left.Crossed(AM)
|
||||
a_left.Crossed(AM, oldloc)
|
||||
if(a_right)
|
||||
a_right.Crossed(AM)
|
||||
a_right.Crossed(AM, oldloc)
|
||||
|
||||
/obj/item/assembly_holder/on_found(mob/finder)
|
||||
if(a_left)
|
||||
|
||||
@@ -269,7 +269,7 @@
|
||||
/obj/effect/beam/i_beam/Bumped()
|
||||
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))
|
||||
return
|
||||
if(istype(AM, /obj/effect))
|
||||
|
||||
@@ -93,7 +93,7 @@
|
||||
return
|
||||
..()
|
||||
|
||||
/obj/item/assembly/mousetrap/Crossed(atom/movable/AM)
|
||||
/obj/item/assembly/mousetrap/Crossed(atom/movable/AM, oldloc)
|
||||
if(armed)
|
||||
if(ishuman(AM))
|
||||
var/mob/living/carbon/H = AM
|
||||
|
||||
@@ -140,7 +140,7 @@
|
||||
/obj/effect/meatgrinder/New()
|
||||
icon_state = "blobpod"
|
||||
|
||||
/obj/effect/meatgrinder/Crossed(AM as mob|obj)
|
||||
/obj/effect/meatgrinder/Crossed(AM as mob|obj, oldloc)
|
||||
Bumped(AM)
|
||||
|
||||
/obj/effect/meatgrinder/Bumped(mob/M as mob|obj)
|
||||
|
||||
@@ -65,7 +65,7 @@
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
return ..()
|
||||
|
||||
/obj/effect/portal_sensor/Crossed(A)
|
||||
/obj/effect/portal_sensor/Crossed(A, oldloc)
|
||||
trigger()
|
||||
|
||||
/obj/effect/portal_sensor/Uncrossed(A)
|
||||
|
||||
@@ -514,7 +514,7 @@
|
||||
/obj/structure/spacevine/obj_destruction()
|
||||
wither()
|
||||
|
||||
/obj/structure/spacevine/Crossed(mob/crosser)
|
||||
/obj/structure/spacevine/Crossed(mob/crosser, oldloc)
|
||||
if(isliving(crosser))
|
||||
for(var/datum/spacevine_mutation/SM in mutations)
|
||||
SM.on_cross(src, crosser)
|
||||
|
||||
@@ -589,7 +589,7 @@ Gunshots/explosions/opening doors/less rare audio (done)
|
||||
health -= P.force
|
||||
return
|
||||
|
||||
/obj/effect/fake_attacker/Crossed(mob/M, somenumber)
|
||||
/obj/effect/fake_attacker/Crossed(mob/M, oldloc)
|
||||
if(M == my_target)
|
||||
step_away(src,my_target,2)
|
||||
if(prob(30))
|
||||
|
||||
@@ -151,7 +151,7 @@
|
||||
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)
|
||||
for(var/datum/plant_gene/trait/T in seed.genes)
|
||||
T.on_cross(src, AM)
|
||||
|
||||
@@ -160,7 +160,7 @@
|
||||
..()
|
||||
StartBurning()
|
||||
|
||||
/obj/structure/bonfire/Crossed(atom/movable/AM)
|
||||
/obj/structure/bonfire/Crossed(atom/movable/AM, oldloc)
|
||||
if(burning)
|
||||
Burn()
|
||||
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
return 0
|
||||
|
||||
|
||||
/obj/item/grown/Crossed(atom/movable/AM)
|
||||
/obj/item/grown/Crossed(atom/movable/AM, oldloc)
|
||||
if(seed)
|
||||
for(var/datum/plant_gene/trait/T in seed.genes)
|
||||
T.on_cross(src, AM)
|
||||
|
||||
@@ -137,7 +137,7 @@
|
||||
regrowth_time_low = 4800
|
||||
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))
|
||||
var/mob/living/carbon/human/H = AM
|
||||
if(!H.shoes && !H.lying) //ouch, my feet.
|
||||
|
||||
@@ -31,7 +31,7 @@
|
||||
else if(W.isOn())
|
||||
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/turf/simulated/floor/F = get_turf(src)
|
||||
if(loc != F)
|
||||
|
||||
@@ -72,7 +72,7 @@ var/const/MAX_ACTIVE_TIME = 400
|
||||
/obj/item/clothing/mask/facehugger/equipped(mob/M)
|
||||
Attach(M)
|
||||
|
||||
/obj/item/clothing/mask/facehugger/Crossed(atom/target)
|
||||
/obj/item/clothing/mask/facehugger/Crossed(atom/target, oldloc)
|
||||
HasProximity(target)
|
||||
return
|
||||
|
||||
|
||||
@@ -455,7 +455,7 @@
|
||||
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
|
||||
if(istype(MB))
|
||||
MB.RunOver(src)
|
||||
|
||||
@@ -48,7 +48,7 @@
|
||||
..()
|
||||
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)
|
||||
var/mob/living/carbon/C = AM
|
||||
|
||||
@@ -298,7 +298,7 @@
|
||||
target = user
|
||||
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(prob(30)) //you're far more likely to trip on a honkbot
|
||||
var/mob/living/carbon/C = AM
|
||||
|
||||
@@ -439,7 +439,7 @@ Auto Patrol: []"},
|
||||
target = user
|
||||
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)
|
||||
var/mob/living/carbon/C = AM
|
||||
if(!istype(C) || !C || in_range(src, target))
|
||||
|
||||
@@ -24,7 +24,7 @@
|
||||
/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.
|
||||
|
||||
/mob/living/simple_animal/cockroach/Crossed(var/atom/movable/AM)
|
||||
/mob/living/simple_animal/cockroach/Crossed(var/atom/movable/AM, oldloc)
|
||||
if(isliving(AM))
|
||||
var/mob/living/A = AM
|
||||
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>")
|
||||
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(!stat)
|
||||
var/mob/M = AM
|
||||
|
||||
@@ -526,7 +526,7 @@ Difficulty: Hard
|
||||
sleep(1.3) //slightly forgiving; the burst animation is 1.5 deciseconds
|
||||
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)
|
||||
do_damage(get_turf(src))
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
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))
|
||||
var/mob/living/L = AM
|
||||
if(!("vines" in L.faction))
|
||||
|
||||
@@ -33,11 +33,10 @@
|
||||
return 0
|
||||
|
||||
|
||||
/obj/machinery/field/containment/Crossed(mob/mover)
|
||||
/obj/machinery/field/containment/Crossed(mob/mover, oldloc)
|
||||
if(isliving(mover))
|
||||
shock_field(mover)
|
||||
|
||||
/obj/machinery/field/containment/Crossed(obj/mover)
|
||||
if(istype(mover, /obj/machinery) || istype(mover, /obj/structure) || istype(mover, /obj/mecha))
|
||||
bump_field(mover)
|
||||
|
||||
|
||||
@@ -287,7 +287,7 @@ field_generator power level display
|
||||
fields += CF
|
||||
G.fields += CF
|
||||
for(var/mob/living/L in T)
|
||||
CF.Crossed(L)
|
||||
CF.Crossed(L, null)
|
||||
|
||||
connected_gens |= G
|
||||
G.connected_gens |= src
|
||||
|
||||
@@ -39,7 +39,7 @@
|
||||
var/obj/singularity/S = A
|
||||
S.energy += energy
|
||||
|
||||
/obj/effect/accelerated_particle/Crossed(atom/A)
|
||||
/obj/effect/accelerated_particle/Crossed(atom/A, oldloc)
|
||||
if(isliving(A))
|
||||
toxmob(A)
|
||||
|
||||
|
||||
@@ -41,7 +41,7 @@
|
||||
playsound(loc, 'sound/weapons/bladeslice.ogg', 50, 1, -1)
|
||||
return ..()
|
||||
|
||||
/obj/item/shard/supermatter/Crossed(AM as mob|obj)
|
||||
/obj/item/shard/supermatter/Crossed(AM as mob|obj, oldloc)
|
||||
if(ismob(AM))
|
||||
var/mob/M = AM
|
||||
to_chat(M, "<span class='danger'>You step on \the [src]!</span>")
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
/obj/machinery/power/treadmill/update_icon()
|
||||
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(!istype(M) || M.dir != dir)
|
||||
throw_off(M)
|
||||
|
||||
@@ -281,7 +281,7 @@
|
||||
Range()
|
||||
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))
|
||||
Bump(AM, 1)
|
||||
|
||||
@@ -246,9 +246,9 @@
|
||||
if(assembly)
|
||||
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)
|
||||
assembly.Crossed(AM)
|
||||
assembly.Crossed(AM, oldloc)
|
||||
|
||||
/obj/item/reagent_containers/glass/beaker/on_found(mob/finder) //for mousetraps
|
||||
if(assembly)
|
||||
|
||||
@@ -187,9 +187,9 @@
|
||||
if(rig)
|
||||
rig.HasProximity(AM)
|
||||
|
||||
/obj/structure/reagent_dispensers/fueltank/Crossed(atom/movable/AM)
|
||||
/obj/structure/reagent_dispensers/fueltank/Crossed(atom/movable/AM, oldloc)
|
||||
if(rig)
|
||||
rig.Crossed(AM)
|
||||
rig.Crossed(AM, oldloc)
|
||||
|
||||
/obj/structure/reagent_dispensers/fueltank/hear_talk(mob/living/M, list/message_pieces)
|
||||
if(rig)
|
||||
|
||||
@@ -178,7 +178,7 @@ GLOBAL_LIST_INIT(conveyor_switches, list())
|
||||
else if(still_stuff_to_move && !speed_process)
|
||||
makeSpeedProcess()
|
||||
|
||||
/obj/machinery/conveyor/Crossed(atom/movable/AM)
|
||||
/obj/machinery/conveyor/Crossed(atom/movable/AM, oldloc)
|
||||
if(!speed_process && !AM.anchored)
|
||||
makeSpeedProcess()
|
||||
..()
|
||||
|
||||
@@ -266,7 +266,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
/obj/structure/stone_tile/singularity_pull()
|
||||
return
|
||||
|
||||
/obj/structure/stone_tile/Crossed(atom/movable/AM)
|
||||
/obj/structure/stone_tile/Crossed(atom/movable/AM, oldloc)
|
||||
if(falling || fallen)
|
||||
return
|
||||
var/turf/T = get_turf(src)
|
||||
@@ -310,7 +310,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate)
|
||||
falling = 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
|
||||
|
||||
/obj/structure/stone_tile/block
|
||||
|
||||
Reference in New Issue
Block a user