diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm
index 90ee4b48..38f014f6 100644
--- a/code/controllers/subsystem/timer.dm
+++ b/code/controllers/subsystem/timer.dm
@@ -259,7 +259,7 @@ SUBSYSTEM_DEF(timer)
if (!length(alltimers))
return
- sortTim(alltimers, .proc/cmp_timer)
+ sortTim(alltimers, PROC_REF(cmp_timer))
var/datum/timedevent/head = alltimers[1]
diff --git a/code/datums/brain_damage/mild.dm b/code/datums/brain_damage/mild.dm
index d653671b..6354d6c9 100644
--- a/code/datums/brain_damage/mild.dm
+++ b/code/datums/brain_damage/mild.dm
@@ -178,8 +178,8 @@
to_chat(owner, "[pick("You have a coughing fit!", "You can't stop coughing!")]")
owner.Stun(20)
owner.emote("cough")
- addtimer(CALLBACK(owner, /mob/.proc/emote, "cough"), 6)
- addtimer(CALLBACK(owner, /mob/.proc/emote, "cough"), 12)
+ addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob/, emote), "cough"), 6)
+ addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob/, emote), "cough"), 12)
owner.emote("cough")
..()
@@ -263,4 +263,4 @@
popleft(speak_dejavu) //Remove the oldest
speak_dejavu += speech_args[SPEECH_MESSAGE]
else
- speak_dejavu += speech_args[SPEECH_MESSAGE]
\ No newline at end of file
+ speak_dejavu += speech_args[SPEECH_MESSAGE]
diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm
index 0e08c4cd..3b5e2ff0 100644
--- a/code/datums/brain_damage/severe.dm
+++ b/code/datums/brain_damage/severe.dm
@@ -191,7 +191,7 @@
to_chat(owner, "You feel sick...")
else
to_chat(owner, "You feel really sick at the thought of being alone!")
- addtimer(CALLBACK(owner, /mob/living/carbon.proc/vomit, high_stress), 50) //blood vomit if high stress
+ addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob/living/carbon, vomit), high_stress), 50) //blood vomit if high stress
if(2)
if(!high_stress)
to_chat(owner, "You can't stop shaking...")
diff --git a/code/datums/brain_damage/split_personality.dm b/code/datums/brain_damage/split_personality.dm
index 6480974c..0d11b241 100644
--- a/code/datums/brain_damage/split_personality.dm
+++ b/code/datums/brain_damage/split_personality.dm
@@ -203,7 +203,7 @@
var/message = hearing_args[HEARING_RAW_MESSAGE]
if(findtext(message, codeword))
hearing_args[HEARING_RAW_MESSAGE] = replacetext(message, codeword, "[codeword]")
- addtimer(CALLBACK(src, /datum/brain_trauma/severe/split_personality.proc/switch_personalities), 10)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/datum/brain_trauma/severe/split_personality, switch_personalities)), 10)
/datum/brain_trauma/severe/split_personality/brainwashing/handle_speech(datum/source, list/speech_args)
if(findtext(speech_args[SPEECH_MESSAGE], codeword))
diff --git a/code/datums/components/decal.dm b/code/datums/components/decal.dm
index eec70414..59d19f01 100644
--- a/code/datums/components/decal.dm
+++ b/code/datums/components/decal.dm
@@ -52,13 +52,13 @@
var/atom/master = thing || parent
master.add_overlay(pic, TRUE)
if(isitem(master))
- addtimer(CALLBACK(master, /obj/item/.proc/update_slot_icon), 0, TIMER_UNIQUE)
+ addtimer(CALLBACK(master, TYPE_PROC_REF(/obj/item/, update_slot_icon)), 0, TIMER_UNIQUE)
/datum/component/decal/proc/remove(atom/thing)
var/atom/master = thing || parent
master.cut_overlay(pic, TRUE)
if(isitem(master))
- addtimer(CALLBACK(master, /obj/item/.proc/update_slot_icon), 0, TIMER_UNIQUE)
+ addtimer(CALLBACK(master, TYPE_PROC_REF(/obj/item/, update_slot_icon)), 0, TIMER_UNIQUE)
/datum/component/decal/proc/rotate_react(datum/source, old_dir, new_dir)
if(old_dir == new_dir)
@@ -72,4 +72,4 @@
qdel(src)
/datum/component/decal/proc/examine(datum/source, mob/user, list/examine_list)
- examine_list += description
\ No newline at end of file
+ examine_list += description
diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm
index b8f48149..81fd357d 100644
--- a/code/datums/components/riding.dm
+++ b/code/datums/components/riding.dm
@@ -181,7 +181,7 @@
to_chat(user, "You'll need the keys in one of your hands to [drive_verb] [AM].")
/datum/component/riding/proc/Unbuckle(atom/movable/M)
- addtimer(CALLBACK(parent, /atom/movable/.proc/unbuckle_mob, M), 0, TIMER_UNIQUE)
+ addtimer(CALLBACK(parent, TYPE_PROC_REF(/atom/movable/, unbuckle_mob), M), 0, TIMER_UNIQUE)
/datum/component/riding/proc/Process_Spacemove(direction)
var/atom/movable/AM = parent
@@ -362,4 +362,4 @@
if(selfdeleting)
if(rider in AM.buckled_mobs)
AM.unbuckle_mob(rider)
- . = ..()
\ No newline at end of file
+ . = ..()
diff --git a/code/datums/diseases/advance/symptoms/cough.dm b/code/datums/diseases/advance/symptoms/cough.dm
index ef318d7d..e4f9844a 100644
--- a/code/datums/diseases/advance/symptoms/cough.dm
+++ b/code/datums/diseases/advance/symptoms/cough.dm
@@ -68,9 +68,9 @@ BONUS
to_chat(M, "[pick("You have a coughing fit!", "You can't stop coughing!")]")
M.Stun(20)
M.emote("cough")
- addtimer(CALLBACK(M, /mob/.proc/emote, "cough"), 6)
- addtimer(CALLBACK(M, /mob/.proc/emote, "cough"), 12)
- addtimer(CALLBACK(M, /mob/.proc/emote, "cough"), 18)
+ addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/, emote), "cough"), 6)
+ addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/, emote), "cough"), 12)
+ addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/, emote), "cough"), 18)
if(infective && M.CanSpreadAirborneDisease())
A.spread(1)
diff --git a/code/datums/mood_events/generic_negative_events.dm b/code/datums/mood_events/generic_negative_events.dm
index 4d75ee63..93ec726d 100644
--- a/code/datums/mood_events/generic_negative_events.dm
+++ b/code/datums/mood_events/generic_negative_events.dm
@@ -87,7 +87,7 @@
var/mob/living/carbon/human/H = owner
if(iscatperson(H))
H.dna.species.start_wagging_tail(H)
- addtimer(CALLBACK(H.dna.species, /datum/species.proc/stop_wagging_tail, H), 30)
+ addtimer(CALLBACK(H.dna.species, TYPE_PROC_REF(/datum/species, stop_wagging_tail), H), 30)
description = "They want to play on the table!\n"
mood_change = 2
diff --git a/code/datums/status_effects/debuffs.dm b/code/datums/status_effects/debuffs.dm
index e998ef6c..576210be 100644
--- a/code/datums/status_effects/debuffs.dm
+++ b/code/datums/status_effects/debuffs.dm
@@ -708,8 +708,8 @@ datum/status_effect/pacify
return
var/mob/living/carbon/C = owner
C.cure_trauma_type(/datum/brain_trauma/hypnosis, TRAUMA_RESILIENCE_SURGERY) //clear previous hypnosis
- addtimer(CALLBACK(C, /mob/living/carbon.proc/gain_trauma, /datum/brain_trauma/hypnosis, TRAUMA_RESILIENCE_SURGERY, hearing_args[HEARING_RAW_MESSAGE]), 10)
- addtimer(CALLBACK(C, /mob/living.proc/Stun, 60, TRUE, TRUE), 15) //Take some time to think about it
+ addtimer(CALLBACK(C, TYPE_PROC_REF(/mob/living/carbon, gain_trauma), /datum/brain_trauma/hypnosis, TRAUMA_RESILIENCE_SURGERY, hearing_args[HEARING_RAW_MESSAGE]), 10)
+ addtimer(CALLBACK(C, TYPE_PROC_REF(/mob/living, Stun), 60, TRUE, TRUE), 15) //Take some time to think about it
qdel(src)
/datum/status_effect/dna_melt
@@ -789,4 +789,4 @@ datum/status_effect/pacify
if(LAZYLEN(targets) && I)
to_chat(owner, "Your arm spasms!")
owner.log_message("threw [I] due to a Muscle Spasm", LOG_ATTACK)
- owner.throw_item(pick(targets))
\ No newline at end of file
+ owner.throw_item(pick(targets))
diff --git a/code/datums/wires/airalarm.dm b/code/datums/wires/airalarm.dm
index 6eb4dc04..2002a76e 100644
--- a/code/datums/wires/airalarm.dm
+++ b/code/datums/wires/airalarm.dm
@@ -31,13 +31,13 @@
if(!A.shorted)
A.shorted = TRUE
A.update_icon()
- addtimer(CALLBACK(A, /obj/machinery/airalarm.proc/reset, wire), 1200)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/airalarm, reset), wire), 1200)
if(WIRE_IDSCAN) // Toggle lock.
A.locked = !A.locked
if(WIRE_AI) // Disable AI control for a while.
if(!A.aidisabled)
A.aidisabled = TRUE
- addtimer(CALLBACK(A, /obj/machinery/airalarm.proc/reset, wire), 100)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/airalarm, reset), wire), 100)
if(WIRE_PANIC) // Toggle panic siphon.
if(!A.shorted)
if(A.mode == 1) // AALARM_MODE_SCRUB
@@ -71,4 +71,4 @@
var/area/AA = get_area(A)
if(AA.atmosalert(2, holder))
A.post_alert(2)
- A.update_icon()
\ No newline at end of file
+ A.update_icon()
diff --git a/code/datums/wires/apc.dm b/code/datums/wires/apc.dm
index dc126f61..271472b3 100644
--- a/code/datums/wires/apc.dm
+++ b/code/datums/wires/apc.dm
@@ -29,14 +29,14 @@
if(WIRE_POWER1, WIRE_POWER2) // Short for a long while.
if(!A.shorted)
A.shorted = TRUE
- addtimer(CALLBACK(A, /obj/machinery/power/apc.proc/reset, wire), 1200)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/power/apc, reset), wire), 1200)
if(WIRE_IDSCAN) // Unlock for a little while.
A.locked = FALSE
- addtimer(CALLBACK(A, /obj/machinery/power/apc.proc/reset, wire), 300)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/power/apc, reset), wire), 300)
if(WIRE_AI) // Disable AI control for a very short time.
if(!A.aidisabled)
A.aidisabled = TRUE
- addtimer(CALLBACK(A, /obj/machinery/power/apc.proc/reset, wire), 10)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/power/apc, reset), wire), 10)
/datum/wires/apc/on_cut(index, mend)
var/obj/machinery/power/apc/A = holder
@@ -52,4 +52,4 @@
if(mend)
A.aidisabled = FALSE
else
- A.aidisabled = TRUE
\ No newline at end of file
+ A.aidisabled = TRUE
diff --git a/code/datums/wires/autolathe.dm b/code/datums/wires/autolathe.dm
index f83bab59..33eb6144 100644
--- a/code/datums/wires/autolathe.dm
+++ b/code/datums/wires/autolathe.dm
@@ -27,14 +27,14 @@
switch(wire)
if(WIRE_HACK)
A.adjust_hacked(!A.hacked)
- addtimer(CALLBACK(A, /obj/machinery/autolathe.proc/reset, wire), 60)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/autolathe, reset), wire), 60)
if(WIRE_SHOCK)
A.shocked = !A.shocked
A.shock(usr, 50)
- addtimer(CALLBACK(A, /obj/machinery/autolathe.proc/reset, wire), 60)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/autolathe, reset), wire), 60)
if(WIRE_DISABLE)
A.disabled = !A.disabled
- addtimer(CALLBACK(A, /obj/machinery/autolathe.proc/reset, wire), 60)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/autolathe, reset), wire), 60)
/datum/wires/autolathe/on_cut(wire, mend)
var/obj/machinery/autolathe/A = holder
diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm
index f8aad894..7d05c961 100644
--- a/code/game/machinery/buttons.dm
+++ b/code/game/machinery/buttons.dm
@@ -167,7 +167,7 @@
if(device)
device.pulsed()
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 15)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 15)
/obj/machinery/button/power_change()
..()
diff --git a/code/game/machinery/embedded_controller/embedded_controller_base.dm b/code/game/machinery/embedded_controller/embedded_controller_base.dm
index 2056f99a..b855f85f 100644
--- a/code/game/machinery/embedded_controller/embedded_controller_base.dm
+++ b/code/game/machinery/embedded_controller/embedded_controller_base.dm
@@ -50,7 +50,7 @@
if(program)
program.receive_user_command(href_list["command"])
- addtimer(CALLBACK(program, /datum/computer/file/embedded_program.proc/process), 5)
+ addtimer(CALLBACK(program, TYPE_PROC_REF(/datum/computer/file/embedded_program, process)), 5)
usr.set_machine(src)
addtimer(CALLBACK(src,PROC_REF(updateDialog)), 5)
diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm
index cbc2805b..da8b3b0a 100644
--- a/code/game/mecha/equipment/weapons/weapons.dm
+++ b/code/game/mecha/equipment/weapons/weapons.dm
@@ -350,7 +350,7 @@
var/turf/T = get_turf(src)
message_admins("[ADMIN_LOOKUPFLW(chassis.occupant)] fired a [src] in [ADMIN_VERBOSEJMP(T)]")
log_game("[key_name(chassis.occupant)] fired a [src] in [AREACOORD(T)]")
- addtimer(CALLBACK(F, /obj/item/grenade/flashbang.proc/prime), det_time)
+ addtimer(CALLBACK(F, TYPE_PROC_REF(/obj/item/grenade/flashbang, prime)), det_time)
/obj/item/mecha_parts/mecha_equipment/weapon/ballistic/launcher/flashbang/clusterbang //Because I am a heartless bastard -Sieve //Heartless? for making the poor man's honkblast? - Kaze
name = "\improper SOB-3 grenade launcher"
diff --git a/code/game/objects/effects/temporary_visuals/miscellaneous.dm b/code/game/objects/effects/temporary_visuals/miscellaneous.dm
index b0b9b673..ff8cff51 100644
--- a/code/game/objects/effects/temporary_visuals/miscellaneous.dm
+++ b/code/game/objects/effects/temporary_visuals/miscellaneous.dm
@@ -464,7 +464,7 @@
status = rcd_status
delay = rcd_delay
if (status == RCD_DECONSTRUCT)
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 11)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 11)
delay -= 11
icon_state = "rcd_end_reverse"
else
diff --git a/code/game/objects/structures/divine.dm b/code/game/objects/structures/divine.dm
index b9748560..4fd9434c 100644
--- a/code/game/objects/structures/divine.dm
+++ b/code/game/objects/structures/divine.dm
@@ -41,7 +41,7 @@
to_chat(user, "The water feels warm and soothing as you touch it. The fountain immediately dries up shortly afterwards.")
user.reagents.add_reagent(/datum/reagent/medicine/omnizine/godblood,20)
update_icon()
- addtimer(CALLBACK(src, /atom/.proc/update_icon), time_between_uses)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), time_between_uses)
/obj/structure/healingfountain/update_icon()
diff --git a/code/game/objects/structures/electricchair.dm b/code/game/objects/structures/electricchair.dm
index 6f1d56c4..4c66ba5d 100644
--- a/code/game/objects/structures/electricchair.dm
+++ b/code/game/objects/structures/electricchair.dm
@@ -42,5 +42,5 @@
var/mob/living/buckled_mob = m
buckled_mob.electrocute_act(85, src, 1)
to_chat(buckled_mob, "You feel a deep shock course through your body!")
- addtimer(CALLBACK(buckled_mob, /mob/living.proc/electrocute_act, 85, src, 1), 1)
+ addtimer(CALLBACK(buckled_mob, TYPE_PROC_REF(/mob/living, electrocute_act), 85, src, 1), 1)
visible_message("The electric chair went off!", "You hear a deep sharp shock!")
diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm
index ea1ff04f..bead6401 100644
--- a/code/game/objects/structures/ghost_role_spawners.dm
+++ b/code/game/objects/structures/ghost_role_spawners.dm
@@ -423,7 +423,7 @@
id.update_label()
else
to_chat(L, "Your owner is already dead! You will soon perish.")
- addtimer(CALLBACK(L, /mob.proc/dust, 150)) //Give em a few seconds as a mercy.
+ addtimer(CALLBACK(L, TYPE_PROC_REF(/mob, dust), 150)) //Give em a few seconds as a mercy.
/datum/outfit/demonic_friend
name = "Demonic Friend"
diff --git a/code/game/objects/structures/guillotine.dm b/code/game/objects/structures/guillotine.dm
index 9ee3ed13..76454010 100644
--- a/code/game/objects/structures/guillotine.dm
+++ b/code/game/objects/structures/guillotine.dm
@@ -133,7 +133,7 @@
for(var/mob/M in viewers(src, 7))
var/mob/living/carbon/human/C = M
if (ishuman(M))
- addtimer(CALLBACK(C, /mob/.proc/emote, "clap"), delay_offset * 0.3)
+ addtimer(CALLBACK(C, TYPE_PROC_REF(/mob/, emote), "clap"), delay_offset * 0.3)
delay_offset++
else
H.apply_damage(15 * blade_sharpness, BRUTE, head)
@@ -256,4 +256,4 @@
#undef GUILLOTINE_ACTIVATE_DELAY
#undef GUILLOTINE_WRENCH_DELAY
#undef GUILLOTINE_ACTION_INUSE
-#undef GUILLOTINE_ACTION_WRENCH
\ No newline at end of file
+#undef GUILLOTINE_ACTION_WRENCH
diff --git a/code/game/objects/structures/manned_turret.dm b/code/game/objects/structures/manned_turret.dm
index 79489e4a..2e99d68c 100644
--- a/code/game/objects/structures/manned_turret.dm
+++ b/code/game/objects/structures/manned_turret.dm
@@ -142,7 +142,7 @@
/obj/machinery/manned_turret/proc/volley(mob/user)
target_turf = get_turf(target)
for(var/i in 1 to number_of_shots)
- addtimer(CALLBACK(src, /obj/machinery/manned_turret/.proc/fire_helper, user), i*rate_of_fire)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/obj/machinery/manned_turret/, fire_helper), user), i*rate_of_fire)
/obj/machinery/manned_turret/proc/fire_helper(mob/user)
if(user.incapacitated() || !(user in buckled_mobs))
diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm
index c2cf11b1..fcf24624 100644
--- a/code/game/turfs/open.dm
+++ b/code/game/turfs/open.dm
@@ -343,7 +343,7 @@
lube |= SLIDE_ICE
if(lube&SLIDE)
- new /datum/forced_movement(C, get_ranged_target_turf(C, olddir, 4), 1, FALSE, CALLBACK(C, /mob/living/carbon/.proc/spin, 1, 1))
+ new /datum/forced_movement(C, get_ranged_target_turf(C, olddir, 4), 1, FALSE, CALLBACK(C, TYPE_PROC_REF(/mob/living/carbon/, spin), 1, 1))
else if(lube&SLIDE_ICE)
new /datum/forced_movement(C, get_ranged_target_turf(C, olddir, 1), 1, FALSE) //spinning would be bad for ice, fucks up the next dir
return 1
diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm
index ff47a484..fd68721e 100644
--- a/code/game/turfs/turf.dm
+++ b/code/game/turfs/turf.dm
@@ -365,7 +365,7 @@
var/list/things = src_object.contents()
var/datum/progressbar/progress = new(user, things.len, src)
- while (do_after(usr, 10, TRUE, src, FALSE, CALLBACK(src_object, /datum/component/storage.proc/mass_remove_from_storage, src, things, progress)))
+ while (do_after(usr, 10, TRUE, src, FALSE, CALLBACK(src_object, TYPE_PROC_REF(/datum/component/storage, mass_remove_from_storage), src, things, progress)))
stoplag(1)
qdel(progress)
diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm
index a832b097..a96ec1f7 100644
--- a/code/modules/admin/verbs/onlyone.dm
+++ b/code/modules/admin/verbs/onlyone.dm
@@ -19,7 +19,7 @@ GLOBAL_VAR_INIT(highlander, FALSE)
message_admins("[key_name_admin(usr)] used THERE CAN BE ONLY ONE!")
log_admin("[key_name(usr)] used THERE CAN BE ONLY ONE.")
- addtimer(CALLBACK(SSshuttle.emergency, /obj/docking_port/mobile/emergency.proc/request, null, 1), 50)
+ addtimer(CALLBACK(SSshuttle.emergency, TYPE_PROC_REF(/obj/docking_port/mobile/emergency, request), null, 1), 50)
/client/proc/only_one_delayed()
send_to_playing_players("Bagpipes begin to blare. You feel Scottish pride coming over you.")
@@ -28,4 +28,4 @@ GLOBAL_VAR_INIT(highlander, FALSE)
addtimer(CALLBACK(src,PROC_REF(only_one)), 420)
/mob/living/carbon/human/proc/make_scottish()
- mind.add_antag_datum(/datum/antagonist/highlander)
\ No newline at end of file
+ mind.add_antag_datum(/datum/antagonist/highlander)
diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm
index 71446986..dd0e3f0d 100644
--- a/code/modules/admin/verbs/randomverbs.dm
+++ b/code/modules/admin/verbs/randomverbs.dm
@@ -1350,9 +1350,9 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits
var/obj/item/bodypart/limb = _limb
if (limb.body_part == HEAD || limb.body_part == CHEST)
continue
- addtimer(CALLBACK(limb, /obj/item/bodypart/.proc/dismember), timer)
+ addtimer(CALLBACK(limb, TYPE_PROC_REF(/obj/item/bodypart/, dismember)), timer)
addtimer(CALLBACK(GLOBAL_PROC,PROC_REF(playsound), carbon_target, 'sound/effects/cartoon_pop.ogg', 70), timer)
- addtimer(CALLBACK(carbon_target, /mob/living/.proc/spin, 4, 1), timer - 0.4 SECONDS)
+ addtimer(CALLBACK(carbon_target, TYPE_PROC_REF(/mob/living/, spin), 4, 1), timer - 0.4 SECONDS)
timer += 2 SECONDS
if(ADMIN_PUNISHMENT_BREADIFY)
#define BREADIFY_TIME (5 SECONDS)
diff --git a/code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm b/code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm
index bd986bac..ee225b86 100644
--- a/code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm
+++ b/code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm
@@ -180,7 +180,7 @@
if(reinf)
fabrication_cost -= POWER_ROD
for(var/obj/structure/grille/G in get_turf(src))
- INVOKE_ASYNC(fabricator, /obj/item/clockwork/replica_fabricator.proc/fabricate, G, user)
+ INVOKE_ASYNC(fabricator, TYPE_PROC_REF(/obj/item/clockwork/replica_fabricator, fabricate), G, user)
return list("operation_time" = fabrication_time, "new_obj_type" = windowtype, "power_cost" = fabrication_cost, "spawn_dir" = dir, "dir_in_new" = new_dir)
/obj/structure/window/reinforced/clockwork/fabrication_vals(mob/living/user, obj/item/clockwork/replica_fabricator/fabricator, silent)
@@ -237,7 +237,7 @@
fabricator.repairing = src
while(fabricator && user && src)
if(!do_after(user, repair_values["healing_for_cycle"] * fabricator.speed_multiplier, target = src, \
- extra_checks = CALLBACK(fabricator, /obj/item/clockwork/replica_fabricator.proc/fabricator_repair_checks, repair_values, src, user, TRUE)))
+ extra_checks = CALLBACK(fabricator, TYPE_PROC_REF(/obj/item/clockwork/replica_fabricator, fabricator_repair_checks), repair_values, src, user, TRUE)))
break
obj_integrity = CLAMP(obj_integrity + repair_values["healing_for_cycle"], 0, max_integrity)
adjust_clockwork_power(-repair_values["power_required"])
@@ -259,7 +259,7 @@
fabricator.repairing = src
while(fabricator && user && src)
if(!do_after(user, repair_values["healing_for_cycle"] * fabricator.speed_multiplier, target = src, \
- extra_checks = CALLBACK(fabricator, /obj/item/clockwork/replica_fabricator.proc/fabricator_repair_checks, repair_values, src, user, TRUE)))
+ extra_checks = CALLBACK(fabricator, TYPE_PROC_REF(/obj/item/clockwork/replica_fabricator, fabricator_repair_checks), repair_values, src, user, TRUE)))
break
fabricator_heal_tick(repair_values["healing_for_cycle"])
adjust_clockwork_power(-repair_values["power_required"])
@@ -323,7 +323,7 @@
for(var/obj/item/clockwork/alloy_shards/S in get_turf(src)) //convert all other shards in the turf if we can
if(S == src)
continue //we want the shards to be fabricated after the main shard, thus this delay
- addtimer(CALLBACK(fabricator, /obj/item/clockwork/replica_fabricator.proc/fabricate, S, user, TRUE), 0)
+ addtimer(CALLBACK(fabricator, TYPE_PROC_REF(/obj/item/clockwork/replica_fabricator, fabricate), S, user, TRUE), 0)
return list("operation_time" = 0, "new_obj_type" = null, "power_cost" = power_amount, "spawn_dir" = SOUTH)
/obj/item/clockwork/alloy_shards/medium/gear_bit/large/fabrication_vals(mob/living/user, obj/item/clockwork/replica_fabricator/fabricator, silent, power_amount)
diff --git a/code/modules/antagonists/clockcult/clock_items/clock_weapons/_call_weapon.dm b/code/modules/antagonists/clockcult/clock_items/clock_weapons/_call_weapon.dm
index a87767c0..d746f94a 100644
--- a/code/modules/antagonists/clockcult/clock_items/clock_weapons/_call_weapon.dm
+++ b/code/modules/antagonists/clockcult/clock_items/clock_weapons/_call_weapon.dm
@@ -44,6 +44,6 @@
/datum/action/innate/call_weapon/proc/weapon_reset(cooldown_time)
cooldown = world.time + cooldown_time
- addtimer(CALLBACK(owner, /mob.proc/update_action_buttons_icon), cooldown_time)
+ addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob, update_action_buttons_icon)), cooldown_time)
owner.update_action_buttons_icon()
QDEL_NULL(weapon)
diff --git a/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm
index 88cf4204..67387ce9 100644
--- a/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm
+++ b/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm
@@ -51,7 +51,7 @@
user.emote("scream")
user.apply_damage(30, BRUTE, BODY_ZONE_HEAD)
user.adjustOrganLoss(ORGAN_SLOT_BRAIN, 30)
- addtimer(CALLBACK(user, /mob/living.proc/dropItemToGround, src, TRUE), 1) //equipped happens before putting stuff on(but not before picking items up), 1). thus, we need to wait for it to be on before forcing it off.
+ addtimer(CALLBACK(user, TYPE_PROC_REF(/mob/living, dropItemToGround), src, TRUE), 1) //equipped happens before putting stuff on(but not before picking items up), 1). thus, we need to wait for it to be on before forcing it off.
/obj/item/clothing/head/helmet/clockwork/mob_can_equip(mob/M, mob/equipper, slot, disable_warning = 0)
if(equipper && !is_servant_of_ratvar(equipper))
@@ -118,7 +118,7 @@
user.apply_damage(15, BURN, BODY_ZONE_CHEST)
user.adjust_fire_stacks(2)
user.IgniteMob()
- addtimer(CALLBACK(user, /mob/living.proc/dropItemToGround, src, TRUE), 1)
+ addtimer(CALLBACK(user, TYPE_PROC_REF(/mob/living, dropItemToGround), src, TRUE), 1)
/obj/item/clothing/gloves/clockwork
name = "clockwork gauntlets"
@@ -178,7 +178,7 @@
user.emote("scream")
user.apply_damage(7, BRUTE, BODY_ZONE_L_ARM)
user.apply_damage(7, BRUTE, BODY_ZONE_R_ARM)
- addtimer(CALLBACK(user, /mob/living.proc/dropItemToGround, src, TRUE), 1)
+ addtimer(CALLBACK(user, TYPE_PROC_REF(/mob/living, dropItemToGround), src, TRUE), 1)
/obj/item/clothing/shoes/clockwork
name = "clockwork treads"
@@ -228,4 +228,4 @@
user.emote("scream")
user.apply_damage(7, BURN, BODY_ZONE_L_LEG)
user.apply_damage(7, BURN, BODY_ZONE_R_LEG)
- addtimer(CALLBACK(user, /mob/living.proc/dropItemToGround, src, TRUE), 1)
+ addtimer(CALLBACK(user, TYPE_PROC_REF(/mob/living, dropItemToGround), src, TRUE), 1)
diff --git a/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm b/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm
index 7c4229ea..327fdcf0 100644
--- a/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm
+++ b/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm
@@ -131,7 +131,7 @@
continue
V.recharging = TRUE //To prevent exploiting multiple visors to bypass the cooldown
V.update_status()
- addtimer(CALLBACK(V, /obj/item/clothing/glasses/judicial_visor.proc/recharge_visor, ranged_ability_user), (GLOB.ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown) * 2)
+ addtimer(CALLBACK(V, TYPE_PROC_REF(/obj/item/clothing/glasses/judicial_visor, recharge_visor), ranged_ability_user), (GLOB.ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown) * 2)
clockwork_say(ranged_ability_user, text2ratvar("Kneel, heathens!"))
ranged_ability_user.visible_message("[ranged_ability_user]'s judicial visor fires a stream of energy at [target], creating a strange mark!", "You direct [visor]'s power to [target]. You must wait for some time before doing this again.")
var/turf/targetturf = get_turf(target)
@@ -139,7 +139,7 @@
log_combat(ranged_ability_user, targetturf, "created a judicial marker")
ranged_ability_user.update_action_buttons_icon()
ranged_ability_user.update_inv_glasses()
- addtimer(CALLBACK(visor, /obj/item/clothing/glasses/judicial_visor.proc/recharge_visor, ranged_ability_user), GLOB.ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown)//Cooldown is reduced by 10x if Ratvar is up
+ addtimer(CALLBACK(visor, TYPE_PROC_REF(/obj/item/clothing/glasses/judicial_visor, recharge_visor), ranged_ability_user), GLOB.ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown)//Cooldown is reduced by 10x if Ratvar is up
remove_ranged_ability()
return TRUE
diff --git a/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm b/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm
index d6296aea..6cbc43bb 100644
--- a/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm
+++ b/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm
@@ -180,7 +180,7 @@
playsound(owner, 'sound/magic/clockwork/fellowship_armory.ogg', 15 * do_message, TRUE) //get sound loudness based on how much we equipped
cooldown = CLOCKWORK_ARMOR_COOLDOWN + world.time
owner.update_action_buttons_icon()
- addtimer(CALLBACK(owner, /mob.proc/update_action_buttons_icon), CLOCKWORK_ARMOR_COOLDOWN)
+ addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob, update_action_buttons_icon)), CLOCKWORK_ARMOR_COOLDOWN)
return TRUE
/datum/action/innate/clockwork_armaments/proc/remove_item_if_better(obj/item/I, mob/user)
diff --git a/code/modules/antagonists/clockcult/clock_structures/ratvar_the_clockwork_justicar.dm b/code/modules/antagonists/clockcult/clock_structures/ratvar_the_clockwork_justicar.dm
index 9341a7ee..9c7de400 100644
--- a/code/modules/antagonists/clockcult/clock_structures/ratvar_the_clockwork_justicar.dm
+++ b/code/modules/antagonists/clockcult/clock_structures/ratvar_the_clockwork_justicar.dm
@@ -29,7 +29,7 @@
sound_to_playing_players('sound/effects/ratvar_reveal.ogg')
var/mutable_appearance/alert_overlay = mutable_appearance('icons/effects/clockwork_effects.dmi', "ratvar_alert")
notify_ghosts("The Justiciar's light calls to you! Reach out to Ratvar in [get_area_name(src)] to be granted a shell to spread his glory!", null, source = src, alert_overlay = alert_overlay)
- INVOKE_ASYNC(SSshuttle.emergency, /obj/docking_port/mobile/emergency.proc/request, null, 10, null, FALSE, 0)
+ INVOKE_ASYNC(SSshuttle.emergency, TYPE_PROC_REF(/obj/docking_port/mobile/emergency, request), null, 10, null, FALSE, 0)
/obj/structure/destructible/clockwork/massive/ratvar/Destroy()
GLOB.ratvar_awakens--
diff --git a/code/modules/antagonists/cult/blood_magic.dm b/code/modules/antagonists/cult/blood_magic.dm
index 49fb6720..d30a2f2b 100644
--- a/code/modules/antagonists/cult/blood_magic.dm
+++ b/code/modules/antagonists/cult/blood_magic.dm
@@ -264,7 +264,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,"[H] has been cursed with living nightmares!")
attached_action.charges--
attached_action.desc = attached_action.base_desc
diff --git a/code/modules/antagonists/cult/cult_comms.dm b/code/modules/antagonists/cult/cult_comms.dm
index e9f00cde..f9d58ade 100644
--- a/code/modules/antagonists/cult/cult_comms.dm
+++ b/code/modules/antagonists/cult/cult_comms.dm
@@ -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
@@ -278,7 +278,7 @@
C.cult_team.blood_target = target
var/area/A = get_area(target)
attached_action.cooldown = world.time + attached_action.base_cooldown
- addtimer(CALLBACK(attached_action.owner, /mob.proc/update_action_buttons_icon), attached_action.base_cooldown)
+ addtimer(CALLBACK(attached_action.owner, TYPE_PROC_REF(/mob, update_action_buttons_icon)), attached_action.base_cooldown)
C.cult_team.blood_target_image = image('icons/effects/cult_target.dmi', target, "glow", ABOVE_MOB_LAYER)
C.cult_team.blood_target_image.appearance_flags = RESET_COLOR
C.cult_team.blood_target_image.pixel_x = -target.pixel_x
@@ -360,7 +360,7 @@
C.cult_team.blood_target = target
var/area/A = get_area(target)
cooldown = world.time + base_cooldown
- addtimer(CALLBACK(owner, /mob.proc/update_action_buttons_icon), base_cooldown)
+ addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob, update_action_buttons_icon)), base_cooldown)
C.cult_team.blood_target_image = image('icons/effects/cult_target.dmi', target, "glow", ABOVE_MOB_LAYER)
C.cult_team.blood_target_image.appearance_flags = RESET_COLOR
C.cult_team.blood_target_image.pixel_x = -target.pixel_x
@@ -468,4 +468,4 @@
attached_action.cooldown = world.time + attached_action.base_cooldown
remove_ranged_ability("A pulse of blood magic surges through you as you shift [attached_action.throwee] through time and space.")
caller.update_action_buttons_icon()
- addtimer(CALLBACK(caller, /mob.proc/update_action_buttons_icon), attached_action.base_cooldown)
+ addtimer(CALLBACK(caller, TYPE_PROC_REF(/mob, update_action_buttons_icon)), attached_action.base_cooldown)
diff --git a/code/modules/antagonists/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm
index f098abb1..c4aa5786 100644
--- a/code/modules/antagonists/cult/cult_items.dm
+++ b/code/modules/antagonists/cult/cult_items.dm
@@ -925,7 +925,7 @@
playsound(L, 'sound/hallucinations/wail.ogg', 50, 1)
L.emote("scream")
var/datum/beam/current_beam = new(user,temp_target,time=7,beam_icon_state="blood_beam",btype=/obj/effect/ebeam/blood)
- INVOKE_ASYNC(current_beam, /datum/beam.proc/Start)
+ INVOKE_ASYNC(current_beam, TYPE_PROC_REF(/datum/beam, Start))
/obj/effect/ebeam/blood
@@ -966,7 +966,7 @@
playsound(src, 'sound/weapons/parry.ogg', 100, 1)
if(illusions > 0)
illusions--
- addtimer(CALLBACK(src, /obj/item/shield/mirror.proc/readd), 450)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/obj/item/shield/mirror, readd)), 450)
if(prob(60))
var/mob/living/simple_animal/hostile/illusion/M = new(owner.loc)
M.faction = list("cult")
diff --git a/code/modules/antagonists/cult/rune_spawn_action.dm b/code/modules/antagonists/cult/rune_spawn_action.dm
index 60a85278..dc1b0c01 100644
--- a/code/modules/antagonists/cult/rune_spawn_action.dm
+++ b/code/modules/antagonists/cult/rune_spawn_action.dm
@@ -57,7 +57,7 @@
cooldown = base_cooldown + world.time
owner.update_action_buttons_icon()
- addtimer(CALLBACK(owner, /mob.proc/update_action_buttons_icon), base_cooldown)
+ addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob, update_action_buttons_icon)), base_cooldown)
var/list/health
if(damage_interrupt && isliving(owner))
var/mob/living/L = owner
@@ -66,7 +66,7 @@
if(istype(T, /turf/open/floor/engine/cult))
scribe_mod *= 0.5
playsound(T, 'sound/magic/enter_blood.ogg', 100, FALSE)
- if(do_after(owner, scribe_mod, target = owner, extra_checks = CALLBACK(owner, /mob.proc/break_do_after_checks, health, action_interrupt)))
+ if(do_after(owner, scribe_mod, target = owner, extra_checks = CALLBACK(owner, TYPE_PROC_REF(/mob, break_do_after_checks), health, action_interrupt)))
var/obj/effect/rune/new_rune = new rune_type(owner.loc)
new_rune.keyword = chosen_keyword
else
@@ -115,4 +115,4 @@
rune_word_type = /obj/effect/temp_visual/cult/rune_spawn/rune1
rune_innerring_type = /obj/effect/temp_visual/cult/rune_spawn/rune1/inner
rune_center_type = /obj/effect/temp_visual/cult/rune_spawn/rune1/center
- rune_color = RUNE_COLOR_MEDIUMRED
\ No newline at end of file
+ rune_color = RUNE_COLOR_MEDIUMRED
diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm
index f8e4e0e9..ef1981a5 100644
--- a/code/modules/antagonists/cult/runes.dm
+++ b/code/modules/antagonists/cult/runes.dm
@@ -995,7 +995,7 @@ structure_check() searches for nearby cultist structures required for the invoca
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
@@ -1003,13 +1003,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, "An Apocalypse Rune was invoked in the [place.name], it is no longer available as a summoning site!")
diff --git a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm
index 307c7afe..70f78598 100644
--- a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm
+++ b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm
@@ -426,8 +426,8 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list(
for(var/obj/machinery/door/D in GLOB.airlocks)
if(!is_station_level(D.z))
continue
- INVOKE_ASYNC(D, /obj/machinery/door.proc/hostile_lockdown, owner)
- addtimer(CALLBACK(D, /obj/machinery/door.proc/disable_lockdown), 900)
+ INVOKE_ASYNC(D, TYPE_PROC_REF(/obj/machinery/door, hostile_lockdown), owner)
+ addtimer(CALLBACK(D, TYPE_PROC_REF(/obj/machinery/door, disable_lockdown)), 900)
var/obj/machinery/computer/communications/C = locate() in GLOB.machines
if(C)
@@ -584,7 +584,7 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list(
ranged_ability_user.playsound_local(ranged_ability_user, "sparks", 50, 0)
attached_action.adjust_uses(-1)
target.audible_message("You hear a loud electrical buzzing sound coming from [target]!")
- addtimer(CALLBACK(attached_action, /datum/action/innate/ai/ranged/overload_machine.proc/detonate_machine, target), 50) //kaboom!
+ addtimer(CALLBACK(attached_action, TYPE_PROC_REF(/datum/action/innate/ai/ranged/overload_machine, detonate_machine), target), 50) //kaboom!
remove_ranged_ability("Overcharging machine...")
return TRUE
@@ -631,7 +631,7 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list(
ranged_ability_user.playsound_local(ranged_ability_user, 'sound/misc/interference.ogg', 50, 0)
attached_action.adjust_uses(-1)
target.audible_message("You hear a loud electrical buzzing sound coming from [target]!")
- addtimer(CALLBACK(attached_action, /datum/action/innate/ai/ranged/override_machine.proc/animate_machine, target), 50) //kabeep!
+ addtimer(CALLBACK(attached_action, TYPE_PROC_REF(/datum/action/innate/ai/ranged/override_machine, animate_machine), target), 50) //kabeep!
remove_ranged_ability("Sending override signal...")
return TRUE
@@ -759,7 +759,7 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list(
for(var/obj/machinery/light/L in GLOB.machines)
if(is_station_level(L.z))
L.no_emergency = TRUE
- INVOKE_ASYNC(L, /obj/machinery/light/.proc/update, FALSE)
+ INVOKE_ASYNC(L, TYPE_PROC_REF(/obj/machinery/light/, update), FALSE)
CHECK_TICK
to_chat(owner, "Emergency light connections severed.")
owner.playsound_local(owner, 'sound/effects/light_flicker.ogg', 50, FALSE)
diff --git a/code/modules/antagonists/wizard/equipment/artefact.dm b/code/modules/antagonists/wizard/equipment/artefact.dm
index 09496339..d3af5bf2 100644
--- a/code/modules/antagonists/wizard/equipment/artefact.dm
+++ b/code/modules/antagonists/wizard/equipment/artefact.dm
@@ -129,7 +129,7 @@
insaneinthemembrane.sanity = 0
for(var/lore in typesof(/datum/brain_trauma/severe))
C.gain_trauma(lore)
- addtimer(CALLBACK(src, /obj/singularity/wizard.proc/deranged, C), 100)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/obj/singularity/wizard, deranged), C), 100)
/obj/singularity/wizard/proc/deranged(mob/living/carbon/C)
if(!C || C.stat == DEAD)
diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm
index c281a63a..f4da1ea3 100644
--- a/code/modules/assembly/flash.dm
+++ b/code/modules/assembly/flash.dm
@@ -39,7 +39,7 @@
if(flash)
add_overlay(flashing_overlay)
attached_overlays += flashing_overlay
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 5)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 5)
if(holder)
holder.update_icon()
@@ -306,7 +306,7 @@
else if(flash)
icon_state = "flashshield_flash"
item_state = "flashshield_flash"
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 5)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 5)
if(holder)
holder.update_icon()
diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm
index ef2e70ba..f27b6efa 100644
--- a/code/modules/flufftext/Hallucination.dm
+++ b/code/modules/flufftext/Hallucination.dm
@@ -337,10 +337,10 @@ GLOBAL_LIST_INIT(hallucination_list, list(
for(var/i in 1 to rand(5, 10))
target.playsound_local(source, 'sound/weapons/laser.ogg', 25, 1)
if(prob(50))
- addtimer(CALLBACK(target, /mob/.proc/playsound_local, source, 'sound/weapons/sear.ogg', 25, 1), rand(5,10))
+ addtimer(CALLBACK(target, TYPE_PROC_REF(/mob/, playsound_local), source, 'sound/weapons/sear.ogg', 25, 1), rand(5,10))
hits++
else
- addtimer(CALLBACK(target, /mob/.proc/playsound_local, source, 'sound/weapons/effects/searwall.ogg', 25, 1), rand(5,10))
+ addtimer(CALLBACK(target, TYPE_PROC_REF(/mob/, playsound_local), source, 'sound/weapons/effects/searwall.ogg', 25, 1), rand(5,10))
sleep(rand(CLICK_CD_RANGE, CLICK_CD_RANGE + 6))
if(hits >= 4 && prob(70))
target.playsound_local(source, get_sfx("bodyfall"), 25, 1)
@@ -350,10 +350,10 @@ GLOBAL_LIST_INIT(hallucination_list, list(
for(var/i in 1 to rand(5, 10))
target.playsound_local(source, 'sound/weapons/taser2.ogg', 25, 1)
if(prob(50))
- addtimer(CALLBACK(target, /mob/.proc/playsound_local, source, 'sound/weapons/tap.ogg', 25, 1), rand(5,10))
+ addtimer(CALLBACK(target, TYPE_PROC_REF(/mob/, playsound_local), source, 'sound/weapons/tap.ogg', 25, 1), rand(5,10))
hits++
else
- addtimer(CALLBACK(target, /mob/.proc/playsound_local, source, 'sound/weapons/effects/searwall.ogg', 25, 1), rand(5,10))
+ addtimer(CALLBACK(target, TYPE_PROC_REF(/mob/, playsound_local), source, 'sound/weapons/effects/searwall.ogg', 25, 1), rand(5,10))
sleep(rand(CLICK_CD_RANGE, CLICK_CD_RANGE + 6))
if(hits >= 3 && prob(70))
target.playsound_local(source, get_sfx("bodyfall"), 25, 1)
@@ -371,10 +371,10 @@ GLOBAL_LIST_INIT(hallucination_list, list(
for(var/i in 1 to rand(3, 6))
target.playsound_local(source, get_sfx("gunshot"), 25)
if(prob(60))
- addtimer(CALLBACK(target, /mob/.proc/playsound_local, source, 'sound/weapons/pierce.ogg', 25, 1), rand(5,10))
+ addtimer(CALLBACK(target, TYPE_PROC_REF(/mob/, playsound_local), source, 'sound/weapons/pierce.ogg', 25, 1), rand(5,10))
hits++
else
- addtimer(CALLBACK(target, /mob/.proc/playsound_local, source, "ricochet", 25, 1), rand(5,10))
+ addtimer(CALLBACK(target, TYPE_PROC_REF(/mob/, playsound_local), source, "ricochet", 25, 1), rand(5,10))
sleep(rand(CLICK_CD_RANGE, CLICK_CD_RANGE + 6))
if(hits >= 2 && prob(80))
target.playsound_local(source, get_sfx("bodyfall"), 25, 1)
diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm
index 5d61d851..762fef40 100644
--- a/code/modules/food_and_drinks/drinks/drinks.dm
+++ b/code/modules/food_and_drinks/drinks/drinks.dm
@@ -78,7 +78,7 @@
if(iscyborg(user)) //Cyborg modules that include drinks automatically refill themselves, but drain the borg's cell
var/mob/living/silicon/robot/bro = user
bro.cell.use(30)
- addtimer(CALLBACK(reagents, /datum/reagents.proc/add_reagent, refill, trans), 600)
+ addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, add_reagent), refill, trans), 600)
else if(target.is_drainable()) //A dispenser. Transfer FROM it TO us.
if (!is_refillable())
diff --git a/code/modules/holodeck/turfs.dm b/code/modules/holodeck/turfs.dm
index 7b5b0586..fd281433 100644
--- a/code/modules/holodeck/turfs.dm
+++ b/code/modules/holodeck/turfs.dm
@@ -111,7 +111,7 @@
/turf/open/floor/holofloor/carpet/Initialize()
. = ..()
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 1)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 1)
/turf/open/floor/holofloor/carpet/update_icon()
. = ..()
diff --git a/code/modules/hydroponics/grown/misc.dm b/code/modules/hydroponics/grown/misc.dm
index 476a3a6d..8d4878fe 100644
--- a/code/modules/hydroponics/grown/misc.dm
+++ b/code/modules/hydroponics/grown/misc.dm
@@ -491,7 +491,7 @@
to_chat(user, "You swallow a gulp of [src].")
var/fraction = min(5/reagents.total_volume, 1)
reagents.reaction(M, INGEST, fraction)
- addtimer(CALLBACK(reagents, /datum/reagents.proc/trans_to, M, 5), 5)
+ addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, trans_to), M, 5), 5)
playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1)
/obj/item/reagent_containers/food/snacks/grown/coconut/afterattack(obj/target, mob/user, proximity)
diff --git a/code/modules/integrated_electronics/subtypes/weaponized.dm b/code/modules/integrated_electronics/subtypes/weaponized.dm
index 7bccbfaf..d98a5350 100644
--- a/code/modules/integrated_electronics/subtypes/weaponized.dm
+++ b/code/modules/integrated_electronics/subtypes/weaponized.dm
@@ -191,7 +191,7 @@
dt = CLAMP(detonation_time.data, 1, 12)*10
else
dt = 15
- addtimer(CALLBACK(attached_grenade, /obj/item/grenade.proc/prime), dt)
+ addtimer(CALLBACK(attached_grenade, TYPE_PROC_REF(/obj/item/grenade, prime)), dt)
var/atom/holder = loc
message_admins("activated a grenade assembly. Last touches: Assembly: [holder.fingerprintslast] Circuit: [fingerprintslast] Grenade: [attached_grenade.fingerprintslast]")
diff --git a/code/modules/mining/equipment/wormhole_jaunter.dm b/code/modules/mining/equipment/wormhole_jaunter.dm
index bc7d3bfd..d1f87c9d 100644
--- a/code/modules/mining/equipment/wormhole_jaunter.dm
+++ b/code/modules/mining/equipment/wormhole_jaunter.dm
@@ -96,4 +96,4 @@
L.Knockdown(60)
if(ishuman(L))
shake_camera(L, 20, 1)
- addtimer(CALLBACK(L, /mob/living/carbon.proc/vomit), 20)
+ addtimer(CALLBACK(L, TYPE_PROC_REF(/mob/living/carbon, vomit)), 20)
diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm
index fe42def4..1ed89300 100644
--- a/code/modules/mining/lavaland/necropolis_chests.dm
+++ b/code/modules/mining/lavaland/necropolis_chests.dm
@@ -1014,7 +1014,7 @@
/obj/item/mayhem/attack_self(mob/user)
for(var/mob/living/carbon/human/H in range(7,user))
var/obj/effect/mine/pickup/bloodbath/B = new(H)
- INVOKE_ASYNC(B, /obj/effect/mine/pickup/bloodbath/.proc/mineEffect, H)
+ INVOKE_ASYNC(B, TYPE_PROC_REF(/obj/effect/mine/pickup/bloodbath/, mineEffect), H)
to_chat(user, "You shatter the bottle!")
playsound(user.loc, 'sound/effects/glassbr1.ogg', 100, 1)
message_admins("[ADMIN_LOOKUPFLW(user)] has activated a bottle of mayhem!")
@@ -1066,7 +1066,7 @@
to_chat(L, "You've been marked for death! Don't let the demons get you! KILL THEM ALL!")
L.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY)
var/obj/effect/mine/pickup/bloodbath/B = new(L)
- INVOKE_ASYNC(B, /obj/effect/mine/pickup/bloodbath/.proc/mineEffect, L)
+ INVOKE_ASYNC(B, TYPE_PROC_REF(/obj/effect/mine/pickup/bloodbath/, mineEffect), L)
for(var/mob/living/carbon/human/H in GLOB.player_list)
if(H == L)
diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm
index a589df81..1bc948fb 100644
--- a/code/modules/mob/living/carbon/human/death.dm
+++ b/code/modules/mob/living/carbon/human/death.dm
@@ -50,7 +50,7 @@
if(SSticker.HasRoundStarted())
SSblackbox.ReportDeath(src)
if(is_devil(src))
- INVOKE_ASYNC(is_devil(src), /datum/antagonist/devil.proc/beginResurrectionCheck, src)
+ INVOKE_ASYNC(is_devil(src), TYPE_PROC_REF(/datum/antagonist/devil, beginResurrectionCheck), src)
//watching someone die is traumatic
for(var/mob/living/carbon/human/C in oview(5, src))
diff --git a/code/modules/mob/living/carbon/human/species_types/golems.dm b/code/modules/mob/living/carbon/human/species_types/golems.dm
index 5e2cfb12..67a9c8c9 100644
--- a/code/modules/mob/living/carbon/human/species_types/golems.dm
+++ b/code/modules/mob/living/carbon/human/species_types/golems.dm
@@ -1010,7 +1010,7 @@
badtime.appearance_flags = RESET_COLOR
H.overlays_standing[FIRE_LAYER+0.5] = badtime
H.apply_overlay(FIRE_LAYER+0.5)
- addtimer(CALLBACK(H, /mob/living/carbon/.proc/remove_overlay, FIRE_LAYER+0.5), 25)
+ addtimer(CALLBACK(H, TYPE_PROC_REF(/mob/living/carbon/, remove_overlay), FIRE_LAYER+0.5), 25)
else
playsound(get_turf(owner),'sound/magic/RATTLEMEBONES.ogg', 100)
for(var/mob/living/L in orange(7, get_turf(owner)))
diff --git a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm
index cf9b09ea..e8341fb5 100644
--- a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm
+++ b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm
@@ -51,7 +51,7 @@
weapon.attack(C, src)
playsound(src, 'sound/weapons/blade1.ogg', 50, TRUE, -1)
if(C.stat == DEAD)
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 2)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 2)
back_to_idle()
diff --git a/code/modules/mob/living/simple_animal/bot/honkbot.dm b/code/modules/mob/living/simple_animal/bot/honkbot.dm
index 34fbf501..b6ef13d5 100644
--- a/code/modules/mob/living/simple_animal/bot/honkbot.dm
+++ b/code/modules/mob/living/simple_animal/bot/honkbot.dm
@@ -49,7 +49,7 @@
/mob/living/simple_animal/bot/honkbot/proc/sensor_blink()
icon_state = "honkbot-c"
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 5, TIMER_OVERRIDE|TIMER_UNIQUE)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 5, TIMER_OVERRIDE|TIMER_UNIQUE)
//honkbots react with sounds.
/mob/living/simple_animal/bot/honkbot/proc/react_ping()
@@ -177,7 +177,7 @@ Maintenance panel panel is [open ? "opened" : "closed"]"},
playsound(src, "honkbot_e", 50, 0)
spam_flag = TRUE // prevent spam
icon_state = "honkbot-e"
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 30, TIMER_OVERRIDE|TIMER_UNIQUE)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 30, TIMER_OVERRIDE|TIMER_UNIQUE)
addtimer(CALLBACK(src,PROC_REF(spam_flag_false)), cooldowntimehorn)
/mob/living/simple_animal/bot/honkbot/proc/honk_attack(mob/living/carbon/C) // horn attack
@@ -367,4 +367,4 @@ Maintenance panel panel is [open ? "opened" : "closed"]"},
..()
/obj/machinery/bot_core/honkbot
- req_one_access = list(ACCESS_THEATRE, ACCESS_ROBOTICS)
\ No newline at end of file
+ req_one_access = list(ACCESS_THEATRE, ACCESS_ROBOTICS)
diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm
index df3752a3..ac73065c 100644
--- a/code/modules/mob/living/simple_animal/bot/secbot.dm
+++ b/code/modules/mob/living/simple_animal/bot/secbot.dm
@@ -252,7 +252,7 @@ Auto Patrol: []"},
var/judgement_criteria = judgement_criteria()
playsound(src, 'sound/weapons/egloves.ogg', 50, TRUE, -1)
icon_state = "secbot-c"
- addtimer(CALLBACK(src, /atom/.proc/update_icon), 2)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/, update_icon)), 2)
var/threat = 5
if(ishuman(C))
C.stuttering = 5
diff --git a/code/modules/mob/living/simple_animal/hostile/floor_cluwne.dm b/code/modules/mob/living/simple_animal/hostile/floor_cluwne.dm
index 459747e0..77134ae0 100644
--- a/code/modules/mob/living/simple_animal/hostile/floor_cluwne.dm
+++ b/code/modules/mob/living/simple_animal/hostile/floor_cluwne.dm
@@ -188,7 +188,7 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
if(manifested)
update_canmove()
cluwnehole = new(src.loc)
- addtimer(CALLBACK(src, /mob/living/simple_animal/hostile/floor_cluwne/.proc/Appear), MANIFEST_DELAY)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/simple_animal/hostile/floor_cluwne/, Appear)), MANIFEST_DELAY)
else
layer = GAME_PLANE
invisibility = INVISIBILITY_OBSERVER
@@ -257,7 +257,7 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
to_chat(H, "yalp ot tnaw I")
Appear()
manifested = FALSE
- addtimer(CALLBACK(src, /mob/living/simple_animal/hostile/floor_cluwne/.proc/Manifest), 1)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/simple_animal/hostile/floor_cluwne/, Manifest)), 1)
if(current_victim.hud_used)//yay skewium
var/list/screens = list(current_victim.hud_used.plane_masters["[GAME_PLANE]"], current_victim.hud_used.plane_masters["[LIGHTING_PLANE]"])
var/matrix/skew = matrix()
@@ -269,7 +269,7 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
animate(whole_screen, transform = newmatrix, time = 5, easing = QUAD_EASING, loop = -1)
animate(transform = -newmatrix, time = 5, easing = QUAD_EASING)
- addtimer(CALLBACK(src, /mob/living/simple_animal/hostile/floor_cluwne/.proc/Reset_View, screens), 10)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/simple_animal/hostile/floor_cluwne/, Reset_View), screens), 10)
if(STAGE_TORMENT)
if(prob(5))
@@ -321,7 +321,7 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
H.reagents.add_reagent(/datum/reagent/mercury, 3)
Appear()
manifested = FALSE
- addtimer(CALLBACK(src, /mob/living/simple_animal/hostile/floor_cluwne/.proc/Manifest), 2)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/simple_animal/hostile/floor_cluwne/, Manifest)), 2)
for(var/obj/machinery/light/L in range(H, 8))
L.flicker()
@@ -344,9 +344,9 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
if(!eating)
empulse(src, 6, 6)
if(!smite)
- addtimer(CALLBACK(src, /mob/living/simple_animal/hostile/floor_cluwne/.proc/Grab, H), 50, TIMER_OVERRIDE|TIMER_UNIQUE)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/simple_animal/hostile/floor_cluwne/, Grab), H), 50, TIMER_OVERRIDE|TIMER_UNIQUE)
else
- addtimer(CALLBACK(src, /mob/living/simple_animal/hostile/floor_cluwne/.proc/Grab, H), smiteactiondelay, TIMER_OVERRIDE|TIMER_UNIQUE)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/simple_animal/hostile/floor_cluwne/, Grab), H), smiteactiondelay, TIMER_OVERRIDE|TIMER_UNIQUE)
for(var/turf/open/O in range(src, 6))
O.MakeSlippery(TURF_WET_LUBE, 30)
playsound(src, 'sound/effects/meteorimpact.ogg', 30, 1)
@@ -376,7 +376,7 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
H.invisibility = INVISIBILITY_OBSERVER
H.density = FALSE
H.anchored = TRUE
- addtimer(CALLBACK(src, /mob/living/simple_animal/hostile/floor_cluwne/.proc/Kill, H), 100, TIMER_OVERRIDE|TIMER_UNIQUE)
+ addtimer(CALLBACK(src, TYPE_PROC_REF(/mob/living/simple_animal/hostile/floor_cluwne/, Kill), H), 100, TIMER_OVERRIDE|TIMER_UNIQUE)
visible_message("[src] pulls [H] under!")
to_chat(H, "[src] drags you underneath the floor!")
else
diff --git a/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm b/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm
index f096fc2c..bd70369e 100644
--- a/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm
+++ b/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm
@@ -232,13 +232,13 @@
if(mecha.defense_action && mecha.defense_action.owner && !mecha.defence_mode)
mecha.leg_overload_mode = 0
mecha.defense_action.Activate(TRUE)
- addtimer(CALLBACK(mecha.defense_action, /datum/action/innate/mecha/mech_defence_mode.proc/Activate, FALSE), 100) //10 seconds of defence, then toggle off
+ addtimer(CALLBACK(mecha.defense_action, TYPE_PROC_REF(/datum/action/innate/mecha/mech_defence_mode, Activate), FALSE), 100) //10 seconds of defence, then toggle off
else if(prob(retreat_chance))
//Speed boost if possible
if(mecha.overload_action && mecha.overload_action.owner && !mecha.leg_overload_mode)
mecha.overload_action.Activate(TRUE)
- addtimer(CALLBACK(mecha.overload_action, /datum/action/innate/mecha/mech_defence_mode.proc/Activate, FALSE), 100) //10 seconds of speeeeed, then toggle off
+ addtimer(CALLBACK(mecha.overload_action, TYPE_PROC_REF(/datum/action/innate/mecha/mech_defence_mode, Activate), FALSE), 100) //10 seconds of speeeeed, then toggle off
retreat_distance = 50
spawn(100)
@@ -292,4 +292,4 @@
if(mecha)
walk_to(mecha, target, minimum_distance, mecha.step_in)
else
- ..()
\ No newline at end of file
+ ..()
diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm
index 34b39bb2..14c8ee98 100644
--- a/code/modules/paperwork/contract.dm
+++ b/code/modules/paperwork/contract.dm
@@ -240,7 +240,7 @@
user.visible_message("With a sudden blaze, [H] stands back up.")
H.fakefire()
fulfillContract(H, 1)//Revival contracts are always signed in blood
- addtimer(CALLBACK(H, /mob/living/carbon/human.proc/fakefireextinguish), 5, TIMER_UNIQUE)
+ addtimer(CALLBACK(H, TYPE_PROC_REF(/mob/living/carbon/human, fakefireextinguish)), 5, TIMER_UNIQUE)
addtimer(CALLBACK(src, "resetcooldown"), 300, TIMER_UNIQUE)
else
..()
diff --git a/code/modules/pool/pool_wires.dm b/code/modules/pool/pool_wires.dm
index 7341c503..730381ca 100644
--- a/code/modules/pool/pool_wires.dm
+++ b/code/modules/pool/pool_wires.dm
@@ -35,7 +35,7 @@
P.temperature_unlocked = FALSE
if(WIRE_SHOCK)
P.shocked = !P.shocked
- addtimer(CALLBACK(P, /obj/machinery/autolathe.proc/reset, wire), 60)
+ addtimer(CALLBACK(P, TYPE_PROC_REF(/obj/machinery/autolathe, reset), wire), 60)
/datum/wires/poolcontroller/on_cut(wire, mend)
var/obj/machinery/pool/controller/P = holder
@@ -56,4 +56,4 @@
if(mend)
P.stat &= ~NOPOWER
else
- P.stat |= NOPOWER
\ No newline at end of file
+ P.stat |= NOPOWER
diff --git a/code/modules/power/antimatter/control.dm b/code/modules/power/antimatter/control.dm
index 0cc40832..752cbea2 100644
--- a/code/modules/power/antimatter/control.dm
+++ b/code/modules/power/antimatter/control.dm
@@ -258,7 +258,7 @@
if(AMS.processing)
AMS.shutdown_core()
AMS.control_unit = null
- addtimer(CALLBACK(AMS, /obj/machinery/am_shielding.proc/controllerscan), 10)
+ addtimer(CALLBACK(AMS, TYPE_PROC_REF(/obj/machinery/am_shielding, controllerscan)), 10)
linked_shielding = list()
else
for(var/obj/machinery/am_shielding/AMS in linked_shielding)
diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm
index 03f212e5..f54605b6 100644
--- a/code/modules/power/apc.dm
+++ b/code/modules/power/apc.dm
@@ -1023,7 +1023,7 @@
for(var/obj/machinery/light/L in area)
if(!initial(L.no_emergency)) //If there was an override set on creation, keep that override
L.no_emergency = emergency_lights
- INVOKE_ASYNC(L, /obj/machinery/light/.proc/update, FALSE)
+ INVOKE_ASYNC(L, TYPE_PROC_REF(/obj/machinery/light/, update), FALSE)
CHECK_TICK
return 1
@@ -1044,7 +1044,7 @@
return
to_chat(malf, "Beginning override of APC systems. This takes some time, and you cannot perform other actions during the process.")
malf.malfhack = src
- malf.malfhacking = addtimer(CALLBACK(malf, /mob/living/silicon/ai/.proc/malfhacked, src), 600, TIMER_STOPPABLE)
+ malf.malfhacking = addtimer(CALLBACK(malf, TYPE_PROC_REF(/mob/living/silicon/ai/, malfhacked), src), 600, TIMER_STOPPABLE)
var/obj/screen/alert/hackingapc/A
A = malf.throw_alert("hackingapc", /obj/screen/alert/hackingapc)
diff --git a/code/modules/procedural_mapping/mapGenerator.dm b/code/modules/procedural_mapping/mapGenerator.dm
index f509c409..f7095aac 100644
--- a/code/modules/procedural_mapping/mapGenerator.dm
+++ b/code/modules/procedural_mapping/mapGenerator.dm
@@ -108,7 +108,7 @@
if(!modules || !modules.len)
return
for(var/datum/mapGeneratorModule/mod in modules)
- INVOKE_ASYNC(mod, /datum/mapGeneratorModule.proc/generate)
+ INVOKE_ASYNC(mod, TYPE_PROC_REF(/datum/mapGeneratorModule, generate))
//Requests the mapGeneratorModule(s) to (re)generate this one turf
@@ -119,7 +119,7 @@
if(!modules || !modules.len)
return
for(var/datum/mapGeneratorModule/mod in modules)
- INVOKE_ASYNC(mod, /datum/mapGeneratorModule.proc/place, T)
+ INVOKE_ASYNC(mod, TYPE_PROC_REF(/datum/mapGeneratorModule, place), T)
//Replaces all paths in the module list with actual module datums
diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm
index f386f4e4..c61f8ada 100644
--- a/code/modules/projectiles/gun.dm
+++ b/code/modules/projectiles/gun.dm
@@ -193,7 +193,7 @@
else if(G.can_trigger_gun(user))
bonus_spread += 24 * G.weapon_weight
loop_counter++
- addtimer(CALLBACK(G, /obj/item/gun.proc/process_fire, target, user, TRUE, params, null, bonus_spread), loop_counter)
+ addtimer(CALLBACK(G, TYPE_PROC_REF(/obj/item/gun, process_fire), target, user, TRUE, params, null, bonus_spread), loop_counter)
process_fire(target, user, TRUE, params, null, bonus_spread)
diff --git a/code/modules/projectiles/guns/misc/grenade_launcher.dm b/code/modules/projectiles/guns/misc/grenade_launcher.dm
index 5a8c5a06..536828a3 100644
--- a/code/modules/projectiles/guns/misc/grenade_launcher.dm
+++ b/code/modules/projectiles/guns/misc/grenade_launcher.dm
@@ -43,4 +43,4 @@
F.active = 1
F.icon_state = initial(F.icon_state) + "_active"
playsound(user.loc, 'sound/weapons/armbomb.ogg', 75, 1, -3)
- addtimer(CALLBACK(F, /obj/item/grenade.proc/prime), 15)
+ addtimer(CALLBACK(F, TYPE_PROC_REF(/obj/item/grenade, prime)), 15)
diff --git a/code/modules/projectiles/projectile/energy.dm b/code/modules/projectiles/projectile/energy.dm
index 5c9a578e..cce85001 100644
--- a/code/modules/projectiles/projectile/energy.dm
+++ b/code/modules/projectiles/projectile/energy.dm
@@ -32,7 +32,7 @@
if(C.dna && C.dna.check_mutation(HULK))
C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
else if((C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE))
- addtimer(CALLBACK(C, /mob/living/carbon.proc/do_jitter_animation, jitter), 5)
+ addtimer(CALLBACK(C, TYPE_PROC_REF(/mob/living/carbon, do_jitter_animation), jitter), 5)
/obj/item/projectile/energy/electrode/on_range() //to ensure the bolt sparks when it reaches the end of its range if it didn't hit a target yet
do_sparks(1, TRUE, src)
diff --git a/code/modules/projectiles/projectile/energy/stun.dm b/code/modules/projectiles/projectile/energy/stun.dm
index 27835605..ed6aa736 100644
--- a/code/modules/projectiles/projectile/energy/stun.dm
+++ b/code/modules/projectiles/projectile/energy/stun.dm
@@ -27,7 +27,7 @@
C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk")
else if((C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE))
C.apply_status_effect(STATUS_EFFECT_TASED, tase_duration)
- addtimer(CALLBACK(C, /mob/living/carbon.proc/do_jitter_animation, jitter), 5)
+ addtimer(CALLBACK(C, TYPE_PROC_REF(/mob/living/carbon, do_jitter_animation), jitter), 5)
/obj/item/projectile/energy/electrode/on_range() //to ensure the bolt sparks when it reaches the end of its range if it didn't hit a target yet
do_sparks(1, TRUE, src)
diff --git a/code/modules/projectiles/projectile/special/hallucination.dm b/code/modules/projectiles/projectile/special/hallucination.dm
index 998e763b..206c0574 100644
--- a/code/modules/projectiles/projectile/special/hallucination.dm
+++ b/code/modules/projectiles/projectile/special/hallucination.dm
@@ -171,7 +171,7 @@
if(hal_target.dna && hal_target.dna.check_mutation(HULK))
hal_target.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk")
else if((hal_target.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(hal_target, TRAIT_STUNIMMUNE))
- addtimer(CALLBACK(hal_target, /mob/living/carbon.proc/do_jitter_animation, 20), 5)
+ addtimer(CALLBACK(hal_target, TYPE_PROC_REF(/mob/living/carbon, do_jitter_animation), 20), 5)
/obj/item/projectile/hallucination/disabler
name = "disabler beam"
diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm
index 315742da..706faf52 100644
--- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm
+++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm
@@ -632,7 +632,7 @@
S.visible_message("Infused with plasma, the core begins to expand uncontrollably!")
S.icon_state = "[S.base_state]_active"
S.active = TRUE
- addtimer(CALLBACK(S, /obj/item/grenade.proc/prime), rand(15,60))
+ addtimer(CALLBACK(S, TYPE_PROC_REF(/obj/item/grenade, prime)), rand(15,60))
qdel(holder.my_atom) //deleto
else
var/mob/living/simple_animal/slime/random/S = new (get_turf(holder.my_atom))
@@ -651,7 +651,7 @@
S.visible_message("Infused with slime jelly, the core begins to expand uncontrollably!")
S.icon_state = "[S.base_state]_active"
S.active = TRUE
- addtimer(CALLBACK(S, /obj/item/grenade.proc/prime), rand(15,60))
+ addtimer(CALLBACK(S, TYPE_PROC_REF(/obj/item/grenade, prime)), rand(15,60))
qdel(holder.my_atom) //deleto
..()
diff --git a/code/modules/reagents/reagent_containers/Chemical_tongue.dm b/code/modules/reagents/reagent_containers/Chemical_tongue.dm
index 27509125..68a8dfbe 100644
--- a/code/modules/reagents/reagent_containers/Chemical_tongue.dm
+++ b/code/modules/reagents/reagent_containers/Chemical_tongue.dm
@@ -34,7 +34,7 @@
log_combat(user, M, "fed", reagents.log_list())
var/fraction = min(5/reagents.total_volume, 1)
reagents.reaction(M, INGEST, fraction)
- addtimer(CALLBACK(reagents, /datum/reagents.proc/copy_to, M, 10), 5)
+ addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, copy_to), M, 10), 5)
if(user.a_intent == INTENT_GRAB && user.zone_selected == BODY_ZONE_PRECISE_MOUTH)
if(M != user)
@@ -52,7 +52,7 @@
log_combat(user, M, "fed", reagents.log_list())
var/fraction = min(5/reagents.total_volume, 1)
reagents.reaction(M, INGEST, fraction)
- addtimer(CALLBACK(reagents, /datum/reagents.proc/copy_to, M, 5), 5)
+ addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, copy_to), M, 5), 5)
if(user.a_intent == INTENT_DISARM && user.zone_selected == BODY_ZONE_PRECISE_MOUTH)
if(M != user)
@@ -70,7 +70,7 @@
log_combat(user, M, "fed", reagents.log_list())
var/fraction = min(5/reagents.total_volume, 1)
reagents.reaction(M, TOUCH, fraction)
- addtimer(CALLBACK(reagents, /datum/reagents.proc/copy_to, M, 1), 5)
+ addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, copy_to), M, 1), 5)
if(user.a_intent == INTENT_HELP)
if(M != user && user.zone_selected == BODY_ZONE_PRECISE_MOUTH)
diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm
index cb38d885..dce542cc 100644
--- a/code/modules/reagents/reagent_containers/glass.dm
+++ b/code/modules/reagents/reagent_containers/glass.dm
@@ -45,7 +45,7 @@
to_chat(user, "You swallow a gulp of [src].")
var/fraction = min(5/reagents.total_volume, 1)
reagents.reaction(M, INGEST, fraction)
- addtimer(CALLBACK(reagents, /datum/reagents.proc/trans_to, M, 5), 5)
+ addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, trans_to), M, 5), 5)
playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1)
/obj/item/reagent_containers/glass/afterattack(obj/target, mob/user, proximity)
diff --git a/code/modules/research/nanites/nanite_programs/suppression.dm b/code/modules/research/nanites/nanite_programs/suppression.dm
index 56fd7fa0..76245ce4 100644
--- a/code/modules/research/nanites/nanite_programs/suppression.dm
+++ b/code/modules/research/nanites/nanite_programs/suppression.dm
@@ -11,7 +11,7 @@
/datum/nanite_program/sleepy/on_trigger(comm_message)
to_chat(host_mob, "You start to feel very sleepy...")
host_mob.drowsyness += 20
- addtimer(CALLBACK(host_mob, /mob/living.proc/Sleeping, 200), rand(60,200))
+ addtimer(CALLBACK(host_mob, TYPE_PROC_REF(/mob/living, Sleeping), 200), rand(60,200))
/datum/nanite_program/paralyzing
name = "Paralysis"
diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm
index dfa6a1f6..0e02e7ee 100644
--- a/code/modules/research/xenobiology/xenobiology.dm
+++ b/code/modules/research/xenobiology/xenobiology.dm
@@ -252,7 +252,7 @@
to_chat(user, "Your glow is already enhanced!")
return
species.update_glow(user, 5)
- addtimer(CALLBACK(species, /datum/species/jelly/luminescent.proc/update_glow, user, LUMINESCENT_DEFAULT_GLOW), 600)
+ addtimer(CALLBACK(species, TYPE_PROC_REF(/datum/species/jelly/luminescent, update_glow), user, LUMINESCENT_DEFAULT_GLOW), 600)
to_chat(user, "You start glowing brighter.")
if(SLIME_ACTIVATE_MAJOR)
diff --git a/code/modules/ruins/objects_and_mobs/sin_ruins.dm b/code/modules/ruins/objects_and_mobs/sin_ruins.dm
index 5a964fd5..779430d9 100644
--- a/code/modules/ruins/objects_and_mobs/sin_ruins.dm
+++ b/code/modules/ruins/objects_and_mobs/sin_ruins.dm
@@ -258,7 +258,7 @@
to_chat(user, "You swallow a gulp of [src].")
var/fraction = min(5/reagents.total_volume, 1)
reagents.reaction(M, INGEST, fraction)
- addtimer(CALLBACK(reagents, /datum/reagents.proc/trans_to, M, 5), 5)
+ addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents, trans_to), M, 5), 5)
playsound(M.loc,'sound/items/drink.ogg', rand(10,50), 1)
/obj/structure/lewdfountain
diff --git a/code/modules/shuttle/on_move.dm b/code/modules/shuttle/on_move.dm
index beaaa51a..135d51a1 100644
--- a/code/modules/shuttle/on_move.dm
+++ b/code/modules/shuttle/on_move.dm
@@ -179,7 +179,7 @@ All ShuttleMove procs go here
for(var/obj/machinery/door/airlock/A in range(1, src)) // includes src
A.shuttledocked = FALSE
A.air_tight = TRUE
- addtimer(CALLBACK(A, /obj/machinery/door/.proc/close), 0)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/door/, close)), 0)
/obj/machinery/door/airlock/afterShuttleMove(turf/oldT, list/movement_force, shuttle_dir, shuttle_preferred_direction, move_dir, rotation)
. = ..()
diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm
index a613da3a..903e771c 100644
--- a/code/modules/surgery/organs/vocal_cords.dm
+++ b/code/modules/surgery/organs/vocal_cords.dm
@@ -522,7 +522,7 @@
cooldown = COOLDOWN_MEME
for(var/V in listeners)
var/mob/living/L = V
- addtimer(CALLBACK(L, /mob/living/.proc/emote, "dance"), 5 * i)
+ addtimer(CALLBACK(L, TYPE_PROC_REF(/mob/living/, emote), "dance"), 5 * i)
i++
//JUMP
@@ -532,7 +532,7 @@
var/mob/living/L = V
if(prob(25))
addtimer(CALLBACK(L, /atom/movable/proc/say, "HOW HIGH?!!"), 5 * i)
- addtimer(CALLBACK(L, /mob/living/.proc/emote, "jump"), 5 * i)
+ addtimer(CALLBACK(L, TYPE_PROC_REF(/mob/living/, emote), "jump"), 5 * i)
i++
//SALUTE
@@ -540,7 +540,7 @@
cooldown = COOLDOWN_MEME
for(var/V in listeners)
var/mob/living/L = V
- addtimer(CALLBACK(L, /mob/living/.proc/emote, "salute"), 5 * i)
+ addtimer(CALLBACK(L, TYPE_PROC_REF(/mob/living/, emote), "salute"), 5 * i)
i++
//PLAY DEAD
@@ -548,7 +548,7 @@
cooldown = COOLDOWN_MEME
for(var/V in listeners)
var/mob/living/L = V
- addtimer(CALLBACK(L, /mob/living/.proc/emote, "deathgasp"), 5 * i)
+ addtimer(CALLBACK(L, TYPE_PROC_REF(/mob/living/, emote), "deathgasp"), 5 * i)
i++
//PLEASE CLAP
@@ -556,7 +556,7 @@
cooldown = COOLDOWN_MEME
for(var/V in listeners)
var/mob/living/L = V
- addtimer(CALLBACK(L, /mob/living/.proc/emote, "clap"), 5 * i)
+ addtimer(CALLBACK(L, TYPE_PROC_REF(/mob/living/, emote), "clap"), 5 * i)
i++
//HONK
diff --git a/hyperstation/code/modules/resize/resizing.dm b/hyperstation/code/modules/resize/resizing.dm
index 09868621..a8ef8af0 100644
--- a/hyperstation/code/modules/resize/resizing.dm
+++ b/hyperstation/code/modules/resize/resizing.dm
@@ -140,7 +140,7 @@ mob/living/get_effective_size()
H.forceMove(tmob.loc)
sizediffStamLoss(tmob)
H.add_movespeed_modifier(MOVESPEED_ID_STOMP, multiplicative_slowdown = 10) //Full stop
- addtimer(CALLBACK(H, /mob/.proc/remove_movespeed_modifier, MOVESPEED_ID_STOMP), 3) //0.3 seconds
+ addtimer(CALLBACK(H, TYPE_PROC_REF(/mob/, remove_movespeed_modifier), MOVESPEED_ID_STOMP), 3) //0.3 seconds
if(get_effective_size() > tmob.get_effective_size() && iscarbon(H))
if(istype(H) && H.dna.features["taur"] == "Naga" || H.dna.features["taur"] == "Tentacle" || H.dna.features["taur"] == "Fat Naga" || H.dna.features["taur"] == "Alt Naga")
tmob.visible_message("[src] carefully rolls their tail over [tmob]!", "[src]'s huge tail rolls over you!")
@@ -168,7 +168,7 @@ mob/living/get_effective_size()
sizediffBruteloss(tmob)
playsound(loc, 'sound/misc/splort.ogg', 50, 1)
H.add_movespeed_modifier(MOVESPEED_ID_STOMP, multiplicative_slowdown = 10)
- addtimer(CALLBACK(H, /mob/.proc/remove_movespeed_modifier, MOVESPEED_ID_STOMP), 10) //1 second
+ addtimer(CALLBACK(H, TYPE_PROC_REF(/mob/, remove_movespeed_modifier), MOVESPEED_ID_STOMP), 10) //1 second
//H.Stun(20)
if(get_effective_size() > tmob.get_effective_size() && iscarbon(H))
if(istype(H) && H.dna.features["taur"] == "Naga" || H.dna.features["taur"] == "Tentacle" || H.dna.features["taur"] == "Fat Naga" || H.dna.features["taur"] == "Alt Naga")
@@ -196,7 +196,7 @@ mob/living/get_effective_size()
// sizediffStamLoss(tmob)
// sizediffStun(tmob)
// H.add_movespeed_modifier(MOVESPEED_ID_STOMP, multiplicative_slowdown = 10)
- // addtimer(CALLBACK(H, /mob/.proc/remove_movespeed_modifier, MOVESPEED_ID_STOMP), 7)//About 3/4th a second
+ // addtimer(CALLBACK(H, TYPE_PROC_REF(/mob/, remove_movespeed_modifier), MOVESPEED_ID_STOMP), 7)//About 3/4th a second
// if(get_effective_size() > tmob.get_effective_size() && iscarbon(H))
// var/feetCover = (H.wear_suit && (H.wear_suit.body_parts_covered & FEET)) || (H.w_uniform && (H.w_uniform.body_parts_covered & FEET) || (H.shoes && (H.shoes.body_parts_covered & FEET)))
// if(feetCover)
diff --git a/modular_citadel/code/datums/wires/autoylathe.dm b/modular_citadel/code/datums/wires/autoylathe.dm
index 736c9551..f53b057f 100644
--- a/modular_citadel/code/datums/wires/autoylathe.dm
+++ b/modular_citadel/code/datums/wires/autoylathe.dm
@@ -27,13 +27,13 @@
switch(wire)
if(WIRE_HACK)
A.adjust_hacked(!A.hacked)
- addtimer(CALLBACK(A, /obj/machinery/autoylathe.proc/reset, wire), 60)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/autoylathe, reset), wire), 60)
if(WIRE_SHOCK)
A.shocked = !A.shocked
- addtimer(CALLBACK(A, /obj/machinery/autoylathe.proc/reset, wire), 60)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/autoylathe, reset), wire), 60)
if(WIRE_DISABLE)
A.disabled = !A.disabled
- addtimer(CALLBACK(A, /obj/machinery/autoylathe.proc/reset, wire), 60)
+ addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/autoylathe, reset), wire), 60)
/datum/wires/autoylathe/on_cut(wire, mend)
var/obj/machinery/autoylathe/A = holder
diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm
index 65a407d0..9751952d 100644
--- a/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm
+++ b/modular_citadel/code/modules/mob/living/silicon/robot/dogborg_equipment.dm
@@ -320,7 +320,7 @@ SLEEPER CODE IS IN game/objects/items/devices/dogborg_sleeper.dm !
if(R && !R.pounce_cooldown)
R.pounce_cooldown = !R.pounce_cooldown
to_chat(R, "Your targeting systems lock on to [A]...")
- addtimer(CALLBACK(R, /mob/living/silicon/robot.proc/leap_at, A), R.pounce_spoolup)
+ addtimer(CALLBACK(R, TYPE_PROC_REF(/mob/living/silicon/robot, leap_at), A), R.pounce_spoolup)
spawn(R.pounce_cooldown_time)
R.pounce_cooldown = !R.pounce_cooldown
else if(R && R.pounce_cooldown)