This commit is contained in:
SandPoot
2023-11-29 22:40:13 -03:00
parent c9b0dedf77
commit 40f1d7401d
704 changed files with 1766 additions and 1743 deletions
@@ -181,8 +181,8 @@ GLOBAL_LIST_EMPTY(antagonists)
apply_innate_effects()
give_antag_moodies()
remove_blacklisted_quirks()
// RegisterSignal(owner, COMSIG_PRE_MINDSHIELD_IMPLANT, .proc/pre_mindshield)
// RegisterSignal(owner, COMSIG_MINDSHIELD_IMPLANTED, .proc/on_mindshield)
// RegisterSignal(owner, COMSIG_PRE_MINDSHIELD_IMPLANT, PROC_REF(pre_mindshield))
// RegisterSignal(owner, COMSIG_MINDSHIELD_IMPLANTED, PROC_REF(on_mindshield))
if(is_banned(owner.current) && replace_banned)
replace_banned_player()
else if(owner.current.client?.holder && (CONFIG_GET(flag/auto_deadmin_antagonists) || owner.current.client.prefs?.deadmin & DEADMIN_ANTAGONIST))
@@ -547,7 +547,7 @@ GLOBAL_LIST_EMPTY(antagonists)
if(!ispath(request_target))
request_target = locate(request_target) in objectives
if(istype(request_target))
RegisterSignal(request_target, COMSIG_PARENT_QDELETING, .proc/clean_request_from_del_objective)
RegisterSignal(request_target, COMSIG_PARENT_QDELETING, PROC_REF(clean_request_from_del_objective))
requested_objective_changes[uid] = additions
@@ -660,7 +660,7 @@
user.visible_message("<span class='notice'>[user] places down [src] and activates it.</span>", "<span class='notice'>You place down [src] and activate it.</span>")
user.dropItemToGround(src)
playsound(src, 'sound/machines/terminal_alert.ogg', 50)
addtimer(CALLBACK(src, .proc/try_spawn_machine), 30)
addtimer(CALLBACK(src, PROC_REF(try_spawn_machine)), 30)
/obj/item/abductor_machine_beacon/proc/try_spawn_machine()
var/viable = FALSE
@@ -63,7 +63,7 @@
update_gland_hud()
var/atom/movable/screen/alert/mind_control/mind_alert = owner.throw_alert("mind_control", /atom/movable/screen/alert/mind_control)
mind_alert.command = command
addtimer(CALLBACK(src, .proc/clear_mind_control), mind_control_duration)
addtimer(CALLBACK(src, PROC_REF(clear_mind_control)), mind_control_duration)
return TRUE
/obj/item/organ/heart/gland/proc/clear_mind_control()
@@ -9,7 +9,7 @@
/obj/item/organ/heart/gland/access/activate()
to_chat(owner, "<span class='notice'>You feel like a VIP for some reason.</span>")
RegisterSignal(owner, COMSIG_MOB_ALLOWED, .proc/free_access)
RegisterSignal(owner, COMSIG_MOB_ALLOWED, PROC_REF(free_access))
/obj/item/organ/heart/gland/access/proc/free_access(datum/source, obj/O)
return TRUE
@@ -20,7 +20,7 @@
owner.visible_message("<span class='danger'>[owner]'s skin starts emitting electric arcs!</span>",\
"<span class='warning'>You feel electric energy building up inside you!</span>")
playsound(get_turf(owner), "sparks", 100, TRUE, -1)
addtimer(CALLBACK(src, .proc/zap), rand(30, 100))
addtimer(CALLBACK(src, PROC_REF(zap)), rand(30, 100))
/obj/item/organ/heart/gland/electric/proc/zap()
tesla_zap(owner, 4, 8000, ZAP_MOB_DAMAGE | ZAP_OBJ_DAMAGE | ZAP_MOB_STUN)
@@ -107,7 +107,7 @@
else
to_chat(owner, "<span class='warning'>You feel a weird rumble behind your eye sockets...</span>")
addtimer(CALLBACK(src, .proc/finish_replace_eyes), rand(100, 200))
addtimer(CALLBACK(src, PROC_REF(finish_replace_eyes)), rand(100, 200))
/obj/item/organ/heart/gland/heal/proc/finish_replace_eyes()
var/eye_type = /obj/item/organ/eyes
@@ -125,7 +125,7 @@
else
to_chat(owner, "<span class='warning'>You feel a weird tingle in your [parse_zone(body_zone)]... even if you don't have one.</span>")
addtimer(CALLBACK(src, .proc/finish_replace_limb, body_zone), rand(150, 300))
addtimer(CALLBACK(src, PROC_REF(finish_replace_limb), body_zone), rand(150, 300))
/obj/item/organ/heart/gland/heal/proc/finish_replace_limb(body_zone)
owner.visible_message("<span class='warning'>With a loud snap, [owner]'s [parse_zone(body_zone)] rapidly grows back from [owner.p_their()] body!</span>",
@@ -155,7 +155,7 @@
if(owner.reagents.has_reagent(R.type))
keep_going = TRUE
if(keep_going)
addtimer(CALLBACK(src, .proc/keep_replacing_blood), 30)
addtimer(CALLBACK(src, PROC_REF(keep_replacing_blood)), 30)
/obj/item/organ/heart/gland/heal/proc/replace_chest(obj/item/bodypart/chest/chest)
if(chest.is_robotic_limb(FALSE))
@@ -48,7 +48,7 @@
if(LAZYLEN(broadcasted_mobs))
active_mind_control = TRUE
addtimer(CALLBACK(src, .proc/clear_mind_control), mind_control_duration)
addtimer(CALLBACK(src, PROC_REF(clear_mind_control)), mind_control_duration)
update_gland_hud()
return TRUE
@@ -9,8 +9,8 @@
/obj/item/organ/heart/gland/plasma/activate()
to_chat(owner, "<span class='warning'>You feel bloated.</span>")
addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, owner, "<span class='userdanger'>A massive stomachache overcomes you.</span>"), 150)
addtimer(CALLBACK(src, .proc/vomit_plasma), 200)
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(to_chat), owner, "<span class='userdanger'>A massive stomachache overcomes you.</span>"), 150)
addtimer(CALLBACK(src, PROC_REF(vomit_plasma)), 200)
/obj/item/organ/heart/gland/plasma/proc/vomit_plasma()
if(!owner)
@@ -15,7 +15,7 @@
if(!iscarbon(M))
continue
entangled_mob = M
addtimer(CALLBACK(src, .proc/quantum_swap), rand(600, 2400))
addtimer(CALLBACK(src, PROC_REF(quantum_swap)), rand(600, 2400))
return
/obj/item/organ/heart/gland/quantum/proc/quantum_swap()
@@ -31,7 +31,7 @@
/obj/machinery/abductor/pad/proc/MobToLoc(place,mob/living/target)
new /obj/effect/temp_visual/teleport_abductor(place)
addtimer(CALLBACK(src, .proc/doMobToLoc, place, target), 80)
addtimer(CALLBACK(src, PROC_REF(doMobToLoc), place, target), 80)
/obj/machinery/abductor/pad/proc/doPadToLoc(place)
flick("alien-pad", src)
@@ -41,7 +41,7 @@
/obj/machinery/abductor/pad/proc/PadToLoc(place)
new /obj/effect/temp_visual/teleport_abductor(place)
addtimer(CALLBACK(src, .proc/doPadToLoc, place), 80)
addtimer(CALLBACK(src, PROC_REF(doPadToLoc), place), 80)
/obj/effect/temp_visual/teleport_abductor
name = "Huh"
@@ -23,11 +23,11 @@
/datum/antagonist/ashwalker/on_body_transfer(mob/living/old_body, mob/living/new_body)
. = ..()
RegisterSignal(new_body, COMSIG_MOB_EXAMINATE, .proc/on_examinate)
RegisterSignal(new_body, COMSIG_MOB_EXAMINATE, PROC_REF(on_examinate))
/datum/antagonist/ashwalker/on_gain()
. = ..()
RegisterSignal(owner.current, COMSIG_MOB_EXAMINATE, .proc/on_examinate)
RegisterSignal(owner.current, COMSIG_MOB_EXAMINATE, PROC_REF(on_examinate))
/datum/antagonist/ashwalker/on_removal()
. = ..()
@@ -18,7 +18,7 @@
return INITIALIZE_HINT_QDEL
if(overmind)
update_icon()
addtimer(CALLBACK(src, .proc/generate_announcement), 1800)
addtimer(CALLBACK(src, PROC_REF(generate_announcement)), 1800)
. = ..()
/obj/structure/blob/core/proc/generate_announcement()
@@ -109,7 +109,7 @@ GLOBAL_LIST_EMPTY(blob_nodes)
set_security_level("delta")
max_blob_points = INFINITY
blob_points = INFINITY
addtimer(CALLBACK(src, .proc/victory), 450)
addtimer(CALLBACK(src, PROC_REF(victory)), 450)
else if(!free_strain_rerolls && (last_reroll_time + BLOB_REROLL_TIME<world.time))
to_chat(src, "<b><span class='big'><font color=\"#EE4000\">You have gained another free strain re-roll.</font></span></b>")
free_strain_rerolls = 1
@@ -341,7 +341,7 @@
//This handles the application of antag huds/special abilities
/datum/antagonist/bloodsucker/apply_innate_effects(mob/living/mob_override)
RegisterSignal(owner.current,COMSIG_LIVING_BIOLOGICAL_LIFE,.proc/LifeTick)
RegisterSignal(owner.current,COMSIG_LIVING_BIOLOGICAL_LIFE, PROC_REF(LifeTick))
return
//This handles the removal of antag huds/special abilities
@@ -146,7 +146,7 @@
to_chat(user, "<span class='notice'>You lean quietly toward [target] and secretly draw out your fangs...</span>")
else
to_chat(user, "<span class='warning'>You pull [target] close to you and draw out your fangs...</span>")
if(!do_mob(user, target, feed_time, NONE, extra_checks = CALLBACK(src, .proc/ContinueActive, user, target)))//sleep(10)
if(!do_mob(user, target, feed_time, NONE, extra_checks = CALLBACK(src, PROC_REF(ContinueActive), user, target)))//sleep(10)
to_chat(user, "<span class='warning'>Your feeding was interrupted.</span>")
//DeactivatePower(user,target)
return
@@ -207,7 +207,7 @@
//user.mobility_flags &= ~MOBILITY_MOVE // user.canmove = 0 // Prevents spilling blood accidentally.
// Abort? A bloody mistake.
if(!do_mob(user, target, 2 SECONDS, NONE, extra_checks=CALLBACK(src, .proc/ContinueActive, user, target)))
if(!do_mob(user, target, 2 SECONDS, NONE, extra_checks=CALLBACK(src, PROC_REF(ContinueActive), user, target)))
// May have disabled Feed during do_mob
if(!active || !ContinueActive(user, target))
break
@@ -48,7 +48,7 @@
/datum/action/bloodsucker/targeted/haste/FireTargetedPower(atom/A)
// This is a non-async proc to make sure the power is "locked" until this finishes.
hit = list()
RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/on_move)
RegisterSignal(owner, COMSIG_MOVABLE_MOVED, PROC_REF(on_move))
var/mob/living/user = owner
var/turf/T = isturf(A) ? A : get_turf(A)
// Pulled? Not anymore.
@@ -13,7 +13,7 @@
/datum/action/bloodsucker/lunge/New()
. = ..()
/datum/action/bloodsucker/lunge/Destroy()
. = ..()
@@ -31,14 +31,14 @@
T.min_distance = 2
active = TRUE
user.toggle_throw_mode()
RegisterSignal(user, COMSIG_CARBON_TACKLED, .proc/DelayedDeactivatePower)
RegisterSignal(user, COMSIG_CARBON_TACKLED, PROC_REF(DelayedDeactivatePower))
while(B && ContinueActive(user))
B.AddBloodVolume(-0.1)
sleep(5)
//Without this, the leap component would get removed too early, causing the normal crash into effects.
/datum/action/bloodsucker/lunge/proc/DelayedDeactivatePower()
addtimer(CALLBACK(src, .proc/DeactivatePower), 1 SECONDS, TIMER_UNIQUE)
/datum/action/bloodsucker/lunge/proc/DelayedDeactivatePower()
addtimer(CALLBACK(src, PROC_REF(DeactivatePower)), 1 SECONDS, TIMER_UNIQUE)
/datum/action/bloodsucker/lunge/DeactivatePower(mob/living/user = owner)
. = ..()
@@ -114,9 +114,9 @@
var/power_time = 138 + level_current * 12
target.apply_status_effect(STATUS_EFFECT_MESMERIZE, 30)
L.apply_status_effect(STATUS_EFFECT_MESMERIZE, 30)
RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/ContinueTarget)
RegisterSignal(target, COMSIG_MOVABLE_MOVED, PROC_REF(ContinueTarget))
// 5 second windup
addtimer(CALLBACK(src, .proc/apply_effects, L, target, power_time), 6 SECONDS)
addtimer(CALLBACK(src, PROC_REF(apply_effects), L, target, power_time), 6 SECONDS)
/datum/action/bloodsucker/targeted/mesmerize/proc/apply_effects(aggressor, victim, power_time)
var/mob/living/carbon/target = victim
@@ -362,7 +362,7 @@
B.organ_flags &= ~ORGAN_VITAL
B.decoy_override = TRUE
update_changeling_icons_added()
RegisterSignal(owner.current,COMSIG_LIVING_BIOLOGICAL_LIFE,.proc/regenerate)
RegisterSignal(owner.current,COMSIG_LIVING_BIOLOGICAL_LIFE, PROC_REF(regenerate))
return
/datum/antagonist/changeling/remove_innate_effects()
@@ -21,7 +21,7 @@
user.visible_message("<span class='warning'>[user] vomits a glob of acid on [user.p_their()] [O]!</span>", \
"<span class='warning'>We vomit acidic ooze onto our restraints!</span>")
addtimer(CALLBACK(src, .proc/dissolve_handcuffs, user, O), 30)
addtimer(CALLBACK(src, PROC_REF(dissolve_handcuffs), user, O), 30)
used = TRUE
if(user.legcuffed)
@@ -31,7 +31,7 @@
user.visible_message("<span class='warning'>[user] vomits a glob of acid on [user.p_their()] [O]!</span>", \
"<span class='warning'>We vomit acidic ooze onto our restraints!</span>")
addtimer(CALLBACK(src, .proc/dissolve_legcuffs, user, O), 30)
addtimer(CALLBACK(src, PROC_REF(dissolve_legcuffs), user, O), 30)
used = TRUE
if(user.wear_suit && user.wear_suit.breakouttime && !used)
@@ -40,7 +40,7 @@
return FALSE
user.visible_message("<span class='warning'>[user] vomits a glob of acid across the front of [user.p_their()] [S]!</span>", \
"<span class='warning'>We vomit acidic ooze onto our straight jacket!</span>")
addtimer(CALLBACK(src, .proc/dissolve_straightjacket, user, S), 30)
addtimer(CALLBACK(src, PROC_REF(dissolve_straightjacket), user, S), 30)
used = TRUE
@@ -50,7 +50,7 @@
return FALSE
C.visible_message("<span class='warning'>[C]'s hinges suddenly begin to melt and run!</span>")
to_chat(user, "<span class='warning'>We vomit acidic goop onto the interior of [C]!</span>")
addtimer(CALLBACK(src, .proc/open_closet, user, C), 70)
addtimer(CALLBACK(src, PROC_REF(open_closet), user, C), 70)
used = TRUE
if(istype(user.loc, /obj/structure/spider/cocoon) && !used)
@@ -59,7 +59,7 @@
return FALSE
C.visible_message("<span class='warning'>[src] shifts and starts to fall apart!</span>")
to_chat(user, "<span class='warning'>We secrete acidic enzymes from our skin and begin melting our cocoon...</span>")
addtimer(CALLBACK(src, .proc/dissolve_cocoon, user, C), 25) //Very short because it's just webs
addtimer(CALLBACK(src, PROC_REF(dissolve_cocoon), user, C), 25) //Very short because it's just webs
used = TRUE
return used
@@ -21,7 +21,7 @@
user.tod = STATION_TIME_TIMESTAMP("hh:mm:ss", world.time)
user.fakedeath("changeling", TRUE) //play dead
user.update_stat()
addtimer(CALLBACK(src, .proc/ready_to_regenerate, user), LING_FAKEDEATH_TIME, TIMER_UNIQUE)
addtimer(CALLBACK(src, PROC_REF(ready_to_regenerate), user), LING_FAKEDEATH_TIME, TIMER_UNIQUE)
return TRUE
/datum/action/changeling/fakedeath/proc/revive(mob/living/user)
@@ -390,12 +390,12 @@
if(INTENT_GRAB)
C.visible_message("<span class='danger'>[L] is grabbed by [H]'s tentacle!</span>","<span class='userdanger'>A tentacle grabs you and pulls you towards [H]!</span>")
C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src, .proc/tentacle_grab, H, C))
C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src, PROC_REF(tentacle_grab), H, C))
return BULLET_ACT_HIT
if(INTENT_HARM)
C.visible_message("<span class='danger'>[L] is thrown towards [H] by a tentacle!</span>","<span class='userdanger'>A tentacle grabs you and throws you towards [H]!</span>")
C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src, .proc/tentacle_stab, H, C))
C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src, PROC_REF(tentacle_stab), H, C))
return BULLET_ACT_HIT
else
L.visible_message("<span class='danger'>[L] is pulled by [H]'s tentacle!</span>","<span class='userdanger'>A tentacle grabs you and pulls you towards [H]!</span>")
@@ -711,7 +711,7 @@
enhancement = slow_enhancement // fuck em up kiddo
wound_enhancement = slow_wound_enhancement // really. fuck em up.
to_chat(user, "<span class='notice'>[src] are now formed to allow for [fasthands ? "fast, precise strikes" : "crippling, damaging blows"].</span>")
addtimer(CALLBACK(src, .proc/use_buffs, user, TRUE), 0.1) // go fuckin get em
addtimer(CALLBACK(src, PROC_REF(use_buffs), user, TRUE), 0.1) // go fuckin get em
/obj/item/clothing/gloves/fingerless/pugilist/cling/Initialize(mapload)
. = ..()
@@ -152,7 +152,7 @@
target.visible_message("<span class='warning'>A grotesque blade forms around [target.name]\'s arm!</span>", "<span class='userdanger'>Your arm twists and mutates, transforming into a horrific monstrosity!</span>", "<span class='italics'>You hear organic matter ripping and tearing!</span>")
playsound(target, 'sound/effects/blobattack.ogg', 30, 1)
addtimer(CALLBACK(src, .proc/remove_fake, target, blade), 600)
addtimer(CALLBACK(src, PROC_REF(remove_fake), target, blade), 600)
return TRUE
/datum/action/changeling/sting/false_armblade/proc/remove_fake(mob/target, obj/item/melee/arm_blade/false/blade)
@@ -154,7 +154,7 @@
disguise_image.overlays = snap.overlays
disguises[current_profile.name] = disguise_image
var/chosen_name = show_radial_menu(user, user, disguises, custom_check = CALLBACK(src, .proc/check_menu, user), radius = 40, require_near = TRUE, tooltips = TRUE)
var/chosen_name = show_radial_menu(user, user, disguises, custom_check = CALLBACK(src, PROC_REF(check_menu), user), radius = 40, require_near = TRUE, tooltips = TRUE)
if(!chosen_name)
return
@@ -35,7 +35,7 @@
/obj/effect/clockwork/overlay/wall/Initialize(mapload)
. = ..()
queue_smooth_neighbors(src)
addtimer(CALLBACK(GLOBAL_PROC, .proc/queue_smooth, src), 1)
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(queue_smooth), src), 1)
/obj/effect/clockwork/overlay/wall/Destroy()
queue_smooth_neighbors(src)
@@ -259,7 +259,7 @@
if(!cyborg_checks(cyborg))
return
to_chat(cyborg, "<span class='brass'>You start to charge from the [sigil_name]...</span>")
if(!do_after(cyborg, 50, target = src, extra_checks = CALLBACK(src, .proc/cyborg_checks, cyborg, TRUE)))
if(!do_after(cyborg, 50, target = src, extra_checks = CALLBACK(src, PROC_REF(cyborg_checks), cyborg, TRUE)))
return
var/giving_power = min(FLOOR(cyborg.cell.maxcharge - cyborg.cell.charge, MIN_CLOCKCULT_POWER), get_clockwork_power()) //give the borg either all our power or their missing power floored to MIN_CLOCKCULT_POWER
if(adjust_clockwork_power(-giving_power))
@@ -19,7 +19,7 @@
/obj/effect/clockwork/spatial_gateway/Initialize(mapload)
. = ..()
addtimer(CALLBACK(src, .proc/check_setup), 1)
addtimer(CALLBACK(src, PROC_REF(check_setup)), 1)
/obj/effect/clockwork/spatial_gateway/Destroy()
deltimer(timerid)
@@ -161,7 +161,7 @@
else
animate(src, transform = matrix() / 1.5, time = 10, flags = ANIMATION_END_NOW)
animate(linked_gateway, transform = matrix() / 1.5, time = 10, flags = ANIMATION_END_NOW)
addtimer(CALLBACK(src, .proc/check_uses), 10)
addtimer(CALLBACK(src, PROC_REF(check_uses)), 10)
return TRUE
/obj/effect/clockwork/spatial_gateway/proc/check_uses()
@@ -40,7 +40,7 @@
/proc/generate_all_scripture()
if(GLOB.all_scripture.len)
return
for(var/V in sortList(subtypesof(/datum/clockwork_scripture) - list(/datum/clockwork_scripture/channeled, /datum/clockwork_scripture/create_object, /datum/clockwork_scripture/create_object/construct), /proc/cmp_clockscripture_priority))
for(var/V in sortList(subtypesof(/datum/clockwork_scripture) - list(/datum/clockwork_scripture/channeled, /datum/clockwork_scripture/create_object, /datum/clockwork_scripture/create_object/construct), GLOBAL_PROC_REF(cmp_clockscripture_priority)))
var/datum/clockwork_scripture/S = new V
GLOB.all_scripture[S.type] = S
@@ -123,7 +123,7 @@
/obj/item/clockwork/slab/dropped(mob/user)
. = ..()
addtimer(CALLBACK(src, .proc/check_on_mob, user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later
addtimer(CALLBACK(src, PROC_REF(check_on_mob), user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later
/obj/item/clockwork/slab/worn_overlays(isinhands = FALSE, icon_file, used_state, style_flags = NONE)
. = ..()
@@ -52,7 +52,7 @@
/obj/item/clothing/glasses/judicial_visor/dropped(mob/user)
. = ..()
addtimer(CALLBACK(src, .proc/check_on_mob, user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later
addtimer(CALLBACK(src, PROC_REF(check_on_mob), user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later
/obj/item/clothing/glasses/judicial_visor/proc/check_on_mob(mob/user)
if(user && src != user.get_item_by_slot(ITEM_SLOT_EYES)) //if we happen to check and we AREN'T in the slot, we need to remove our shit from whoever we got dropped from
@@ -115,7 +115,7 @@
else
user.visible_message("<span class='warning'>[user]'s [name] starts consuming [target]!</span>", \
"<span class='brass'>Your [name] starts consuming [target]...</span>")
if(!do_after(user, fabrication_values["operation_time"], target = target, extra_checks = CALLBACK(src, .proc/fabricate_checks, fabrication_values, target, target_type, user, TRUE)))
if(!do_after(user, fabrication_values["operation_time"], target = target, extra_checks = CALLBACK(src, PROC_REF(fabricate_checks), fabrication_values, target, target_type, user, TRUE)))
return FALSE
if(!silent)
var/atom/A = fabrication_values["new_obj_type"]
@@ -131,7 +131,7 @@
recalling = TRUE
sound_to_playing_players('sound/machines/clockcult/ark_recall.ogg', 75, FALSE)
hierophant_message("<span class='bold large_brass'>The Eminence has initiated a mass recall! You are being transported to the Ark!</span>")
addtimer(CALLBACK(src, .proc/mass_recall), 100)
addtimer(CALLBACK(src, PROC_REF(mass_recall)), 100)
/obj/structure/destructible/clockwork/massive/celestial_gateway/proc/mass_recall()
for(var/V in SSticker.mode.servants_of_ratvar)
@@ -181,7 +181,7 @@
make_glow()
glow.icon_state = "clockwork_gateway_disrupted"
resistance_flags |= INDESTRUCTIBLE
addtimer(CALLBACK(src, .proc/go_boom), 2.7 SECONDS)
addtimer(CALLBACK(src, PROC_REF(go_boom)), 2.7 SECONDS)
return
qdel(src)
@@ -81,7 +81,7 @@
hierophant_message("<span class='brass'><b>[nominee] proposes selecting an Eminence from ghosts!</b> You may object by interacting with the eminence spire. The vote will otherwise pass in 30 seconds.</span>")
for(var/mob/M in servants_and_ghosts())
M.playsound_local(M, 'sound/machines/clockcult/ocularwarden-target.ogg', 50, FALSE)
selection_timer = addtimer(CALLBACK(src, .proc/kingmaker), 300, TIMER_STOPPABLE)
selection_timer = addtimer(CALLBACK(src, PROC_REF(kingmaker)), 300, TIMER_STOPPABLE)
/obj/structure/destructible/clockwork/eminence_spire/proc/objection(mob/living/wright)
if(alert(wright, "Object to the selection of [eminence_nominee] as Eminence?", "Objection!", "Object", "Cancel") == "Cancel" || !is_servant_of_ratvar(wright) || !wright.canUseTopic(src) || !eminence_nominee)
@@ -171,7 +171,7 @@
priority_announce("Energy signal no longer detected.","Central Command Higher Dimensional Affairs")
return
sound_to_playing_players('sound/magic/clockwork/ark_activation_sequence.ogg', 80) //if this isn't lessened in volume it peaks for some reason
addtimer(CALLBACK(GLOBAL_PROC, /proc/clockcult_ending_helper), 300)
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(clockcult_ending_helper)), 300)
/proc/clockcult_ending_helper()
for(var/mob/M in GLOB.mob_list)
@@ -57,7 +57,7 @@
"<span class='userdanger'>A massive brass spike rips through your chassis and bursts into shrapnel in your casing!</span>")
squirrel.adjustBruteLoss(50)
squirrel.Stun(20)
addtimer(CALLBACK(src, .proc/take_damage, max_integrity), 1)
addtimer(CALLBACK(src, PROC_REF(take_damage), max_integrity), 1)
else
squirrel.visible_message("<span class='boldwarning'>A massive brass spike erupts from the ground, impaling [squirrel]!</span>", \
"<span class='userdanger'>A massive brass spike rams through your chest, hoisting you into the air!</span>")
@@ -72,7 +72,7 @@
if(M)
M.take_damage(50,BRUTE,MELEE)
M.visible_message("<span class='danger'>A massive brass spike erupts from the ground, penetrating \the [M] and shattering the trap into pieces!</span>")
addtimer(CALLBACK(src, .proc/take_damage, max_integrity), 1)
addtimer(CALLBACK(src, PROC_REF(take_damage), max_integrity), 1)
else
visible_message("<span class='danger'>A massive brass spike erupts from the ground!</span>")
+1 -1
View File
@@ -268,7 +268,7 @@
SEND_SOUND(ranged_ability_user, sound('sound/effects/ghost.ogg',0,1,50))
var/image/C = image('icons/effects/cult_effects.dmi',H,"bloodsparkles", ABOVE_MOB_LAYER)
add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/cult, "cult_apoc", C, FALSE)
addtimer(CALLBACK(H,/atom/.proc/remove_alt_appearance,"cult_apoc",TRUE), 2400, TIMER_OVERRIDE|TIMER_UNIQUE)
addtimer(CALLBACK(H, TYPE_PROC_REF(/atom, remove_alt_appearance),"cult_apoc",TRUE), 2400, TIMER_OVERRIDE|TIMER_UNIQUE)
to_chat(ranged_ability_user,"<span class='cult'><b>[H] has been cursed with living nightmares!</b></span>")
attached_action.charges--
attached_action.desc = attached_action.base_desc
+2 -2
View File
@@ -308,7 +308,7 @@
if(B.current)
SEND_SOUND(B.current, 'sound/hallucinations/i_see_you2.ogg')
to_chat(B.current, "<span class='cultlarge'>The veil weakens as your cult grows, your eyes begin to glow...")
addtimer(CALLBACK(src, .proc/rise, B.current), 200)
addtimer(CALLBACK(src, PROC_REF(rise), B.current), 200)
cult_risen = TRUE
if(ratio > CULT_ASCENDENT && !cult_ascendent)
@@ -316,7 +316,7 @@
if(B.current)
SEND_SOUND(B.current, 'sound/hallucinations/im_here1.ogg')
to_chat(B.current, "<span class='cultlarge'>Your cult is ascendent and the red harvest approaches - you cannot hide your true nature for much longer!!")
addtimer(CALLBACK(src, .proc/ascend, B.current), 200)
addtimer(CALLBACK(src, PROC_REF(ascend), B.current), 200)
cult_ascendent = TRUE
+4 -4
View File
@@ -189,7 +189,7 @@
S.release_shades(owner)
B.current.setDir(SOUTH)
new /obj/effect/temp_visual/cult/blood(final)
addtimer(CALLBACK(B.current, /mob/.proc/reckon, final), 10)
addtimer(CALLBACK(B.current, TYPE_PROC_REF(/mob, reckon), final), 10)
else
return
antag.cult_team.reckoning_complete = TRUE
@@ -290,7 +290,7 @@
B.current.client.images += C.cult_team.blood_target_image
attached_action.owner.update_action_buttons_icon()
remove_ranged_ability("<span class='cult'>The marking rite is complete! It will last for 90 seconds.</span>")
C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC, .proc/reset_blood_target,C.cult_team), 900, TIMER_STOPPABLE)
C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(reset_blood_target,C.cult_team)), 900, TIMER_STOPPABLE)
return TRUE
return FALSE
@@ -377,8 +377,8 @@
desc = "Remove the Blood Mark you previously set."
button_icon_state = "emp"
owner.update_action_buttons_icon()
C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC, .proc/reset_blood_target,C.cult_team), base_cooldown, TIMER_STOPPABLE)
addtimer(CALLBACK(src, .proc/reset_button), base_cooldown)
C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(reset_blood_target,C.cult_team)), base_cooldown, TIMER_STOPPABLE)
addtimer(CALLBACK(src, PROC_REF(reset_button)), base_cooldown)
//////// ELDRITCH PULSE /////////
+3 -3
View File
@@ -263,7 +263,7 @@
sword.spinning = TRUE
sword.block_chance = 100
sword.slowdown += 1.5
addtimer(CALLBACK(src, .proc/stop_spinning), 50)
addtimer(CALLBACK(src, PROC_REF(stop_spinning)), 50)
holder.update_action_buttons_icon()
/datum/action/innate/cult/spin2win/proc/stop_spinning()
@@ -718,8 +718,8 @@
/obj/item/cult_spear/Initialize(mapload)
. = ..()
RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield)
RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield)
RegisterSignal(src, COMSIG_TWOHANDED_WIELD, PROC_REF(on_wield))
RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, PROC_REF(on_unwield))
/obj/item/cult_spear/ComponentInitialize()
. = ..()
@@ -111,7 +111,7 @@
to_chat(user, "<span class='cultitalic'>You study the schematics etched into the altar...</span>")
var/list/options = list("Eldritch Whetstone" = radial_whetstone, "Construct Shell" = radial_shell, "Flask of Unholy Water" = radial_unholy_water)
var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE)
var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE)
var/reward
switch(choice)
@@ -158,7 +158,7 @@
var/list/options = list("Shielded Robe" = radial_shielded, "Flagellant's Robe" = radial_flagellant, "Mirror Shield" = radial_mirror)
var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE)
var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE)
var/reward
switch(choice)
@@ -294,7 +294,7 @@
to_chat(user, "<span class='cultitalic'>You flip through the black pages of the archives...</span>")
var/list/options = list("Zealot's Blindfold" = radial_blindfold, "Shuttle Curse" = radial_curse, "Veil Walker Set" = radial_veilwalker)
var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE)
var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE)
var/reward
switch(choice)
+7 -7
View File
@@ -447,7 +447,7 @@ structure_check() searches for nearby cultist structures required for the invoca
outer_portal = new(T, 600, color)
light_range = 4
update_light()
addtimer(CALLBACK(src, .proc/close_portal), 600, TIMER_UNIQUE)
addtimer(CALLBACK(src, PROC_REF(close_portal)), 600, TIMER_UNIQUE)
/obj/effect/rune/teleport/proc/close_portal()
qdel(inner_portal)
@@ -673,7 +673,7 @@ structure_check() searches for nearby cultist structures required for the invoca
W.density = TRUE
W.update_state()
W.spread_density()
density_timer = addtimer(CALLBACK(src, .proc/lose_density), 3000, TIMER_STOPPABLE)
density_timer = addtimer(CALLBACK(src, PROC_REF(lose_density)), 3000, TIMER_STOPPABLE)
/obj/effect/rune/wall/proc/lose_density()
if(density)
@@ -683,7 +683,7 @@ structure_check() searches for nearby cultist structures required for the invoca
var/oldcolor = color
add_atom_colour("#696969", FIXED_COLOUR_PRIORITY)
animate(src, color = oldcolor, time = 50, easing = EASE_IN)
addtimer(CALLBACK(src, .proc/recharge), 50)
addtimer(CALLBACK(src, PROC_REF(recharge)), 50)
/obj/effect/rune/wall/proc/recharge()
recharging = FALSE
@@ -1001,11 +1001,11 @@ structure_check() searches for nearby cultist structures required for the invoca
if(ishuman(M))
if(!iscultist(M))
AH.remove_hud_from(M)
addtimer(CALLBACK(GLOBAL_PROC, .proc/hudFix, M), duration)
addtimer(CALLBACK(GLOBAL_PROC, GLOBAL_PROC_REF(hudFix), M), duration)
var/image/A = image('icons/mob/mob.dmi',M,"cultist", ABOVE_MOB_LAYER)
A.override = 1
add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/noncult, "human_apoc", A, FALSE)
addtimer(CALLBACK(M,/atom/.proc/remove_alt_appearance,"human_apoc",TRUE), duration)
addtimer(CALLBACK(M, TYPE_PROC_REF(/atom, remove_alt_appearance),"human_apoc",TRUE), duration)
images += A
SEND_SOUND(M, pick(sound('sound/ambience/antag/bloodcult.ogg'),sound('sound/spookoween/ghost_whisper.ogg'),sound('sound/spookoween/ghosty_wind.ogg')))
else
@@ -1013,13 +1013,13 @@ structure_check() searches for nearby cultist structures required for the invoca
var/image/B = image('icons/mob/mob.dmi',M,construct, ABOVE_MOB_LAYER)
B.override = 1
add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/noncult, "mob_apoc", B, FALSE)
addtimer(CALLBACK(M,/atom/.proc/remove_alt_appearance,"mob_apoc",TRUE), duration)
addtimer(CALLBACK(M, TYPE_PROC_REF(/atom, remove_alt_appearance),"mob_apoc",TRUE), duration)
images += B
if(!iscultist(M))
if(M.client)
var/image/C = image('icons/effects/cult_effects.dmi',M,"bloodsparkles", ABOVE_MOB_LAYER)
add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/cult, "cult_apoc", C, FALSE)
addtimer(CALLBACK(M,/atom/.proc/remove_alt_appearance,"cult_apoc",TRUE), duration)
addtimer(CALLBACK(M, TYPE_PROC_REF(/atom, remove_alt_appearance),"cult_apoc",TRUE), duration)
images += C
else
to_chat(M, "<span class='cultlarge'>An Apocalypse Rune was invoked in the [place.name], it is no longer available as a summoning site!</span>")
@@ -67,7 +67,7 @@ the new instance inside the host to be updated to the template's stats.
browser = new /datum/browser(src, "disease_menu", "Adaptation Menu", 1000, 770, src)
freemove_end = world.time + freemove_time
freemove_end_timerid = addtimer(CALLBACK(src, .proc/infect_random_patient_zero), freemove_time, TIMER_STOPPABLE)
freemove_end_timerid = addtimer(CALLBACK(src, PROC_REF(infect_random_patient_zero)), freemove_time, TIMER_STOPPABLE)
/mob/camera/disease/Destroy()
. = ..()
@@ -264,7 +264,7 @@ the new instance inside the host to be updated to the template's stats.
/mob/camera/disease/proc/set_following(mob/living/L)
if(following_host)
UnregisterSignal(following_host, COMSIG_MOVABLE_MOVED)
RegisterSignal(L, COMSIG_MOVABLE_MOVED, .proc/follow_mob)
RegisterSignal(L, COMSIG_MOVABLE_MOVED, PROC_REF(follow_mob))
following_host = L
follow_mob()
@@ -306,7 +306,7 @@ the new instance inside the host to be updated to the template's stats.
/mob/camera/disease/proc/adapt_cooldown()
to_chat(src, "<span class='notice'>You have altered your genetic structure. You will be unable to adapt again for [DisplayTimeText(adaptation_cooldown)].</span>")
next_adaptation_time = world.time + adaptation_cooldown
addtimer(CALLBACK(src, .proc/notify_adapt_ready), adaptation_cooldown)
addtimer(CALLBACK(src, PROC_REF(notify_adapt_ready)), adaptation_cooldown)
/mob/camera/disease/proc/notify_adapt_ready()
to_chat(src, "<span class='notice'>You are now ready to adapt again.</span>")
@@ -190,7 +190,7 @@
* Use this whenever you want to add someone to the list
*/
/datum/reality_smash_tracker/proc/AddMind(datum/mind/e_cultists)
RegisterSignal(e_cultists.current,COMSIG_MOB_CLIENT_LOGIN,.proc/ReworkNetwork)
RegisterSignal(e_cultists.current,COMSIG_MOB_CLIENT_LOGIN, PROC_REF(ReworkNetwork))
targets |= e_cultists
Generate()
for(var/obj/effect/reality_smash/reality_smash in smashes)
@@ -170,11 +170,11 @@
to_chat(user, "<span class='warning'>These items don't possess the required fingerprints or DNA.</span>")
return FALSE
var/chosen_mob = input("Select the person you wish to curse","Your target") as null|anything in sortList(compiled_list, /proc/cmp_mob_realname_dsc)
var/chosen_mob = input("Select the person you wish to curse","Your target") as null|anything in sortList(compiled_list, GLOBAL_PROC_REF(cmp_mob_realname_dsc))
if(!chosen_mob)
return FALSE
curse(compiled_list[chosen_mob])
addtimer(CALLBACK(src, .proc/uncurse, compiled_list[chosen_mob]),timer)
addtimer(CALLBACK(src, PROC_REF(uncurse), compiled_list[chosen_mob]),timer)
return TRUE
/datum/eldritch_knowledge/curse/proc/curse(mob/living/chosen_mob)
@@ -492,7 +492,7 @@
. = ..()
current_user = user
has_fire_ring = TRUE
addtimer(CALLBACK(src, .proc/remove, user), duration, TIMER_OVERRIDE|TIMER_UNIQUE)
addtimer(CALLBACK(src, PROC_REF(remove), user), duration, TIMER_OVERRIDE|TIMER_UNIQUE)
/obj/effect/proc_holder/spell/targeted/fire_sworn/proc/remove()
has_fire_ring = FALSE
@@ -55,7 +55,7 @@
var/datum/antagonist/heretic/master = user.mind.has_antag_datum(/datum/antagonist/heretic)
heretic_monster.set_owner(master)
atoms -= humie
RegisterSignal(humie,COMSIG_MOB_DEATH,.proc/remove_ghoul)
RegisterSignal(humie,COMSIG_MOB_DEATH, PROC_REF(remove_ghoul))
ghouls += humie
/datum/eldritch_knowledge/flesh_ghoul/proc/remove_ghoul(datum/source)
@@ -114,7 +114,7 @@
log_game("[key_name_admin(human_target)] has become a ghoul, their master is [user.real_name]")
//we change it to true only after we know they passed all the checks
. = TRUE
RegisterSignal(human_target,COMSIG_MOB_DEATH,.proc/remove_ghoul)
RegisterSignal(human_target,COMSIG_MOB_DEATH, PROC_REF(remove_ghoul))
human_target.revive(full_heal = TRUE, admin_revive = TRUE)
human_target.setMaxHealth(40)
human_target.health = 40
+1 -1
View File
@@ -194,7 +194,7 @@ GLOBAL_VAR(families_override_theme)
// see /datum/antagonist/gang/create_team() for how the gang team datum gets instantiated and added to our gangs list
addtimer(CALLBACK(src, .proc/announce_gang_locations), 5 MINUTES)
addtimer(CALLBACK(src, PROC_REF(announce_gang_locations)), 5 MINUTES)
return TRUE
/**
@@ -157,7 +157,7 @@
return
if(listeningTo)
UnregisterSignal(listeningTo, signalCache)
RegisterSignal(user, signalCache, .proc/disrupt)
RegisterSignal(user, signalCache, PROC_REF(disrupt))
listeningTo = user
/obj/item/borg_chameleon/proc/deactivate(mob/living/silicon/robot/user)
@@ -470,7 +470,7 @@
sound_to_playing_players('sound/machines/alarm.ogg')
if(SSticker && SSticker.mode)
SSticker.roundend_check_paused = TRUE
addtimer(CALLBACK(src, .proc/actually_explode), 100)
addtimer(CALLBACK(src, PROC_REF(actually_explode)), 100)
/obj/machinery/nuclearbomb/proc/actually_explode()
if(!core)
@@ -551,10 +551,10 @@
var/datum/round_event_control/E = locate(/datum/round_event_control/vent_clog/beer) in SSevents.control
if(E)
E.runEvent()
addtimer(CALLBACK(src, .proc/really_actually_explode), 110)
addtimer(CALLBACK(src, PROC_REF(really_actually_explode)), 110)
else
visible_message("<span class='notice'>[src] fizzes ominously.</span>")
addtimer(CALLBACK(src, .proc/fizzbuzz), 110)
addtimer(CALLBACK(src, PROC_REF(fizzbuzz)), 110)
/obj/machinery/nuclearbomb/beer/proc/disarm()
detonation_timer = null
@@ -725,7 +725,7 @@ This is here to make the tiles around the station mininuke change when it's arme
playsound(src, 'sound/machines/alarm.ogg', 50, -1, TRUE)
for(var/i in 1 to 100)
addtimer(CALLBACK(user, /atom/proc/add_atom_colour, (i % 2)? "#00FF00" : "#FF0000", ADMIN_COLOUR_PRIORITY), i)
addtimer(CALLBACK(src, .proc/manual_suicide, user), 101)
addtimer(CALLBACK(src, PROC_REF(manual_suicide), user), 101)
return MANUAL_SUICIDE
/obj/item/disk/nuclear/proc/manual_suicide(mob/living/user)
+1 -1
View File
@@ -176,7 +176,7 @@
to_chat(owner, "<B>If you feel you are not up to this task, give your ID to another operative.</B>")
to_chat(owner, "<B>In your hand you will find a special item capable of triggering a greater challenge for your team. Examine it carefully and consult with your fellow operatives before activating it.</B>")
owner.announce_objectives()
addtimer(CALLBACK(src, .proc/nuketeam_name_assign), 1)
addtimer(CALLBACK(src, PROC_REF(nuketeam_name_assign)), 1)
/datum/antagonist/nukeop/leader/proc/nuketeam_name_assign()
+1 -1
View File
@@ -70,7 +70,7 @@
//Lists notable loot.
if(!cargo_hold || !cargo_hold.total_report)
return "Nothing"
cargo_hold.total_report.total_value = sortTim(cargo_hold.total_report.total_value, cmp = /proc/cmp_numeric_dsc, associative = TRUE)
cargo_hold.total_report.total_value = sortTim(cargo_hold.total_report.total_value, cmp = GLOBAL_PROC_REF(cmp_numeric_dsc), associative = TRUE)
var/count = 0
var/list/loot_texts = list()
for(var/datum/export/E in cargo_hold.total_report.total_value)
@@ -201,7 +201,7 @@
adjustBruteLoss(25) //hella effective
inhibited = TRUE
update_action_buttons_icon()
addtimer(CALLBACK(src, .proc/reset_inhibit), 30)
addtimer(CALLBACK(src, PROC_REF(reset_inhibit)), 30)
/mob/living/simple_animal/revenant/proc/reset_inhibit()
inhibited = FALSE
@@ -369,7 +369,7 @@
/obj/item/ectoplasm/revenant/New()
..()
addtimer(CALLBACK(src, .proc/try_reform), 600)
addtimer(CALLBACK(src, PROC_REF(try_reform)), 600)
/obj/item/ectoplasm/revenant/proc/scatter()
qdel(src)
@@ -206,7 +206,7 @@
s.set_up(4, 0, L)
s.start()
new /obj/effect/temp_visual/revenant(get_turf(L))
addtimer(CALLBACK(src, .proc/overload_shock, L, user), 20)
addtimer(CALLBACK(src, PROC_REF(overload_shock), L, user), 20)
/obj/effect/proc_holder/spell/aoe_turf/revenant/overload/proc/overload_shock(obj/machinery/light/L, mob/user)
if(!L.on) //wait, wait, don't shock me
@@ -64,7 +64,7 @@
affected_mob.visible_message("<span class='warning'>[affected_mob] looks terrifyingly gaunt...</span>", "<span class='revennotice'>You suddenly feel like your skin is <i>wrong</i>...</span>")
affected_mob.add_atom_colour("#1d2953", TEMPORARY_COLOUR_PRIORITY)
new /obj/effect/temp_visual/revenant(affected_mob.loc)
addtimer(CALLBACK(src, .proc/curses), 150)
addtimer(CALLBACK(src, PROC_REF(curses)), 150)
/datum/disease/revblight/proc/curses()
if(QDELETED(affected_mob))
@@ -135,7 +135,7 @@
. = ..()
add_movespeed_modifier(/datum/movespeed_modifier/slaughter)
var/slowdown_time = 6 SECONDS + (0.5 * consumed_buff)
addtimer(CALLBACK(src, .proc/remove_movespeed_modifier, /datum/movespeed_modifier/slaughter), slowdown_time, TIMER_UNIQUE | TIMER_OVERRIDE)
addtimer(CALLBACK(src, PROC_REF(remove_movespeed_modifier), /datum/movespeed_modifier/slaughter), slowdown_time, TIMER_UNIQUE | TIMER_OVERRIDE)
/mob/living/simple_animal/slaughter/Destroy()
release_victims()
@@ -148,7 +148,7 @@
if(!silent)
to_chat(H, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.")
H.dna.remove_mutation(CLOWNMUT)
RegisterSignal(M, COMSIG_MOVABLE_HEAR, .proc/handle_hearing)
RegisterSignal(M, COMSIG_MOVABLE_HEAR, PROC_REF(handle_hearing))
/datum/antagonist/traitor/remove_innate_effects(mob/living/mob_override)
. = ..()
@@ -736,7 +736,7 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list(
I.loc = T
client.images += I
I.icon_state = "[success ? "green" : "red"]Overlay" //greenOverlay and redOverlay for success and failure respectively
addtimer(CALLBACK(src, .proc/remove_transformer_image, client, I, T), 30)
addtimer(CALLBACK(src, PROC_REF(remove_transformer_image), client, I, T), 30)
if(!success)
to_chat(src, "<span class='warning'>[alert_msg]</span>")
return success
@@ -62,7 +62,7 @@
var/area/pod_storage_area = locate(/area/centcom/supplypod/podStorage) in GLOB.sortedAreas
var/obj/structure/closet/supplypod/extractionpod/empty_pod = new(pick(get_area_turfs(pod_storage_area))) //Lets not runtime
RegisterSignal(empty_pod, COMSIG_ATOM_ENTERED, .proc/enter_check)
RegisterSignal(empty_pod, COMSIG_ATOM_ENTERED, PROC_REF(enter_check))
empty_pod.stay_after_drop = TRUE
empty_pod.reversing = TRUE
@@ -143,7 +143,7 @@
[C.registered_account.account_balance] cr.", TRUE)
/datum/syndicate_contract/proc/handleVictimExperience(var/mob/living/M) // They're off to holding - handle the return timer and give some text about what's going on.
addtimer(CALLBACK(src, .proc/returnVictim, M), 4 MINUTES) // Ship 'em back - dead or alive... 4 minutes wait.
addtimer(CALLBACK(src, PROC_REF(returnVictim), M), 4 MINUTES) // Ship 'em back - dead or alive... 4 minutes wait.
if(M.stat != DEAD) //Even if they weren't the target, we're still treating them the same.
M.reagents.add_reagent(/datum/reagent/medicine/regen_jelly, 20) // Heal them up - gets them out of crit/soft crit. -- now 100% toxinlover friendly!!
M.flash_act()