mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-22 20:43:10 +01:00
@@ -111,20 +111,20 @@
|
||||
SPAN_NOTICE("[src] has been whittled away under your careful excavation, but there was nothing of interest inside."))
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/boulder/CollidedWith(AM)
|
||||
/obj/structure/boulder/CollidedWith(atom/bumped_atom)
|
||||
. = ..()
|
||||
if(istype(AM,/mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = AM
|
||||
if(istype(bumped_atom,/mob/living/carbon/human))
|
||||
var/mob/living/carbon/human/H = bumped_atom
|
||||
if((istype(H.l_hand,/obj/item/pickaxe)) && (!H.hand))
|
||||
var/obj/item/pickaxe/P = H.l_hand
|
||||
if(P.autodrill)
|
||||
attackby(H.l_hand,H)
|
||||
INVOKE_ASYNC(src, TYPE_PROC_REF(/atom, attackby), H.l_hand, H)
|
||||
else if((istype(H.r_hand,/obj/item/pickaxe)) && H.hand)
|
||||
var/obj/item/pickaxe/P = H.r_hand
|
||||
if(P.autodrill)
|
||||
attackby(H.r_hand,H)
|
||||
INVOKE_ASYNC(src, TYPE_PROC_REF(/atom, attackby), H.r_hand, H)
|
||||
|
||||
else if(istype(AM,/mob/living/silicon/robot))
|
||||
var/mob/living/silicon/robot/R = AM
|
||||
else if(istype(bumped_atom,/mob/living/silicon/robot))
|
||||
var/mob/living/silicon/robot/R = bumped_atom
|
||||
if(istype(R.module_active,/obj/item/pickaxe))
|
||||
attackby(R.module_active,R)
|
||||
INVOKE_ASYNC(src, TYPE_PROC_REF(/atom, attackby), R.module_active, R)
|
||||
|
||||
@@ -244,33 +244,39 @@
|
||||
if(secondary_effect?.trigger == TRIGGER_FORCE)
|
||||
secondary_effect.ToggleActivate()
|
||||
|
||||
/obj/machinery/artifact/CollidedWith(M as mob|obj)
|
||||
/obj/machinery/artifact/CollidedWith(atom/bumped_atom)
|
||||
..()
|
||||
if(istype(M,/obj))
|
||||
if(M:throwforce >= 10)
|
||||
if(istype(bumped_atom, /obj))
|
||||
var/obj/O = bumped_atom
|
||||
if(O.throwforce >= 10)
|
||||
if(my_effect.trigger == TRIGGER_FORCE)
|
||||
my_effect.ToggleActivate()
|
||||
if(secondary_effect?.trigger == TRIGGER_FORCE)
|
||||
secondary_effect.ToggleActivate()
|
||||
else if(ishuman(M) && !istype(M:gloves,/obj/item/clothing/gloves))
|
||||
var/warn = 0
|
||||
|
||||
if (my_effect.trigger == TRIGGER_TOUCH && prob(50))
|
||||
my_effect.ToggleActivate()
|
||||
warn = 1
|
||||
if(secondary_effect?.trigger == TRIGGER_TOUCH && prob(50))
|
||||
secondary_effect.ToggleActivate()
|
||||
warn = 1
|
||||
else if(ishuman(bumped_atom))
|
||||
|
||||
if (my_effect.effect == EFFECT_TOUCH && prob(50))
|
||||
my_effect.DoEffectTouch(M)
|
||||
warn = 1
|
||||
if(secondary_effect?.effect == EFFECT_TOUCH && prob(50))
|
||||
secondary_effect.DoEffectTouch(M)
|
||||
warn = 1
|
||||
var/mob/living/carbon/human/H = bumped_atom
|
||||
|
||||
if(warn)
|
||||
to_chat(M, "<b>You accidentally touch [src].</b>")
|
||||
if(!istype(H.gloves, /obj/item/clothing/gloves))
|
||||
var/warn = 0
|
||||
|
||||
if (my_effect.trigger == TRIGGER_TOUCH && prob(50))
|
||||
my_effect.ToggleActivate()
|
||||
warn = 1
|
||||
if(secondary_effect?.trigger == TRIGGER_TOUCH && prob(50))
|
||||
secondary_effect.ToggleActivate()
|
||||
warn = 1
|
||||
|
||||
if (my_effect.effect == EFFECT_TOUCH && prob(50))
|
||||
my_effect.DoEffectTouch(H)
|
||||
warn = 1
|
||||
if(secondary_effect?.effect == EFFECT_TOUCH && prob(50))
|
||||
secondary_effect.DoEffectTouch(H)
|
||||
warn = 1
|
||||
|
||||
if(warn)
|
||||
to_chat(H, "<b>You accidentally touch [src].</b>")
|
||||
..()
|
||||
|
||||
/obj/machinery/artifact/bullet_act(var/obj/item/projectile/P)
|
||||
|
||||
Reference in New Issue
Block a user