it compiles, that's better than it not compiling, right?

This commit is contained in:
Pinta
2024-03-24 06:36:59 -04:00
parent d46cf2d981
commit 63009681fa
452 changed files with 1046 additions and 987 deletions
+3 -3
View File
@@ -59,7 +59,7 @@
/obj/machinery/vr_sleeper/emag_act(mob/user)
you_die_in_the_game_you_die_for_real = TRUE
sparks.start()
addtimer(CALLBACK(src, .proc/emagNotify), 150)
addtimer(CALLBACK(src,PROC_REF(emagNotify)), 150)
/obj/machinery/vr_sleeper/update_icon()
icon_state = "[initial(icon_state)][state_open ? "-open" : ""]"
@@ -222,7 +222,7 @@
/obj/effect/vr_clean_master/Initialize()
. = ..()
vr_area = get_area(src)
addtimer(CALLBACK(src, .proc/clean_up), 3 MINUTES)
addtimer(CALLBACK(src,PROC_REF(clean_up)), 3 MINUTES)
/obj/effect/vr_clean_master/proc/clean_up()
if (vr_area)
@@ -233,4 +233,4 @@
for (var/mob/living/carbon/human/virtual_reality/H in vr_area)
if (H.stat == DEAD && !H.vr_sleeper && !H.real_mind)
qdel(H)
addtimer(CALLBACK(src, .proc/clean_up), 3 MINUTES)
addtimer(CALLBACK(src,PROC_REF(clean_up)), 3 MINUTES)
+2 -2
View File
@@ -712,9 +712,9 @@
var/ghostcandidates = list()
for (var/j in 1 to min(prefs["amount"]["value"], length(candidates)))
ghostcandidates += pick_n_take(candidates)
addtimer(CALLBACK(GLOBAL_PROC, .proc/doPortalSpawn, get_random_station_turf(), pathToSpawn, length(ghostcandidates), storm, ghostcandidates, outfit), i*prefs["delay"]["value"])
addtimer(CALLBACK(GLOBAL_PROC_REF(doPortalSpawn), get_random_station_turf(), pathToSpawn, length(ghostcandidates), storm, ghostcandidates, outfit), i*prefs["delay"]["value"])
else if (prefs["playersonly"]["value"] != "Yes")
addtimer(CALLBACK(GLOBAL_PROC, .proc/doPortalSpawn, get_random_station_turf(), pathToSpawn, prefs["amount"]["value"], storm, null, outfit), i*prefs["delay"]["value"])
addtimer(CALLBACK(GLOBAL_PROC_REF(doPortalSpawn), get_random_station_turf(), pathToSpawn, prefs["amount"]["value"], storm, null, outfit), i*prefs["delay"]["value"])
if(E)
E.processing = FALSE
+1 -1
View File
@@ -454,7 +454,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/SDQL2_VV_all, new(null
ENABLE_BITFIELD(options, SDQL2_OPTION_DO_NOT_AUTOGC)
/datum/SDQL2_query/proc/ARun()
INVOKE_ASYNC(src, .proc/Run)
INVOKE_ASYNC(src,PROC_REF(Run))
/datum/SDQL2_query/proc/Run()
if(SDQL2_IS_RUNNING)
+2 -2
View File
@@ -347,9 +347,9 @@
ertemplate = new /datum/ert/centcom_official
var/list/settings = list(
"preview_callback" = CALLBACK(src, .proc/makeERTPreviewIcon),
"preview_callback" = CALLBACK(src,PROC_REF(makeERTPreviewIcon)),
"mainsettings" = list(
"template" = list("desc" = "Template", "callback" = CALLBACK(src, .proc/makeERTTemplateModified), "type" = "datum", "path" = "/datum/ert", "subtypesonly" = TRUE, "value" = ertemplate.type),
"template" = list("desc" = "Template", "callback" = CALLBACK(src,PROC_REF(makeERTTemplateModified)), "type" = "datum", "path" = "/datum/ert", "subtypesonly" = TRUE, "value" = ertemplate.type),
"teamsize" = list("desc" = "Team Size", "type" = "number", "value" = ertemplate.teamsize),
"mission" = list("desc" = "Mission", "type" = "string", "value" = ertemplate.mission),
"polldesc" = list("desc" = "Ghost poll description", "type" = "string", "value" = ertemplate.polldesc),
@@ -56,7 +56,7 @@
log_admin("[key_name(user)] sent an abductor mind control message to [key_name(owner)]: [command]")
update_gland_hud()
addtimer(CALLBACK(src, .proc/clear_mind_control), mind_control_duration)
addtimer(CALLBACK(src,PROC_REF(clear_mind_control)), mind_control_duration)
/obj/item/organ/heart/gland/proc/clear_mind_control()
if(!ownerCheck() || !active_mind_control)
@@ -298,7 +298,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, 1, -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, TESLA_MOB_DAMAGE | TESLA_OBJ_DAMAGE | TESLA_MOB_STUN)
@@ -334,8 +334,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_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)
@@ -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,7 +23,7 @@
if(overmind)
update_icon()
point_rate = new_rate
addtimer(CALLBACK(src, .proc/generate_announcement), 1800)
addtimer(CALLBACK(src,PROC_REF(generate_announcement)), 1800)
. = ..()
/obj/structure/blob/core/proc/generate_announcement()
@@ -93,7 +93,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)
if(!victory_in_progress && max_count < blobs_legit.len)
max_count = blobs_legit.len
@@ -140,7 +140,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,0,1,extra_checks=CALLBACK(src, .proc/ContinueActive, user, target)))//sleep(10)
if (!do_mob(user, target, feed_time,0,1,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
@@ -201,7 +201,7 @@
//user.mobility_flags &= ~MOBILITY_MOVE // user.canmove = 0 // Prevents spilling blood accidentally.
// Abort? A bloody mistake.
if (!do_mob(user, target, 20, 0, 0, extra_checks=CALLBACK(src, .proc/ContinueActive, user, target)))
if (!do_mob(user, target, 20, 0, 0, extra_checks=CALLBACK(src,PROC_REF(ContinueActive), user, target)))
// May have disabled Feed during do_mob
if (!active || !ContinueActive(user, target))
break
@@ -59,7 +59,7 @@
// CAUSES: Target has their back to me, I'm invisible, or I'm in a Closet
// Step One: Heatseek toward Target's Turf
addtimer(CALLBACK(owner, .proc/_walk, 0), 2 SECONDS)
addtimer(CALLBACK(owner,PROC_REF(_walk), 0), 2 SECONDS)
target.playsound_local(get_turf(owner), 'sound/bloodsucker/lunge_warn.ogg', 60, FALSE, pressure_affected = FALSE) // target-only telegraphing
owner.playsound_local(owner, 'sound/bloodsucker/lunge_warn.ogg', 60, FALSE, pressure_affected = FALSE) // audio feedback to the user
if(do_mob(owner, owner, 6, TRUE, TRUE))
@@ -91,7 +91,7 @@
target.Stun(40) //Utterly useless without this, its okay since there are so many checks to go through
target.apply_status_effect(STATUS_EFFECT_MESMERIZE, 45) //So you cant rotate with combat mode, plus fancy status alert
if(do_mob(user, target, 40, 0, TRUE, extra_checks = CALLBACK(src, .proc/ContinueActive, user, target)))
if(do_mob(user, target, 40, 0, TRUE, extra_checks = CALLBACK(src,PROC_REF(ContinueActive), user, target)))
PowerActivatedSuccessfully() // PAY COST! BEGIN COOLDOWN!
var/power_time = 90 + level_current * 12
target.apply_status_effect(STATUS_EFFECT_MESMERIZE, power_time + 80)
@@ -23,7 +23,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.wear_suit && user.wear_suit.breakouttime && !used)
@@ -32,7 +32,7 @@
return 0
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
@@ -42,7 +42,7 @@
return 0
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)
@@ -51,7 +51,7 @@
return 0
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
@@ -20,7 +20,7 @@
user.update_stat()
user.update_canmove()
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
/obj/effect/proc_holder/changeling/fakedeath/proc/ready_to_regenerate(mob/user)
@@ -384,12 +384,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 1
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 1
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>")
@@ -29,7 +29,7 @@
user.Knockdown(60)
user.emote("gasp")
INVOKE_ASYNC(src, .proc/muscle_loop, user)
INVOKE_ASYNC(src,PROC_REF(muscle_loop), user)
return TRUE
@@ -155,7 +155,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
/obj/effect/proc_holder/changeling/sting/false_armblade/proc/remove_fake(mob/target, obj/item/melee/arm_blade/false/blade)
@@ -35,7 +35,7 @@
/obj/effect/clockwork/overlay/wall/Initialize()
. = ..()
queue_smooth_neighbors(src)
addtimer(CALLBACK(GLOBAL_PROC, .proc/queue_smooth, src), 1)
addtimer(CALLBACK(GLOBAL_PROC_REF(queue_smooth), src), 1)
/obj/effect/clockwork/overlay/wall/Destroy()
queue_smooth_neighbors(src)
@@ -212,7 +212,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))
@@ -17,7 +17,7 @@
/obj/effect/clockwork/spatial_gateway/Initialize()
. = ..()
addtimer(CALLBACK(src, .proc/check_setup), 1)
addtimer(CALLBACK(src,PROC_REF(check_setup)), 1)
/obj/effect/clockwork/spatial_gateway/Destroy()
deltimer(timerid)
@@ -155,7 +155,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()
@@ -119,7 +119,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)
. = list()
@@ -490,7 +490,7 @@
if("toggle")
recollecting = !recollecting
if("recite")
INVOKE_ASYNC(src, .proc/recite_scripture, text2path(params["category"]), usr, FALSE)
INVOKE_ASYNC(src,PROC_REF(recite_scripture), text2path(params["category"]), usr, FALSE)
if("select")
selected_scripture = params["category"]
if("bind")
@@ -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"]
@@ -153,7 +153,7 @@ Applications: 8 servants, 3 caches, and 100 CV
if(!channel_time)
return TRUE
chant()
if(!do_after(invoker, channel_time, target = invoker, extra_checks = CALLBACK(src, .proc/check_special_requirements)))
if(!do_after(invoker, channel_time, target = invoker, extra_checks = CALLBACK(src,PROC_REF(check_special_requirements))))
slab.busy = null
chanting = FALSE
scripture_fail()
@@ -200,7 +200,7 @@ Applications: 8 servants, 3 caches, and 100 CV
/datum/clockwork_scripture/channeled/scripture_effects()
for(var/i in 1 to chant_amount)
if(!do_after(invoker, chant_interval, target = invoker, extra_checks = CALLBACK(src, .proc/can_recite)))
if(!do_after(invoker, chant_interval, target = invoker, extra_checks = CALLBACK(src,PROC_REF(can_recite))))
break
clockwork_say(invoker, text2ratvar(pick(chant_invocations)), whispered)
if(!chant_effects(i))
@@ -113,7 +113,7 @@
/datum/clockwork_scripture/create_object/construct/clockwork_marauder/scripture_effects()
. = ..()
recent_marauders++
addtimer(CALLBACK(GLOBAL_PROC, .proc/marauder_reset),MARAUDER_SCRIPTURE_SCALING_THRESHOLD)
addtimer(CALLBACK(GLOBAL_PROC_REF(marauder_reset)),MARAUDER_SCRIPTURE_SCALING_THRESHOLD)
/proc/marauder_reset()
var/datum/clockwork_scripture/create_object/construct/clockwork_marauder/CM = new()
@@ -75,7 +75,7 @@
var/turf/T = get_turf(M)
if(is_servant_of_ratvar(M) || isobserver(M) || (T && T.z == z))
M.playsound_local(M, 'sound/magic/clockwork/ark_activation_sequence.ogg', 30, FALSE, pressure_affected = FALSE)
addtimer(CALLBACK(src, .proc/let_slip_the_dogs), 300)
addtimer(CALLBACK(src,PROC_REF(let_slip_the_dogs)), 300)
/obj/structure/destructible/clockwork/massive/celestial_gateway/proc/let_slip_the_dogs()
spawn_animation()
@@ -123,7 +123,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)
@@ -300,7 +300,7 @@
if(-INFINITY to GATEWAY_REEBE_FOUND)
if(!second_sound_played)
for(var/V in GLOB.generic_event_spawns)
addtimer(CALLBACK(src, .proc/open_portal, get_turf(V)), rand(100, 600))
addtimer(CALLBACK(src,PROC_REF(open_portal), get_turf(V)), rand(100, 600))
sound_to_playing_players('sound/magic/clockwork/invoke_general.ogg', 30, FALSE)
sound_to_playing_players(volume = 20, channel = CHANNEL_JUSTICAR_ARK, S = sound('sound/effects/clockcult_gateway_charging.ogg', TRUE))
second_sound_played = TRUE
@@ -84,7 +84,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)
@@ -22,7 +22,7 @@
/obj/structure/destructible/clockwork/reflector/ComponentInitialize()
. = ..()
AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE | ROTATION_COUNTERCLOCKWISE | ROTATION_VERBS ,null,CALLBACK(src, .proc/can_be_rotated),CALLBACK(src,.proc/after_rotation))
AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE | ROTATION_COUNTERCLOCKWISE | ROTATION_VERBS ,null,CALLBACK(src,PROC_REF(can_be_rotated),CALLBACK(src,.proc/after_rotation)))
/obj/structure/destructible/clockwork/reflector/bullet_act(obj/item/projectile/P)
if(!anchored || !allowed_projectile_typecache[P.type] || !(P.dir in GLOB.cardinals))
@@ -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>")
+2 -2
View File
@@ -295,7 +295,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)
@@ -303,7 +303,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
@@ -110,7 +110,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)
@@ -157,7 +157,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)
@@ -281,7 +281,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)
@@ -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()
. = ..()
@@ -263,7 +263,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()
@@ -302,7 +302,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>")
@@ -466,7 +466,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)
@@ -500,7 +500,7 @@
/obj/machinery/nuclearbomb/proc/really_actually_explode(off_station)
Cinematic(get_cinematic_type(off_station),world,CALLBACK(SSticker,/datum/controller/subsystem/ticker/proc/station_explosion_detonation,src))
INVOKE_ASYNC(GLOBAL_PROC,.proc/KillEveryoneOnZLevel, z)
INVOKE_ASYNC(GLOBAL_PROC_REF(KillEveryoneOnZLevel), z)
/obj/machinery/nuclearbomb/proc/get_cinematic_type(off_station)
if(off_station < 2)
@@ -544,10 +544,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
@@ -707,7 +707,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, 1)
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()
@@ -188,7 +188,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
@@ -342,7 +342,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)
@@ -190,7 +190,7 @@
/obj/effect/proc_holder/spell/aoe_turf/revenant/overload/cast(list/targets, mob/living/simple_animal/revenant/user = usr)
if(attempt_cast(user))
for(var/turf/T in targets)
INVOKE_ASYNC(src, .proc/overload, T, user)
INVOKE_ASYNC(src,PROC_REF(overload), T, user)
/obj/effect/proc_holder/spell/aoe_turf/revenant/overload/proc/overload(turf/T, mob/user)
for(var/obj/machinery/light/L in T)
@@ -201,7 +201,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
@@ -231,7 +231,7 @@
/obj/effect/proc_holder/spell/aoe_turf/revenant/defile/cast(list/targets, mob/living/simple_animal/revenant/user = usr)
if(attempt_cast(user))
for(var/turf/T in targets)
INVOKE_ASYNC(src, .proc/defile, T)
INVOKE_ASYNC(src,PROC_REF(defile), T)
/obj/effect/proc_holder/spell/aoe_turf/revenant/defile/proc/defile(turf/T)
for(var/obj/effect/blessing/B in T)
@@ -282,7 +282,7 @@
/obj/effect/proc_holder/spell/aoe_turf/revenant/malfunction/cast(list/targets, mob/living/simple_animal/revenant/user = usr)
if(attempt_cast(user))
for(var/turf/T in targets)
INVOKE_ASYNC(src, .proc/malfunction, T, user)
INVOKE_ASYNC(src,PROC_REF(malfunction), T, user)
/obj/effect/proc_holder/spell/aoe_turf/revenant/malfunction/proc/malfunction(turf/T, mob/user)
for(var/mob/living/simple_animal/bot/bot in T)
@@ -328,7 +328,7 @@
/obj/effect/proc_holder/spell/aoe_turf/revenant/blight/cast(list/targets, mob/living/simple_animal/revenant/user = usr)
if(attempt_cast(user))
for(var/turf/T in targets)
INVOKE_ASYNC(src, .proc/blight, T, user)
INVOKE_ASYNC(src,PROC_REF(blight), T, user)
/obj/effect/proc_holder/spell/aoe_turf/revenant/blight/proc/blight(turf/T, mob/user)
for(var/mob/living/mob in T)
@@ -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))
@@ -233,7 +233,7 @@
if(isAI(M) && traitor_kind == TRAITOR_AI)
var/mob/living/silicon/ai/A = M
A.hack_software = TRUE
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)
. = ..()
@@ -242,7 +242,7 @@
if(isAI(M) && traitor_kind == TRAITOR_AI)
var/mob/living/silicon/ai/A = M
A.hack_software = FALSE
UnregisterSignal(M, COMSIG_MOVABLE_HEAR, .proc/handle_hearing)
UnregisterSignal(M, COMSIG_MOVABLE_HEAR,PROC_REF(handle_hearing))
/datum/antagonist/traitor/proc/give_codewords()
if(!owner.current)
+2 -2
View File
@@ -57,9 +57,9 @@
//Called when another assembly acts on this one, var/radio will determine where it came from for wire calcs
/obj/item/assembly/proc/pulsed(radio = FALSE)
if(wire_type & WIRE_RECEIVE)
INVOKE_ASYNC(src, .proc/activate)
INVOKE_ASYNC(src,PROC_REF(activate))
if(radio && (wire_type & WIRE_RADIO_RECEIVE))
INVOKE_ASYNC(src, .proc/activate)
INVOKE_ASYNC(src,PROC_REF(activate))
return TRUE
+6 -6
View File
@@ -19,7 +19,7 @@
if(M.id == src.id)
if(openclose == null)
openclose = M.density
INVOKE_ASYNC(M, openclose ? /obj/machinery/door/poddoor.proc/open : /obj/machinery/door/poddoor.proc/close)
INVOKE_ASYNC(M, (openclose ? TYPE_PROC_REF(/obj/machinery/door/poddoor,open) : TYPE_PROC_REF(/obj/machinery/door/poddoor,close)))
addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 10)
@@ -63,7 +63,7 @@
D.safe = !D.safe
for(var/D in open_or_close)
INVOKE_ASYNC(D, doors_need_closing ? /obj/machinery/door/airlock.proc/close : /obj/machinery/door/airlock.proc/open)
INVOKE_ASYNC(D, (doors_need_closing ? TYPE_PROC_REF(/obj/machinery/door/airlock,close) : TYPE_PROC_REF(/obj/machinery/door/airlock,open)))
addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 10)
@@ -76,7 +76,7 @@
cooldown = TRUE
for(var/obj/machinery/door/poddoor/M in GLOB.machines)
if (M.id == src.id)
INVOKE_ASYNC(M, /obj/machinery/door/poddoor.proc/open)
INVOKE_ASYNC(M, TYPE_PROC_REF(/obj/machinery/door/poddoor,open))
sleep(10)
@@ -88,7 +88,7 @@
for(var/obj/machinery/door/poddoor/M in GLOB.machines)
if (M.id == src.id)
INVOKE_ASYNC(M, /obj/machinery/door/poddoor.proc/close)
INVOKE_ASYNC(M, TYPE_PROC_REF(/obj/machinery/door/poddoor,close))
addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 10)
@@ -101,7 +101,7 @@
cooldown = TRUE
for(var/obj/machinery/sparker/M in GLOB.machines)
if (M.id == src.id)
INVOKE_ASYNC(M, /obj/machinery/sparker.proc/ignite)
INVOKE_ASYNC(M, TYPE_PROC_REF(/obj/machinery/sparker,ignite))
for(var/obj/machinery/igniter/M in GLOB.machines)
if(M.id == src.id)
@@ -119,7 +119,7 @@
cooldown = TRUE
for(var/obj/machinery/flasher/M in GLOB.machines)
if(M.id == src.id)
INVOKE_ASYNC(M, /obj/machinery/flasher.proc/flash)
INVOKE_ASYNC(M, TYPE_PROC_REF(/obj/machinery/flasher,flash))
addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 50)
+1 -1
View File
@@ -167,7 +167,7 @@
return
if(listeningTo)
UnregisterSignal(listeningTo, COMSIG_ATOM_EXITED)
RegisterSignal(newloc, COMSIG_ATOM_EXITED, .proc/check_exit)
RegisterSignal(newloc, COMSIG_ATOM_EXITED,PROC_REF(check_exit))
listeningTo = newloc
/obj/item/assembly/infra/proc/check_exit(datum/source, atom/movable/offender)
+1 -1
View File
@@ -71,7 +71,7 @@
return
switch(action)
if("signal")
INVOKE_ASYNC(src, .proc/signal)
INVOKE_ASYNC(src,PROC_REF(signal))
. = TRUE
if("freq")
frequency = unformat_frequency(params["freq"])
+1 -1
View File
@@ -14,7 +14,7 @@
/obj/item/assembly/timer/suicide_act(mob/living/user)
user.visible_message("<span class='suicide'>[user] looks at the timer and decides [user.p_their()] fate! It looks like [user.p_theyre()] going to commit suicide!</span>")
activate()//doesnt rely on timer_end to prevent weird metas where one person can control the timer and therefore someone's life. (maybe that should be how it works...)
addtimer(CALLBACK(src, .proc/manual_suicide, user), time*10)//kill yourself once the time runs out
addtimer(CALLBACK(src,PROC_REF(manual_suicide), user), time*10)//kill yourself once the time runs out
return MANUAL_SUICIDE
/obj/item/assembly/timer/proc/manual_suicide(mob/living/user)
+2 -2
View File
@@ -34,7 +34,7 @@
record_speech(speaker, raw_message, message_language)
else
if(check_activation(speaker, raw_message))
addtimer(CALLBACK(src, .proc/pulse, 0), 10)
addtimer(CALLBACK(src,PROC_REF(pulse), 0), 10)
/obj/item/assembly/voice/proc/record_speech(atom/movable/speaker, raw_message, datum/language/message_language)
switch(mode)
@@ -52,7 +52,7 @@
say("Your voice pattern is saved.", message_language)
if(VOICE_SENSOR_MODE)
if(length(raw_message))
addtimer(CALLBACK(src, .proc/pulse, 0), 10)
addtimer(CALLBACK(src,PROC_REF(pulse), 0), 10)
/obj/item/assembly/voice/proc/check_activation(atom/movable/speaker, raw_message)
. = FALSE
@@ -48,7 +48,7 @@ It's like a regular ol' straight pipe, but you can turn it on and off.
return
update_icon_nopipes(TRUE)
switching = TRUE
addtimer(CALLBACK(src, .proc/finish_interact), 10)
addtimer(CALLBACK(src,PROC_REF(finish_interact)), 10)
/obj/machinery/atmospherics/components/binary/valve/proc/finish_interact()
toggle()
@@ -142,7 +142,7 @@
occupant_overlay.pixel_y--
add_overlay(occupant_overlay)
add_overlay("cover-on")
addtimer(CALLBACK(src, .proc/run_anim, anim_up, occupant_overlay), 7, TIMER_UNIQUE)
addtimer(CALLBACK(src,PROC_REF(run_anim), anim_up, occupant_overlay), 7, TIMER_UNIQUE)
/obj/machinery/atmospherics/components/unary/cryo_cell/process()
..()
@@ -254,7 +254,7 @@
var/turf/T = get_turf(body)
new /obj/effect/ctf/ammo(T)
recently_dead_ckeys += body.ckey
addtimer(CALLBACK(src, .proc/clear_cooldown, body.ckey), respawn_cooldown, TIMER_UNIQUE)
addtimer(CALLBACK(src,PROC_REF(clear_cooldown), body.ckey), respawn_cooldown, TIMER_UNIQUE)
body.dust()
/obj/machinery/capture_the_flag/proc/clear_cooldown(var/ckey)
@@ -378,7 +378,7 @@
/obj/item/gun/ballistic/automatic/pistol/deagle/ctf/dropped()
. = ..()
addtimer(CALLBACK(src, .proc/floor_vanish), 1)
addtimer(CALLBACK(src,PROC_REF(floor_vanish)), 1)
/obj/item/gun/ballistic/automatic/pistol/deagle/ctf/proc/floor_vanish()
if(isturf(loc))
@@ -405,7 +405,7 @@
/obj/item/gun/ballistic/automatic/laser/ctf/dropped()
. = ..()
addtimer(CALLBACK(src, .proc/floor_vanish), 1)
addtimer(CALLBACK(src,PROC_REF(floor_vanish)), 1)
/obj/item/gun/ballistic/automatic/laser/ctf/proc/floor_vanish()
if(isturf(loc))
@@ -416,7 +416,7 @@
/obj/item/ammo_box/magazine/recharge/ctf/dropped()
. = ..()
addtimer(CALLBACK(src, .proc/floor_vanish), 1)
addtimer(CALLBACK(src,PROC_REF(floor_vanish)), 1)
/obj/item/ammo_box/magazine/recharge/ctf/proc/floor_vanish()
if(isturf(loc))
+1 -1
View File
@@ -89,7 +89,7 @@
return
/obj/effect/mob_spawn/proc/delayusability(deciseconds, showOnMenu) //How many deciseconds until it is enabled, + should it show up on the menu?
addtimer(CALLBACK(src, .proc/enableghostrole, showOnMenu), deciseconds)
addtimer(CALLBACK(src,PROC_REF(enableghostrole), showOnMenu), deciseconds)
/obj/effect/mob_spawn/proc/enableghostrole(show)
ghost_usable = TRUE
@@ -29,7 +29,7 @@
/obj/item/clothing/head/rice_hat/cursed/equipped(mob/M, slot)
. = ..()
if (slot == SLOT_HEAD)
RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech)
RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech))
else
UnregisterSignal(M, COMSIG_MOB_SAY)
@@ -28,7 +28,7 @@
/obj/effect/murderdome/dead_barricade/Initialize()
. = ..()
addtimer(CALLBACK(src, .proc/respawn), 3 MINUTES)
addtimer(CALLBACK(src,PROC_REF(respawn)), 3 MINUTES)
/obj/effect/murderdome/dead_barricade/proc/respawn()
if(!QDELETED(src))
+1 -1
View File
@@ -27,7 +27,7 @@
mode = new /datum/buildmode_mode/basic(src)
holder = c
buttons = list()
li_cb = CALLBACK(src, .proc/post_login)
li_cb = CALLBACK(src,PROC_REF(post_login))
holder.player_details.post_login_callbacks += li_cb
holder.show_popup_menus = FALSE
create_buttons()
+1 -1
View File
@@ -61,7 +61,7 @@
/mob/living/simple_animal/pet/gondola/gondolapod/proc/setOpened()
opened = TRUE
update_icon()
addtimer(CALLBACK(src, .proc/setClosed), 50)
addtimer(CALLBACK(src,PROC_REF(setClosed)), 50)
/mob/living/simple_animal/pet/gondola/gondolapod/proc/setClosed()
opened = FALSE
+1 -1
View File
@@ -562,7 +562,7 @@
anomalous_box_provided = TRUE
log_game("An anomalous pizza box was provided in a pizza crate at during cargo delivery")
if(prob(50))
addtimer(CALLBACK(src, .proc/anomalous_pizza_report), rand(300, 1800))
addtimer(CALLBACK(src,PROC_REF(anomalous_pizza_report)), rand(300, 1800))
else
message_admins("An anomalous pizza box was silently created with no command report in a pizza crate delivery.")
break
+8 -8
View File
@@ -142,9 +142,9 @@
var/mob/living/simple_animal/pet/gondola/gondolapod/benis = new(get_turf(src), src)
benis.contents |= contents //Move the contents of this supplypod into the gondolapod mob.
moveToNullspace()
addtimer(CALLBACK(src, .proc/open, benis), openingDelay) //After the openingDelay passes, we use the open proc from this supplyprod while referencing the contents of the "holder", in this case the gondolapod mob
addtimer(CALLBACK(src,PROC_REF(open), benis), openingDelay) //After the openingDelay passes, we use the open proc from this supplyprod while referencing the contents of the "holder", in this case the gondolapod mob
else
addtimer(CALLBACK(src, .proc/open, src), openingDelay) //After the openingDelay passes, we use the open proc from this supplypod, while referencing this supplypod's contents
addtimer(CALLBACK(src,PROC_REF(open), src), openingDelay) //After the openingDelay passes, we use the open proc from this supplypod, while referencing this supplypod's contents
/obj/structure/closet/supplypod/open(atom/movable/holder, var/broken = FALSE, var/forced = FALSE) //The holder var represents an atom whose contents we will be working with
var/turf/T = get_turf(holder) //Get the turf of whoever's contents we're talking about
@@ -160,7 +160,7 @@
return
if (openingSound)
playsound(get_turf(holder), openingSound, soundVolume, 0, 0) //Special admin sound to play
INVOKE_ASYNC(holder, .proc/setOpened) //Use the INVOKE_ASYNC proc to call setOpened() on whatever the holder may be, without giving the atom/movable base class a setOpened() proc definition
INVOKE_ASYNC(holder,PROC_REF(setOpened)) //Use the INVOKE_ASYNC proc to call setOpened() on whatever the holder may be, without giving the atom/movable base class a setOpened() proc definition
if (style == STYLE_SEETHROUGH)
update_icon()
for (var/atom/movable/O in holder.contents) //Go through the contents of the holder
@@ -172,7 +172,7 @@
if (style == STYLE_SEETHROUGH)
depart(src)
else
addtimer(CALLBACK(src, .proc/depart, holder), departureDelay) //Finish up the pod's duties after a certain amount of time
addtimer(CALLBACK(src,PROC_REF(depart), holder), departureDelay) //Finish up the pod's duties after a certain amount of time
/obj/structure/closet/supplypod/proc/depart(atom/movable/holder)
if (leavingSound)
@@ -188,7 +188,7 @@
/obj/structure/closet/supplypod/centcompod/close(atom/movable/holder) //Closes the supplypod and sends it back to centcom. Should only ever be called if the "reversing" variable is true
opened = FALSE
INVOKE_ASYNC(holder, .proc/setClosed) //Use the INVOKE_ASYNC proc to call setClosed() on whatever the holder may be, without giving the atom/movable base class a setClosed() proc definition
INVOKE_ASYNC(holder,PROC_REF(setClosed)) //Use the INVOKE_ASYNC proc to call setClosed() on whatever the holder may be, without giving the atom/movable base class a setClosed() proc definition
for (var/atom/movable/O in get_turf(holder))
if (ismob(O) && !isliving(O)) //We dont want to take ghosts with us
continue
@@ -272,8 +272,8 @@
if (soundStartTime < 0)
soundStartTime = 1
if (!pod.effectQuiet)
addtimer(CALLBACK(src, .proc/playFallingSound), soundStartTime)
addtimer(CALLBACK(src, .proc/beginLaunch, pod.effectCircle), pod.landingDelay)
addtimer(CALLBACK(src,PROC_REF(playFallingSound)), soundStartTime)
addtimer(CALLBACK(src,PROC_REF(beginLaunch), pod.effectCircle), pod.landingDelay)
/obj/effect/abstract/DPtarget/proc/playFallingSound()
playsound(src, pod.fallingSound, pod.soundVolume, 1, 6)
@@ -291,7 +291,7 @@
M.Turn(rotation) //Turn the matrix
pod.transform = M //Turn the actual pod (Won't be visible until endLaunch() proc tho)
animate(fallingPod, pixel_z = 0, pixel_x = -16, time = pod.fallDuration, , easing = LINEAR_EASING) //Make the pod fall! At an angle!
addtimer(CALLBACK(src, .proc/endLaunch), pod.fallDuration, TIMER_CLIENT_TIME) //Go onto the last step after a very short falling animation
addtimer(CALLBACK(src,PROC_REF(endLaunch)), pod.fallDuration, TIMER_CLIENT_TIME) //Go onto the last step after a very short falling animation
/obj/effect/abstract/DPtarget/proc/endLaunch()
pod.update_icon()
+1 -1
View File
@@ -23,7 +23,7 @@
launched = TRUE
playsound(src,'sound/machines/triple_beep.ogg',50,0)
playsound(src,'sound/machines/warning-buzzer.ogg',50,0)
addtimer(CALLBACK(src, .proc/endLaunch), 33)//wait 3.3 seconds (time it takes for supplypod to land), then update icon
addtimer(CALLBACK(src,PROC_REF(endLaunch)), 33)//wait 3.3 seconds (time it takes for supplypod to land), then update icon
if (SP_UNLINK)
linked = FALSE
playsound(src,'sound/machines/synth_no.ogg',50,0)
+1 -1
View File
@@ -844,7 +844,7 @@ GLOBAL_LIST_EMPTY(external_rsc_urls)
//Precache the client with all other assets slowly, so as to not block other browse() calls
getFilesSlow(src, SSassets.preload, register_asset = FALSE)
addtimer(CALLBACK(GLOBAL_PROC, /proc/getFilesSlow, src, SSassets.preload, FALSE), 5 SECONDS)
addtimer(CALLBACK(GLOBAL_PROC_REF(getFilesSlow), src, SSassets.preload, FALSE), 5 SECONDS)
#if (PRELOAD_RSC == 0)
for (var/name in GLOB.vox_sounds)
+1 -1
View File
@@ -199,7 +199,7 @@
/obj/item/clothing/head/warden/drill/equipped(mob/M, slot)
. = ..()
if (slot == SLOT_HEAD)
RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech)
RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech))
else
UnregisterSignal(M, COMSIG_MOB_SAY)
+1 -1
View File
@@ -386,7 +386,7 @@
/obj/item/clothing/head/frenchberet/equipped(mob/M, slot)
. = ..()
if (slot == SLOT_HEAD)
RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech)
RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech))
else
UnregisterSignal(M, COMSIG_MOB_SAY)
+1 -1
View File
@@ -244,7 +244,7 @@
/obj/item/clothing/head/foilhat/Initialize(mapload)
. = ..()
if(!warped)
AddComponent(/datum/component/anti_magic, FALSE, FALSE, TRUE, ITEM_SLOT_HEAD, 6, TRUE, null, CALLBACK(src, .proc/warp_up))
AddComponent(/datum/component/anti_magic, FALSE, FALSE, TRUE, ITEM_SLOT_HEAD, 6, TRUE, null, CALLBACK(src,PROC_REF(warp_up)))
else
warp_up()
+1 -1
View File
@@ -21,7 +21,7 @@
/obj/item/clothing/mask/equipped(mob/M, slot)
. = ..()
if (slot == SLOT_WEAR_MASK && modifies_speech)
RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech)
RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech))
else
UnregisterSignal(M, COMSIG_MOB_SAY)
if(!ishuman(M))
+2 -2
View File
@@ -360,13 +360,13 @@
return
active = TRUE
set_light(2, 3, rgb(rand(0,255),rand(0,255),rand(0,255)))
addtimer(CALLBACK(src, .proc/lightUp), 5)
addtimer(CALLBACK(src,PROC_REF(lightUp)), 5)
/obj/item/clothing/shoes/kindleKicks/proc/lightUp(mob/user)
if(lightCycle < 15)
set_light(2, 3, rgb(rand(0,255),rand(0,255),rand(0,255)))
lightCycle += 1
addtimer(CALLBACK(src, .proc/lightUp), 5)
addtimer(CALLBACK(src,PROC_REF(lightUp)), 5)
else
set_light(0)
lightCycle = 0
@@ -138,12 +138,12 @@
user.Stun(INFINITY)
animate(user, color = "#00ccee", time = 3)
phase_timer_id = addtimer(CALLBACK(src, .proc/phase_2, user, to_turf, phase_in_ds), 3, TIMER_STOPPABLE)
phase_timer_id = addtimer(CALLBACK(src,PROC_REF(phase_2), user, to_turf, phase_in_ds), 3, TIMER_STOPPABLE)
/obj/item/clothing/suit/space/chronos/proc/phase_2(mob/living/carbon/human/user, turf/to_turf, phase_in_ds)
if(teleporting && activated && user)
animate(user, alpha = 0, time = 2)
phase_timer_id = addtimer(CALLBACK(src, .proc/phase_3, user, to_turf, phase_in_ds), 2, TIMER_STOPPABLE)
phase_timer_id = addtimer(CALLBACK(src,PROC_REF(phase_3), user, to_turf, phase_in_ds), 2, TIMER_STOPPABLE)
else
finish_chronowalk(user, to_turf)
@@ -151,14 +151,14 @@
if(teleporting && activated && user)
user.forceMove(to_turf)
animate(user, alpha = 255, time = phase_in_ds)
phase_timer_id = addtimer(CALLBACK(src, .proc/phase_4, user, to_turf), phase_in_ds, TIMER_STOPPABLE)
phase_timer_id = addtimer(CALLBACK(src,PROC_REF(phase_4), user, to_turf), phase_in_ds, TIMER_STOPPABLE)
else
finish_chronowalk(user, to_turf)
/obj/item/clothing/suit/space/chronos/proc/phase_4(mob/living/carbon/human/user, turf/to_turf)
if(teleporting && activated && user)
animate(user, color = "#ffffff", time = 3)
phase_timer_id = addtimer(CALLBACK(src, .proc/finish_chronowalk, user, to_turf), 3, TIMER_STOPPABLE)
phase_timer_id = addtimer(CALLBACK(src,PROC_REF(finish_chronowalk), user, to_turf), 3, TIMER_STOPPABLE)
else
finish_chronowalk(user, to_turf)
@@ -110,7 +110,7 @@
wearer = changeto
LAZYADD(wearer.user_movement_hooks, src)
cached_pull = changeto.pulling
mobhook = changeto.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED), CALLBACK(src, .proc/on_mob_move, changeto))
mobhook = changeto.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED), CALLBACK(src,PROC_REF(on_mob_move), changeto))
/obj/item/flightpack/Initialize()
ion_trail = new
@@ -425,7 +425,7 @@
crashing = FALSE
/obj/item/flightpack/proc/door_pass(obj/structure/mineral_door/door)
INVOKE_ASYNC(door, /obj/structure/mineral_door.proc/Open)
INVOKE_ASYNC(door, TYPE_PROC_REF(/obj/structure/mineral_door,Open))
var/turf/T = get_turf(door)
wearer.forceMove(T)
wearer.visible_message("<span class='boldnotice'>[wearer] rolls to [wearer.p_their()] sides and slips past [door]!</span>")
@@ -445,7 +445,7 @@
if((!A.allowed(wearer)) && !A.emergency)
nopass = TRUE
if(!nopass)
INVOKE_ASYNC(A, /obj/machinery/door.proc/open)
INVOKE_ASYNC(A, TYPE_PROC_REF(/obj/machinery/door,open))
wearer.visible_message("<span class='warning'>[wearer] rolls sideways and slips past [A]</span>")
var/turf/target = get_turf(A)
if(istype(A, /obj/machinery/door/window) && (get_turf(wearer) == get_turf(A)))
@@ -536,7 +536,7 @@
return TRUE
usermessage("Warning: Velocity too high to safely disengage. Retry to confirm emergency shutoff.", "boldwarning")
override_safe = TRUE
addtimer(CALLBACK(src, .proc/enable_safe), 50)
addtimer(CALLBACK(src,PROC_REF(enable_safe)), 50)
return FALSE
/obj/item/flightpack/proc/enable_safe()
+1 -1
View File
@@ -680,7 +680,7 @@
return
if(listeningTo)
UnregisterSignal(listeningTo, COMSIG_MOVABLE_MOVED)
RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/on_mob_move)
RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(on_mob_move))
listeningTo = user
/obj/item/clothing/suit/space/hardsuit/ancient/dropped()
@@ -119,7 +119,7 @@
/obj/item/clothing/head/helmet/space/plasmaman/ComponentInitialize()
. = ..()
RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, .proc/wipe_that_smile_off_your_face)
RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT,PROC_REF(wipe_that_smile_off_your_face))
///gets called when receiving the CLEAN_ACT signal from something, i.e soap or a shower. exists to remove any smiley faces drawn on the helmet.
/obj/item/clothing/head/helmet/space/plasmaman/proc/wipe_that_smile_off_your_face()
+1 -1
View File
@@ -32,7 +32,7 @@
if(log.len && !scanning)
scanning = TRUE
to_chat(user, "<span class='notice'>Printing report, please wait...</span>")
addtimer(CALLBACK(src, .proc/PrintReport), 100)
addtimer(CALLBACK(src,PROC_REF(PrintReport)), 100)
else
to_chat(user, "<span class='notice'>The scanner has no logs or is in use.</span>")
+5 -5
View File
@@ -58,16 +58,16 @@
var/delay = 0
for(var/i in 1 to 50)
delay += 3
addtimer(CALLBACK(src, .proc/battleflashbacksthree), delay)
addtimer(CALLBACK(src,PROC_REF(battleflashbacksthree)), delay)
/datum/round_event/aurora_aquilae/announce()
priority_announce("[station_name()]: A ·#HARMLESS#· cloud of ·|$% GLORY AND GUTS¬€#· ions is approaching your ·|%$ station, and will exhaust their energy battering the hull. Central Command has approved a short break for all employees to relax and observe this very rare event. During this time, starlight will be bright but %%%BRUTAL·$ª, shifting between %$$%!ªTHE COMPLETE AND UTTER DESTRUCTION OF THE SENSES$ and %%THE ASHES OF THE GREAT AL-SHAIN%. Any staff who would like to view the %%PRESENCE OF A KING%$ for themselves may proceed to the nearest area with viewing ports to open space.",
sound = 'sound/misc/interference.ogg',
sender_override = "Kin]·|Aari$s Meteo%&rology DivD··isio#n")
addtimer(CALLBACK(src, .proc/flicker_lights), 5 SECONDS)
addtimer(CALLBACK(src, .proc/battleflashbacksone), 5 SECONDS)
addtimer(CALLBACK(src, .proc/break_lights), 90 SECONDS)
addtimer(CALLBACK(src, .proc/battleflashbackstwo), 140 SECONDS)
addtimer(CALLBACK(src,PROC_REF(flicker_lights)), 5 SECONDS)
addtimer(CALLBACK(src,PROC_REF(battleflashbacksone)), 5 SECONDS)
addtimer(CALLBACK(src,PROC_REF(break_lights)), 90 SECONDS)
addtimer(CALLBACK(src,PROC_REF(battleflashbackstwo)), 140 SECONDS)
/datum/round_event/aurora_aquilae/tick()
if(activeFor % 5 == 0)
+1 -1
View File
@@ -27,7 +27,7 @@
var/waittime = 300 * (2^retry)
message_admins("The event will not spawn a [role_name] until certain \
conditions are met. Waiting [waittime/10]s and then retrying.")
addtimer(CALLBACK(src, .proc/try_spawning, 0, ++retry), waittime)
addtimer(CALLBACK(src,PROC_REF(try_spawning), 0, ++retry), waittime)
return
if(status == MAP_ERROR)
+1 -1
View File
@@ -306,7 +306,7 @@
UnregisterSignal(listeningTo, COMSIG_MOVABLE_MOVED)
listeningTo = null
if(!istype(current) && operating)
RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/on_mob_move)
RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(on_mob_move))
listeningTo = user
setup_debug_field()
else if(!operating)
+1 -1
View File
@@ -77,6 +77,6 @@
dream_fragments.Cut(1,2)
to_chat(src, "<span class='notice'><i>... [next_message] ...</i></span>")
if(LAZYLEN(dream_fragments))
addtimer(CALLBACK(src, .proc/dream_sequence, dream_fragments), rand(10,30))
addtimer(CALLBACK(src,PROC_REF(dream_sequence), dream_fragments), rand(10,30))
else
dreaming = FALSE
@@ -467,7 +467,7 @@
/obj/item/reagent_containers/food/snacks/lollipop/cyborg/Initialize()
. = ..()
addtimer(CALLBACK(src, .proc/spamcheck), 1200)
addtimer(CALLBACK(src,PROC_REF(spamcheck)), 1200)
/obj/item/reagent_containers/food/snacks/lollipop/cyborg/equipped(mob/living/user, slot)
. = ..(user, slot)
@@ -495,7 +495,7 @@
/obj/item/reagent_containers/food/snacks/gumball/cyborg/Initialize()
. = ..()
addtimer(CALLBACK(src, .proc/spamcheck), 1200)
addtimer(CALLBACK(src,PROC_REF(spamcheck)), 1200)
/obj/item/reagent_containers/food/snacks/gumball/cyborg/equipped(mob/living/user, slot)
. = ..(user, slot)
@@ -188,7 +188,7 @@
mob_occupant.death(1)
mob_occupant.ghostize()
qdel(src.occupant)
addtimer(CALLBACK(src, .proc/make_meat, skin, allmeat, meat_produced, gibtype, diseases), gibtime)
addtimer(CALLBACK(src,PROC_REF(make_meat), skin, allmeat, meat_produced, gibtype, diseases), gibtime)
/obj/machinery/gibber/proc/make_meat(obj/item/stack/sheet/animalhide/skin, list/obj/item/reagent_containers/food/snacks/meat/slab/allmeat, meat_produced, gibtype, list/datum/disease/diseases)
playsound(src.loc, 'sound/effects/splat.ogg', 50, 1)
@@ -309,7 +309,7 @@
return
time--
use_power(500)
addtimer(CALLBACK(src, .proc/loop, type, time, wait), wait)
addtimer(CALLBACK(src,PROC_REF(loop), type, time, wait), wait)
/obj/machinery/microwave/proc/loop_finish()
operating = FALSE
@@ -77,7 +77,7 @@ GLOBAL_LIST_EMPTY(monkey_recyclers)
use_power(500)
stored_matter += cube_production
addtimer(VARSET_CALLBACK(src, pixel_x, initial(pixel_x)))
addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, user, "<span class='notice'>The machine now has [stored_matter] monkey\s worth of material stored.</span>"))
addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), user, "<span class='notice'>The machine now has [stored_matter] monkey\s worth of material stored.</span>"))
/obj/machinery/monkey_recycler/interact(mob/user)
if(stored_matter >= 1)
+1 -1
View File
@@ -478,7 +478,7 @@ Since Ramadan is an entire month that lasts 29.5 days on average, the start and
return "Have a merry Christmas!"
/datum/holiday/xmas/celebrate()
SSticker.OnRoundstart(CALLBACK(src, .proc/roundstart_celebrate))
SSticker.OnRoundstart(CALLBACK(src,PROC_REF(roundstart_celebrate)))
/datum/holiday/xmas/proc/roundstart_celebrate()
for(var/obj/machinery/computer/security/telescreen/entertainment/Monitor in GLOB.machines)
+3 -3
View File
@@ -197,7 +197,7 @@
if(toggleOn)
if(last_program && last_program != offline_program)
addtimer(CALLBACK(src, .proc/load_program, last_program, TRUE), 25)
addtimer(CALLBACK(src,PROC_REF(load_program), last_program, TRUE), 25)
active = TRUE
else
last_program = program
@@ -257,7 +257,7 @@
S.flags_1 |= NODECONSTRUCT_1
effects = list()
addtimer(CALLBACK(src, .proc/finish_spawn), 30)
addtimer(CALLBACK(src,PROC_REF(finish_spawn)), 30)
/obj/machinery/computer/holodeck/proc/finish_spawn()
var/list/added = list()
@@ -277,7 +277,7 @@
// Emagging a machine creates an anomaly in the derez systems.
if(O && (obj_flags & EMAGGED) && !stat && !forced)
if((ismob(O) || ismob(O.loc)) && prob(50))
addtimer(CALLBACK(src, .proc/derez, O, silent), 50) // may last a disturbingly long time
addtimer(CALLBACK(src,PROC_REF(derez), O, silent), 50) // may last a disturbingly long time
return
spawned -= O
@@ -49,7 +49,7 @@
to_chat(user, "<span class='warning'>[I] is stuck to your hand!</span>")
return TRUE
to_chat(user, "<span class='notice'>You place [I] into [src] to start the fermentation process.</span>")
addtimer(CALLBACK(src, .proc/makeWine, fruit), rand(80, 120) * speed_multiplier)
addtimer(CALLBACK(src,PROC_REF(makeWine), fruit), rand(80, 120) * speed_multiplier)
return TRUE
else
switch (I.tool_behaviour)
+1 -1
View File
@@ -161,7 +161,7 @@
C.throw_mode_on()
icon_state = "firelemon_active"
playsound(loc, 'sound/weapons/armbomb.ogg', 75, 1, -3)
addtimer(CALLBACK(src, .proc/prime), rand(10, 60))
addtimer(CALLBACK(src,PROC_REF(prime)), rand(10, 60))
/obj/item/reagent_containers/food/snacks/grown/firelemon/burn()
prime()
+1 -1
View File
@@ -64,7 +64,7 @@
var/uses = 1
if(seed)
uses = round(seed.potency / 20)
AddComponent(/datum/component/anti_magic, TRUE, TRUE, FALSE, ITEM_SLOT_HANDS, uses, TRUE, CALLBACK(src, .proc/block_magic), CALLBACK(src, .proc/expire)) //deliver us from evil o melon god
AddComponent(/datum/component/anti_magic, TRUE, TRUE, FALSE, ITEM_SLOT_HANDS, uses, TRUE, CALLBACK(src,PROC_REF(block_magic)), CALLBACK(src,PROC_REF(expire))) //deliver us from evil o melon god
/obj/item/reagent_containers/food/snacks/grown/holymelon/proc/block_magic(mob/user, major)
if(major)
+1 -1
View File
@@ -39,7 +39,7 @@
/obj/machinery/hydroponics/constructable/ComponentInitialize()
. = ..()
AddComponent(/datum/component/simple_rotation, ROTATION_ALTCLICK | ROTATION_CLOCKWISE | ROTATION_COUNTERCLOCKWISE | ROTATION_VERBS, null, CALLBACK(src, .proc/can_be_rotated))
AddComponent(/datum/component/simple_rotation, ROTATION_ALTCLICK | ROTATION_CLOCKWISE | ROTATION_COUNTERCLOCKWISE | ROTATION_VERBS, null, CALLBACK(src,PROC_REF(can_be_rotated)))
/obj/machinery/hydroponics/constructable/proc/can_be_rotated(mob/user, rotation_type)
return !anchored
+1 -1
View File
@@ -250,7 +250,7 @@
if(!istype(G, /obj/item/grown/bananapeel) && (!G.reagents || !G.reagents.has_reagent(/datum/reagent/lube)))
stun_len /= 3
G.AddComponent(/datum/component/slippery, min(stun_len,140), NONE, CALLBACK(src, .proc/handle_slip, G))
G.AddComponent(/datum/component/slippery, min(stun_len,140), NONE, CALLBACK(src,PROC_REF(handle_slip), G))
/datum/plant_gene/trait/slip/proc/handle_slip(obj/item/reagent_containers/food/snacks/grown/G, mob/M)
for(var/datum/plant_gene/trait/T in G.seed.genes)
@@ -286,7 +286,7 @@
to_chat(usr, "<span class='notice'>You begin printing a custom assembly. This will take approximately [DisplayTimeText(cloning_time)]. You can still print \
off normal parts during this time.</span>")
playsound(src, 'sound/items/poster_being_created.ogg', 50, TRUE)
addtimer(CALLBACK(src, .proc/print_program, usr), cloning_time)
addtimer(CALLBACK(src,PROC_REF(print_program), usr), cloning_time)
if("cancel")
if(!cloning || !program)
@@ -339,7 +339,7 @@
assembly.visible_message("<span class='danger'>[assembly] has thrown [A]!</span>")
log_attack("[assembly] [REF(assembly)] has thrown [A] with non-lethal force.")
A.forceMove(drop_location())
A.throw_at(locate(x_abs, y_abs, T.z), range, 3, null, null, null, CALLBACK(src, .proc/post_throw, A))
A.throw_at(locate(x_abs, y_abs, T.z), range, 3, null, null, null, CALLBACK(src,PROC_REF(post_throw), A))
// If the item came from a grabber now we can update the outputs since we've thrown it.
if(istype(G))
@@ -413,8 +413,8 @@
MAT_METAL, MAT_GLASS, MAT_SILVER, MAT_GOLD, MAT_DIAMOND, MAT_PLASMA,
MAT_URANIUM, MAT_BANANIUM, MAT_CALORITE, MAT_TITANIUM, MAT_BLUESPACE),
0, FALSE, /obj/item/stack,
CALLBACK(src, .proc/is_insertion_ready),
CALLBACK(src, .proc/AfterMaterialInsert))
CALLBACK(src,PROC_REF(is_insertion_ready)),
CALLBACK(src,PROC_REF(AfterMaterialInsert)))
materials.max_amount =100000
materials.precise_insertion = TRUE
.=..()
@@ -277,7 +277,7 @@
oldLoc = get_turf(oldLoc)
if(!QDELETED(camera) && !updating && oldLoc != get_turf(src))
updating = TRUE
addtimer(CALLBACK(src, .proc/do_camera_update, oldLoc), VIDEO_CAMERA_BUFFER)
addtimer(CALLBACK(src,PROC_REF(do_camera_update), oldLoc), VIDEO_CAMERA_BUFFER)
#undef VIDEO_CAMERA_BUFFER
/obj/item/integrated_circuit/output/video_camera/proc/do_camera_update(oldLoc)
@@ -17,7 +17,7 @@
power_draw_per_use = 2
/obj/item/integrated_circuit/time/delay/do_work()
addtimer(CALLBACK(src, .proc/activate_pin, 2), delay)
addtimer(CALLBACK(src,PROC_REF(activate_pin), 2), delay)
/obj/item/integrated_circuit/time/delay/five_sec
name = "five-sec delay circuit"
@@ -98,7 +98,7 @@
/obj/item/integrated_circuit/time/ticker/proc/tick()
if(is_running)
addtimer(CALLBACK(src, .proc/tick), delay)
addtimer(CALLBACK(src,PROC_REF(tick)), delay)
if(world.time > next_fire)
next_fire = world.time + delay
activate_pin(1)
+1 -1
View File
@@ -33,7 +33,7 @@ Captain
if(!H)
return
if(!H.client && !tried) //Roundstart mobs don't have clients when announce() gets called
SSticker.OnRoundstart(CALLBACK(src, .proc/announce, H, TRUE)) //So we try again...
SSticker.OnRoundstart(CALLBACK(src,PROC_REF(announce), H, TRUE)) //So we try again...
return
if(tried && !H.client) //We don't want to endlessly call ourselves when we don't have a client
throw EXCEPTION("[H.nameless ? "Captain" : "Captain [H.real_name]"] ([H.x],[H.y],[H.z]) has no client.")
+1 -1
View File
@@ -137,7 +137,7 @@
/datum/job/proc/announce_head(var/mob/living/carbon/human/H, var/channels) //tells the given channel that the given mob is the new department head. See communications.dm for valid channels.
if(H && GLOB.announcement_systems.len)
//timer because these should come after the captain announcement
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, .proc/addtimer, CALLBACK(pick(GLOB.announcement_systems), /obj/machinery/announcement_system/proc/announce, "NEWHEAD", H.real_name, H.job, H.client?.prefs.alt_titles_preferences[H.job], channels), 1))
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(addtimer), CALLBACK(pick(GLOB.announcement_systems), /obj/machinery/announcement_system/proc/announce, "NEWHEAD", H.real_name, H.job, H.client?.prefs.alt_titles_preferences[H.job], channels), 1))
//If the configuration option is set to require players to be logged as old enough to play certain jobs, then this proc checks that they are, otherwise it just returns 1
/datum/job/proc/player_old_enough(client/C)
+1 -1
View File
@@ -61,7 +61,7 @@ AI
/datum/job/ai/announce(mob/living/silicon/ai/AI)
. = ..()
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, .proc/minor_announce, "[AI] has been downloaded to an empty bluespace-networked AI core at [AREACOORD(AI)]."))
SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(minor_announce), "[AI] has been downloaded to an empty bluespace-networked AI core at [AREACOORD(AI)]."))
/datum/job/ai/config_check()
return CONFIG_GET(flag/allow_ai)
+1 -1
View File
@@ -75,7 +75,7 @@
return FALSE
if(action == "search")
SStgui.close_uis(src)
addtimer(CALLBACK(src, .proc/perform_research, usr, currentName), 0)
addtimer(CALLBACK(src,PROC_REF(perform_research), usr, currentName), 0)
currentName = ""
currentSection = PRE_TITLE
return FALSE
+1 -1
View File
@@ -287,7 +287,7 @@ interface with the mining shuttle at the landing site if a mobile beacon is also
return
anti_spam_cd = 1
addtimer(CALLBACK(src, .proc/clear_cooldown), 50)
addtimer(CALLBACK(src,PROC_REF(clear_cooldown)), 50)
var/turf/landing_spot = get_turf(src)
@@ -98,7 +98,7 @@
D.fire()
charged = FALSE
icon_state = "mining_hammer"
addtimer(CALLBACK(src, .proc/Recharge), charge_time)
addtimer(CALLBACK(src,PROC_REF(Recharge)), charge_time)
return
if(proximity_flag && isliving(target))
var/mob/living/L = target
@@ -350,7 +350,7 @@
continue
playsound(L, 'sound/magic/fireball.ogg', 20, 1)
new /obj/effect/temp_visual/fire(L.loc)
addtimer(CALLBACK(src, .proc/pushback, L, user), 1) //no free backstabs, we push AFTER module stuff is done
addtimer(CALLBACK(src,PROC_REF(pushback), L, user), 1) //no free backstabs, we push AFTER module stuff is done
L.adjustFireLoss(bonus_value, forced = TRUE)
/obj/item/crusher_trophy/tail_spike/proc/pushback(mob/living/target, mob/living/user)
@@ -416,7 +416,7 @@
/obj/item/crusher_trophy/blaster_tubes/on_mark_detonation(mob/living/target, mob/living/user)
deadly_shot = TRUE
addtimer(CALLBACK(src, .proc/reset_deadly_shot), 300, TIMER_UNIQUE|TIMER_OVERRIDE)
addtimer(CALLBACK(src,PROC_REF(reset_deadly_shot)), 300, TIMER_UNIQUE|TIMER_OVERRIDE)
/obj/item/crusher_trophy/blaster_tubes/proc/reset_deadly_shot()
deadly_shot = FALSE
@@ -31,7 +31,7 @@
/obj/item/organ/regenerative_core/Initialize()
. = ..()
addtimer(CALLBACK(src, .proc/inert_check), 2400)
addtimer(CALLBACK(src,PROC_REF(inert_check)), 2400)
/obj/item/organ/regenerative_core/proc/inert_check()
if(!preserved)
+1 -1
View File
@@ -71,7 +71,7 @@
transform = matrix()*0.75
animate(src, transform = matrix()*1.5, time = duration)
deltimer(timerid)
timerid = addtimer(CALLBACK(src, .proc/burst), duration, TIMER_STOPPABLE)
timerid = addtimer(CALLBACK(src,PROC_REF(burst)), duration, TIMER_STOPPABLE)
/obj/effect/temp_visual/resonance/Destroy()
if(res)
+1 -1
View File
@@ -45,7 +45,7 @@
name = harvested_name
desc = harvested_desc
harvested = TRUE
addtimer(CALLBACK(src, .proc/regrow), rand(regrowth_time_low, regrowth_time_high))
addtimer(CALLBACK(src,PROC_REF(regrow)), rand(regrowth_time_low, regrowth_time_high))
return 1
/obj/structure/flora/ash/proc/regrow()
+2 -2
View File
@@ -290,7 +290,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
else
user.visible_message("<span class='warning'>[user] strikes \the [src], causing a chain reaction!</span>", "<span class='danger'>You strike \the [src], causing a chain reaction.</span>")
log_game("[key_name(user)] has primed a [name] for detonation at [AREACOORD(bombturf)]")
det_timer = addtimer(CALLBACK(src, .proc/detonate, notify_admins), det_time, TIMER_STOPPABLE)
det_timer = addtimer(CALLBACK(src,PROC_REF(detonate), notify_admins), det_time, TIMER_STOPPABLE)
/obj/item/twohanded/required/gibtonite/proc/detonate(notify_admins)
if(primed)
@@ -339,7 +339,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
if (!attack_self(user))
user.visible_message("<span class='suicide'>[user] couldn't flip \the [src]!</span>")
return SHAME
addtimer(CALLBACK(src, .proc/manual_suicide, user), 10)//10 = time takes for flip animation
addtimer(CALLBACK(src,PROC_REF(manual_suicide), user), 10)//10 = time takes for flip animation
return MANUAL_SUICIDE
/obj/item/coin/proc/manual_suicide(mob/living/user)
+1 -1
View File
@@ -10,7 +10,7 @@
return
else
bleedsuppress = TRUE
addtimer(CALLBACK(src, .proc/resume_bleeding), amount)
addtimer(CALLBACK(src,PROC_REF(resume_bleeding)), amount)
/mob/living/carbon/human/proc/resume_bleeding()
bleedsuppress = 0
+1 -1
View File
@@ -55,7 +55,7 @@ GLOBAL_VAR(posibrain_notify_cooldown)
next_ask = world.time + askDelay
searching = TRUE
update_icon()
addtimer(CALLBACK(src, .proc/check_success), askDelay)
addtimer(CALLBACK(src,PROC_REF(check_success)), askDelay)
/obj/item/mmi/posibrain/proc/check_success()
searching = FALSE
@@ -47,7 +47,7 @@
leaping = 1
weather_immunities += "lava"
update_icons()
throw_at(A, MAX_ALIEN_LEAP_DIST, 1, src, FALSE, TRUE, callback = CALLBACK(src, .proc/leap_end))
throw_at(A, MAX_ALIEN_LEAP_DIST, 1, src, FALSE, TRUE, callback = CALLBACK(src,PROC_REF(leap_end)))
/mob/living/carbon/alien/humanoid/hunter/proc/leap_end()
leaping = 0
@@ -146,7 +146,7 @@
recent_queen_death = 1
owner.throw_alert("alien_noqueen", /obj/screen/alert/alien_vulnerable)
addtimer(CALLBACK(src, .proc/clear_queen_death), QUEEN_DEATH_DEBUFF_DURATION)
addtimer(CALLBACK(src,PROC_REF(clear_queen_death)), QUEEN_DEATH_DEBUFF_DURATION)
/obj/item/organ/alien/hivenode/proc/clear_queen_death()
@@ -53,7 +53,7 @@
/obj/item/organ/body_egg/alien_embryo/egg_process()
if(stage < 5 && prob(3))
stage++
INVOKE_ASYNC(src, .proc/RefreshInfectionImage)
INVOKE_ASYNC(src,PROC_REF(RefreshInfectionImage))
if(stage == 5 && prob(50))
for(var/datum/surgery/S in owner.surgeries)
@@ -109,7 +109,7 @@
return
if(stat == CONSCIOUS)
icon_state = "[initial(icon_state)]_thrown"
addtimer(CALLBACK(src, .proc/clear_throw_icon_state), 15)
addtimer(CALLBACK(src,PROC_REF(clear_throw_icon_state)), 15)
/obj/item/clothing/mask/facehugger/proc/clear_throw_icon_state()
if(icon_state == "[initial(icon_state)]_thrown")
@@ -181,7 +181,7 @@
// early returns and validity checks done: attach.
attached++
//ensure we detach once we no longer need to be attached
addtimer(CALLBACK(src, .proc/detach), MAX_IMPREGNATION_TIME)
addtimer(CALLBACK(src,PROC_REF(detach)), MAX_IMPREGNATION_TIME)
if(!sterile)
@@ -190,7 +190,7 @@
GoIdle() //so it doesn't jump the people that tear it off
addtimer(CALLBACK(src, .proc/Impregnate, M), rand(MIN_IMPREGNATION_TIME, MAX_IMPREGNATION_TIME))
addtimer(CALLBACK(src,PROC_REF(Impregnate), M), rand(MIN_IMPREGNATION_TIME, MAX_IMPREGNATION_TIME))
/obj/item/clothing/mask/facehugger/proc/detach()
attached = 0
@@ -233,7 +233,7 @@
stat = UNCONSCIOUS
icon_state = "[initial(icon_state)]_inactive"
addtimer(CALLBACK(src, .proc/GoActive), rand(MIN_ACTIVE_TIME, MAX_ACTIVE_TIME))
addtimer(CALLBACK(src,PROC_REF(GoActive)), rand(MIN_ACTIVE_TIME, MAX_ACTIVE_TIME))
/obj/item/clothing/mask/facehugger/proc/Die()
if(stat == DEAD)
@@ -720,7 +720,7 @@
electrocution_skeleton_anim = mutable_appearance(icon, "electrocuted_base")
electrocution_skeleton_anim.appearance_flags |= RESET_COLOR|KEEP_APART
add_overlay(electrocution_skeleton_anim)
addtimer(CALLBACK(src, .proc/end_electrocution_animation, electrocution_skeleton_anim), anim_duration)
addtimer(CALLBACK(src,PROC_REF(end_electrocution_animation), electrocution_skeleton_anim), anim_duration)
else //or just do a generic animation
flick_overlay_view(image(icon,src,"electrocuted_generic",ABOVE_MOB_LAYER), src, anim_duration)

Some files were not shown because too many files have changed in this diff Show More