From 5a385ff3686aa8a25a25696740f0dd61f132e564 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 12:22:01 -0400 Subject: [PATCH 01/52] initial compatibility file --- code/__byond_version_compat.dm | 75 ++++++++++++++++++++++++++++++++++ code/_compile_options.dm | 4 +- fortune13.dme | 1 + 3 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 code/__byond_version_compat.dm diff --git a/code/__byond_version_compat.dm b/code/__byond_version_compat.dm new file mode 100644 index 00000000000..ca19128a4fe --- /dev/null +++ b/code/__byond_version_compat.dm @@ -0,0 +1,75 @@ +// This file contains defines allowing targeting byond versions newer than the supported + +//Update this whenever you need to take advantage of more recent byond features +#define MIN_COMPILER_VERSION 514 +#define MIN_COMPILER_BUILD 1556 +#if (DM_VERSION < MIN_COMPILER_VERSION || DM_BUILD < MIN_COMPILER_BUILD) && !defined(SPACEMAN_DMM) +//Don't forget to update this part +#error Your version of BYOND is too out-of-date to compile this project. Go to https://secure.byond.com/download and update. +#error You need version 514.1556 or higher +#endif + +#if (DM_VERSION == 514 && DM_BUILD > 1575 && DM_BUILD <= 1577) +#error Your version of BYOND currently has a crashing issue that will prevent you from running Dream Daemon test servers. +#error We require developers to test their content, so an inability to test means we cannot allow the compile. +#error Please consider downgrading to 514.1575 or lower. +#endif + +// Keep savefile compatibilty at minimum supported level +#if DM_VERSION >= 515 +/savefile/byond_version = MIN_COMPILER_VERSION +#endif + +// 515 split call for external libraries into call_ext +#if DM_VERSION < 515 +#define LIBCALL call +#else +#define LIBCALL call_ext +#endif + +// So we want to have compile time guarantees these methods exist on local type, unfortunately 515 killed the .proc/procname and .verb/verbname syntax so we have to use nameof() +// For the record: GLOBAL_VERB_REF would be useless as verbs can't be global. + +#if DM_VERSION < 515 + +/// Call by name proc references, checks if the proc exists on either this type or as a global proc. +#define PROC_REF(X) (.proc/##X) +/// Call by name verb references, checks if the verb exists on either this type or as a global verb. +#define VERB_REF(X) (.verb/##X) + +/// Call by name proc reference, checks if the proc exists on either the given type or as a global proc +#define TYPE_PROC_REF(TYPE, X) (##TYPE.proc/##X) +/// Call by name verb reference, checks if the verb exists on either the given type or as a global verb +#define TYPE_VERB_REF(TYPE, X) (##TYPE.verb/##X) + +/// Call by name proc reference, checks if the proc is an existing global proc +#define GLOBAL_PROC_REF(X) (/proc/##X) + +#else + +/// Call by name proc references, checks if the proc exists on either this type or as a global proc. +#define PROC_REF(X) (nameof(.proc/##X)) +/// Call by name verb references, checks if the verb exists on either this type or as a global verb. +#define VERB_REF(X) (nameof(.verb/##X)) + +/// Call by name proc reference, checks if the proc exists on either the given type or as a global proc +#define TYPE_PROC_REF(TYPE, X) (nameof(##TYPE.proc/##X)) +/// Call by name verb reference, checks if the verb exists on either the given type or as a global verb +#define TYPE_VERB_REF(TYPE, X) (nameof(##TYPE.verb/##X)) + +/// Call by name proc reference, checks if the proc is an existing global proc +#define GLOBAL_PROC_REF(X) (/proc/##X) + +#endif + +#if (DM_VERSION == 515) +/// fcopy will crash on 515 linux if given a non-existant file, instead of returning 0 like on 514 linux or 515 windows +/// var case matches documentation for fcopy. +/world/proc/__fcopy(Src, Dst) + if (istext(Src) && !fexists(Src)) + return 0 + return fcopy(Src, Dst) + +#define fcopy(Src, Dst) world.__fcopy(Src, Dst) + +#endif \ No newline at end of file diff --git a/code/_compile_options.dm b/code/_compile_options.dm index e8916779641..56b506d013d 100644 --- a/code/_compile_options.dm +++ b/code/_compile_options.dm @@ -64,7 +64,7 @@ #ifdef LOWMEMORYMODE #define FORCE_MAP "_maps/runtimestation.json" #endif - +/* //Update this whenever you need to take advantage of more recent byond features #define MIN_COMPILER_VERSION 513 #define MIN_COMPILER_BUILD 1514 @@ -73,7 +73,7 @@ #error Your version of BYOND is too out-of-date to compile this project. Go to https://secure.byond.com/download and update. #error You need version 513.1508 or higher #endif - +*/ //Additional code for the above flags. #ifdef TESTING #warn compiling in TESTING mode. testing() debug messages will be visible. diff --git a/fortune13.dme b/fortune13.dme index aed9776826c..c4d408283bb 100644 --- a/fortune13.dme +++ b/fortune13.dme @@ -15,6 +15,7 @@ // BEGIN_INCLUDE #include "_maps\_basemap.dm" +#include "code\__byond_version_compat.dm" #include "code\_compile_options.dm" #include "code\world.dm" #include "code\__DEFINES\_auxtools.dm" From c619c920945ea0edfb2f4daf36413f4dc5838185 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 12:30:24 -0400 Subject: [PATCH 02/52] GLOBAL_PROC -> GLOBAL_PROC_REF .proc only --- code/__DEFINES/qdel.dm | 6 +- code/datums/explosion.dm | 2 +- code/datums/traits/negative.dm | 4 +- code/game/gamemodes/game_mode.dm | 2 +- .../effect_system/effects_explosion.dm | 2 +- code/game/objects/items/devices/PDA/PDA.dm | 2 +- code/modules/admin/secrets.dm | 4 +- code/modules/admin/verbs/randomverbs.dm | 2 +- .../abductor/equipment/glands/plasma.dm | 2 +- .../clockcult/clock_effects/clock_overlay.dm | 2 +- code/modules/antagonists/cult/cult_comms.dm | 4 +- code/modules/antagonists/cult/runes.dm | 2 +- .../nukeop/equipment/nuclearbomb.dm | 2 +- .../traitor/equipment/Malf_Modules.dm | 2 +- code/modules/events/fake_virus.dm | 2 +- code/modules/events/pirates.dm | 4 +- code/modules/flufftext/Hallucination.dm | 2 +- code/modules/jobs/job_types/SS13/captain.dm | 2 +- code/modules/jobs/job_types/_job.dm | 2 +- code/modules/jobs/job_types/silicon.dm | 2 +- code/modules/mob/living/living_defense.dm | 6 +- .../mob/living/simple_animal/friendly/dog.dm | 2 +- .../living/simple_animal/hostile/hostile.dm | 2 +- code/modules/mob/mob.dm | 4 +- code/modules/power/rtg.dm | 2 +- code/modules/power/singularity/narsie.dm | 2 +- .../projectiles/ammunition/_ammunition.dm | 4 +- code/modules/projectiles/guns/ballistic.dm | 2 +- code/modules/projectiles/projectile/magic.dm | 4 +- code/modules/shuttle/arrivals.dm | 2 +- code/modules/surgery/organs/vocal_cords.dm | 66 +++++++++---------- .../code/datums/status_effects/chems.dm | 4 +- 32 files changed, 76 insertions(+), 76 deletions(-) diff --git a/code/__DEFINES/qdel.dm b/code/__DEFINES/qdel.dm index 2ba41bc47cd..25647505d79 100644 --- a/code/__DEFINES/qdel.dm +++ b/code/__DEFINES/qdel.dm @@ -47,11 +47,11 @@ #define QDELETED(X) (!X || QDELING(X)) #define QDESTROYING(X) (!X || X.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) -#define QDEL_IN(item, time) addtimer(CALLBACK(GLOBAL_PROC, .proc/qdel, (time) > GC_FILTER_QUEUE ? WEAKREF(item) : item), time, TIMER_STOPPABLE) -#define QDEL_IN_CLIENT_TIME(item, time) addtimer(CALLBACK(GLOBAL_PROC, .proc/qdel, item), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) +#define QDEL_IN(item, time) addtimer(CALLBACK(GLOBAL_PROC_REF(qdel), (time) > GC_FILTER_QUEUE ? WEAKREF(item) : item), time, TIMER_STOPPABLE) +#define QDEL_IN_CLIENT_TIME(item, time) addtimer(CALLBACK(GLOBAL_PROC_REF(qdel), item), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) #define QDEL_NULL(item) qdel(item); item = null #define QDEL_LIST(L) if(L) { for(var/I in L) qdel(I); L.Cut(); } -#define QDEL_LIST_IN(L, time) addtimer(CALLBACK(GLOBAL_PROC, .proc/______qdel_list_wrapper, L), time, TIMER_STOPPABLE) +#define QDEL_LIST_IN(L, time) addtimer(CALLBACK(GLOBAL_PROC_REF(______qdel_list_wrapper), L), time, TIMER_STOPPABLE) #define QDEL_LIST_ASSOC(L) if(L) { for(var/I in L) { qdel(L[I]); qdel(I); } L.Cut(); } #define QDEL_LIST_ASSOC_VAL(L) if(L) { for(var/I in L) qdel(L[I]); L.Cut(); } diff --git a/code/datums/explosion.dm b/code/datums/explosion.dm index 8776b6b91ef..58c7922b056 100644 --- a/code/datums/explosion.dm +++ b/code/datums/explosion.dm @@ -405,7 +405,7 @@ GLOBAL_LIST_EMPTY(explosions) else continue - addtimer(CALLBACK(GLOBAL_PROC, .proc/wipe_color_and_text, wipe_colours), 100) + addtimer(CALLBACK(GLOBAL_PROC_REF(wipe_color_and_text), wipe_colours), 100) /proc/wipe_color_and_text(list/atom/wiping) for(var/i in wiping) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index 397aefa9a55..fc29e944bb8 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -489,7 +489,7 @@ Edit: TK~ This is the dumbest fucking shit I've ever seen in my life. This isn if(prob(85) || (istype(mind_check) && mind_check.mind)) return - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, quirk_holder, span_smallnotice("You make eye contact with [A].")), 3) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), quirk_holder, span_smallnotice("You make eye contact with [A].")), 3) */ /datum/quirk/social_anxiety/proc/eye_contact(datum/source, mob/living/other_mob, triggering_examiner) if(prob(75)) @@ -512,7 +512,7 @@ Edit: TK~ This is the dumbest fucking shit I've ever seen in my life. This isn msg += "causing you to freeze up!" SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "anxiety_eyecontact", /datum/mood_event/anxiety_eyecontact) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, quirk_holder, span_userdanger("[msg]")), 3) // so the examine signal has time to fire and this will print after + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), quirk_holder, span_userdanger("[msg]")), 3) // so the examine signal has time to fire and this will print after return COMSIG_BLOCK_EYECONTACT /datum/mood_event/anxiety_eyecontact diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 8c57b3563c4..3e242a63022 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -89,7 +89,7 @@ //finalize_monster_hunters() Disabled for now if(!report) report = !CONFIG_GET(flag/no_intercept_report) - addtimer(CALLBACK(GLOBAL_PROC, .proc/display_roundstart_logout_report), ROUNDSTART_LOGOUT_REPORT_TIME) + addtimer(CALLBACK(GLOBAL_PROC_REF(display_roundstart_logout_report)), ROUNDSTART_LOGOUT_REPORT_TIME) if(prob(20)) //CIT CHANGE - adds a 20% chance for the security level to be the opposite of what it normally is flipseclevel = TRUE diff --git a/code/game/objects/effects/effect_system/effects_explosion.dm b/code/game/objects/effects/effect_system/effects_explosion.dm index d208510e860..bb936754f7d 100644 --- a/code/game/objects/effects/effect_system/effects_explosion.dm +++ b/code/game/objects/effects/effect_system/effects_explosion.dm @@ -17,7 +17,7 @@ var/direct = pick(GLOB.alldirs) var/steps_amt = pick(1;25,2;50,3,4;200) for(var/j in 1 to steps_amt) - addtimer(CALLBACK(GLOBAL_PROC, .proc/_step, expl, direct), j) + addtimer(CALLBACK(GLOBAL_PROC_REF(_step), expl, direct), j) /obj/effect/explosion name = "fire" diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index a789756834c..2ceec812e03 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -570,7 +570,7 @@ GLOBAL_LIST_EMPTY(PDAs) update_label() if (!silent) playsound(src, 'sound/machines/terminal_processing.ogg', 15, 1) - addtimer(CALLBACK(GLOBAL_PROC, .proc/playsound, src, 'sound/machines/terminal_success.ogg', 15, 1), 13) + addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, 'sound/machines/terminal_success.ogg', 15, 1), 13) if("Eject")//Ejects the cart, only done from hub. if (!isnull(cartridge)) diff --git a/code/modules/admin/secrets.dm b/code/modules/admin/secrets.dm index c13d786ac3f..e1a8446aef4 100644 --- a/code/modules/admin/secrets.dm +++ b/code/modules/admin/secrets.dm @@ -699,9 +699,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 diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index 69c34d901ae..0a038287e82 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -1531,7 +1531,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits var/shots_this_limb = 0 for(var/t in shuffle(open_adj_turfs)) var/turf/iter_turf = t - addtimer(CALLBACK(GLOBAL_PROC, .proc/firing_squad, dude, iter_turf, slice_part.body_zone, wound_bonuses[wound_bonus_rep], damage), delay_counter) + addtimer(CALLBACK(GLOBAL_PROC_REF(firing_squad), dude, iter_turf, slice_part.body_zone, wound_bonuses[wound_bonus_rep], damage), delay_counter) delay_counter += delay_per_shot shots_this_limb++ if(shots_this_limb > shots_per_limb_per_rep) diff --git a/code/modules/antagonists/abductor/equipment/glands/plasma.dm b/code/modules/antagonists/abductor/equipment/glands/plasma.dm index 291c36b1c79..80a8fd41cbc 100644 --- a/code/modules/antagonists/abductor/equipment/glands/plasma.dm +++ b/code/modules/antagonists/abductor/equipment/glands/plasma.dm @@ -9,7 +9,7 @@ /obj/item/organ/heart/gland/plasma/activate() to_chat(owner, span_warning("You feel bloated.")) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, owner, span_userdanger("A massive stomachache overcomes you.")), 150) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), owner, span_userdanger("A massive stomachache overcomes you.")), 150) addtimer(CALLBACK(src, .proc/vomit_plasma), 200) /obj/item/organ/heart/gland/plasma/proc/vomit_plasma() diff --git a/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm b/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm index 97d2935a86c..ce9374f60ba 100644 --- a/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm +++ b/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm @@ -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) diff --git a/code/modules/antagonists/cult/cult_comms.dm b/code/modules/antagonists/cult/cult_comms.dm index 0d685cf0d5c..96e87d5c845 100644 --- a/code/modules/antagonists/cult/cult_comms.dm +++ b/code/modules/antagonists/cult/cult_comms.dm @@ -290,7 +290,7 @@ B.current.client.images += C.cult_team.blood_target_image attached_action.owner.update_action_buttons_icon() remove_ranged_ability(span_cult("The marking rite is complete! It will last for 90 seconds.")) - C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC, .proc/reset_blood_target,C.cult_team), 900, TIMER_STOPPABLE) + C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target,C.cult_team)), 900, TIMER_STOPPABLE) return TRUE return FALSE @@ -377,7 +377,7 @@ desc = "Remove the Blood Mark you previously set." button_icon_state = "emp" owner.update_action_buttons_icon() - C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC, .proc/reset_blood_target,C.cult_team), base_cooldown, TIMER_STOPPABLE) + C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target,C.cult_team)), base_cooldown, TIMER_STOPPABLE) addtimer(CALLBACK(src, .proc/reset_button), base_cooldown) diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index bc258930f14..7fe39e8c0b6 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -990,7 +990,7 @@ structure_check() searches for nearby cultist structures required for the invoca if(ishuman(M)) if(!iscultist(M)) AH.remove_hud_from(M) - addtimer(CALLBACK(GLOBAL_PROC, .proc/hudFix, M), duration) + addtimer(CALLBACK(GLOBAL_PROC_REF(hudFix), M), duration) var/image/A = image('icons/mob/mob.dmi',M,"cultist", ABOVE_MOB_LAYER) A.override = 1 add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/noncult, "human_apoc", A, FALSE) diff --git a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm index 59197be481c..29960c29d25 100644 --- a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm +++ b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm @@ -493,7 +493,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) diff --git a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm index 3e4638cc9a9..342cc68c301 100644 --- a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm +++ b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm @@ -457,7 +457,7 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list( minor_announce("Hostile runtime detected in door controllers. Isolation lockdown protocols are now in effect. Please remain calm.","Network Alert:", TRUE) to_chat(owner, span_danger("Lockdown initiated. Network reset in 90 seconds.")) - addtimer(CALLBACK(GLOBAL_PROC, .proc/minor_announce, + addtimer(CALLBACK(GLOBAL_PROC_REF(minor_announce), "Automatic system reboot complete. Have a secure day.", "Network reset:"), 900) diff --git a/code/modules/events/fake_virus.dm b/code/modules/events/fake_virus.dm index c145f97b61a..bc4c2dd5e99 100644 --- a/code/modules/events/fake_virus.dm +++ b/code/modules/events/fake_virus.dm @@ -24,7 +24,7 @@ for(var/i=1; i<=rand(1,defacto_min); i++) var/mob/living/carbon/human/onecoughman = pick(fake_virus_victims) if(prob(25))//1/4 odds to get a spooky message instead of coughing out loud - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, onecoughman, span_warning("[pick("Your head hurts.", "Your head pounds.")]")), rand(30,150)) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), onecoughman, span_warning("[pick("Your head hurts.", "Your head pounds.")]")), rand(30,150)) else addtimer(CALLBACK(onecoughman, .mob/proc/emote, pick("cough", "sniff", "sneeze")), rand(30,150))//deliver the message with a slightly randomized time interval so there arent multiple people coughing at the exact same time fake_virus_victims -= onecoughman diff --git a/code/modules/events/pirates.dm b/code/modules/events/pirates.dm index 93b3564337e..c26e61d1ea5 100644 --- a/code/modules/events/pirates.dm +++ b/code/modules/events/pirates.dm @@ -53,8 +53,8 @@ // threat_msg.title = "Business proposition" // threat_msg.content = "Ahoy! This be the [ship_name]. Cough up [payoff] credits or you'll walk the plank." // threat_msg.possible_answers = list("We'll pay.","We will not be extorted.") - threat_msg.answer_callback = CALLBACK(GLOBAL_PROC, .proc/pirates_answered, threat_msg, payoff, ship_name, initial_send_time, response_max_time, ship_template) - addtimer(CALLBACK(GLOBAL_PROC, .proc/spawn_pirates, threat_msg, ship_template, FALSE), response_max_time) + threat_msg.answer_callback = CALLBACK(GLOBAL_PROC_REF(pirates_answered), threat_msg, payoff, ship_name, initial_send_time, response_max_time, ship_template) + addtimer(CALLBACK(GLOBAL_PROC_REF(spawn_pirates), threat_msg, ship_template, FALSE), response_max_time) SScommunications.send_message(threat_msg,unique = TRUE) /proc/pirates_answered(datum/comm_message/threat_msg, payoff, ship_name, initial_send_time, response_max_time, ship_template) diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index 3cedb6c5c44..77fc2f44417 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -1114,7 +1114,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( return to_chat(target, span_userdanger("You fall into the chasm!")) target.DefaultCombatKnockdown(40) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, target, span_notice("It's surprisingly shallow.")), 15) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), target, span_notice("It's surprisingly shallow.")), 15) QDEL_IN(src, 30) /obj/effect/hallucination/danger/anomaly diff --git a/code/modules/jobs/job_types/SS13/captain.dm b/code/modules/jobs/job_types/SS13/captain.dm index dcaa037ebfd..4afff036a9e 100644 --- a/code/modules/jobs/job_types/SS13/captain.dm +++ b/code/modules/jobs/job_types/SS13/captain.dm @@ -37,7 +37,7 @@ /datum/job/captain/announce(mob/living/carbon/human/H) ..() - SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, .proc/minor_announce, "Captain [H.real_name] on deck!")) + SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(minor_announce), "Captain [H.real_name] on deck!")) /datum/outfit/job/captain name = "Captain" diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index bc19e9ccd01..b9242392f16 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -215,7 +215,7 @@ /datum/job/proc/announce_head(mob/living/carbon/human/H, 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, 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, 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) diff --git a/code/modules/jobs/job_types/silicon.dm b/code/modules/jobs/job_types/silicon.dm index a544a264fca..1ce7964b0d2 100644 --- a/code/modules/jobs/job_types/silicon.dm +++ b/code/modules/jobs/job_types/silicon.dm @@ -69,7 +69,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) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 328a2888c85..0523c92a4a9 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -537,10 +537,10 @@ if((GLOB.cult_narsie.souls == GLOB.cult_narsie.soul_goal) && (GLOB.cult_narsie.resolved == FALSE)) GLOB.cult_narsie.resolved = TRUE sound_to_playing_players('sound/machines/alarm.ogg') - addtimer(CALLBACK(GLOBAL_PROC, .proc/cult_ending_helper, 1), 120) - addtimer(CALLBACK(GLOBAL_PROC, .proc/ending_helper), 270) + addtimer(CALLBACK(GLOBAL_PROC_REF(cult_ending_helper), 1), 120) + addtimer(CALLBACK(GLOBAL_PROC_REF(ending_helper)), 270) if(client) - INVOKE_ASYNC(GLOBAL_PROC, .proc/makeNewConstruct, /mob/living/simple_animal/hostile/construct/harvester, src, null, TRUE) // must pass keyword args explicitly + INVOKE_ASYNC(GLOBAL_PROC_REF(makeNewConstruct), /mob/living/simple_animal/hostile/construct/harvester, src, null, TRUE) // must pass keyword args explicitly else switch(rand(1, 6)) if(1) diff --git a/code/modules/mob/living/simple_animal/friendly/dog.dm b/code/modules/mob/living/simple_animal/friendly/dog.dm index 95d0f411e1d..7a36fca5ea6 100644 --- a/code/modules/mob/living/simple_animal/friendly/dog.dm +++ b/code/modules/mob/living/simple_animal/friendly/dog.dm @@ -460,7 +460,7 @@ if(prob(1)) emote("me", EMOTE_VISIBLE, pick("dances around.","chases its tail!")) - INVOKE_ASYNC(GLOBAL_PROC, .proc/dance_rotate, src, null, TRUE) + INVOKE_ASYNC(GLOBAL_PROC_REF(dance_rotate), src, null, TRUE) /mob/living/simple_animal/pet/dog/corgi/Ian/narsie_act() playsound(src, 'sound/magic/demon_dies.ogg', 75, TRUE) diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 40e7ca76068..2b2ff870fe4 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -651,7 +651,7 @@ ThrowSomething(A) ranged_cooldown = world.time + ranged_cooldown_time if(sound_after_shooting) - addtimer(CALLBACK(GLOBAL_PROC, .proc/playsound, src, sound_after_shooting, 100, 0, 0), sound_after_shooting_delay, TIMER_STOPPABLE) + addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, sound_after_shooting, 100, 0, 0), sound_after_shooting_delay, TIMER_STOPPABLE) if(projectiletype) if(LAZYLEN(variation_list[MOB_PROJECTILE]) >= 2) // Gotta have multiple different projectiles to cycle through projectiletype = vary_from_list(variation_list[MOB_PROJECTILE], TRUE) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 37b36ab55dd..adc2f1d16b4 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -433,13 +433,13 @@ mob/visible_message(message, self_message, blind_message, vision_distance = DEFA if(!istype(examined_carbon) || (!(examined_carbon.wear_mask && examined_carbon.wear_mask.flags_inv & HIDEFACE) && !(examined_carbon.head && examined_carbon.head.flags_inv & HIDEFACE))) if(SEND_SIGNAL(src, COMSIG_MOB_EYECONTACT, examined_mob, TRUE) != COMSIG_BLOCK_EYECONTACT) var/msg = span_smallnotice("You make eye contact with [examined_mob].") - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, src, msg), 3) // so the examine signal has time to fire and this will print after + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), src, msg), 3) // so the examine signal has time to fire and this will print after var/mob/living/carbon/us_as_carbon = src // i know >casting as subtype, but this isn't really an inheritable check if(!istype(us_as_carbon) || (!(us_as_carbon.wear_mask && us_as_carbon.wear_mask.flags_inv & HIDEFACE) && !(us_as_carbon.head && us_as_carbon.head.flags_inv & HIDEFACE))) if(SEND_SIGNAL(examined_mob, COMSIG_MOB_EYECONTACT, src, FALSE) != COMSIG_BLOCK_EYECONTACT) var/msg = span_smallnotice("[src] makes eye contact with you.") - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, examined_mob, msg), 3) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), examined_mob, msg), 3) //same as above //note: ghosts can point, this is intended diff --git a/code/modules/power/rtg.dm b/code/modules/power/rtg.dm index a57a8513907..0e4c7fb4cda 100644 --- a/code/modules/power/rtg.dm +++ b/code/modules/power/rtg.dm @@ -76,7 +76,7 @@ span_italic("You hear a loud electrical crack!")) playsound(src.loc, 'sound/magic/lightningshock.ogg', 100, 1, extrarange = 5) tesla_zap(src, 5, power_gen * 0.05) - addtimer(CALLBACK(GLOBAL_PROC, .proc/explosion, get_turf(src), 2, 3, 4, 8), 100) // Not a normal explosion. + addtimer(CALLBACK(GLOBAL_PROC_REF(explosion), get_turf(src), 2, 3, 4, 8), 100) // Not a normal explosion. /obj/machinery/power/rtg/abductor/bullet_act(obj/item/projectile/Proj) . = ..() diff --git a/code/modules/power/singularity/narsie.dm b/code/modules/power/singularity/narsie.dm index b133ad0649f..4ca675b7817 100644 --- a/code/modules/power/singularity/narsie.dm +++ b/code/modules/power/singularity/narsie.dm @@ -82,7 +82,7 @@ if(resolved == FALSE) resolved = TRUE sound_to_playing_players('sound/machines/alarm.ogg') - addtimer(CALLBACK(GLOBAL_PROC, .proc/cult_ending_helper), 120) + addtimer(CALLBACK(GLOBAL_PROC_REF(cult_ending_helper)), 120) /obj/singularity/narsie/large/cult/Destroy() GLOB.cult_narsie = null diff --git a/code/modules/projectiles/ammunition/_ammunition.dm b/code/modules/projectiles/ammunition/_ammunition.dm index c3675fd773a..1f794a88f50 100644 --- a/code/modules/projectiles/ammunition/_ammunition.dm +++ b/code/modules/projectiles/ammunition/_ammunition.dm @@ -212,9 +212,9 @@ return var/turf/this_turf_here = get_turf(src) if(still_warm && this_turf_here && this_turf_here.bullet_sizzle) - addtimer(CALLBACK(GLOBAL_PROC, .proc/playsound, src, 'sound/items/welder.ogg', 20, 1), bounce_delay) //If the turf is made of water and the shell casing is still hot, make a sizzling sound when it's ejected. + addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, 'sound/items/welder.ogg', 20, 1), bounce_delay) //If the turf is made of water and the shell casing is still hot, make a sizzling sound when it's ejected. else if(this_turf_here && this_turf_here.bullet_bounce_sound) - addtimer(CALLBACK(GLOBAL_PROC, .proc/playsound, src, this_turf_here.bullet_bounce_sound, 60, 1), bounce_delay) //Soft / non-solid turfs that shouldn't make a sound when a shell casing is ejected over them. + addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, this_turf_here.bullet_bounce_sound, 60, 1), bounce_delay) //Soft / non-solid turfs that shouldn't make a sound when a shell casing is ejected over them. /obj/item/ammo_casing/proc/get_casing_destination(eject_direction, max_dist = 6, max_spread = 2) if(!eject_direction) diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm index 13a999d57be..39b359b1365 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/ballistic.dm @@ -146,7 +146,7 @@ GLOBAL_LIST_EMPTY(gun_accepted_magazines) playsound(src, "gun_insert_full_magazine", 70, 1) if(!chambered) chamber_round() - addtimer(CALLBACK(GLOBAL_PROC, .proc/playsound, src, 'sound/weapons/gun_chamber_round.ogg', 100, 1), 3) + addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, 'sound/weapons/gun_chamber_round.ogg', 100, 1), 3) else playsound(src, "gun_insert_empty_magazine", 70, 1) new_mag.update_icon() diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index ad9e16b7ba1..2255827ca42 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -396,7 +396,7 @@ /obj/structure/closet/decay/proc/decay() animate(src, alpha = 0, time = 30) - addtimer(CALLBACK(GLOBAL_PROC, .proc/qdel, src), 30) + addtimer(CALLBACK(GLOBAL_PROC_REF(qdel), src), 30) /obj/structure/closet/decay/open(mob/living/user) . = ..() @@ -502,7 +502,7 @@ return BULLET_ACT_BLOCK var/turf/T = get_turf(target) for(var/i=0, i<50, i+=10) - addtimer(CALLBACK(GLOBAL_PROC, .proc/explosion, T, -1, exp_heavy, exp_light, exp_flash, FALSE, FALSE, exp_fire), i) + addtimer(CALLBACK(GLOBAL_PROC_REF(explosion), T, -1, exp_heavy, exp_light, exp_flash, FALSE, FALSE, exp_fire), i) /obj/item/projectile/magic/nuclear name = "\proper blazing manliness" diff --git a/code/modules/shuttle/arrivals.dm b/code/modules/shuttle/arrivals.dm index da855c0cf2e..2b41637c976 100644 --- a/code/modules/shuttle/arrivals.dm +++ b/code/modules/shuttle/arrivals.dm @@ -197,7 +197,7 @@ if(mode != SHUTTLE_CALL) AnnounceArrival(mob, rank) else - LAZYADD(queued_announces, CALLBACK(GLOBAL_PROC, .proc/AnnounceArrival, mob, rank)) + LAZYADD(queued_announces, CALLBACK(GLOBAL_PROC_REF(AnnounceArrival), mob, rank)) /obj/docking_port/mobile/arrivals/vv_edit_var(var_name, var_value) switch(var_name) diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm index f80d2782eaf..4cdc5430aa6 100644 --- a/code/modules/surgery/organs/vocal_cords.dm +++ b/code/modules/surgery/organs/vocal_cords.dm @@ -405,7 +405,7 @@ for(var/iter in 1 to 5 * power_multiplier) for(var/V in listeners) var/mob/living/L = V - addtimer(CALLBACK(GLOBAL_PROC, .proc/_step, L, direction? direction : pick(GLOB.cardinals)), 10 * (iter - 1)) + addtimer(CALLBACK(GLOBAL_PROC_REF(_step), L, direction? direction : pick(GLOB.cardinals)), 10 * (iter - 1)) //WALK else if((findtext(message, walk_words))) @@ -733,7 +733,7 @@ else E.enthrallTally += power_multiplier*1.25 //thinking about it, I don't know how this can proc if(E.lewd) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, span_nicegreen("[E.enthrallGender] is so nice to listen to.")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_nicegreen("[E.enthrallGender] is so nice to listen to.")), 5) E.cooldown += 1 //REWARD mixable works @@ -745,13 +745,13 @@ if(L == user) continue if (E.lewd) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, span_love("[E.enthrallGender] has praised me!!")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_love("[E.enthrallGender] has praised me!!")), 5) if(HAS_TRAIT(L, TRAIT_MASO)) E.enthrallTally -= power_multiplier E.resistanceTally += power_multiplier E.cooldown += 1 else - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, span_nicegreen("I've been praised for doing a good job!")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_nicegreen("I've been praised for doing a good job!")), 5) E.resistanceTally -= power_multiplier E.enthrallTally += power_multiplier var/descmessage = "[(E.lewd?"I feel so happy! I'm a good pet who [E.enthrallGender] loves!":"I did a good job!")]" @@ -774,11 +774,11 @@ descmessage += "And yet, it feels so good..!" //I don't really understand masco, is this the right sort of thing they like? E.enthrallTally += power_multiplier E.resistanceTally -= power_multiplier - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "I've let [E.enthrallGender] down...!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "I've let [E.enthrallGender] down...!"), 5) else - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, span_warning("I've let [E.enthrallGender] down...")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_warning("I've let [E.enthrallGender] down...")), 5) else - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, span_warning("I've failed [E.master]...")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_warning("I've failed [E.master]...")), 5) E.resistanceTally += power_multiplier E.enthrallTally += power_multiplier E.cooldown += 1 @@ -812,9 +812,9 @@ E.status = null user.emote("snap") if(E.lewd) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "The snapping of your [E.enthrallGender]'s fingers brings you back to your enthralled state, obedient and ready to serve."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "The snapping of your [E.enthrallGender]'s fingers brings you back to your enthralled state, obedient and ready to serve."), 5) else - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "The snapping of [E.master]'s fingers brings you back to being under their influence."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "The snapping of [E.master]'s fingers brings you back to being under their influence."), 5) to_chat(user, "You wake up [L]!") //tier 1 @@ -947,7 +947,7 @@ ADD_TRAIT(C, TRAIT_MUTE, "enthrall") else C.silent += ((10 * power_multiplier) * E.phase) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, "You are unable to speak!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You are unable to speak!"), 5) to_chat(user, "You silence [C].") E.cooldown += 3 @@ -967,7 +967,7 @@ var/mob/living/L = V var/datum/status_effect/chem/enthrall/E = L.has_status_effect(/datum/status_effect/chem/enthrall) E.status = "Antiresist" - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "Your mind clouds over, as you find yourself unable to resist!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "Your mind clouds over, as you find yourself unable to resist!"), 5) E.statusStrength = (1 * power_multiplier * E.phase) E.cooldown += 15//Too short? yes, made 15 to_chat(user, "You frustrate [L]'s attempts at resisting.") @@ -980,7 +980,7 @@ E.deltaResist += (power_multiplier) E.owner_resist() E.cooldown += 2 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, "You are spurred into resisting from [user]'s words!'"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You are spurred into resisting from [user]'s words!'"), 5) to_chat(user, "You spark resistance in [C].") //FORGET (A way to cancel the process) @@ -988,9 +988,9 @@ for(var/mob/living/carbon/C in listeners) var/datum/status_effect/chem/enthrall/E = C.has_status_effect(/datum/status_effect/chem/enthrall) if(E.phase == 4) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, span_warning("You're unable to forget about [(E.lewd?"the dominating presence of [E.enthrallGender]":"[E.master]")]!")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_warning("You're unable to forget about [(E.lewd?"the dominating presence of [E.enthrallGender]":"[E.master]")]!")), 5) continue - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, span_warning("You wake up, forgetting everything that just happened. You must've dozed off..? How embarassing!")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_warning("You wake up, forgetting everything that just happened. You must've dozed off..? How embarassing!")), 5) C.Sleeping(50) switch(E.phase) if(1 to 2) @@ -1001,9 +1001,9 @@ E.phase = 0 E.cooldown = 0 if(E.lewd) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, "You revert to yourself before being enthralled by your [E.enthrallGender], with no memory of what happened."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You revert to yourself before being enthralled by your [E.enthrallGender], with no memory of what happened."), 5) else - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, "You revert to who you were before, with no memory of what happened with [E.master]."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You revert to who you were before, with no memory of what happened with [E.master]."), 5) to_chat(user, "You put [C] into a sleeper state, ready to turn them back at the snap of your fingers.") //ATTRACT @@ -1013,7 +1013,7 @@ var/datum/status_effect/chem/enthrall/E = L.has_status_effect(/datum/status_effect/chem/enthrall) L.throw_at(get_step_towards(user,L), 3 * power_multiplier, 1 * power_multiplier) E.cooldown += 3 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You are drawn towards [user]!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You are drawn towards [user]!"), 5) to_chat(user, "You draw [L] towards you!") //SLEEP @@ -1024,7 +1024,7 @@ if(2 to INFINITY) C.Sleeping(45 * power_multiplier) E.cooldown += 10 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, "Drowsiness suddenly overwhelms you as you fall asleep!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "Drowsiness suddenly overwhelms you as you fall asleep!"), 5) to_chat(user, "You send [C] to sleep.") //STRIP @@ -1038,7 +1038,7 @@ for(var/obj/item/W in items) if(W == H.wear_suit) H.dropItemToGround(W, TRUE) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, H, "Before you can even think about it, you quickly remove your clothes in response to [(E.lewd?"your [E.enthrallGender]'s command'":"[E.master]'s directive'")]."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, "Before you can even think about it, you quickly remove your clothes in response to [(E.lewd?"your [E.enthrallGender]'s command'":"[E.master]'s directive'")]."), 5) E.cooldown += 10 //WALK @@ -1051,7 +1051,7 @@ if(L.m_intent != MOVE_INTENT_WALK) L.toggle_move_intent() E.cooldown += 1 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You slow down to a walk."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You slow down to a walk."), 5) to_chat(user, "You encourage [L] to slow down.") //RUN @@ -1064,7 +1064,7 @@ if(L.m_intent != MOVE_INTENT_RUN) L.toggle_move_intent() E.cooldown += 1 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You speed up into a jog!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You speed up into a jog!"), 5) to_chat(user, "You encourage [L] to pick up the pace!") //LIE DOWN @@ -1076,7 +1076,7 @@ if(2 to INFINITY) L.lay_down() E.cooldown += 10 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "[(E.lewd?"You eagerly lie down!":"You suddenly lie down!")]"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "[(E.lewd?"You eagerly lie down!":"You suddenly lie down!")]"), 5) to_chat(user, "You encourage [L] to lie down.") //KNOCKDOWN @@ -1088,7 +1088,7 @@ if(2 to INFINITY) L.DefaultCombatKnockdown(30 * power_multiplier * E.phase) E.cooldown += 8 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You suddenly drop to the ground!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You suddenly drop to the ground!"), 5) to_chat(user, "You encourage [L] to drop down to the ground.") //tier3 @@ -1107,7 +1107,7 @@ for (var/trigger in E.customTriggers) speaktrigger += "[trigger], " to_chat(user, "[C] whispers, \"[speaktrigger] are my triggers.\"")//So they don't trigger themselves! - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, span_notice("You whisper your triggers to [(E.lewd?"Your [E.enthrallGender]":"[E.master]")].")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_notice("You whisper your triggers to [(E.lewd?"Your [E.enthrallGender]":"[E.master]")].")), 5) //CUSTOM TRIGGERS @@ -1142,7 +1142,7 @@ E.customTriggers[trigger] = trigger2 log_reagent("FERMICHEM: [H] has been implanted by [user] with [trigger], triggering [trigger2].") E.mental_capacity -= 5 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, H, span_notice("[(E.lewd?"your [E.enthrallGender]":"[E.master]")] whispers you a new trigger.")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, span_notice("[(E.lewd?"your [E.enthrallGender]":"[E.master]")] whispers you a new trigger.")), 5) to_chat(user, "You sucessfully set the trigger word [trigger] in [H]") else to_chat(user, span_warning("Your pet looks at you confused, it seems they don't understand that effect!")) @@ -1203,7 +1203,7 @@ objective = replacetext(lowertext(objective), "strangle", "meow at") message_admins("[H] has been implanted by [user] with the objective [objective].") log_reagent("FERMICHEM: [H] has been implanted by [user] with the objective [objective] via MKUltra.") - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, H, span_notice("[(E.lewd?"Your [E.enthrallGender]":"[E.master]")] whispers you a new objective.")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, span_notice("[(E.lewd?"Your [E.enthrallGender]":"[E.master]")] whispers you a new objective.")), 5) brainwash(H, objective) E.mental_capacity -= 200 to_chat(user, "You sucessfully give an objective to [H]") @@ -1232,7 +1232,7 @@ if(E.phase > 1) if(user.ckey == E.enthrallID && user.real_name == E.master.real_name) E.master = user - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, H, span_nicegreen("[(E.lewd?"You hear the words of your [E.enthrallGender] again!! They're back!!":"You recognise the voice of [E.master].")]")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, span_nicegreen("[(E.lewd?"You hear the words of your [E.enthrallGender] again!! They're back!!":"You recognise the voice of [E.master].")]")), 5) to_chat(user, "[H] looks at you with sparkling eyes, recognising you!") //I dunno how to do state objectives without them revealing they're an antag @@ -1247,7 +1247,7 @@ E.status = "heal" E.statusStrength = (5 * power_multiplier) E.cooldown += 5 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You begin to lick your wounds."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You begin to lick your wounds."), 5) L.Stun(15 * power_multiplier) to_chat(user, "[L] begins to lick their wounds.") @@ -1260,7 +1260,7 @@ if(3 to INFINITY) L.Stun(40 * power_multiplier) E.cooldown += 8 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "Your muscles freeze up!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "Your muscles freeze up!"), 5) to_chat(user, "You cause [L] to freeze up!") //HALLUCINATE @@ -1281,7 +1281,7 @@ switch(E.phase) if(3 to INFINITY) L.adjust_bodytemperature(50 * power_multiplier)//This seems nuts, reduced it, but then it didn't do anything, so I reverted it. - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You feel your metabolism speed up!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You feel your metabolism speed up!"), 5) to_chat(user, "You speed [L]'s metabolism up!") //COLD @@ -1292,7 +1292,7 @@ switch(E.phase) if(3 to INFINITY) L.adjust_bodytemperature(-50 * power_multiplier) - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You feel your metabolism slow down!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You feel your metabolism slow down!"), 5) to_chat(user, "You slow [L]'s metabolism down!") //GET UP @@ -1306,7 +1306,7 @@ L.SetAllImmobility(0) L.SetUnconscious(0) //i said get up i don't care if you're being tased E.cooldown += 10 //This could be really strong - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You jump to your feet from sheer willpower!"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You jump to your feet from sheer willpower!"), 5) to_chat(user, "You spur [L] to their feet!") //PACIFY @@ -1318,7 +1318,7 @@ if(3)//Tier 3 only E.status = "pacify" E.cooldown += 10 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, L, "You feel like never hurting anyone ever again."), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You feel like never hurting anyone ever again."), 5) to_chat(user, "You remove any intent to harm from [L]'s mind.") //CHARGE diff --git a/modular_citadel/code/datums/status_effects/chems.dm b/modular_citadel/code/datums/status_effects/chems.dm index a1ad30ce304..d05fd93bd5d 100644 --- a/modular_citadel/code/datums/status_effects/chems.dm +++ b/modular_citadel/code/datums/status_effects/chems.dm @@ -484,14 +484,14 @@ //Speak (Forces player to talk) if (lowertext(customTriggers[trigger][1]) == "speak")//trigger2 var/saytext = "Your mouth moves on it's own before you can even catch it." - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, span_notice("[saytext]")), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_notice("[saytext]")), 5) addtimer(CALLBACK(C, /atom/movable/proc/say, "[customTriggers[trigger][2]]"), 5) log_reagent("FERMICHEM: MKULTRA: [owner] ckey: [owner.key] has been forced to say: \"[customTriggers[trigger][2]]\" from previous trigger.") //Echo (repeats message!) allows customisation, but won't display var calls! Defaults to hypnophrase. else if (lowertext(customTriggers[trigger][1]) == "echo")//trigger2 - addtimer(CALLBACK(GLOBAL_PROC, .proc/to_chat, C, "[customTriggers[trigger][2]]"), 5) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "[customTriggers[trigger][2]]"), 5) //(to_chat(owner, "[customTriggers[trigger][2]]"))//trigger3 //Shocking truth! From e7df6902231a25852a6a68fc28429ad2704a644b Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 12:41:38 -0400 Subject: [PATCH 03/52] GLOBAL_PROC -> GLOBAL_PROC_REF /proc only --- code/__DEFINES/callbacks.dm | 2 +- code/__DEFINES/cooldowns.dm | 4 ++-- code/__HELPERS/game.dm | 4 ++-- code/__HELPERS/unsorted.dm | 8 ++++---- code/controllers/configuration/configuration.dm | 2 +- code/datums/brain_damage/imaginary_friend.dm | 2 +- code/game/mecha/mecha.dm | 2 +- code/game/objects/effects/spawners/xeno_egg_delivery.dm | 2 +- code/game/world.dm | 2 +- code/modules/awaymissions/capture_the_flag.dm | 8 ++++---- .../food_and_drinks/kitchen_machinery/monkeyrecycler.dm | 2 +- code/modules/mob/living/simple_animal/bot/mulebot.dm | 2 +- code/modules/reagents/reagent_containers/pill.dm | 2 +- modular_citadel/code/modules/mentor/mentorhelp.dm | 2 +- 14 files changed, 22 insertions(+), 22 deletions(-) diff --git a/code/__DEFINES/callbacks.dm b/code/__DEFINES/callbacks.dm index f25dfdf1500..c02e31c01df 100644 --- a/code/__DEFINES/callbacks.dm +++ b/code/__DEFINES/callbacks.dm @@ -2,4 +2,4 @@ /// A shorthand for the callback datum, [documented here](datum/callback.html) #define CALLBACK new /datum/callback #define INVOKE_ASYNC world.ImmediateInvokeAsync -#define CALLBACK_NEW(typepath, args) CALLBACK(GLOBAL_PROC, /proc/___callbacknew, typepath, args) +#define CALLBACK_NEW(typepath, args) CALLBACK(GLOBAL_PROC_REF(___callbacknew), typepath, args) diff --git a/code/__DEFINES/cooldowns.dm b/code/__DEFINES/cooldowns.dm index f1d0e677ba3..c31d5e85d10 100644 --- a/code/__DEFINES/cooldowns.dm +++ b/code/__DEFINES/cooldowns.dm @@ -34,7 +34,7 @@ #define COMSIG_CD_STOP(cd_index) "cooldown_[cd_index]" #define COMSIG_CD_RESET(cd_index) "cd_reset_[cd_index]" -#define TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(GLOBAL_PROC, /proc/end_cooldown, cd_source, cd_index), cd_time)) +#define TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(GLOBAL_PROC_REF(end_cooldown), cd_source, cd_index), cd_time)) #define TIMER_COOLDOWN_CHECK(cd_source, cd_index) LAZYACCESS(cd_source.cooldowns, cd_index) @@ -47,7 +47,7 @@ * A bit more expensive than the regular timers, but can be reset before they end and the time left can be checked. */ -#define S_TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(GLOBAL_PROC, /proc/end_cooldown, cd_source, cd_index), cd_time, TIMER_STOPPABLE)) +#define S_TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(GLOBAL_PROC_REF(end_cooldown), cd_source, cd_index), cd_time, TIMER_STOPPABLE)) #define S_TIMER_COOLDOWN_RESET(cd_source, cd_index) reset_cooldown(cd_source, cd_index) diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index 69da3d74fa6..1db4dd1fdc2 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -388,14 +388,14 @@ /proc/flick_overlay(image/I, list/show_to, duration) for(var/client/C in show_to) C.images += I - addtimer(CALLBACK(GLOBAL_PROC, /proc/remove_images_from_clients, I, show_to), duration, TIMER_CLIENT_TIME) + addtimer(CALLBACK(GLOBAL_PROC_REF(remove_images_from_clients), I, show_to), duration, TIMER_CLIENT_TIME) /proc/flick_overlay_global(image/I, list/show_to, duration) if(!show_to || !length(show_to) || !I) return for(var/client/add_to in show_to) add_to.images += I - addtimer(CALLBACK(GLOBAL_PROC, /proc/remove_images_from_clients, I, show_to), duration, TIMER_CLIENT_TIME) + addtimer(CALLBACK(GLOBAL_PROC_REF(remove_images_from_clients), I, show_to), duration, TIMER_CLIENT_TIME) /proc/flick_overlay_view(image/I, atom/target, duration) //wrapper for the above, flicks to everyone who can see the target atom var/list/viewing = list() diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index 322d78b34f8..fc354c309b8 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1360,9 +1360,9 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) //datum may be null, but it does need to be a typed var #define NAMEOF(datum, X) (#X || ##datum.##X) -#define VARSET_LIST_CALLBACK(target, var_name, var_value) CALLBACK(GLOBAL_PROC, /proc/___callbackvarset, ##target, ##var_name, ##var_value) +#define VARSET_LIST_CALLBACK(target, var_name, var_value) CALLBACK(GLOBAL_PROC_REF(___callbackvarset), ##target, ##var_name, ##var_value) //dupe code because dm can't handle 3 level deep macros -#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(GLOBAL_PROC, /proc/___callbackvarset, ##datum, NAMEOF(##datum, ##var), ##var_value) +#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(GLOBAL_PROC_REF(___callbackvarset), ##datum, NAMEOF(##datum, ##var), ##var_value) /proc/___callbackvarset(list_or_datum, var_name, var_value) if(length(list_or_datum)) @@ -1374,8 +1374,8 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) else D.vars[var_name] = var_value -#define TRAIT_CALLBACK_ADD(target, trait, source) CALLBACK(GLOBAL_PROC, /proc/___TraitAdd, ##target, ##trait, ##source) -#define TRAIT_CALLBACK_REMOVE(target, trait, source) CALLBACK(GLOBAL_PROC, /proc/___TraitRemove, ##target, ##trait, ##source) +#define TRAIT_CALLBACK_ADD(target, trait, source) CALLBACK(GLOBAL_PROC_REF(___TraitAdd), ##target, ##trait, ##source) +#define TRAIT_CALLBACK_REMOVE(target, trait, source) CALLBACK(GLOBAL_PROC_REF(___TraitRemove), ##target, ##trait, ##source) ///DO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback. /proc/___TraitAdd(target,trait,source) diff --git a/code/controllers/configuration/configuration.dm b/code/controllers/configuration/configuration.dm index 2a6e80275f0..87085dec46d 100644 --- a/code/controllers/configuration/configuration.dm +++ b/code/controllers/configuration/configuration.dm @@ -460,4 +460,4 @@ Example config: //Message admins when you can. /datum/controller/configuration/proc/DelayedMessageAdmins(text) - addtimer(CALLBACK(GLOBAL_PROC, /proc/message_admins, text), 0) + addtimer(CALLBACK(GLOBAL_PROC_REF(message_admins), text), 0) diff --git a/code/datums/brain_damage/imaginary_friend.dm b/code/datums/brain_damage/imaginary_friend.dm index b465eefaef7..05ff24e82d2 100644 --- a/code/datums/brain_damage/imaginary_friend.dm +++ b/code/datums/brain_damage/imaginary_friend.dm @@ -172,7 +172,7 @@ if(owner.client) var/mutable_appearance/MA = mutable_appearance('icons/mob/talk.dmi', src, "default[say_test(message)]", FLY_LAYER) MA.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA - INVOKE_ASYNC(GLOBAL_PROC, /proc/flick_overlay, MA, list(owner.client), 30) + INVOKE_ASYNC(GLOBAL_PROC_REF(flick_overlay), MA, list(owner.client), 30) for(var/mob/M in GLOB.dead_mob_list) var/link = FOLLOW_LINK(M, owner) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index bd2d627af82..9965a3068e2 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -367,7 +367,7 @@ for(var/mob/M in get_hearers_in_view(7,src)) if(M.client) speech_bubble_recipients.Add(M.client) - INVOKE_ASYNC(GLOBAL_PROC, /proc/flick_overlay, image('icons/mob/talk.dmi', src, "machine[say_test(raw_message)]",MOB_LAYER+1), speech_bubble_recipients, 30) + INVOKE_ASYNC(GLOBAL_PROC_REF(flick_overlay), image('icons/mob/talk.dmi', src, "machine[say_test(raw_message)]",MOB_LAYER+1), speech_bubble_recipients, 30) //////////////////////////// ///// Action processing //// diff --git a/code/game/objects/effects/spawners/xeno_egg_delivery.dm b/code/game/objects/effects/spawners/xeno_egg_delivery.dm index dd4a6ea479d..50b1a1cf8ac 100644 --- a/code/game/objects/effects/spawners/xeno_egg_delivery.dm +++ b/code/game/objects/effects/spawners/xeno_egg_delivery.dm @@ -15,5 +15,5 @@ message_admins("An alien egg has been delivered to [ADMIN_VERBOSEJMP(T)].") log_game("An alien egg has been delivered to [AREACOORD(T)]") var/message = "Attention [station_name()], we have entrusted you with a research specimen in [get_area_name(T, TRUE)]. Remember to follow all safety precautions when dealing with the specimen." - SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, /proc/_addtimer, CALLBACK(GLOBAL_PROC, /proc/print_command_report, message), announcement_time)) + SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(_addtimer), CALLBACK(GLOBAL_PROC_REF(print_command_report), message), announcement_time)) return INITIALIZE_HINT_QDEL diff --git a/code/game/world.dm b/code/game/world.dm index c11f5c2f83a..6e6dd1f4178 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -89,7 +89,7 @@ GLOBAL_LIST(topic_status_cache) #else cb = VARSET_CALLBACK(SSticker, force_ending, TRUE) #endif - SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC, /proc/_addtimer, cb, 10 SECONDS)) + SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(_addtimer), cb, 10 SECONDS)) /world/proc/SetupLogs() var/override_dir = params[OVERRIDE_LOG_DIRECTORY_PARAMETER] diff --git a/code/modules/awaymissions/capture_the_flag.dm b/code/modules/awaymissions/capture_the_flag.dm index 7cbb8a35817..07795b2afda 100644 --- a/code/modules/awaymissions/capture_the_flag.dm +++ b/code/modules/awaymissions/capture_the_flag.dm @@ -385,7 +385,7 @@ /obj/item/gun/ballistic/automatic/pistol/deagle/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC, /proc/ctf_floor_vanish, src), 1) + addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /obj/item/ammo_casing/a50/ctf projectile_type = /obj/item/projectile/bullet/ctf @@ -405,14 +405,14 @@ /obj/item/gun/ballistic/automatic/laser/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC, /proc/ctf_floor_vanish, src), 1) + addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /obj/item/ammo_box/magazine/recharge/ctf ammo_type = /obj/item/ammo_casing/caseless/laser/ctf /obj/item/ammo_box/magazine/recharge/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC, /proc/ctf_floor_vanish, src), 1) + addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /obj/item/ammo_casing/caseless/laser/ctf projectile_type = /obj/item/projectile/beam/ctf @@ -477,7 +477,7 @@ /obj/item/claymore/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC, /proc/ctf_floor_vanish, src), 1) + addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /datum/outfit/ctf name = "CTF" diff --git a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm index ca32971bd01..c1f6f8d8036 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm @@ -70,7 +70,7 @@ use_power(500) grinded++ addtimer(VARSET_CALLBACK(src, pixel_x, initial(pixel_x))) - addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, user, span_notice("The machine now has [grinded] monkey\s worth of material stored."))) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), user, span_notice("The machine now has [grinded] monkey\s worth of material stored."))) /obj/machinery/monkey_recycler/interact(mob/user) if(grinded >= required_grind) diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index fc846e97fe4..944cb71366f 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -476,7 +476,7 @@ num_steps-- if(mode != BOT_IDLE) var/process_timer = addtimer(CALLBACK(src, .proc/process_bot), 2, TIMER_LOOP|TIMER_STOPPABLE) - addtimer(CALLBACK(GLOBAL_PROC, /proc/deltimer, process_timer), (num_steps*2) + 1) + addtimer(CALLBACK(GLOBAL_PROC_REF(deltimer), process_timer), (num_steps*2) + 1) /mob/living/simple_animal/bot/mulebot/proc/process_bot() if(!on || client) diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index cf23c7af85a..9ba72e284d1 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -51,7 +51,7 @@ var/makes_me_think = pick(strings("redpill.json", "redpill_questions")) if(icon_state == "pill4" && prob(5)) //you take the red pill - you stay in Wonderland, and I show you how deep the rabbit hole goes - addtimer(CALLBACK(GLOBAL_PROC, /proc/to_chat, M, span_notice("[makes_me_think]")), 50) + addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), M, span_notice("[makes_me_think]")), 50) log_combat(user, M, "fed", reagents.log_list()) if(reagents.total_volume) diff --git a/modular_citadel/code/modules/mentor/mentorhelp.dm b/modular_citadel/code/modules/mentor/mentorhelp.dm index d3be97f4c90..d382a3a4194 100644 --- a/modular_citadel/code/modules/mentor/mentorhelp.dm +++ b/modular_citadel/code/modules/mentor/mentorhelp.dm @@ -8,7 +8,7 @@ //remove out mentorhelp verb temporarily to prevent spamming of mentors. remove_verb(src, /client/verb/mentorhelp) - addtimer(CALLBACK(GLOBAL_PROC, /proc/add_verb, src, /client/verb/mentorhelp), 30 SECONDS) + addtimer(CALLBACK(GLOBAL_PROC_REF(add_verb), src, /client/verb/mentorhelp), 30 SECONDS) msg = sanitize(copytext_char(msg, 1, MAX_MESSAGE_LEN)) if(!msg || !mob) From bbd773e06c9815ad1ae41704b9a082aa3edbfb81 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 12:41:55 -0400 Subject: [PATCH 04/52] call -> LIBCALL --- code/__HELPERS/_extools_api.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/__HELPERS/_extools_api.dm b/code/__HELPERS/_extools_api.dm index ab88131d96f..fd106100b76 100644 --- a/code/__HELPERS/_extools_api.dm +++ b/code/__HELPERS/_extools_api.dm @@ -16,7 +16,7 @@ GLOBAL_LIST_EMPTY(auxtools_initialized) #define AUXTOOLS_CHECK(LIB)\ if (!GLOB.auxtools_initialized[LIB]) {\ if (fexists(LIB)) {\ - var/string = call(LIB,"auxtools_init")();\ + var/string = LIBCALL(LIB,"auxtools_init")();\ if(findtext(string, "SUCCESS")) {\ GLOB.auxtools_initialized[LIB] = TRUE;\ } else {\ @@ -29,6 +29,6 @@ GLOBAL_LIST_EMPTY(auxtools_initialized) #define AUXTOOLS_SHUTDOWN(LIB)\ if (GLOB.auxtools_initialized[LIB] && fexists(LIB)){\ - call(LIB,"auxtools_shutdown")();\ + LIBCALL(LIB,"auxtools_shutdown")();\ GLOB.auxtools_initialized[LIB] = FALSE;\ }\ From 7fb4c6df4ac7b3b50c19e3a559980c59c55fab97 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 13:04:30 -0400 Subject: [PATCH 05/52] .proc -> PROC_REF --- code/__HELPERS/global_lists.dm | 2 +- code/__HELPERS/roundend.dm | 4 +- code/_onclick/ai.dm | 2 +- code/_onclick/hud/alert.dm | 2 +- code/_onclick/hud/credits.dm | 2 +- code/_onclick/hud/fullscreen.dm | 2 +- code/_onclick/hud/parallax.dm | 2 +- code/_onclick/hud/radial.dm | 2 +- code/_onclick/hud/screen_objects/storage.dm | 4 +- code/_onclick/other_mobs.dm | 2 +- code/controllers/admin.dm | 2 +- code/controllers/subsystem/artifacts.dm | 4 +- code/controllers/subsystem/job.dm | 2 +- code/controllers/subsystem/mapping.dm | 2 +- code/controllers/subsystem/matchmaking.dm | 8 +-- code/controllers/subsystem/monster_wave.dm | 2 +- .../subsystem/movement/movement_types.dm | 16 ++--- code/controllers/subsystem/nightcycle.dm | 2 +- code/controllers/subsystem/pai.dm | 2 +- .../subsystem/processing/quirks.dm | 4 +- .../subsystem/processing/weather.dm | 2 +- code/controllers/subsystem/progress_bars.dm | 4 +- code/controllers/subsystem/radturf.dm | 4 +- code/controllers/subsystem/shuttle.dm | 2 +- code/controllers/subsystem/throwing.dm | 2 +- code/controllers/subsystem/ticker.dm | 2 +- code/controllers/subsystem/timer.dm | 2 +- .../subsystem/validball_spawner.dm | 2 +- code/datums/action.dm | 2 +- code/datums/beam.dm | 4 +- code/datums/brain_damage/brain_trauma.dm | 4 +- code/datums/brain_damage/imaginary_friend.dm | 4 +- code/datums/brain_damage/phobia.dm | 2 +- code/datums/brain_damage/severe.dm | 2 +- code/datums/brain_damage/special.dm | 4 +- code/datums/browser.dm | 4 +- code/datums/callback.dm | 2 +- code/datums/chatmessage.dm | 8 +-- code/datums/cinematic.dm | 4 +- code/datums/components/anti_magic.dm | 8 +-- code/datums/components/archaeology.dm | 4 +- code/datums/components/armor_plate.dm | 8 +-- code/datums/components/artifacts.dm | 38 +++++----- code/datums/components/bane.dm | 4 +- code/datums/components/bouncy.dm | 4 +- code/datums/components/butchering.dm | 8 +-- code/datums/components/caltrop.dm | 4 +- code/datums/components/chasm.dm | 4 +- code/datums/components/cleaning.dm | 2 +- code/datums/components/combat_mode.dm | 20 +++--- code/datums/components/connect_containers.dm | 6 +- code/datums/components/connect_loc_behalf.dm | 4 +- code/datums/components/construction.dm | 2 +- code/datums/components/crafting/crafting.dm | 4 +- code/datums/components/decal.dm | 6 +- code/datums/components/decals/blood.dm | 2 +- code/datums/components/drift.dm | 20 +++--- code/datums/components/earhealing.dm | 2 +- code/datums/components/edible.dm | 8 +-- code/datums/components/edit_complainer.dm | 2 +- code/datums/components/embedded.dm | 14 ++-- code/datums/components/empprotection.dm | 2 +- code/datums/components/explodable.dm | 18 ++--- code/datums/components/field_of_vision.dm | 32 ++++----- code/datums/components/footstep.dm | 4 +- code/datums/components/forced_gravity.dm | 4 +- code/datums/components/forensics.dm | 2 +- code/datums/components/fried.dm | 4 +- code/datums/components/glow_heal.dm | 2 +- code/datums/components/gps.dm | 10 +-- code/datums/components/identification.dm | 6 +- code/datums/components/igniter.dm | 6 +- code/datums/components/infective.dm | 20 +++--- code/datums/components/jousting.dm | 10 +-- code/datums/components/killerqueen.dm | 8 +-- code/datums/components/knockback.dm | 6 +- code/datums/components/knockoff.dm | 2 +- code/datums/components/label.dm | 4 +- .../components/largeobjecttransparency.dm | 10 +-- code/datums/components/lifesteal.dm | 6 +- code/datums/components/lockon_aiming.dm | 4 +- code/datums/components/lore_dump.dm | 4 +- code/datums/components/magnetic_catch.dm | 18 ++--- code/datums/components/material_container.dm | 4 +- code/datums/components/melee_special.dm | 16 ++--- code/datums/components/mirv.dm | 2 +- code/datums/components/mood.dm | 22 +++--- code/datums/components/nanites.dm | 46 ++++++------ code/datums/components/omen.dm | 6 +- code/datums/components/orbiter.dm | 6 +- code/datums/components/overlay_lighting.dm | 32 ++++----- code/datums/components/paintable.dm | 2 +- code/datums/components/pellet_cloud.dm | 30 ++++---- code/datums/components/plumbing/_plumbing.dm | 4 +- code/datums/components/rad_insulation.dm | 6 +- code/datums/components/radiation_area.dm | 4 +- code/datums/components/radiation_turf.dm | 14 ++-- code/datums/components/radioactive.dm | 8 +-- code/datums/components/remote_materials.dm | 4 +- code/datums/components/reskin.dm | 12 ++-- code/datums/components/riding.dm | 8 +-- code/datums/components/rotation.dm | 6 +- code/datums/components/second_wind.dm | 8 +-- code/datums/components/shielded.dm | 12 ++-- code/datums/components/signal_redirect.dm | 2 +- code/datums/components/slippery.dm | 12 ++-- code/datums/components/spawner.dm | 18 ++--- code/datums/components/spooky.dm | 2 +- code/datums/components/squeak.dm | 24 +++---- code/datums/components/stationloving.dm | 10 +-- .../components/storage/concrete/_concrete.dm | 8 +-- .../storage/concrete/bag_of_holding.dm | 2 +- .../components/storage/concrete/emergency.dm | 2 +- code/datums/components/storage/storage.dm | 72 +++++++++---------- code/datums/components/storage/ui.dm | 2 +- code/datums/components/summoning.dm | 8 +-- code/datums/components/swarming.dm | 6 +- code/datums/components/tackle.dm | 12 ++-- code/datums/components/thermite.dm | 6 +- code/datums/components/twohanded.dm | 18 ++--- code/datums/components/uplink.dm | 18 ++--- code/datums/components/virtual_reality.dm | 22 +++--- code/datums/components/waddling.dm | 2 +- code/datums/components/wearertargeting.dm | 4 +- code/datums/components/wet_floor.dm | 8 +-- code/datums/dash_weapon.dm | 2 +- code/datums/diseases/advance/symptoms/heal.dm | 4 +- .../diseases/advance/symptoms/shedding.dm | 4 +- code/datums/diseases/pierrot_throat.dm | 2 +- code/datums/elements/_element.dm | 2 +- code/datums/elements/art.dm | 8 +-- code/datums/elements/beauty.dm | 4 +- code/datums/elements/bsa_blocker.dm | 2 +- code/datums/elements/cleaning.dm | 2 +- code/datums/elements/connect_loc.dm | 2 +- code/datums/elements/decal.dm | 10 +-- code/datums/elements/drag_pickup.dm | 2 +- code/datums/elements/dwarfism.dm | 2 +- code/datums/elements/earhealing.dm | 2 +- code/datums/elements/embed.dm | 14 ++-- code/datums/elements/empprotection.dm | 2 +- code/datums/elements/firestacker.dm | 6 +- code/datums/elements/flavor_text.dm | 12 ++-- code/datums/elements/forced_gravity.dm | 4 +- .../datums/elements/ghost_role_eligibility.dm | 2 +- code/datums/elements/light_blocking.dm | 2 +- code/datums/elements/mob_holder.dm | 14 ++-- code/datums/elements/polychromic.dm | 24 +++---- code/datums/elements/scavenging.dm | 8 +-- code/datums/elements/spellcasting.dm | 8 +-- code/datums/elements/squish.dm | 2 +- code/datums/elements/swimming.dm | 2 +- code/datums/elements/sword_point.dm | 2 +- code/datums/elements/tactical.dm | 4 +- code/datums/elements/update_icon_blocker.dm | 2 +- .../elements/update_icon_updates_onmob.dm | 2 +- code/datums/elements/wuv.dm | 6 +- code/datums/holocall.dm | 2 +- code/datums/hud.dm | 4 +- code/datums/looping_sounds/_looping_sound.dm | 8 +-- code/datums/looping_sounds/looping_sound.dm | 4 +- code/datums/martial/wrestling.dm | 2 +- code/datums/mutations/_mutations.dm | 4 +- code/datums/mutations/actions.dm | 2 +- code/datums/mutations/body.dm | 2 +- code/datums/mutations/hulk.dm | 2 +- code/datums/mutations/speech.dm | 10 +-- code/datums/skills/_skill_modifier.dm | 2 +- code/datums/status_effects/debuffs.dm | 2 +- code/datums/status_effects/gas.dm | 2 +- code/datums/status_effects/wound_effects.dm | 6 +- code/datums/tattoo.dm | 6 +- code/datums/tgs_event_handler.dm | 2 +- code/datums/traits/_quirk.dm | 2 +- code/datums/traits/negative.dm | 4 +- code/datums/weather/weather.dm | 6 +- code/datums/wounds/bleed.dm | 8 +-- code/datums/wounds/bones.dm | 12 ++-- code/datums/wounds/burns.dm | 4 +- code/game/area/areas.dm | 8 +-- code/game/atoms.dm | 2 +- code/game/atoms_movable.dm | 2 +- code/game/atoms_movement.dm | 2 +- .../gamemodes/dynamic/dynamic_hijacking.dm | 2 +- .../game/gamemodes/dynamic/ruleset_picking.dm | 6 +- .../game/gamemodes/end_of_round_deathmatch.dm | 2 +- code/game/gamemodes/game_mode.dm | 2 +- code/game/machinery/_machinery.dm | 4 +- code/game/machinery/ai_slipper.dm | 2 +- code/game/machinery/autolathe.dm | 6 +- code/game/machinery/camera/camera.dm | 4 +- code/game/machinery/cloning.dm | 2 +- code/game/machinery/colormate.dm | 2 +- code/game/machinery/computer/_computer.dm | 6 +- code/game/machinery/computer/apc_control.dm | 2 +- .../game/machinery/computer/buildandrepair.dm | 4 +- code/game/machinery/computer/camera.dm | 2 +- code/game/machinery/computer/cloning.dm | 2 +- code/game/machinery/computer/dna_console.dm | 2 +- .../machinery/computer/gulag_teleporter.dm | 2 +- .../computer/prisoner/gulag_teleporter.dm | 2 +- code/game/machinery/computer/teleporter.dm | 4 +- code/game/machinery/dance_machine.dm | 2 +- code/game/machinery/dna_scanner.dm | 2 +- code/game/machinery/doors/airlock.dm | 24 +++---- code/game/machinery/doors/alarmlock.dm | 2 +- code/game/machinery/doors/door.dm | 4 +- code/game/machinery/doors/poddoor.dm | 4 +- code/game/machinery/doors/windowdoor.dm | 8 +-- .../embedded_controller_base.dm | 2 +- code/game/machinery/exp_cloner.dm | 4 +- code/game/machinery/harvester.dm | 4 +- code/game/machinery/hypnochair.dm | 2 +- code/game/machinery/limbgrower.dm | 2 +- code/game/machinery/magnet.dm | 4 +- code/game/machinery/mass_driver.dm | 4 +- code/game/machinery/obstacles_barricades.dm | 8 +-- .../machinery/porta_turret/portable_turret.dm | 20 +++--- code/game/machinery/recycler.dm | 6 +- code/game/machinery/requests_console.dm | 2 +- code/game/machinery/sheetifier.dm | 4 +- code/game/machinery/slotmachine.dm | 4 +- code/game/machinery/suit_storage_unit.dm | 4 +- code/game/machinery/syndicatebomb.dm | 2 +- .../machinery/telecomms/computers/message.dm | 4 +- code/game/machinery/transformer.dm | 2 +- code/game/machinery/washing_machine.dm | 2 +- code/game/mecha/combat/durand.dm | 6 +- code/game/mecha/equipment/mecha_equipment.dm | 2 +- code/game/mecha/equipment/tools/work_tools.dm | 2 +- code/game/mecha/equipment/weapons/weapons.dm | 2 +- code/game/mecha/mech_fabricator.dm | 2 +- code/game/objects/effects/alien_acid.dm | 2 +- code/game/objects/effects/anomalies.dm | 10 +-- code/game/objects/effects/blessing.dm | 2 +- code/game/objects/effects/contraband.dm | 2 +- code/game/objects/effects/decals/cleanable.dm | 2 +- .../effects/decals/cleanable/humans.dm | 4 +- .../effects/effect_system/effect_system.dm | 6 +- .../effect_system/effects_explosion.dm | 2 +- .../effects/effect_system/effects_smoke.dm | 4 +- .../effect_system/effects_smoke_new.dm | 2 +- code/game/objects/effects/glowshroom.dm | 4 +- code/game/objects/effects/mines.dm | 4 +- code/game/objects/effects/portals.dm | 2 +- code/game/objects/effects/proximity.dm | 6 +- .../game/objects/effects/spawners/lootdrop.dm | 2 +- code/game/objects/effects/step_triggers.dm | 4 +- .../effects/temporary_visuals/clockcult.dm | 2 +- .../temporary_visuals/miscellaneous.dm | 2 +- code/game/objects/hand_items.dm | 2 +- code/game/objects/items.dm | 8 +-- code/game/objects/items/RCD.dm | 12 ++-- code/game/objects/items/RCL.dm | 4 +- code/game/objects/items/binoculars.dm | 2 +- code/game/objects/items/body_egg.dm | 4 +- code/game/objects/items/broom.dm | 2 +- code/game/objects/items/button_item.dm | 6 +- code/game/objects/items/candle.dm | 2 +- code/game/objects/items/cardboard_cutouts.dm | 2 +- code/game/objects/items/cards_ids.dm | 2 +- code/game/objects/items/charter.dm | 2 +- code/game/objects/items/crab17.dm | 8 +-- code/game/objects/items/debug_items.dm | 2 +- code/game/objects/items/defib.dm | 2 +- .../game/objects/items/devices/battery_box.dm | 6 +- .../objects/items/devices/desynchronizer.dm | 2 +- .../devices/electroadaptive_pseudocircuit.dm | 2 +- .../objects/items/devices/geiger_counter.dm | 6 +- code/game/objects/items/devices/megaphone.dm | 2 +- .../items/devices/portable_blender_brain.dm | 28 ++++---- .../devices/portable_chem_blenderbelt.dm | 28 ++++---- .../objects/items/devices/pressureplates.dm | 4 +- .../game/objects/items/devices/radio/radio.dm | 4 +- .../items/devices/reverse_bear_trap.dm | 2 +- code/game/objects/items/devices/scanners.dm | 2 +- .../objects/items/devices/traitordevices.dm | 2 +- .../objects/items/devices/transfer_valve.dm | 6 +- code/game/objects/items/dualsaber.dm | 8 +-- code/game/objects/items/eightball.dm | 2 +- code/game/objects/items/electrostaff.dm | 4 +- code/game/objects/items/fishingrod.dm | 6 +- .../objects/items/grenades/chem_grenade.dm | 6 +- .../objects/items/grenades/clusterbuster.dm | 2 +- .../game/objects/items/grenades/ghettobomb.dm | 2 +- code/game/objects/items/grenades/grenade.dm | 10 +-- code/game/objects/items/grenades/plastic.dm | 10 +-- code/game/objects/items/handcuffs.dm | 4 +- code/game/objects/items/his_grace.dm | 4 +- code/game/objects/items/holy_weapons.dm | 4 +- code/game/objects/items/hot_potato.dm | 2 +- .../items/implants/implant_explosive.dm | 10 +-- .../objects/items/implants/implant_misc.dm | 4 +- .../objects/items/implants/implant_stealth.dm | 2 +- code/game/objects/items/loadout_beacons.dm | 4 +- code/game/objects/items/mannequin.dm | 6 +- code/game/objects/items/melee/f13twohanded.dm | 4 +- code/game/objects/items/melee/weaponry.dm | 16 ++--- code/game/objects/items/robot/robot_items.dm | 2 +- code/game/objects/items/shields.dm | 2 +- code/game/objects/items/singularityhammer.dm | 8 +-- code/game/objects/items/stacks/medical.dm | 2 +- .../game/objects/items/stacks/sheets/glass.dm | 2 +- code/game/objects/items/stacks/stack.dm | 6 +- code/game/objects/items/storage/_storage.dm | 2 +- code/game/objects/items/storage/bags.dm | 4 +- code/game/objects/items/storage/book.dm | 2 +- code/game/objects/items/storage/boxes.dm | 2 +- code/game/objects/items/tanks/jetpack.dm | 2 +- code/game/objects/items/teleportation.dm | 4 +- code/game/objects/items/theft_tools.dm | 4 +- code/game/objects/items/toys.dm | 8 +-- code/game/objects/items/validball.dm | 4 +- code/game/objects/obj_defense.dm | 2 +- code/game/objects/structures/aliens.dm | 4 +- code/game/objects/structures/barsigns.dm | 2 +- .../objects/structures/beds_chairs/chair.dm | 4 +- .../structures/crates_lockers/closets.dm | 2 +- .../crates_lockers/closets/cardboardbox.dm | 2 +- .../closets/secure/supplypod.dm | 8 +-- code/game/objects/structures/femur_breaker.dm | 4 +- code/game/objects/structures/guillotine.dm | 6 +- code/game/objects/structures/hivebot.dm | 2 +- code/game/objects/structures/holosign.dm | 4 +- .../structures/icemoon/cave_entrance.dm | 2 +- code/game/objects/structures/janicart.dm | 2 +- code/game/objects/structures/ladders.dm | 10 +-- .../structures/lavaland/necropolis_tendril.dm | 2 +- code/game/objects/structures/life_candle.dm | 2 +- code/game/objects/structures/mineral_doors.dm | 2 +- code/game/objects/structures/plasticflaps.dm | 2 +- code/game/objects/structures/railings.dm | 4 +- code/game/objects/structures/stairs.dm | 6 +- code/game/objects/structures/statues.dm | 2 +- code/game/objects/structures/tables_racks.dm | 10 +-- code/game/objects/structures/timeddoor.dm | 2 +- .../transit_tube_construction.dm | 2 +- code/game/objects/structures/traps.dm | 6 +- code/game/objects/structures/tribal_torch.dm | 6 +- code/game/objects/structures/wasteplants.dm | 2 +- code/game/objects/structures/watercloset.dm | 8 +-- .../objects/structures/windoor_assembly.dm | 2 +- code/game/objects/structures/window.dm | 14 ++-- code/game/turfs/simulated/minerals.dm | 6 +- code/modules/VR/vr_sleeper.dm | 10 +-- code/modules/WVM/wmv_buyer.dm | 4 +- code/modules/admin/verbs/SDQL2/SDQL_2.dm | 2 +- code/modules/admin/verbs/adminpm.dm | 2 +- code/modules/admin/verbs/one_click_antag.dm | 4 +- code/modules/admin/verbs/onlyone.dm | 2 +- .../abductor/equipment/abduction_gear.dm | 4 +- .../antagonists/abductor/equipment/gland.dm | 2 +- .../abductor/equipment/glands/access.dm | 2 +- .../abductor/equipment/glands/electric.dm | 2 +- .../abductor/equipment/glands/heal.dm | 6 +- .../abductor/equipment/glands/mindshock.dm | 2 +- .../abductor/equipment/glands/plasma.dm | 2 +- .../abductor/equipment/glands/quantum.dm | 2 +- .../antagonists/abductor/machinery/pad.dm | 4 +- .../antagonists/blob/blob/blobs/core.dm | 2 +- .../modules/antagonists/blob/blob/overmind.dm | 2 +- .../antagonists/bloodsucker/powers/feed.dm | 4 +- .../antagonists/bloodsucker/powers/haste.dm | 2 +- .../antagonists/bloodsucker/powers/lunge.dm | 4 +- .../bloodsucker/powers/mesmerize.dm | 4 +- .../changeling/powers/biodegrade.dm | 8 +-- .../changeling/powers/fakedeath.dm | 2 +- .../changeling/powers/mutations.dm | 4 +- .../changeling/powers/strained_muscles.dm | 2 +- .../changeling/powers/tiny_prick.dm | 2 +- .../clockcult/clock_effects/clock_sigils.dm | 6 +- .../clock_effects/spatial_gateway.dm | 4 +- .../clockcult/clock_items/clockwork_slab.dm | 4 +- .../clockcult/clock_items/judicial_visor.dm | 4 +- .../clock_items/replica_fabricator.dm | 2 +- .../clockcult/clock_mobs/_eminence.dm | 4 +- .../antagonists/clockcult/clock_scripture.dm | 4 +- .../ark_of_the_clockwork_justicar.dm | 4 +- .../clock_structures/eminence_spire.dm | 2 +- .../clockcult/clock_structures/reflector.dm | 2 +- .../clock_structures/taunting_trail.dm | 2 +- .../trap_triggers/pressure_sensor.dm | 2 +- .../clock_structures/traps/brass_skewer.dm | 4 +- .../clock_structures/traps/steam_vent.dm | 2 +- code/modules/antagonists/cult/cult.dm | 4 +- code/modules/antagonists/cult/cult_comms.dm | 2 +- code/modules/antagonists/cult/cult_items.dm | 10 +-- .../antagonists/cult/cult_structures.dm | 6 +- code/modules/antagonists/cult/runes.dm | 6 +- .../antagonists/disease/disease_mob.dm | 6 +- .../eldritch_cult/eldritch_knowledge.dm | 2 +- .../eldritch_cult/eldritch_magic.dm | 14 ++-- .../nukeop/equipment/borgchameleon.dm | 2 +- .../nukeop/equipment/nuclearbomb.dm | 6 +- code/modules/antagonists/nukeop/nukeop.dm | 2 +- code/modules/antagonists/revenant/revenant.dm | 6 +- .../revenant/revenant_abilities.dm | 10 +-- .../antagonists/revenant/revenant_blight.dm | 2 +- .../antagonists/slaughter/slaughter.dm | 2 +- code/modules/antagonists/swarmer/swarmer.dm | 2 +- .../antagonists/traitor/datum_traitor.dm | 2 +- .../traitor/equipment/Malf_Modules.dm | 2 +- .../antagonists/traitor/syndicate_contract.dm | 4 +- code/modules/arousal/genitals.dm | 2 +- code/modules/assembly/assembly.dm | 4 +- code/modules/assembly/bomb.dm | 4 +- code/modules/assembly/flash.dm | 4 +- code/modules/assembly/holder.dm | 6 +- code/modules/assembly/infrared.dm | 4 +- code/modules/assembly/mousetrap.dm | 4 +- code/modules/assembly/signaler.dm | 2 +- code/modules/assembly/voice.dm | 4 +- .../asset_cache/transports/asset_transport.dm | 4 +- .../components/binary_devices/valve.dm | 2 +- .../components/unary_devices/cryo.dm | 2 +- .../unary_devices/outlet_injector.dm | 4 +- code/modules/awaymissions/capture_the_flag.dm | 4 +- code/modules/awaymissions/corpse.dm | 2 +- .../awaymissions/mission_code/murderdome.dm | 2 +- .../awaymissions/mission_code/wildwest.dm | 2 +- .../modules/awaymissions/super_secret_room.dm | 2 +- code/modules/buildmode/buildmode.dm | 2 +- code/modules/cargo/packs/organic.dm | 2 +- code/modules/cargo/supplypod.dm | 14 ++-- code/modules/cargo/supplypod_beacon.dm | 2 +- code/modules/client/client_procs.dm | 4 +- code/modules/client/preferences_savefile.dm | 2 +- code/modules/clothing/clothing.dm | 4 +- code/modules/clothing/glasses/phantomthief.dm | 2 +- code/modules/clothing/gloves/color.dm | 2 +- code/modules/clothing/head/jobs.dm | 2 +- code/modules/clothing/head/misc.dm | 2 +- code/modules/clothing/head/misc_special.dm | 2 +- code/modules/clothing/masks/_masks.dm | 2 +- code/modules/clothing/shoes/_shoes.dm | 10 +-- code/modules/clothing/shoes/miscellaneous.dm | 4 +- .../modules/clothing/spacesuits/chronosuit.dm | 8 +-- .../modules/clothing/spacesuits/flightsuit.dm | 4 +- code/modules/clothing/spacesuits/hardsuit.dm | 2 +- .../clothing/spacesuits/miscellaneous.dm | 4 +- code/modules/clothing/suits/arfsuits.dm | 2 +- code/modules/clothing/suits/f13armor.dm | 2 +- code/modules/clothing/suits/wiz_robe.dm | 12 ++-- code/modules/detectivework/scanner.dm | 2 +- code/modules/events/carp_migration.dm | 4 +- code/modules/events/fugitive_spawning.dm | 2 +- code/modules/events/ghost_role.dm | 2 +- code/modules/events/spacevine.dm | 2 +- code/modules/fallout/obj/campfire.dm | 4 +- code/modules/fallout/obj/explosives.dm | 6 +- code/modules/fallout/obj/rockitlauncher.dm | 4 +- code/modules/fallout/obj/stack/f13Cash.dm | 2 +- .../fallout/obj/structures/mob_spawners.dm | 2 +- .../fallout/obj/structures/wasteplants.dm | 2 +- code/modules/fallout/obj/structures/well.dm | 2 +- code/modules/farming/farming_structures.dm | 4 +- code/modules/fields/fields.dm | 2 +- code/modules/fields/timestop.dm | 6 +- code/modules/flufftext/Dreaming.dm | 2 +- code/modules/flufftext/Hallucination.dm | 12 ++-- code/modules/food_and_drinks/drinks/drinks.dm | 8 +-- code/modules/food_and_drinks/food.dm | 2 +- code/modules/food_and_drinks/food/snacks.dm | 4 +- .../food_and_drinks/food/snacks_other.dm | 4 +- .../food_and_drinks/food/snacks_pastry.dm | 2 +- .../kitchen_machinery/gibber.dm | 2 +- .../kitchen_machinery/microwave.dm | 2 +- .../kitchen_machinery/smartfridge.dm | 2 +- code/modules/holiday/holidays.dm | 2 +- code/modules/holodeck/computer.dm | 8 +-- code/modules/hydroponics/grown/citrus.dm | 2 +- code/modules/hydroponics/grown/melon.dm | 2 +- code/modules/hydroponics/grown/misc.dm | 2 +- code/modules/hydroponics/grown/towercap.dm | 6 +- code/modules/hydroponics/plant_genes.dm | 2 +- code/modules/instruments/instruments/item.dm | 2 +- code/modules/instruments/songs/editor.dm | 2 +- .../integrated_electronics/core/printer.dm | 2 +- .../subtypes/manipulation.dm | 4 +- .../integrated_electronics/subtypes/output.dm | 2 +- .../integrated_electronics/subtypes/time.dm | 4 +- code/modules/interview/interview.dm | 2 +- code/modules/keybindings/setup.dm | 2 +- code/modules/library/lib_codex_gigas.dm | 2 +- code/modules/mafia/controller.dm | 10 +-- code/modules/mafia/roles.dm | 2 +- code/modules/mining/aux_base.dm | 2 +- .../mining/equipment/kinetic_crusher.dm | 10 +-- .../mining/equipment/regenerative_core.dm | 2 +- code/modules/mining/equipment/resonator.dm | 2 +- .../mining/equipment/wormhole_jaunter.dm | 2 +- code/modules/mining/lavaland/ash_flora.dm | 2 +- .../mining/lavaland/necropolis_chests.dm | 30 ++++---- code/modules/mining/machine_processing.dm | 2 +- code/modules/mining/ores_coins.dm | 2 +- code/modules/mob/living/brain/posibrain.dm | 2 +- .../carbon/alien/humanoid/caste/hunter.dm | 2 +- .../modules/mob/living/carbon/alien/organs.dm | 2 +- .../carbon/alien/special/alien_embryo.dm | 2 +- .../living/carbon/alien/special/facehugger.dm | 10 +-- .../mob/living/carbon/carbon_defense.dm | 2 +- code/modules/mob/living/carbon/death.dm | 2 +- code/modules/mob/living/carbon/emote.dm | 4 +- code/modules/mob/living/carbon/human/emote.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 4 +- .../mob/living/carbon/human/species.dm | 4 +- .../carbon/human/species_types/dullahan.dm | 8 +-- .../carbon/human/species_types/ethereal.dm | 10 +-- .../carbon/human/species_types/golems.dm | 6 +- .../carbon/human/species_types/jellypeople.dm | 4 +- .../carbon/human/species_types/mushpeople.dm | 2 +- .../carbon/human/species_types/synths.dm | 2 +- .../mob/living/carbon/monkey/combat.dm | 16 ++--- code/modules/mob/living/death.dm | 2 +- code/modules/mob/living/init_signals.dm | 4 +- code/modules/mob/living/life.dm | 2 +- code/modules/mob/living/living.dm | 14 ++-- .../modules/mob/living/living_active_block.dm | 2 +- .../modules/mob/living/living_active_parry.dm | 4 +- code/modules/mob/living/living_defense.dm | 2 +- code/modules/mob/living/living_mobility.dm | 2 +- code/modules/mob/living/living_sprint.dm | 2 +- code/modules/mob/living/silicon/ai/ai.dm | 2 +- code/modules/mob/living/silicon/ai/death.dm | 2 +- .../mob/living/silicon/ai/freelook/chunk.dm | 2 +- code/modules/mob/living/silicon/ai/life.dm | 2 +- code/modules/mob/living/silicon/death.dm | 2 +- code/modules/mob/living/silicon/laws.dm | 2 +- code/modules/mob/living/silicon/pai/pai.dm | 2 +- .../modules/mob/living/silicon/robot/robot.dm | 12 ++-- .../mob/living/silicon/robot/robot_defense.dm | 2 +- .../mob/living/silicon/robot/robot_modules.dm | 14 ++-- .../mob/living/silicon/silicon_movement.dm | 2 +- .../living/simple_animal/bot/SuperBeepsky.dm | 6 +- .../mob/living/simple_animal/bot/bot.dm | 2 +- .../mob/living/simple_animal/bot/ed209bot.dm | 12 ++-- .../mob/living/simple_animal/bot/mulebot.dm | 8 +-- .../mob/living/simple_animal/bot/secbot.dm | 14 ++-- .../living/simple_animal/eldritch_demons.dm | 2 +- .../living/simple_animal/friendly/mouse.dm | 2 +- .../simple_animal/guardian/types/charger.dm | 2 +- .../simple_animal/guardian/types/explosive.dm | 2 +- .../simple_animal/guardian/types/ranged.dm | 2 +- .../mob/living/simple_animal/hostile/bees.dm | 4 +- .../hostile/bosses/paperwizard.dm | 2 +- .../simple_animal/hostile/f13/Securitron.dm | 8 +-- .../simple_animal/hostile/f13/deathclaw.dm | 4 +- .../simple_animal/hostile/f13/supermutant.dm | 4 +- .../living/simple_animal/hostile/headcrab.dm | 2 +- .../living/simple_animal/hostile/hostile.dm | 20 +++--- .../simple_animal/hostile/jungle/leaper.dm | 10 +-- .../simple_animal/hostile/jungle/mook.dm | 18 ++--- .../simple_animal/hostile/jungle/seedling.dm | 12 ++-- .../hostile/megafauna/behemoth.dm | 2 +- .../hostile/megafauna/blood_drunk_miner.dm | 14 ++-- .../hostile/megafauna/bubblegum.dm | 6 +- .../hostile/megafauna/captainarlem.dm | 6 +- .../hostile/megafauna/colossus.dm | 8 +-- .../hostile/megafauna/demonic_frost_miner.dm | 6 +- .../simple_animal/hostile/megafauna/drake.dm | 12 ++-- .../hostile/megafauna/hierophant.dm | 34 ++++----- .../simple_animal/hostile/megafauna/legion.dm | 2 +- .../hostile/megafauna/swarmer.dm | 2 +- .../hostile/megafauna/wendigo.dm | 2 +- .../hostile/mining_mobs/elites/elite.dm | 18 ++--- .../mining_mobs/elites/goliath_broodmother.dm | 6 +- .../hostile/mining_mobs/elites/herald.dm | 20 +++--- .../hostile/mining_mobs/elites/legionnaire.dm | 6 +- .../hostile/mining_mobs/elites/pandora.dm | 10 +-- .../hostile/mining_mobs/goldgrub.dm | 2 +- .../hostile/mining_mobs/goliath.dm | 6 +- .../hostile/mining_mobs/hivelord.dm | 4 +- .../hostile/mining_mobs/necropolis_tendril.dm | 2 +- .../living/simple_animal/hostile/mushroom.dm | 4 +- .../living/simple_animal/hostile/regalrat.dm | 4 +- .../simple_animal/hostile/venus_human_trap.dm | 6 +- .../living/simple_animal/hostile/zombie.dm | 2 +- .../mob/living/simple_animal/simple_animal.dm | 6 +- .../mob/living/simple_animal/slime/life.dm | 2 +- code/modules/mob/living/status_procs.dm | 2 +- code/modules/mob/mob.dm | 4 +- code/modules/mob/say.dm | 4 +- code/modules/mob/transform_procs.dm | 4 +- code/modules/mob/typing_indicator.dm | 2 +- .../modular_computers/laptop_vendor.dm | 2 +- .../suit/n_suit_verbs/ninja_adrenaline.dm | 2 +- .../ninja/suit/n_suit_verbs/ninja_stealth.dm | 6 +- .../modules/ninja/suit/suit_initialisation.dm | 26 +++---- code/modules/paperwork/photocopier.dm | 12 ++-- code/modules/paperwork/ticketmachine.dm | 4 +- code/modules/photography/camera/camera.dm | 4 +- .../plumbing/plumbers/_plumb_machinery.dm | 2 +- code/modules/plumbing/plumbers/autohydro.dm | 2 +- code/modules/plumbing/plumbers/fermenter.dm | 4 +- .../plumbing/plumbers/grinder_chemical.dm | 4 +- .../plumbing/plumbers/medipenrefill.dm | 2 +- code/modules/pool/pool_structures.dm | 18 ++--- code/modules/power/antimatter/control.dm | 4 +- code/modules/power/antimatter/shielding.dm | 4 +- code/modules/power/apc.dm | 6 +- code/modules/power/cable.dm | 2 +- code/modules/power/cell.dm | 2 +- code/modules/power/lighting.dm | 2 +- code/modules/power/multiz.dm | 6 +- .../power/singularity/containment_field.dm | 8 +-- code/modules/power/singularity/emitter.dm | 2 +- code/modules/power/singularity/narsie.dm | 4 +- .../particle_accelerator/particle.dm | 4 +- code/modules/power/solar.dm | 4 +- code/modules/power/supermatter/supermatter.dm | 2 +- code/modules/power/tesla/coil.dm | 4 +- code/modules/power/tesla/energy_ball.dm | 2 +- code/modules/power/tracker.dm | 2 +- .../boxes_magazines/_box_magazine.dm | 4 +- code/modules/projectiles/gun.dm | 8 +-- .../projectiles/guns/ballistic/flintlock.dm | 2 +- .../guns/energy/kinetic_accelerator.dm | 4 +- code/modules/projectiles/guns/magic.dm | 4 +- .../projectiles/guns/misc/beam_rifle.dm | 2 +- code/modules/projectiles/projectile.dm | 2 +- .../projectile/energy/net_snare.dm | 2 +- code/modules/projectiles/projectile/magic.dm | 8 +-- .../projectile/special/hallucination.dm | 2 +- .../reagents/chemistry/machinery/pandemic.dm | 4 +- .../chemistry/machinery/reagentgrinder.dm | 4 +- .../chemistry/machinery/smoke_machine.dm | 2 +- .../chemistry/reagents/other_reagents.dm | 2 +- .../chemistry/recipes/pyrotechnics.dm | 6 +- .../chemistry/recipes/slime_extracts.dm | 22 +++--- code/modules/reagents/reagent_containers.dm | 2 +- .../reagents/reagent_containers/glass.dm | 2 +- .../reagents/reagent_containers/hypospray.dm | 4 +- .../reagents/reagent_containers/medspray.dm | 2 +- .../reagents/reagent_containers/pill.dm | 2 +- .../reagents/reagent_containers/spray.dm | 2 +- .../reagents/reagent_containers/syringes.dm | 2 +- code/modules/recycling/conveyor2.dm | 2 +- .../recycling/disposal/construction.dm | 2 +- code/modules/recycling/disposal/holder.dm | 6 +- code/modules/recycling/disposal/outlet.dm | 4 +- code/modules/research/destructive_analyzer.dm | 4 +- code/modules/research/experimentor.dm | 10 +-- .../modules/research/machinery/_production.dm | 8 +-- .../research/nanites/nanite_chamber.dm | 20 +++--- .../nanites/nanite_chamber_computer.dm | 2 +- .../nanites/nanite_programs/healing.dm | 2 +- .../nanites/nanite_programs/sensor.dm | 8 +-- .../nanites/nanite_programs/weapon.dm | 4 +- .../research/nanites/public_chamber.dm | 14 ++-- code/modules/research/server.dm | 2 +- .../crossbreeding/_status_effects.dm | 4 +- .../xenobiology/crossbreeding/burning.dm | 2 +- .../xenobiology/crossbreeding/charged.dm | 4 +- .../xenobiology/crossbreeding/chilling.dm | 2 +- .../research/xenobiology/xenobio_camera.dm | 14 ++-- .../research/xenobiology/xenobiology.dm | 2 +- .../ruins/icemoonruin_code/hotsprings.dm | 2 +- .../ruins/objects_and_mobs/necropolis_gate.dm | 8 +-- .../ruins/objects_and_mobs/sin_ruins.dm | 4 +- .../security_levels/keycard_authentication.dm | 6 +- code/modules/shuttle/ripple.dm | 2 +- code/modules/shuttle/special.dm | 4 +- code/modules/smithing/anvil.dm | 2 +- code/modules/smithing/finished_items.dm | 4 +- code/modules/spells/spell_but_good.dm | 2 +- .../spells/spell_types/area_teleport.dm | 2 +- .../modules/spells/spell_types/cone_spells.dm | 2 +- .../spells/spell_types/construct_spells.dm | 2 +- code/modules/spells/spell_types/devil.dm | 2 +- .../spells/spell_types/ethereal_jaunt.dm | 2 +- code/modules/spells/spell_types/genetic.dm | 2 +- code/modules/spells/spell_types/knock.dm | 4 +- code/modules/spells/spell_types/lichdom.dm | 2 +- .../spell_types/spacetime_distortion.dm | 4 +- code/modules/surgery/organs/augments_arms.dm | 4 +- code/modules/surgery/organs/augments_chest.dm | 8 +-- .../surgery/organs/augments_internal.dm | 2 +- code/modules/surgery/organs/eyes.dm | 2 +- code/modules/surgery/organs/heart.dm | 6 +- code/modules/surgery/organs/organ_internal.dm | 2 +- code/modules/surgery/organs/stomach.dm | 4 +- code/modules/surgery/organs/tongue.dm | 4 +- code/modules/tgui_panel/tgui_panel.dm | 6 +- code/modules/tooltip/tooltip.dm | 2 +- code/modules/unit_tests/combat.dm | 6 +- code/modules/unit_tests/emoting.dm | 2 +- code/modules/vehicles/scooter.dm | 2 +- code/modules/vehicles/wheelchair.dm | 2 +- code/modules/vending/brahminvendordm.dm | 10 +-- code/modules/vore/eating/belly_obj.dm | 46 ++++++------ code/modules/vore/eating/living.dm | 2 +- code/modules/vore/eating/vore_core.dm | 60 ++++++++-------- code/modules/vore/eating/vorepanel.dm | 2 +- code/modules/zombie/organs.dm | 2 +- .../code/datums/components/souldeath.dm | 6 +- .../code/datums/status_effects/chems.dm | 4 +- .../code/modules/reagents/objects/clothes.dm | 4 +- .../code/game/objects/structures/firebow.dm | 2 +- .../game/objects/structures/sacredwell.dm | 2 +- modular_coyote/code/mailbird.dm | 16 ++--- .../code/modules/mapping/ambient_lighting.dm | 4 +- .../modules/mechanical_erp/merp_component.dm | 16 ++--- modular_coyote/code/modules/misc_patches.dm | 2 +- .../sleepingpart/regenerate_sleeping.dm | 2 +- modular_coyote/eris/code/living_recoil.dm | 2 +- modular_coyote/eris/code/mods/_upgrades.dm | 14 ++-- 706 files changed, 1856 insertions(+), 1856 deletions(-) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index 1d0c11087df..ae11b0e991a 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -94,7 +94,7 @@ init_subtypes(/datum/crafting_recipe, GLOB.crafting_recipes) - INVOKE_ASYNC(GLOBAL_PROC, .proc/init_ref_coin_values) //so the current procedure doesn't sleep because of UNTIL() + INVOKE_ASYNC(GLOBAL_PROC,PROC_REF(init_ref_coin_values)) //so the current procedure doesn't sleep because of UNTIL() //creates every subtype of prototype (excluding prototype) and adds it to list L. //if no list/L is provided, one is created. diff --git a/code/__HELPERS/roundend.dm b/code/__HELPERS/roundend.dm index bc82f277a4d..51ee5858ec3 100644 --- a/code/__HELPERS/roundend.dm +++ b/code/__HELPERS/roundend.dm @@ -214,7 +214,7 @@ //send2chat(" <@&922230570791108628> ", CONFIG_GET(string/discord_channel_serverstatus)) world.TgsTargetedChatBroadcast("The current round has ended. Please standby for your [pick(publisher)] report!", FALSE) //lonestar edit. i'm adding a timer here because i'm tired of the messages being sent out of order - addtimer(CALLBACK(src, .proc/send_roundinfo), 3 SECONDS) + addtimer(CALLBACK(src,PROC_REF(send_roundinfo)), 3 SECONDS) CHECK_TICK @@ -253,7 +253,7 @@ end_of_round_deathmatch() var/time_to_end = CONFIG_GET(number/eorg_period) to_chat(world, "EORD in progress, game end delayed by [time_to_end * 0.1] seconds!") - addtimer(CALLBACK(src, .proc/standard_reboot), time_to_end) + addtimer(CALLBACK(src,PROC_REF(standard_reboot)), time_to_end) /datum/controller/subsystem/ticker/proc/standard_reboot() diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm index 60006ddbcc7..f2116186187 100644 --- a/code/_onclick/ai.dm +++ b/code/_onclick/ai.dm @@ -79,7 +79,7 @@ return if(waypoint_mode) waypoint_mode = FALSE - INVOKE_ASYNC(src, .proc/set_waypoint, A) + INVOKE_ASYNC(src,PROC_REF(set_waypoint), A) return A.attack_ai(src) diff --git a/code/_onclick/hud/alert.dm b/code/_onclick/hud/alert.dm index 467579abbde..0de1b0f304a 100644 --- a/code/_onclick/hud/alert.dm +++ b/code/_onclick/hud/alert.dm @@ -65,7 +65,7 @@ animate(thealert, transform = matrix(), time = 2.5, easing = CUBIC_EASING) if(thealert.timeout) - addtimer(CALLBACK(src, .proc/alert_timeout, thealert, category), thealert.timeout) + addtimer(CALLBACK(src,PROC_REF(alert_timeout), thealert, category), thealert.timeout) thealert.timeout = world.time + thealert.timeout - world.tick_lag return thealert diff --git a/code/_onclick/hud/credits.dm b/code/_onclick/hud/credits.dm index 974f1583236..35daf401d09 100644 --- a/code/_onclick/hud/credits.dm +++ b/code/_onclick/hud/credits.dm @@ -53,7 +53,7 @@ animate(src, transform = M, time = CREDIT_ROLL_SPEED) target = M animate(src, alpha = 255, time = CREDIT_EASE_DURATION, flags = ANIMATION_PARALLEL) - addtimer(CALLBACK(src, .proc/FadeOut), CREDIT_ROLL_SPEED - CREDIT_EASE_DURATION) + addtimer(CALLBACK(src,PROC_REF(FadeOut)), CREDIT_ROLL_SPEED - CREDIT_EASE_DURATION) QDEL_IN(src, CREDIT_ROLL_SPEED) P.screen += src diff --git a/code/_onclick/hud/fullscreen.dm b/code/_onclick/hud/fullscreen.dm index 67f48907419..5ab9a49af6c 100644 --- a/code/_onclick/hud/fullscreen.dm +++ b/code/_onclick/hud/fullscreen.dm @@ -25,7 +25,7 @@ if(animated) animate(screen, alpha = 0, time = animated) - addtimer(CALLBACK(src, .proc/clear_fullscreen_after_animate, screen), animated, TIMER_CLIENT_TIME) + addtimer(CALLBACK(src,PROC_REF(clear_fullscreen_after_animate), screen), animated, TIMER_CLIENT_TIME) else if(client) client.screen -= screen diff --git a/code/_onclick/hud/parallax.dm b/code/_onclick/hud/parallax.dm index d684a841e27..b35ecb43ce3 100755 --- a/code/_onclick/hud/parallax.dm +++ b/code/_onclick/hud/parallax.dm @@ -130,7 +130,7 @@ C.parallax_movedir = new_parallax_movedir if (C.parallax_animate_timer) deltimer(C.parallax_animate_timer) - var/datum/callback/CB = CALLBACK(src, .proc/update_parallax_motionblur, C, animatedir, new_parallax_movedir, newtransform) + var/datum/callback/CB = CALLBACK(src,PROC_REF(update_parallax_motionblur), C, animatedir, new_parallax_movedir, newtransform) if(skip_windups) CB.InvokeAsync() else diff --git a/code/_onclick/hud/radial.dm b/code/_onclick/hud/radial.dm index f6551dfba2b..d299a22acc5 100644 --- a/code/_onclick/hud/radial.dm +++ b/code/_onclick/hud/radial.dm @@ -14,7 +14,7 @@ GLOBAL_LIST_EMPTY(radial_menus) UnregisterSignal(parent, COMSIG_PARENT_QDELETING) parent = new_value if(parent) - RegisterSignal(parent, COMSIG_PARENT_QDELETING, .proc/handle_parent_del) + RegisterSignal(parent, COMSIG_PARENT_QDELETING,PROC_REF(handle_parent_del)) /atom/movable/screen/radial/proc/handle_parent_del() SIGNAL_HANDLER diff --git a/code/_onclick/hud/screen_objects/storage.dm b/code/_onclick/hud/screen_objects/storage.dm index 9a0f30ad7e0..39521cd0e66 100644 --- a/code/_onclick/hud/screen_objects/storage.dm +++ b/code/_onclick/hud/screen_objects/storage.dm @@ -57,8 +57,8 @@ /atom/movable/screen/storage/volumetric_box/Initialize(mapload, new_master, obj/item/our_item) src.our_item = our_item - RegisterSignal(our_item, COMSIG_ITEM_MOUSE_ENTER, .proc/on_item_mouse_enter) - RegisterSignal(our_item, COMSIG_ITEM_MOUSE_EXIT, .proc/on_item_mouse_exit) + RegisterSignal(our_item, COMSIG_ITEM_MOUSE_ENTER,PROC_REF(on_item_mouse_enter)) + RegisterSignal(our_item, COMSIG_ITEM_MOUSE_EXIT,PROC_REF(on_item_mouse_exit)) return ..() /atom/movable/screen/storage/volumetric_box/Destroy() diff --git a/code/_onclick/other_mobs.dm b/code/_onclick/other_mobs.dm index e9bc47f710e..1de3c792f15 100644 --- a/code/_onclick/other_mobs.dm +++ b/code/_onclick/other_mobs.dm @@ -47,7 +47,7 @@ return if(interaction_flags_atom & INTERACT_ATOM_ATTACK_HAND) . = _try_interact(user) - INVOKE_ASYNC(src, .proc/on_attack_hand, user, act_intent, .) + INVOKE_ASYNC(src,PROC_REF(on_attack_hand), user, act_intent, .) if(!(. & ATTACK_IGNORE_ACTION)) if(attack_hand_unwieldlyness) user.DelayNextAction(attack_hand_unwieldlyness, considered_action = attack_hand_is_action) diff --git a/code/controllers/admin.dm b/code/controllers/admin.dm index 2e6b1f3a598..31a0811b59c 100644 --- a/code/controllers/admin.dm +++ b/code/controllers/admin.dm @@ -11,7 +11,7 @@ INITIALIZE_IMMEDIATE(/obj/effect/statclick) name = text src.target = target if(istype(target, /datum)) //Harddel man bad - RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/cleanup) + RegisterSignal(target, COMSIG_PARENT_QDELETING,PROC_REF(cleanup)) /obj/effect/statclick/Destroy() target = null diff --git a/code/controllers/subsystem/artifacts.dm b/code/controllers/subsystem/artifacts.dm index 2e7042d402f..2e6673b9202 100644 --- a/code/controllers/subsystem/artifacts.dm +++ b/code/controllers/subsystem/artifacts.dm @@ -422,7 +422,7 @@ PROCESSING_SUBSYSTEM_DEF(artifacts) /datum/controller/subsystem/processing/artifacts/fire(resumed = 0) if(prob(spawn_chance)) - INVOKE_ASYNC(src, .proc/spawn_random_artifact) + INVOKE_ASYNC(src,PROC_REF(spawn_random_artifact)) if (!resumed) currentrun = processing.Copy() //cache for sanic speed (lists are references anyways) @@ -664,7 +664,7 @@ PROCESSING_SUBSYSTEM_DEF(artifacts) rare_artifacts |= WEAKREF(thing) /datum/controller/subsystem/processing/artifacts/proc/sig_reg(obj/item/thing) - RegisterSignal(thing, COMSIG_PARENT_PREQDELETED, .proc/artifact_deleted, TRUE) + RegisterSignal(thing, COMSIG_PARENT_PREQDELETED,PROC_REF(artifact_deleted), TRUE) /datum/controller/subsystem/processing/artifacts/proc/artifact_deleted(obj/item/thing) if(!isitem(thing)) diff --git a/code/controllers/subsystem/job.dm b/code/controllers/subsystem/job.dm index 7b7657c6188..a3330f70a48 100644 --- a/code/controllers/subsystem/job.dm +++ b/code/controllers/subsystem/job.dm @@ -628,7 +628,7 @@ SUBSYSTEM_DEF(job) var/oldjobs = SSjob.occupations sleep(20) for (var/datum/job/J in oldjobs) - INVOKE_ASYNC(src, .proc/RecoverJob, J) + INVOKE_ASYNC(src,PROC_REF(RecoverJob), J) /datum/controller/subsystem/job/proc/RecoverJob(datum/job/J) var/datum/job/newjob = GetJob(J.title) diff --git a/code/controllers/subsystem/mapping.dm b/code/controllers/subsystem/mapping.dm index c84cf91f24c..92808c6ef5e 100644 --- a/code/controllers/subsystem/mapping.dm +++ b/code/controllers/subsystem/mapping.dm @@ -165,7 +165,7 @@ SUBSYSTEM_DEF(mapping) message_admins("Shuttles in transit detected. Attempting to fast travel. Timeout is [wipe_safety_delay/10] seconds.") var/list/cleared = list() for(var/i in in_transit) - INVOKE_ASYNC(src, .proc/safety_clear_transit_dock, i, in_transit[i], cleared) + INVOKE_ASYNC(src,PROC_REF(safety_clear_transit_dock), i, in_transit[i], cleared) UNTIL((go_ahead < world.time) || (cleared.len == in_transit.len)) do_wipe_turf_reservations() clearing_reserved_turfs = FALSE diff --git a/code/controllers/subsystem/matchmaking.dm b/code/controllers/subsystem/matchmaking.dm index 1e98202224e..139c79dc7ad 100644 --- a/code/controllers/subsystem/matchmaking.dm +++ b/code/controllers/subsystem/matchmaking.dm @@ -20,8 +20,8 @@ SUBSYSTEM_DEF(matchmaking) /datum/controller/subsystem/matchmaking/proc/add_candidate_aspiration(mob/living/candidate, datum/matchmaking_pref/aspiration) if(!bachelors[candidate]) - RegisterSignal(candidate, COMSIG_PARENT_QDELETING, .proc/on_candidate_qdel) - RegisterSignal(candidate, COMSIG_MOB_CLIENT_LOGOUT, .proc/on_candidate_logout) + RegisterSignal(candidate, COMSIG_PARENT_QDELETING,PROC_REF(on_candidate_qdel)) + RegisterSignal(candidate, COMSIG_MOB_CLIENT_LOGOUT,PROC_REF(on_candidate_logout)) LAZYADD(bachelors[candidate], aspiration) @@ -89,7 +89,7 @@ SUBSYSTEM_DEF(matchmaking) CRASH("Matchmaking pref created without a holder.") if(matches_aimed <= 0) CRASH("Matchmaking pref created with invalid matches_aimed value: [matches_aimed]") - RegisterSignal(pref_holder, COMSIG_PARENT_QDELETING, .proc/on_candidate_qdel) + RegisterSignal(pref_holder, COMSIG_PARENT_QDELETING,PROC_REF(on_candidate_qdel)) src.pref_holder = pref_holder src.matches_aimed = clamp(matches_aimed, 0, max_matches) SSmatchmaking.add_candidate_aspiration(pref_holder, src) @@ -161,7 +161,7 @@ SUBSYSTEM_DEF(matchmaking) /datum/matchmaking_pref/proc/enact_match(mob/living/target) matches_found++ if(spawn_time > 0) - addtimer(CALLBACK(src, .proc/do_enact_match, WEAKREF(target)), spawn_time) + addtimer(CALLBACK(src,PROC_REF(do_enact_match), WEAKREF(target)), spawn_time) else do_enact_match(target) if(matches_found >= matches_aimed) diff --git a/code/controllers/subsystem/monster_wave.dm b/code/controllers/subsystem/monster_wave.dm index 158c128251f..f77b6ceeddf 100644 --- a/code/controllers/subsystem/monster_wave.dm +++ b/code/controllers/subsystem/monster_wave.dm @@ -24,7 +24,7 @@ SUBSYSTEM_DEF(monster_wave) if(prob(chance_of_fire)) return // 50/50 chance for it to either fire or not fire successful_firing++ - addtimer(CALLBACK(src, .proc/spawn_monsterwave), 10 SECONDS) + addtimer(CALLBACK(src,PROC_REF(spawn_monsterwave)), 10 SECONDS) for(var/M in GLOB.player_list) to_chat(M, span_notice("You feel the ground tremor subtly beneath your feet. Something far off in the distance has emerged to the surface.")) diff --git a/code/controllers/subsystem/movement/movement_types.dm b/code/controllers/subsystem/movement/movement_types.dm index 5f6b05ceb88..a2351a22775 100644 --- a/code/controllers/subsystem/movement/movement_types.dm +++ b/code/controllers/subsystem/movement/movement_types.dm @@ -31,7 +31,7 @@ src.controller = controller src.extra_info = extra_info if(extra_info) - RegisterSignal(extra_info, COMSIG_PARENT_QDELETING, .proc/info_deleted) + RegisterSignal(extra_info, COMSIG_PARENT_QDELETING,PROC_REF(info_deleted)) src.moving = moving src.priority = priority src.flags = flags @@ -240,7 +240,7 @@ target = chasing if(!isturf(target)) - RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/handle_no_target) //Don't do this for turfs, because we don't care + RegisterSignal(target, COMSIG_PARENT_QDELETING,PROC_REF(handle_no_target)) //Don't do this for turfs, because we don't care /datum/move_loop/has_target/compare_loops(datum/move_loop/loop_type, priority, flags, extra_info, delay, timeout, atom/chasing) if(..() && chasing == target) @@ -369,7 +369,7 @@ src.avoid = avoid src.skip_first = skip_first if(istype(id, /obj/item/card/id)) - RegisterSignal(id, COMSIG_PARENT_QDELETING, .proc/handle_no_id) //I prefer erroring to harddels. If this breaks anything consider making id info into a datum or something + RegisterSignal(id, COMSIG_PARENT_QDELETING,PROC_REF(handle_no_id)) //I prefer erroring to harddels. If this breaks anything consider making id info into a datum or something /datum/move_loop/has_target/jps/compare_loops(datum/move_loop/loop_type, priority, flags, extra_info, delay, timeout, atom/chasing, repath_delay, max_path_length, minimum_distance, obj/item/card/id/id, simulated_only, turf/avoid, skip_first) if(..() && repath_delay == src.repath_delay && max_path_length == src.max_path_length && minimum_distance == src.minimum_distance && id == src.id && simulated_only == src.simulated_only && avoid == src.avoid) @@ -378,7 +378,7 @@ /datum/move_loop/has_target/jps/start_loop() . = ..() - INVOKE_ASYNC(src, .proc/recalculate_path) + INVOKE_ASYNC(src,PROC_REF(recalculate_path)) /datum/move_loop/has_target/jps/Destroy() id = null //Kill me @@ -399,7 +399,7 @@ /datum/move_loop/has_target/jps/move() if(!length(movement_path)) - INVOKE_ASYNC(src, .proc/recalculate_path) + INVOKE_ASYNC(src,PROC_REF(recalculate_path)) if(!length(movement_path)) return FALSE @@ -413,7 +413,7 @@ if(get_turf(moving) == next_step) movement_path.Cut(1,2) else - INVOKE_ASYNC(src, .proc/recalculate_path) + INVOKE_ASYNC(src,PROC_REF(recalculate_path)) return FALSE @@ -572,8 +572,8 @@ if(home) if(ismovable(target)) - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/update_slope) //If it can move, update your slope when it does - RegisterSignal(moving, COMSIG_MOVABLE_MOVED, .proc/handle_move) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(update_slope)) //If it can move, update your slope when it does + RegisterSignal(moving, COMSIG_MOVABLE_MOVED,PROC_REF(handle_move)) update_slope() /datum/move_loop/has_target/move_towards/compare_loops(datum/move_loop/loop_type, priority, flags, extra_info, delay, timeout, atom/chasing, home = FALSE) diff --git a/code/controllers/subsystem/nightcycle.dm b/code/controllers/subsystem/nightcycle.dm index 2d9d27c436f..e13f30a5ddc 100644 --- a/code/controllers/subsystem/nightcycle.dm +++ b/code/controllers/subsystem/nightcycle.dm @@ -146,7 +146,7 @@ SUBSYSTEM_DEF(nightcycle) CRASH("Invalid new_time returned from STATION_TIME()") current_time = new_time - INVOKE_ASYNC(src, .proc/AnimateTransition) + INVOKE_ASYNC(src,PROC_REF(AnimateTransition)) CHECK_TICK /datum/controller/subsystem/nightcycle/proc/AnimateTransition() diff --git a/code/controllers/subsystem/pai.dm b/code/controllers/subsystem/pai.dm index d03ec2d141a..ff41d0bba2a 100644 --- a/code/controllers/subsystem/pai.dm +++ b/code/controllers/subsystem/pai.dm @@ -155,7 +155,7 @@ SUBSYSTEM_DEF(pai) if(!G.can_reenter_round()) // this should use notify_ghosts() instead one day. return FALSE to_chat(G, span_ghostalert("[user] is requesting a pAI personality! Use the pAI button to submit yourself as one.")) - addtimer(CALLBACK(src, .proc/spam_again), spam_delay) + addtimer(CALLBACK(src,PROC_REF(spam_again)), spam_delay) var/list/available = list() for(var/datum/paiCandidate/c in SSpai.candidates) available.Add(check_ready(c)) diff --git a/code/controllers/subsystem/processing/quirks.dm b/code/controllers/subsystem/processing/quirks.dm index de12430cede..3def64c30c5 100644 --- a/code/controllers/subsystem/processing/quirks.dm +++ b/code/controllers/subsystem/processing/quirks.dm @@ -131,7 +131,7 @@ PROCESSING_SUBSYSTEM_DEF(quirks) /datum/controller/subsystem/processing/quirks/ui_close(mob/user) . = ..() SaveUserPreferences(user) - //INVOKE_ASYNC(src, .proc/UpdateTheWretchedPrefMenu, user) + //INVOKE_ASYNC(src,PROC_REF(UpdateTheWretchedPrefMenu), user) /datum/controller/subsystem/processing/quirks/ui_static_data(mob/user) var/list/data = list() @@ -203,7 +203,7 @@ PROCESSING_SUBSYSTEM_DEF(quirks) . = TRUE if("ClearQuirks") // Nuke the quirks! (gotta nuke something) . = TRUE - INVOKE_ASYNC(src, .proc/ConfirmClear, user) + INVOKE_ASYNC(src,PROC_REF(ConfirmClear), user) /// returns a list of ckey'd quirk names /datum/controller/subsystem/processing/quirks/proc/QuirkList2TGUI(mob/user) diff --git a/code/controllers/subsystem/processing/weather.dm b/code/controllers/subsystem/processing/weather.dm index 007e0786879..5dfb4ff5c2b 100644 --- a/code/controllers/subsystem/processing/weather.dm +++ b/code/controllers/subsystem/processing/weather.dm @@ -35,7 +35,7 @@ PROCESSING_SUBSYSTEM_DEF(weather) return FALSE var/datum/weather/W = pickweight(weather_rolls) var/randTime = rand(WEATHER_WAIT_MIN, WEATHER_WAIT_MAX) - timerid = addtimer(CALLBACK(src, .proc/run_weather, W), randTime + initial(W.weather_duration_upper), TIMER_UNIQUE | TIMER_STOPPABLE) //Around 25-30 minutes between weathers + timerid = addtimer(CALLBACK(src,PROC_REF(run_weather), W), randTime + initial(W.weather_duration_upper), TIMER_UNIQUE | TIMER_STOPPABLE) //Around 25-30 minutes between weathers next_hit_by_zlevel = world.time + randTime + initial(W.telegraph_duration) weather_queued = TRUE // weather'll set this to FALSE when it ends diff --git a/code/controllers/subsystem/progress_bars.dm b/code/controllers/subsystem/progress_bars.dm index 0422c2f567d..032abf7d536 100644 --- a/code/controllers/subsystem/progress_bars.dm +++ b/code/controllers/subsystem/progress_bars.dm @@ -165,7 +165,7 @@ PROCESSING_SUBSYSTEM_DEF(progress_bars) display_loc = WEAKREF(location) generate_bar_id() register_visibility(can_see) - RegisterSignal(location, COMSIG_PARENT_QDELETING, .proc/master_deleted) + RegisterSignal(location, COMSIG_PARENT_QDELETING,PROC_REF(master_deleted)) /datum/progressbar/proc/register_visibility(list/can_see) if(!LAZYLEN(can_see) || SSprogress_bars.debug_make_visible_to_everyone) // heh @@ -267,7 +267,7 @@ PROCESSING_SUBSYSTEM_DEF(progress_bars) // var/turf/right_here = get_turf(master) // display_loc = WEAKREF(right_here) // bar.loc = right_here - INVOKE_ASYNC(src, .proc/stop) + INVOKE_ASYNC(src,PROC_REF(stop)) /// Generates a unique ID for the progress bar. /// I mean the time of day is unique enough, but I like big dumb numbers diff --git a/code/controllers/subsystem/radturf.dm b/code/controllers/subsystem/radturf.dm index e628fcd736e..fdccdbc5f14 100644 --- a/code/controllers/subsystem/radturf.dm +++ b/code/controllers/subsystem/radturf.dm @@ -28,7 +28,7 @@ SUBSYSTEM_DEF(radturf) /// the irradiated tile got changed and its component deleted, check back in a split second and apply a new one there /datum/controller/subsystem/radturf/proc/tile_got_changed(turf_coords, list/puddles, new_rads) - addtimer(CALLBACK(src, .proc/add_radtile, turf_coords, puddles, new_rads, 5), 2, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain //*doublepain + addtimer(CALLBACK(src,PROC_REF(add_radtile), turf_coords, puddles, new_rads, 5), 2, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain //*doublepain /datum/controller/subsystem/radturf/proc/add_radtile(turf_coords, list/puddles, new_rads, tries = 5) if(new_rads <= 0) // idk @@ -37,7 +37,7 @@ SUBSYSTEM_DEF(radturf) /// the new turf either doesnt exist, or is still being replaced, check back in another split second if(!new_turf || QDELETED(new_turf)) if(tries) - addtimer(CALLBACK(src, .proc/add_radtile, turf_coords, puddles, new_rads, tries - 1), 2, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain //*doublepain + addtimer(CALLBACK(src,PROC_REF(add_radtile), turf_coords, puddles, new_rads, tries - 1), 2, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain //*doublepain return // okay fine, there's a hole to nothing right here, fucking, cool. // the component itself will figure out of its puddles are still good or not at some point, not our concern if(SEND_SIGNAL(new_turf, COMSIG_TURF_CHECK_RADIATION)) // okay check if there's still a component there first diff --git a/code/controllers/subsystem/shuttle.dm b/code/controllers/subsystem/shuttle.dm index 1e147b0f7b8..c2d1e037948 100644 --- a/code/controllers/subsystem/shuttle.dm +++ b/code/controllers/subsystem/shuttle.dm @@ -172,7 +172,7 @@ SUBSYSTEM_DEF(shuttle) /datum/controller/subsystem/shuttle/proc/block_recall(lockout_timer) emergencyNoRecall = TRUE - addtimer(CALLBACK(src, .proc/unblock_recall), lockout_timer) + addtimer(CALLBACK(src,PROC_REF(unblock_recall)), lockout_timer) /datum/controller/subsystem/shuttle/proc/unblock_recall() emergencyNoRecall = FALSE diff --git a/code/controllers/subsystem/throwing.dm b/code/controllers/subsystem/throwing.dm index 7f3770e4c87..108feecae60 100644 --- a/code/controllers/subsystem/throwing.dm +++ b/code/controllers/subsystem/throwing.dm @@ -92,7 +92,7 @@ SUBSYSTEM_DEF(throwing) /datum/thrownthing/New(thrownthing, target, init_dir, maxrange, speed, thrower, diagonals_first, force, gentle, callback, target_zone) . = ..() src.thrownthing = thrownthing - RegisterSignal(thrownthing, COMSIG_PARENT_QDELETING, .proc/on_thrownthing_qdel) + RegisterSignal(thrownthing, COMSIG_PARENT_QDELETING,PROC_REF(on_thrownthing_qdel)) src.target_turf = get_turf(target) if(target_turf != target) src.initial_target = WEAKREF(target) diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 52da9f6912b..7972b6e4886 100755 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -417,7 +417,7 @@ SUBSYSTEM_DEF(ticker) livings += living if(livings.len) - addtimer(CALLBACK(src, .proc/release_characters, livings), 30, TIMER_CLIENT_TIME) + addtimer(CALLBACK(src,PROC_REF(release_characters), livings), 30, TIMER_CLIENT_TIME) SSmatchmaking.matchmake() diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm index bdfcbf1155d..d6d26034bf9 100644 --- a/code/controllers/subsystem/timer.dm +++ b/code/controllers/subsystem/timer.dm @@ -273,7 +273,7 @@ SUBSYSTEM_DEF(timer) return // Sort all timers by time to run - sortTim(alltimers, .proc/cmp_timer) + sortTim(alltimers,PROC_REF(cmp_timer)) // Get the earliest timer, and if the TTR is earlier than the current world.time, // then set the head offset appropriately to be the earliest time tracked by the diff --git a/code/controllers/subsystem/validball_spawner.dm b/code/controllers/subsystem/validball_spawner.dm index 1d1f7e5d985..039886d5707 100644 --- a/code/controllers/subsystem/validball_spawner.dm +++ b/code/controllers/subsystem/validball_spawner.dm @@ -26,7 +26,7 @@ SUBSYSTEM_DEF(validball) message_admins("Validball failed to spawn after [initial(tries_left)] tries! Validball is not go!") return message_admins("Validball couldn't spawn, trying again in 1 second. [tries_left] tries left!") - addtimer(CALLBACK(src, .proc/spawn_validballs), 1 SECONDS) // try again later + addtimer(CALLBACK(src,PROC_REF(spawn_validballs)), 1 SECONDS) // try again later return if(num_to_spawn > LAZYLEN(valid_ball_spawners)) message_admins("Uh oh, config wants more validballs than there are available spawners! Validball is still go, but every validball spawner will spawn a validball. Have fun!") diff --git a/code/datums/action.dm b/code/datums/action.dm index f53fe0339ed..b7d12720c3d 100644 --- a/code/datums/action.dm +++ b/code/datums/action.dm @@ -29,7 +29,7 @@ /datum/action/proc/link_to(Target) target = Target - RegisterSignal(Target, COMSIG_ATOM_UPDATED_ICON, .proc/OnUpdatedIcon) + RegisterSignal(Target, COMSIG_ATOM_UPDATED_ICON,PROC_REF(OnUpdatedIcon)) /datum/action/Destroy() if(owner) diff --git a/code/datums/beam.dm b/code/datums/beam.dm index 6a9878e086d..f727ce4c6cf 100644 --- a/code/datums/beam.dm +++ b/code/datums/beam.dm @@ -66,13 +66,13 @@ if(timing_id) deltimer(timing_id) if(!finished) - timing_id = addtimer(CALLBACK(src, .proc/recalculate), time, TIMER_STOPPABLE) + timing_id = addtimer(CALLBACK(src,PROC_REF(recalculate)), time, TIMER_STOPPABLE) /datum/beam/proc/after_calculate() if((sleep_time == null) || finished) //Does not automatically recalculate. return if(isnull(timing_id)) - timing_id = addtimer(CALLBACK(src, .proc/recalculate), sleep_time, TIMER_STOPPABLE) + timing_id = addtimer(CALLBACK(src,PROC_REF(recalculate)), sleep_time, TIMER_STOPPABLE) /datum/beam/proc/End(destroy_self = TRUE) finished = TRUE diff --git a/code/datums/brain_damage/brain_trauma.dm b/code/datums/brain_damage/brain_trauma.dm index 5a4703f99f4..866b79f3df4 100644 --- a/code/datums/brain_damage/brain_trauma.dm +++ b/code/datums/brain_damage/brain_trauma.dm @@ -40,8 +40,8 @@ //Called when given to a mob /datum/brain_trauma/proc/on_gain() to_chat(owner, gain_text) - RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) - RegisterSignal(owner, COMSIG_MOVABLE_HEAR, .proc/handle_hearing) + RegisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) + RegisterSignal(owner, COMSIG_MOVABLE_HEAR,PROC_REF(handle_hearing)) //Called when removed from a mob /datum/brain_trauma/proc/on_lose(silent) diff --git a/code/datums/brain_damage/imaginary_friend.dm b/code/datums/brain_damage/imaginary_friend.dm index 05ff24e82d2..03c86f08ef5 100644 --- a/code/datums/brain_damage/imaginary_friend.dm +++ b/code/datums/brain_damage/imaginary_friend.dm @@ -24,7 +24,7 @@ qdel(src) return if(!friend.client && friend_initialized) - addtimer(CALLBACK(src, .proc/reroll_friend), 600) + addtimer(CALLBACK(src,PROC_REF(reroll_friend)), 600) /datum/brain_trauma/special/imaginary_friend/on_death() ..() @@ -93,7 +93,7 @@ trauma = _trauma owner = trauma.owner - INVOKE_ASYNC(src, .proc/setup_friend) + INVOKE_ASYNC(src,PROC_REF(setup_friend)) join = new join.Grant(src) diff --git a/code/datums/brain_damage/phobia.dm b/code/datums/brain_damage/phobia.dm index 9eb621a747f..886fbf7687b 100644 --- a/code/datums/brain_damage/phobia.dm +++ b/code/datums/brain_damage/phobia.dm @@ -97,7 +97,7 @@ var/regex/reg = regex("(\\b|\\A)[REGEX_QUOTE(word)]'?s*(\\b|\\Z)", "i") if(findtext(hearing_args[HEARING_RAW_MESSAGE], reg)) - addtimer(CALLBACK(src, .proc/freak_out, null, word), 10) //to react AFTER the chat message + addtimer(CALLBACK(src,PROC_REF(freak_out), null, word), 10) //to react AFTER the chat message hearing_args[HEARING_RAW_MESSAGE] = reg.Replace(hearing_args[HEARING_RAW_MESSAGE], span_phobia("$1")) break diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm index 64f9c0cf37b..74ea58f53c4 100644 --- a/code/datums/brain_damage/severe.dm +++ b/code/datums/brain_damage/severe.dm @@ -289,7 +289,7 @@ var/regex/reg = new("(\\b[REGEX_QUOTE(trigger_phrase)]\\b)","ig") if(findtext(hearing_args[HEARING_RAW_MESSAGE], reg)) - addtimer(CALLBACK(src, .proc/hypnotrigger), 10) //to react AFTER the chat message + addtimer(CALLBACK(src,PROC_REF(hypnotrigger)), 10) //to react AFTER the chat message hearing_args[HEARING_RAW_MESSAGE] = reg.Replace(hearing_args[HEARING_RAW_MESSAGE], span_hypnophrase("*********")) /datum/brain_trauma/severe/hypnotic_trigger/proc/hypnotrigger() diff --git a/code/datums/brain_damage/special.dm b/code/datums/brain_damage/special.dm index 04d09c3988d..9221bf22ddd 100644 --- a/code/datums/brain_damage/special.dm +++ b/code/datums/brain_damage/special.dm @@ -67,7 +67,7 @@ /datum/brain_trauma/special/death_whispers/proc/whispering() ADD_TRAIT(owner, TRAIT_SIXTHSENSE, TRAUMA_TRAIT) active = TRUE - addtimer(CALLBACK(src, .proc/cease_whispering), rand(50, 300)) + addtimer(CALLBACK(src,PROC_REF(cease_whispering)), rand(50, 300)) /datum/brain_trauma/special/death_whispers/proc/cease_whispering() REMOVE_TRAIT(owner, TRAIT_SIXTHSENSE, TRAUMA_TRAIT) @@ -111,7 +111,7 @@ var/atom/movable/AM = thing SEND_SIGNAL(AM, COMSIG_MOVABLE_SECLUDED_LOCATION) next_crisis = world.time + 600 - addtimer(CALLBACK(src, .proc/fade_in), duration) + addtimer(CALLBACK(src,PROC_REF(fade_in)), duration) /datum/brain_trauma/special/existential_crisis/proc/fade_in() QDEL_NULL(veil) diff --git a/code/datums/browser.dm b/code/datums/browser.dm index acf4dd01a11..da2f64f5c42 100644 --- a/code/datums/browser.dm +++ b/code/datums/browser.dm @@ -18,7 +18,7 @@ /datum/browser/New(nuser, nwindow_id, ntitle = 0, nwidth = 0, nheight = 0, atom/nref = null) user = nuser - RegisterSignal(user, COMSIG_PARENT_QDELETING, .proc/user_deleted) + RegisterSignal(user, COMSIG_PARENT_QDELETING,PROC_REF(user_deleted)) window_id = nwindow_id if (ntitle) title = format_text(ntitle) @@ -230,7 +230,7 @@ winset(user, "mapwindow", "focus=true") break if (timeout) - addtimer(CALLBACK(src, .proc/close), timeout) + addtimer(CALLBACK(src,PROC_REF(close)), timeout) /datum/browser/modal/proc/wait() while (opentime && selectedbutton <= 0 && (!timeout || opentime+timeout > world.time)) diff --git a/code/datums/callback.dm b/code/datums/callback.dm index 3d2ae04e161..1f2396d4894 100644 --- a/code/datums/callback.dm +++ b/code/datums/callback.dm @@ -39,7 +39,7 @@ * ### when the above doesn't apply: *.proc/procname * - * `CALLBACK(src, .proc/some_proc_here)` + * `CALLBACK(src,PROC_REF(some_proc_here))` * * * proc defined on a parent of a some type diff --git a/code/datums/chatmessage.dm b/code/datums/chatmessage.dm index 3f15fbe577c..67c28b2761f 100644 --- a/code/datums/chatmessage.dm +++ b/code/datums/chatmessage.dm @@ -43,7 +43,7 @@ stack_trace("/datum/chatmessage created with [isnull(owner) ? "null" : "invalid"] mob owner") qdel(src) return - INVOKE_ASYNC(src, .proc/generate_image, text, target, owner, extra_classes, lifespan) + INVOKE_ASYNC(src,PROC_REF(generate_image), text, target, owner, extra_classes, lifespan) /datum/chatmessage/Destroy() if (owned_by) @@ -74,7 +74,7 @@ /datum/chatmessage/proc/generate_image(text, atom/target, mob/owner, list/extra_classes, lifespan) // Register client who owns this message owned_by = owner.client - RegisterSignal(owned_by, COMSIG_PARENT_QDELETING, .proc/on_parent_qdel) + RegisterSignal(owned_by, COMSIG_PARENT_QDELETING,PROC_REF(on_parent_qdel)) // Clip message var/maxlen = owned_by.prefs.max_chat_length @@ -153,7 +153,7 @@ if (sched_remaining > CHAT_MESSAGE_SPAWN_TIME) var/remaining_time = (sched_remaining) * (CHAT_MESSAGE_EXP_DECAY ** idx++) * (CHAT_MESSAGE_HEIGHT_DECAY ** combined_height) m.scheduled_destruction = world.time + remaining_time - addtimer(CALLBACK(m, .proc/end_of_life), remaining_time, TIMER_UNIQUE|TIMER_OVERRIDE) + addtimer(CALLBACK(m,PROC_REF(end_of_life)), remaining_time, TIMER_UNIQUE|TIMER_OVERRIDE) // Build message image message = image(loc = message_loc, layer = CHAT_LAYER) @@ -173,7 +173,7 @@ // Prepare for destruction scheduled_destruction = world.time + (lifespan - CHAT_MESSAGE_EOL_FADE) - addtimer(CALLBACK(src, .proc/end_of_life), lifespan - CHAT_MESSAGE_EOL_FADE, TIMER_UNIQUE|TIMER_OVERRIDE) + addtimer(CALLBACK(src,PROC_REF(end_of_life)), lifespan - CHAT_MESSAGE_EOL_FADE, TIMER_UNIQUE|TIMER_OVERRIDE) /** * Applies final animations to overlay CHAT_MESSAGE_EOL_FADE deciseconds prior to message deletion diff --git a/code/datums/cinematic.dm b/code/datums/cinematic.dm index fc3f13e94eb..cf489ed0a59 100644 --- a/code/datums/cinematic.dm +++ b/code/datums/cinematic.dm @@ -66,7 +66,7 @@ //We are now playing this cinematic //Handle what happens when a different cinematic tries to play over us - RegisterSignal(SSdcs, COMSIG_GLOB_PLAY_CINEMATIC, .proc/replacement_cinematic) + RegisterSignal(SSdcs, COMSIG_GLOB_PLAY_CINEMATIC,PROC_REF(replacement_cinematic)) //Pause OOC var/ooc_toggled = FALSE @@ -78,7 +78,7 @@ for(var/MM in watchers) var/mob/M = MM show_to(M, M.client) - RegisterSignal(M, COMSIG_MOB_CLIENT_LOGIN, .proc/show_to) + RegisterSignal(M, COMSIG_MOB_CLIENT_LOGIN,PROC_REF(show_to)) //Close watcher ui's SStgui.close_user_uis(M) diff --git a/code/datums/components/anti_magic.dm b/code/datums/components/anti_magic.dm index f132dfc4576..a21488376f8 100644 --- a/code/datums/components/anti_magic.dm +++ b/code/datums/components/anti_magic.dm @@ -10,10 +10,10 @@ /datum/component/anti_magic/Initialize(_magic = FALSE, _holy = FALSE, _psychic = FALSE, _allowed_slots, _charges, _blocks_self = TRUE, datum/callback/_reaction, datum/callback/_expire) if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) else if(ismob(parent)) - RegisterSignal(parent, COMSIG_MOB_RECEIVE_MAGIC, .proc/protect) + RegisterSignal(parent, COMSIG_MOB_RECEIVE_MAGIC,PROC_REF(protect)) else return COMPONENT_INCOMPATIBLE @@ -32,7 +32,7 @@ if(!CHECK_BITFIELD(allowed_slots, slotdefine2slotbit(slot))) //Check that the slot is valid for antimagic UnregisterSignal(equipper, COMSIG_MOB_RECEIVE_MAGIC) return - RegisterSignal(equipper, COMSIG_MOB_RECEIVE_MAGIC, .proc/protect, TRUE) + RegisterSignal(equipper, COMSIG_MOB_RECEIVE_MAGIC,PROC_REF(protect), TRUE) /datum/component/anti_magic/proc/on_drop(datum/source, mob/user) UnregisterSignal(user, COMSIG_MOB_RECEIVE_MAGIC) diff --git a/code/datums/components/archaeology.dm b/code/datums/components/archaeology.dm index 46936d977f3..bc53ab2199a 100644 --- a/code/datums/components/archaeology.dm +++ b/code/datums/components/archaeology.dm @@ -16,8 +16,8 @@ stack_trace("ARCHAEOLOGY WARNING: [parent] contained a null probability value in [i].") callback = _callback RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,.proc/Dig) - RegisterSignal(parent, COMSIG_ATOM_EX_ACT, .proc/BombDig) - RegisterSignal(parent, COMSIG_ATOM_SING_PULL, .proc/SingDig) + RegisterSignal(parent, COMSIG_ATOM_EX_ACT,PROC_REF(BombDig)) + RegisterSignal(parent, COMSIG_ATOM_SING_PULL,PROC_REF(SingDig)) /datum/component/archaeology/InheritComponent(datum/component/archaeology/A, i_am_original) var/list/other_archdrops = A.archdrops diff --git a/code/datums/components/armor_plate.dm b/code/datums/components/armor_plate.dm index e3e4de32650..f583424ebcd 100644 --- a/code/datums/components/armor_plate.dm +++ b/code/datums/components/armor_plate.dm @@ -9,11 +9,11 @@ if(!isobj(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examine) - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/applyplate) - RegisterSignal(parent, COMSIG_PARENT_PREQDELETED, .proc/dropplates) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(applyplate)) + RegisterSignal(parent, COMSIG_PARENT_PREQDELETED,PROC_REF(dropplates)) if(istype(parent, /obj/mecha/working/ripley)) - RegisterSignal(parent, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/apply_mech_overlays) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_OVERLAYS,PROC_REF(apply_mech_overlays)) if(_maxamount) maxamount = _maxamount diff --git a/code/datums/components/artifacts.dm b/code/datums/components/artifacts.dm index ee506863392..1dc6b4a3777 100644 --- a/code/datums/components/artifacts.dm +++ b/code/datums/components/artifacts.dm @@ -43,25 +43,25 @@ /datum/component/artifact/Initialize(rarity = ART_RARITY_COMMON) if(!isitem(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_GET_EFFECTS, .proc/get_effects) - RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_EXISTS, .proc/hi) - RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_MAKE_UNIQUE, .proc/make_unique) - RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_IDENTIFIED, .proc/is_identified) - RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_ADD_EFFECT, .proc/add_effect) - RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_READ_PARAMETERS, .proc/read_parameters) - RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_FINALIZE, .proc/finalize) - RegisterSignal(parent, COMSIG_ITEM_WELLABLE, .proc/tabulate_wellability) - RegisterSignal(parent, COMSIG_ATOM_GET_VALUE, .proc/tabulate_value) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/update_everything) - // RegisterSignal(parent, COMSIG_ITEM_CLICKED, .proc/on_clicked) - // RegisterSignal(parent, COMSIG_ITEM_MICROWAVE_ACT, .proc/on_microwave) //c: - RegisterSignal(parent, COMSIG_ATOM_GET_EXAMINE_NAME, .proc/get_name) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/get_description) + RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_GET_EFFECTS,PROC_REF(get_effects)) + RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_EXISTS,PROC_REF(hi)) + RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_MAKE_UNIQUE,PROC_REF(make_unique)) + RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_IDENTIFIED,PROC_REF(is_identified)) + RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_ADD_EFFECT,PROC_REF(add_effect)) + RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_READ_PARAMETERS,PROC_REF(read_parameters)) + RegisterSignal(parent, COMSIG_ITEM_ARTIFACT_FINALIZE,PROC_REF(finalize)) + RegisterSignal(parent, COMSIG_ITEM_WELLABLE,PROC_REF(tabulate_wellability)) + RegisterSignal(parent, COMSIG_ATOM_GET_VALUE,PROC_REF(tabulate_value)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(update_everything)) + // RegisterSignal(parent, COMSIG_ITEM_CLICKED,PROC_REF(on_clicked)) + // RegisterSignal(parent, COMSIG_ITEM_MICROWAVE_ACT,PROC_REF(on_microwave)) //c: + RegisterSignal(parent, COMSIG_ATOM_GET_EXAMINE_NAME,PROC_REF(get_name)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(get_description)) src.rarity = rarity /// Runs the artifact's main loop. starts when touched by a mob, stops when it doesnt have anything to do /datum/component/artifact/process() - INVOKE_ASYNC(src, .proc/mainloop) + INVOKE_ASYNC(src,PROC_REF(mainloop)) /datum/component/artifact/proc/mainloop(force_flags) ART_MASTER @@ -180,8 +180,8 @@ /datum/component/artifact/proc/register_mob_signals(mob/living/newbie) return // todo: this - //RegisterSignal(newbie, COMSIG_MOB_APPLY_DAMAGE, .proc/on_mob_damage) - //RegisterSignal(newbie, COMSIG_CARBON_GET_BLEED_MOD, .proc/on_bleed) + //RegisterSignal(newbie, COMSIG_MOB_APPLY_DAMAGE,PROC_REF(on_mob_damage)) + //RegisterSignal(newbie, COMSIG_CARBON_GET_BLEED_MOD,PROC_REF(on_bleed)) /datum/component/artifact/proc/unregister_mob_signals(mob/living/current) return // todo: this @@ -393,7 +393,7 @@ ART_MASTER update_color() //update_scanner_name() - INVOKE_ASYNC(src, .proc/floatycool) + INVOKE_ASYNC(src,PROC_REF(floatycool)) /datum/component/artifact/proc/floatycool() fade_in() @@ -543,7 +543,7 @@ my_parent = WEAKREF(parent) apply_parameters(parameters) generate_trait() - RegisterSignal(parent, COMSIG_PARENT_PREQDELETED, .proc/on_effect_deleted, TRUE) + RegisterSignal(parent, COMSIG_PARENT_PREQDELETED,PROC_REF(on_effect_deleted), TRUE) /datum/artifact_effect/Del() cleanup(TRUE) diff --git a/code/datums/components/bane.dm b/code/datums/components/bane.dm index bdfcfed5175..efb147b9541 100644 --- a/code/datums/components/bane.dm +++ b/code/datums/components/bane.dm @@ -21,9 +21,9 @@ /datum/component/bane/RegisterWithParent() . = ..() if(speciestype) - RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/speciesCheck) + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK,PROC_REF(speciesCheck)) else - RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/mobCheck) + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK,PROC_REF(mobCheck)) /datum/component/bane/UnregisterFromParent() . = ..() diff --git a/code/datums/components/bouncy.dm b/code/datums/components/bouncy.dm index fed603410ea..d1ba146397e 100644 --- a/code/datums/components/bouncy.dm +++ b/code/datums/components/bouncy.dm @@ -18,11 +18,11 @@ var/list/diff_bounces = difflist(bounce_signals, _bounce_signals, TRUE) for(var/bounce in diff_bounces) bounce_signals += bounce - RegisterSignal(parent, bounce, .proc/bounce_up) + RegisterSignal(parent, bounce,PROC_REF(bounce_up)) /datum/component/bouncy/RegisterWithParent() . = ..() - RegisterSignal(parent, bounce_signals, .proc/bounce_up) + RegisterSignal(parent, bounce_signals,PROC_REF(bounce_up)) /datum/component/bouncy/UnregisterFromParent() . = ..() diff --git a/code/datums/components/butchering.dm b/code/datums/components/butchering.dm index 72bb77bfe5f..ec2d5db69a4 100644 --- a/code/datums/components/butchering.dm +++ b/code/datums/components/butchering.dm @@ -20,14 +20,14 @@ if(_can_be_blunt) can_be_blunt = _can_be_blunt if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_ATTACK, .proc/onItemAttack) + RegisterSignal(parent, COMSIG_ITEM_ATTACK,PROC_REF(onItemAttack)) /datum/component/butchering/proc/onItemAttack(obj/item/source, mob/living/M, mob/living/user) if(user.a_intent != INTENT_HARM) return if(M.stat == DEAD && (M.butcher_results || M.guaranteed_butcher_results)) //can we butcher it? if(butchering_enabled && (can_be_blunt || source.get_sharpness())) - INVOKE_ASYNC(src, .proc/startButcher, source, M, user) + INVOKE_ASYNC(src,PROC_REF(startButcher), source, M, user) return COMPONENT_ITEM_NO_ATTACK if(ishuman(M) && source.force && source.get_sharpness()) @@ -37,7 +37,7 @@ user.show_message(span_warning("[H]'s neck has already been already cut, you can't make the bleeding any worse!"), 1, \ span_warning("Their neck has already been already cut, you can't make the bleeding any worse!")) return COMPONENT_ITEM_NO_ATTACK - INVOKE_ASYNC(src, .proc/startNeckSlice, source, H, user) + INVOKE_ASYNC(src,PROC_REF(startNeckSlice), source, H, user) return COMPONENT_ITEM_NO_ATTACK /datum/component/butchering/proc/startButcher(obj/item/source, mob/living/M, mob/living/user) @@ -127,7 +127,7 @@ . = ..() if(. == COMPONENT_INCOMPATIBLE) return - RegisterSignal(parent, COMSIG_MOVABLE_CROSSED, .proc/onCrossed) + RegisterSignal(parent, COMSIG_MOVABLE_CROSSED,PROC_REF(onCrossed)) /datum/component/butchering/recycler/proc/onCrossed(datum/source, mob/living/L) if(!istype(L)) diff --git a/code/datums/components/caltrop.dm b/code/datums/components/caltrop.dm index b89154de4ac..0fb706b6d36 100644 --- a/code/datums/components/caltrop.dm +++ b/code/datums/components/caltrop.dm @@ -21,7 +21,7 @@ ///given to connect_loc to listen for something moving over target var/static/list/crossed_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) ///So we can update ant damage @@ -41,7 +41,7 @@ if(ismovable(parent)) AddComponent(/datum/component/connect_loc_behalf, parent, crossed_connections) else - RegisterSignal(get_turf(parent), COMSIG_ATOM_ENTERED, .proc/on_entered) + RegisterSignal(get_turf(parent), COMSIG_ATOM_ENTERED,PROC_REF(on_entered)) // Inherit the new values passed to the component /datum/component/caltrop/InheritComponent(datum/component/caltrop/new_comp, original, min_damage, max_damage, probability, flags, soundfile) diff --git a/code/datums/components/chasm.dm b/code/datums/components/chasm.dm index 87563582017..4fa480b4306 100644 --- a/code/datums/components/chasm.dm +++ b/code/datums/components/chasm.dm @@ -24,7 +24,7 @@ )) /datum/component/chasm/Initialize(turf/target) - RegisterSignal(parent, list(COMSIG_MOVABLE_CROSSED, COMSIG_ATOM_ENTERED), .proc/Entered) + RegisterSignal(parent, list(COMSIG_MOVABLE_CROSSED, COMSIG_ATOM_ENTERED),PROC_REF(Entered)) target_turf = target START_PROCESSING(SSobj, src) // process on create, in case stuff is still there @@ -57,7 +57,7 @@ for (var/thing in to_check) if (droppable(thing)) . = 1 - INVOKE_ASYNC(src, .proc/drop, thing) + INVOKE_ASYNC(src,PROC_REF(drop), thing) /datum/component/chasm/proc/droppable(atom/movable/AM) // avoid an infinite loop, but allow falling a large distance diff --git a/code/datums/components/cleaning.dm b/code/datums/components/cleaning.dm index 72213eb74d9..850700072b3 100644 --- a/code/datums/components/cleaning.dm +++ b/code/datums/components/cleaning.dm @@ -4,7 +4,7 @@ /datum/component/cleaning/Initialize() if(!ismovableatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_MOVABLE_MOVED), .proc/Clean) + RegisterSignal(parent, list(COMSIG_MOVABLE_MOVED),PROC_REF(Clean)) /datum/component/cleaning/proc/Clean() var/atom/movable/AM = parent diff --git a/code/datums/components/combat_mode.dm b/code/datums/components/combat_mode.dm index dc0f3afe785..f6a29747868 100644 --- a/code/datums/components/combat_mode.dm +++ b/code/datums/components/combat_mode.dm @@ -16,14 +16,14 @@ src.hud_loc = hud_loc - RegisterSignal(L, list(SIGNAL_ADDTRAIT(TRAIT_COMBAT_MODE_LOCKED), SIGNAL_REMOVETRAIT(TRAIT_COMBAT_MODE_LOCKED)), .proc/update_combat_lock) - RegisterSignal(L, COMSIG_TOGGLE_COMBAT_MODE, .proc/user_toggle_intentional_combat_mode) - RegisterSignal(L, COMSIG_DISABLE_COMBAT_MODE, .proc/safe_disable_combat_mode) - RegisterSignal(L, COMSIG_ENABLE_COMBAT_MODE, .proc/safe_enable_combat_mode) - RegisterSignal(L, COMSIG_MOB_DEATH, .proc/on_death) - RegisterSignal(L, COMSIG_MOB_CLIENT_LOGOUT, .proc/on_logout) - RegisterSignal(L, COMSIG_MOB_HUD_CREATED, .proc/on_mob_hud_created) - RegisterSignal(L, COMSIG_COMBAT_MODE_CHECK, .proc/check_flags) + RegisterSignal(L, list(SIGNAL_ADDTRAIT(TRAIT_COMBAT_MODE_LOCKED), SIGNAL_REMOVETRAIT(TRAIT_COMBAT_MODE_LOCKED)),PROC_REF(update_combat_lock)) + RegisterSignal(L, COMSIG_TOGGLE_COMBAT_MODE,PROC_REF(user_toggle_intentional_combat_mode)) + RegisterSignal(L, COMSIG_DISABLE_COMBAT_MODE,PROC_REF(safe_disable_combat_mode)) + RegisterSignal(L, COMSIG_ENABLE_COMBAT_MODE,PROC_REF(safe_enable_combat_mode)) + RegisterSignal(L, COMSIG_MOB_DEATH,PROC_REF(on_death)) + RegisterSignal(L, COMSIG_MOB_CLIENT_LOGOUT,PROC_REF(on_logout)) + RegisterSignal(L, COMSIG_MOB_HUD_CREATED,PROC_REF(on_mob_hud_created)) + RegisterSignal(L, COMSIG_COMBAT_MODE_CHECK,PROC_REF(check_flags)) update_combat_lock() @@ -87,8 +87,8 @@ to_chat(source, self_message) if(playsound) source.playsound_local(source, 'sound/misc/ui_toggle_vats.ogg', 50, FALSE, pressure_affected = FALSE) //Sound from interbay! - RegisterSignal(source, COMSIG_MOB_CLIENT_MOUSEMOVE, .proc/onMouseMove) - RegisterSignal(source, COMSIG_MOVABLE_MOVED, .proc/on_move) + RegisterSignal(source, COMSIG_MOB_CLIENT_MOUSEMOVE,PROC_REF(onMouseMove)) + RegisterSignal(source, COMSIG_MOVABLE_MOVED,PROC_REF(on_move)) if(hud_icon) hud_icon.combat_on = TRUE hud_icon.update_icon() diff --git a/code/datums/components/connect_containers.dm b/code/datums/components/connect_containers.dm index c386a096410..33a2fe5f1a0 100644 --- a/code/datums/components/connect_containers.dm +++ b/code/datums/components/connect_containers.dm @@ -37,8 +37,8 @@ tracked = new_tracked if(!tracked) return - RegisterSignal(tracked, COMSIG_MOVABLE_MOVED, .proc/on_moved) - RegisterSignal(tracked, COMSIG_PARENT_QDELETING, .proc/handle_tracked_qdel) + RegisterSignal(tracked, COMSIG_MOVABLE_MOVED,PROC_REF(on_moved)) + RegisterSignal(tracked, COMSIG_PARENT_QDELETING,PROC_REF(handle_tracked_qdel)) update_signals(tracked) /datum/component/connect_containers/proc/handle_tracked_qdel() @@ -50,7 +50,7 @@ return for(var/atom/movable/container as anything in get_nested_locs(listener)) - RegisterSignal(container, COMSIG_MOVABLE_MOVED, .proc/on_moved) + RegisterSignal(container, COMSIG_MOVABLE_MOVED,PROC_REF(on_moved)) for(var/signal in connections) parent.RegisterSignal(container, signal, connections[signal]) diff --git a/code/datums/components/connect_loc_behalf.dm b/code/datums/components/connect_loc_behalf.dm index b758b6ad5f3..2a4c731f989 100644 --- a/code/datums/components/connect_loc_behalf.dm +++ b/code/datums/components/connect_loc_behalf.dm @@ -20,8 +20,8 @@ src.tracked = tracked /datum/component/connect_loc_behalf/RegisterWithParent() - RegisterSignal(tracked, COMSIG_MOVABLE_MOVED, .proc/on_moved) - RegisterSignal(tracked, COMSIG_PARENT_QDELETING, .proc/handle_tracked_qdel) + RegisterSignal(tracked, COMSIG_MOVABLE_MOVED,PROC_REF(on_moved)) + RegisterSignal(tracked, COMSIG_PARENT_QDELETING,PROC_REF(handle_tracked_qdel)) update_signals() /datum/component/connect_loc_behalf/UnregisterFromParent() diff --git a/code/datums/components/construction.dm b/code/datums/components/construction.dm index 01df44752c9..5d56f55565f 100644 --- a/code/datums/components/construction.dm +++ b/code/datums/components/construction.dm @@ -15,7 +15,7 @@ if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examine) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,.proc/action) update_parent(index) diff --git a/code/datums/components/crafting/crafting.dm b/code/datums/components/crafting/crafting.dm index 8f33da5723a..c5b58c74543 100644 --- a/code/datums/components/crafting/crafting.dm +++ b/code/datums/components/crafting/crafting.dm @@ -1,6 +1,6 @@ /datum/component/personal_crafting/Initialize() if(ismob(parent)) - RegisterSignal(parent, COMSIG_MOB_CLIENT_LOGIN, .proc/create_mob_button) + RegisterSignal(parent, COMSIG_MOB_CLIENT_LOGIN,PROC_REF(create_mob_button)) /datum/component/personal_crafting/proc/create_mob_button(mob/user, client/CL) var/datum/hud/H = user.hud_used @@ -8,7 +8,7 @@ C.icon = H.ui_style H.static_inventory += C CL.screen += C - RegisterSignal(C, COMSIG_CLICK, .proc/component_ui_interact) + RegisterSignal(C, COMSIG_CLICK,PROC_REF(component_ui_interact)) /datum/component/personal_crafting var/busy diff --git a/code/datums/components/decal.dm b/code/datums/components/decal.dm index 6b5b486764c..b41cc7670c3 100644 --- a/code/datums/components/decal.dm +++ b/code/datums/components/decal.dm @@ -18,11 +18,11 @@ /datum/component/decal/RegisterWithParent() if(first_dir) - RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE, .proc/rotate_react) + RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE,PROC_REF(rotate_react)) if(cleanable) - RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT, .proc/clean_react) + RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT,PROC_REF(clean_react)) if(description) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examine) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) /datum/component/decal/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_ATOM_DIR_CHANGE, COMSIG_COMPONENT_CLEAN_ACT, COMSIG_PARENT_EXAMINE)) diff --git a/code/datums/components/decals/blood.dm b/code/datums/components/decals/blood.dm index 689ae0bca80..2d589c62503 100644 --- a/code/datums/components/decals/blood.dm +++ b/code/datums/components/decals/blood.dm @@ -5,7 +5,7 @@ if(!isitem(parent)) return COMPONENT_INCOMPATIBLE . = ..() - RegisterSignal(parent, COMSIG_ATOM_GET_EXAMINE_NAME, .proc/get_examine_name) + RegisterSignal(parent, COMSIG_ATOM_GET_EXAMINE_NAME,PROC_REF(get_examine_name)) /datum/component/decal/blood/generate_appearance(_icon, _icon_state, _dir, _layer, _color) var/obj/item/I = parent diff --git a/code/datums/components/drift.dm b/code/datums/components/drift.dm index 4d509026a44..93174aa48ad 100644 --- a/code/datums/components/drift.dm +++ b/code/datums/components/drift.dm @@ -28,11 +28,11 @@ if(!drifting_loop) //Really want to qdel here but can't return COMPONENT_INCOMPATIBLE - RegisterSignal(drifting_loop, COMSIG_MOVELOOP_START, .proc/drifting_start) - RegisterSignal(drifting_loop, COMSIG_MOVELOOP_STOP, .proc/drifting_stop) - RegisterSignal(drifting_loop, COMSIG_MOVELOOP_PREPROCESS_CHECK, .proc/before_move) - RegisterSignal(drifting_loop, COMSIG_MOVELOOP_POSTPROCESS, .proc/after_move) - RegisterSignal(drifting_loop, COMSIG_PARENT_QDELETING, .proc/loop_death) + RegisterSignal(drifting_loop, COMSIG_MOVELOOP_START,PROC_REF(drifting_start)) + RegisterSignal(drifting_loop, COMSIG_MOVELOOP_STOP,PROC_REF(drifting_stop)) + RegisterSignal(drifting_loop, COMSIG_MOVELOOP_PREPROCESS_CHECK,PROC_REF(before_move)) + RegisterSignal(drifting_loop, COMSIG_MOVELOOP_POSTPROCESS,PROC_REF(after_move)) + RegisterSignal(drifting_loop, COMSIG_PARENT_QDELETING,PROC_REF(loop_death)) if(drifting_loop.running) drifting_start(drifting_loop) // There's a good chance it'll autostart, gotta catch that @@ -85,13 +85,13 @@ SIGNAL_HANDLER var/atom/movable/movable_parent = parent inertia_last_loc = movable_parent.loc - RegisterSignal(movable_parent, COMSIG_MOVABLE_MOVED, .proc/handle_move) - RegisterSignal(movable_parent, COMSIG_MOVABLE_NEWTONIAN_MOVE, .proc/newtonian_impulse) + RegisterSignal(movable_parent, COMSIG_MOVABLE_MOVED,PROC_REF(handle_move)) + RegisterSignal(movable_parent, COMSIG_MOVABLE_NEWTONIAN_MOVE,PROC_REF(newtonian_impulse)) // We will use glide size to intuit how long to delay our loop's next move for // This way you can't ride two movements at once while drifting, since that'd be dumb as fuck - RegisterSignal(movable_parent, COMSIG_MOVABLE_UPDATE_GLIDE_SIZE, .proc/handle_glidesize_update) + RegisterSignal(movable_parent, COMSIG_MOVABLE_UPDATE_GLIDE_SIZE,PROC_REF(handle_glidesize_update)) // If you stop pulling something mid drift, I want it to retain that momentum - RegisterSignal(movable_parent, COMSIG_ATOM_NO_LONGER_PULLING, .proc/stopped_pulling) + RegisterSignal(movable_parent, COMSIG_ATOM_NO_LONGER_PULLING,PROC_REF(stopped_pulling)) /datum/component/drift/proc/drifting_stop() SIGNAL_HANDLER @@ -183,7 +183,7 @@ block_inputs_until = world.time + glide_for QDEL_IN(src, glide_for + 1) qdel(drifting_loop) - RegisterSignal(parent, COMSIG_MOB_CLIENT_PRE_MOVE, .proc/allow_final_movement) + RegisterSignal(parent, COMSIG_MOB_CLIENT_PRE_MOVE,PROC_REF(allow_final_movement)) /datum/component/drift/proc/allow_final_movement(datum/source) // Some things want to allow movement out of spacedrift, we should let them diff --git a/code/datums/components/earhealing.dm b/code/datums/components/earhealing.dm index 8fe6d2788e0..9fdef8cac34 100644 --- a/code/datums/components/earhealing.dm +++ b/code/datums/components/earhealing.dm @@ -7,7 +7,7 @@ /datum/component/earhealing/Initialize() if(!isitem(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED), .proc/equippedChanged) + RegisterSignal(parent, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED),PROC_REF(equippedChanged)) /datum/component/earhealing/proc/equippedChanged(mob/living/carbon/user, slot) if (slot == SLOT_EARS && istype(user)) diff --git a/code/datums/components/edible.dm b/code/datums/components/edible.dm index 34292e613e5..b959b072cf9 100644 --- a/code/datums/components/edible.dm +++ b/code/datums/components/edible.dm @@ -34,12 +34,12 @@ Behavior that's still missing from this component that original food items had t if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examine) - RegisterSignal(parent, COMSIG_ATOM_ATTACK_ANIMAL, .proc/UseByAnimal) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) + RegisterSignal(parent, COMSIG_ATOM_ATTACK_ANIMAL,PROC_REF(UseByAnimal)) if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_ATTACK, .proc/UseFromHand) + RegisterSignal(parent, COMSIG_ITEM_ATTACK,PROC_REF(UseFromHand)) else if(isturf(parent)) - RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND, .proc/TryToEatTurf) + RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND,PROC_REF(TryToEatTurf)) src.bite_consumption = bite_consumption src.food_flags = food_flags diff --git a/code/datums/components/edit_complainer.dm b/code/datums/components/edit_complainer.dm index e2cca2eb50c..a0570a27ee0 100644 --- a/code/datums/components/edit_complainer.dm +++ b/code/datums/components/edit_complainer.dm @@ -16,7 +16,7 @@ ) say_lines = text || default_lines - RegisterSignal(SSdcs, COMSIG_GLOB_VAR_EDIT, .proc/var_edit_react) + RegisterSignal(SSdcs, COMSIG_GLOB_VAR_EDIT,PROC_REF(var_edit_react)) /datum/component/edit_complainer/proc/var_edit_react(datum/source, list/arguments) var/atom/movable/master = parent diff --git a/code/datums/components/embedded.dm b/code/datums/components/embedded.dm index 63d5a13b2ec..4d10d6250df 100644 --- a/code/datums/components/embedded.dm +++ b/code/datums/components/embedded.dm @@ -100,12 +100,12 @@ /datum/component/embedded/RegisterWithParent() if(iscarbon(parent)) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/jostleCheck) - RegisterSignal(parent, COMSIG_CARBON_EMBED_RIP, .proc/ripOutCarbon) - RegisterSignal(parent, COMSIG_CARBON_EMBED_REMOVAL, .proc/safeRemoveCarbon) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(jostleCheck)) + RegisterSignal(parent, COMSIG_CARBON_EMBED_RIP,PROC_REF(ripOutCarbon)) + RegisterSignal(parent, COMSIG_CARBON_EMBED_REMOVAL,PROC_REF(safeRemoveCarbon)) else if(isclosedturf(parent)) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examineTurf) - RegisterSignal(parent, COMSIG_PARENT_QDELETING, .proc/itemMoved) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examineTurf)) + RegisterSignal(parent, COMSIG_PARENT_QDELETING,PROC_REF(itemMoved)) /datum/component/embedded/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_MOVABLE_MOVED, COMSIG_CARBON_EMBED_RIP, COMSIG_CARBON_EMBED_REMOVAL, COMSIG_PARENT_EXAMINE)) @@ -137,7 +137,7 @@ limb.embedded_objects |= weapon // on the inside... on the inside... weapon.forceMove(victim) - RegisterSignal(weapon, list(COMSIG_MOVABLE_MOVED, COMSIG_PARENT_QDELETING), .proc/byeItemCarbon) + RegisterSignal(weapon, list(COMSIG_MOVABLE_MOVED, COMSIG_PARENT_QDELETING),PROC_REF(byeItemCarbon)) var/damage = 0 if(harmful) victim.visible_message(span_danger("[weapon] embeds itself in [victim]'s [limb.name]!"),ignored_mobs=victim) @@ -303,7 +303,7 @@ // we can't store the item IN the turf (cause turfs are just kinda... there), so we fake it by making the item invisible and bailing if it moves due to a blast weapon.forceMove(hit) weapon.invisibility = INVISIBILITY_ABSTRACT - RegisterSignal(weapon, COMSIG_MOVABLE_MOVED, .proc/itemMoved) + RegisterSignal(weapon, COMSIG_MOVABLE_MOVED,PROC_REF(itemMoved)) var/pixelX = rand(-2, 2) var/pixelY = rand(-1, 3) // bias this upwards since in-hands are usually on the lower end of the sprite diff --git a/code/datums/components/empprotection.dm b/code/datums/components/empprotection.dm index df4c49040b6..9e3c8bb6ca9 100644 --- a/code/datums/components/empprotection.dm +++ b/code/datums/components/empprotection.dm @@ -5,7 +5,7 @@ if(!istype(parent, /atom)) return COMPONENT_INCOMPATIBLE flags = _flags - RegisterSignal(parent, list(COMSIG_ATOM_EMP_ACT), .proc/getEmpFlags) + RegisterSignal(parent, list(COMSIG_ATOM_EMP_ACT),PROC_REF(getEmpFlags)) /datum/component/empprotection/proc/getEmpFlags(severity) return flags diff --git a/code/datums/components/explodable.dm b/code/datums/components/explodable.dm index 6e4be8497d1..e47acc73b83 100644 --- a/code/datums/components/explodable.dm +++ b/code/datums/components/explodable.dm @@ -10,16 +10,16 @@ if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/explodable_attack) - RegisterSignal(parent, COMSIG_TRY_STORAGE_INSERT, .proc/explodable_insert_item) - RegisterSignal(parent, COMSIG_ATOM_EX_ACT, .proc/detonate) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(explodable_attack)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_INSERT,PROC_REF(explodable_insert_item)) + RegisterSignal(parent, COMSIG_ATOM_EX_ACT,PROC_REF(detonate)) if(ismovable(parent)) - RegisterSignal(parent, COMSIG_MOVABLE_IMPACT, .proc/explodable_impact) - RegisterSignal(parent, COMSIG_MOVABLE_BUMP, .proc/explodable_bump) + RegisterSignal(parent, COMSIG_MOVABLE_IMPACT,PROC_REF(explodable_impact)) + RegisterSignal(parent, COMSIG_MOVABLE_BUMP,PROC_REF(explodable_bump)) if(isitem(parent)) - RegisterSignal(parent, list(COMSIG_ITEM_ATTACK, COMSIG_ITEM_ATTACK_OBJ, COMSIG_ITEM_HIT_REACT), .proc/explodable_attack) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(parent, list(COMSIG_ITEM_ATTACK, COMSIG_ITEM_ATTACK_OBJ, COMSIG_ITEM_HIT_REACT),PROC_REF(explodable_attack)) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) @@ -56,7 +56,7 @@ detonate() /datum/component/explodable/proc/on_equip(datum/source, mob/equipper, slot) - RegisterSignal(equipper, COMSIG_MOB_APPLY_DAMAGE, .proc/explodable_attack_zone, TRUE) + RegisterSignal(equipper, COMSIG_MOB_APPLY_DAMAGE, PROC_REF(explodable_attack_zone), TRUE) /datum/component/explodable/proc/on_drop(datum/source, mob/user) UnregisterSignal(user, COMSIG_MOB_APPLY_DAMAGE) diff --git a/code/datums/components/field_of_vision.dm b/code/datums/components/field_of_vision.dm index 97d3141db62..0ffd7f3e3d3 100644 --- a/code/datums/components/field_of_vision.dm +++ b/code/datums/components/field_of_vision.dm @@ -82,14 +82,14 @@ var/mob/M = parent if(M.client) generate_fov_holder(M, angle) - RegisterSignal(M, COMSIG_MOB_CLIENT_LOGIN, .proc/on_mob_login) - RegisterSignal(M, COMSIG_MOB_CLIENT_LOGOUT, .proc/on_mob_logout) - RegisterSignal(M, COMSIG_MOB_GET_VISIBLE_MESSAGE, .proc/on_visible_message) - RegisterSignal(M, COMSIG_MOB_EXAMINATE, .proc/on_examinate) - RegisterSignal(M, COMSIG_MOB_FOV_VIEW, .proc/on_fov_view) - RegisterSignal(M, COMSIG_MOB_CLIENT_CHANGE_VIEW, .proc/on_change_view) - RegisterSignal(M, COMSIG_MOB_RESET_PERSPECTIVE, .proc/on_reset_perspective) - RegisterSignal(M, COMSIG_MOB_FOV_VIEWER, .proc/is_viewer) + RegisterSignal(M, COMSIG_MOB_CLIENT_LOGIN,PROC_REF(on_mob_login)) + RegisterSignal(M, COMSIG_MOB_CLIENT_LOGOUT,PROC_REF(on_mob_logout)) + RegisterSignal(M, COMSIG_MOB_GET_VISIBLE_MESSAGE,PROC_REF(on_visible_message)) + RegisterSignal(M, COMSIG_MOB_EXAMINATE,PROC_REF(on_examinate)) + RegisterSignal(M, COMSIG_MOB_FOV_VIEW,PROC_REF(on_fov_view)) + RegisterSignal(M, COMSIG_MOB_CLIENT_CHANGE_VIEW,PROC_REF(on_change_view)) + RegisterSignal(M, COMSIG_MOB_RESET_PERSPECTIVE,PROC_REF(on_reset_perspective)) + RegisterSignal(M, COMSIG_MOB_FOV_VIEWER,PROC_REF(is_viewer)) /datum/component/field_of_vision/UnregisterFromParent() . = ..() @@ -134,14 +134,14 @@ if(_angle) rotate_shadow_cone(_angle) fov.alpha = M.stat == DEAD ? 0 : 255 - RegisterSignal(M, COMSIG_MOB_DEATH, .proc/hide_fov) - RegisterSignal(M, COMSIG_LIVING_REVIVE, .proc/show_fov) - RegisterSignal(M, COMSIG_ATOM_DIR_CHANGE, .proc/on_dir_change) - RegisterSignal(M, COMSIG_MOVABLE_MOVED, .proc/on_mob_moved) - RegisterSignal(M, COMSIG_ROBOT_UPDATE_ICONS, .proc/manual_centered_render_source) + RegisterSignal(M, COMSIG_MOB_DEATH,PROC_REF(hide_fov)) + RegisterSignal(M, COMSIG_LIVING_REVIVE,PROC_REF(show_fov)) + RegisterSignal(M, COMSIG_ATOM_DIR_CHANGE,PROC_REF(on_dir_change)) + RegisterSignal(M, COMSIG_MOVABLE_MOVED,PROC_REF(on_mob_moved)) + RegisterSignal(M, COMSIG_ROBOT_UPDATE_ICONS,PROC_REF(manual_centered_render_source)) var/atom/A = M if(M.loc && !isturf(M.loc)) - REGISTER_NESTED_LOCS(M, nested_locs, COMSIG_MOVABLE_MOVED, .proc/on_loc_moved) + REGISTER_NESTED_LOCS(M, nested_locs, COMSIG_MOVABLE_MOVED,PROC_REF(on_loc_moved)) A = nested_locs[nested_locs.len] CENTERED_RENDER_SOURCE(owner_mask, A, src) M.client.images += shadow_mask @@ -213,7 +213,7 @@ var/turf/T if(!isturf(source.loc)) //Recalculate all nested locations. UNREGISTER_NESTED_LOCS( nested_locs, COMSIG_MOVABLE_MOVED, 1) - REGISTER_NESTED_LOCS(source, nested_locs, COMSIG_MOVABLE_MOVED, .proc/on_loc_moved) + REGISTER_NESTED_LOCS(source, nested_locs, COMSIG_MOVABLE_MOVED,PROC_REF(on_loc_moved)) var/atom/movable/topmost = nested_locs[nested_locs.len] T = topmost.loc CENTERED_RENDER_SOURCE(owner_mask, topmost, src) @@ -233,7 +233,7 @@ var/atom/movable/prev_topmost = nested_locs[nested_locs.len] if(prev_topmost != source) UNREGISTER_NESTED_LOCS(nested_locs, COMSIG_MOVABLE_MOVED, nested_locs.Find(source) + 1) - REGISTER_NESTED_LOCS(source, nested_locs, COMSIG_MOVABLE_MOVED, .proc/on_loc_moved) + REGISTER_NESTED_LOCS(source, nested_locs, COMSIG_MOVABLE_MOVED,PROC_REF(on_loc_moved)) var/atom/movable/topmost = nested_locs[nested_locs.len] if(topmost != prev_topmost) CENTERED_RENDER_SOURCE(owner_mask, topmost, src) diff --git a/code/datums/components/footstep.dm b/code/datums/components/footstep.dm index f47efee92c1..037724e90e4 100644 --- a/code/datums/components/footstep.dm +++ b/code/datums/components/footstep.dm @@ -32,7 +32,7 @@ if(FOOTSTEP_MOB_HUMAN) if(!ishuman(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/play_humanstep) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(play_humanstep)) return if(FOOTSTEP_MOB_CLAW) footstep_sounds = GLOB.clawfootstep @@ -48,7 +48,7 @@ footstep_sounds = 'sound/effects/footstep/crawl1.ogg' if(FOOTSTEP_MOB_HOOF) footstep_sounds = 'modular_coyote/sound/mobsounds/horsestep.ogg' - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/play_simplestep) //Note that this doesn't get called for humans. + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(play_simplestep)) //Note that this doesn't get called for humans. ///Prepares a footstep. Determines if it should get played. Returns the turf it should get played on. Note that it is always a /turf/open /datum/component/footstep/proc/prepare_step() diff --git a/code/datums/components/forced_gravity.dm b/code/datums/components/forced_gravity.dm index 4512a4de55d..f46ae39f000 100644 --- a/code/datums/components/forced_gravity.dm +++ b/code/datums/components/forced_gravity.dm @@ -5,9 +5,9 @@ /datum/component/forced_gravity/Initialize(forced_value = 1) if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(COMSIG_ATOM_HAS_GRAVITY, .proc/gravity_check) + RegisterSignal(COMSIG_ATOM_HAS_GRAVITY,PROC_REF(gravity_check)) if(isturf(parent)) - RegisterSignal(COMSIG_TURF_HAS_GRAVITY, .proc/turf_gravity_check) + RegisterSignal(COMSIG_TURF_HAS_GRAVITY,PROC_REF(turf_gravity_check)) gravity = forced_value diff --git a/code/datums/components/forensics.dm b/code/datums/components/forensics.dm index 34cfb12af5d..f9ada4a5c31 100644 --- a/code/datums/components/forensics.dm +++ b/code/datums/components/forensics.dm @@ -21,7 +21,7 @@ blood_DNA = new_blood_DNA fibers = new_fibers check_blood() - RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT, .proc/clean_act) + RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT,PROC_REF(clean_act)) /datum/component/forensics/proc/wipe_fingerprints() fingerprints = null diff --git a/code/datums/components/fried.dm b/code/datums/components/fried.dm index e09c70bc0d0..41276e4fb75 100644 --- a/code/datums/components/fried.dm +++ b/code/datums/components/fried.dm @@ -12,8 +12,8 @@ if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examine) - RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT, .proc/restore) //basically, unfry people who are being cleaned (badmemes fried someone) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) + RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT,PROC_REF(restore)) //basically, unfry people who are being cleaned (badmemes fried someone) fry_power = frying_power owner = parent diff --git a/code/datums/components/glow_heal.dm b/code/datums/components/glow_heal.dm index 026891ba83e..6cc9d16fc37 100644 --- a/code/datums/components/glow_heal.dm +++ b/code/datums/components/glow_heal.dm @@ -33,7 +33,7 @@ glow_color = color_glow healing_types = type_healing START_PROCESSING(SSobj, src) - RegisterSignal(living_owner, COMSIG_LIVING_REVIVE, .proc/restart_process) + RegisterSignal(living_owner, COMSIG_LIVING_REVIVE,PROC_REF(restart_process)) /datum/component/glow_heal/proc/restart_process() START_PROCESSING(SSobj, src) diff --git a/code/datums/components/gps.dm b/code/datums/components/gps.dm index 4f4ba21b70d..6db4260c658 100644 --- a/code/datums/components/gps.dm +++ b/code/datums/components/gps.dm @@ -28,11 +28,11 @@ GLOBAL_LIST_EMPTY(GPS_list) var/atom/A = parent A.add_overlay("working") A.name = "[initial(A.name)] ([gpstag])" - RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF, .proc/interact) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF,PROC_REF(interact)) if(!emp_proof) - RegisterSignal(parent, COMSIG_ATOM_EMP_ACT, .proc/on_emp_act) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/on_examine) - RegisterSignal(parent, COMSIG_CLICK_ALT, .proc/on_AltClick) + RegisterSignal(parent, COMSIG_ATOM_EMP_ACT,PROC_REF(on_emp_act)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine)) + RegisterSignal(parent, COMSIG_CLICK_ALT,PROC_REF(on_AltClick)) ///Called on COMSIG_ITEM_ATTACK_SELF /datum/component/gps/item/proc/interact(datum/source, mob/user) @@ -49,7 +49,7 @@ GLOBAL_LIST_EMPTY(GPS_list) var/atom/A = parent A.cut_overlay("working") A.add_overlay("emp") - addtimer(CALLBACK(src, .proc/reboot), 300, TIMER_UNIQUE|TIMER_OVERRIDE) //if a new EMP happens, remove the old timer so it doesn't reactivate early + addtimer(CALLBACK(src,PROC_REF(reboot)), 300, TIMER_UNIQUE|TIMER_OVERRIDE) //if a new EMP happens, remove the old timer so it doesn't reactivate early SStgui.close_uis(src) //Close the UI control if it is open. ///Restarts the GPS after getting turned off by an EMP. diff --git a/code/datums/components/identification.dm b/code/datums/components/identification.dm index 4e7a622a31b..07c83675aa3 100644 --- a/code/datums/components/identification.dm +++ b/code/datums/components/identification.dm @@ -24,11 +24,11 @@ identification_method_flags = id_method_flags /datum/component/identification/RegisterWithParent() - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/on_examine) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine)) if(identification_effect_flags & ID_COMPONENT_EFFECT_NO_ACTIONS) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) if(identification_method_flags & ID_COMPONENT_IDENTIFY_WITH_DECONSTRUCTOR) - RegisterSignal(parent, COMSIG_ITEM_DECONSTRUCTOR_DEEPSCAN, .proc/on_deconstructor_deepscan) + RegisterSignal(parent, COMSIG_ITEM_DECONSTRUCTOR_DEEPSCAN,PROC_REF(on_deconstructor_deepscan)) /datum/component/identification/UnregisterFromParent() var/list/unregister = list(COMSIG_PARENT_EXAMINE) diff --git a/code/datums/components/igniter.dm b/code/datums/components/igniter.dm index 2f311db1668..d1a93475c72 100644 --- a/code/datums/components/igniter.dm +++ b/code/datums/components/igniter.dm @@ -11,11 +11,11 @@ /datum/component/igniter/RegisterWithParent() . = ..() if(ismachinery(parent) || isstructure(parent) || isgun(parent)) // turrets, etc - RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT, .proc/projectile_hit) + RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT,PROC_REF(projectile_hit)) else if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/item_afterattack) + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK,PROC_REF(item_afterattack)) else if(ishostile(parent)) - RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET, .proc/hostile_attackingtarget) + RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET,PROC_REF(hostile_attackingtarget)) /datum/component/igniter/UnregisterFromParent() . = ..() diff --git a/code/datums/components/infective.dm b/code/datums/components/infective.dm index 8d3c6ab81f0..d8d0a4421c0 100644 --- a/code/datums/components/infective.dm +++ b/code/datums/components/infective.dm @@ -15,19 +15,19 @@ if(!ismovable(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT, .proc/clean) - RegisterSignal(parent, COMSIG_MOVABLE_BUCKLE, .proc/try_infect_buckle) - RegisterSignal(parent, COMSIG_MOVABLE_BUMP, .proc/try_infect_collide) - RegisterSignal(parent, COMSIG_MOVABLE_CROSSED, .proc/try_infect_crossed) - RegisterSignal(parent, COMSIG_MOVABLE_IMPACT_ZONE, .proc/try_infect_impact_zone) + RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT,PROC_REF(clean)) + RegisterSignal(parent, COMSIG_MOVABLE_BUCKLE,PROC_REF(try_infect_buckle)) + RegisterSignal(parent, COMSIG_MOVABLE_BUMP,PROC_REF(try_infect_collide)) + RegisterSignal(parent, COMSIG_MOVABLE_CROSSED,PROC_REF(try_infect_crossed)) + RegisterSignal(parent, COMSIG_MOVABLE_IMPACT_ZONE,PROC_REF(try_infect_impact_zone)) if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_ATTACK_ZONE, .proc/try_infect_attack_zone) - RegisterSignal(parent, COMSIG_ITEM_ATTACK, .proc/try_infect_attack) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/try_infect_equipped) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_ZONE,PROC_REF(try_infect_attack_zone)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK,PROC_REF(try_infect_attack)) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(try_infect_equipped)) if(istype(parent, /obj/item/reagent_containers/food/snacks)) - RegisterSignal(parent, COMSIG_FOOD_EATEN, .proc/try_infect_eat) + RegisterSignal(parent, COMSIG_FOOD_EATEN,PROC_REF(try_infect_eat)) else if(istype(parent, /obj/effect/decal/cleanable/blood/gibs)) - RegisterSignal(parent, COMSIG_GIBS_STREAK, .proc/try_infect_streak) + RegisterSignal(parent, COMSIG_GIBS_STREAK,PROC_REF(try_infect_streak)) /datum/component/infective/proc/try_infect_eat(datum/source, mob/living/eater, mob/living/feeder) for(var/V in diseases) diff --git a/code/datums/components/jousting.dm b/code/datums/components/jousting.dm index 72aabb72c0b..1d5e0b6f93d 100644 --- a/code/datums/components/jousting.dm +++ b/code/datums/components/jousting.dm @@ -18,12 +18,12 @@ /datum/component/jousting/Initialize() if(!isitem(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) - RegisterSignal(parent, COMSIG_ITEM_ATTACK, .proc/on_attack) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK,PROC_REF(on_attack)) /datum/component/jousting/proc/on_equip(datum/source, mob/user, slot) - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/mob_move, TRUE) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(mob_move), TRUE) current_holder = user /datum/component/jousting/proc/on_drop(datum/source, mob/user) @@ -68,7 +68,7 @@ current_tile_charge++ if(current_timerid) deltimer(current_timerid) - current_timerid = addtimer(CALLBACK(src, .proc/reset_charge), movement_reset_tolerance, TIMER_STOPPABLE) + current_timerid = addtimer(CALLBACK(src,PROC_REF(reset_charge)), movement_reset_tolerance, TIMER_STOPPABLE) /datum/component/jousting/proc/reset_charge() current_tile_charge = 0 diff --git a/code/datums/components/killerqueen.dm b/code/datums/components/killerqueen.dm index 6f6aa087dac..504fb9979fa 100644 --- a/code/datums/components/killerqueen.dm +++ b/code/datums/components/killerqueen.dm @@ -51,10 +51,10 @@ /datum/component/killerqueen/RegisterWithParent() . = ..() - RegisterSignal(parent, list(COMSIG_ATOM_ATTACK_HAND, COMSIG_ATOM_ATTACK_PAW, COMSIG_ATOM_ATTACK_ANIMAL), .proc/touch_detonate) - RegisterSignal(parent, COMSIG_MOVABLE_BUMP, .proc/bump_detonate) - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/attackby_detonate) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/on_examine) + RegisterSignal(parent, list(COMSIG_ATOM_ATTACK_HAND, COMSIG_ATOM_ATTACK_PAW, COMSIG_ATOM_ATTACK_ANIMAL),PROC_REF(touch_detonate)) + RegisterSignal(parent, COMSIG_MOVABLE_BUMP,PROC_REF(bump_detonate)) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(attackby_detonate)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine)) /datum/component/killerqueen/UnregisterFromParent() . = ..() diff --git a/code/datums/components/knockback.dm b/code/datums/components/knockback.dm index aa1a48d9cf6..dea277db35f 100644 --- a/code/datums/components/knockback.dm +++ b/code/datums/components/knockback.dm @@ -17,11 +17,11 @@ /datum/component/knockback/RegisterWithParent() . = ..() if(ismachinery(parent) || isstructure(parent) || isgun(parent)) // turrets, etc - RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT, .proc/projectile_hit) + RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT,PROC_REF(projectile_hit)) else if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/item_afterattack) + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK,PROC_REF(item_afterattack)) else if(ishostile(parent)) - RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET, .proc/hostile_attackingtarget) + RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET,PROC_REF(hostile_attackingtarget)) /datum/component/knockback/UnregisterFromParent() . = ..() diff --git a/code/datums/components/knockoff.dm b/code/datums/components/knockoff.dm index e769ec4e0b6..61df51a8ff5 100644 --- a/code/datums/components/knockoff.dm +++ b/code/datums/components/knockoff.dm @@ -38,7 +38,7 @@ if(slots_knockoffable && !(slot in slots_knockoffable)) UnregisterSignal(H, COMSIG_HUMAN_DISARM_HIT) return - RegisterSignal(H, COMSIG_HUMAN_DISARM_HIT, .proc/Knockoff, TRUE) + RegisterSignal(H, COMSIG_HUMAN_DISARM_HIT,PROC_REF(Knockoff), TRUE) /datum/component/knockoff/proc/OnDropped(datum/source, mob/living/M) UnregisterSignal(M, COMSIG_HUMAN_DISARM_HIT) diff --git a/code/datums/components/label.dm b/code/datums/components/label.dm index d72aa6a38e1..a18bf5ec177 100644 --- a/code/datums/components/label.dm +++ b/code/datums/components/label.dm @@ -22,8 +22,8 @@ apply_label() /datum/component/label/RegisterWithParent() - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/OnAttackby) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/Examine) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(OnAttackby)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(Examine)) /datum/component/label/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_PARENT_ATTACKBY, COMSIG_PARENT_EXAMINE)) diff --git a/code/datums/components/largeobjecttransparency.dm b/code/datums/components/largeobjecttransparency.dm index fed9eb26b94..063c86762c5 100644 --- a/code/datums/components/largeobjecttransparency.dm +++ b/code/datums/components/largeobjecttransparency.dm @@ -57,7 +57,7 @@ return ..() /datum/component/largetransparency/RegisterWithParent() - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/OnMove) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(OnMove)) RegisterWithTurfs() /datum/component/largetransparency/UnregisterFromParent() @@ -75,9 +75,9 @@ for(var/regist_tu in registered_turfs) if(!regist_tu) continue - RegisterSignal(regist_tu, list(COMSIG_ATOM_ENTERED, COMSIG_ATOM_CREATED), .proc/objectEnter) - RegisterSignal(regist_tu, COMSIG_ATOM_EXITED, .proc/objectLeave) - RegisterSignal(regist_tu, COMSIG_TURF_CHANGE, .proc/OnTurfChange) + RegisterSignal(regist_tu, list(COMSIG_ATOM_ENTERED, COMSIG_ATOM_CREATED),PROC_REF(objectEnter)) + RegisterSignal(regist_tu, COMSIG_ATOM_EXITED,PROC_REF(objectLeave)) + RegisterSignal(regist_tu, COMSIG_TURF_CHANGE,PROC_REF(OnTurfChange)) for(var/thing in regist_tu) var/atom/check_atom = thing if(!(check_atom.flags_1 & CRITICAL_ATOM_1)) @@ -101,7 +101,7 @@ /datum/component/largetransparency/proc/OnTurfChange() SIGNAL_HANDLER - addtimer(CALLBACK(src, .proc/OnMove), 1, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain + addtimer(CALLBACK(src,PROC_REF(OnMove)), 1, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain /datum/component/largetransparency/proc/objectEnter(datum/source, atom/enterer) SIGNAL_HANDLER diff --git a/code/datums/components/lifesteal.dm b/code/datums/components/lifesteal.dm index 9d62d328665..4e9a969e87b 100644 --- a/code/datums/components/lifesteal.dm +++ b/code/datums/components/lifesteal.dm @@ -12,11 +12,11 @@ /datum/component/lifesteal/RegisterWithParent() . = ..() if(isgun(parent)) - RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT, .proc/projectile_hit) + RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT,PROC_REF(projectile_hit)) else if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/item_afterattack) + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK,PROC_REF(item_afterattack)) else if(ishostile(parent)) - RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET, .proc/hostile_attackingtarget) + RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET,PROC_REF(hostile_attackingtarget)) /datum/component/lifesteal/UnregisterFromParent() . = ..() diff --git a/code/datums/components/lockon_aiming.dm b/code/datums/components/lockon_aiming.dm index 4acdece7e5c..c189c4f7e86 100644 --- a/code/datums/components/lockon_aiming.dm +++ b/code/datums/components/lockon_aiming.dm @@ -26,7 +26,7 @@ if(target_callback) can_target_callback = target_callback else - can_target_callback = CALLBACK(src, .proc/can_target) + can_target_callback = CALLBACK(src,PROC_REF(can_target)) if(range) lock_cursor_range = range if(typecache) @@ -47,7 +47,7 @@ if(icon_state) lock_icon_state = icon_state generate_lock_visuals() - RegisterSignal(parent, COMSIG_MOB_CLIENT_MOUSEMOVE, .proc/onMouseMove) + RegisterSignal(parent, COMSIG_MOB_CLIENT_MOUSEMOVE,PROC_REF(onMouseMove)) START_PROCESSING(SSfastprocess, src) /datum/component/lockon_aiming/Destroy() diff --git a/code/datums/components/lore_dump.dm b/code/datums/components/lore_dump.dm index 8a73194446f..7f1094b5bca 100644 --- a/code/datums/components/lore_dump.dm +++ b/code/datums/components/lore_dump.dm @@ -10,11 +10,11 @@ /datum/component/lore/Initialize() if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_PARENT_EXAMINE_MORE), .proc/lore_dump) + RegisterSignal(parent, list(COMSIG_PARENT_EXAMINE_MORE),PROC_REF(lore_dump)) /datum/component/lore/proc/lore_dump(datum/source, mob/reader) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/dump_lore, reader) + INVOKE_ASYNC(src,PROC_REF(dump_lore), reader) /datum/component/lore/proc/dump_lore(mob/reader) if(!reader) diff --git a/code/datums/components/magnetic_catch.dm b/code/datums/components/magnetic_catch.dm index 20cd8e1d78f..67b8ec68509 100644 --- a/code/datums/components/magnetic_catch.dm +++ b/code/datums/components/magnetic_catch.dm @@ -1,31 +1,31 @@ /datum/component/magnetic_catch/Initialize() if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examine) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) if(ismovable(parent)) - RegisterSignal(parent, COMSIG_MOVABLE_CROSSED, .proc/crossed_react) - RegisterSignal(parent, COMSIG_MOVABLE_UNCROSSED, .proc/uncrossed_react) + RegisterSignal(parent, COMSIG_MOVABLE_CROSSED,PROC_REF(crossed_react)) + RegisterSignal(parent, COMSIG_MOVABLE_UNCROSSED,PROC_REF(uncrossed_react)) for(var/i in get_turf(parent)) if(i == parent) continue - RegisterSignal(i, COMSIG_MOVABLE_PRE_THROW, .proc/throw_react) + RegisterSignal(i, COMSIG_MOVABLE_PRE_THROW,PROC_REF(throw_react)) else - RegisterSignal(parent, COMSIG_ATOM_ENTERED, .proc/entered_react) - RegisterSignal(parent, COMSIG_ATOM_EXITED, .proc/exited_react) + RegisterSignal(parent, COMSIG_ATOM_ENTERED,PROC_REF(entered_react)) + RegisterSignal(parent, COMSIG_ATOM_EXITED,PROC_REF(exited_react)) for(var/i in parent) - RegisterSignal(i, COMSIG_MOVABLE_PRE_THROW, .proc/throw_react) + RegisterSignal(i, COMSIG_MOVABLE_PRE_THROW,PROC_REF(throw_react)) /datum/component/magnetic_catch/proc/examine(datum/source, mob/user, list/examine_list) examine_list += "It has been installed with inertia dampening to prevent coffee spills." /datum/component/magnetic_catch/proc/crossed_react(datum/source, atom/movable/thing) - RegisterSignal(thing, COMSIG_MOVABLE_PRE_THROW, .proc/throw_react, TRUE) + RegisterSignal(thing, COMSIG_MOVABLE_PRE_THROW,PROC_REF(throw_react), TRUE) /datum/component/magnetic_catch/proc/uncrossed_react(datum/source, atom/movable/thing) UnregisterSignal(thing, COMSIG_MOVABLE_PRE_THROW) /datum/component/magnetic_catch/proc/entered_react(datum/source, atom/movable/thing, atom/oldloc) - RegisterSignal(thing, COMSIG_MOVABLE_PRE_THROW, .proc/throw_react, TRUE) + RegisterSignal(thing, COMSIG_MOVABLE_PRE_THROW,PROC_REF(throw_react), TRUE) /datum/component/magnetic_catch/proc/exited_react(datum/source, atom/movable/thing, atom/newloc) UnregisterSignal(thing, COMSIG_MOVABLE_PRE_THROW) diff --git a/code/datums/components/material_container.dm b/code/datums/components/material_container.dm index 87baa28d9db..cbda14c6d1a 100644 --- a/code/datums/components/material_container.dm +++ b/code/datums/components/material_container.dm @@ -38,8 +38,8 @@ precondition = _precondition after_insert = _after_insert - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/OnAttackBy) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/OnExamine) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(OnAttackBy)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(OnExamine)) for(var/mat in mat_list) //Make the assoc list ref | amount var/datum/material/M = SSmaterials.GetMaterialRef(mat) diff --git a/code/datums/components/melee_special.dm b/code/datums/components/melee_special.dm index 4fed1976f83..02eab94172e 100644 --- a/code/datums/components/melee_special.dm +++ b/code/datums/components/melee_special.dm @@ -101,7 +101,7 @@ /datum/component/weapon_special/RegisterWithParent() . = ..() - RegisterSignal(parent, COMSIG_ITEM_ATTACKCHAIN, .proc/item_attackchain) + RegisterSignal(parent, COMSIG_ITEM_ATTACKCHAIN,PROC_REF(item_attackchain)) /datum/component/weapon_special/UnregisterFromParent() . = ..() @@ -177,7 +177,7 @@ if(!target) target = client_mouse_angle2turf(user.client, get_turf(user)) if(debug) - INVOKE_ASYNC(src, .proc/debug_highlight, target) + INVOKE_ASYNC(src,PROC_REF(debug_highlight), target) if(target && max_distance < 2 && user.can_reach(target, reach = max_distance)) return list(get_turf(target)) // we're close enough to just hit the target // okay we clicked something out of range, so we need to find the turf at the edge of our range in the direction we clicked @@ -193,7 +193,7 @@ if(!LAZYLEN(line_of_turfs)) // ^ hopefully in the right order return // cool if(debug) - INVOKE_ASYNC(src, .proc/debug_highlight_line, user, line_of_turfs, target) + INVOKE_ASYNC(src,PROC_REF(debug_highlight_line), user, line_of_turfs, target) return line_of_turfs /datum/component/weapon_special/proc/sim_punch_laser(mob/user) @@ -278,7 +278,7 @@ var/list/out = list("[just_one]" = atomstuff[just_one]) if(debug) for(var/atom/movable/AM in out) - INVOKE_ASYNC(src, .proc/debug_highlight_atom, AM, "#0000FF") + INVOKE_ASYNC(src,PROC_REF(debug_highlight_atom), AM, "#0000FF") return out if(WS_FURTHEST_POPULATED_TILE) atomstuff = sort_list(atomstuff, cmp=/proc/cmp_text_dsc) @@ -286,18 +286,18 @@ var/list/out = list("[just_one]" = atomstuff[just_one]) if(debug) for(var/atom/movable/AM in out) - INVOKE_ASYNC(src, .proc/debug_highlight_atom, AM, "#0000FF") + INVOKE_ASYNC(src,PROC_REF(debug_highlight_atom), AM, "#0000FF") return out if(WS_RANDOM_POPULATED_TILE) var/just_one = pick(atomstuff) var/list/out = list("[just_one]" = atomstuff[just_one]) if(debug) for(var/atom/movable/AM in out) - INVOKE_ASYNC(src, .proc/debug_highlight_atom, AM, "#0000FF") + INVOKE_ASYNC(src,PROC_REF(debug_highlight_atom), AM, "#0000FF") return out if(debug) for(var/atom/movable/AM in atomstuff) - INVOKE_ASYNC(src, .proc/debug_highlight_atom, AM, "#0000FF") + INVOKE_ASYNC(src,PROC_REF(debug_highlight_atom), AM, "#0000FF") return atomstuff /datum/component/weapon_special/proc/get_atoms_on_turf(turf/turfhere, mob/user) @@ -398,7 +398,7 @@ WEAPON_MASTER var/d_zone = user.zone_selected if(debug) - INVOKE_ASYNC(src, .proc/debug_highlight_atom, hit_this, "#ff0000") + INVOKE_ASYNC(src,PROC_REF(debug_highlight_atom), hit_this, "#ff0000") for(var/dmge in damage_list) if(QDELETED(hit_this)) return diff --git a/code/datums/components/mirv.dm b/code/datums/components/mirv.dm index 2a1663776c5..3ccaa37b102 100644 --- a/code/datums/components/mirv.dm +++ b/code/datums/components/mirv.dm @@ -16,7 +16,7 @@ /datum/component/mirv/RegisterWithParent() . = ..() if(ismachinery(parent) || isstructure(parent) || isgun(parent)) // turrets, etc - RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT, .proc/projectile_hit) + RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT,PROC_REF(projectile_hit)) /datum/component/mirv/UnregisterFromParent() . = ..() diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index c5111290a2d..1f74f2898e0 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -27,13 +27,13 @@ if(owner.stat != DEAD) START_PROCESSING(SSobj, src) - RegisterSignal(parent, COMSIG_ADD_MOOD_EVENT, .proc/add_event) - RegisterSignal(parent, COMSIG_CLEAR_MOOD_EVENT, .proc/clear_event) - RegisterSignal(parent, COMSIG_MODIFY_SANITY, .proc/modify_sanity) - RegisterSignal(parent, COMSIG_LIVING_REVIVE, .proc/on_revive) - RegisterSignal(parent, COMSIG_MOB_HUD_CREATED, .proc/modify_hud) - RegisterSignal(parent, COMSIG_MOB_DEATH, .proc/stop_processing) - RegisterSignal(parent, COMSIG_PARENT_QDELETING, .proc/clean_up) + RegisterSignal(parent, COMSIG_ADD_MOOD_EVENT,PROC_REF(add_event)) + RegisterSignal(parent, COMSIG_CLEAR_MOOD_EVENT,PROC_REF(clear_event)) + RegisterSignal(parent, COMSIG_MODIFY_SANITY,PROC_REF(modify_sanity)) + RegisterSignal(parent, COMSIG_LIVING_REVIVE,PROC_REF(on_revive)) + RegisterSignal(parent, COMSIG_MOB_HUD_CREATED,PROC_REF(modify_hud)) + RegisterSignal(parent, COMSIG_MOB_DEATH,PROC_REF(stop_processing)) + RegisterSignal(parent, COMSIG_PARENT_QDELETING,PROC_REF(clean_up)) if(owner.hud_used) modify_hud() @@ -281,7 +281,7 @@ clear_event(null, category) else if(the_event.timeout) - addtimer(CALLBACK(src, .proc/clear_event, null, category), the_event.timeout, TIMER_UNIQUE|TIMER_OVERRIDE) + addtimer(CALLBACK(src,PROC_REF(clear_event), null, category), the_event.timeout, TIMER_UNIQUE|TIMER_OVERRIDE) return 0 //Don't have to update the event. the_event = new type(src, param)//This causes a runtime for some reason, was this me? No - there's an event floating around missing a definition. @@ -289,7 +289,7 @@ update_mood() if(the_event.timeout) - addtimer(CALLBACK(src, .proc/clear_event, null, category), the_event.timeout, TIMER_UNIQUE|TIMER_OVERRIDE) + addtimer(CALLBACK(src,PROC_REF(clear_event), null, category), the_event.timeout, TIMER_UNIQUE|TIMER_OVERRIDE) /datum/component/mood/proc/clear_event(datum/source, category) var/datum/mood_event/event = mood_events[category] @@ -314,8 +314,8 @@ var/datum/hud/hud = owner.hud_used screen_obj = new hud.infodisplay += screen_obj - RegisterSignal(hud, COMSIG_PARENT_QDELETING, .proc/unmodify_hud) - RegisterSignal(screen_obj, COMSIG_CLICK, .proc/hud_click) + RegisterSignal(hud, COMSIG_PARENT_QDELETING,PROC_REF(unmodify_hud)) + RegisterSignal(screen_obj, COMSIG_CLICK,PROC_REF(hud_click)) /datum/component/mood/proc/unmodify_hud(datum/source) if(!screen_obj || !parent) diff --git a/code/datums/components/nanites.dm b/code/datums/components/nanites.dm index 4931aa40d7b..c3f8557f4a5 100644 --- a/code/datums/components/nanites.dm +++ b/code/datums/components/nanites.dm @@ -40,31 +40,31 @@ cloud_sync() /datum/component/nanites/RegisterWithParent() - RegisterSignal(parent, COMSIG_HAS_NANITES, .proc/confirm_nanites) - RegisterSignal(parent, COMSIG_NANITE_IS_STEALTHY, .proc/check_stealth) - RegisterSignal(parent, COMSIG_NANITE_DELETE, .proc/delete_nanites) - RegisterSignal(parent, COMSIG_NANITE_UI_DATA, .proc/nanite_ui_data) - RegisterSignal(parent, COMSIG_NANITE_GET_PROGRAMS, .proc/get_programs) - RegisterSignal(parent, COMSIG_NANITE_SET_VOLUME, .proc/set_volume) - RegisterSignal(parent, COMSIG_NANITE_ADJUST_VOLUME, .proc/adjust_nanites) - RegisterSignal(parent, COMSIG_NANITE_SET_MAX_VOLUME, .proc/set_max_volume) - RegisterSignal(parent, COMSIG_NANITE_SET_CLOUD, .proc/set_cloud) - RegisterSignal(parent, COMSIG_NANITE_SET_CLOUD_SYNC, .proc/set_cloud_sync) - RegisterSignal(parent, COMSIG_NANITE_SET_SAFETY, .proc/set_safety) - RegisterSignal(parent, COMSIG_NANITE_SET_REGEN, .proc/set_regen) - RegisterSignal(parent, COMSIG_NANITE_ADD_PROGRAM, .proc/add_program) - RegisterSignal(parent, COMSIG_NANITE_SCAN, .proc/nanite_scan) - RegisterSignal(parent, COMSIG_NANITE_SYNC, .proc/sync) + RegisterSignal(parent, COMSIG_HAS_NANITES,PROC_REF(confirm_nanites)) + RegisterSignal(parent, COMSIG_NANITE_IS_STEALTHY,PROC_REF(check_stealth)) + RegisterSignal(parent, COMSIG_NANITE_DELETE,PROC_REF(delete_nanites)) + RegisterSignal(parent, COMSIG_NANITE_UI_DATA,PROC_REF(nanite_ui_data)) + RegisterSignal(parent, COMSIG_NANITE_GET_PROGRAMS,PROC_REF(get_programs)) + RegisterSignal(parent, COMSIG_NANITE_SET_VOLUME,PROC_REF(set_volume)) + RegisterSignal(parent, COMSIG_NANITE_ADJUST_VOLUME,PROC_REF(adjust_nanites)) + RegisterSignal(parent, COMSIG_NANITE_SET_MAX_VOLUME,PROC_REF(set_max_volume)) + RegisterSignal(parent, COMSIG_NANITE_SET_CLOUD,PROC_REF(set_cloud)) + RegisterSignal(parent, COMSIG_NANITE_SET_CLOUD_SYNC,PROC_REF(set_cloud_sync)) + RegisterSignal(parent, COMSIG_NANITE_SET_SAFETY,PROC_REF(set_safety)) + RegisterSignal(parent, COMSIG_NANITE_SET_REGEN,PROC_REF(set_regen)) + RegisterSignal(parent, COMSIG_NANITE_ADD_PROGRAM,PROC_REF(add_program)) + RegisterSignal(parent, COMSIG_NANITE_SCAN,PROC_REF(nanite_scan)) + RegisterSignal(parent, COMSIG_NANITE_SYNC,PROC_REF(sync)) if(isliving(parent)) - RegisterSignal(parent, COMSIG_ATOM_EMP_ACT, .proc/on_emp) - RegisterSignal(parent, COMSIG_MOB_DEATH, .proc/on_death) - RegisterSignal(parent, COMSIG_MOB_ALLOWED, .proc/check_access) - RegisterSignal(parent, COMSIG_LIVING_ELECTROCUTE_ACT, .proc/on_shock) - RegisterSignal(parent, COMSIG_LIVING_MINOR_SHOCK, .proc/on_minor_shock) - RegisterSignal(parent, COMSIG_SPECIES_GAIN, .proc/check_viable_biotype) - RegisterSignal(parent, COMSIG_NANITE_SIGNAL, .proc/receive_signal) - RegisterSignal(parent, COMSIG_NANITE_COMM_SIGNAL, .proc/receive_comm_signal) + RegisterSignal(parent, COMSIG_ATOM_EMP_ACT,PROC_REF(on_emp)) + RegisterSignal(parent, COMSIG_MOB_DEATH,PROC_REF(on_death)) + RegisterSignal(parent, COMSIG_MOB_ALLOWED,PROC_REF(check_access)) + RegisterSignal(parent, COMSIG_LIVING_ELECTROCUTE_ACT,PROC_REF(on_shock)) + RegisterSignal(parent, COMSIG_LIVING_MINOR_SHOCK,PROC_REF(on_minor_shock)) + RegisterSignal(parent, COMSIG_SPECIES_GAIN,PROC_REF(check_viable_biotype)) + RegisterSignal(parent, COMSIG_NANITE_SIGNAL,PROC_REF(receive_signal)) + RegisterSignal(parent, COMSIG_NANITE_COMM_SIGNAL,PROC_REF(receive_comm_signal)) /datum/component/nanites/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_HAS_NANITES, diff --git a/code/datums/components/omen.dm b/code/datums/components/omen.dm index f2d28be547e..cee0785239b 100644 --- a/code/datums/components/omen.dm +++ b/code/datums/components/omen.dm @@ -27,9 +27,9 @@ return ..() /datum/component/omen/RegisterWithParent() - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/check_accident) - RegisterSignal(parent, COMSIG_LIVING_STATUS_KNOCKDOWN, .proc/check_slip) - RegisterSignal(parent, COMSIG_ADD_MOOD_EVENT, .proc/check_bless) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(check_accident)) + RegisterSignal(parent, COMSIG_LIVING_STATUS_KNOCKDOWN,PROC_REF(check_slip)) + RegisterSignal(parent, COMSIG_ADD_MOOD_EVENT,PROC_REF(check_bless)) /datum/component/omen/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_LIVING_STATUS_KNOCKDOWN, COMSIG_MOVABLE_MOVED, COMSIG_ADD_MOOD_EVENT)) diff --git a/code/datums/components/orbiter.dm b/code/datums/components/orbiter.dm index 8ba586f5f9c..35f812bb4b3 100644 --- a/code/datums/components/orbiter.dm +++ b/code/datums/components/orbiter.dm @@ -23,7 +23,7 @@ . = ..() var/atom/target = parent while(ismovable(target)) - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/move_react) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(move_react)) target = target.loc /datum/component/orbiter/UnregisterFromParent() @@ -61,7 +61,7 @@ orbiter.orbiting.end_orbit(orbiter) orbiters[orbiter] = TRUE orbiter.orbiting = src - RegisterSignal(orbiter, COMSIG_MOVABLE_MOVED, .proc/orbiter_move_react) + RegisterSignal(orbiter, COMSIG_MOVABLE_MOVED,PROC_REF(orbiter_move_react)) SEND_SIGNAL(parent, COMSIG_ATOM_ORBIT_BEGIN, orbiter) @@ -135,7 +135,7 @@ if(orbited?.loc && orbited.loc != newturf) // We want to know when anything holding us moves too var/atom/target = orbited.loc while(ismovable(target)) - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/move_react, TRUE) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(move_react), TRUE) target = target.loc var/atom/curloc = master.loc diff --git a/code/datums/components/overlay_lighting.dm b/code/datums/components/overlay_lighting.dm index 9ab436f5ee5..f6ce4506db6 100644 --- a/code/datums/components/overlay_lighting.dm +++ b/code/datums/components/overlay_lighting.dm @@ -105,14 +105,14 @@ /datum/component/overlay_lighting/RegisterWithParent() . = ..() if(directional) - RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE, .proc/on_parent_dir_change) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/on_parent_moved) - RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_RANGE, .proc/set_range) - RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_POWER, .proc/set_power) - RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_COLOR, .proc/set_color) - RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_ON, .proc/on_toggle) - RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_FLAGS, .proc/on_light_flags_change) - RegisterSignal(parent, COMSIG_ATOM_USED_IN_CRAFT, .proc/on_parent_crafted) + RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE,PROC_REF(on_parent_dir_change)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(on_parent_moved)) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_RANGE,PROC_REF(set_range)) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_POWER,PROC_REF(set_power)) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_COLOR,PROC_REF(set_color)) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_ON,PROC_REF(on_toggle)) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_LIGHT_FLAGS,PROC_REF(on_light_flags_change)) + RegisterSignal(parent, COMSIG_ATOM_USED_IN_CRAFT,PROC_REF(on_parent_crafted)) var/atom/movable/movable_parent = parent if(movable_parent.light_flags & LIGHT_ATTACHED) overlay_lighting_flags |= LIGHTING_ATTACHED @@ -214,13 +214,13 @@ var/atom/movable/old_parent_attached_to = . UnregisterSignal(old_parent_attached_to, list(COMSIG_PARENT_QDELETING, COMSIG_MOVABLE_MOVED)) if(old_parent_attached_to == current_holder) - RegisterSignal(old_parent_attached_to, COMSIG_PARENT_QDELETING, .proc/on_holder_qdel) - RegisterSignal(old_parent_attached_to, COMSIG_MOVABLE_MOVED, .proc/on_holder_moved) + RegisterSignal(old_parent_attached_to, COMSIG_PARENT_QDELETING,PROC_REF(on_holder_qdel)) + RegisterSignal(old_parent_attached_to, COMSIG_MOVABLE_MOVED,PROC_REF(on_holder_moved)) if(parent_attached_to) if(parent_attached_to == current_holder) UnregisterSignal(current_holder, list(COMSIG_PARENT_QDELETING, COMSIG_MOVABLE_MOVED)) - RegisterSignal(parent_attached_to, COMSIG_PARENT_QDELETING, .proc/on_parent_attached_to_qdel) - RegisterSignal(parent_attached_to, COMSIG_MOVABLE_MOVED, .proc/on_parent_attached_to_moved) + RegisterSignal(parent_attached_to, COMSIG_PARENT_QDELETING,PROC_REF(on_parent_attached_to_qdel)) + RegisterSignal(parent_attached_to, COMSIG_MOVABLE_MOVED,PROC_REF(on_parent_attached_to_moved)) check_holder() @@ -240,10 +240,10 @@ clean_old_turfs() return if(new_holder != parent && new_holder != parent_attached_to) - RegisterSignal(new_holder, COMSIG_PARENT_QDELETING, .proc/on_holder_qdel) - RegisterSignal(new_holder, COMSIG_MOVABLE_MOVED, .proc/on_holder_moved) + RegisterSignal(new_holder, COMSIG_PARENT_QDELETING,PROC_REF(on_holder_qdel)) + RegisterSignal(new_holder, COMSIG_MOVABLE_MOVED,PROC_REF(on_holder_moved)) if(directional) - RegisterSignal(new_holder, COMSIG_ATOM_DIR_CHANGE, .proc/on_holder_dir_change) + RegisterSignal(new_holder, COMSIG_ATOM_DIR_CHANGE,PROC_REF(on_holder_dir_change)) if(overlay_lighting_flags & LIGHTING_ON) make_luminosity_update() add_dynamic_lumi() @@ -463,7 +463,7 @@ return UnregisterSignal(parent, COMSIG_ATOM_USED_IN_CRAFT) - RegisterSignal(new_craft, COMSIG_ATOM_USED_IN_CRAFT, .proc/on_parent_crafted) + RegisterSignal(new_craft, COMSIG_ATOM_USED_IN_CRAFT,PROC_REF(on_parent_crafted)) set_parent_attached_to(new_craft) diff --git a/code/datums/components/paintable.dm b/code/datums/components/paintable.dm index eb284f00463..1a8da30379d 100644 --- a/code/datums/components/paintable.dm +++ b/code/datums/components/paintable.dm @@ -2,7 +2,7 @@ var/current_paint /datum/component/spraycan_paintable/Initialize() - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/Repaint) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(Repaint)) /datum/component/spraycan_paintable/Destroy() RemoveCurrentCoat() diff --git a/code/datums/components/pellet_cloud.dm b/code/datums/components/pellet_cloud.dm index c1673b95ce9..367d6d71e2b 100644 --- a/code/datums/components/pellet_cloud.dm +++ b/code/datums/components/pellet_cloud.dm @@ -78,14 +78,14 @@ return ..() /datum/component/pellet_cloud/RegisterWithParent() - RegisterSignal(parent, COMSIG_PARENT_PREQDELETED, .proc/nullspace_parent) + RegisterSignal(parent, COMSIG_PARENT_PREQDELETED,PROC_REF(nullspace_parent)) if(isammocasing(parent)) - RegisterSignal(parent, COMSIG_PELLET_CLOUD_INIT, .proc/create_casing_pellets) + RegisterSignal(parent, COMSIG_PELLET_CLOUD_INIT,PROC_REF(create_casing_pellets)) else if(isgrenade(parent)) - RegisterSignal(parent, COMSIG_GRENADE_ARMED, .proc/grenade_armed) - RegisterSignal(parent, COMSIG_GRENADE_PRIME, .proc/create_blast_pellets) + RegisterSignal(parent, COMSIG_GRENADE_ARMED,PROC_REF(grenade_armed)) + RegisterSignal(parent, COMSIG_GRENADE_PRIME,PROC_REF(create_blast_pellets)) else if(islandmine(parent)) - RegisterSignal(parent, COMSIG_ITEM_MINE_TRIGGERED, .proc/create_blast_pellets) + RegisterSignal(parent, COMSIG_ITEM_MINE_TRIGGERED,PROC_REF(create_blast_pellets)) /datum/component/pellet_cloud/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_PARENT_PREQDELETED, COMSIG_PELLET_CLOUD_INIT, COMSIG_GRENADE_PRIME, COMSIG_GRENADE_ARMED, COMSIG_MOVABLE_MOVED, COMSIG_MOVABLE_UNCROSSED, COMSIG_ITEM_MINE_TRIGGERED, COMSIG_ITEM_DROPPED)) @@ -112,8 +112,8 @@ else //Smart spread angle_out = round((i / num_pellets - 0.5) * max(distro, 1)) - RegisterSignal(shell.BB, COMSIG_PROJECTILE_SELF_ON_HIT, .proc/pellet_hit) - RegisterSignal(shell.BB, list(COMSIG_PROJECTILE_RANGE_OUT, COMSIG_PARENT_QDELETING), .proc/pellet_range) + RegisterSignal(shell.BB, COMSIG_PROJECTILE_SELF_ON_HIT,PROC_REF(pellet_hit)) + RegisterSignal(shell.BB, list(COMSIG_PROJECTILE_RANGE_OUT, COMSIG_PARENT_QDELETING),PROC_REF(pellet_range)) LAZYADD(pellets, shell.BB) if(!shell.throw_proj(target, targloc, shooter, params, angle_out)) return @@ -189,7 +189,7 @@ if(martyr.stat != DEAD && martyr.client) LAZYADD(purple_hearts, martyr) - RegisterSignal(martyr, COMSIG_PARENT_QDELETING, .proc/on_target_qdel, override=TRUE) + RegisterSignal(martyr, COMSIG_PARENT_QDELETING,PROC_REF(on_target_qdel), override=TRUE) for(var/i in 1 to round(pellets_absorbed * 0.5)) pew(martyr) @@ -221,7 +221,7 @@ if (targets_hit.Find(target)) targets_hit[target]++ if(targets_hit[target] == 1) - RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/on_target_qdel, override=TRUE) + RegisterSignal(target, COMSIG_PARENT_QDELETING,PROC_REF(on_target_qdel), override=TRUE) UnregisterSignal(P, list(COMSIG_PARENT_QDELETING, COMSIG_PROJECTILE_RANGE_OUT, COMSIG_PROJECTILE_SELF_ON_HIT)) if(terminated == num_pellets) finalize() @@ -246,8 +246,8 @@ LAZYADD(P.permutated, parent) // don't hit the target we hit already with the flak P.suppressed = SUPPRESSED_VERY // set the projectiles to make no message so we can do our own aggregate message P.preparePixelProjectile(target, parent) - RegisterSignal(P, COMSIG_PROJECTILE_SELF_ON_HIT, .proc/pellet_hit) - RegisterSignal(P, list(COMSIG_PROJECTILE_RANGE_OUT, COMSIG_PARENT_QDELETING), .proc/pellet_range) + RegisterSignal(P, COMSIG_PROJECTILE_SELF_ON_HIT,PROC_REF(pellet_hit)) + RegisterSignal(P, list(COMSIG_PROJECTILE_RANGE_OUT, COMSIG_PARENT_QDELETING),PROC_REF(pellet_range)) LAZYADD(pellets, P) P.fire() @@ -286,9 +286,9 @@ if(ismob(nade.loc)) shooter = nade.loc LAZYINITLIST(bodies) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/grenade_dropped) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/grenade_moved) - RegisterSignal(parent, COMSIG_MOVABLE_UNCROSSED, .proc/grenade_uncrossed) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(grenade_dropped)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(grenade_moved)) + RegisterSignal(parent, COMSIG_MOVABLE_UNCROSSED,PROC_REF(grenade_uncrossed)) /// Someone dropped the grenade, so set them to the shooter in case they're on top of it when it goes off /datum/component/pellet_cloud/proc/grenade_dropped(obj/item/nade, mob/living/slick_willy) @@ -299,7 +299,7 @@ /datum/component/pellet_cloud/proc/grenade_moved() LAZYCLEARLIST(bodies) for(var/mob/living/L in get_turf(parent)) - RegisterSignal(L, COMSIG_PARENT_QDELETING, .proc/on_target_qdel, override=TRUE) + RegisterSignal(L, COMSIG_PARENT_QDELETING,PROC_REF(on_target_qdel), override=TRUE) LAZYADD(bodies, L) /// Someone who was originally "under" the grenade has moved off the tile and is now eligible for being a martyr and "covering" it diff --git a/code/datums/components/plumbing/_plumbing.dm b/code/datums/components/plumbing/_plumbing.dm index 91b86adeb51..7c312657186 100644 --- a/code/datums/components/plumbing/_plumbing.dm +++ b/code/datums/components/plumbing/_plumbing.dm @@ -25,8 +25,8 @@ reagents = AM.reagents turn_connects = _turn_connects - RegisterSignal(parent, list(COMSIG_MOVABLE_MOVED,COMSIG_PARENT_PREQDELETED), .proc/disable) - RegisterSignal(parent, list(COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH), .proc/toggle_active) + RegisterSignal(parent, list(COMSIG_MOVABLE_MOVED,COMSIG_PARENT_PREQDELETED),PROC_REF(disable)) + RegisterSignal(parent, list(COMSIG_OBJ_DEFAULT_UNFASTEN_WRENCH),PROC_REF(toggle_active)) if(start) enable() diff --git a/code/datums/components/rad_insulation.dm b/code/datums/components/rad_insulation.dm index 73d8c29440c..c216350511f 100644 --- a/code/datums/components/rad_insulation.dm +++ b/code/datums/components/rad_insulation.dm @@ -6,11 +6,11 @@ return COMPONENT_INCOMPATIBLE if(protects) // Does this protect things in its contents from being affected? - RegisterSignal(parent, COMSIG_ATOM_RAD_PROBE, .proc/rad_probe_react) + RegisterSignal(parent, COMSIG_ATOM_RAD_PROBE,PROC_REF(rad_probe_react)) if(contamination_proof) // Can this object be contaminated? - RegisterSignal(parent, COMSIG_ATOM_RAD_CONTAMINATING, .proc/rad_contaminating) + RegisterSignal(parent, COMSIG_ATOM_RAD_CONTAMINATING,PROC_REF(rad_contaminating)) if(_amount != 1) // If it's 1 it wont have any impact on radiation passing through anyway - RegisterSignal(parent, COMSIG_ATOM_RAD_WAVE_PASSING, .proc/rad_pass) + RegisterSignal(parent, COMSIG_ATOM_RAD_WAVE_PASSING,PROC_REF(rad_pass)) amount = _amount diff --git a/code/datums/components/radiation_area.dm b/code/datums/components/radiation_area.dm index 7689bb7ff34..57b831ba8fd 100644 --- a/code/datums/components/radiation_area.dm +++ b/code/datums/components/radiation_area.dm @@ -8,8 +8,8 @@ return COMPONENT_INCOMPATIBLE if(!isnull(rads_per_second)) rads = rads_per_second - RegisterSignal(parent, list(COMSIG_AREA_ENTERED), .proc/AddMob) - RegisterSignal(parent, list(COMSIG_AREA_EXITED), .proc/RemoveMob) + RegisterSignal(parent, list(COMSIG_AREA_ENTERED),PROC_REF(AddMob)) + RegisterSignal(parent, list(COMSIG_AREA_EXITED),PROC_REF(RemoveMob)) /datum/component/radiation_area/proc/AddMob(area/the_area, mob/living/carbon/glowy) if(!istype(glowy)) diff --git a/code/datums/components/radiation_turf.dm b/code/datums/components/radiation_turf.dm index 5523feed9b7..d93e87abe20 100644 --- a/code/datums/components/radiation_turf.dm +++ b/code/datums/components/radiation_turf.dm @@ -23,12 +23,12 @@ radioactive_things[reff] = ref_n_type[reff] var/turf/our_turf = parent our_coordinates = "[our_turf.x]:[our_turf.y]:[our_turf.z]" - RegisterSignal(parent, list(COMSIG_TURF_CHECK_RADIATION), .proc/im_still_here) - RegisterSignal(parent, list(COMSIG_TURF_IRRADIATE), .proc/update_rads) - RegisterSignal(parent, list(COMSIG_ATOM_ENTERED), .proc/AddMob) - RegisterSignal(parent, list(COMSIG_ATOM_EXITED), .proc/RemoveMob) - RegisterSignal(parent, list(COMSIG_TURF_CHANGE), .proc/on_turf_change) - RegisterSignal(SSdcs, list(COMSIG_GLOB_RADIATION_SHOW), .proc/ping_rads) + RegisterSignal(parent, list(COMSIG_TURF_CHECK_RADIATION),PROC_REF(im_still_here)) + RegisterSignal(parent, list(COMSIG_TURF_IRRADIATE),PROC_REF(update_rads)) + RegisterSignal(parent, list(COMSIG_ATOM_ENTERED),PROC_REF(AddMob)) + RegisterSignal(parent, list(COMSIG_ATOM_EXITED),PROC_REF(RemoveMob)) + RegisterSignal(parent, list(COMSIG_TURF_CHANGE),PROC_REF(on_turf_change)) + RegisterSignal(SSdcs, list(COMSIG_GLOB_RADIATION_SHOW),PROC_REF(ping_rads)) // from this point onwards, we cannot rely on our parent to be our turf. // So, we'll have to sit here and treat whatever's at our coordinates *as* our parent @@ -110,7 +110,7 @@ return thingtoggle = TRUE blinker.maptext = thingtoggle ? "[rads]" : initial(blinker.maptext) - addtimer(CALLBACK(src, .proc/unping_rads), 2 SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain //*doublepain + addtimer(CALLBACK(src,PROC_REF(unping_rads)), 2 SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE) //*pain //*doublepain /datum/component/radiation_turf/proc/unping_rads() var/turf/blinker = coords2turf(our_coordinates) diff --git a/code/datums/components/radioactive.dm b/code/datums/components/radioactive.dm index 8afa4353b2f..ec8a007f746 100644 --- a/code/datums/components/radioactive.dm +++ b/code/datums/components/radioactive.dm @@ -19,10 +19,10 @@ can_contaminate = _can_contaminate if(istype(parent, /atom)) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/rad_examine) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(rad_examine)) if(istype(parent, /obj/item)) - RegisterSignal(parent, COMSIG_ITEM_ATTACK, .proc/rad_attack) - RegisterSignal(parent, COMSIG_ITEM_ATTACK_OBJ, .proc/rad_attack) + RegisterSignal(parent, COMSIG_ITEM_ATTACK,PROC_REF(rad_attack)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_OBJ,PROC_REF(rad_attack)) else CRASH("Something that wasn't an atom was given /datum/component/radioactive") @@ -33,7 +33,7 @@ //This relies on parent not being a turf or something. IF YOU CHANGE THAT, CHANGE THIS var/atom/movable/master = parent master.add_filter("rad_glow", 2, list("type" = "outline", "color" = "#39ff1430", "size" = 2)) - addtimer(CALLBACK(src, .proc/glow_loop, master), rand(1,19))//Things should look uneven + addtimer(CALLBACK(src,PROC_REF(glow_loop), master), rand(1,19))//Things should look uneven START_PROCESSING(SSradiation, src) diff --git a/code/datums/components/remote_materials.dm b/code/datums/components/remote_materials.dm index f4b133a0e22..32268ee5bfd 100644 --- a/code/datums/components/remote_materials.dm +++ b/code/datums/components/remote_materials.dm @@ -25,11 +25,11 @@ handles linking back and forth. src.allow_standalone = allow_standalone after_insert = _after_insert - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/OnAttackBy) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(OnAttackBy)) var/turf/T = get_turf(parent) if (force_connect || (mapload && is_station_level(T.z))) - addtimer(CALLBACK(src, .proc/LateInitialize)) + addtimer(CALLBACK(src,PROC_REF(LateInitialize))) else if (allow_standalone) _MakeLocal() diff --git a/code/datums/components/reskin.dm b/code/datums/components/reskin.dm index d9a7e43f9c4..9e964124e5b 100644 --- a/code/datums/components/reskin.dm +++ b/code/datums/components/reskin.dm @@ -30,10 +30,10 @@ GLOBAL_LIST_EMPTY(reskin_list) if(LAZYLEN(skin_override)) skins = skin_override.Copy() initialize_skins() - RegisterSignal(parent, list(COMSIG_CLICK_CTRL_SHIFT), .proc/open_skin_picker) - RegisterSignal(parent, list(COMSIG_ITEM_RESKINNABLE), .proc/is_reskinnable) - RegisterSignal(parent, list(COMSIG_ITEM_UPDATE_RESKIN), .proc/update_skin) - RegisterSignal(parent, list(COMSIG_ITEM_GET_CURRENT_RESKIN), .proc/get_current_skin) + RegisterSignal(parent, list(COMSIG_CLICK_CTRL_SHIFT),PROC_REF(open_skin_picker)) + RegisterSignal(parent, list(COMSIG_ITEM_RESKINNABLE),PROC_REF(is_reskinnable)) + RegisterSignal(parent, list(COMSIG_ITEM_UPDATE_RESKIN),PROC_REF(update_skin)) + RegisterSignal(parent, list(COMSIG_ITEM_GET_CURRENT_RESKIN),PROC_REF(get_current_skin)) /datum/component/reskinnable/UnregisterFromParent() skins = null @@ -62,7 +62,7 @@ GLOBAL_LIST_EMPTY(reskin_list) init_skins_if_they_havent_yet() if(!can_reskin(src, user)) return - INVOKE_ASYNC(src, .proc/actually_open_skin_picker, user) + INVOKE_ASYNC(src,PROC_REF(actually_open_skin_picker), user) /datum/component/reskinnable/proc/actually_open_skin_picker(mob/user) var/obj/item/master = parent @@ -78,7 +78,7 @@ GLOBAL_LIST_EMPTY(reskin_list) if(!the_icon) the_icon = my_original_skin.icon skinnies["[skine.skin]"] = skine.get_preview_image(master) - var/choice = show_radial_menu(user, master, skinnies, custom_check = CALLBACK(src, .proc/can_reskin, src, user), radius = 40, require_near = TRUE, ultradense = (LAZYLEN(skins) > 7)) + var/choice = show_radial_menu(user, master, skinnies, custom_check = CALLBACK(src,PROC_REF(can_reskin), src, user), radius = 40, require_near = TRUE, ultradense = (LAZYLEN(skins) > 7)) if(!choice) return FALSE if(QDELETED(master)) diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm index 9cbbbeeb4ae..6ea969590d3 100644 --- a/code/datums/components/riding.dm +++ b/code/datums/components/riding.dm @@ -26,9 +26,9 @@ /datum/component/riding/Initialize() if(!ismovable(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_MOVABLE_BUCKLE, .proc/vehicle_mob_buckle) - RegisterSignal(parent, COMSIG_MOVABLE_UNBUCKLE, .proc/vehicle_mob_unbuckle) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/vehicle_moved) + RegisterSignal(parent, COMSIG_MOVABLE_BUCKLE,PROC_REF(vehicle_mob_buckle)) + RegisterSignal(parent, COMSIG_MOVABLE_UNBUCKLE,PROC_REF(vehicle_mob_unbuckle)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(vehicle_moved)) /datum/component/riding/proc/vehicle_mob_unbuckle(datum/source, mob/living/M, force = FALSE) var/atom/movable/AM = parent @@ -229,7 +229,7 @@ /datum/component/riding/human/Initialize() . = ..() directional_vehicle_layers = list(TEXT_NORTH = MOB_LOWER_LAYER, TEXT_SOUTH = MOB_UPPER_LAYER, TEXT_EAST = MOB_UPPER_LAYER, TEXT_WEST = MOB_UPPER_LAYER) - RegisterSignal(parent, COMSIG_HUMAN_MELEE_UNARMED_ATTACK, .proc/on_host_unarmed_melee) + RegisterSignal(parent, COMSIG_HUMAN_MELEE_UNARMED_ATTACK,PROC_REF(on_host_unarmed_melee)) /datum/component/riding/human/vehicle_mob_unbuckle(datum/source, mob/living/M, force = FALSE) var/mob/living/carbon/human/H = parent diff --git a/code/datums/components/rotation.dm b/code/datums/components/rotation.dm index 9d207b01397..0cfc606af03 100644 --- a/code/datums/components/rotation.dm +++ b/code/datums/components/rotation.dm @@ -43,10 +43,10 @@ /datum/component/simple_rotation/proc/add_signals() if(rotation_flags & ROTATION_ALTCLICK) - RegisterSignal(parent, COMSIG_CLICK_ALT, .proc/HandRot) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/ExamineMessage) + RegisterSignal(parent, COMSIG_CLICK_ALT,PROC_REF(HandRot)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(ExamineMessage)) if(rotation_flags & ROTATION_WRENCH) - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/WrenchRot) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(WrenchRot)) /datum/component/simple_rotation/proc/add_verbs() if(rotation_flags & ROTATION_VERBS) diff --git a/code/datums/components/second_wind.dm b/code/datums/components/second_wind.dm index 2396ba1751a..a0f6760307f 100644 --- a/code/datums/components/second_wind.dm +++ b/code/datums/components/second_wind.dm @@ -10,10 +10,10 @@ /datum/component/second_wind/Initialize() if(!ismob(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_MOB_CLIENT_LOGIN), .proc/update_ckey) - RegisterSignal(parent, list(COMSIG_SECOND_WIND), .proc/open_revive_menu) - RegisterSignal(parent, list(COMSIG_SECOND_WIND_GRANT), .proc/grant_second_wind) - RegisterSignal(parent, list(COMSIG_LIVING_BIOLOGICAL_LIFE), .proc/check_living) + RegisterSignal(parent, list(COMSIG_MOB_CLIENT_LOGIN),PROC_REF(update_ckey)) + RegisterSignal(parent, list(COMSIG_SECOND_WIND),PROC_REF(open_revive_menu)) + RegisterSignal(parent, list(COMSIG_SECOND_WIND_GRANT),PROC_REF(grant_second_wind)) + RegisterSignal(parent, list(COMSIG_LIVING_BIOLOGICAL_LIFE),PROC_REF(check_living)) /datum/component/second_wind/proc/update_ckey(mob/my_mob, client/logged_in) if(!isclient(logged_in)) diff --git a/code/datums/components/shielded.dm b/code/datums/components/shielded.dm index e9dab0f8231..70add169d2c 100644 --- a/code/datums/components/shielded.dm +++ b/code/datums/components/shielded.dm @@ -40,11 +40,11 @@ /datum/component/shielded/RegisterWithParent() . = ..() if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) else //it's a mob var/mob/living/L = parent - RegisterSignal(L, COMSIG_LIVING_RUN_BLOCK, .proc/living_block) + RegisterSignal(L, COMSIG_LIVING_RUN_BLOCK,PROC_REF(living_block)) holder = L var/to_add = charges >= 1 ? shield_state : broken_state if(to_add) @@ -111,9 +111,9 @@ if(!(accepted_slots & slotdefine2slotbit(slot))) return holder = equipper - RegisterSignal(parent, COMSIG_ITEM_RUN_BLOCK, .proc/on_run_block) - RegisterSignal(parent, COMSIG_ITEM_CHECK_BLOCK, .proc/on_check_block) - RegisterSignal(equipper, COMSIG_LIVING_GET_BLOCKING_ITEMS, .proc/include_shield) + RegisterSignal(parent, COMSIG_ITEM_RUN_BLOCK,PROC_REF(on_run_block)) + RegisterSignal(parent, COMSIG_ITEM_CHECK_BLOCK,PROC_REF(on_check_block)) + RegisterSignal(equipper, COMSIG_LIVING_GET_BLOCKING_ITEMS,PROC_REF(include_shield)) var/to_add = charges >= 1 ? shield_state : broken_state if(to_add) var/layer = (holder.layer > MOB_LAYER ? holder.layer : MOB_LAYER) + 0.01 diff --git a/code/datums/components/signal_redirect.dm b/code/datums/components/signal_redirect.dm index 4de7e99a024..85cfc909e85 100644 --- a/code/datums/components/signal_redirect.dm +++ b/code/datums/components/signal_redirect.dm @@ -10,7 +10,7 @@ warning("signals are [list2params(signals)], callback is [_callback]]") return COMPONENT_INCOMPATIBLE if(flags & REDIRECT_TRANSFER_WITH_TURF && isturf(parent)) - RegisterSignal(parent, COMSIG_TURF_CHANGE, .proc/turf_change) + RegisterSignal(parent, COMSIG_TURF_CHANGE,PROC_REF(turf_change)) RegisterSignal(parent, signals, _callback) /datum/component/redirect/proc/turf_change(path, new_baseturfs, flags, list/transfers) diff --git a/code/datums/components/slippery.dm b/code/datums/components/slippery.dm index b2789bbcf1d..d82bc82dcb1 100644 --- a/code/datums/components/slippery.dm +++ b/code/datums/components/slippery.dm @@ -17,12 +17,12 @@ var/list/slot_whitelist = list(INV_SLOTBIT_OCLOTHING, INV_SLOTBIT_ICLOTHING, INV_SLOTBIT_GLOVES, INV_SLOTBIT_FEET, INV_SLOTBIT_HEAD, INV_SLOTBIT_MASK, INV_SLOTBIT_BELT, INV_SLOTBIT_NECK) ///what we give to connect_loc by default, makes slippable mobs moving over us slip var/static/list/default_connections = list( - COMSIG_ATOM_ENTERED = .proc/Slip, + COMSIG_ATOM_ENTERED =PROC_REF(Slip), ) ///what we give to connect_loc if we're an item and get equipped by a mob. makes slippable mobs moving over our holder slip var/static/list/holder_connections = list( - COMSIG_ATOM_ENTERED = .proc/Slip_on_wearer, + COMSIG_ATOM_ENTERED =PROC_REF(Slip_on_wearer), ) /// The connect_loc_behalf component for the holder_connections list. @@ -40,10 +40,10 @@ add_connect_loc_behalf_to_parent() if(ismovable(parent)) if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) else - RegisterSignal(parent, COMSIG_ATOM_ENTERED, .proc/Slip) + RegisterSignal(parent, COMSIG_ATOM_ENTERED,PROC_REF(Slip)) /datum/component/slippery/proc/add_connect_loc_behalf_to_parent() if(ismovable(parent)) @@ -95,7 +95,7 @@ holder = equipper qdel(GetComponent(/datum/component/connect_loc_behalf)) AddComponent(/datum/component/connect_loc_behalf, holder, holder_connections) - RegisterSignal(holder, COMSIG_PARENT_QDELETING, .proc/holder_deleted) + RegisterSignal(holder, COMSIG_PARENT_QDELETING,PROC_REF(holder_deleted)) /* * Detects if the holder mob is deleted. diff --git a/code/datums/components/spawner.dm b/code/datums/components/spawner.dm index 5b9f6ad9351..97a9a1c3ea1 100644 --- a/code/datums/components/spawner.dm +++ b/code/datums/components/spawner.dm @@ -107,19 +107,19 @@ GLOBAL_VAR_INIT(debug_spawner_turfs, FALSE) var/coords = atom2coords(parent) GLOB.nest_spawn_points -= coords // im here! honest - RegisterSignal(parent, COMSIG_PARENT_QDELETING, .proc/nest_destroyed) - RegisterSignal(parent, COMSIG_OBJ_ATTACK_GENERIC, .proc/on_attack_generic) - RegisterSignal(parent, COMSIG_SPAWNER_COVERED, .proc/coverme) - RegisterSignal(parent, COMSIG_SPAWNER_UNCOVERED, .proc/uncoverme) - RegisterSignal(parent, COMSIG_SPAWNER_ABSORB_MOB, .proc/unbirth_mob) - RegisterSignal(parent, COMSIG_SPAWNER_EXISTS, .proc/has_spawner) + RegisterSignal(parent, COMSIG_PARENT_QDELETING,PROC_REF(nest_destroyed)) + RegisterSignal(parent, COMSIG_OBJ_ATTACK_GENERIC,PROC_REF(on_attack_generic)) + RegisterSignal(parent, COMSIG_SPAWNER_COVERED,PROC_REF(coverme)) + RegisterSignal(parent, COMSIG_SPAWNER_UNCOVERED,PROC_REF(uncoverme)) + RegisterSignal(parent, COMSIG_SPAWNER_ABSORB_MOB,PROC_REF(unbirth_mob)) + RegisterSignal(parent, COMSIG_SPAWNER_EXISTS,PROC_REF(has_spawner)) if(istype(parent, /obj/structure/nest)) var/obj/structure/nest/nest = parent if(nest.spawned_by_ckey) am_special = TRUE if(istype(parent, /obj/structure/nest/special)) am_special = TRUE - RegisterSignal(parent, COMSIG_SPAWNER_SPAWN_NOW, .proc/spawn_mob_special) + RegisterSignal(parent, COMSIG_SPAWNER_SPAWN_NOW,PROC_REF(spawn_mob_special)) register_turfs() /datum/component/spawner/proc/register_turfs() @@ -132,8 +132,8 @@ GLOBAL_VAR_INIT(debug_spawner_turfs, FALSE) /datum/component/spawner/proc/connect_to_turf(turf/trip, debug_color) my_turfs |= atom2coords(trip) - RegisterSignal(trip, COMSIG_ATOM_ENTERED, .proc/turf_trip) - RegisterSignal(trip, COMSIG_TURF_CHANGE, .proc/turf_changed) + RegisterSignal(trip, COMSIG_ATOM_ENTERED,PROC_REF(turf_trip)) + RegisterSignal(trip, COMSIG_TURF_CHANGE,PROC_REF(turf_changed)) if(SSspawners.debug_spawner_turfs && debug_color) trip.add_atom_colour(debug_color, ADMIN_COLOUR_PRIORITY) diff --git a/code/datums/components/spooky.dm b/code/datums/components/spooky.dm index dfb6932ef74..084adb3ad46 100644 --- a/code/datums/components/spooky.dm +++ b/code/datums/components/spooky.dm @@ -2,7 +2,7 @@ var/too_spooky = TRUE //will it spawn a new instrument? /datum/component/spooky/Initialize() - RegisterSignal(parent, COMSIG_ITEM_ATTACK, .proc/spectral_attack) + RegisterSignal(parent, COMSIG_ITEM_ATTACK,PROC_REF(spectral_attack)) /datum/component/spooky/proc/spectral_attack(datum/source, mob/living/carbon/C, mob/user) if(ishuman(user)) //this weapon wasn't meant for mortals. diff --git a/code/datums/components/squeak.dm b/code/datums/components/squeak.dm index 300f04562bf..900ef8edcaf 100644 --- a/code/datums/components/squeak.dm +++ b/code/datums/components/squeak.dm @@ -22,19 +22,19 @@ /datum/component/squeak/Initialize(custom_sounds, volume_override, chance_override, step_delay_override, use_delay_override) if(!isatom(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_ATOM_ENTERED, COMSIG_ATOM_BLOB_ACT, COMSIG_ATOM_HULK_ATTACK, COMSIG_PARENT_ATTACKBY), .proc/play_squeak) + RegisterSignal(parent, list(COMSIG_ATOM_ENTERED, COMSIG_ATOM_BLOB_ACT, COMSIG_ATOM_HULK_ATTACK, COMSIG_PARENT_ATTACKBY),PROC_REF(play_squeak)) if(ismovable(parent)) - RegisterSignal(parent, list(COMSIG_MOVABLE_BUMP, COMSIG_MOVABLE_IMPACT), .proc/play_squeak) - RegisterSignal(parent, list(COMSIG_MOVABLE_CROSSED, COMSIG_ITEM_WEARERCROSSED), .proc/play_squeak_crossed) - RegisterSignal(parent, COMSIG_CROSS_SQUEAKED, .proc/delay_squeak) - RegisterSignal(parent, COMSIG_MOVABLE_DISPOSING, .proc/disposing_react) + RegisterSignal(parent, list(COMSIG_MOVABLE_BUMP, COMSIG_MOVABLE_IMPACT),PROC_REF(play_squeak)) + RegisterSignal(parent, list(COMSIG_MOVABLE_CROSSED, COMSIG_ITEM_WEARERCROSSED),PROC_REF(play_squeak_crossed)) + RegisterSignal(parent, COMSIG_CROSS_SQUEAKED,PROC_REF(delay_squeak)) + RegisterSignal(parent, COMSIG_MOVABLE_DISPOSING,PROC_REF(disposing_react)) if(isitem(parent)) - RegisterSignal(parent, list(COMSIG_ITEM_ATTACK, COMSIG_ITEM_ATTACK_OBJ, COMSIG_ITEM_HIT_REACT), .proc/play_squeak) - RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF, .proc/use_squeak) - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(parent, list(COMSIG_ITEM_ATTACK, COMSIG_ITEM_ATTACK_OBJ, COMSIG_ITEM_HIT_REACT),PROC_REF(play_squeak)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF,PROC_REF(use_squeak)) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) if(istype(parent, /obj/item/clothing/shoes)) - RegisterSignal(parent, COMSIG_SHOES_STEP_ACTION, .proc/step_squeak) + RegisterSignal(parent, COMSIG_SHOES_STEP_ACTION,PROC_REF(step_squeak)) override_squeak_sounds = custom_sounds if(chance_override) @@ -92,7 +92,7 @@ last_squeak = world.time /datum/component/squeak/proc/on_equip(datum/source, mob/equipper, slot) - RegisterSignal(equipper, COMSIG_MOVABLE_DISPOSING, .proc/disposing_react, TRUE) + RegisterSignal(equipper, COMSIG_MOVABLE_DISPOSING,PROC_REF(disposing_react), TRUE) /datum/component/squeak/proc/on_drop(datum/source, mob/user) UnregisterSignal(user, COMSIG_MOVABLE_DISPOSING) @@ -100,7 +100,7 @@ // Disposal pipes related shit /datum/component/squeak/proc/disposing_react(datum/source, obj/structure/disposalholder/holder, obj/machinery/disposal/source) //We don't need to worry about unregistering this signal as it will happen for us automaticaly when the holder is qdeleted - RegisterSignal(holder, COMSIG_ATOM_DIR_CHANGE, .proc/holder_dir_change) + RegisterSignal(holder, COMSIG_ATOM_DIR_CHANGE,PROC_REF(holder_dir_change)) /datum/component/squeak/proc/holder_dir_change(datum/source, old_dir, new_dir) //If the dir changes it means we're going through a bend in the pipes, let's pretend we bumped the wall diff --git a/code/datums/components/stationloving.dm b/code/datums/components/stationloving.dm index 143c1d70d34..5ac80dd8eb9 100644 --- a/code/datums/components/stationloving.dm +++ b/code/datums/components/stationloving.dm @@ -20,11 +20,11 @@ /datum/component/stationloving/Initialize(inform_admins = FALSE, allow_death = FALSE, put_somewhere_random = TRUE, allowed_z = VALIDBALL_Z_LEVELS) if(!ismovable(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_MOVABLE_Z_CHANGED), .proc/check_in_bounds) - RegisterSignal(parent, list(COMSIG_MOVABLE_SECLUDED_LOCATION), .proc/relocate) - RegisterSignal(parent, list(COMSIG_PARENT_PREQDELETED), .proc/check_deletion) - RegisterSignal(parent, list(COMSIG_ITEM_IMBUE_SOUL), .proc/check_soul_imbue) - RegisterSignal(parent, list(COMSIG_ITEM_PROCESS), .proc/record_position) + RegisterSignal(parent, list(COMSIG_MOVABLE_Z_CHANGED),PROC_REF(check_in_bounds)) + RegisterSignal(parent, list(COMSIG_MOVABLE_SECLUDED_LOCATION),PROC_REF(relocate)) + RegisterSignal(parent, list(COMSIG_PARENT_PREQDELETED),PROC_REF(check_deletion)) + RegisterSignal(parent, list(COMSIG_ITEM_IMBUE_SOUL),PROC_REF(check_soul_imbue)) + RegisterSignal(parent, list(COMSIG_ITEM_PROCESS),PROC_REF(record_position)) src.allowed_z = allowed_z src.put_somewhere_random = put_somewhere_random if(!put_somewhere_random) diff --git a/code/datums/components/storage/concrete/_concrete.dm b/code/datums/components/storage/concrete/_concrete.dm index c81035e687c..76af8941c8b 100644 --- a/code/datums/components/storage/concrete/_concrete.dm +++ b/code/datums/components/storage/concrete/_concrete.dm @@ -17,9 +17,9 @@ /datum/component/storage/concrete/Initialize() . = ..() - RegisterSignal(parent, COMSIG_ATOM_CONTENTS_DEL, .proc/on_contents_del) - RegisterSignal(parent, COMSIG_OBJ_DECONSTRUCT, .proc/on_deconstruct) - RegisterSignal(parent, COMSIG_OBJ_BREAK, .proc/on_break) + RegisterSignal(parent, COMSIG_ATOM_CONTENTS_DEL,PROC_REF(on_contents_del)) + RegisterSignal(parent, COMSIG_OBJ_DECONSTRUCT,PROC_REF(on_deconstruct)) + RegisterSignal(parent, COMSIG_OBJ_BREAK,PROC_REF(on_break)) /datum/component/storage/concrete/Destroy() var/atom/real_location = real_location() @@ -88,7 +88,7 @@ if(S == src) return if(!length(slaves)) - RegisterSignal(parent, COMSIG_ATOM_GET_LOCS, .proc/get_locs_react) + RegisterSignal(parent, COMSIG_ATOM_GET_LOCS,PROC_REF(get_locs_react)) slaves += S diff --git a/code/datums/components/storage/concrete/bag_of_holding.dm b/code/datums/components/storage/concrete/bag_of_holding.dm index a503e8882af..ee0d5af43cb 100644 --- a/code/datums/components/storage/concrete/bag_of_holding.dm +++ b/code/datums/components/storage/concrete/bag_of_holding.dm @@ -10,7 +10,7 @@ var/list/obj/item/storage/backpack/holding/matching = typecache_filter_list(W.GetAllContents(), typecacheof(/obj/item/storage/backpack/holding)) matching -= A if(istype(W, /obj/item/storage/backpack/holding) || matching.len) - INVOKE_ASYNC(src, .proc/do_disaster, W, user) + INVOKE_ASYNC(src,PROC_REF(do_disaster), W, user) . = ..() /datum/component/storage/concrete/bluespace/bag_of_holding/proc/do_disaster(obj/item/W, mob/living/user) diff --git a/code/datums/components/storage/concrete/emergency.dm b/code/datums/components/storage/concrete/emergency.dm index faaeada13d8..5a602a09f4e 100644 --- a/code/datums/components/storage/concrete/emergency.dm +++ b/code/datums/components/storage/concrete/emergency.dm @@ -5,7 +5,7 @@ /datum/component/storage/concrete/emergency/Initialize() . = ..() - RegisterSignal(parent, COMSIG_ATOM_EMAG_ACT, .proc/unlock_me) + RegisterSignal(parent, COMSIG_ATOM_EMAG_ACT,PROC_REF(unlock_me)) /datum/component/storage/concrete/emergency/on_attack_hand(datum/source, mob/user) var/atom/A = parent diff --git a/code/datums/components/storage/storage.dm b/code/datums/components/storage/storage.dm index 19efdaf126b..abf90304d63 100644 --- a/code/datums/components/storage/storage.dm +++ b/code/datums/components/storage/storage.dm @@ -94,39 +94,39 @@ if(master) change_master(master) - RegisterSignal(parent, COMSIG_CONTAINS_STORAGE, .proc/on_check) - RegisterSignal(parent, COMSIG_IS_STORAGE_LOCKED, .proc/check_locked) - RegisterSignal(parent, COMSIG_TRY_STORAGE_SHOW, .proc/signal_show_attempt) - RegisterSignal(parent, COMSIG_TRY_STORAGE_INSERT, .proc/signal_insertion_attempt) - RegisterSignal(parent, COMSIG_TRY_STORAGE_CAN_INSERT, .proc/signal_can_insert) - RegisterSignal(parent, COMSIG_TRY_STORAGE_TAKE_TYPE, .proc/signal_take_type) - RegisterSignal(parent, COMSIG_TRY_STORAGE_FILL_TYPE, .proc/signal_fill_type) - RegisterSignal(parent, COMSIG_TRY_STORAGE_SET_LOCKSTATE, .proc/set_locked) - RegisterSignal(parent, COMSIG_TRY_STORAGE_TAKE, .proc/signal_take_obj) - RegisterSignal(parent, COMSIG_TRY_STORAGE_QUICK_EMPTY, .proc/signal_quick_empty) - RegisterSignal(parent, COMSIG_TRY_STORAGE_HIDE_FROM, .proc/signal_hide_attempt) - RegisterSignal(parent, COMSIG_TRY_STORAGE_HIDE_ALL, .proc/close_all) - RegisterSignal(parent, COMSIG_TRY_STORAGE_RETURN_INVENTORY, .proc/signal_return_inv) - - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/attackby) - - RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND, .proc/on_attack_hand) - RegisterSignal(parent, COMSIG_ATOM_ATTACK_PAW, .proc/on_attack_hand) - RegisterSignal(parent, COMSIG_ATOM_EMP_ACT, .proc/emp_act) - RegisterSignal(parent, COMSIG_ATOM_ATTACK_GHOST, .proc/show_to_ghost) - RegisterSignal(parent, COMSIG_ATOM_ENTERED, .proc/refresh_mob_views) - RegisterSignal(parent, COMSIG_ATOM_EXITED, .proc/_remove_and_refresh) - - RegisterSignal(parent, COMSIG_ITEM_PRE_ATTACK, .proc/preattack_intercept) - RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF, .proc/attack_self) - RegisterSignal(parent, COMSIG_ITEM_PICKUP, .proc/signal_on_pickup) - - RegisterSignal(parent, COMSIG_MOVABLE_POST_THROW, .proc/close_all) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/check_views) - - RegisterSignal(parent, COMSIG_CLICK_ALT, .proc/on_alt_click) - RegisterSignal(parent, COMSIG_MOUSEDROP_ONTO, .proc/mousedrop_onto) - RegisterSignal(parent, COMSIG_MOUSEDROPPED_ONTO, .proc/mousedrop_receive) + RegisterSignal(parent, COMSIG_CONTAINS_STORAGE,PROC_REF(on_check)) + RegisterSignal(parent, COMSIG_IS_STORAGE_LOCKED,PROC_REF(check_locked)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_SHOW,PROC_REF(signal_show_attempt)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_INSERT,PROC_REF(signal_insertion_attempt)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_CAN_INSERT,PROC_REF(signal_can_insert)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_TAKE_TYPE,PROC_REF(signal_take_type)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_FILL_TYPE,PROC_REF(signal_fill_type)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_SET_LOCKSTATE,PROC_REF(set_locked)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_TAKE,PROC_REF(signal_take_obj)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_QUICK_EMPTY,PROC_REF(signal_quick_empty)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_HIDE_FROM,PROC_REF(signal_hide_attempt)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_HIDE_ALL,PROC_REF(close_all)) + RegisterSignal(parent, COMSIG_TRY_STORAGE_RETURN_INVENTORY,PROC_REF(signal_return_inv)) + + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(attackby)) + + RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND,PROC_REF(on_attack_hand)) + RegisterSignal(parent, COMSIG_ATOM_ATTACK_PAW,PROC_REF(on_attack_hand)) + RegisterSignal(parent, COMSIG_ATOM_EMP_ACT,PROC_REF(emp_act)) + RegisterSignal(parent, COMSIG_ATOM_ATTACK_GHOST,PROC_REF(show_to_ghost)) + RegisterSignal(parent, COMSIG_ATOM_ENTERED,PROC_REF(refresh_mob_views)) + RegisterSignal(parent, COMSIG_ATOM_EXITED,PROC_REF(_remove_and_refresh)) + + RegisterSignal(parent, COMSIG_ITEM_PRE_ATTACK,PROC_REF(preattack_intercept)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF,PROC_REF(attack_self)) + RegisterSignal(parent, COMSIG_ITEM_PICKUP,PROC_REF(signal_on_pickup)) + + RegisterSignal(parent, COMSIG_MOVABLE_POST_THROW,PROC_REF(close_all)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(check_views)) + + RegisterSignal(parent, COMSIG_CLICK_ALT,PROC_REF(on_alt_click)) + RegisterSignal(parent, COMSIG_MOUSEDROP_ONTO,PROC_REF(mousedrop_onto)) + RegisterSignal(parent, COMSIG_MOUSEDROPPED_ONTO,PROC_REF(mousedrop_receive)) update_actions() @@ -153,7 +153,7 @@ return var/obj/item/I = parent modeswitch_action = new(I) - RegisterSignal(modeswitch_action, COMSIG_ACTION_TRIGGER, .proc/action_trigger) + RegisterSignal(modeswitch_action, COMSIG_ACTION_TRIGGER,PROC_REF(action_trigger)) if(I.obj_flags & IN_INVENTORY) var/mob/M = I.loc if(!istype(M)) @@ -223,7 +223,7 @@ return var/my_bar = SSprogress_bars.add_bar(I.loc, list(), len, FALSE, FALSE) var/list/rejections = list() - while(do_after(M, 10, TRUE, parent, FALSE, CALLBACK(src, .proc/handle_mass_pickup, things, I.loc, rejections, my_bar))) + while(do_after(M, 10, TRUE, parent, FALSE, CALLBACK(src,PROC_REF(handle_mass_pickup), things, I.loc, rejections, my_bar))) stoplag(1) SSprogress_bars.remove_bar(my_bar) to_chat(M, span_notice("You put everything you could [insert_preposition] [parent].")) @@ -281,7 +281,7 @@ var/turf/T = get_turf(A) var/list/things = contents() var/my_bar = SSprogress_bars.add_bar(T, list(), length(things), FALSE, FALSE) - while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src, .proc/mass_remove_from_storage, T, things, my_bar))) + while (do_after(M, 10, TRUE, T, FALSE, CALLBACK(src,PROC_REF(mass_remove_from_storage), T, things, my_bar))) stoplag(1) SSprogress_bars.remove_bar(my_bar) A.do_squish(0.8, 1.2) diff --git a/code/datums/components/storage/ui.dm b/code/datums/components/storage/ui.dm index 8bd7d9b8b3b..ff27308e9bc 100644 --- a/code/datums/components/storage/ui.dm +++ b/code/datums/components/storage/ui.dm @@ -289,7 +289,7 @@ else if(current_maxscreensize) maxallowedscreensize = current_maxscreensize // we got screen size, register signal - RegisterSignal(M, COMSIG_MOB_CLIENT_LOGOUT, .proc/on_logout, override = TRUE) + RegisterSignal(M, COMSIG_MOB_CLIENT_LOGOUT,PROC_REF(on_logout), override = TRUE) if(M.active_storage != src) if(M.active_storage) M.active_storage.ui_hide(M) diff --git a/code/datums/components/summoning.dm b/code/datums/components/summoning.dm index 054acf62bae..4a49c6139a8 100644 --- a/code/datums/components/summoning.dm +++ b/code/datums/components/summoning.dm @@ -26,11 +26,11 @@ /datum/component/summoning/RegisterWithParent() . = ..() if(ismachinery(parent) || isstructure(parent) || isgun(parent)) // turrets, etc - RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT, .proc/projectile_hit) + RegisterSignal(parent, COMSIG_PROJECTILE_ON_HIT,PROC_REF(projectile_hit)) else if(isitem(parent)) - RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK, .proc/item_afterattack) + RegisterSignal(parent, COMSIG_ITEM_AFTERATTACK,PROC_REF(item_afterattack)) else if(ishostile(parent)) - RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET, .proc/hostile_attackingtarget) + RegisterSignal(parent, COMSIG_HOSTILE_ATTACKINGTARGET,PROC_REF(hostile_attackingtarget)) /datum/component/summoning/UnregisterFromParent() . = ..() @@ -63,7 +63,7 @@ spawned_mobs += L if(faction != null) L.faction = faction - RegisterSignal(L, COMSIG_MOB_DEATH, .proc/on_spawned_death) // so we can remove them from the list, etc (for mobs with corpses) + RegisterSignal(L, COMSIG_MOB_DEATH,PROC_REF(on_spawned_death)) // so we can remove them from the list, etc (for mobs with corpses) playsound(spawn_location,spawn_sound, 50, 1) spawn_location.visible_message(span_danger("[L] [spawn_text].")) diff --git a/code/datums/components/swarming.dm b/code/datums/components/swarming.dm index 5d9f5da833f..098e31e16ea 100644 --- a/code/datums/components/swarming.dm +++ b/code/datums/components/swarming.dm @@ -8,9 +8,9 @@ offset_x = rand(-max_x, max_x) offset_y = rand(-max_y, max_y) - RegisterSignal(parent, COMSIG_MOVABLE_CROSSED, .proc/join_swarm) - RegisterSignal(parent, COMSIG_MOVABLE_UNCROSSED, .proc/leave_swarm) - RegisterSignal(parent, COMSIG_MOB_DEATH, .proc/leave_swarm) + RegisterSignal(parent, COMSIG_MOVABLE_CROSSED,PROC_REF(join_swarm)) + RegisterSignal(parent, COMSIG_MOVABLE_UNCROSSED,PROC_REF(leave_swarm)) + RegisterSignal(parent, COMSIG_MOB_DEATH,PROC_REF(leave_swarm)) /datum/component/swarming/Destroy() if(is_swarming) diff --git a/code/datums/components/tackle.dm b/code/datums/components/tackle.dm index 7230e72814b..21ff429acf5 100644 --- a/code/datums/components/tackle.dm +++ b/code/datums/components/tackle.dm @@ -51,7 +51,7 @@ var/mob/living/carbon/P = parent to_chat(P, span_notice("You are now able to launch tackles! You can do so by activating throw intent, and clicking on your target with an empty hand.")) - addtimer(CALLBACK(src, .proc/resetTackle), max(base_knockdown, 3 SECONDS), TIMER_STOPPABLE) + addtimer(CALLBACK(src,PROC_REF(resetTackle)), max(base_knockdown, 3 SECONDS), TIMER_STOPPABLE) /datum/component/tackler/Destroy() var/mob/living/carbon/P = parent @@ -60,9 +60,9 @@ ..() /datum/component/tackler/RegisterWithParent() - RegisterSignal(parent, COMSIG_MOB_CLICKON, .proc/checkTackle) - RegisterSignal(parent, COMSIG_MOVABLE_IMPACT, .proc/sack) - RegisterSignal(parent, COMSIG_MOVABLE_POST_THROW, .proc/registerTackle) + RegisterSignal(parent, COMSIG_MOB_CLICKON,PROC_REF(checkTackle)) + RegisterSignal(parent, COMSIG_MOVABLE_IMPACT,PROC_REF(sack)) + RegisterSignal(parent, COMSIG_MOVABLE_POST_THROW,PROC_REF(registerTackle)) /datum/component/tackler/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_MOB_CLICKON, COMSIG_MOVABLE_IMPACT, COMSIG_MOVABLE_MOVED, COMSIG_MOVABLE_POST_THROW)) @@ -104,7 +104,7 @@ return user.tackling = TRUE - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/checkObstacle, TRUE) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(checkObstacle), TRUE) playsound(user, 'sound/weapons/thudswoosh.ogg', 40, TRUE, -1) var/leap_word = iscatperson(user) ? "pounce" : "leap" ///If cat, "pounce" instead of "leap". @@ -121,7 +121,7 @@ user.adjustStaminaLoss(stamina_cost) user.throw_at(A, range, speed, user, TRUE) user.toggle_throw_mode() - addtimer(CALLBACK(src, .proc/resetTackle), max(base_knockdown, 3 SECONDS), TIMER_STOPPABLE) + addtimer(CALLBACK(src,PROC_REF(resetTackle)), max(base_knockdown, 3 SECONDS), TIMER_STOPPABLE) return(COMSIG_MOB_CANCEL_CLICKON) /** diff --git a/code/datums/components/thermite.dm b/code/datums/components/thermite.dm index 251272ac2e9..d71280cfd62 100644 --- a/code/datums/components/thermite.dm +++ b/code/datums/components/thermite.dm @@ -34,9 +34,9 @@ overlay = mutable_appearance('icons/effects/effects.dmi', "thermite") master.add_overlay(overlay) - RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT, .proc/clean_react) - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/attackby_react) - RegisterSignal(parent, COMSIG_ATOM_FIRE_ACT, .proc/flame_react) + RegisterSignal(parent, COMSIG_COMPONENT_CLEAN_ACT,PROC_REF(clean_react)) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(attackby_react)) + RegisterSignal(parent, COMSIG_ATOM_FIRE_ACT,PROC_REF(flame_react)) /datum/component/thermite/Destroy() var/turf/master = parent diff --git a/code/datums/components/twohanded.dm b/code/datums/components/twohanded.dm index 8ebafba310b..202dd2f0e7c 100644 --- a/code/datums/components/twohanded.dm +++ b/code/datums/components/twohanded.dm @@ -69,13 +69,13 @@ // register signals withthe parent item /datum/component/two_handed/RegisterWithParent() - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) - RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF, .proc/on_attack_self) - RegisterSignal(parent, COMSIG_ITEM_ATTACK, .proc/on_attack) - RegisterSignal(parent, COMSIG_ATOM_UPDATE_ICON, .proc/on_update_icon) - RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/on_moved) - RegisterSignal(parent, COMSIG_ITEM_SHARPEN_ACT, .proc/on_sharpen) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF,PROC_REF(on_attack_self)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK,PROC_REF(on_attack)) + RegisterSignal(parent, COMSIG_ATOM_UPDATE_ICON,PROC_REF(on_update_icon)) + RegisterSignal(parent, COMSIG_MOVABLE_MOVED,PROC_REF(on_moved)) + RegisterSignal(parent, COMSIG_ITEM_SHARPEN_ACT,PROC_REF(on_sharpen)) // Remove all siginals registered to the parent item /datum/component/two_handed/UnregisterFromParent() @@ -143,7 +143,7 @@ if(SEND_SIGNAL(parent, COMSIG_TWOHANDED_WIELD, user) & COMPONENT_TWOHANDED_BLOCK_WIELD) return // blocked wield from item wielded = TRUE - RegisterSignal(user, COMSIG_MOB_SWAP_HANDS, .proc/on_swap_hands) + RegisterSignal(user, COMSIG_MOB_SWAP_HANDS,PROC_REF(on_swap_hands)) // update item stats and name var/obj/item/parent_item = parent @@ -170,7 +170,7 @@ offhand_item.name = "[parent_item.name] - offhand" offhand_item.desc = "Your second grip on [parent_item]." offhand_item.wielded = TRUE - RegisterSignal(offhand_item, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(offhand_item, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) user.put_in_inactive_hand(offhand_item) /** diff --git a/code/datums/components/uplink.dm b/code/datums/components/uplink.dm index efdb6459056..5d9d2a9dc25 100644 --- a/code/datums/components/uplink.dm +++ b/code/datums/components/uplink.dm @@ -35,19 +35,19 @@ GLOBAL_LIST_EMPTY(uplinks) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/OnAttackBy) - RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF, .proc/interact) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(OnAttackBy)) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_SELF,PROC_REF(interact)) if(istype(parent, /obj/item/implant)) - RegisterSignal(parent, COMSIG_IMPLANT_ACTIVATED, .proc/implant_activation) - RegisterSignal(parent, COMSIG_IMPLANT_IMPLANTING, .proc/implanting) - RegisterSignal(parent, COMSIG_IMPLANT_OTHER, .proc/old_implant) - RegisterSignal(parent, COMSIG_IMPLANT_EXISTING_UPLINK, .proc/new_implant) + RegisterSignal(parent, COMSIG_IMPLANT_ACTIVATED,PROC_REF(implant_activation)) + RegisterSignal(parent, COMSIG_IMPLANT_IMPLANTING,PROC_REF(implanting)) + RegisterSignal(parent, COMSIG_IMPLANT_OTHER,PROC_REF(old_implant)) + RegisterSignal(parent, COMSIG_IMPLANT_EXISTING_UPLINK,PROC_REF(new_implant)) else if(istype(parent, /obj/item/pda)) - RegisterSignal(parent, COMSIG_PDA_CHANGE_RINGTONE, .proc/new_ringtone) + RegisterSignal(parent, COMSIG_PDA_CHANGE_RINGTONE,PROC_REF(new_ringtone)) else if(istype(parent, /obj/item/radio)) - RegisterSignal(parent, COMSIG_RADIO_NEW_FREQUENCY, .proc/new_frequency) + RegisterSignal(parent, COMSIG_RADIO_NEW_FREQUENCY,PROC_REF(new_frequency)) else if(istype(parent, /obj/item/pen)) - RegisterSignal(parent, COMSIG_PEN_ROTATED, .proc/pen_rotation) + RegisterSignal(parent, COMSIG_PEN_ROTATED,PROC_REF(pen_rotation)) GLOB.uplinks += src if(istype(traitor_class)) diff --git a/code/datums/components/virtual_reality.dm b/code/datums/components/virtual_reality.dm index 072c6b3fa11..ef0c4f3de94 100644 --- a/code/datums/components/virtual_reality.dm +++ b/code/datums/components/virtual_reality.dm @@ -50,12 +50,12 @@ if(!quit_action) quit_action = new quit_action.Grant(M) - RegisterSignal(quit_action, COMSIG_ACTION_TRIGGER, .proc/action_trigger) - RegisterSignal(M, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING), .proc/game_over) - RegisterSignal(M, COMSIG_MOB_GHOSTIZE, .proc/be_a_quitter) - RegisterSignal(M, COMSIG_MOB_KEY_CHANGE, .proc/on_player_transfer) - RegisterSignal(current_mind, COMSIG_MIND_TRANSFER, .proc/on_player_transfer) - RegisterSignal(current_mind, COMSIG_PRE_MIND_TRANSFER, .proc/pre_player_transfer) + RegisterSignal(quit_action, COMSIG_ACTION_TRIGGER,PROC_REF(action_trigger)) + RegisterSignal(M, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING),PROC_REF(game_over)) + RegisterSignal(M, COMSIG_MOB_GHOSTIZE,PROC_REF(be_a_quitter)) + RegisterSignal(M, COMSIG_MOB_KEY_CHANGE,PROC_REF(on_player_transfer)) + RegisterSignal(current_mind, COMSIG_MIND_TRANSFER,PROC_REF(on_player_transfer)) + RegisterSignal(current_mind, COMSIG_PRE_MIND_TRANSFER,PROC_REF(pre_player_transfer)) if(mastermind?.current) mastermind.current.audiovisual_redirect = M ADD_TRAIT(M, TRAIT_NO_MIDROUND_ANTAG, VIRTUAL_REALITY_TRAIT) @@ -87,9 +87,9 @@ M.transfer_ckey(vr_M, FALSE) mastermind = M.mind mastermind.current.audiovisual_redirect = parent - RegisterSignal(mastermind, COMSIG_PRE_MIND_TRANSFER, .proc/switch_player) - RegisterSignal(M, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING), .proc/game_over) - RegisterSignal(M, COMSIG_MOB_PRE_PLAYER_CHANGE, .proc/player_hijacked) + RegisterSignal(mastermind, COMSIG_PRE_MIND_TRANSFER,PROC_REF(switch_player)) + RegisterSignal(M, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING),PROC_REF(game_over)) + RegisterSignal(M, COMSIG_MOB_PRE_PLAYER_CHANGE,PROC_REF(player_hijacked)) SStgui.close_user_uis(vr_M, src) session_paused = FALSE return TRUE @@ -114,8 +114,8 @@ quit() return COMPONENT_STOP_MIND_TRANSFER UnregisterSignal(old_mob, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING, COMSIG_MOB_PRE_PLAYER_CHANGE)) - RegisterSignal(new_mob, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING), .proc/game_over) - RegisterSignal(new_mob, COMSIG_MOB_PRE_PLAYER_CHANGE, .proc/player_hijacked) + RegisterSignal(new_mob, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING),PROC_REF(game_over)) + RegisterSignal(new_mob, COMSIG_MOB_PRE_PLAYER_CHANGE,PROC_REF(player_hijacked)) old_mob.audiovisual_redirect = null new_mob.audiovisual_redirect = parent diff --git a/code/datums/components/waddling.dm b/code/datums/components/waddling.dm index 261a9be2cb2..1a2c42feb95 100644 --- a/code/datums/components/waddling.dm +++ b/code/datums/components/waddling.dm @@ -15,7 +15,7 @@ up_waddle_time = amount_to_bob_up if(!isnull(amount_to_bob_side)) side_waddle_time = amount_to_bob_side - RegisterSignal(parent, list(COMSIG_MOVABLE_MOVED), .proc/Waddle) + RegisterSignal(parent, list(COMSIG_MOVABLE_MOVED),PROC_REF(Waddle)) /datum/component/waddling/proc/Waddle() if(waddling) diff --git a/code/datums/components/wearertargeting.dm b/code/datums/components/wearertargeting.dm index 4760757701f..3361116d175 100644 --- a/code/datums/components/wearertargeting.dm +++ b/code/datums/components/wearertargeting.dm @@ -9,8 +9,8 @@ /datum/component/wearertargeting/Initialize() if(!isitem(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) /datum/component/wearertargeting/proc/on_equip(datum/source, mob/equipper, slot) if((slot in valid_slots) && istype(equipper, mobtype)) diff --git a/code/datums/components/wet_floor.dm b/code/datums/components/wet_floor.dm index 6b3660edf0f..35eed97b26a 100644 --- a/code/datums/components/wet_floor.dm +++ b/code/datums/components/wet_floor.dm @@ -29,13 +29,13 @@ permanent = _permanent if(!permanent) START_PROCESSING(SSwet_floors, src) - addtimer(CALLBACK(src, .proc/gc, TRUE), 1) //GC after initialization. + addtimer(CALLBACK(src,PROC_REF(gc), TRUE), 1) //GC after initialization. last_process = world.time /datum/component/wet_floor/RegisterWithParent() . = ..() - RegisterSignal(parent, COMSIG_TURF_IS_WET, .proc/is_wet) - RegisterSignal(parent, COMSIG_TURF_MAKE_DRY, .proc/dry) + RegisterSignal(parent, COMSIG_TURF_IS_WET,PROC_REF(is_wet)) + RegisterSignal(parent, COMSIG_TURF_MAKE_DRY,PROC_REF(dry)) /datum/component/wet_floor/UnregisterFromParent() . = ..() @@ -96,7 +96,7 @@ qdel(parent.GetComponent(/datum/component/slippery)) return - parent.LoadComponent(/datum/component/slippery, intensity, lube_flags, CALLBACK(src, .proc/AfterSlip)) + parent.LoadComponent(/datum/component/slippery, intensity, lube_flags, CALLBACK(src,PROC_REF(AfterSlip))) /datum/component/wet_floor/proc/dry(datum/source, strength = TURF_WET_WATER, immediate = FALSE, duration_decrease = INFINITY) for(var/i in time_left_list) diff --git a/code/datums/dash_weapon.dm b/code/datums/dash_weapon.dm index 406dca2b19a..a0eb1741887 100644 --- a/code/datums/dash_weapon.dm +++ b/code/datums/dash_weapon.dm @@ -39,7 +39,7 @@ spot1.Beam(spot2,beam_effect,time=20) current_charges-- holder.update_action_buttons_icon() - addtimer(CALLBACK(src, .proc/charge), charge_rate) + addtimer(CALLBACK(src,PROC_REF(charge)), charge_rate) /datum/action/innate/dash/proc/charge() current_charges = clamp(current_charges + 1, 0, max_charges) diff --git a/code/datums/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 07c4fc253d9..913be2cd856 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -274,7 +274,7 @@ else if(M.getBruteLoss() + M.getFireLoss() >= 70 && !active_coma) to_chat(M, span_warning("You feel yourself slip into a regenerative coma...")) active_coma = TRUE - addtimer(CALLBACK(src, .proc/coma, M), 60) + addtimer(CALLBACK(src,PROC_REF(coma), M), 60) /datum/symptom/heal/coma/proc/coma(mob/living/M) if(deathgasp) @@ -282,7 +282,7 @@ M.fakedeath("regenerative_coma", TRUE) M.update_stat() M.update_mobility() - addtimer(CALLBACK(src, .proc/uncoma, M), 300) + addtimer(CALLBACK(src,PROC_REF(uncoma), M), 300) /datum/symptom/heal/coma/proc/uncoma(mob/living/M) if(!active_coma) diff --git a/code/datums/diseases/advance/symptoms/shedding.dm b/code/datums/diseases/advance/symptoms/shedding.dm index 9e5cc3bc16a..6180e1442b7 100644 --- a/code/datums/diseases/advance/symptoms/shedding.dm +++ b/code/datums/diseases/advance/symptoms/shedding.dm @@ -40,11 +40,11 @@ BONUS if(3, 4) if(!(H.hair_style == "Bald") && !(H.hair_style == "Balding Hair")) to_chat(H, span_warning("Your hair starts to fall out in clumps...")) - addtimer(CALLBACK(src, .proc/Shed, H, FALSE), 50) + addtimer(CALLBACK(src,PROC_REF(Shed), H, FALSE), 50) if(5) if(!(H.facial_hair_style == "Shaved") || !(H.hair_style == "Bald")) to_chat(H, span_warning("Your hair starts to fall out in clumps...")) - addtimer(CALLBACK(src, .proc/Shed, H, TRUE), 50) + addtimer(CALLBACK(src,PROC_REF(Shed), H, TRUE), 50) /datum/symptom/shedding/proc/Shed(mob/living/carbon/human/H, fullbald) if(fullbald) diff --git a/code/datums/diseases/pierrot_throat.dm b/code/datums/diseases/pierrot_throat.dm index 323242a2b45..e025ac65e0a 100644 --- a/code/datums/diseases/pierrot_throat.dm +++ b/code/datums/diseases/pierrot_throat.dm @@ -28,7 +28,7 @@ affected_mob.say( pick( list("HONK!", "Honk!", "Honk.", "Honk?", "Honk!!", "Honk?!", "Honk...") ) , forced = "pierrot's throat") /datum/disease/pierrot_throat/after_add() - RegisterSignal(affected_mob, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(affected_mob, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/disease/pierrot_throat/proc/handle_speech(datum/source, list/speech_args) var/message = speech_args[SPEECH_MESSAGE] diff --git a/code/datums/elements/_element.dm b/code/datums/elements/_element.dm index fc469100074..9e8025af1da 100644 --- a/code/datums/elements/_element.dm +++ b/code/datums/elements/_element.dm @@ -21,7 +21,7 @@ return ELEMENT_INCOMPATIBLE SEND_SIGNAL(target, COMSIG_ELEMENT_ATTACH, src) if(element_flags & ELEMENT_DETACH) - RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/Detach, override = TRUE) + RegisterSignal(target, COMSIG_PARENT_QDELETING,PROC_REF(Detach), override = TRUE) /// Deactivates the functionality defines by the element on the given datum /datum/element/proc/Detach(datum/source, force) diff --git a/code/datums/elements/art.dm b/code/datums/elements/art.dm index 70833225ea9..44d976e9224 100644 --- a/code/datums/elements/art.dm +++ b/code/datums/elements/art.dm @@ -14,13 +14,13 @@ return ELEMENT_INCOMPATIBLE impressiveness = impress if(isobj(target)) - RegisterSignal(target, COMSIG_PARENT_EXAMINE, .proc/on_obj_examine) + RegisterSignal(target, COMSIG_PARENT_EXAMINE,PROC_REF(on_obj_examine)) if(isstructure(target)) - RegisterSignal(target, COMSIG_ATOM_ATTACK_HAND, .proc/on_attack_hand) + RegisterSignal(target, COMSIG_ATOM_ATTACK_HAND,PROC_REF(on_attack_hand)) if(isitem(target)) - RegisterSignal(target, COMSIG_ITEM_ATTACK_SELF, .proc/apply_moodlet) + RegisterSignal(target, COMSIG_ITEM_ATTACK_SELF,PROC_REF(apply_moodlet)) else - RegisterSignal(target, COMSIG_PARENT_EXAMINE, .proc/on_other_examine) + RegisterSignal(target, COMSIG_PARENT_EXAMINE,PROC_REF(on_other_examine)) /datum/element/art/Detach(datum/target) UnregisterSignal(target, list(COMSIG_PARENT_EXAMINE, COMSIG_ATOM_ATTACK_HAND, COMSIG_ITEM_ATTACK_SELF)) diff --git a/code/datums/elements/beauty.dm b/code/datums/elements/beauty.dm index 309eff00994..c04e9070c8d 100644 --- a/code/datums/elements/beauty.dm +++ b/code/datums/elements/beauty.dm @@ -10,8 +10,8 @@ beauty = beautyamount if(ismovable(target)) - RegisterSignal(target, COMSIG_ENTER_AREA, .proc/enter_area, override = TRUE) - RegisterSignal(target, COMSIG_EXIT_AREA, .proc/exit_area, override = TRUE) + RegisterSignal(target, COMSIG_ENTER_AREA,PROC_REF(enter_area), override = TRUE) + RegisterSignal(target, COMSIG_EXIT_AREA,PROC_REF(exit_area), override = TRUE) var/area/A = get_area(target) if(A) diff --git a/code/datums/elements/bsa_blocker.dm b/code/datums/elements/bsa_blocker.dm index 61140ad0ed5..c79960405e1 100644 --- a/code/datums/elements/bsa_blocker.dm +++ b/code/datums/elements/bsa_blocker.dm @@ -3,7 +3,7 @@ /datum/element/bsa_blocker/Attach(datum/target) if(!isatom(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_ATOM_BSA_BEAM, .proc/block_bsa) + RegisterSignal(target, COMSIG_ATOM_BSA_BEAM,PROC_REF(block_bsa)) return ..() /datum/element/bsa_blocker/proc/block_bsa() diff --git a/code/datums/elements/cleaning.dm b/code/datums/elements/cleaning.dm index 1c67d4ea068..c096f246bc7 100644 --- a/code/datums/elements/cleaning.dm +++ b/code/datums/elements/cleaning.dm @@ -2,7 +2,7 @@ . = ..() if(!ismovable(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/Clean) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(Clean)) /datum/element/cleaning/Detach(datum/target) . = ..() diff --git a/code/datums/elements/connect_loc.dm b/code/datums/elements/connect_loc.dm index fee9072f751..7590588a7db 100644 --- a/code/datums/elements/connect_loc.dm +++ b/code/datums/elements/connect_loc.dm @@ -14,7 +14,7 @@ src.connections = connections - RegisterSignal(listener, COMSIG_MOVABLE_MOVED, .proc/on_moved, override = TRUE) + RegisterSignal(listener, COMSIG_MOVABLE_MOVED,PROC_REF(on_moved), override = TRUE) update_signals(listener) /datum/element/connect_loc/Detach(atom/movable/listener) diff --git a/code/datums/elements/decal.dm b/code/datums/elements/decal.dm index a20d46c813b..b62f1b06cb5 100644 --- a/code/datums/elements/decal.dm +++ b/code/datums/elements/decal.dm @@ -27,12 +27,12 @@ if(!num_decals_per_atom[A]) if(first_dir) - RegisterSignal(A, COMSIG_ATOM_DIR_CHANGE, .proc/rotate_react) + RegisterSignal(A, COMSIG_ATOM_DIR_CHANGE,PROC_REF(rotate_react)) if(cleanable) - RegisterSignal(A, COMSIG_COMPONENT_CLEAN_ACT, .proc/clean_react) + RegisterSignal(A, COMSIG_COMPONENT_CLEAN_ACT,PROC_REF(clean_react)) if(description) - RegisterSignal(A, COMSIG_PARENT_EXAMINE, .proc/examine) - RegisterSignal(A, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/apply_overlay, TRUE) + RegisterSignal(A, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) + RegisterSignal(A, COMSIG_ATOM_UPDATE_OVERLAYS,PROC_REF(apply_overlay), TRUE) num_decals_per_atom[A]++ apply(A) @@ -51,7 +51,7 @@ if(target.flags_1 & INITIALIZED_1) target.update_icon() //could use some queuing here now maybe. else if(!QDELETED(target) && num_decals_per_atom[target] == 1) - RegisterSignal(target, COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZE, .proc/late_update_icon) + RegisterSignal(target, COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZE,PROC_REF(late_update_icon)) if(isitem(target)) addtimer(CALLBACK(target, /obj/item/.proc/update_slot_icon), 0, TIMER_UNIQUE) diff --git a/code/datums/elements/drag_pickup.dm b/code/datums/elements/drag_pickup.dm index 7501d552c47..a19e72a56e1 100644 --- a/code/datums/elements/drag_pickup.dm +++ b/code/datums/elements/drag_pickup.dm @@ -9,7 +9,7 @@ /datum/element/drag_pickup/Attach(datum/target) if(!ismovable(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_MOUSEDROP_ONTO, .proc/pick_up) + RegisterSignal(target, COMSIG_MOUSEDROP_ONTO,PROC_REF(pick_up)) return ..() /datum/element/drag_pickup/Detach(datum/source) diff --git a/code/datums/elements/dwarfism.dm b/code/datums/elements/dwarfism.dm index fefbe4fbe79..edd00f690b3 100644 --- a/code/datums/elements/dwarfism.dm +++ b/code/datums/elements/dwarfism.dm @@ -21,7 +21,7 @@ else L.transform = L.transform.Scale(1, SHORT) attached_targets[target] = comsig_target - RegisterSignal(target, comsig, .proc/check_loss) //Second arg of the signal will be checked against the comsig_target. + RegisterSignal(target, comsig,PROC_REF(check_loss)) //Second arg of the signal will be checked against the comsig_target. /datum/element/dwarfism/proc/check_loss(mob/living/L, comsig_target) if(attached_targets[L] == comsig_target) diff --git a/code/datums/elements/earhealing.dm b/code/datums/elements/earhealing.dm index 91c2120fc2c..4747d9765e8 100644 --- a/code/datums/elements/earhealing.dm +++ b/code/datums/elements/earhealing.dm @@ -11,7 +11,7 @@ if(!isitem(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED), .proc/equippedChanged) + RegisterSignal(target, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED),PROC_REF(equippedChanged)) /datum/element/earhealing/Detach(datum/target) . = ..() diff --git a/code/datums/elements/embed.dm b/code/datums/elements/embed.dm index 1dc0c4fba4a..c2318f7a024 100644 --- a/code/datums/elements/embed.dm +++ b/code/datums/elements/embed.dm @@ -37,16 +37,16 @@ if(!isitem(target) && !isprojectile(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_ELEMENT_ATTACH, .proc/severancePackage) + RegisterSignal(target, COMSIG_ELEMENT_ATTACH,PROC_REF(severancePackage)) if(isprojectile(target)) payload_type = projectile_payload - RegisterSignal(target, COMSIG_PROJECTILE_SELF_ON_HIT, .proc/checkEmbedProjectile) + RegisterSignal(target, COMSIG_PROJECTILE_SELF_ON_HIT,PROC_REF(checkEmbedProjectile)) else if(isitem(target)) - RegisterSignal(target, COMSIG_MOVABLE_IMPACT_ZONE, .proc/checkEmbedMob) - RegisterSignal(target, COMSIG_MOVABLE_IMPACT, .proc/checkEmbedOther) - RegisterSignal(target, COMSIG_PARENT_EXAMINE, .proc/examined) - RegisterSignal(target, COMSIG_EMBED_TRY_FORCE, .proc/tryForceEmbed) - RegisterSignal(target, COMSIG_ITEM_DISABLE_EMBED, .proc/detachFromWeapon) + RegisterSignal(target, COMSIG_MOVABLE_IMPACT_ZONE,PROC_REF(checkEmbedMob)) + RegisterSignal(target, COMSIG_MOVABLE_IMPACT,PROC_REF(checkEmbedOther)) + RegisterSignal(target, COMSIG_PARENT_EXAMINE,PROC_REF(examined)) + RegisterSignal(target, COMSIG_EMBED_TRY_FORCE,PROC_REF(tryForceEmbed)) + RegisterSignal(target, COMSIG_ITEM_DISABLE_EMBED,PROC_REF(detachFromWeapon)) if(!initialized) src.embed_chance = embed_chance src.fall_chance = fall_chance diff --git a/code/datums/elements/empprotection.dm b/code/datums/elements/empprotection.dm index c24914decb8..18fbe248caa 100644 --- a/code/datums/elements/empprotection.dm +++ b/code/datums/elements/empprotection.dm @@ -8,7 +8,7 @@ if(. == ELEMENT_INCOMPATIBLE || !isatom(target)) return ELEMENT_INCOMPATIBLE flags = _flags - RegisterSignal(target, COMSIG_ATOM_EMP_ACT, .proc/getEmpFlags) + RegisterSignal(target, COMSIG_ATOM_EMP_ACT,PROC_REF(getEmpFlags)) /datum/element/empprotection/Detach(atom/target) UnregisterSignal(target, COMSIG_ATOM_EMP_ACT) diff --git a/code/datums/elements/firestacker.dm b/code/datums/elements/firestacker.dm index d074c8f6ed2..5807e8b5746 100644 --- a/code/datums/elements/firestacker.dm +++ b/code/datums/elements/firestacker.dm @@ -15,10 +15,10 @@ src.amount = amount - RegisterSignal(target, COMSIG_MOVABLE_IMPACT, .proc/impact, override = TRUE) + RegisterSignal(target, COMSIG_MOVABLE_IMPACT,PROC_REF(impact), override = TRUE) if(isitem(target)) - RegisterSignal(target, COMSIG_ITEM_ATTACK, .proc/item_attack, override = TRUE) - RegisterSignal(target, COMSIG_ITEM_ATTACK_SELF, .proc/item_attack_self, override = TRUE) + RegisterSignal(target, COMSIG_ITEM_ATTACK,PROC_REF(item_attack), override = TRUE) + RegisterSignal(target, COMSIG_ITEM_ATTACK_SELF,PROC_REF(item_attack_self), override = TRUE) /datum/element/firestacker/Detach(datum/source, force) . = ..() diff --git a/code/datums/elements/flavor_text.dm b/code/datums/elements/flavor_text.dm index 71657e0a0f8..ef0f687efb8 100644 --- a/code/datums/elements/flavor_text.dm +++ b/code/datums/elements/flavor_text.dm @@ -32,7 +32,7 @@ GLOBAL_LIST_EMPTY(mobs_with_editable_flavor_text) //et tu, hacky code save_key = _save_key examine_no_preview = _examine_no_preview - RegisterSignal(target, COMSIG_PARENT_EXAMINE, .proc/show_flavor) + RegisterSignal(target, COMSIG_PARENT_EXAMINE,PROC_REF(show_flavor)) if(can_edit && ismob(target)) //but only mobs receive the proc/verb for the time being var/mob/M = target @@ -40,7 +40,7 @@ GLOBAL_LIST_EMPTY(mobs_with_editable_flavor_text) //et tu, hacky code M.verbs |= /mob/proc/manage_flavor_tests if(save_key && ishuman(target)) - RegisterSignal(target, COMSIG_HUMAN_PREFS_COPIED_TO, .proc/update_prefs_flavor_text) + RegisterSignal(target, COMSIG_HUMAN_PREFS_COPIED_TO,PROC_REF(update_prefs_flavor_text)) /datum/element/flavor_text/Detach(atom/A) . = ..() @@ -141,11 +141,11 @@ GLOBAL_LIST_EMPTY(mobs_with_editable_flavor_text) //et tu, hacky code . = ..() if(. == ELEMENT_INCOMPATIBLE) return - RegisterSignal(target, COMSIG_CARBON_IDENTITY_TRANSFERRED_TO, .proc/update_dna_flavor_text) - RegisterSignal(target, COMSIG_MOB_ANTAG_ON_GAIN, .proc/on_antag_gain) + RegisterSignal(target, COMSIG_CARBON_IDENTITY_TRANSFERRED_TO,PROC_REF(update_dna_flavor_text)) + RegisterSignal(target, COMSIG_MOB_ANTAG_ON_GAIN,PROC_REF(on_antag_gain)) if(ishuman(target)) - RegisterSignal(target, COMSIG_HUMAN_HARDSET_DNA, .proc/update_dna_flavor_text) - RegisterSignal(target, COMSIG_HUMAN_ON_RANDOMIZE, .proc/unset_flavor) + RegisterSignal(target, COMSIG_HUMAN_HARDSET_DNA,PROC_REF(update_dna_flavor_text)) + RegisterSignal(target, COMSIG_HUMAN_ON_RANDOMIZE,PROC_REF(unset_flavor)) /datum/element/flavor_text/carbon/Detach(mob/living/carbon/C) . = ..() diff --git a/code/datums/elements/forced_gravity.dm b/code/datums/elements/forced_gravity.dm index 0b50df5b21f..d9055b2a717 100644 --- a/code/datums/elements/forced_gravity.dm +++ b/code/datums/elements/forced_gravity.dm @@ -12,9 +12,9 @@ src.gravity = gravity src.ignore_space = ignore_space - RegisterSignal(target, COMSIG_ATOM_HAS_GRAVITY, .proc/gravity_check) + RegisterSignal(target, COMSIG_ATOM_HAS_GRAVITY,PROC_REF(gravity_check)) if(isturf(target)) - RegisterSignal(target, COMSIG_TURF_HAS_GRAVITY, .proc/turf_gravity_check) + RegisterSignal(target, COMSIG_TURF_HAS_GRAVITY,PROC_REF(turf_gravity_check)) /datum/element/forced_gravity/Detach(datum/source, force) . = ..() diff --git a/code/datums/elements/ghost_role_eligibility.dm b/code/datums/elements/ghost_role_eligibility.dm index 24c8bda7bd4..16949664fbd 100644 --- a/code/datums/elements/ghost_role_eligibility.dm +++ b/code/datums/elements/ghost_role_eligibility.dm @@ -17,7 +17,7 @@ GLOBAL_LIST_EMPTY(client_ghost_timeouts) var/mob/M = target if(!(M in GLOB.ghost_eligible_mobs)) GLOB.ghost_eligible_mobs += M - RegisterSignal(M, COMSIG_MOB_GHOSTIZE, .proc/get_ghost_flags) + RegisterSignal(M, COMSIG_MOB_GHOSTIZE,PROC_REF(get_ghost_flags)) /datum/element/ghost_role_eligibility/Detach(mob/M) . = ..() diff --git a/code/datums/elements/light_blocking.dm b/code/datums/elements/light_blocking.dm index df0f5f6f487..36a82dfd132 100644 --- a/code/datums/elements/light_blocking.dm +++ b/code/datums/elements/light_blocking.dm @@ -9,7 +9,7 @@ . = ..() if(!ismovable(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/on_target_move) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(on_target_move)) var/atom/movable/movable_target = target if(!isturf(movable_target.loc)) return diff --git a/code/datums/elements/mob_holder.dm b/code/datums/elements/mob_holder.dm index 30e915ca84c..a867842f201 100644 --- a/code/datums/elements/mob_holder.dm +++ b/code/datums/elements/mob_holder.dm @@ -23,8 +23,8 @@ src.proctype = proctype src.escape_on_find = escape_on_find - RegisterSignal(target, COMSIG_CLICK_ALT, .proc/mob_try_pickup, override = TRUE) - RegisterSignal(target, COMSIG_PARENT_EXAMINE, .proc/on_examine, override = TRUE) + RegisterSignal(target, COMSIG_CLICK_ALT,PROC_REF(mob_try_pickup), override = TRUE) + RegisterSignal(target, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine), override = TRUE) /datum/element/mob_holder/Detach(datum/source, force) . = ..() @@ -110,11 +110,11 @@ /obj/item/clothing/head/mob_holder/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_VORE_ATOM_DEVOURED, .proc/release) - RegisterSignal(src, COMSIG_VORE_CAN_EAT, .proc/relay_caneat) - RegisterSignal(src, COMSIG_VORE_CAN_BE_EATEN, .proc/relay_can_be_eaten) - RegisterSignal(src, COMSIG_VORE_CAN_BE_FED_PREY, .proc/relay_can_be_fed) - RegisterSignal(src, COMSIG_VORE_SNIFF_LIVING, .proc/relay_sniff) + RegisterSignal(src, COMSIG_VORE_ATOM_DEVOURED,PROC_REF(release)) + RegisterSignal(src, COMSIG_VORE_CAN_EAT,PROC_REF(relay_caneat)) + RegisterSignal(src, COMSIG_VORE_CAN_BE_EATEN,PROC_REF(relay_can_be_eaten)) + RegisterSignal(src, COMSIG_VORE_CAN_BE_FED_PREY,PROC_REF(relay_can_be_fed)) + RegisterSignal(src, COMSIG_VORE_SNIFF_LIVING,PROC_REF(relay_sniff)) /obj/item/clothing/head/mob_holder/proc/relay_caneat() return SEND_SIGNAL(held_mob, COMSIG_VORE_CAN_EAT) diff --git a/code/datums/elements/polychromic.dm b/code/datums/elements/polychromic.dm index 63d02264729..2428e66ec91 100644 --- a/code/datums/elements/polychromic.dm +++ b/code/datums/elements/polychromic.dm @@ -38,11 +38,11 @@ L += make_appearances ? mutable_appearance(mut_icon, overlays_states[I], color = col) : col colors_by_atom[A] = L - RegisterSignal(A, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/apply_overlays) + RegisterSignal(A, COMSIG_ATOM_UPDATE_OVERLAYS,PROC_REF(apply_overlays)) if(_flags & POLYCHROMIC_ALTCLICK) - RegisterSignal(A, COMSIG_PARENT_EXAMINE, .proc/on_examine) - RegisterSignal(A, COMSIG_CLICK_ALT, .proc/set_color) + RegisterSignal(A, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine)) + RegisterSignal(A, COMSIG_CLICK_ALT,PROC_REF(set_color)) if(!overlays_names && names) //generate overlays_names = names @@ -55,16 +55,16 @@ if(isitem(A)) if(_flags & POLYCHROMIC_ACTION) - RegisterSignal(A, COMSIG_ITEM_EQUIPPED, .proc/grant_user_action) - RegisterSignal(A, COMSIG_ITEM_DROPPED, .proc/remove_user_action) + RegisterSignal(A, COMSIG_ITEM_EQUIPPED,PROC_REF(grant_user_action)) + RegisterSignal(A, COMSIG_ITEM_DROPPED,PROC_REF(remove_user_action)) if(!(_flags & POLYCHROMIC_NO_WORN) || !(_flags & POLYCHROMIC_NO_HELD)) A.AddElement(/datum/element/update_icon_updates_onmob) - RegisterSignal(A, COMSIG_ITEM_WORN_OVERLAYS, .proc/apply_worn_overlays) + RegisterSignal(A, COMSIG_ITEM_WORN_OVERLAYS,PROC_REF(apply_worn_overlays)) if(suits_with_helmet_typecache[A.type]) - RegisterSignal(A, COMSIG_SUIT_MADE_HELMET, .proc/register_helmet) //you better work now you slut + RegisterSignal(A, COMSIG_SUIT_MADE_HELMET,PROC_REF(register_helmet)) //you better work now you slut else if(_flags & POLYCHROMIC_ACTION && ismob(A)) //in the event mob update icon procs are ever standarized. var/datum/action/polychromic/P = new(A) - RegisterSignal(P, COMSIG_ACTION_TRIGGER, .proc/activate_action) + RegisterSignal(P, COMSIG_ACTION_TRIGGER,PROC_REF(activate_action)) actions_by_atom[A] = P P.Grant(A) @@ -152,7 +152,7 @@ P.name = "Modify [source]'\s Colors" actions_by_atom[source] = P P.check_flags = AB_CHECK_RESTRAINED|AB_CHECK_STUN|AB_CHECK_CONSCIOUS - RegisterSignal(P, COMSIG_ACTION_TRIGGER, .proc/activate_action) + RegisterSignal(P, COMSIG_ACTION_TRIGGER,PROC_REF(activate_action)) P.Grant(user) /datum/element/polychromic/proc/remove_user_action(atom/source, mob/user) @@ -178,9 +178,9 @@ suit_by_helmet[H] = source helmet_by_suit[source] = H colors_by_atom[H] = colors_by_atom[source] - RegisterSignal(H, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/apply_overlays) - RegisterSignal(H, COMSIG_ITEM_WORN_OVERLAYS, .proc/apply_worn_overlays) - RegisterSignal(H, COMSIG_PARENT_QDELETING, .proc/unregister_helmet) + RegisterSignal(H, COMSIG_ATOM_UPDATE_OVERLAYS,PROC_REF(apply_overlays)) + RegisterSignal(H, COMSIG_ITEM_WORN_OVERLAYS,PROC_REF(apply_worn_overlays)) + RegisterSignal(H, COMSIG_PARENT_QDELETING,PROC_REF(unregister_helmet)) /datum/element/polychromic/proc/unregister_helmet(atom/source) var/obj/item/clothing/suit/S = suit_by_helmet[source] diff --git a/code/datums/elements/scavenging.dm b/code/datums/elements/scavenging.dm index 3db4455208d..1f48374c820 100644 --- a/code/datums/elements/scavenging.dm +++ b/code/datums/elements/scavenging.dm @@ -47,10 +47,10 @@ loot_restriction = restriction maximum_loot_per_player = max_per_player if(can_use_hands) - RegisterSignal(target, list(COMSIG_ATOM_ATTACK_HAND, COMSIG_ATOM_ATTACK_PAW), .proc/scavenge_barehanded) + RegisterSignal(target, list(COMSIG_ATOM_ATTACK_HAND, COMSIG_ATOM_ATTACK_PAW),PROC_REF(scavenge_barehanded)) if(tool_types) - RegisterSignal(target, COMSIG_PARENT_ATTACKBY, .proc/scavenge_tool) - RegisterSignal(target, COMSIG_PARENT_EXAMINE, .proc/on_examine) + RegisterSignal(target, COMSIG_PARENT_ATTACKBY,PROC_REF(scavenge_tool)) + RegisterSignal(target, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine)) /datum/element/scavenging/Detach(atom/target) . = ..() @@ -98,7 +98,7 @@ if(len_messages >= 3) msg_blind = span_italic("[search_texts[3]]") user.visible_message(span_notice("[user] [search_texts[1]] [source]."), msg_first_person, msg_blind) - if(do_after(user, scavenge_time * speed_multi, TRUE, source, TRUE, CALLBACK(src, .proc/set_progress, source, world.time), resume_time = progress_done * speed_multi)) + if(do_after(user, scavenge_time * speed_multi, TRUE, source, TRUE, CALLBACK(src,PROC_REF(set_progress), source, world.time), resume_time = progress_done * speed_multi)) spawn_loot(source, user) players_busy_scavenging -= user diff --git a/code/datums/elements/spellcasting.dm b/code/datums/elements/spellcasting.dm index 877bcdbcd37..8c206a60ecf 100644 --- a/code/datums/elements/spellcasting.dm +++ b/code/datums/elements/spellcasting.dm @@ -9,10 +9,10 @@ /datum/element/spellcasting/Attach(datum/target, _flags, _slots) . = ..() if(isitem(target)) - RegisterSignal(target, COMSIG_ITEM_EQUIPPED, .proc/on_equip) - RegisterSignal(target, COMSIG_ITEM_DROPPED, .proc/on_drop) + RegisterSignal(target, COMSIG_ITEM_EQUIPPED,PROC_REF(on_equip)) + RegisterSignal(target, COMSIG_ITEM_DROPPED,PROC_REF(on_drop)) else if(ismob(target)) - RegisterSignal(target, COMSIG_MOB_SPELL_CAN_CAST, .proc/on_cast) + RegisterSignal(target, COMSIG_MOB_SPELL_CAN_CAST,PROC_REF(on_cast)) stacked_spellcasting_by_user[target]++ else return ELEMENT_INCOMPATIBLE @@ -38,7 +38,7 @@ return users_by_item[source] = equipper if(!stacked_spellcasting_by_user[equipper]) - RegisterSignal(equipper, COMSIG_MOB_SPELL_CAN_CAST, .proc/on_cast) + RegisterSignal(equipper, COMSIG_MOB_SPELL_CAN_CAST,PROC_REF(on_cast)) stacked_spellcasting_by_user[equipper]++ /datum/element/spellcasting/proc/on_drop(datum/source, mob/user) diff --git a/code/datums/elements/squish.dm b/code/datums/elements/squish.dm index 823d391e14c..2265be68e04 100644 --- a/code/datums/elements/squish.dm +++ b/code/datums/elements/squish.dm @@ -11,7 +11,7 @@ var/mob/living/carbon/C = target var/was_lying = (C.lying != 0) - addtimer(CALLBACK(src, .proc/Detach, C, was_lying), duration) + addtimer(CALLBACK(src,PROC_REF(Detach), C, was_lying), duration) C.transform = C.transform.Scale(TALL, SHORT) diff --git a/code/datums/elements/swimming.dm b/code/datums/elements/swimming.dm index d16ef6625f0..ca0be4290eb 100644 --- a/code/datums/elements/swimming.dm +++ b/code/datums/elements/swimming.dm @@ -7,7 +7,7 @@ return if(!isliving(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/check_valid) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(check_valid)) ADD_TRAIT(target, TRAIT_SWIMMING, TRAIT_SWIMMING) //seriously there's only one way to get this /datum/element/swimming/Detach(datum/target) diff --git a/code/datums/elements/sword_point.dm b/code/datums/elements/sword_point.dm index 91ed4710685..8251f5cd468 100644 --- a/code/datums/elements/sword_point.dm +++ b/code/datums/elements/sword_point.dm @@ -7,7 +7,7 @@ return if(!istype(target)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_ITEM_ALT_AFTERATTACK, .proc/point) + RegisterSignal(target, COMSIG_ITEM_ALT_AFTERATTACK,PROC_REF(point)) /datum/element/sword_point/Detach(datum/source) . = ..() diff --git a/code/datums/elements/tactical.dm b/code/datums/elements/tactical.dm index 4b49552fbe5..d14f7fa8d64 100644 --- a/code/datums/elements/tactical.dm +++ b/code/datums/elements/tactical.dm @@ -9,8 +9,8 @@ return ELEMENT_INCOMPATIBLE src.allowed_slot = allowed_slot - RegisterSignal(target, COMSIG_ITEM_EQUIPPED, .proc/modify) - RegisterSignal(target, COMSIG_ITEM_DROPPED, .proc/unmodify) + RegisterSignal(target, COMSIG_ITEM_EQUIPPED,PROC_REF(modify)) + RegisterSignal(target, COMSIG_ITEM_DROPPED,PROC_REF(unmodify)) /datum/element/tactical/Detach(datum/target) UnregisterSignal(target, list(COMSIG_ITEM_EQUIPPED, COMSIG_ITEM_DROPPED)) diff --git a/code/datums/elements/update_icon_blocker.dm b/code/datums/elements/update_icon_blocker.dm index f52a712ebb5..9a300b7662a 100644 --- a/code/datums/elements/update_icon_blocker.dm +++ b/code/datums/elements/update_icon_blocker.dm @@ -4,7 +4,7 @@ . = ..() if(!istype(target, /atom)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_ATOM_UPDATE_ICON, .proc/block_update_icon) + RegisterSignal(target, COMSIG_ATOM_UPDATE_ICON,PROC_REF(block_update_icon)) /datum/element/update_icon_blocker/proc/block_update_icon() return COMSIG_ATOM_NO_UPDATE_ICON_STATE | COMSIG_ATOM_NO_UPDATE_OVERLAYS diff --git a/code/datums/elements/update_icon_updates_onmob.dm b/code/datums/elements/update_icon_updates_onmob.dm index 5c71547f624..37cdc4cc3f3 100644 --- a/code/datums/elements/update_icon_updates_onmob.dm +++ b/code/datums/elements/update_icon_updates_onmob.dm @@ -5,7 +5,7 @@ . = ..() if(!istype(target, /obj/item)) return ELEMENT_INCOMPATIBLE - RegisterSignal(target, COMSIG_ATOM_UPDATED_ICON, .proc/update_onmob, override = TRUE) + RegisterSignal(target, COMSIG_ATOM_UPDATED_ICON,PROC_REF(update_onmob), override = TRUE) /datum/element/update_icon_updates_onmob/proc/update_onmob(obj/item/target) if(ismob(target.loc)) diff --git a/code/datums/elements/wuv.dm b/code/datums/elements/wuv.dm index 6476a204cfe..751e7467190 100644 --- a/code/datums/elements/wuv.dm +++ b/code/datums/elements/wuv.dm @@ -28,7 +28,7 @@ pet_moodlet = pet_mood punt_moodlet = punt_mood - RegisterSignal(target, COMSIG_MOB_ATTACK_HAND, .proc/on_attack_hand) + RegisterSignal(target, COMSIG_MOB_ATTACK_HAND,PROC_REF(on_attack_hand)) /datum/element/wuv/Detach(datum/source, force) . = ..() @@ -42,9 +42,9 @@ //we want to delay the effect to be displayed after the mob is petted, not before. switch(user.a_intent) if(INTENT_HARM) - addtimer(CALLBACK(src, .proc/kick_the_dog, source, user), 1) + addtimer(CALLBACK(src,PROC_REF(kick_the_dog), source, user), 1) if(INTENT_HELP) - addtimer(CALLBACK(src, .proc/pet_the_dog, source, user), 1) + addtimer(CALLBACK(src,PROC_REF(pet_the_dog), source, user), 1) /datum/element/wuv/proc/pet_the_dog(mob/target, mob/user) if(QDELETED(target) || QDELETED(user) || target.stat != CONSCIOUS) diff --git a/code/datums/holocall.dm b/code/datums/holocall.dm index 354af09cfbe..8b329927507 100644 --- a/code/datums/holocall.dm +++ b/code/datums/holocall.dm @@ -237,7 +237,7 @@ /obj/item/disk/holodisk/Initialize(mapload) . = ..() if(preset_record_text) - INVOKE_ASYNC(src, .proc/build_record) + INVOKE_ASYNC(src,PROC_REF(build_record)) /obj/item/disk/holodisk/Destroy() QDEL_NULL(record) diff --git a/code/datums/hud.dm b/code/datums/hud.dm index c1e5fad00b6..489162f7655 100644 --- a/code/datums/hud.dm +++ b/code/datums/hud.dm @@ -86,10 +86,10 @@ GLOBAL_LIST_INIT(huds, list( return if(!hudusers[M]) hudusers[M] = 1 - RegisterSignal(M, COMSIG_PARENT_QDELETING, .proc/unregister_mob) + RegisterSignal(M, COMSIG_PARENT_QDELETING,PROC_REF(unregister_mob)) if(next_time_allowed[M] > world.time) if(!queued_to_see[M]) - addtimer(CALLBACK(src, .proc/show_hud_images_after_cooldown, M), next_time_allowed[M] - world.time) + addtimer(CALLBACK(src,PROC_REF(show_hud_images_after_cooldown), M), next_time_allowed[M] - world.time) queued_to_see[M] = TRUE else next_time_allowed[M] = world.time + ADD_HUD_TO_COOLDOWN diff --git a/code/datums/looping_sounds/_looping_sound.dm b/code/datums/looping_sounds/_looping_sound.dm index 26dad81e2c5..82c5c002d13 100644 --- a/code/datums/looping_sounds/_looping_sound.dm +++ b/code/datums/looping_sounds/_looping_sound.dm @@ -55,7 +55,7 @@ if(!istype(add_thing)) CRASH("looping sound [src] given [add_thing]. [add_thing] is not an atom!!!!!!!!!!!!!!!!!") output_atoms |= add_thing - RegisterSignal(add_thing, COMSIG_PARENT_PREQDELETED, .proc/remove_atom) + RegisterSignal(add_thing, COMSIG_PARENT_PREQDELETED,PROC_REF(remove_atom)) /datum/looping_sound/proc/remove_atom(atom/remove_thing) UnregisterSignal(remove_thing, COMSIG_PARENT_PREQDELETED) @@ -64,7 +64,7 @@ /datum/looping_sound/proc/start(atom/add_thing) if(add_thing) output_atoms |= add_thing - RegisterSignal(add_thing, COMSIG_PARENT_PREQDELETED, .proc/remove_atom) + RegisterSignal(add_thing, COMSIG_PARENT_PREQDELETED,PROC_REF(remove_atom)) if(timerid || init_timerid) // already running, will pick them up on the next go return on_start() @@ -106,7 +106,7 @@ play(sound_play) mid_length = sound_play[SL_FILE_LENGTH] if(!timerid) - timerid = addtimer(CALLBACK(src, .proc/sound_loop, world.time), mid_length + loop_delay, TIMER_CLIENT_TIME | TIMER_STOPPABLE | TIMER_LOOP) + timerid = addtimer(CALLBACK(src,PROC_REF(sound_loop), world.time), mid_length + loop_delay, TIMER_CLIENT_TIME | TIMER_STOPPABLE | TIMER_LOOP) else set_timer_wait(timerid, mid_length + loop_delay) @@ -154,7 +154,7 @@ var/list/sound_start = pickweight(start_sound) play(sound_start) start_wait = sound_start[SL_FILE_LENGTH] - init_timerid = addtimer(CALLBACK(src, .proc/sound_loop), start_wait, TIMER_CLIENT_TIME | TIMER_STOPPABLE) + init_timerid = addtimer(CALLBACK(src,PROC_REF(sound_loop)), start_wait, TIMER_CLIENT_TIME | TIMER_STOPPABLE) /datum/looping_sound/proc/on_stop() if(end_sound) diff --git a/code/datums/looping_sounds/looping_sound.dm b/code/datums/looping_sounds/looping_sound.dm index 59828fe24e6..4e1e7e9c8c5 100644 --- a/code/datums/looping_sounds/looping_sound.dm +++ b/code/datums/looping_sounds/looping_sound.dm @@ -80,7 +80,7 @@ if(!chance || prob(chance)) play(get_sound(starttime)) if(!timerid) - timerid = addtimer(CALLBACK(src, .proc/sound_loop, world.time), mid_length, TIMER_STOPPABLE | TIMER_LOOP) + timerid = addtimer(CALLBACK(src,PROC_REF(sound_loop), world.time), mid_length, TIMER_STOPPABLE | TIMER_LOOP) /datum/looping_sound/proc/play(soundfile) var/list/atoms_cache = output_atoms @@ -108,7 +108,7 @@ if(start_sound) play(start_sound) start_wait = start_length - addtimer(CALLBACK(src, .proc/sound_loop), start_wait) + addtimer(CALLBACK(src,PROC_REF(sound_loop)), start_wait) /datum/looping_sound/proc/on_stop() if(end_sound) diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 2f22648a78c..482289be576 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -350,7 +350,7 @@ A.setDir(turn(A.dir, 90)) A.forceMove(D.loc) - addtimer(CALLBACK(src, .proc/CheckStrikeTurf, A, T), 4) + addtimer(CALLBACK(src,PROC_REF(CheckStrikeTurf), A, T), 4) A.visible_message("[A] headbutts [D]!") D.apply_damage(damage + 15, BRUTE) diff --git a/code/datums/mutations/_mutations.dm b/code/datums/mutations/_mutations.dm index b77bc3f45c9..68e0f0381d0 100644 --- a/code/datums/mutations/_mutations.dm +++ b/code/datums/mutations/_mutations.dm @@ -48,7 +48,7 @@ . = ..() class = class_ if(timer) - addtimer(CALLBACK(src, .proc/remove), timer) + addtimer(CALLBACK(src,PROC_REF(remove)), timer) timed = TRUE if(copymut && istype(copymut, /datum/mutation/human)) copy_mutation(copymut) @@ -86,7 +86,7 @@ grant_spell() if(!modified) - addtimer(CALLBACK(src, .proc/modify, 5)) //gonna want children calling ..() to run first + addtimer(CALLBACK(src,PROC_REF(modify), 5)) //gonna want children calling ..() to run first /datum/mutation/human/proc/get_visual_indicator() return diff --git a/code/datums/mutations/actions.dm b/code/datums/mutations/actions.dm index fea08f116f9..ca61c48c50d 100644 --- a/code/datums/mutations/actions.dm +++ b/code/datums/mutations/actions.dm @@ -418,7 +418,7 @@ /obj/item/hardened_spike/Initialize(mapload, firedby) . = ..() fired_by = firedby - addtimer(CALLBACK(src, .proc/checkembedded), 5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(checkembedded)), 5 SECONDS) /obj/item/hardened_spike/proc/checkembedded() if(missed) diff --git a/code/datums/mutations/body.dm b/code/datums/mutations/body.dm index 8ee005194f5..7f07ac96eec 100644 --- a/code/datums/mutations/body.dm +++ b/code/datums/mutations/body.dm @@ -15,7 +15,7 @@ owner.Unconscious(200 * GET_MUTATION_POWER(src)) owner.Jitter(1000 * GET_MUTATION_POWER(src)) SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "epilepsy", /datum/mood_event/epilepsy) - addtimer(CALLBACK(src, .proc/jitter_less), 90) + addtimer(CALLBACK(src,PROC_REF(jitter_less)), 90) /datum/mutation/human/epilepsy/proc/jitter_less(mob/living/carbon/human/owner) if(owner) diff --git a/code/datums/mutations/hulk.dm b/code/datums/mutations/hulk.dm index c66f78fa51d..f9edb7944fc 100644 --- a/code/datums/mutations/hulk.dm +++ b/code/datums/mutations/hulk.dm @@ -17,7 +17,7 @@ ADD_TRAIT(owner, TRAIT_CHUNKYFINGERS, TRAIT_HULK) owner.update_body_parts() SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "hulk", /datum/mood_event/hulk) - RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/mutation/human/hulk/on_attack_hand(atom/target, proximity, act_intent, unarmed_attack_flags) if(proximity && (act_intent == INTENT_HARM)) //no telekinetic hulk attack diff --git a/code/datums/mutations/speech.dm b/code/datums/mutations/speech.dm index ad4b7b28ff0..a7778df3f3c 100644 --- a/code/datums/mutations/speech.dm +++ b/code/datums/mutations/speech.dm @@ -23,7 +23,7 @@ . = ..() if(.) return - RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/mutation/human/wacky/on_losing(mob/living/carbon/human/owner) . = ..() @@ -65,7 +65,7 @@ . = ..() if(.) return - RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/mutation/human/smile/on_losing(mob/living/carbon/human/owner) . = ..() @@ -114,7 +114,7 @@ . = ..() if(.) return - RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/mutation/human/swedish/on_losing(mob/living/carbon/human/owner) . = ..() @@ -146,7 +146,7 @@ . = ..() if(.) return - RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/mutation/human/chav/on_losing(mob/living/carbon/human/owner) . = ..() @@ -205,7 +205,7 @@ . = ..() if(.) return - RegisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/mutation/human/elvis/on_losing(mob/living/carbon/human/owner) . = ..() diff --git a/code/datums/skills/_skill_modifier.dm b/code/datums/skills/_skill_modifier.dm index d785b2b5cfc..1c9ec4d9471 100644 --- a/code/datums/skills/_skill_modifier.dm +++ b/code/datums/skills/_skill_modifier.dm @@ -117,7 +117,7 @@ GLOBAL_LIST_EMPTY(potential_mods_per_skill) if(M.modifier_flags & MODIFIER_SKILL_BODYBOUND) M.RegisterSignal(src, COMSIG_MIND_TRANSFER, /datum/skill_modifier.proc/on_mind_transfer) M.RegisterSignal(current, COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier.proc/on_mob_new_mind, TRUE) - RegisterSignal(M, COMSIG_PARENT_PREQDELETED, .proc/on_skill_modifier_deletion) + RegisterSignal(M, COMSIG_PARENT_PREQDELETED,PROC_REF(on_skill_modifier_deletion)) #undef ADD_MOD_STEP diff --git a/code/datums/status_effects/debuffs.dm b/code/datums/status_effects/debuffs.dm index ba6ab89065a..76cf15eff3c 100644 --- a/code/datums/status_effects/debuffs.dm +++ b/code/datums/status_effects/debuffs.dm @@ -972,7 +972,7 @@ datum/status_effect/pacify . = ..() if(!iscarbon(owner)) return FALSE - RegisterSignal(owner, COMSIG_MOVABLE_HEAR, .proc/hypnotize) + RegisterSignal(owner, COMSIG_MOVABLE_HEAR,PROC_REF(hypnotize)) ADD_TRAIT(owner, TRAIT_MUTE, "trance") owner.add_client_colour(/datum/client_colour/monochrome/trance) owner.visible_message("[stun ? span_warning("[owner] stands still as [owner.p_their()] eyes seem to focus on a distant point.") : ""]", \ diff --git a/code/datums/status_effects/gas.dm b/code/datums/status_effects/gas.dm index eebd013f6e0..b7232850c72 100644 --- a/code/datums/status_effects/gas.dm +++ b/code/datums/status_effects/gas.dm @@ -12,7 +12,7 @@ icon_state = "frozen" /datum/status_effect/freon/on_apply() - RegisterSignal(owner, COMSIG_LIVING_RESIST, .proc/owner_resist) + RegisterSignal(owner, COMSIG_LIVING_RESIST,PROC_REF(owner_resist)) if(!owner.stat) to_chat(owner, span_userdanger("You become frozen in a cube!")) cube = icon('icons/effects/freeze.dmi', "ice_cube") diff --git a/code/datums/status_effects/wound_effects.dm b/code/datums/status_effects/wound_effects.dm index 987d013e436..dde1b74fca9 100644 --- a/code/datums/status_effects/wound_effects.dm +++ b/code/datums/status_effects/wound_effects.dm @@ -41,8 +41,8 @@ left = C.get_bodypart(BODY_ZONE_L_LEG) right = C.get_bodypart(BODY_ZONE_R_LEG) update_limp() - RegisterSignal(C, COMSIG_MOVABLE_MOVED, .proc/check_step) - RegisterSignal(C, list(COMSIG_CARBON_GAIN_WOUND, COMSIG_CARBON_LOSE_WOUND, COMSIG_CARBON_ATTACH_LIMB, COMSIG_CARBON_REMOVE_LIMB), .proc/update_limp) + RegisterSignal(C, COMSIG_MOVABLE_MOVED,PROC_REF(check_step)) + RegisterSignal(C, list(COMSIG_CARBON_GAIN_WOUND, COMSIG_CARBON_LOSE_WOUND, COMSIG_CARBON_ATTACH_LIMB, COMSIG_CARBON_REMOVE_LIMB),PROC_REF(update_limp)) return ..() /datum/status_effect/limp/on_remove() @@ -129,7 +129,7 @@ /datum/status_effect/wound/on_apply() if(!iscarbon(owner)) return FALSE - RegisterSignal(owner, COMSIG_CARBON_LOSE_WOUND, .proc/check_remove) + RegisterSignal(owner, COMSIG_CARBON_LOSE_WOUND,PROC_REF(check_remove)) return ..() /// check if the wound getting removed is the wound we're tied to diff --git a/code/datums/tattoo.dm b/code/datums/tattoo.dm index 19a8b3138ae..09072e69ddb 100644 --- a/code/datums/tattoo.dm +++ b/code/datums/tattoo.dm @@ -45,7 +45,7 @@ /datum/tattoo/proc/on_apply(mob/user) if(fade_time) - addtimer(CALLBACK(src, .proc/fade_tattoo), fade_time) + addtimer(CALLBACK(src,PROC_REF(fade_tattoo)), fade_time) /datum/tattoo/Destroy(force, ...) if(owner_limb) @@ -80,7 +80,7 @@ if(fadedness++ > TATTOO_VERY_FADED) qdel(src) return - addtimer(CALLBACK(src, .proc/fade_tattoo), fade_time) + addtimer(CALLBACK(src,PROC_REF(fade_tattoo)), fade_time) /// Is the tattoo somewhere really private? So you dont examine someone in power armor and find FOXYGRANDMA above their ass /// A really in-depth check through a person's privates to see if their relevant bits are, in fact, visible @@ -727,7 +727,7 @@ victim.emote("scream") owie.receive_damage(brute = owie.brute_dam < 30 ? brute_d : 0, stamina = stamina_d, wound_bonus = bleed_d, sharpness = SHARP_EDGED, damage_coverings = FALSE) if(engraving) - addtimer(CALLBACK(src, .proc/make_noises_and_pain, victim, user, tat_loc, part), next_time) + addtimer(CALLBACK(src,PROC_REF(make_noises_and_pain), victim, user, tat_loc, part), next_time) /obj/item/storage/backpack/debug_tattoo name = "Bag of Gunstuff 4 tattoos" diff --git a/code/datums/tgs_event_handler.dm b/code/datums/tgs_event_handler.dm index bec98ccd81d..bdf36040363 100644 --- a/code/datums/tgs_event_handler.dm +++ b/code/datums/tgs_event_handler.dm @@ -23,7 +23,7 @@ to_chat(world, span_boldannounce("Server updated, changes will be applied on the next round...")) if(TGS_EVENT_WATCHDOG_DETACH) message_admins("TGS restarting...") - reattach_timer = addtimer(CALLBACK(src, .proc/LateOnReattach), 1 MINUTES) + reattach_timer = addtimer(CALLBACK(src,PROC_REF(LateOnReattach)), 1 MINUTES) if(TGS_EVENT_WATCHDOG_REATTACH) var/datum/tgs_version/old_version = world.TgsVersion() var/datum/tgs_version/new_version = args[2] diff --git a/code/datums/traits/_quirk.dm b/code/datums/traits/_quirk.dm index c56d8e06c7f..e00aa35000a 100644 --- a/code/datums/traits/_quirk.dm +++ b/code/datums/traits/_quirk.dm @@ -53,7 +53,7 @@ add() if(spawn_effects) on_spawn() - addtimer(CALLBACK(src, .proc/post_add), 30) + addtimer(CALLBACK(src,PROC_REF(post_add)), 30) /datum/quirk/Destroy() if(reference) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index fc29e944bb8..2462748bdce 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -456,8 +456,8 @@ GLOBAL_LIST_EMPTY(family_heirlooms) var/dumb_thing = TRUE /datum/quirk/social_anxiety/add() - RegisterSignal(quirk_holder, COMSIG_MOB_EYECONTACT, .proc/eye_contact) - // RegisterSignal(quirk_holder, COMSIG_MOB_EXAMINATE, .proc/looks_at_floor) + RegisterSignal(quirk_holder, COMSIG_MOB_EYECONTACT,PROC_REF(eye_contact)) + // RegisterSignal(quirk_holder, COMSIG_MOB_EXAMINATE,PROC_REF(looks_at_floor)) /datum/quirk/social_anxiety/remove() if(!quirk_holder) diff --git a/code/datums/weather/weather.dm b/code/datums/weather/weather.dm index 31d9f5418d1..deaf65eea6c 100644 --- a/code/datums/weather/weather.dm +++ b/code/datums/weather/weather.dm @@ -142,7 +142,7 @@ START_PROCESSING(SSweather, src) //The reason this doesn't start and stop at main stage is because processing list is also used to see active running weathers (for example, you wouldn't want two ash storms starting at once.) update_areas() alert_players(telegraph_message, telegraph_sound) - addtimer(CALLBACK(src, .proc/start), telegraph_duration) + addtimer(CALLBACK(src,PROC_REF(start)), telegraph_duration) /** * Starts the actual weather and effects from it @@ -157,7 +157,7 @@ stage = MAIN_STAGE update_areas() alert_players(weather_message, weather_sound) - addtimer(CALLBACK(src, .proc/wind_down), weather_duration) + addtimer(CALLBACK(src,PROC_REF(wind_down)), weather_duration) sound_ao?.start() sound_ai?.start() for(var/P in GLOB.player_list) @@ -176,7 +176,7 @@ stage = WIND_DOWN_STAGE update_areas() alert_players(end_message, end_sound) - addtimer(CALLBACK(src, .proc/end), end_duration) + addtimer(CALLBACK(src,PROC_REF(end)), end_duration) /datum/weather/proc/alert_players(message, sound_play) if(!message && !sound_play) diff --git a/code/datums/wounds/bleed.dm b/code/datums/wounds/bleed.dm index ebfe09638cf..936f7f53f7c 100644 --- a/code/datums/wounds/bleed.dm +++ b/code/datums/wounds/bleed.dm @@ -346,7 +346,7 @@ /datum/wound/bleed/proc/las_cauterize(obj/item/gun/energy/laser/lasgun, mob/user) var/self_penalty_mult = (user == victim ? 1.25 : 1) user.visible_message(span_warning("[user] begins aiming [lasgun] directly at [victim]'s [limb.name]..."), span_userdanger("You begin aiming [lasgun] directly at [user == victim ? "your" : "[victim]'s"] [limb.name]...")) - if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) + if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src,PROC_REF(still_exists)))) return var/damage = lasgun.chambered.BB.damage lasgun.chambered.BB.wound_bonus -= 30 @@ -362,7 +362,7 @@ var/self_penalty_mult = (user == victim ? 1.2 : 1) user.visible_message(span_notice("[user] begins stitching [victim]'s [limb.name] with [I]..."), span_notice("You begin stitching [user == victim ? "your" : "[victim]'s"] [limb.name] with [I]...")) - if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) + if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src,PROC_REF(still_exists)))) return user.visible_message(span_green("[user] stitches up some of the bleeding on [victim]."), span_green("You stitch up some of the bleeding on [user == victim ? "yourself" : "[victim]"].")) var/blood_sutured = I.is_bandage / self_penalty_mult @@ -382,7 +382,7 @@ return var/self_penalty_mult = (user == victim ? 1.5 : 1) user.visible_message(span_danger("[user] begins cauterizing [victim]'s [limb.name] with [I]..."), span_danger("You begin cauterizing [user == victim ? "your" : "[victim]'s"] [limb.name] with [I]...")) - if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src, .proc/still_exists))) + if(!do_after(user, base_treat_time * self_penalty_mult, target=victim, extra_checks = CALLBACK(src,PROC_REF(still_exists)))) return user.visible_message(span_green("[user] cauterizes some of the bleeding on [victim]."), span_green("You cauterize some of the bleeding on [victim].")) @@ -417,7 +417,7 @@ user.visible_message(span_notice("[user] begins licking the wounds on [victim]'s [limb.name]."), span_notice("You begin licking the wounds on [victim]'s [limb.name]..."), ignored_mobs=victim) to_chat(victim, "[user] begins to lick the wounds on your [limb.name]. highest.layer) highest = hurt_atom - INVOKE_ASYNC(src, .proc/SpinAnimation, 5, 2) + INVOKE_ASYNC(src,PROC_REF(SpinAnimation), 5, 2) return TRUE /* diff --git a/code/game/atoms_movement.dm b/code/game/atoms_movement.dm index fb95c6251dc..10a4bb2f0c3 100644 --- a/code/game/atoms_movement.dm +++ b/code/game/atoms_movement.dm @@ -383,7 +383,7 @@ ///allows this movable to know when it has "entered" another area no matter how many movable atoms its stuffed into, uses important_recursive_contents /atom/movable/proc/become_area_sensitive(trait_source = TRAIT_GENERIC) if(!HAS_TRAIT(src, TRAIT_AREA_SENSITIVE)) - //RegisterSignal(src, SIGNAL_REMOVETRAIT(TRAIT_AREA_SENSITIVE), .proc/on_area_sensitive_trait_loss) + //RegisterSignal(src, SIGNAL_REMOVETRAIT(TRAIT_AREA_SENSITIVE),PROC_REF(on_area_sensitive_trait_loss)) for(var/atom/movable/location as anything in get_nested_locs(src) + src) LAZYADDASSOCLIST(location.important_recursive_contents, RECURSIVE_CONTENTS_AREA_SENSITIVE, src) ADD_TRAIT(src, TRAIT_AREA_SENSITIVE, trait_source) diff --git a/code/game/gamemodes/dynamic/dynamic_hijacking.dm b/code/game/gamemodes/dynamic/dynamic_hijacking.dm index 04892ad1530..12bb407f12b 100644 --- a/code/game/gamemodes/dynamic/dynamic_hijacking.dm +++ b/code/game/gamemodes/dynamic/dynamic_hijacking.dm @@ -1,5 +1,5 @@ /datum/game_mode/dynamic/proc/setup_hijacking() - RegisterSignal(SSdcs, COMSIG_GLOB_PRE_RANDOM_EVENT, .proc/on_pre_random_event) + RegisterSignal(SSdcs, COMSIG_GLOB_PRE_RANDOM_EVENT,PROC_REF(on_pre_random_event)) /datum/game_mode/dynamic/proc/on_pre_random_event(datum/source, datum/round_event_control/round_event_control) SIGNAL_HANDLER diff --git a/code/game/gamemodes/dynamic/ruleset_picking.dm b/code/game/gamemodes/dynamic/ruleset_picking.dm index 7c87f1bc82b..749c06132ba 100644 --- a/code/game/gamemodes/dynamic/ruleset_picking.dm +++ b/code/game/gamemodes/dynamic/ruleset_picking.dm @@ -37,7 +37,7 @@ current_midround_rulesets = drafted_rules - rule midround_injection_timer_id = addtimer( - CALLBACK(src, .proc/execute_midround_rule, rule), \ + CALLBACK(src,PROC_REF(execute_midround_rule), rule), \ ADMIN_CANCEL_MIDROUND_TIME, \ TIMER_STOPPABLE, \ ) @@ -53,7 +53,7 @@ midround_injection_timer_id = null if (!rule.repeatable) midround_rules = remove_from_list(midround_rules, rule.type) - addtimer(CALLBACK(src, .proc/execute_midround_latejoin_rule, rule), rule.delay) + addtimer(CALLBACK(src,PROC_REF(execute_midround_latejoin_rule), rule), rule.delay) /// Executes a random latejoin ruleset from the list of drafted rules. /datum/game_mode/dynamic/proc/pick_latejoin_rule(list/drafted_rules) @@ -62,7 +62,7 @@ return if (!rule.repeatable) latejoin_rules = remove_from_list(latejoin_rules, rule.type) - addtimer(CALLBACK(src, .proc/execute_midround_latejoin_rule, rule), rule.delay) + addtimer(CALLBACK(src,PROC_REF(execute_midround_latejoin_rule), rule), rule.delay) return TRUE /// Mainly here to facilitate delayed rulesets. All midround/latejoin rulesets are executed with a timered callback to this proc. diff --git a/code/game/gamemodes/end_of_round_deathmatch.dm b/code/game/gamemodes/end_of_round_deathmatch.dm index dc7e8c361e6..ef603001bbd 100644 --- a/code/game/gamemodes/end_of_round_deathmatch.dm +++ b/code/game/gamemodes/end_of_round_deathmatch.dm @@ -65,7 +65,7 @@ GLOBAL_LIST_INIT(eord_arsenal, list( /datum/controller/subsystem/ticker/proc/end_of_round_deathmatch() - RegisterSignal(SSdcs, COMSIG_GLOB_MOB_LOGIN, .proc/grant_eord_respawn) // New mobs can now respawn into EORD + RegisterSignal(SSdcs, COMSIG_GLOB_MOB_LOGIN,PROC_REF(grant_eord_respawn)) // New mobs can now respawn into EORD var/list/spawns = GLOB.deathmatch_spawn_points.Copy() if(!length(spawns)) diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 3e242a63022..90e41961597 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -106,7 +106,7 @@ query_round_game_mode.Execute() qdel(query_round_game_mode) if(report) - addtimer(CALLBACK(src, .proc/send_intercept, 0), rand(waittime_l, waittime_h)) + addtimer(CALLBACK(src,PROC_REF(send_intercept), 0), rand(waittime_l, waittime_h)) generate_station_goals() gamemode_ready = TRUE return 1 diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 4833ea54d70..6bc605ad2a2 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -149,7 +149,7 @@ Class Procs: circuit = new circuit circuit.apply_default_parts(src) power_change() - RegisterSignal(src, COMSIG_ENTER_AREA, .proc/power_change) + RegisterSignal(src, COMSIG_ENTER_AREA,PROC_REF(power_change)) if (occupant_typecache) occupant_typecache = typecacheof(occupant_typecache) @@ -454,7 +454,7 @@ Class Procs: I.play_tool_sound(src, 50) var/prev_anchored = anchored //as long as we're the same anchored state and we're either on a floor or are anchored, toggle our anchored state - if(I.use_tool(src, user, time, extra_checks = CALLBACK(src, .proc/unfasten_wrench_check, prev_anchored, user))) + if(I.use_tool(src, user, time, extra_checks = CALLBACK(src,PROC_REF(unfasten_wrench_check), prev_anchored, user))) to_chat(user, span_notice("You [anchored ? "un" : ""]secure [src].")) setAnchored(!anchored) playsound(src, 'sound/items/deconstruct.ogg', 50, 1) diff --git a/code/game/machinery/ai_slipper.dm b/code/game/machinery/ai_slipper.dm index 2d4131ca06c..6e51166fe16 100644 --- a/code/game/machinery/ai_slipper.dm +++ b/code/game/machinery/ai_slipper.dm @@ -45,4 +45,4 @@ to_chat(user, span_notice("You activate [src]. It now has [uses] uses of foam remaining.")) cooldown = world.time + cooldown_time power_change() - addtimer(CALLBACK(src, .proc/power_change), cooldown_time) + addtimer(CALLBACK(src,PROC_REF(power_change)), cooldown_time) diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index d253fa4abea..28e7ba35c58 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -69,7 +69,7 @@ matching_designs = list() /obj/machinery/autolathe/ComponentInitialize() - AddComponent(/datum/component/material_container, SSmaterials.materialtypes_by_category[MAT_CATEGORY_RIGID], 0, TRUE, null, null, CALLBACK(src, .proc/AfterMaterialInsert)) + AddComponent(/datum/component/material_container, SSmaterials.materialtypes_by_category[MAT_CATEGORY_RIGID], 0, TRUE, null, null, CALLBACK(src,PROC_REF(AfterMaterialInsert))) /obj/machinery/autolathe/Destroy() QDEL_NULL(wires) @@ -265,7 +265,7 @@ use_power(power) icon_state = "autolathe_n" var/time = is_stack ? 32 : (32 * coeff * multiplier) ** 0.8 - addtimer(CALLBACK(src, .proc/make_item, power, materials_used, custom_materials, multiplier, coeff, is_stack, usr), time) + addtimer(CALLBACK(src,PROC_REF(make_item), power, materials_used, custom_materials, multiplier, coeff, is_stack, usr), time) . = TRUE else to_chat(usr, span_alert("Not enough materials for this operation.")) @@ -481,7 +481,7 @@ /obj/machinery/autolathe/ComponentInitialize() var/list/extra_mats = list(/datum/material/plastic) - AddComponent(/datum/component/material_container, SSmaterials.materialtypes_by_category[MAT_CATEGORY_RIGID] + extra_mats, 0, TRUE, null, null, CALLBACK(src, .proc/AfterMaterialInsert)) + AddComponent(/datum/component/material_container, SSmaterials.materialtypes_by_category[MAT_CATEGORY_RIGID] + extra_mats, 0, TRUE, null, null, CALLBACK(src,PROC_REF(AfterMaterialInsert))) /obj/machinery/autolathe/constructionlathe name = "Workshop" diff --git a/code/game/machinery/camera/camera.dm b/code/game/machinery/camera/camera.dm index f3cc0e26a98..5522192bc93 100644 --- a/code/game/machinery/camera/camera.dm +++ b/code/game/machinery/camera/camera.dm @@ -117,7 +117,7 @@ if(can_use()) GLOB.cameranet.addCamera(src) emped = 0 //Resets the consecutive EMP count - addtimer(CALLBACK(src, .proc/cancelCameraAlarm), 100) + addtimer(CALLBACK(src,PROC_REF(cancelCameraAlarm)), 100) for(var/i in GLOB.player_list) var/mob/M = i if (M.client.eye == src) @@ -325,7 +325,7 @@ change_msg = "reactivates" triggerCameraAlarm() if(!QDELETED(src)) //We'll be doing it anyway in destroy - addtimer(CALLBACK(src, .proc/cancelCameraAlarm), 100) + addtimer(CALLBACK(src,PROC_REF(cancelCameraAlarm)), 100) if(displaymessage) if(user) visible_message(span_danger("[user] [change_msg] [src]!")) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 59c3cff8d5d..c2ed6b9ebf2 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -135,7 +135,7 @@ if(!G) return FALSE if(clonemind.damnation_type) //Can't clone the damned. - INVOKE_ASYNC(src, .proc/horrifyingsound) + INVOKE_ASYNC(src,PROC_REF(horrifyingsound)) mess = TRUE update_icon() return FALSE diff --git a/code/game/machinery/colormate.dm b/code/game/machinery/colormate.dm index ae8ad8e392c..3960517ef05 100644 --- a/code/game/machinery/colormate.dm +++ b/code/game/machinery/colormate.dm @@ -91,7 +91,7 @@ return if(user) visible_message(span_warning("[user] stuffs [victim] into [src]!")) - RegisterSignal(victim, COMSIG_LIVING_RESIST, .proc/free_me) + RegisterSignal(victim, COMSIG_LIVING_RESIST,PROC_REF(free_me)) inserted = victim inserted.forceMove(src) diff --git a/code/game/machinery/computer/_computer.dm b/code/game/machinery/computer/_computer.dm index 7776f0a36e4..3fd3f6aad09 100644 --- a/code/game/machinery/computer/_computer.dm +++ b/code/game/machinery/computer/_computer.dm @@ -21,7 +21,7 @@ /obj/machinery/computer/Initialize(mapload, obj/item/circuitboard/C) . = ..() for(var/obj/machinery/computer/pickComputer in range(1, src)) - addtimer(CALLBACK(pickComputer, .proc/why_overlays), 5) + addtimer(CALLBACK(pickComputer,PROC_REF(why_overlays)), 5) power_change() if(!QDELETED(C)) qdel(circuit) @@ -31,7 +31,7 @@ /obj/machinery/computer/Destroy() QDEL_NULL(circuit) for(var/obj/machinery/computer/pickComputer in range(1, src)) - addtimer(CALLBACK(pickComputer, .proc/why_overlays), 5) + addtimer(CALLBACK(pickComputer,PROC_REF(why_overlays)), 5) return ..() /obj/machinery/computer/process() @@ -169,5 +169,5 @@ for(var/obj/C in src) C.forceMove(loc) for(var/obj/machinery/computer/pickComputer in range(1, src)) - addtimer(CALLBACK(pickComputer, .proc/why_overlays), 5) + addtimer(CALLBACK(pickComputer,PROC_REF(why_overlays)), 5) qdel(src) diff --git a/code/game/machinery/computer/apc_control.dm b/code/game/machinery/computer/apc_control.dm index 46c03f38176..20631847238 100644 --- a/code/game/machinery/computer/apc_control.dm +++ b/code/game/machinery/computer/apc_control.dm @@ -112,7 +112,7 @@ log_game("[key_name(operator)] set the logs of [src] in [AREACOORD(src)] [should_log ? "On" : "Off"]") if("restore-console") restoring = TRUE - addtimer(CALLBACK(src, .proc/restore_comp), rand(3,5) * 9) + addtimer(CALLBACK(src,PROC_REF(restore_comp)), rand(3,5) * 9) if("access-apc") var/ref = params["ref"] playsound(src, "terminal_type", 50, FALSE) diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index e6b11cf1020..13498e9d6b8 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -72,7 +72,7 @@ if(!P.tool_start_check(user, amount=5)) return to_chat(user, span_notice("You start adding cables to the frame...")) - if(P.use_tool(src, user, 20, 5, 50, CALLBACK(src, .proc/check_state, 2))) + if(P.use_tool(src, user, 20, 5, 50, CALLBACK(src,PROC_REF(check_state), 2))) to_chat(user, span_notice("You add cables to the frame.")) state = 3 icon_state = "3" @@ -92,7 +92,7 @@ return playsound(src, 'sound/items/deconstruct.ogg', 50, 1) to_chat(user, span_notice("You start to put in the glass panel...")) - if(P.use_tool(src, user, 20, 2, 0, CALLBACK(src, .proc/check_state, 3))) + if(P.use_tool(src, user, 20, 2, 0, CALLBACK(src,PROC_REF(check_state), 3))) to_chat(user, span_notice("You put in the glass panel.")) state = 4 src.icon_state = "4" diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index e66cee3e15a..9c40584735d 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -252,7 +252,7 @@ /obj/machinery/computer/security/telescreen/entertainment/Initialize() . = ..() - RegisterSignal(src, COMSIG_CLICK, .proc/BigClick) + RegisterSignal(src, COMSIG_CLICK,PROC_REF(BigClick)) // Bypass clickchain to allow humans to use the telescreen from a distance /obj/machinery/computer/security/telescreen/entertainment/proc/BigClick() diff --git a/code/game/machinery/computer/cloning.dm b/code/game/machinery/computer/cloning.dm index fdf999b00f1..795fd96811b 100644 --- a/code/game/machinery/computer/cloning.dm +++ b/code/game/machinery/computer/cloning.dm @@ -315,7 +315,7 @@ say("Initiating scan...") var/prev_locked = scanner.locked scanner.locked = TRUE - addtimer(CALLBACK(src, .proc/finish_scan, scanner.occupant, prev_locked), 2 SECONDS) + addtimer(CALLBACK(src,PROC_REF(finish_scan), scanner.occupant, prev_locked), 2 SECONDS) . = TRUE //No locking an open scanner. diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index c32aab8e367..c4e0240df4e 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -2026,7 +2026,7 @@ connected_scanner.set_linked_console(null) connected_scanner = new_scanner if(connected_scanner) - RegisterSignal(connected_scanner, COMSIG_PARENT_QDELETING, .proc/react_to_scanner_del) + RegisterSignal(connected_scanner, COMSIG_PARENT_QDELETING,PROC_REF(react_to_scanner_del)) connected_scanner.set_linked_console(src) /obj/machinery/computer/scan_consolenew/proc/react_to_scanner_del(datum/source) diff --git a/code/game/machinery/computer/gulag_teleporter.dm b/code/game/machinery/computer/gulag_teleporter.dm index cafd0ba7022..d30825016ec 100644 --- a/code/game/machinery/computer/gulag_teleporter.dm +++ b/code/game/machinery/computer/gulag_teleporter.dm @@ -122,7 +122,7 @@ if("teleport") if(!teleporter || !beacon) return - addtimer(CALLBACK(src, .proc/teleport, usr), 5) + addtimer(CALLBACK(src,PROC_REF(teleport), usr), 5) /obj/machinery/computer/gulag_teleporter_computer/proc/scan_machinery() teleporter = findteleporter() diff --git a/code/game/machinery/computer/prisoner/gulag_teleporter.dm b/code/game/machinery/computer/prisoner/gulag_teleporter.dm index dcad3257ea2..3d41d609440 100644 --- a/code/game/machinery/computer/prisoner/gulag_teleporter.dm +++ b/code/game/machinery/computer/prisoner/gulag_teleporter.dm @@ -111,7 +111,7 @@ if("teleport") if(!teleporter || !beacon) return - addtimer(CALLBACK(src, .proc/teleport, usr), 5) + addtimer(CALLBACK(src,PROC_REF(teleport), usr), 5) return TRUE /obj/machinery/computer/prisoner/gulag_teleporter_computer/proc/scan_machinery() diff --git a/code/game/machinery/computer/teleporter.dm b/code/game/machinery/computer/teleporter.dm index ae12df6697b..668ca41b0d5 100644 --- a/code/game/machinery/computer/teleporter.dm +++ b/code/game/machinery/computer/teleporter.dm @@ -90,7 +90,7 @@ say("Processing hub calibration to target...") calibrating = TRUE power_station.update_icon() - addtimer(CALLBACK(src, .proc/finish_calibration), 50 * (3 - power_station.teleporter_hub.accuracy)) //Better parts mean faster calibration + addtimer(CALLBACK(src,PROC_REF(finish_calibration)), 50 * (3 - power_station.teleporter_hub.accuracy)) //Better parts mean faster calibration . = TRUE /obj/machinery/computer/teleporter/proc/finish_calibration() @@ -150,7 +150,7 @@ var/mob/living/M = target var/obj/item/implant/tracking/I = locate() in M.implants if(I) - RegisterSignal(I, COMSIG_IMPLANT_REMOVING, .proc/untarget_implant) + RegisterSignal(I, COMSIG_IMPLANT_REMOVING,PROC_REF(untarget_implant)) imp_t = I else target = null diff --git a/code/game/machinery/dance_machine.dm b/code/game/machinery/dance_machine.dm index 39053af69fe..ba15ae17e68 100644 --- a/code/game/machinery/dance_machine.dm +++ b/code/game/machinery/dance_machine.dm @@ -298,7 +298,7 @@ glow.update_light() continue if(prob(2)) // Unique effects for the dance floor that show up randomly to mix things up - INVOKE_ASYNC(src, .proc/hierofunk) + INVOKE_ASYNC(src,PROC_REF(hierofunk)) sleep(selection.song_beat) #undef DISCO_INFENO_RANGE diff --git a/code/game/machinery/dna_scanner.dm b/code/game/machinery/dna_scanner.dm index ee5d4875fbb..2575b5e1cea 100644 --- a/code/game/machinery/dna_scanner.dm +++ b/code/game/machinery/dna_scanner.dm @@ -161,7 +161,7 @@ UnregisterSignal(linked_console, COMSIG_PARENT_QDELETING) linked_console = new_console if(linked_console) - RegisterSignal(linked_console, COMSIG_PARENT_QDELETING, .proc/react_to_console_del) + RegisterSignal(linked_console, COMSIG_PARENT_QDELETING,PROC_REF(react_to_console_del)) /obj/machinery/dna_scannernew/proc/react_to_console_del(datum/source) SIGNAL_HANDLER diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 81fb77cca22..13fe52db811 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -222,9 +222,9 @@ return if(density) - INVOKE_ASYNC(src, .proc/open) + INVOKE_ASYNC(src,PROC_REF(open)) else - INVOKE_ASYNC(src, .proc/close) + INVOKE_ASYNC(src,PROC_REF(close)) if("bolt") if(command_value == "on" && locked) @@ -344,7 +344,7 @@ if(cyclelinkedairlock.operating) cyclelinkedairlock.delayed_close_requested = TRUE else - addtimer(CALLBACK(cyclelinkedairlock, .proc/close), 2) + addtimer(CALLBACK(cyclelinkedairlock,PROC_REF(close)), 2) ..() /obj/machinery/door/airlock/proc/isElectrified() @@ -401,7 +401,7 @@ secondsBackupPowerLost = 10 if(!spawnPowerRestoreRunning) spawnPowerRestoreRunning = TRUE - INVOKE_ASYNC(src, .proc/handlePowerRestore) + INVOKE_ASYNC(src,PROC_REF(handlePowerRestore)) update_icon() /obj/machinery/door/airlock/proc/loseBackupPower() @@ -409,7 +409,7 @@ src.secondsBackupPowerLost = 60 if(!spawnPowerRestoreRunning) spawnPowerRestoreRunning = TRUE - INVOKE_ASYNC(src, .proc/handlePowerRestore) + INVOKE_ASYNC(src,PROC_REF(handlePowerRestore)) update_icon() /obj/machinery/door/airlock/proc/regainBackupPower() @@ -1013,7 +1013,7 @@ user.visible_message("[user] is [welded ? "unwelding":"welding"] the airlock.", \ span_notice("You begin [welded ? "unwelding":"welding"] the airlock..."), \ span_italic("You hear welding.")) - if(W.use_tool(src, user, 40, volume=50, extra_checks = CALLBACK(src, .proc/weld_checks, W, user))) + if(W.use_tool(src, user, 40, volume=50, extra_checks = CALLBACK(src,PROC_REF(weld_checks), W, user))) welded = !welded user.visible_message("[user.name] has [welded? "welded shut":"unwelded"] [src].", \ span_notice("You [welded ? "weld the airlock shut":"unweld the airlock"].")) @@ -1025,7 +1025,7 @@ user.visible_message("[user] is welding the airlock.", \ span_notice("You begin repairing the airlock..."), \ span_italic("You hear welding.")) - if(W.use_tool(src, user, 40, volume=50, extra_checks = CALLBACK(src, .proc/weld_checks, W, user))) + if(W.use_tool(src, user, 40, volume=50, extra_checks = CALLBACK(src,PROC_REF(weld_checks), W, user))) obj_integrity = max_integrity stat &= ~BROKEN user.visible_message("[user.name] has repaired [src].", \ @@ -1071,9 +1071,9 @@ if(!axe.wielded) to_chat(user, span_warning("You need to be wielding \the [axe] to do that!")) return - INVOKE_ASYNC(src, (density ? .proc/open : .proc/close), 2) + INVOKE_ASYNC(src, (density ? .proc/open :PROC_REF(close)), 2) else - INVOKE_ASYNC(src, (density ? .proc/open : .proc/close), 2) + INVOKE_ASYNC(src, (density ? .proc/open :PROC_REF(close)), 2) if(istype(I, /obj/item/crowbar/power)) if(hasPower() && isElectrified()) @@ -1150,7 +1150,7 @@ operating = FALSE if(delayed_close_requested) delayed_close_requested = FALSE - addtimer(CALLBACK(src, .proc/close), 1) + addtimer(CALLBACK(src,PROC_REF(close)), 1) return TRUE @@ -1299,7 +1299,7 @@ return operating = TRUE update_icon(AIRLOCK_EMAG, 1) - addtimer(CALLBACK(src, .proc/open_sesame), 6) + addtimer(CALLBACK(src,PROC_REF(open_sesame)), 6) return TRUE /obj/machinery/door/airlock/proc/open_sesame() @@ -1368,7 +1368,7 @@ secondsElectrified = seconds diag_hud_set_electrified() if(secondsElectrified > NOT_ELECTRIFIED) - INVOKE_ASYNC(src, .proc/electrified_loop) + INVOKE_ASYNC(src,PROC_REF(electrified_loop)) if(user) var/message diff --git a/code/game/machinery/doors/alarmlock.dm b/code/game/machinery/doors/alarmlock.dm index fa516f4b6b5..ead50ad5ea4 100644 --- a/code/game/machinery/doors/alarmlock.dm +++ b/code/game/machinery/doors/alarmlock.dm @@ -23,7 +23,7 @@ . = ..() SSradio.remove_object(src, air_frequency) air_connection = SSradio.add_object(src, air_frequency, RADIO_TO_AIRALARM) - INVOKE_ASYNC(src, .proc/open) + INVOKE_ASYNC(src,PROC_REF(open)) /obj/machinery/door/airlock/alarmlock/receive_signal(datum/signal/signal) ..() diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 81aa30435a4..fddff10c093 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -369,7 +369,7 @@ if (. & EMP_PROTECT_SELF) return if(prob(severity/5) && (istype(src, /obj/machinery/door/airlock) || istype(src, /obj/machinery/door/window)) ) - INVOKE_ASYNC(src, .proc/open) + INVOKE_ASYNC(src,PROC_REF(open)) /obj/machinery/door/proc/unelectrify() secondsElectrified = MACHINE_NOT_ELECTRIFIED @@ -490,7 +490,7 @@ close() /obj/machinery/door/proc/autoclose_in(wait) - addtimer(CALLBACK(src, .proc/autoclose), wait, TIMER_UNIQUE | TIMER_NO_HASH_WAIT | TIMER_OVERRIDE) + addtimer(CALLBACK(src,PROC_REF(autoclose)), wait, TIMER_UNIQUE | TIMER_NO_HASH_WAIT | TIMER_OVERRIDE) /obj/machinery/door/proc/requiresID() return 1 diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm index 76100125ab8..3fde918351f 100644 --- a/code/game/machinery/doors/poddoor.dm +++ b/code/game/machinery/doors/poddoor.dm @@ -100,9 +100,9 @@ /obj/machinery/door/poddoor/shuttledock/proc/check() var/turf/T = get_step(src, checkdir) if(!istype(T, turftype)) - INVOKE_ASYNC(src, .proc/open) + INVOKE_ASYNC(src,PROC_REF(open)) else - INVOKE_ASYNC(src, .proc/close) + INVOKE_ASYNC(src,PROC_REF(close)) /obj/machinery/door/poddoor/incinerator_toxmix name = "combustion chamber vent" diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 242608ab0cd..149fce7d606 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -51,7 +51,7 @@ src.unres_sides = unres_sides var/static/list/loc_connections = list( - COMSIG_ATOM_EXIT = .proc/on_exit, + COMSIG_ATOM_EXIT =PROC_REF(on_exit), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -367,11 +367,11 @@ return if(density) - INVOKE_ASYNC(src, .proc/open) + INVOKE_ASYNC(src,PROC_REF(open)) else - INVOKE_ASYNC(src, .proc/close) + INVOKE_ASYNC(src,PROC_REF(close)) if("touch") - INVOKE_ASYNC(src, .proc/open_and_close) + INVOKE_ASYNC(src,PROC_REF(open_and_close)) /obj/machinery/door/window/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) switch(the_rcd.mode) diff --git a/code/game/machinery/embedded_controller/embedded_controller_base.dm b/code/game/machinery/embedded_controller/embedded_controller_base.dm index 888b67f3440..aaf39059617 100644 --- a/code/game/machinery/embedded_controller/embedded_controller_base.dm +++ b/code/game/machinery/embedded_controller/embedded_controller_base.dm @@ -61,7 +61,7 @@ addtimer(CALLBACK(program, /datum/computer/file/embedded_program.proc/process), 5) usr.set_machine(src) - addtimer(CALLBACK(src, .proc/updateDialog), 5) + addtimer(CALLBACK(src,PROC_REF(updateDialog)), 5) /obj/machinery/embedded_controller/process() if(program) diff --git a/code/game/machinery/exp_cloner.dm b/code/game/machinery/exp_cloner.dm index 1483228e250..2e71b0a1f9a 100644 --- a/code/game/machinery/exp_cloner.dm +++ b/code/game/machinery/exp_cloner.dm @@ -50,10 +50,10 @@ H.faction |= factions H.Unconscious(80) - RegisterSignal(src, COMSIG_NOTIFY_JOIN, .proc/join_as_defective_clone) + RegisterSignal(src, COMSIG_NOTIFY_JOIN,PROC_REF(join_as_defective_clone)) notify_ghosts("[clonename] is available to play as a defective clone.", source = src, action = NOTIFY_JOIN, flashwindow = FALSE) - addtimer(CALLBACK(src, .proc/finish_cloning), 30 SECONDS) + addtimer(CALLBACK(src,PROC_REF(finish_cloning)), 30 SECONDS) return TRUE diff --git a/code/game/machinery/harvester.dm b/code/game/machinery/harvester.dm index 32d5f891ead..a24eb22bfb2 100644 --- a/code/game/machinery/harvester.dm +++ b/code/game/machinery/harvester.dm @@ -97,7 +97,7 @@ visible_message(span_notice("The [name] begins warming up!")) say("Initializing harvest protocol.") update_icon() - addtimer(CALLBACK(src, .proc/harvest), interval) + addtimer(CALLBACK(src,PROC_REF(harvest)), interval) /obj/machinery/harvester/proc/harvest() warming_up = FALSE @@ -132,7 +132,7 @@ operation_order.Remove(BP) break use_power(5000) - addtimer(CALLBACK(src, .proc/harvest), interval) + addtimer(CALLBACK(src,PROC_REF(harvest)), interval) /obj/machinery/harvester/proc/end_harvesting() warming_up = FALSE diff --git a/code/game/machinery/hypnochair.dm b/code/game/machinery/hypnochair.dm index c2edc26b474..93d2dcca657 100644 --- a/code/game/machinery/hypnochair.dm +++ b/code/game/machinery/hypnochair.dm @@ -95,7 +95,7 @@ START_PROCESSING(SSobj, src) start_time = world.time update_icon() - timerid = addtimer(CALLBACK(src, .proc/finish_interrogation), 450, TIMER_STOPPABLE) + timerid = addtimer(CALLBACK(src,PROC_REF(finish_interrogation)), 450, TIMER_STOPPABLE) /obj/machinery/hypnochair/process() var/mob/living/carbon/C = occupant diff --git a/code/game/machinery/limbgrower.dm b/code/game/machinery/limbgrower.dm index b32ae66e41c..1f7be011c56 100644 --- a/code/game/machinery/limbgrower.dm +++ b/code/game/machinery/limbgrower.dm @@ -109,7 +109,7 @@ use_power(power) flick("limbgrower_fill",src) icon_state = "limbgrower_idleon" - addtimer(CALLBACK(src, .proc/build_item),32*prod_coeff) + addtimer(CALLBACK(src,PROC_REF(build_item),32*prod_coeff)) else to_chat(usr, "The limb grower is busy. Please wait for completion of previous operation.") diff --git a/code/game/machinery/magnet.dm b/code/game/machinery/magnet.dm index c4494b822fe..0253d8fe713 100644 --- a/code/game/machinery/magnet.dm +++ b/code/game/machinery/magnet.dm @@ -129,7 +129,7 @@ on = !on if(on) - INVOKE_ASYNC(src, .proc/magnetic_process) + INVOKE_ASYNC(src,PROC_REF(magnetic_process)) @@ -316,7 +316,7 @@ if("togglemoving") moving = !moving if(moving) - INVOKE_ASYNC(src, .proc/MagnetMove) + INVOKE_ASYNC(src,PROC_REF(MagnetMove)) updateUsrDialog() diff --git a/code/game/machinery/mass_driver.dm b/code/game/machinery/mass_driver.dm index e09348d0e43..37a4599a2ba 100644 --- a/code/game/machinery/mass_driver.dm +++ b/code/game/machinery/mass_driver.dm @@ -47,7 +47,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -57,4 +57,4 @@ if(isliving(AM)) var/mob/living/L = AM to_chat(L, span_warning("You feel something click beneath you!")) - addtimer(CALLBACK(src, .proc/drive), drive_delay) + addtimer(CALLBACK(src,PROC_REF(drive)), drive_delay) diff --git a/code/game/machinery/obstacles_barricades.dm b/code/game/machinery/obstacles_barricades.dm index 997a7005e4a..96ffb0fa0e1 100644 --- a/code/game/machinery/obstacles_barricades.dm +++ b/code/game/machinery/obstacles_barricades.dm @@ -159,7 +159,7 @@ /obj/structure/barricade/security/Initialize() . = ..() - addtimer(CALLBACK(src, .proc/deploy), deploy_time) + addtimer(CALLBACK(src,PROC_REF(deploy)), deploy_time) /obj/structure/barricade/security/proc/deploy() icon_state = "barrier1" @@ -243,7 +243,7 @@ "Interior Wall" = image(icon = 'icons/fallout/turfs/walls/interior.dmi', icon_state = "interior0"), "House Wall" = image(icon = 'icons/fallout/turfs/walls/house.dmi', icon_state = "house0") ) - var/chosen_wall = show_radial_menu(user, src, walls, custom_check = CALLBACK(src, .proc/check_menu, user, I), require_near = TRUE, tooltips = TRUE) + var/chosen_wall = show_radial_menu(user, src, walls, custom_check = CALLBACK(src,PROC_REF(check_menu), user, I), require_near = TRUE, tooltips = TRUE) if(!check_menu(user, I)) return switch(chosen_wall) @@ -277,7 +277,7 @@ "House Window" = image(icon = 'icons/obj/wood_window.dmi', icon_state = "housewindow"), "Wood Framed Window" = image(icon = 'icons/obj/wood_window.dmi', icon_state = "woodwindow") ) - var/chosen_window = show_radial_menu(user, src, windows, custom_check = CALLBACK(src, .proc/check_menu, user, I), require_near = TRUE, tooltips = TRUE) + var/chosen_window = show_radial_menu(user, src, windows, custom_check = CALLBACK(src,PROC_REF(check_menu), user, I), require_near = TRUE, tooltips = TRUE) if(!check_menu(user, I)) return switch(chosen_window) @@ -304,7 +304,7 @@ "Tent Wall" = image(icon = 'icons/fallout/turfs/walls/tent.dmi', icon_state = "tent0"), "Tent Flaps" = image(icon = 'icons/fallout/structures/doors.dmi', icon_state = "tent") ) - var/chosen_tent = show_radial_menu(user, src, tentwalls, custom_check = CALLBACK(src, .proc/check_menu, user, I), require_near = TRUE, tooltips = TRUE) + var/chosen_tent = show_radial_menu(user, src, tentwalls, custom_check = CALLBACK(src,PROC_REF(check_menu), user, I), require_near = TRUE, tooltips = TRUE) if(!check_menu(user, I)) return switch(chosen_tent) diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 7b47bec54b7..0a89b32b355 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -235,7 +235,7 @@ base.layer = NOT_HIGH_OBJ_LAYER underlays += base if(!has_cover) - INVOKE_ASYNC(src, .proc/popUp) + INVOKE_ASYNC(src,PROC_REF(popUp)) /obj/machinery/porta_turret/proc/toggle_on(set_to) var/current = on @@ -469,7 +469,7 @@ toggle_on(FALSE) //turns off the turret temporarily update_icon() //6 seconds for the traitor to gtfo of the area before the turret decides to ruin his shit - addtimer(CALLBACK(src, .proc/toggle_on, TRUE), 6 SECONDS) + addtimer(CALLBACK(src,PROC_REF(toggle_on), TRUE), 6 SECONDS) //turns it back on. The cover popUp() popDown() are automatically called in process(), no need to define it here /obj/machinery/porta_turret/emp_act(severity) @@ -489,7 +489,7 @@ toggle_on(FALSE) remove_control() - addtimer(CALLBACK(src, .proc/toggle_on, TRUE), rand(60,600)) + addtimer(CALLBACK(src,PROC_REF(toggle_on), TRUE), rand(60,600)) /obj/machinery/porta_turret/take_damage(damage, damage_type = BRUTE, damage_flag = 0, sound_effect = 1, atom/attacked_by) . = ..() @@ -577,16 +577,16 @@ /// We can see our target, start blasting if(activity_state == TURRET_ALERT_MODE) record_target_weakref(GET_WEAKREF(last_target)) // Update our target and turf's position every time we process - INVOKE_ASYNC(src, .proc/shine_laser_pointer) // lazer + INVOKE_ASYNC(src,PROC_REF(shine_laser_pointer)) // lazer if(!can_see_target()) // If we cant see the target, go into caution mode change_activity_state(TURRET_CAUTION_MODE) else - INVOKE_ASYNC(src, .proc/open_fire_on_target) + INVOKE_ASYNC(src,PROC_REF(open_fire_on_target)) /// We lost sight of our target, shoot where we last saw them if(activity_state == TURRET_CAUTION_MODE) - INVOKE_ASYNC(src, .proc/shine_laser_pointer) - INVOKE_ASYNC(src, .proc/open_fire_on_target) + INVOKE_ASYNC(src,PROC_REF(shine_laser_pointer)) + INVOKE_ASYNC(src,PROC_REF(open_fire_on_target)) if(!caution_bursts_left) change_activity_state(TURRET_EVASION_MODE) @@ -1053,7 +1053,7 @@ remove_control() return FALSE log_combat(caller,A,"fired with manual turret control at") - INVOKE_ASYNC(src, .proc/open_fire_on_target, A) + INVOKE_ASYNC(src,PROC_REF(open_fire_on_target), A) return TRUE /obj/machinery/porta_turret/syndicate @@ -1515,11 +1515,11 @@ if(team_color == "blue") if(istype(P, /obj/item/projectile/beam/lasertag/redtag)) toggle_on(FALSE) - addtimer(CALLBACK(src, .proc/toggle_on, TRUE), 10 SECONDS) + addtimer(CALLBACK(src,PROC_REF(toggle_on), TRUE), 10 SECONDS) else if(team_color == "red") if(istype(P, /obj/item/projectile/beam/lasertag/bluetag)) toggle_on(FALSE) - addtimer(CALLBACK(src, .proc/toggle_on, TRUE), 10 SECONDS) + addtimer(CALLBACK(src,PROC_REF(toggle_on), TRUE), 10 SECONDS) /* * * * * * * * * * * * * Fallout 13 turrets * diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index a8e5e8b0490..ae1df29f584 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -26,7 +26,7 @@ req_one_access = get_all_accesses() + get_all_centcom_access() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -105,7 +105,7 @@ /obj/machinery/recycler/proc/on_entered(datum/source, atom/movable/AM) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/eat, AM) + INVOKE_ASYNC(src,PROC_REF(eat), AM) /obj/machinery/recycler/proc/eat(atom/AM0) if(stat & (BROKEN|NOPOWER) || safety_mode) @@ -191,7 +191,7 @@ safety_mode = TRUE update_icon() L.forceMove(loc) - addtimer(CALLBACK(src, .proc/reboot), SAFETY_COOLDOWN) + addtimer(CALLBACK(src,PROC_REF(reboot)), SAFETY_COOLDOWN) /obj/machinery/recycler/proc/reboot() playsound(src, 'sound/machines/ping.ogg', 50, 0) diff --git a/code/game/machinery/requests_console.dm b/code/game/machinery/requests_console.dm index 6da2fc37480..07cb253bc54 100644 --- a/code/game/machinery/requests_console.dm +++ b/code/game/machinery/requests_console.dm @@ -338,7 +338,7 @@ GLOBAL_LIST_EMPTY(allConsoles) Radio.set_frequency(radio_freq) Radio.talk_into(src, "[emergency] emergency in [department]!!", radio_freq) update_icon() - addtimer(CALLBACK(src, .proc/clear_emergency), 5 MINUTES) + addtimer(CALLBACK(src,PROC_REF(clear_emergency)), 5 MINUTES) if(href_list["department"] && message) var/sending = message diff --git a/code/game/machinery/sheetifier.dm b/code/game/machinery/sheetifier.dm index 7b834011940..6605874ea73 100644 --- a/code/game/machinery/sheetifier.dm +++ b/code/game/machinery/sheetifier.dm @@ -13,7 +13,7 @@ /obj/machinery/sheetifier/Initialize() . = ..() - AddComponent(/datum/component/material_container, list(/datum/material/meat), MINERAL_MATERIAL_AMOUNT * MAX_STACK_SIZE * 2, TRUE, /obj/item/reagent_containers/food/snacks/meat/slab, CALLBACK(src, .proc/CanInsertMaterials), CALLBACK(src, .proc/AfterInsertMaterials)) + AddComponent(/datum/component/material_container, list(/datum/material/meat), MINERAL_MATERIAL_AMOUNT * MAX_STACK_SIZE * 2, TRUE, /obj/item/reagent_containers/food/snacks/meat/slab, CALLBACK(src,PROC_REF(CanInsertMaterials)), CALLBACK(src,PROC_REF(AfterInsertMaterials))) /obj/machinery/sheetifier/update_overlays() . = ..() @@ -35,7 +35,7 @@ var/mutable_appearance/processing_overlay = mutable_appearance(icon, "processing") processing_overlay.color = last_inserted_material.color flick_overlay_static(processing_overlay, src, 64) - addtimer(CALLBACK(src, .proc/finish_processing), 64) + addtimer(CALLBACK(src,PROC_REF(finish_processing)), 64) /obj/machinery/sheetifier/proc/finish_processing() busy_processing = FALSE diff --git a/code/game/machinery/slotmachine.dm b/code/game/machinery/slotmachine.dm index 21d800393dd..b81bbed9e5d 100644 --- a/code/game/machinery/slotmachine.dm +++ b/code/game/machinery/slotmachine.dm @@ -42,13 +42,13 @@ give_money(rand(1, 125)) crct.start_cash = FALSE - INVOKE_ASYNC(src, .proc/toggle_reel_spin, TRUE)//The reels won't spin unless we activate them + INVOKE_ASYNC(src,PROC_REF(toggle_reel_spin), TRUE)//The reels won't spin unless we activate them var/list/reel = reels[1] for(var/i = 0, i < reel.len, i++) //Populate the reels. randomize_reels() - INVOKE_ASYNC(src, .proc/toggle_reel_spin, FALSE) + INVOKE_ASYNC(src,PROC_REF(toggle_reel_spin), FALSE) /obj/machinery/computer/slot_machine/Destroy() if(balance) diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index eb5357de506..e60d8147985 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -232,7 +232,7 @@ else mob_occupant.adjustFireLoss(rand(10, 16)) mob_occupant.emote("scream") - addtimer(CALLBACK(src, .proc/cook), 50) + addtimer(CALLBACK(src,PROC_REF(cook)), 50) else uv_cycles = initial(uv_cycles) uv = FALSE @@ -321,7 +321,7 @@ if(locked) visible_message(span_notice("You see [user] kicking against the doors of [src]!"), \ span_notice("You start kicking against the doors...")) - addtimer(CALLBACK(src, .proc/resist_open, user), 300) + addtimer(CALLBACK(src,PROC_REF(resist_open), user), 300) else open_machine() dump_contents() diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index f387986c1bc..d27538ac8da 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -389,7 +389,7 @@ chem_splash(get_turf(src), spread_range, list(reactants), temp_boost) // Detonate it again in one second, until it's out of juice. - addtimer(CALLBACK(src, .proc/detonate), 10) + addtimer(CALLBACK(src,PROC_REF(detonate)), 10) // If it's not a time release bomb, do normal explosion diff --git a/code/game/machinery/telecomms/computers/message.dm b/code/game/machinery/telecomms/computers/message.dm index 03773053b28..bf2f27c13b7 100644 --- a/code/game/machinery/telecomms/computers/message.dm +++ b/code/game/machinery/telecomms/computers/message.dm @@ -216,7 +216,7 @@ if(istype(S) && S.hack_software) hacking = TRUE //Time it takes to bruteforce is dependant on the password length. - addtimer(CALLBACK(src, .proc/BruteForce, usr), (10 SECONDS) * length(linkedServer.decryptkey)) + addtimer(CALLBACK(src,PROC_REF(BruteForce), usr), (10 SECONDS) * length(linkedServer.decryptkey)) if("del_log") if(!auth) @@ -344,7 +344,7 @@ var/obj/item/paper/monitorkey/MK = new(loc, linkedServer) // Will help make emagging the console not so easy to get away with. MK.info += "

�%@%(*$%&(�&?*(%&�/{}" - addtimer(CALLBACK(src, .proc/UnmagConsole), (10 SECONDS) * length(linkedServer.decryptkey)) + addtimer(CALLBACK(src,PROC_REF(UnmagConsole)), (10 SECONDS) * length(linkedServer.decryptkey)) //message = rebootmsg return TRUE diff --git a/code/game/machinery/transformer.dm b/code/game/machinery/transformer.dm index 9b6904b71f6..0aa0d8b0055 100644 --- a/code/game/machinery/transformer.dm +++ b/code/game/machinery/transformer.dm @@ -105,7 +105,7 @@ R.set_connected_ai(masterAI) R.lawsync() R.lawupdate = 1 - addtimer(CALLBACK(src, .proc/unlock_new_robot, R), 50) + addtimer(CALLBACK(src,PROC_REF(unlock_new_robot), R), 50) /obj/machinery/transformer/proc/unlock_new_robot(mob/living/silicon/robot/R) playsound(src.loc, 'sound/machines/ping.ogg', 50, 0) diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index 255b2076df2..f6476ecaa58 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -125,7 +125,7 @@ GLOBAL_LIST_INIT(dye_registry, list( busy = TRUE update_icon() - addtimer(CALLBACK(src, .proc/wash_cycle), 200) + addtimer(CALLBACK(src,PROC_REF(wash_cycle)), 200) START_PROCESSING(SSfastprocess, src) return TRUE diff --git a/code/game/mecha/combat/durand.dm b/code/game/mecha/combat/durand.dm index b47869caf30..890c27d208f 100644 --- a/code/game/mecha/combat/durand.dm +++ b/code/game/mecha/combat/durand.dm @@ -25,8 +25,8 @@ shield = new/obj/durand_shield shield.chassis = src shield.layer = layer - RegisterSignal(src, COMSIG_MECHA_ACTION_ACTIVATE, .proc/relay) - RegisterSignal(src, COMSIG_PROJECTILE_PREHIT, .proc/prehit) + RegisterSignal(src, COMSIG_MECHA_ACTION_ACTIVATE,PROC_REF(relay)) + RegisterSignal(src, COMSIG_PROJECTILE_PREHIT,PROC_REF(prehit)) . = ..() /obj/mecha/combat/durand/Destroy() @@ -144,7 +144,7 @@ own integrity back to max. Shield is automatically dropped if we run out of powe /obj/durand_shield/Initialize() . = ..() - RegisterSignal(src, COMSIG_MECHA_ACTION_ACTIVATE, .proc/activate) + RegisterSignal(src, COMSIG_MECHA_ACTION_ACTIVATE,PROC_REF(activate)) /obj/durand_shield/Destroy() if(chassis) diff --git a/code/game/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm index 8d29c3f7385..e23df42fe06 100644 --- a/code/game/mecha/equipment/mecha_equipment.dm +++ b/code/game/mecha/equipment/mecha_equipment.dm @@ -97,7 +97,7 @@ /obj/item/mecha_parts/mecha_equipment/proc/start_cooldown() set_ready_state(0) chassis.use_power(energy_drain) - addtimer(CALLBACK(src, .proc/set_ready_state, 1), equip_cooldown) + addtimer(CALLBACK(src,PROC_REF(set_ready_state), 1), equip_cooldown) /obj/item/mecha_parts/mecha_equipment/proc/do_after_cooldown(atom/target) if(!chassis) diff --git a/code/game/mecha/equipment/tools/work_tools.dm b/code/game/mecha/equipment/tools/work_tools.dm index beaaeb9a381..00fe6ca62d2 100644 --- a/code/game/mecha/equipment/tools/work_tools.dm +++ b/code/game/mecha/equipment/tools/work_tools.dm @@ -367,7 +367,7 @@ /obj/item/mecha_parts/mecha_equipment/cable_layer/attach() ..() - event = chassis.events.addEvent("onMove", CALLBACK(src, .proc/layCable)) + event = chassis.events.addEvent("onMove", CALLBACK(src,PROC_REF(layCable))) return /obj/item/mecha_parts/mecha_equipment/cable_layer/detach() diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index 6219ead08a7..ad473b30a93 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -69,7 +69,7 @@ /obj/item/mecha_parts/mecha_equipment/weapon/energy/start_cooldown() set_ready_state(0) chassis.use_power(energy_drain*get_shot_amount()) - addtimer(CALLBACK(src, .proc/set_ready_state, 1), equip_cooldown) + addtimer(CALLBACK(src,PROC_REF(set_ready_state), 1), equip_cooldown) /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser equip_cooldown = 7 diff --git a/code/game/mecha/mech_fabricator.dm b/code/game/mecha/mech_fabricator.dm index 7933f62d8d7..20a4732752f 100644 --- a/code/game/mecha/mech_fabricator.dm +++ b/code/game/mecha/mech_fabricator.dm @@ -67,7 +67,7 @@ /obj/machinery/mecha_part_fabricator/Initialize(mapload) stored_research = new - rmat = AddComponent(/datum/component/remote_materials, "mechfab", mapload && link_on_init, _after_insert=CALLBACK(src, .proc/AfterMaterialInsert)) + rmat = AddComponent(/datum/component/remote_materials, "mechfab", mapload && link_on_init, _after_insert=CALLBACK(src,PROC_REF(AfterMaterialInsert))) RefreshParts() //Recalculating local material sizes if the fab isn't linked return ..() diff --git a/code/game/objects/effects/alien_acid.dm b/code/game/objects/effects/alien_acid.dm index e6ec759a5dd..75c33b00240 100644 --- a/code/game/objects/effects/alien_acid.dm +++ b/code/game/objects/effects/alien_acid.dm @@ -24,7 +24,7 @@ pixel_y = target.pixel_y + rand(-4,4) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm index ddc8a81ba05..de9df20260b 100644 --- a/code/game/objects/effects/anomalies.dm +++ b/code/game/objects/effects/anomalies.dm @@ -98,7 +98,7 @@ /obj/effect/anomaly/grav/Initialize(mapload, new_lifespan, core_drop_chance) . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -167,7 +167,7 @@ /obj/effect/anomaly/flux/Initialize(mapload, new_lifespan, core_drop_chance) . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -181,7 +181,7 @@ /obj/effect/anomaly/flux/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/mobShock, AM) + INVOKE_ASYNC(src,PROC_REF(mobShock), AM) /obj/effect/anomaly/flux/Bump(atom/A) mobShock(A) @@ -260,7 +260,7 @@ if(ismob(A) && !(A in flashers)) // don't flash if we're already doing an effect var/mob/M = A if(M.client) - INVOKE_ASYNC(src, .proc/blue_effect, M) + INVOKE_ASYNC(src,PROC_REF(blue_effect), M) /obj/effect/anomaly/bluespace/proc/blue_effect(mob/M) var/obj/blueeffect = new /obj(src) @@ -295,7 +295,7 @@ T.atmos_spawn_air("o2=5;plasma=5;TEMP=1000") /obj/effect/anomaly/pyro/detonate() - INVOKE_ASYNC(src, .proc/makepyroslime) + INVOKE_ASYNC(src,PROC_REF(makepyroslime)) /obj/effect/anomaly/pyro/proc/makepyroslime() var/turf/open/T = get_turf(src) diff --git a/code/game/objects/effects/blessing.dm b/code/game/objects/effects/blessing.dm index 6db28b37003..e64387a20e2 100644 --- a/code/game/objects/effects/blessing.dm +++ b/code/game/objects/effects/blessing.dm @@ -16,7 +16,7 @@ I.alpha = 64 I.appearance_flags = RESET_ALPHA add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/blessedAware, "blessing", I) - RegisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORT, .proc/block_cult_teleport) + RegisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORT,PROC_REF(block_cult_teleport)) /obj/effect/blessing/Destroy() UnregisterSignal(loc, COMSIG_ATOM_INTERCEPT_TELEPORT) diff --git a/code/game/objects/effects/contraband.dm b/code/game/objects/effects/contraband.dm index 66e4c2866f9..ff39915bb92 100644 --- a/code/game/objects/effects/contraband.dm +++ b/code/game/objects/effects/contraband.dm @@ -30,7 +30,7 @@ name = "[name] - [poster_structure.original_name]" //If the poster structure is being deleted something has gone wrong, kill yourself off too - RegisterSignal(poster_structure, COMSIG_PARENT_QDELETING, .proc/react_to_deletion) + RegisterSignal(poster_structure, COMSIG_PARENT_QDELETING,PROC_REF(react_to_deletion)) /obj/item/poster/Destroy() diff --git a/code/game/objects/effects/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index e8c309e99a7..bd90c9502c3 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -28,7 +28,7 @@ AddComponent(/datum/component/infective, diseases_to_add) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/game/objects/effects/decals/cleanable/humans.dm b/code/game/objects/effects/decals/cleanable/humans.dm index 385cee915f8..aa1af60a64d 100644 --- a/code/game/objects/effects/decals/cleanable/humans.dm +++ b/code/game/objects/effects/decals/cleanable/humans.dm @@ -93,8 +93,8 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, - COMSIG_ATOM_EXITED = .proc/on_exit, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), + COMSIG_ATOM_EXITED =PROC_REF(on_exit), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/game/objects/effects/effect_system/effect_system.dm b/code/game/objects/effects/effect_system/effect_system.dm index 011566b3db5..daff478982e 100644 --- a/code/game/objects/effects/effect_system/effect_system.dm +++ b/code/game/objects/effects/effect_system/effect_system.dm @@ -53,7 +53,7 @@ would spawn and follow the beaker, even if it is carried or thrown. for(var/i in 1 to number) if(total_effects > 20) return - // INVOKE_ASYNC(src, .proc/generate_effect) // STOP FUCKING ASYNCING + // INVOKE_ASYNC(src,PROC_REF(generate_effect)) // STOP FUCKING ASYNCING generate_effect() @@ -77,7 +77,7 @@ would spawn and follow the beaker, even if it is carried or thrown. sleep(5) step(E,direction) if(!QDELETED(src)) - addtimer(CALLBACK(src, .proc/decrement_total_effect), 20) + addtimer(CALLBACK(src,PROC_REF(decrement_total_effect)), 20) */ /datum/effect_system/proc/generate_effect() if(holder) @@ -93,7 +93,7 @@ would spawn and follow the beaker, even if it is carried or thrown. var/step_delay = 5 var/datum/move_loop/loop = SSmove_manager.move(effect, direction, step_delay, timeout = step_delay * step_amt, priority = MOVEMENT_ABOVE_SPACE_PRIORITY) - RegisterSignal(loop, COMSIG_PARENT_QDELETING, .proc/decrement_total_effect) + RegisterSignal(loop, COMSIG_PARENT_QDELETING,PROC_REF(decrement_total_effect)) /datum/effect_system/proc/decrement_total_effect() total_effects-- diff --git a/code/game/objects/effects/effect_system/effects_explosion.dm b/code/game/objects/effects/effect_system/effects_explosion.dm index bb936754f7d..6c5f0648079 100644 --- a/code/game/objects/effects/effect_system/effects_explosion.dm +++ b/code/game/objects/effects/effect_system/effects_explosion.dm @@ -55,4 +55,4 @@ S.start() /datum/effect_system/explosion/smoke/start() ..() - addtimer(CALLBACK(src, .proc/create_smoke), 5) + addtimer(CALLBACK(src,PROC_REF(create_smoke)), 5) diff --git a/code/game/objects/effects/effect_system/effects_smoke.dm b/code/game/objects/effects/effect_system/effects_smoke.dm index 2c5325bbabc..9172480f65b 100644 --- a/code/game/objects/effects/effect_system/effects_smoke.dm +++ b/code/game/objects/effects/effect_system/effects_smoke.dm @@ -42,7 +42,7 @@ /obj/effect/particle_effect/smoke/proc/kill_smoke() STOP_PROCESSING(SSobj, src) - INVOKE_ASYNC(src, .proc/fade_out) + INVOKE_ASYNC(src,PROC_REF(fade_out)) QDEL_IN(src, 10) /obj/effect/particle_effect/smoke/process() @@ -64,7 +64,7 @@ if(C.smoke_delay) return 0 C.smoke_delay++ - addtimer(CALLBACK(src, .proc/remove_smoke_delay, C), 10) + addtimer(CALLBACK(src,PROC_REF(remove_smoke_delay), C), 10) return 1 /obj/effect/particle_effect/smoke/proc/remove_smoke_delay(mob/living/carbon/C) diff --git a/code/game/objects/effects/effect_system/effects_smoke_new.dm b/code/game/objects/effects/effect_system/effects_smoke_new.dm index fa248c855b7..47e2b9c4127 100644 --- a/code/game/objects/effects/effect_system/effects_smoke_new.dm +++ b/code/game/objects/effects/effect_system/effects_smoke_new.dm @@ -95,7 +95,7 @@ glide_size = driftdelay alpha = 255 / clamp(distance_modifier, 1, 3) transform = matrix(transform) * clamp(1 / max(distance_modifier + 1, 1), 0.5, 3) - INVOKE_ASYNC(src, .proc/fade_out) + INVOKE_ASYNC(src,PROC_REF(fade_out)) walk(src, driftdir, driftdelay, 32) lifetime = rand(lifetime*0.5, lifetime*3) QDEL_IN(src, lifetime) diff --git a/code/game/objects/effects/glowshroom.dm b/code/game/objects/effects/glowshroom.dm index f24d64e34f8..f36cc2dfdb6 100644 --- a/code/game/objects/effects/glowshroom.dm +++ b/code/game/objects/effects/glowshroom.dm @@ -80,7 +80,7 @@ else //if on the floor, glowshroom on-floor sprite icon_state = base_icon_state - //addtimer(CALLBACK(src, .proc/Spread), delay) + //addtimer(CALLBACK(src,PROC_REF(Spread)), delay) /obj/structure/glowshroom/proc/Spread() return //temp disable @@ -129,7 +129,7 @@ shrooms_planted++ //if we failed due to generation, don't try to plant one later if(shrooms_planted < myseed.yield) //if we didn't get all possible shrooms planted, try again later myseed.yield -= shrooms_planted - addtimer(CALLBACK(src, .proc/Spread), delay)*/ + addtimer(CALLBACK(src,PROC_REF(Spread)), delay)*/ /obj/structure/glowshroom/proc/CalcDir(turf/location = loc) var/direction = 16 diff --git a/code/game/objects/effects/mines.dm b/code/game/objects/effects/mines.dm index def5de5638d..ddcb553ee3b 100644 --- a/code/game/objects/effects/mines.dm +++ b/code/game/objects/effects/mines.dm @@ -11,7 +11,7 @@ /obj/effect/mine/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -30,7 +30,7 @@ if(AM.movement_type & FLYING) return - INVOKE_ASYNC(src, .proc/triggermine, AM) + INVOKE_ASYNC(src,PROC_REF(triggermine), AM) /obj/effect/mine/proc/triggermine(mob/victim) if(triggered) diff --git a/code/game/objects/effects/portals.dm b/code/game/objects/effects/portals.dm index ddc9b8ced45..b3911c2a762 100644 --- a/code/game/objects/effects/portals.dm +++ b/code/game/objects/effects/portals.dm @@ -33,7 +33,7 @@ /obj/effect/portal/Initialize(mapload, _lifespan, obj/effect/portal/_linked, automatic_link, turf/hard_target_override, atmos_link_override) . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/game/objects/effects/proximity.dm b/code/game/objects/effects/proximity.dm index 21ef9823826..01b498a1319 100644 --- a/code/game/objects/effects/proximity.dm +++ b/code/game/objects/effects/proximity.dm @@ -23,7 +23,7 @@ else if(hasprox_receiver == host) //Default case hasprox_receiver = H host = H - RegisterSignal(host, COMSIG_MOVABLE_MOVED, .proc/HandleMove) + RegisterSignal(host, COMSIG_MOVABLE_MOVED,PROC_REF(HandleMove)) last_host_loc = host.loc SetRange(current_range,TRUE) @@ -104,8 +104,8 @@ return INITIALIZE_HINT_QDEL var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, - COMSIG_ATOM_EXITED = .proc/on_exit, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), + COMSIG_ATOM_EXITED =PROC_REF(on_exit), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/game/objects/effects/spawners/lootdrop.dm b/code/game/objects/effects/spawners/lootdrop.dm index 74c56c7e82a..09cdcb94541 100644 --- a/code/game/objects/effects/spawners/lootdrop.dm +++ b/code/game/objects/effects/spawners/lootdrop.dm @@ -30,7 +30,7 @@ if(cull_spawners(mapload, block_tier_swap, survived_snap)) return INITIALIZE_HINT_NORMAL if(delay_spawn) // you have *checks watch* until the end of this frame to spawn the stuff. Otherwise it'll look wierd - RegisterSignal(src, COMSIG_ATOM_POST_ADMIN_SPAWN, .proc/spawn_the_stuff) + RegisterSignal(src, COMSIG_ATOM_POST_ADMIN_SPAWN,PROC_REF(spawn_the_stuff)) return INITIALIZE_HINT_NORMAL // have fun! spawn_the_stuff() // lov dan return INITIALIZE_HINT_QDEL diff --git a/code/game/objects/effects/step_triggers.dm b/code/game/objects/effects/step_triggers.dm index 9f88f5c8bed..e85e9a5c684 100644 --- a/code/game/objects/effects/step_triggers.dm +++ b/code/game/objects/effects/step_triggers.dm @@ -11,7 +11,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -23,7 +23,7 @@ if(!H) return - INVOKE_ASYNC(src, .proc/Trigger, H) + INVOKE_ASYNC(src,PROC_REF(Trigger), H) /obj/effect/step_trigger/singularity_act() diff --git a/code/game/objects/effects/temporary_visuals/clockcult.dm b/code/game/objects/effects/temporary_visuals/clockcult.dm index 1200e0ab66a..60fcece9505 100644 --- a/code/game/objects/effects/temporary_visuals/clockcult.dm +++ b/code/game/objects/effects/temporary_visuals/clockcult.dm @@ -113,7 +113,7 @@ var/matrix/M = new M.Turn(Get_Angle(src, user)) transform = M - INVOKE_ASYNC(src, .proc/volthit) + INVOKE_ASYNC(src,PROC_REF(volthit)) /obj/effect/temp_visual/ratvar/volt_hit/proc/volthit() if(user) diff --git a/code/game/objects/effects/temporary_visuals/miscellaneous.dm b/code/game/objects/effects/temporary_visuals/miscellaneous.dm index 8b866cd6336..390cd98ff2a 100644 --- a/code/game/objects/effects/temporary_visuals/miscellaneous.dm +++ b/code/game/objects/effects/temporary_visuals/miscellaneous.dm @@ -503,7 +503,7 @@ qdel(src) else icon_state = "rcd_end" - addtimer(CALLBACK(src, .proc/end), 15) + addtimer(CALLBACK(src,PROC_REF(end)), 15) /obj/effect/constructing_effect/proc/end() qdel(src) diff --git a/code/game/objects/hand_items.dm b/code/game/objects/hand_items.dm index 7fa0923f758..347cc48dafc 100644 --- a/code/game/objects/hand_items.dm +++ b/code/game/objects/hand_items.dm @@ -113,7 +113,7 @@ /obj/item/hand_item/healable/licker/Initialize(mapload) . = ..() - RegisterSignal(src, COMSIG_LICK_RETURN, .proc/start_licking) + RegisterSignal(src, COMSIG_LICK_RETURN,PROC_REF(start_licking)) /obj/item/hand_item/healable/proc/lick_atom(atom/movable/licked, mob/living/carbon/user) var/list/lick_words = get_lick_words(user) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index a96c7bb4a80..fcec52a1f5e 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -782,7 +782,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb /obj/item/throw_at(atom/target, range, speed, mob/thrower, spin=1, diagonals_first = 0, datum/callback/callback, force, messy_throw = TRUE) set_thrownby(thrower) - callback = CALLBACK(src, .proc/after_throw, callback, (spin && messy_throw)) //replace their callback with our own + callback = CALLBACK(src,PROC_REF(after_throw), callback, (spin && messy_throw)) //replace their callback with our own . = ..(target, range, speed, thrower, spin, diagonals_first, callback, force) /obj/item/proc/set_thrownby(new_thrownby) @@ -790,7 +790,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb UnregisterSignal(thrownby, COMSIG_PARENT_QDELETING) thrownby = new_thrownby if(thrownby) - RegisterSignal(thrownby, COMSIG_PARENT_QDELETING, .proc/thrownby_deleted) + RegisterSignal(thrownby, COMSIG_PARENT_QDELETING,PROC_REF(thrownby_deleted)) /obj/item/proc/thrownby_deleted(datum/source) SIGNAL_HANDLER @@ -971,7 +971,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb if((item_flags & IN_INVENTORY) && usr.client.prefs.enable_tips && !QDELETED(src)) var/timedelay = usr.client.prefs.tip_delay/100 var/user = usr - tip_timer = addtimer(CALLBACK(src, .proc/openTip, location, control, params, user), timedelay, TIMER_STOPPABLE)//timer takes delay in deciseconds, but the pref is in milliseconds. dividing by 100 converts it. + tip_timer = addtimer(CALLBACK(src,PROC_REF(openTip), location, control, params, user), timedelay, TIMER_STOPPABLE)//timer takes delay in deciseconds, but the pref is in milliseconds. dividing by 100 converts it. /obj/item/MouseExited(location,control,params) SEND_SIGNAL(src, COMSIG_ITEM_MOUSE_EXIT, location, control, params) @@ -999,7 +999,7 @@ GLOBAL_VAR_INIT(embedpocalypse, FALSE) // if true, all items will be able to emb delay = user.mind.item_action_skills_mod(src, delay, skill_difficulty, SKILL_USE_TOOL, null, FALSE) // Create a callback with checks that would be called every tick by do_after. - var/datum/callback/tool_check = CALLBACK(src, .proc/tool_check_callback, user, amount, extra_checks) + var/datum/callback/tool_check = CALLBACK(src,PROC_REF(tool_check_callback), user, amount, extra_checks) if(ismob(target)) if(!do_mob(user, target, delay, extra_checks=tool_check)) diff --git a/code/game/objects/items/RCD.dm b/code/game/objects/items/RCD.dm index 57c6d195644..3edfacfe6c0 100644 --- a/code/game/objects/items/RCD.dm +++ b/code/game/objects/items/RCD.dm @@ -288,7 +288,7 @@ RLD "SOUTH" = image(icon = 'icons/mob/radial.dmi', icon_state = "csouth"), "WEST" = image(icon = 'icons/mob/radial.dmi', icon_state = "cwest") ) - var/computerdirs = show_radial_menu(user, src, computer_dirs, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE) + var/computerdirs = show_radial_menu(user, src, computer_dirs, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) if(!check_menu(user)) return switch(computerdirs) @@ -347,13 +347,13 @@ RLD "External Maintenance" = get_airlock_image(/obj/machinery/door/airlock/maintenance/external/glass) ) - var/airlockcat = show_radial_menu(user, src, solid_or_glass_choices, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE) + var/airlockcat = show_radial_menu(user, src, solid_or_glass_choices, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE) if(!check_menu(user)) return switch(airlockcat) if("Solid") if(advanced_airlock_setting == 1) - var/airlockpaint = show_radial_menu(user, src, solid_choices, radius = 42, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE) + var/airlockpaint = show_radial_menu(user, src, solid_choices, radius = 42, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE) if(!check_menu(user)) return switch(airlockpaint) @@ -398,7 +398,7 @@ RLD if("Glass") if(advanced_airlock_setting == 1) - var/airlockpaint = show_radial_menu(user, src , glass_choices, radius = 42, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE) + var/airlockpaint = show_radial_menu(user, src , glass_choices, radius = 42, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE) if(!check_menu(user)) return switch(airlockpaint) @@ -544,7 +544,7 @@ RLD buzz loudly!
","[src] begins \ vibrating violently!") // 5 seconds to get rid of it - addtimer(CALLBACK(src, .proc/detonate_pulse_explode), 50) + addtimer(CALLBACK(src,PROC_REF(detonate_pulse_explode)), 50) /obj/item/construction/rcd/proc/detonate_pulse_explode() explosion(src, 0, 0, 3, 1, flame_range = 1) @@ -889,7 +889,7 @@ RLD machinery_data["cost"][A] = initial(M.rcd_cost) machinery_data["delay"][A] = initial(M.rcd_delay) - var/choice = show_radial_menu(user, src, choices, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE) + var/choice = show_radial_menu(user, src, choices, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) if(!check_menu(user)) return diff --git a/code/game/objects/items/RCL.dm b/code/game/objects/items/RCL.dm index 812fd3ed2b6..9232f64f684 100644 --- a/code/game/objects/items/RCL.dm +++ b/code/game/objects/items/RCL.dm @@ -171,7 +171,7 @@ obj/item/rcl/proc/getMobhook(mob/to_hook) return if(listeningTo) UnregisterSignal(listeningTo, COMSIG_MOVABLE_MOVED) - RegisterSignal(to_hook, COMSIG_MOVABLE_MOVED, .proc/trigger) + RegisterSignal(to_hook, COMSIG_MOVABLE_MOVED,PROC_REF(trigger)) listeningTo = to_hook /obj/item/rcl/proc/trigger(mob/user) @@ -252,7 +252,7 @@ obj/item/rcl/proc/getMobhook(mob/to_hook) /obj/item/rcl/proc/showWiringGui(mob/user) var/list/choices = wiringGuiGenerateChoices(user) - wiring_gui_menu = show_radial_menu_persistent(user, src , choices, select_proc = CALLBACK(src, .proc/wiringGuiReact, user), radius = 42) + wiring_gui_menu = show_radial_menu_persistent(user, src , choices, select_proc = CALLBACK(src,PROC_REF(wiringGuiReact), user), radius = 42) /obj/item/rcl/proc/wiringGuiUpdate(mob/user) if(!wiring_gui_menu) diff --git a/code/game/objects/items/binoculars.dm b/code/game/objects/items/binoculars.dm index 09cb72e6a4e..3cad657fecf 100644 --- a/code/game/objects/items/binoculars.dm +++ b/code/game/objects/items/binoculars.dm @@ -13,7 +13,7 @@ /obj/item/binoculars/wield(mob/living/user) . = ..() - RegisterSignal(user, COMSIG_ATOM_DIR_CHANGE, .proc/rotate) + RegisterSignal(user, COMSIG_ATOM_DIR_CHANGE,PROC_REF(rotate)) listeningTo = user user.visible_message(span_notice("[user] holds [src] up to [user.p_their()] eyes."), span_notice("You hold [src] up to your eyes.")) item_state = "binoculars_wielded" diff --git a/code/game/objects/items/body_egg.dm b/code/game/objects/items/body_egg.dm index 9a941e9e4f0..03d6b504031 100644 --- a/code/game/objects/items/body_egg.dm +++ b/code/game/objects/items/body_egg.dm @@ -18,13 +18,13 @@ ..() ADD_TRAIT(owner, TRAIT_XENO_HOST, TRAIT_GENERIC) owner.med_hud_set_status() - INVOKE_ASYNC(src, .proc/AddInfectionImages, owner) + INVOKE_ASYNC(src,PROC_REF(AddInfectionImages), owner) /obj/item/organ/body_egg/Remove(special = FALSE) if(!QDELETED(owner)) REMOVE_TRAIT(owner, TRAIT_XENO_HOST, TRAIT_GENERIC) owner.med_hud_set_status() - INVOKE_ASYNC(src, .proc/RemoveInfectionImages, owner) + INVOKE_ASYNC(src,PROC_REF(RemoveInfectionImages), owner) return ..() /obj/item/organ/body_egg/on_death() diff --git a/code/game/objects/items/broom.dm b/code/game/objects/items/broom.dm index 3aca8ad8e44..401e23d7857 100644 --- a/code/game/objects/items/broom.dm +++ b/code/game/objects/items/broom.dm @@ -26,7 +26,7 @@ /obj/item/broom/wield(mob/user) . = ..() to_chat(user, span_notice("You brace the [src] against the ground in a firm sweeping stance.")) - RegisterSignal(user, COMSIG_MOVABLE_PRE_MOVE, .proc/sweep) + RegisterSignal(user, COMSIG_MOVABLE_PRE_MOVE,PROC_REF(sweep)) /// triggered on unwield of two handed item /obj/item/broom/unwield(mob/user) diff --git a/code/game/objects/items/button_item.dm b/code/game/objects/items/button_item.dm index 656c0ad370d..9cd125f282d 100644 --- a/code/game/objects/items/button_item.dm +++ b/code/game/objects/items/button_item.dm @@ -18,14 +18,14 @@ /obj/item/button/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_ITEM_CLICKED, .proc/activate) - RegisterSignal(src, COMSIG_BUTTON_ATTACH, .proc/attach_to_storage) + RegisterSignal(src, COMSIG_ITEM_CLICKED,PROC_REF(activate)) + RegisterSignal(src, COMSIG_BUTTON_ATTACH,PROC_REF(attach_to_storage)) /obj/item/button/attackby(obj/item/W, mob/user, params) activate(user) /obj/item/button/proc/attach_to_storage(datum/source, obj/item/storage/S) - RegisterSignal(S, COMSIG_BUTTON_UPDATE, .proc/reaction) + RegisterSignal(S, COMSIG_BUTTON_UPDATE,PROC_REF(reaction)) /obj/item/button/proc/activate(datum/source, mob/user) playsound(get_turf(src), click_sound, 50, TRUE) diff --git a/code/game/objects/items/candle.dm b/code/game/objects/items/candle.dm index 46588725d2b..2fec8caaf7c 100644 --- a/code/game/objects/items/candle.dm +++ b/code/game/objects/items/candle.dm @@ -115,7 +115,7 @@ /obj/item/candle/tribal_torch/proc/flicker(duration) flickering = TRUE - addtimer(CALLBACK(src, .proc/unflicker, light_range), duration) + addtimer(CALLBACK(src,PROC_REF(unflicker), light_range), duration) set_light_range(light_range - rand(1, 2)) /obj/item/candle/tribal_torch/proc/unflicker(new_range) diff --git a/code/game/objects/items/cardboard_cutouts.dm b/code/game/objects/items/cardboard_cutouts.dm index a0e19ac7fe2..f5a122aadf4 100644 --- a/code/game/objects/items/cardboard_cutouts.dm +++ b/code/game/objects/items/cardboard_cutouts.dm @@ -107,7 +107,7 @@ * * user The mob choosing a skin of the cardboard cutout */ /obj/item/cardboard_cutout/proc/change_appearance(obj/item/toy/crayon/crayon, mob/living/user) - var/new_appearance = show_radial_menu(user, src, possible_appearances, custom_check = CALLBACK(src, .proc/check_menu, user, crayon), radius = 36, require_near = TRUE) + var/new_appearance = show_radial_menu(user, src, possible_appearances, custom_check = CALLBACK(src,PROC_REF(check_menu), user, crayon), radius = 36, require_near = TRUE) if(!new_appearance) return if(!do_after(user, 10, FALSE, src, TRUE)) diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index f0eb81de4fb..1dc4b869f09 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -25,7 +25,7 @@ /obj/item/card/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_ATOM_GET_VALUE, .proc/tabulate_value) + RegisterSignal(src, COMSIG_ATOM_GET_VALUE,PROC_REF(tabulate_value)) /obj/item/card/proc/tabulate_value() return 0 diff --git a/code/game/objects/items/charter.dm b/code/game/objects/items/charter.dm index 9b658bc5f1f..36286d873f9 100644 --- a/code/game/objects/items/charter.dm +++ b/code/game/objects/items/charter.dm @@ -62,7 +62,7 @@ to_chat(user, "Your name has been sent to your employers for approval.") // Autoapproves after a certain time - response_timer_id = addtimer(CALLBACK(src, .proc/rename_station, new_name, user.name, user.real_name, key_name(user)), approval_time, TIMER_STOPPABLE) + response_timer_id = addtimer(CALLBACK(src,PROC_REF(rename_station), new_name, user.name, user.real_name, key_name(user)), approval_time, TIMER_STOPPABLE) to_chat(GLOB.admins, "CUSTOM STATION RENAME:[ADMIN_LOOKUPFLW(user)] proposes to rename the [name_type] to [new_name] (will autoapprove in [DisplayTimeText(approval_time)]). [ADMIN_SMITE(user)] (REJECT) [ADMIN_CENTCOM_REPLY(user)]") /obj/item/station_charter/proc/reject_proposed(user) diff --git a/code/game/objects/items/crab17.dm b/code/game/objects/items/crab17.dm index a3aa5892338..9717690a7ae 100644 --- a/code/game/objects/items/crab17.dm +++ b/code/game/objects/items/crab17.dm @@ -78,7 +78,7 @@ add_overlay("flaps") add_overlay("hatch") add_overlay("legs_retracted") - addtimer(CALLBACK(src, .proc/startUp), 50) + addtimer(CALLBACK(src,PROC_REF(startUp)), 50) QDEL_IN(src, 8 MINUTES) //Self destruct after 8 min @@ -171,7 +171,7 @@ if (account) // get_bank_account() may return FALSE account.transfer_money(B, amount) B.bank_card_talk("You have lost [percentage_lost * 100]% of your funds! A spacecoin credit deposit machine is located at: [get_area(src)].") - addtimer(CALLBACK(src, .proc/dump), 150) //Drain every 15 seconds + addtimer(CALLBACK(src,PROC_REF(dump)), 150) //Drain every 15 seconds /obj/structure/checkoutmachine/process() var/anydir = pick(GLOB.cardinals) @@ -205,7 +205,7 @@ /obj/effect/dumpeetTarget/Initialize(mapload, user) . = ..() bogdanoff = user - addtimer(CALLBACK(src, .proc/startLaunch), 100) + addtimer(CALLBACK(src,PROC_REF(startLaunch)), 100) sound_to_playing_players('sound/items/dump_it.ogg', 20) deadchat_broadcast("Protocol CRAB-17 has been activated. A space-coin market has been launched at the station!", turf_target = get_turf(src)) @@ -215,7 +215,7 @@ priority_announce("The spacecoin bubble has popped! Get to the credit deposit machine at [get_area(src)] and cash out before you lose all of your funds!", sender_override = "CRAB-17 Protocol") animate(DF, pixel_z = -8, time = 5, , easing = LINEAR_EASING) playsound(src, 'sound/weapons/mortar_whistle.ogg', 70, TRUE, 6) - addtimer(CALLBACK(src, .proc/endLaunch), 5, TIMER_CLIENT_TIME) //Go onto the last step after a very short falling animation + addtimer(CALLBACK(src,PROC_REF(endLaunch)), 5, TIMER_CLIENT_TIME) //Go onto the last step after a very short falling animation diff --git a/code/game/objects/items/debug_items.dm b/code/game/objects/items/debug_items.dm index c7aaab6a264..5d0fb37da9d 100644 --- a/code/game/objects/items/debug_items.dm +++ b/code/game/objects/items/debug_items.dm @@ -65,7 +65,7 @@ "Scalpel" = image(icon = 'icons/obj/surgery.dmi', icon_state = "scalpel"), "Saw" = image(icon = 'icons/obj/surgery.dmi', icon_state = "saw") ) - var/tool_result = show_radial_menu(user, src, tool_list, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE) + var/tool_result = show_radial_menu(user, src, tool_list, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) if(!check_menu(user)) return switch(tool_result) diff --git a/code/game/objects/items/defib.dm b/code/game/objects/items/defib.dm index bf53363af7a..3f9c67e31e0 100644 --- a/code/game/objects/items/defib.dm +++ b/code/game/objects/items/defib.dm @@ -328,7 +328,7 @@ . = ..() if(!req_defib) return - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/check_range) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(check_range)) /obj/item/shockpaddles/Moved() . = ..() diff --git a/code/game/objects/items/devices/battery_box.dm b/code/game/objects/items/devices/battery_box.dm index f09b1d4ad5c..3078bcfe894 100644 --- a/code/game/objects/items/devices/battery_box.dm +++ b/code/game/objects/items/devices/battery_box.dm @@ -49,9 +49,9 @@ /obj/item/storage/battery_box/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_BUTTON_CLICK, .proc/toggle_charge_direction) - RegisterSignal(src, COMSIG_ITEM_RECHARGE, .proc/charge_me) - RegisterSignal(src, COMSIG_CELL_CHECK_CHARGE_PERCENT, .proc/charge_percent) + RegisterSignal(src, COMSIG_BUTTON_CLICK,PROC_REF(toggle_charge_direction)) + RegisterSignal(src, COMSIG_ITEM_RECHARGE,PROC_REF(charge_me)) + RegisterSignal(src, COMSIG_CELL_CHECK_CHARGE_PERCENT,PROC_REF(charge_percent)) RegisterSignal(src, COMSIG_ATOM_ENTERED, /atom/proc/update_icon) RegisterSignal(src, COMSIG_ATOM_EXITED, /atom/proc/update_icon) diff --git a/code/game/objects/items/devices/desynchronizer.dm b/code/game/objects/items/devices/desynchronizer.dm index aa9b37d74a7..14ee07fb39f 100644 --- a/code/game/objects/items/devices/desynchronizer.dm +++ b/code/game/objects/items/devices/desynchronizer.dm @@ -57,7 +57,7 @@ SEND_SIGNAL(AM, COMSIG_MOVABLE_SECLUDED_LOCATION) last_use = world.time icon_state = "desynchronizer-on" - resync_timer = addtimer(CALLBACK(src, .proc/resync), duration , TIMER_STOPPABLE) + resync_timer = addtimer(CALLBACK(src,PROC_REF(resync)), duration , TIMER_STOPPABLE) /obj/item/desynchronizer/proc/resync() new /obj/effect/temp_visual/desynchronizer(sync_holder.drop_location()) diff --git a/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm b/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm index 7a0df3cb39a..385725a7f5a 100644 --- a/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm +++ b/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm @@ -43,7 +43,7 @@ maptext = "[circuits]" icon_state = "[initial(icon_state)]_recharging" var/recharge_time = min(600, circuit_cost * 5) //40W of cost for one fabrication = 20 seconds of recharge time; this is to prevent spamming - addtimer(CALLBACK(src, .proc/recharge), recharge_time) + addtimer(CALLBACK(src,PROC_REF(recharge)), recharge_time) return TRUE //The actual circuit magic itself is done on a per-object basis /obj/item/electroadaptive_pseudocircuit/afterattack(atom/target, mob/living/user, proximity) diff --git a/code/game/objects/items/devices/geiger_counter.dm b/code/game/objects/items/devices/geiger_counter.dm index 501008cd856..35fd6d03438 100644 --- a/code/game/objects/items/devices/geiger_counter.dm +++ b/code/game/objects/items/devices/geiger_counter.dm @@ -141,7 +141,7 @@ return if(listeningTo) UnregisterSignal(listeningTo, COMSIG_ATOM_RAD_ACT) - RegisterSignal(user, COMSIG_ATOM_RAD_ACT, .proc/redirect_rad_act) + RegisterSignal(user, COMSIG_ATOM_RAD_ACT,PROC_REF(redirect_rad_act)) listeningTo = user to_chat(user,"equipped") @@ -161,7 +161,7 @@ return if(listeningTo) UnregisterSignal(listeningTo, COMSIG_ATOM_RAD_ACT) - RegisterSignal(user, COMSIG_ATOM_RAD_ACT, .proc/redirect_rad_act) + RegisterSignal(user, COMSIG_ATOM_RAD_ACT,PROC_REF(redirect_rad_act)) listeningTo = user /obj/item/geiger_counter/attack_self(mob/user) @@ -180,7 +180,7 @@ if(!(obj_flags & EMAGGED)) user.visible_message(span_notice("[user] scans [target] with [src]."), span_notice("You scan [target]'s radiation levels with [src]...")) scan(target, user) - //addtimer(CALLBACK(src, .proc/scan, target, user), 20, TIMER_UNIQUE) // Let's not have spamming GetAllContents + //addtimer(CALLBACK(src,PROC_REF(scan), target, user), 20, TIMER_UNIQUE) // Let's not have spamming GetAllContents else user.visible_message(span_notice("[user] scans [target] with [src]."), span_danger("You project [src]'s stored radiation into [target]!")) target.rad_act(radiation_count) diff --git a/code/game/objects/items/devices/megaphone.dm b/code/game/objects/items/devices/megaphone.dm index 7940401be95..b91928f8777 100644 --- a/code/game/objects/items/devices/megaphone.dm +++ b/code/game/objects/items/devices/megaphone.dm @@ -15,7 +15,7 @@ /obj/item/megaphone/equipped(mob/M, slot) . = ..() if (slot == SLOT_HANDS) - RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech)) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/code/game/objects/items/devices/portable_blender_brain.dm b/code/game/objects/items/devices/portable_blender_brain.dm index ede95853e74..b504c76f60e 100644 --- a/code/game/objects/items/devices/portable_blender_brain.dm +++ b/code/game/objects/items/devices/portable_blender_brain.dm @@ -550,7 +550,7 @@ /datum/blender_brain/proc/preprocess_speech(mob/speaker, message) if(!should_listen_to(speaker)) return - INVOKE_ASYNC(src, .proc/process_speech, speaker, message) + INVOKE_ASYNC(src,PROC_REF(process_speech), speaker, message) /// takes in mob and message, and turns it into a stimulus /datum/blender_brain/proc/process_speech(mob/speaker, message) @@ -1000,18 +1000,18 @@ /obj/item/persona_core/proc/register_signals() var/atom/movable/sigtarg = get_host() - RegisterSignal(sigtarg, COMSIG_ITEM_RECYCLED, .proc/crushed) - RegisterSignal(sigtarg, COMSIG_BB_HOST_TO_PC_STIMULUS, .proc/input_stimulus) - RegisterSignal(sigtarg, COMSIG_ITEM_DROPPED, .proc/input_stimulus_dropped) - RegisterSignal(sigtarg, COMSIG_ITEM_EQUIPPED, .proc/input_stimulus_equipped) - //RegisterSignal(sigtarg, COMSIG_ITEM_CLICKED, .proc/input_stimulus_clicked) // yeah these dont work - //RegisterSignal(sigtarg, COMSIG_ITEM_PICKUP, .proc/input_stimulus_pickup) - //RegisterSignal(sigtarg, COMSIG_MOVABLE_IMPACT, .proc/input_stimulus_impact) - // RegisterSignal(sigtarg, COMSIG_ITEM_MICROWAVE_ACT, .proc/input_stimulus_microwave) - // RegisterSignal(sigtarg, COMSIG_ITEM_MOUSE_ENTER, .proc/input_stimulus_mouse_enter) - // RegisterSignal(sigtarg, COMSIG_ITEM_MOUSE_EXIT, .proc/input_stimulus_mouse_exit) - RegisterSignal(sigtarg, COMSIG_MOVABLE_HEAR, .proc/input_heard) - RegisterSignal(sigtarg, COMSIG_BB_HOST_TO_PC_AMOUR_MOD, .proc/get_host_modifier) + RegisterSignal(sigtarg, COMSIG_ITEM_RECYCLED,PROC_REF(crushed)) + RegisterSignal(sigtarg, COMSIG_BB_HOST_TO_PC_STIMULUS,PROC_REF(input_stimulus)) + RegisterSignal(sigtarg, COMSIG_ITEM_DROPPED,PROC_REF(input_stimulus_dropped)) + RegisterSignal(sigtarg, COMSIG_ITEM_EQUIPPED,PROC_REF(input_stimulus_equipped)) + //RegisterSignal(sigtarg, COMSIG_ITEM_CLICKED,PROC_REF(input_stimulus_clicked)) // yeah these dont work + //RegisterSignal(sigtarg, COMSIG_ITEM_PICKUP,PROC_REF(input_stimulus_pickup)) + //RegisterSignal(sigtarg, COMSIG_MOVABLE_IMPACT,PROC_REF(input_stimulus_impact)) + // RegisterSignal(sigtarg, COMSIG_ITEM_MICROWAVE_ACT,PROC_REF(input_stimulus_microwave)) + // RegisterSignal(sigtarg, COMSIG_ITEM_MOUSE_ENTER,PROC_REF(input_stimulus_mouse_enter)) + // RegisterSignal(sigtarg, COMSIG_ITEM_MOUSE_EXIT,PROC_REF(input_stimulus_mouse_exit)) + RegisterSignal(sigtarg, COMSIG_MOVABLE_HEAR,PROC_REF(input_heard)) + RegisterSignal(sigtarg, COMSIG_BB_HOST_TO_PC_AMOUR_MOD,PROC_REF(get_host_modifier)) /obj/item/persona_core/proc/crushed() SIGNAL_HANDLER @@ -1183,7 +1183,7 @@ busy_for = setting /obj/item/persona_core/process() - INVOKE_ASYNC(src, .proc/process_impulses) + INVOKE_ASYNC(src,PROC_REF(process_impulses)) /obj/item/persona_core/proc/process_impulses() busy_for = max(busy_for - 1, 0) diff --git a/code/game/objects/items/devices/portable_chem_blenderbelt.dm b/code/game/objects/items/devices/portable_chem_blenderbelt.dm index 0381af516ed..86c1915c117 100644 --- a/code/game/objects/items/devices/portable_chem_blenderbelt.dm +++ b/code/game/objects/items/devices/portable_chem_blenderbelt.dm @@ -80,9 +80,9 @@ /obj/item/storage/blender_belt/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_BB_PC_TO_HOST_REQUEST, .proc/handle_request) - RegisterSignal(src, COMSIG_BB_PC_TO_HOST_IMPULSE, .proc/handle_impulse) - RegisterSignal(src, COMSIG_BB_PC_TO_HOST_CAN_INSERT, .proc/can_insert) + RegisterSignal(src, COMSIG_BB_PC_TO_HOST_REQUEST,PROC_REF(handle_request)) + RegisterSignal(src, COMSIG_BB_PC_TO_HOST_IMPULSE,PROC_REF(handle_impulse)) + RegisterSignal(src, COMSIG_BB_PC_TO_HOST_CAN_INSERT,PROC_REF(can_insert)) /obj/item/storage/blender_belt/ex_act(severity, target) if(severity < 3) @@ -135,27 +135,27 @@ return switch(first_impulse) if(IMPULSE_START) - INVOKE_ASYNC(src, .proc/start_running, subject, grind_or_juice) + INVOKE_ASYNC(src,PROC_REF(start_running), subject, grind_or_juice) if(IMPULSE_STOP) - INVOKE_ASYNC(src, .proc/stop_running) + INVOKE_ASYNC(src,PROC_REF(stop_running)) if(IMPULSE_SET_GRINDER) if(second_impulse == IMPULSE_START) - INVOKE_ASYNC(src, .proc/start_running, subject, BLENDER_BLENDMODE_GRIND) + INVOKE_ASYNC(src,PROC_REF(start_running), subject, BLENDER_BLENDMODE_GRIND) else grind_or_juice = BLENDER_BLENDMODE_GRIND if(IMPULSE_SET_JUICER) if(second_impulse == IMPULSE_START) - INVOKE_ASYNC(src, .proc/start_running, subject, BLENDER_BLENDMODE_JUICE) + INVOKE_ASYNC(src,PROC_REF(start_running), subject, BLENDER_BLENDMODE_JUICE) else grind_or_juice = BLENDER_BLENDMODE_JUICE if(IMPULSE_SET_GRINDER) - INVOKE_ASYNC(src, .proc/set_blender, subject) + INVOKE_ASYNC(src,PROC_REF(set_blender), subject) if(IMPULSE_SET_DISPENSER) - INVOKE_ASYNC(src, .proc/set_dispenser, subject) + INVOKE_ASYNC(src,PROC_REF(set_dispenser), subject) if(IMPULSE_EJECT) - INVOKE_ASYNC(src, .proc/eject_all, subject) + INVOKE_ASYNC(src,PROC_REF(eject_all), subject) if(IMPULSE_EXAMINE) - INVOKE_ASYNC(src, .proc/describe_contents, subject) + INVOKE_ASYNC(src,PROC_REF(describe_contents), subject) if(IMPULSE_HORRIBLE_NOISES) use_horrible_grinding_noises = TRUE return TRUE @@ -197,7 +197,7 @@ if(grind_or_dispense != BLENDER_BELTMODE_BLENDER) set_blender(user) blending = TRUE - INVOKE_ASYNC(src, .proc/blend_loop, user) + INVOKE_ASYNC(src,PROC_REF(blend_loop), user) /obj/item/storage/blender_belt/proc/get_run_time(mob/user) BLENDER_GET_SUBJECT @@ -241,7 +241,7 @@ playsound(src, 'sound/machines/blender.ogg', 50, 1) else playsound(src, 'sound/machines/juicer.ogg', 20, 1) - if(!do_after(user, get_run_time(user), needhand = FALSE, target = src, extra_checks = CALLBACK(src, .proc/still_running), allow_movement = TRUE)) + if(!do_after(user, get_run_time(user), needhand = FALSE, target = src, extra_checks = CALLBACK(src,PROC_REF(still_running)), allow_movement = TRUE)) if(blending) SEND_SIGNAL(src, COMSIG_BB_HOST_TO_PC_STIMULUS, STIMULUS_ROCKY_ABORT, subject) else @@ -261,7 +261,7 @@ SEND_SIGNAL(src, COMSIG_BB_HOST_TO_PC_STIMULUS, STIMULUS_FULL_SECOND, subject) abort() return FALSE - INVOKE_ASYNC(src, .proc/blend_loop, user) // and loop! + INVOKE_ASYNC(src,PROC_REF(blend_loop), user) // and loop! /obj/item/storage/blender_belt/proc/get_thing_to_blend(mob/user) for(var/obj/item/thing in contents) diff --git a/code/game/objects/items/devices/pressureplates.dm b/code/game/objects/items/devices/pressureplates.dm index 2beb3602164..a764e4a3bfa 100644 --- a/code/game/objects/items/devices/pressureplates.dm +++ b/code/game/objects/items/devices/pressureplates.dm @@ -33,7 +33,7 @@ hide(TRUE) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -49,7 +49,7 @@ else if(!trigger_item) return can_trigger = FALSE - addtimer(CALLBACK(src, .proc/trigger), trigger_delay) + addtimer(CALLBACK(src,PROC_REF(trigger)), trigger_delay) /obj/item/pressure_plate/proc/trigger() can_trigger = TRUE diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 2fd89c19735..9427a79f1c5 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -230,7 +230,7 @@ spans = list(M.speech_span) if(!language) language = M.get_selected_language() - INVOKE_ASYNC(src, .proc/talk_into_impl, M, message, channel, spans.Copy(), language) + INVOKE_ASYNC(src,PROC_REF(talk_into_impl), M, message, channel, spans.Copy(), language) return ITALICS | REDUCE_RANGE /obj/item/radio/proc/talk_into_impl(atom/movable/M, message, channel, list/spans, datum/language/language) @@ -307,7 +307,7 @@ // Non-subspace radios will check in a couple of seconds, and if the signal // was never received, send a mundane broadcast (no headsets). - addtimer(CALLBACK(src, .proc/backup_transmission, signal), 20) + addtimer(CALLBACK(src,PROC_REF(backup_transmission), signal), 20) /obj/item/radio/proc/backup_transmission(datum/signal/subspace/vocal/signal) var/turf/T = get_turf(src) diff --git a/code/game/objects/items/devices/reverse_bear_trap.dm b/code/game/objects/items/devices/reverse_bear_trap.dm index 31b9312ffd2..5ec30583ae6 100644 --- a/code/game/objects/items/devices/reverse_bear_trap.dm +++ b/code/game/objects/items/devices/reverse_bear_trap.dm @@ -43,7 +43,7 @@ soundloop.stop() soundloop2.stop() to_chat(loc, span_userdanger("*ding*")) - addtimer(CALLBACK(src, .proc/snap), 2) + addtimer(CALLBACK(src,PROC_REF(snap)), 2) /obj/item/reverse_bear_trap/on_attack_hand(mob/user, act_intent = user.a_intent, unarmed_attack_flags) if(iscarbon(user)) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 6802b223a5f..149c0d41c25 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -1068,7 +1068,7 @@ GENETICS SCANNER ready = FALSE icon_state = "[icon_state]_recharging" - addtimer(CALLBACK(src, .proc/recharge), cooldown, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(recharge)), cooldown, TIMER_UNIQUE) /obj/item/sequence_scanner/proc/recharge() icon_state = initial(icon_state) diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index 826408c08b4..5fd6e81f987 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -92,7 +92,7 @@ effective or pretty fucking useless. addtimer(VARSET_CALLBACK(src, used, FALSE), cooldown) addtimer(VARSET_CALLBACK(src, icon_state, "health"), cooldown) to_chat(user, span_warning("Successfully irradiated [M].")) - addtimer(CALLBACK(src, .proc/radiation_aftereffect, M), (wavelength+(intensity*4))*5) + addtimer(CALLBACK(src,PROC_REF(radiation_aftereffect), M), (wavelength+(intensity*4))*5) else to_chat(user, span_warning("The radioactive microlaser is still recharging.")) diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index b9534526530..e5eedcade2e 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -20,7 +20,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -85,7 +85,7 @@ /obj/item/transfer_valve/proc/on_entered(atom/movable/AM as mob|obj) SIGNAL_HANDLER if(attached_device) - INVOKE_ASYNC(attached_device, .proc/on_entered, AM) + INVOKE_ASYNC(attached_device,PROC_REF(on_entered), AM) /obj/item/transfer_valve/on_attack_hand()//Triggers mousetraps . = ..() @@ -143,7 +143,7 @@ if(toggle) toggle = FALSE toggle_valve() - addtimer(CALLBACK(src, .proc/toggle_off), 5) //To stop a signal being spammed from a proxy sensor constantly going off or whatever + addtimer(CALLBACK(src,PROC_REF(toggle_off)), 5) //To stop a signal being spammed from a proxy sensor constantly going off or whatever /obj/item/transfer_valve/proc/toggle_off() toggle = TRUE diff --git a/code/game/objects/items/dualsaber.dm b/code/game/objects/items/dualsaber.dm index 248b162b4ff..b69805ea801 100644 --- a/code/game/objects/items/dualsaber.dm +++ b/code/game/objects/items/dualsaber.dm @@ -88,8 +88,8 @@ /obj/item/dualsaber/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) /obj/item/dualsaber/ComponentInitialize() . = ..() @@ -162,7 +162,7 @@ impale(user) return if(spinnable && (wielded) && prob(50)) - INVOKE_ASYNC(src, .proc/jedi_spin, user) + INVOKE_ASYNC(src,PROC_REF(jedi_spin), user) /obj/item/dualsaber/proc/jedi_spin(mob/living/user) for(var/i in list(NORTH,SOUTH,EAST,WEST,EAST,SOUTH,NORTH,SOUTH,EAST,WEST,EAST,SOUTH)) @@ -218,7 +218,7 @@ add_fingerprint(user) // Light your candles while spinning around the room if(spinnable) - INVOKE_ASYNC(src, .proc/jedi_spin, user) + INVOKE_ASYNC(src,PROC_REF(jedi_spin), user) /obj/item/dualsaber/green possible_colors = list("green") diff --git a/code/game/objects/items/eightball.dm b/code/game/objects/items/eightball.dm index 5bac2821afa..cc0f044c5f9 100644 --- a/code/game/objects/items/eightball.dm +++ b/code/game/objects/items/eightball.dm @@ -64,7 +64,7 @@ say(answer) on_cooldown = TRUE - addtimer(CALLBACK(src, .proc/clear_cooldown), cooldown_time) + addtimer(CALLBACK(src,PROC_REF(clear_cooldown)), cooldown_time) shaking = FALSE diff --git a/code/game/objects/items/electrostaff.dm b/code/game/objects/items/electrostaff.dm index 8492befed22..9bd9e1b73b1 100644 --- a/code/game/objects/items/electrostaff.dm +++ b/code/game/objects/items/electrostaff.dm @@ -74,8 +74,8 @@ . = ..() if(ispath(cell)) cell = new cell - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/turn_on) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/turn_off) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(turn_on)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(turn_off)) /obj/item/electrostaff/ComponentInitialize() . = ..() diff --git a/code/game/objects/items/fishingrod.dm b/code/game/objects/items/fishingrod.dm index b0e5607585d..fb55f7a52e4 100644 --- a/code/game/objects/items/fishingrod.dm +++ b/code/game/objects/items/fishingrod.dm @@ -59,7 +59,7 @@ GLOBAL_LIST_INIT(fish_rates, list( return if(current_user) UnregisterSignal(current_user, COMSIG_MOVABLE_MOVED) - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/falsify_inuse) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(falsify_inuse)) current_user = user /obj/item/fishingrod/dropped(mob/user) @@ -95,7 +95,7 @@ GLOBAL_LIST_INIT(fish_rates, list( return //yea, we aren't terraria with a fishing rod that has multiple lines inuse = TRUE var/random_fishtime = rand(min_fishtime, max_fishtime) - addtimer(CALLBACK(src, .proc/play_readysound), random_fishtime) + addtimer(CALLBACK(src,PROC_REF(play_readysound)), random_fishtime) current_wait = world.time + random_fishtime current_waitfail = current_wait + max_afterfish to_chat(current_user, span_notice("You cast your fishing line, get ready to reel it back in!")) @@ -186,7 +186,7 @@ GLOBAL_LIST_INIT(fish_rates, list( return //yea, we aren't terraria with a fishing rod that has multiple lines inuse = TRUE var/random_fishtime = rand(min_fishtime, max_fishtime) - addtimer(CALLBACK(src, .proc/play_readysound), random_fishtime) + addtimer(CALLBACK(src,PROC_REF(play_readysound)), random_fishtime) current_wait = world.time + random_fishtime current_waitfail = current_wait + max_afterfish to_chat(current_user, span_notice("You cast your fishing line, get ready to reel it back in!")) diff --git a/code/game/objects/items/grenades/chem_grenade.dm b/code/game/objects/items/grenades/chem_grenade.dm index 57693ff2731..97d35ecf5a6 100644 --- a/code/game/objects/items/grenades/chem_grenade.dm +++ b/code/game/objects/items/grenades/chem_grenade.dm @@ -26,7 +26,7 @@ stage_change() // If no argument is set, it will change the stage to the current stage, useful for stock grenades that start READY. var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -161,7 +161,7 @@ /obj/item/grenade/chem_grenade/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER if(nadeassembly) - INVOKE_ASYNC(nadeassembly, .proc/on_entered, AM) + INVOKE_ASYNC(nadeassembly,PROC_REF(on_entered), AM) /obj/item/grenade/chem_grenade/on_found(mob/finder) if(nadeassembly) @@ -318,7 +318,7 @@ message_admins("grenade primed by an assembly at [AREACOORD(DT)], attached by [ADMIN_LOOKUPFLW(M)] and last touched by [ADMIN_LOOKUPFLW(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name]).") log_game("grenade primed by an assembly at [AREACOORD(DT)], attached by [key_name(M)] and last touched by [key_name(last)] ([nadeassembly.a_left.name] and [nadeassembly.a_right.name])") else - addtimer(CALLBACK(src, .proc/prime), det_time) + addtimer(CALLBACK(src,PROC_REF(prime)), det_time) log_game("A grenade detonated at [AREACOORD(DT)]") return TRUE diff --git a/code/game/objects/items/grenades/clusterbuster.dm b/code/game/objects/items/grenades/clusterbuster.dm index 9980ff34cec..11c5442c15f 100644 --- a/code/game/objects/items/grenades/clusterbuster.dm +++ b/code/game/objects/items/grenades/clusterbuster.dm @@ -58,7 +58,7 @@ var/steps = rand(1,4) for(var/i in 1 to steps) step_away(src,loc) - addtimer(CALLBACK(src, .proc/prime), rand(15,60)) + addtimer(CALLBACK(src,PROC_REF(prime)), rand(15,60)) /obj/item/grenade/clusterbuster/segment/prime(mob/living/lanced_by) new payload_spawner(drop_location(), payload, rand(min_spawned,max_spawned)) diff --git a/code/game/objects/items/grenades/ghettobomb.dm b/code/game/objects/items/grenades/ghettobomb.dm index d04ab00e54f..c352cf8e5ec 100644 --- a/code/game/objects/items/grenades/ghettobomb.dm +++ b/code/game/objects/items/grenades/ghettobomb.dm @@ -150,7 +150,7 @@ item_state = initial(item_state) + "_active" if(isGlass) return - addtimer(CALLBACK(src, .proc/splash_and_boom), 5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(splash_and_boom)), 5 SECONDS) /obj/item/reagent_containers/food/drinks/bottle/molotov/proc/make_boom() var/boomsize diff --git a/code/game/objects/items/grenades/grenade.dm b/code/game/objects/items/grenades/grenade.dm index 2e24bc16d01..073534f9ffa 100644 --- a/code/game/objects/items/grenades/grenade.dm +++ b/code/game/objects/items/grenades/grenade.dm @@ -40,7 +40,7 @@ /obj/item/grenade/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_VORE_ATOM_DIGESTED, .proc/vore_prime) + RegisterSignal(src, COMSIG_VORE_ATOM_DIGESTED,PROC_REF(vore_prime)) /obj/item/grenade/deconstruct(disassembled = TRUE) if(!disassembled) @@ -102,7 +102,7 @@ span_userdanger("Uh oh."), pref_check = VOREPREF_VORE_MESSAGES ) - INVOKE_ASYNC(src, .proc/preprime, vorer, null, FALSE, 100) + INVOKE_ASYNC(src,PROC_REF(preprime), vorer, null, FALSE, 100) return TRUE // for electric beep on activation @@ -120,7 +120,7 @@ active = TRUE icon_state = initial(icon_state) + "_active" item_state = initial(item_state) + "_active" - addtimer(CALLBACK(src, .proc/prime), isnull(delayoverride)? det_time : delayoverride) + addtimer(CALLBACK(src,PROC_REF(prime)), isnull(delayoverride)? det_time : delayoverride) // Turn on the grenade if shot /obj/item/grenade/bullet_act(obj/item/projectile/P) @@ -147,7 +147,7 @@ active = TRUE icon_state = initial(icon_state) + "_active" item_state = initial(item_state) + "_active" - addtimer(CALLBACK(src, .proc/prime), isnull(delayoverride)? det_time : delayoverride) + addtimer(CALLBACK(src,PROC_REF(prime)), isnull(delayoverride)? det_time : delayoverride) // For hissing fuse sound /obj/item/grenade/proc/primefuse(mob/user, delayoverride, msg = TRUE, volume = 60) @@ -164,7 +164,7 @@ active = TRUE icon_state = initial(icon_state) + "_active" item_state = initial(item_state) + "_active" - addtimer(CALLBACK(src, .proc/prime), isnull(delayoverride)? det_time : delayoverride) + addtimer(CALLBACK(src,PROC_REF(prime)), isnull(delayoverride)? det_time : delayoverride) /obj/item/grenade/proc/prime(mob/living/lanced_by) diff --git a/code/game/objects/items/grenades/plastic.dm b/code/game/objects/items/grenades/plastic.dm index 1e023395bca..62d42923d1d 100644 --- a/code/game/objects/items/grenades/plastic.dm +++ b/code/game/objects/items/grenades/plastic.dm @@ -25,7 +25,7 @@ plastic_overlay = mutable_appearance(icon, "[item_state]2", HIGH_OBJ_LAYER) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -66,7 +66,7 @@ if(!QDELETED(target)) location = get_turf(target) target.cut_overlay(plastic_overlay) - UnregisterSignal(target, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/add_plastic_overlay) + UnregisterSignal(target, COMSIG_ATOM_UPDATE_OVERLAYS,PROC_REF(add_plastic_overlay)) if(!ismob(target) || full_damage_on_mobs) target.ex_act(EXPLODE_HEAVY, target) else @@ -89,7 +89,7 @@ /obj/item/grenade/plastic/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER if(nadeassembly) - INVOKE_ASYNC(nadeassembly, .proc/on_entered, AM) + INVOKE_ASYNC(nadeassembly,PROC_REF(on_entered), AM) /obj/item/grenade/plastic/on_found(mob/finder) if(nadeassembly) @@ -133,11 +133,11 @@ I.embedding["embed_chance"] = 0 I.updateEmbedding() - RegisterSignal(target, COMSIG_ATOM_UPDATE_OVERLAYS, .proc/add_plastic_overlay) + RegisterSignal(target, COMSIG_ATOM_UPDATE_OVERLAYS,PROC_REF(add_plastic_overlay)) target.update_icon() if(!nadeassembly) to_chat(user, span_notice("You plant the bomb. Timer counting down from [det_time].")) - addtimer(CALLBACK(src, .proc/prime), det_time*10) + addtimer(CALLBACK(src,PROC_REF(prime)), det_time*10) else qdel(src) //How? diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index be9b7372511..2e677f8be12 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -254,7 +254,7 @@ icon_state = "[initial(icon_state)][armed]" var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/spring_trap, + COMSIG_ATOM_ENTERED =PROC_REF(spring_trap), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -324,7 +324,7 @@ /obj/item/restraints/legcuffs/beartrap/energy/New() ..() - addtimer(CALLBACK(src, .proc/dissipate), 100) + addtimer(CALLBACK(src,PROC_REF(dissipate)), 100) /obj/item/restraints/legcuffs/beartrap/energy/proc/dissipate() if(!ismob(loc)) diff --git a/code/game/objects/items/his_grace.dm b/code/game/objects/items/his_grace.dm index 35923866bbe..12de778bdd6 100644 --- a/code/game/objects/items/his_grace.dm +++ b/code/game/objects/items/his_grace.dm @@ -29,7 +29,7 @@ . = ..() START_PROCESSING(SSprocessing, src) GLOB.poi_list += src - RegisterSignal(src, COMSIG_MOVABLE_POST_THROW, .proc/move_gracefully) + RegisterSignal(src, COMSIG_MOVABLE_POST_THROW,PROC_REF(move_gracefully)) /obj/item/his_grace/Destroy() STOP_PROCESSING(SSprocessing, src) @@ -40,7 +40,7 @@ /obj/item/his_grace/attack_self(mob/living/user) if(!awakened) - INVOKE_ASYNC(src, .proc/awaken, user) + INVOKE_ASYNC(src,PROC_REF(awaken), user) /obj/item/his_grace/attack(mob/living/M, mob/user) if(awakened && M.stat) diff --git a/code/game/objects/items/holy_weapons.dm b/code/game/objects/items/holy_weapons.dm index 4369b6bf9e0..f93b36e62f2 100644 --- a/code/game/objects/items/holy_weapons.dm +++ b/code/game/objects/items/holy_weapons.dm @@ -319,7 +319,7 @@ nullrod_icons = sortList(nullrod_icons) - var/choice = show_radial_menu(L, src , nullrod_icons, custom_check = CALLBACK(src, .proc/check_menu, L), radius = 42, require_near = TRUE) + var/choice = show_radial_menu(L, src , nullrod_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), L), radius = 42, require_near = TRUE) if(!choice || !check_menu(L)) return @@ -614,7 +614,7 @@ playsound(get_turf(user), 'sound/effects/woodhit.ogg', 75, 1, -1) H.adjustStaminaLoss(rand(12,18)) if(prob(25)) - (INVOKE_ASYNC(src, .proc/jedi_spin, user)) + (INVOKE_ASYNC(src,PROC_REF(jedi_spin), user)) else return ..() diff --git a/code/game/objects/items/hot_potato.dm b/code/game/objects/items/hot_potato.dm index db639efa29c..d908a8daae4 100644 --- a/code/game/objects/items/hot_potato.dm +++ b/code/game/objects/items/hot_potato.dm @@ -136,7 +136,7 @@ ADD_TRAIT(src, TRAIT_NODROP, HOT_POTATO_TRAIT) name = "primed [name]" activation_time = timer + world.time - detonation_timerid = addtimer(CALLBACK(src, .proc/detonate), delay, TIMER_STOPPABLE) + detonation_timerid = addtimer(CALLBACK(src,PROC_REF(detonate)), delay, TIMER_STOPPABLE) START_PROCESSING(SSfastprocess, src) var/turf/T = get_turf(src) message_admins("[user? "[ADMIN_LOOKUPFLW(user)] has primed [src]" : "A [src] has been primed"] (Timer:[delay],Explosive:[detonate_explosion],Range:[detonate_dev_range]/[detonate_heavy_range]/[detonate_light_range]/[detonate_fire_range]) for detonation at [ADMIN_VERBOSEJMP(T)]") diff --git a/code/game/objects/items/implants/implant_explosive.dm b/code/game/objects/items/implants/implant_explosive.dm index faa00b9486d..335bdc3001e 100644 --- a/code/game/objects/items/implants/implant_explosive.dm +++ b/code/game/objects/items/implants/implant_explosive.dm @@ -37,7 +37,7 @@ popup = FALSE if(response == "No") return FALSE - addtimer(CALLBACK(src, .proc/timed_explosion, cause), 1) + addtimer(CALLBACK(src,PROC_REF(timed_explosion), cause), 1) /obj/item/implant/explosive/implant(mob/living/target) for(var/X in target.implants) @@ -65,10 +65,10 @@ if(delay > 7) imp_in?.visible_message(span_warning("[imp_in] starts beeping ominously!")) playsound(get_turf(imp_in ? imp_in : src), 'sound/items/timer.ogg', 30, 0) - addtimer(CALLBACK(src, .proc/double_pain, TRUE), delay * 0.25) - addtimer(CALLBACK(src, .proc/double_pain), delay * 0.5) - addtimer(CALLBACK(src, .proc/double_pain), delay * 0.75) - addtimer(CALLBACK(src, .proc/boom_goes_the_weasel), delay) + addtimer(CALLBACK(src,PROC_REF(double_pain), TRUE), delay * 0.25) + addtimer(CALLBACK(src,PROC_REF(double_pain)), delay * 0.5) + addtimer(CALLBACK(src,PROC_REF(double_pain)), delay * 0.75) + addtimer(CALLBACK(src,PROC_REF(boom_goes_the_weasel)), delay) else //If the delay is short, just blow up already jeez boom_goes_the_weasel() diff --git a/code/game/objects/items/implants/implant_misc.dm b/code/game/objects/items/implants/implant_misc.dm index f32dc194344..fb3be05d856 100644 --- a/code/game/objects/items/implants/implant_misc.dm +++ b/code/game/objects/items/implants/implant_misc.dm @@ -35,7 +35,7 @@ return dat /obj/item/implant/adrenalin/post_implant(mob/living/target, mob/living/user, silent = FALSE) - RegisterSignal(target, COMSIG_MOB_STATCHANGE, .proc/prejuice) + RegisterSignal(target, COMSIG_MOB_STATCHANGE,PROC_REF(prejuice)) return /obj/item/implant/adrenalin/post_removed(mob/living/source, silent = FALSE, special = 0) @@ -49,7 +49,7 @@ if(newstat == CONSCIOUS) return playsound(imp_in, 'sound/effects/autoinjector_beeps.ogg', 75, TRUE) - addtimer(CALLBACK(src, .proc/juice), 2 SECONDS) + addtimer(CALLBACK(src,PROC_REF(juice)), 2 SECONDS) /obj/item/implant/adrenalin/proc/juice() diff --git a/code/game/objects/items/implants/implant_stealth.dm b/code/game/objects/items/implants/implant_stealth.dm index eb58d76d1b3..9bc9dd94479 100644 --- a/code/game/objects/items/implants/implant_stealth.dm +++ b/code/game/objects/items/implants/implant_stealth.dm @@ -36,7 +36,7 @@ /obj/structure/closet/cardboard/agent/proc/reveal() alpha = 255 - addtimer(CALLBACK(src, .proc/go_invisible), 10, TIMER_OVERRIDE|TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(go_invisible)), 10, TIMER_OVERRIDE|TIMER_UNIQUE) /obj/structure/closet/cardboard/agent/Bump(atom/movable/A) . = ..() diff --git a/code/game/objects/items/loadout_beacons.dm b/code/game/objects/items/loadout_beacons.dm index b53bedefe09..31e100070c0 100644 --- a/code/game/objects/items/loadout_beacons.dm +++ b/code/game/objects/items/loadout_beacons.dm @@ -309,7 +309,7 @@ GLOBAL_LIST_EMPTY(loadout_boxes) /obj/item/kit_spawner/attack_self(mob/user) if(can_use_kit(user)) - INVOKE_ASYNC(src, .proc/use_the_kit, user) + INVOKE_ASYNC(src,PROC_REF(use_the_kit), user) else playsound(src, 'sound/machines/synth_no.ogg', 40, 1) @@ -376,7 +376,7 @@ GLOBAL_LIST_EMPTY(loadout_boxes) stop_using_the_kit(user) return //user.show_message("[final_key] selected!") - INVOKE_ASYNC(src, .proc/spawn_the_thing, user, GLOB.loadout_boxes[type][second_key][final_key], first_key) + INVOKE_ASYNC(src,PROC_REF(spawn_the_thing), user, GLOB.loadout_boxes[type][second_key][final_key], first_key) /obj/item/kit_spawner/proc/check_choice(choice_to_check) if(!choice_to_check) diff --git a/code/game/objects/items/mannequin.dm b/code/game/objects/items/mannequin.dm index f0c87be80aa..92f5a1a0d7b 100644 --- a/code/game/objects/items/mannequin.dm +++ b/code/game/objects/items/mannequin.dm @@ -22,7 +22,7 @@ /obj/item/mannequin/Initialize(mapload) . = ..() if(mapload) - addtimer(CALLBACK(src, .proc/set_looks), 30 SECONDS) + addtimer(CALLBACK(src,PROC_REF(set_looks)), 30 SECONDS) else set_looks() if(debug) @@ -57,7 +57,7 @@ my_overlay = SSdummy.get_dummy_image("mannequin", spec, dressup, null, null, null, random_body, random_species, random_outfit, TRUE, FALSE) update_icon() - addtimer(CALLBACK(src, .proc/set_looks), 1 HOURS) + addtimer(CALLBACK(src,PROC_REF(set_looks)), 1 HOURS) /obj/item/mannequin/update_overlays() . = ..() @@ -73,7 +73,7 @@ set_looks(src, user, user) /obj/item/mannequin/proc/debugify() - RegisterSignal(src, COMSIG_ITEM_ATTACKCHAIN, .proc/set_looks) + RegisterSignal(src, COMSIG_ITEM_ATTACKCHAIN,PROC_REF(set_looks)) /obj/item/mannequin/british_infantry name = "british infantry mannequin" diff --git a/code/game/objects/items/melee/f13twohanded.dm b/code/game/objects/items/melee/f13twohanded.dm index 49a48810544..6d0bfe2ff05 100644 --- a/code/game/objects/items/melee/f13twohanded.dm +++ b/code/game/objects/items/melee/f13twohanded.dm @@ -19,8 +19,8 @@ /obj/item/twohanded/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) force_unwielded = force diff --git a/code/game/objects/items/melee/weaponry.dm b/code/game/objects/items/melee/weaponry.dm index c59c271abe0..b1f0ed09b09 100644 --- a/code/game/objects/items/melee/weaponry.dm +++ b/code/game/objects/items/melee/weaponry.dm @@ -486,7 +486,7 @@ superlagg says: cool story, oranges var/mob/living/owner = loc if(!istype(owner)) return - RegisterSignal(owner, COMSIG_PARENT_EXAMINE, .proc/ownerExamined) + RegisterSignal(owner, COMSIG_PARENT_EXAMINE,PROC_REF(ownerExamined)) /obj/item/circlegame/Destroy() var/mob/owner = loc @@ -503,7 +503,7 @@ superlagg says: cool story, oranges /obj/item/circlegame/proc/ownerExamined(mob/living/owner, mob/living/sucker) if(!istype(sucker) || !in_range(owner, sucker)) return - addtimer(CALLBACK(src, .proc/waitASecond, owner, sucker), 4) + addtimer(CALLBACK(src,PROC_REF(waitASecond), owner, sucker), 4) /// Stage 2: Fear sets in /obj/item/circlegame/proc/waitASecond(mob/living/owner, mob/living/sucker) @@ -512,10 +512,10 @@ superlagg says: cool story, oranges if(owner == sucker) // big mood to_chat(owner, span_danger("Wait a second... you just looked at your own [src.name]!")) - addtimer(CALLBACK(src, .proc/selfGottem, owner), 10) + addtimer(CALLBACK(src,PROC_REF(selfGottem), owner), 10) else to_chat(sucker, span_danger("Wait a second... was that a-")) - addtimer(CALLBACK(src, .proc/GOTTEM, owner, sucker), 6) + addtimer(CALLBACK(src,PROC_REF(GOTTEM), owner, sucker), 6) /// Stage 3A: We face our own failures /obj/item/circlegame/proc/selfGottem(mob/living/owner) @@ -641,8 +641,8 @@ superlagg says: cool story, oranges /obj/item/vibro_weapon/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) /obj/item/vibro_weapon/ComponentInitialize() . = ..() @@ -696,8 +696,8 @@ superlagg says: cool story, oranges /obj/item/pitchfork/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) /obj/item/pitchfork/ComponentInitialize() . = ..() diff --git a/code/game/objects/items/robot/robot_items.dm b/code/game/objects/items/robot/robot_items.dm index 66a9dbecf41..257d0500bdb 100644 --- a/code/game/objects/items/robot/robot_items.dm +++ b/code/game/objects/items/robot/robot_items.dm @@ -363,7 +363,7 @@ if(charging) return if(candy < candymax) - addtimer(CALLBACK(src, .proc/charge_lollipops), charge_delay) + addtimer(CALLBACK(src,PROC_REF(charge_lollipops)), charge_delay) charging = TRUE /obj/item/borg/lollipop/proc/charge_lollipops() diff --git a/code/game/objects/items/shields.dm b/code/game/objects/items/shields.dm index 906be1c2f4f..78ede3d9ab9 100644 --- a/code/game/objects/items/shields.dm +++ b/code/game/objects/items/shields.dm @@ -532,7 +532,7 @@ The telescopic shields are legacy and don't fit, but the code might be of intere /obj/item/shield/riot/implant/Moved() . = ..() if(istype(loc, /obj/item/organ/cyberimp/arm/shield)) - recharge_timerid = addtimer(CALLBACK(src, .proc/recharge), recharge_delay, flags = TIMER_STOPPABLE) + recharge_timerid = addtimer(CALLBACK(src,PROC_REF(recharge)), recharge_delay, flags = TIMER_STOPPABLE) else //extending if(recharge_timerid) deltimer(recharge_timerid) diff --git a/code/game/objects/items/singularityhammer.dm b/code/game/objects/items/singularityhammer.dm index fdbed015d25..768ffda323d 100644 --- a/code/game/objects/items/singularityhammer.dm +++ b/code/game/objects/items/singularityhammer.dm @@ -18,8 +18,8 @@ /obj/item/singularityhammer/New() ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) START_PROCESSING(SSobj, src) /obj/item/singularityhammer/ComponentInitialize() @@ -100,8 +100,8 @@ /obj/item/mjollnir/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) /obj/item/mjollnir/ComponentInitialize() . = ..() diff --git a/code/game/objects/items/stacks/medical.dm b/code/game/objects/items/stacks/medical.dm index 81d1c85a7d6..615246e8e6e 100644 --- a/code/game/objects/items/stacks/medical.dm +++ b/code/game/objects/items/stacks/medical.dm @@ -90,7 +90,7 @@ /obj/item/stack/medical/attack(mob/living/M, mob/user) . = ..() - INVOKE_ASYNC(src, .proc/try_heal, M, user) + INVOKE_ASYNC(src,PROC_REF(try_heal), M, user) /obj/item/stack/medical/proc/try_heal(mob/living/M, mob/user, just_check = FALSE) if(heal(M, user, just_check)) diff --git a/code/game/objects/items/stacks/sheets/glass.dm b/code/game/objects/items/stacks/sheets/glass.dm index 4cfbc344c3c..bd0660951b3 100644 --- a/code/game/objects/items/stacks/sheets/glass.dm +++ b/code/game/objects/items/stacks/sheets/glass.dm @@ -317,7 +317,7 @@ GLOBAL_LIST_INIT(plastitaniumglass_recipes, list( SSblackbox.record_feedback("tally", "station_mess_created", 1, name) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 3e0561cb7cd..92ed138645e 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -65,7 +65,7 @@ custom_materials[i] *= amount . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_movable_entered_occupied_turf, + COMSIG_ATOM_ENTERED =PROC_REF(on_movable_entered_occupied_turf), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -74,7 +74,7 @@ if(item_stack == src) continue if(can_merge(item_stack)) - INVOKE_ASYNC(src, .proc/merge_without_del, item_stack) + INVOKE_ASYNC(src,PROC_REF(merge_without_del), item_stack) if(zero_amount()) return INITIALIZE_HINT_QDEL var/list/temp_recipes = get_main_recipes() @@ -473,7 +473,7 @@ return if(!arrived.throwing && can_merge(arrived)) - INVOKE_ASYNC(src, .proc/merge, arrived) + INVOKE_ASYNC(src,PROC_REF(merge), arrived) /obj/item/stack/hitby(atom/movable/AM, skipcatch, hitpush, blocked, datum/thrownthing/throwingdatum) if(can_merge(AM, TRUE)) diff --git a/code/game/objects/items/storage/_storage.dm b/code/game/objects/items/storage/_storage.dm index 86a36853282..b59038cf749 100644 --- a/code/game/objects/items/storage/_storage.dm +++ b/code/game/objects/items/storage/_storage.dm @@ -17,7 +17,7 @@ /obj/item/storage/ComponentInitialize() AddComponent(component_type) - //RegisterSignal(src, COMSIG_VORE_ATOM_DIGESTED, .proc/dump_everything) // TODO: Make this work + //RegisterSignal(src, COMSIG_VORE_ATOM_DIGESTED,PROC_REF(dump_everything)) // TODO: Make this work /obj/item/storage/AllowDrop() return TRUE diff --git a/code/game/objects/items/storage/bags.dm b/code/game/objects/items/storage/bags.dm index 486d2486b49..79e9c4853a8 100644 --- a/code/game/objects/items/storage/bags.dm +++ b/code/game/objects/items/storage/bags.dm @@ -105,7 +105,7 @@ return if(listeningTo) UnregisterSignal(listeningTo, COMSIG_MOVABLE_MOVED) - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/Pickup_ores) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(Pickup_ores)) listeningTo = user /obj/item/storage/bag/ore/dropped(mob/user) @@ -462,7 +462,7 @@ obj/item/storage/bag/chemistry/tribal return if(listeningTo) UnregisterSignal(listeningTo, COMSIG_MOVABLE_MOVED) - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/Pickup_casings) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(Pickup_casings)) listeningTo = user diff --git a/code/game/objects/items/storage/book.dm b/code/game/objects/items/storage/book.dm index 3f4fc259dab..1c65b20f9ec 100644 --- a/code/game/objects/items/storage/book.dm +++ b/code/game/objects/items/storage/book.dm @@ -56,7 +56,7 @@ GLOBAL_LIST_INIT(bibleitemstates, list("bible", "koran", "scrapbook", "bible", var/image/bible_image = image(icon = 'icons/obj/storage.dmi', icon_state = GLOB.biblestates[i]) skins += list("[GLOB.biblenames[i]]" = bible_image) - var/choice = show_radial_menu(user, src, skins, custom_check = CALLBACK(src, .proc/check_menu, user), radius = 40, require_near = TRUE) + var/choice = show_radial_menu(user, src, skins, custom_check = CALLBACK(src,PROC_REF(check_menu), user), radius = 40, require_near = TRUE) if(!choice) return FALSE var/bible_index = GLOB.biblenames.Find(choice) diff --git a/code/game/objects/items/storage/boxes.dm b/code/game/objects/items/storage/boxes.dm index 5abcaae6fcb..7ebf6afff8e 100644 --- a/code/game/objects/items/storage/boxes.dm +++ b/code/game/objects/items/storage/boxes.dm @@ -794,7 +794,7 @@ obj/item/storage/box/stingbangs /obj/item/storage/box/papersack/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/pen)) - var/choice = show_radial_menu(user, src , papersack_designs, custom_check = CALLBACK(src, .proc/check_menu, user, W), radius = 36, require_near = TRUE) + var/choice = show_radial_menu(user, src , papersack_designs, custom_check = CALLBACK(src,PROC_REF(check_menu), user, W), radius = 36, require_near = TRUE) if(!choice) return FALSE if(icon_state == "paperbag_[choice]") diff --git a/code/game/objects/items/tanks/jetpack.dm b/code/game/objects/items/tanks/jetpack.dm index 0793cfb25a1..1ba8b94a31a 100644 --- a/code/game/objects/items/tanks/jetpack.dm +++ b/code/game/objects/items/tanks/jetpack.dm @@ -57,7 +57,7 @@ on = TRUE icon_state = "[initial(icon_state)]-on" ion_trail.start() - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/move_react) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(move_react)) if(full_speed) user.add_movespeed_modifier(/datum/movespeed_modifier/jetpack/fullspeed) diff --git a/code/game/objects/items/teleportation.dm b/code/game/objects/items/teleportation.dm index c5489704d1b..47ceed39a82 100644 --- a/code/game/objects/items/teleportation.dm +++ b/code/game/objects/items/teleportation.dm @@ -184,8 +184,8 @@ var/list/obj/effect/portal/created = create_portal_pair(current_location, get_teleport_turf(get_turf(T)), 300, 1, null, atmos_link_override) if(!(LAZYLEN(created) == 2)) return - RegisterSignal(created[1], COMSIG_PARENT_QDELETING, .proc/on_portal_destroy) //Gosh darn it kevinz. - RegisterSignal(created[2], COMSIG_PARENT_QDELETING, .proc/on_portal_destroy) + RegisterSignal(created[1], COMSIG_PARENT_QDELETING,PROC_REF(on_portal_destroy)) //Gosh darn it kevinz. + RegisterSignal(created[2], COMSIG_PARENT_QDELETING,PROC_REF(on_portal_destroy)) try_move_adjacent(created[1], user.dir) active_portal_pairs[created[1]] = created[2] var/obj/effect/portal/c1 = created[1] diff --git a/code/game/objects/items/theft_tools.dm b/code/game/objects/items/theft_tools.dm index 6ad01a6a3fc..ef29d86e105 100644 --- a/code/game/objects/items/theft_tools.dm +++ b/code/game/objects/items/theft_tools.dm @@ -61,7 +61,7 @@ core = ncore icon_state = "core_container_loaded" to_chat(user, span_warning("Container is sealing...")) - addtimer(CALLBACK(src, .proc/seal), 50) + addtimer(CALLBACK(src,PROC_REF(seal)), 50) return TRUE /obj/item/nuke_core_container/proc/seal() @@ -208,7 +208,7 @@ T.icon_state = "supermatter_tongs" icon_state = "core_container_loaded" to_chat(user, span_warning("Container is sealing...")) - addtimer(CALLBACK(src, .proc/seal), 50) + addtimer(CALLBACK(src,PROC_REF(seal)), 50) return TRUE /obj/item/nuke_core_container/supermatter/seal() diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index fe674e80dbc..59db19077f1 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -408,7 +408,7 @@ active = TRUE playsound(src, 'sound/effects/pope_entry.ogg', 100) Rumble() - addtimer(CALLBACK(src, .proc/stopRumble), 600) + addtimer(CALLBACK(src,PROC_REF(stopRumble)), 600) else to_chat(user, "[src] is already active.") @@ -512,7 +512,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -551,7 +551,7 @@ /obj/effect/decal/cleanable/ash/snappop_phoenix/New() . = ..() - addtimer(CALLBACK(src, .proc/respawn), respawn_time) + addtimer(CALLBACK(src,PROC_REF(respawn)), respawn_time) /obj/effect/decal/cleanable/ash/snappop_phoenix/proc/respawn() new /obj/item/toy/snappop/phoenix(get_turf(src)) @@ -908,7 +908,7 @@ if(!(cardUser.mobility_flags & MOBILITY_USE)) return var/O = src - var/choice = show_radial_menu(usr,src, handradial, custom_check = CALLBACK(src, .proc/check_menu, user), radius = 36, require_near = TRUE) + var/choice = show_radial_menu(usr,src, handradial, custom_check = CALLBACK(src,PROC_REF(check_menu), user), radius = 36, require_near = TRUE) if(!choice) return FALSE var/obj/item/toy/cards/singlecard/C = new/obj/item/toy/cards/singlecard(cardUser.loc) diff --git a/code/game/objects/items/validball.dm b/code/game/objects/items/validball.dm index 62e68043547..61db948b8b1 100644 --- a/code/game/objects/items/validball.dm +++ b/code/game/objects/items/validball.dm @@ -27,7 +27,7 @@ /obj/item/validball/Initialize() . = ..() register_vb_datum() - addtimer(CALLBACK(src, .proc/activate_the_validball), autoreveal_time) + addtimer(CALLBACK(src,PROC_REF(activate_the_validball)), autoreveal_time) SSvalidball.valid_balls |= src /obj/item/validball/ComponentInitialize() @@ -178,7 +178,7 @@ user.show_message("You press the SCAN button, and [src] lets out an excited beep!") say(span_robot("Scanning for anomalous signals, please wait.")) currently_scanning = TRUE - addtimer(CALLBACK(src, .proc/read_scan_ping, user), scan_time) + addtimer(CALLBACK(src,PROC_REF(read_scan_ping), user), scan_time) /obj/item/pinpointer/validball_finder/proc/read_scan_ping() if(!isweakref(scan_turf)) diff --git a/code/game/objects/obj_defense.dm b/code/game/objects/obj_defense.dm index 5c926801ef2..f19a1d33ff0 100644 --- a/code/game/objects/obj_defense.dm +++ b/code/game/objects/obj_defense.dm @@ -248,7 +248,7 @@ GLOBAL_DATUM_INIT(acid_overlay, /mutable_appearance, mutable_appearance('icons/e if(QDELETED(src)) return 0 obj_flags |= BEING_SHOCKED - addtimer(CALLBACK(src, .proc/reset_shocked), 10) + addtimer(CALLBACK(src,PROC_REF(reset_shocked)), 10) return power / 2 //The surgeon general warns that being buckled to certain objects receiving powerful shocks is greatly hazardous to your health diff --git a/code/game/objects/structures/aliens.dm b/code/game/objects/structures/aliens.dm index 1faf6774deb..0af0f97bf06 100644 --- a/code/game/objects/structures/aliens.dm +++ b/code/game/objects/structures/aliens.dm @@ -230,7 +230,7 @@ if(status == GROWING || status == GROWN) child = new(src) if(status == GROWING) - addtimer(CALLBACK(src, .proc/Grow), rand(MIN_GROWTH_TIME, MAX_GROWTH_TIME)) + addtimer(CALLBACK(src,PROC_REF(Grow)), rand(MIN_GROWTH_TIME, MAX_GROWTH_TIME)) proximity_monitor = new(src, status == GROWN ? 1 : 0) if(status == BURST) obj_integrity = integrity_failure * max_integrity @@ -284,7 +284,7 @@ status = BURST update_icon() flick("egg_opening", src) - addtimer(CALLBACK(src, .proc/finish_bursting, kill), 15) + addtimer(CALLBACK(src,PROC_REF(finish_bursting), kill), 15) /obj/structure/alien/egg/proc/finish_bursting(kill = TRUE) if(child) diff --git a/code/game/objects/structures/barsigns.dm b/code/game/objects/structures/barsigns.dm index 929301288f0..1663b6c928f 100644 --- a/code/game/objects/structures/barsigns.dm +++ b/code/game/objects/structures/barsigns.dm @@ -111,7 +111,7 @@ return obj_flags |= EMAGGED to_chat(user, span_notice("You emag the barsign. Takeover in progress...")) - addtimer(CALLBACK(src, .proc/syndie_bar_good), 10 SECONDS) + addtimer(CALLBACK(src,PROC_REF(syndie_bar_good)), 10 SECONDS) return TRUE /obj/structure/sign/barsign/proc/syndie_bar_good() diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm index d1c726cac5e..a5eb8872877 100644 --- a/code/game/objects/structures/beds_chairs/chair.dm +++ b/code/game/objects/structures/beds_chairs/chair.dm @@ -25,11 +25,11 @@ /obj/structure/chair/Initialize() . = ..() if(!anchored) //why would you put these on the shuttle? - addtimer(CALLBACK(src, .proc/RemoveFromLatejoin), 0) + addtimer(CALLBACK(src,PROC_REF(RemoveFromLatejoin)), 0) /obj/structure/chair/ComponentInitialize() . = ..() - AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE, CALLBACK(src, .proc/can_user_rotate),CALLBACK(src, .proc/can_be_rotated),null) + AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE, CALLBACK(src,PROC_REF(can_user_rotate),CALLBACK(src),PROC_REF(can_be_rotated),null)) /obj/structure/chair/proc/can_be_rotated(mob/user) return TRUE diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index b510275c23d..4f8e7b3691b 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -52,7 +52,7 @@ if(anchored) storage_capacity = 30 if(mapload && !opened) // if closed, any item at the crate's loc is put in the contents - addtimer(CALLBACK(src, .proc/take_contents), 0) + addtimer(CALLBACK(src,PROC_REF(take_contents)), 0) if(secure) lockerelectronics = new(src) lockerelectronics.accesses = req_access diff --git a/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm b/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm index 21cab169636..14cbc10f72b 100644 --- a/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm +++ b/code/game/objects/structures/crates_lockers/closets/cardboardbox.dm @@ -27,7 +27,7 @@ step(src, direction) user.setDir(direction) if(oldloc != loc) - addtimer(CALLBACK(src, .proc/ResetMoveDelay), (use_mob_movespeed ? user.movement_delay() : CONFIG_GET(number/movedelay/walk_delay)) * move_speed_multiplier) + addtimer(CALLBACK(src,PROC_REF(ResetMoveDelay)), (use_mob_movespeed ? user.movement_delay() : CONFIG_GET(number/movedelay/walk_delay)) * move_speed_multiplier) else ResetMoveDelay() diff --git a/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm b/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm index 74da1a7634d..6daf5939e0c 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/supplypod.dm @@ -38,7 +38,7 @@ SupplyOrder = SO//uses Supply Order passed from expressconsole into BDPtarget else other_delivery = SO//if the object is not a supply order, we force the object in the pod - addtimer(CALLBACK(src, .proc/open), 30)//open 3seconds after appearing + addtimer(CALLBACK(src,PROC_REF(open)), 30)//open 3seconds after appearing /obj/structure/closet/supplypod/update_icon() cut_overlays() @@ -63,7 +63,7 @@ update_icon() playsound(src, open_sound, 15, 1, -3) if(istype(src,/obj/structure/closet/supplypod/bluespacepod)) - addtimer(CALLBACK(src, .proc/sparks), 30)//if bluespace, then 3 seconds after opening, make some sparks and delete + addtimer(CALLBACK(src,PROC_REF(sparks)), 30)//if bluespace, then 3 seconds after opening, make some sparks and delete /obj/structure/closet/supplypod/proc/sparks()//sparks cant be called from addtimer do_sparks(5, TRUE, src) @@ -115,12 +115,12 @@ if(POD_CENTCOM) //Admin smite, even faster. delayTime = 5//speedy delivery - addtimer(CALLBACK(src, .proc/beginLaunch, SO, podID), delayTime)//standard pods take 3 seconds to come in, bluespace pods take 1.5 + addtimer(CALLBACK(src,PROC_REF(beginLaunch), SO, podID), delayTime)//standard pods take 3 seconds to come in, bluespace pods take 1.5 /obj/effect/DPtarget/proc/beginLaunch(SO, podID) fallingPod = new /obj/effect/temp_visual/DPfall(drop_location(), podID) animate(fallingPod, pixel_z = 0, time = 3, easing = LINEAR_EASING)//make and animate a falling pod - addtimer(CALLBACK(src, .proc/endLaunch, SO, podID), 3, TIMER_CLIENT_TIME)//fall 0.3seconds + addtimer(CALLBACK(src,PROC_REF(endLaunch), SO, podID), 3, TIMER_CLIENT_TIME)//fall 0.3seconds /obj/effect/DPtarget/proc/endLaunch(SO, podID) if(podID == POD_STANDARD) diff --git a/code/game/objects/structures/femur_breaker.dm b/code/game/objects/structures/femur_breaker.dm index ed02a2122f0..064787c0a1c 100644 --- a/code/game/objects/structures/femur_breaker.dm +++ b/code/game/objects/structures/femur_breaker.dm @@ -45,7 +45,7 @@ if (BREAKER_SLAT_DROPPED) slat_status = BREAKER_SLAT_MOVING icon_state = "breaker_raise" - addtimer(CALLBACK(src, .proc/raise_slat), BREAKER_ANIMATION_LENGTH) + addtimer(CALLBACK(src,PROC_REF(raise_slat)), BREAKER_ANIMATION_LENGTH) return if (BREAKER_SLAT_RAISED) if (LAZYLEN(buckled_mobs)) @@ -90,7 +90,7 @@ playsound(src, 'sound/effects/femur_breaker.ogg', 100, FALSE) H.Stun(BREAKER_ANIMATION_LENGTH) - addtimer(CALLBACK(src, .proc/damage_leg, H), BREAKER_ANIMATION_LENGTH, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(damage_leg), H), BREAKER_ANIMATION_LENGTH, TIMER_UNIQUE) log_combat(user, H, "femur broke", src) slat_status = BREAKER_SLAT_DROPPED diff --git a/code/game/objects/structures/guillotine.dm b/code/game/objects/structures/guillotine.dm index ea6f6ddc634..ce8ca5b870f 100644 --- a/code/game/objects/structures/guillotine.dm +++ b/code/game/objects/structures/guillotine.dm @@ -64,7 +64,7 @@ if (GUILLOTINE_BLADE_DROPPED) blade_status = GUILLOTINE_BLADE_MOVING icon_state = "guillotine_raise" - addtimer(CALLBACK(src, .proc/raise_blade), GUILLOTINE_ANIMATION_LENGTH) + addtimer(CALLBACK(src,PROC_REF(raise_blade)), GUILLOTINE_ANIMATION_LENGTH) return if (GUILLOTINE_BLADE_RAISED) if (LAZYLEN(buckled_mobs)) @@ -77,7 +77,7 @@ current_action = 0 blade_status = GUILLOTINE_BLADE_MOVING icon_state = "guillotine_drop" - addtimer(CALLBACK(src, .proc/drop_blade, user), GUILLOTINE_ANIMATION_LENGTH - 2) // Minus two so we play the sound and decap faster + addtimer(CALLBACK(src,PROC_REF(drop_blade), user), GUILLOTINE_ANIMATION_LENGTH - 2) // Minus two so we play the sound and decap faster else current_action = 0 else @@ -90,7 +90,7 @@ else blade_status = GUILLOTINE_BLADE_MOVING icon_state = "guillotine_drop" - addtimer(CALLBACK(src, .proc/drop_blade), GUILLOTINE_ANIMATION_LENGTH) + addtimer(CALLBACK(src,PROC_REF(drop_blade)), GUILLOTINE_ANIMATION_LENGTH) /obj/structure/guillotine/proc/raise_blade() blade_status = GUILLOTINE_BLADE_RAISED diff --git a/code/game/objects/structures/hivebot.dm b/code/game/objects/structures/hivebot.dm index 669818ec888..bc922492712 100644 --- a/code/game/objects/structures/hivebot.dm +++ b/code/game/objects/structures/hivebot.dm @@ -15,7 +15,7 @@ smoke.start() visible_message(span_boldannounce("[src] warps in!")) playsound(src.loc, 'sound/effects/empulse.ogg', 25, 1) - addtimer(CALLBACK(src, .proc/warpbots), rand(10, 600)) + addtimer(CALLBACK(src,PROC_REF(warpbots)), rand(10, 600)) /obj/structure/hivebot_beacon/proc/warpbots() icon_state = "def_radar" diff --git a/code/game/objects/structures/holosign.dm b/code/game/objects/structures/holosign.dm index 167340be7cd..a31bcde36b7 100644 --- a/code/game/objects/structures/holosign.dm +++ b/code/game/objects/structures/holosign.dm @@ -195,7 +195,7 @@ var/mob/living/M = user M.electrocute_act(15,"Energy Barrier", flags = SHOCK_NOGLOVES) shockcd = TRUE - addtimer(CALLBACK(src, .proc/cooldown), 5) + addtimer(CALLBACK(src,PROC_REF(cooldown)), 5) /obj/structure/holosign/barrier/cyborg/hacked/Bumped(atom/movable/AM) if(shockcd) @@ -207,4 +207,4 @@ var/mob/living/M = AM M.electrocute_act(15,"Energy Barrier", flags = SHOCK_NOGLOVES) shockcd = TRUE - addtimer(CALLBACK(src, .proc/cooldown), 5) + addtimer(CALLBACK(src,PROC_REF(cooldown)), 5) diff --git a/code/game/objects/structures/icemoon/cave_entrance.dm b/code/game/objects/structures/icemoon/cave_entrance.dm index fc5aa22a59e..18f1c2291dd 100644 --- a/code/game/objects/structures/icemoon/cave_entrance.dm +++ b/code/game/objects/structures/icemoon/cave_entrance.dm @@ -112,7 +112,7 @@ GLOBAL_LIST_INIT(ore_probability, list(/obj/item/stack/ore/uranium = 50, playsound(loc,'sound/effects/tendril_destroyed.ogg', 200, FALSE, 50, TRUE, TRUE) visible_message(span_boldannounce("[src] begins to collapse, cutting it off from this world!")) animate(src, transform = matrix().Scale(0, 1), alpha = 50, time = 5 SECONDS) - addtimer(CALLBACK(src, .proc/collapse), 5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(collapse)), 5 SECONDS) /obj/effect/collapsing_demonic_portal/proc/collapse() visible_message(span_warning("Something slips out of [src]!")) diff --git a/code/game/objects/structures/janicart.dm b/code/game/objects/structures/janicart.dm index c643d108da9..eba1b31918e 100644 --- a/code/game/objects/structures/janicart.dm +++ b/code/game/objects/structures/janicart.dm @@ -111,7 +111,7 @@ if(!length(items)) return items = sortList(items) - var/pick = show_radial_menu(user, src, items, custom_check = CALLBACK(src, .proc/check_menu, user), radius = 38, require_near = TRUE) + var/pick = show_radial_menu(user, src, items, custom_check = CALLBACK(src,PROC_REF(check_menu), user), radius = 38, require_near = TRUE) if(!pick) return switch(pick) diff --git a/code/game/objects/structures/ladders.dm b/code/game/objects/structures/ladders.dm index fd7fb2a769f..e08967c8c82 100644 --- a/code/game/objects/structures/ladders.dm +++ b/code/game/objects/structures/ladders.dm @@ -104,18 +104,18 @@ if(UP) peeker.reset_perspective(up.loc) if(!LAZYACCESS(ladder_watchers, "[peek_dir]")) - RegisterSignal(up, COMSIG_CLICK, .proc/on_connected_ladder_clicked) + RegisterSignal(up, COMSIG_CLICK,PROC_REF(on_connected_ladder_clicked)) if(DOWN) peeker.reset_perspective(down.loc) if(!LAZYACCESS(ladder_watchers, "[peek_dir]")) - RegisterSignal(down, COMSIG_CLICK, .proc/on_connected_ladder_clicked) + RegisterSignal(down, COMSIG_CLICK,PROC_REF(on_connected_ladder_clicked)) else return LAZYADDASSOC(ladder_watchers, "[peek_dir]", peeker) - RegisterSignal(peeker, COMSIG_MOVABLE_MOVED, .proc/on_peeker_move) + RegisterSignal(peeker, COMSIG_MOVABLE_MOVED,PROC_REF(on_peeker_move)) // This is the closest thing this codebase has to an incapacitation signal. - RegisterSignal(peeker, COMSIG_DISABLE_COMBAT_MODE, .proc/stop_peeking) + RegisterSignal(peeker, COMSIG_DISABLE_COMBAT_MODE,PROC_REF(stop_peeking)) /obj/structure/ladder/proc/on_peeker_move(mob/source) @@ -224,7 +224,7 @@ if(!LAZYLEN(tool_list)) to_chat(user, span_warning("Well that's awkward, [src] couldn't generate a menu! This is probably a bug, please call 1-800-IMCODER")) return - var/result = show_radial_menu(user, src, tool_list, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE) + var/result = show_radial_menu(user, src, tool_list, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) if (!is_ghost && !in_range(src, user)) return // nice try switch(result) diff --git a/code/game/objects/structures/lavaland/necropolis_tendril.dm b/code/game/objects/structures/lavaland/necropolis_tendril.dm index 7811c6f85c4..3885ac32748 100644 --- a/code/game/objects/structures/lavaland/necropolis_tendril.dm +++ b/code/game/objects/structures/lavaland/necropolis_tendril.dm @@ -84,7 +84,7 @@ GLOBAL_LIST_INIT(tendrils, list()) visible_message(span_boldannounce("The tendril writhes in fury as the earth around it begins to crack and break apart! Get back!")) visible_message(span_warning("Something falls free of the tendril!")) playsound(loc,'sound/effects/tendril_destroyed.ogg', 200, 0, 50, 1, 1) - addtimer(CALLBACK(src, .proc/collapse), 50) + addtimer(CALLBACK(src,PROC_REF(collapse)), 50) /obj/effect/collapse/Destroy() QDEL_NULL(emitted_light) diff --git a/code/game/objects/structures/life_candle.dm b/code/game/objects/structures/life_candle.dm index be502a2128a..d30d1a38c70 100644 --- a/code/game/objects/structures/life_candle.dm +++ b/code/game/objects/structures/life_candle.dm @@ -64,7 +64,7 @@ for(var/m in linked_minds) var/datum/mind/mind = m if(!mind.current || (mind.current && mind.current.stat == DEAD)) - addtimer(CALLBACK(src, .proc/respawn, mind), respawn_time, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(respawn), mind), respawn_time, TIMER_UNIQUE) /obj/structure/life_candle/proc/respawn(datum/mind/mind) var/turf/T = get_turf(src) diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index e83dc4660fb..d89618f5c32 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -96,7 +96,7 @@ isSwitchingStates = 0 if(close_delay != -1) - addtimer(CALLBACK(src, .proc/Close), close_delay) + addtimer(CALLBACK(src,PROC_REF(Close)), close_delay) /obj/structure/mineral_door/proc/Close() if(isSwitchingStates || state != 1) diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index 93781915da1..ed94665f69a 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -30,7 +30,7 @@ var/action = anchored ? "unscrews [src] from" : "screws [src] to" var/uraction = anchored ? "unscrew [src] from " : "screw [src] to" user.visible_message(span_warning("[user] [action] the floor."), span_notice("You start to [uraction] the floor..."), "You hear rustling noises.") - if(W.use_tool(src, user, 100, volume=100, extra_checks = CALLBACK(src, .proc/check_anchored_state, anchored))) + if(W.use_tool(src, user, 100, volume=100, extra_checks = CALLBACK(src,PROC_REF(check_anchored_state), anchored))) setAnchored(!anchored) to_chat(user, span_notice(" You [anchored ? "unscrew" : "screw"] [src] from the floor.")) return TRUE diff --git a/code/game/objects/structures/railings.dm b/code/game/objects/structures/railings.dm index aaa70674c32..fc6213b5890 100644 --- a/code/game/objects/structures/railings.dm +++ b/code/game/objects/structures/railings.dm @@ -27,7 +27,7 @@ if(density && flags_1 & ON_BORDER_1) // blocks normal movement from and to the direction it's facing. var/static/list/loc_connections = list( - COMSIG_ATOM_EXIT = .proc/on_exit, + COMSIG_ATOM_EXIT =PROC_REF(on_exit), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -73,7 +73,7 @@ if(flags_1&NODECONSTRUCT_1) return to_chat(user, span_notice("You begin to [anchored ? "unfasten the railing from":"fasten the railing to"] the floor...")) - if(I.use_tool(src, user, volume = 75, extra_checks = CALLBACK(src, .proc/check_anchored, anchored))) + if(I.use_tool(src, user, volume = 75, extra_checks = CALLBACK(src,PROC_REF(check_anchored), anchored))) set_anchored(!anchored) to_chat(user, span_notice("You [anchored ? "fasten the railing to":"unfasten the railing from"] the floor.")) return TRUE diff --git a/code/game/objects/structures/stairs.dm b/code/game/objects/structures/stairs.dm index 3f0d8fb468b..0ebb7f00fb4 100644 --- a/code/game/objects/structures/stairs.dm +++ b/code/game/objects/structures/stairs.dm @@ -76,7 +76,7 @@ build_signal_listener() update_surrounding() var/static/list/loc_connections = list( - COMSIG_ATOM_EXIT = .proc/on_exit, + COMSIG_ATOM_EXIT =PROC_REF(on_exit), ) AddElement(/datum/element/connect_loc, loc_connections) if(destroy_in > STAIR_NOT_TEMPORARY) @@ -109,7 +109,7 @@ if(!isobserver(leaving) && isTerminator() && direction == dir) leaving.set_currently_z_moving(CURRENTLY_Z_ASCENDING) - INVOKE_ASYNC(src, .proc/stair_ascend, leaving) + INVOKE_ASYNC(src,PROC_REF(stair_ascend), leaving) leaving.Bump(src) return COMPONENT_ATOM_BLOCK_EXIT @@ -159,7 +159,7 @@ if(listeningTo) UnregisterSignal(listeningTo, COMSIG_TURF_MULTIZ_NEW) var/turf/open/transparent/openspace/T = get_step_multiz(get_turf(src), UP) - RegisterSignal(T, COMSIG_TURF_MULTIZ_NEW, .proc/on_multiz_new) + RegisterSignal(T, COMSIG_TURF_MULTIZ_NEW,PROC_REF(on_multiz_new)) listeningTo = T /obj/structure/stairs/proc/force_open_above() diff --git a/code/game/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index 5a71ab1a8fe..5ac60244945 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -16,7 +16,7 @@ . = ..() AddElement(/datum/element/art, impressiveness) addtimer(CALLBACK(src, /datum.proc/_AddElement, list(/datum/element/beauty, impressiveness * 75)), 0) - AddComponent(/datum/component/simple_rotation, ROTATION_ALTCLICK | ROTATION_CLOCKWISE, CALLBACK(src, .proc/can_user_rotate), CALLBACK(src, .proc/can_be_rotated), null) + AddComponent(/datum/component/simple_rotation, ROTATION_ALTCLICK | ROTATION_CLOCKWISE, CALLBACK(src,PROC_REF(can_user_rotate)), CALLBACK(src,PROC_REF(can_be_rotated)), null) /obj/structure/statue/proc/can_be_rotated(mob/user) if(!anchored) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index f3d9c57b4ea..e2d09e55392 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -269,14 +269,14 @@ /obj/structure/table/rolling/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) /obj/structure/table/rolling/AfterPutItemOnTable(obj/item/I, mob/living/user) . = ..() attached_items += I - RegisterSignal(I, COMSIG_MOVABLE_MOVED, .proc/RemoveItemFromTable) //Listen for the pickup event, unregister on pick-up so we aren't moved + RegisterSignal(I, COMSIG_MOVABLE_MOVED,PROC_REF(RemoveItemFromTable)) //Listen for the pickup event, unregister on pick-up so we aren't moved /obj/structure/table/rolling/proc/RemoveItemFromTable(datum/source, newloc, dir) if(newloc != loc) //Did we not move with the table? because that shit's ok @@ -286,7 +286,7 @@ /obj/structure/table/rolling/proc/on_entered(atom/OldLoc, Dir) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/on_move, OldLoc, Dir) + INVOKE_ASYNC(src,PROC_REF(on_move), OldLoc, Dir) /obj/structure/table/rolling/proc/on_move(atom/OldLoc, Dir) for(var/mob/M in OldLoc.contents)//Kidnap everyone on top @@ -315,7 +315,7 @@ /obj/structure/table/glass/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -336,7 +336,7 @@ return // Don't break if they're just flying past if(AM.throwing) - addtimer(CALLBACK(src, .proc/throw_check, AM), 5) + addtimer(CALLBACK(src,PROC_REF(throw_check), AM), 5) else check_break(AM) diff --git a/code/game/objects/structures/timeddoor.dm b/code/game/objects/structures/timeddoor.dm index d66bb95a73d..17d8b30f794 100644 --- a/code/game/objects/structures/timeddoor.dm +++ b/code/game/objects/structures/timeddoor.dm @@ -48,7 +48,7 @@ GLOBAL_LIST_EMPTY(timeddoor_list) /obj/structure/timeddoor/Initialize() . = ..() - addtimer(CALLBACK(src, .proc/timeddeletedoor), deletion_time) + addtimer(CALLBACK(src,PROC_REF(timeddeletedoor)), deletion_time) /obj/structure/timeddoor/proc/timeddeletedoor() announce_fall() diff --git a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm index 76d65eb2e4c..75a766390a7 100644 --- a/code/game/objects/structures/transit_tubes/transit_tube_construction.dm +++ b/code/game/objects/structures/transit_tubes/transit_tube_construction.dm @@ -45,7 +45,7 @@ return to_chat(user, span_notice("You start attaching the [name]...")) add_fingerprint(user) - if(I.use_tool(src, user, time_to_unwrench, volume=50, extra_checks=CALLBACK(src, .proc/can_wrench_in_loc, user))) + if(I.use_tool(src, user, time_to_unwrench, volume=50, extra_checks=CALLBACK(src,PROC_REF(can_wrench_in_loc), user))) to_chat(user, span_notice("You attach the [name].")) var/obj/structure/transit_tube/R = new build_type(loc, dir) transfer_fingerprints_to(R) diff --git a/code/game/objects/structures/traps.dm b/code/game/objects/structures/traps.dm index 21def516ad2..58c2edf8e95 100644 --- a/code/game/objects/structures/traps.dm +++ b/code/game/objects/structures/traps.dm @@ -27,7 +27,7 @@ /mob/dead)) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -62,7 +62,7 @@ /obj/structure/trap/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/process_entered, AM) + INVOKE_ASYNC(src,PROC_REF(process_entered), AM) /obj/structure/trap/proc/process_entered(atom/movable/AM) if(last_trigger + time_between_triggers > world.time) @@ -176,7 +176,7 @@ . = ..() time_between_triggers = 10 var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/game/objects/structures/tribal_torch.dm b/code/game/objects/structures/tribal_torch.dm index 98bd4e89d68..1fff27ba541 100644 --- a/code/game/objects/structures/tribal_torch.dm +++ b/code/game/objects/structures/tribal_torch.dm @@ -17,7 +17,7 @@ /obj/structure/destructible/tribal_torch/Initialize() . = ..() - RegisterSignal(src, COMSIG_ATOM_LICKED, .proc/smooch_fire) + RegisterSignal(src, COMSIG_ATOM_LICKED,PROC_REF(smooch_fire)) /obj/structure/destructible/tribal_torch/Destroy() . = ..() @@ -83,10 +83,10 @@ flicker(rand(1, 4)) // 0.1 to 0.4 seconds /obj/structure/destructible/tribal_torch/proc/flicker(duration) - addtimer(CALLBACK(src, .proc/unflicker, light_range), duration) + addtimer(CALLBACK(src,PROC_REF(unflicker), light_range), duration) set_light(light_range - rand(1, 2)) flickering = TRUE - addtimer(CALLBACK(src, .proc/unflicker), duration) + addtimer(CALLBACK(src,PROC_REF(unflicker)), duration) /obj/structure/destructible/tribal_torch/proc/unflicker(new_range) set_light(new_range) diff --git a/code/game/objects/structures/wasteplants.dm b/code/game/objects/structures/wasteplants.dm index fde80e6f66c..3737ed841d4 100644 --- a/code/game/objects/structures/wasteplants.dm +++ b/code/game/objects/structures/wasteplants.dm @@ -21,7 +21,7 @@ has_plod = FALSE update_icon() //Won't update due to proc otherwise timer = initial(timer) + rand(-100,100) //add some variability - addtimer(CALLBACK(src, .proc/regrow),timer) //Set up the timer properly + addtimer(CALLBACK(src,PROC_REF(regrow),timer)) //Set up the timer properly update_icon() /obj/structure/flora/wasteplant/proc/regrow() diff --git a/code/game/objects/structures/watercloset.dm b/code/game/objects/structures/watercloset.dm index cf6629381d2..1d4ffd4ed9b 100644 --- a/code/game/objects/structures/watercloset.dm +++ b/code/game/objects/structures/watercloset.dm @@ -313,7 +313,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -328,10 +328,10 @@ // If there was already mist, and the shower was turned off (or made cold): remove the existing mist in 25 sec var/obj/effect/mist/mist = locate() in loc if(!mist && on && watertemp != "freezing") - addtimer(CALLBACK(src, .proc/make_mist), 5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(make_mist)), 5 SECONDS) if(mist && (!on || watertemp == "freezing")) - addtimer(CALLBACK(src, .proc/clear_mist), 25 SECONDS) + addtimer(CALLBACK(src,PROC_REF(clear_mist)), 25 SECONDS) /obj/machinery/shower/proc/make_mist() var/obj/effect/mist/mist = locate() in loc @@ -355,7 +355,7 @@ /obj/machinery/shower/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/handle_enter, AM) + INVOKE_ASYNC(src,PROC_REF(handle_enter), AM) /proc/wash_obj(obj/O) if(isobj(O)) diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index f12f86f8ed9..389296e3a00 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -317,7 +317,7 @@ /obj/structure/windoor_assembly/ComponentInitialize() . = ..() var/static/rotation_flags = ROTATION_ALTCLICK | ROTATION_CLOCKWISE | ROTATION_COUNTERCLOCKWISE | ROTATION_VERBS - AddComponent(/datum/component/simple_rotation, rotation_flags, can_be_rotated=CALLBACK(src, .proc/can_be_rotated), after_rotation=CALLBACK(src,.proc/after_rotation)) + AddComponent(/datum/component/simple_rotation, rotation_flags, can_be_rotated=CALLBACK(src,PROC_REF(can_be_rotated)), after_rotation=CALLBACK(src,.proc/after_rotation)) /obj/structure/windoor_assembly/proc/can_be_rotated(mob/user,rotation_type) if(anchored) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 126de8fa0ea..1abfbb61caa 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -95,7 +95,7 @@ GLOBAL_LIST_EMPTY(electrochromatic_window_lookup) electrochromatic_dim() var/static/list/loc_connections = list( - COMSIG_ATOM_EXIT = .proc/on_exit, + COMSIG_ATOM_EXIT =PROC_REF(on_exit), ) if (flags_1 & ON_BORDER_1) @@ -105,7 +105,7 @@ GLOBAL_LIST_EMPTY(electrochromatic_window_lookup) /obj/structure/window/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/window/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) switch(the_rcd.mode) @@ -250,17 +250,17 @@ GLOBAL_LIST_EMPTY(electrochromatic_window_lookup) if(reinf) if(state == WINDOW_SCREWED_TO_FRAME || state == WINDOW_IN_FRAME) to_chat(user, span_notice("You begin to [state == WINDOW_SCREWED_TO_FRAME ? "unscrew the window from":"screw the window to"] the frame...")) - if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) + if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src,PROC_REF(check_state_and_anchored), state, anchored))) state = (state == WINDOW_IN_FRAME ? WINDOW_SCREWED_TO_FRAME : WINDOW_IN_FRAME) to_chat(user, span_notice("You [state == WINDOW_IN_FRAME ? "unfasten the window from":"fasten the window to"] the frame.")) else if(state == WINDOW_OUT_OF_FRAME) to_chat(user, span_notice("You begin to [anchored ? "unscrew the frame from":"screw the frame to"] the floor...")) - if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) + if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src,PROC_REF(check_state_and_anchored), state, anchored))) setAnchored(!anchored) to_chat(user, span_notice("You [anchored ? "fasten the frame to":"unfasten the frame from"] the floor.")) else //if we're not reinforced, we don't need to check or update state to_chat(user, span_notice("You begin to [anchored ? "unscrew the window from":"screw the window to"] the floor...")) - if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src, .proc/check_anchored, anchored))) + if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src,PROC_REF(check_anchored), anchored))) setAnchored(!anchored) to_chat(user, span_notice("You [anchored ? "fasten the window to":"unfasten the window from"] the floor.")) return @@ -269,7 +269,7 @@ GLOBAL_LIST_EMPTY(electrochromatic_window_lookup) else if (istype(I, /obj/item/crowbar) && reinf && (state == WINDOW_OUT_OF_FRAME || state == WINDOW_IN_FRAME)) to_chat(user, span_notice("You begin to lever the window [state == WINDOW_OUT_OF_FRAME ? "into":"out of"] the frame...")) I.play_tool_sound(src, 75) - if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) + if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src,PROC_REF(check_state_and_anchored), state, anchored))) state = (state == WINDOW_OUT_OF_FRAME ? WINDOW_IN_FRAME : WINDOW_OUT_OF_FRAME) to_chat(user, span_notice("You pry the window [state == WINDOW_IN_FRAME ? "into":"out of"] the frame.")) return @@ -277,7 +277,7 @@ GLOBAL_LIST_EMPTY(electrochromatic_window_lookup) else if(istype(I, /obj/item/wrench) && !anchored) I.play_tool_sound(src, 75) to_chat(user, span_notice(" You begin to disassemble [src]...")) - if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src, .proc/check_state_and_anchored, state, anchored))) + if(I.use_tool(src, user, decon_speed, extra_checks = CALLBACK(src,PROC_REF(check_state_and_anchored), state, anchored))) var/obj/item/stack/sheet/G = new glass_type(user.loc, glass_amount) G.add_fingerprint(user) playsound(src, 'sound/items/Deconstruct.ogg', 50, 1) diff --git a/code/game/turfs/simulated/minerals.dm b/code/game/turfs/simulated/minerals.dm index 0d1a4bed060..14664052fce 100644 --- a/code/game/turfs/simulated/minerals.dm +++ b/code/game/turfs/simulated/minerals.dm @@ -96,7 +96,7 @@ if(defer_change) // TODO: make the defer change var a var for any changeturf flag flags = CHANGETURF_DEFER_CHANGE ScrapeAway(null, flags) - addtimer(CALLBACK(src, .proc/AfterChange), 1, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(AfterChange)), 1, TIMER_UNIQUE) playsound(src, 'sound/effects/break_stone.ogg', 50, 1) //beautiful destruction /turf/closed/mineral/attack_animal(mob/living/simple_animal/user) @@ -818,7 +818,7 @@ if(defer_change) flags = CHANGETURF_DEFER_CHANGE ScrapeAway(null, flags) - addtimer(CALLBACK(src, .proc/AfterChange), 1, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(AfterChange)), 1, TIMER_UNIQUE) /turf/closed/mineral/gibtonite/volcanic @@ -886,7 +886,7 @@ if(defer_change) // TODO: make the defer change var a var for any changeturf flag flags = CHANGETURF_DEFER_CHANGE ScrapeAway(flags=flags) - addtimer(CALLBACK(src, .proc/AfterChange), 1, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(AfterChange)), 1, TIMER_UNIQUE) playsound(src, 'sound/effects/break_stone.ogg', 50, TRUE) //beautiful destruction // H.mind.adjust_experience(/datum/skill/mining, 100) //yay! diff --git a/code/modules/VR/vr_sleeper.dm b/code/modules/VR/vr_sleeper.dm index 86b612d903e..f1936055f91 100644 --- a/code/modules/VR/vr_sleeper.dm +++ b/code/modules/VR/vr_sleeper.dm @@ -65,7 +65,7 @@ obj_flags |= EMAGGED 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) return TRUE /obj/machinery/vr_sleeper/update_icon_state() @@ -176,8 +176,8 @@ C.updateappearance(TRUE, TRUE, TRUE) var/datum/component/virtual_reality/VR = vr_mob.AddComponent(/datum/component/virtual_reality, you_die_in_the_game_you_die_for_real) if(VR.connect(M)) - RegisterSignal(VR, COMSIG_COMPONENT_UNREGISTER_PARENT, .proc/unset_vr_mob) - RegisterSignal(VR, COMSIG_COMPONENT_REGISTER_PARENT, .proc/set_vr_mob) + RegisterSignal(VR, COMSIG_COMPONENT_UNREGISTER_PARENT,PROC_REF(unset_vr_mob)) + RegisterSignal(VR, COMSIG_COMPONENT_REGISTER_PARENT,PROC_REF(set_vr_mob)) if(!only_current_user_can_interact) VR.RegisterSignal(src, COMSIG_ATOM_EMAG_ACT, /datum/component/virtual_reality.proc/you_only_live_once) VR.RegisterSignal(src, COMSIG_MACHINE_EJECT_OCCUPANT, /datum/component/virtual_reality.proc/revert_to_reality) @@ -269,7 +269,7 @@ vr_area = get_base_area(src) if(!vr_area) return INITIALIZE_HINT_QDEL - addtimer(CALLBACK(src, .proc/clean_up), 3 MINUTES, TIMER_LOOP) + addtimer(CALLBACK(src,PROC_REF(clean_up)), 3 MINUTES, TIMER_LOOP) /obj/effect/vr_clean_master/proc/clean_up() if (!vr_area) @@ -285,4 +285,4 @@ if(!QDELETED(M) && (M in contents) && M.stat == DEAD) qdel(M) corpse_party -= M - addtimer(CALLBACK(src, .proc/clean_up), 3 MINUTES) + addtimer(CALLBACK(src,PROC_REF(clean_up)), 3 MINUTES) diff --git a/code/modules/WVM/wmv_buyer.dm b/code/modules/WVM/wmv_buyer.dm index 29acbb749a4..91dd357ab0c 100644 --- a/code/modules/WVM/wmv_buyer.dm +++ b/code/modules/WVM/wmv_buyer.dm @@ -441,7 +441,7 @@ GLOBAL_LIST_EMPTY(wasteland_vendor_shop_list) if(istype(thingy, /obj/item/button)) continue if(appraise_item(thingy, TRUE)) - INVOKE_ASYNC(src, .proc/sell_loop_start) + INVOKE_ASYNC(src,PROC_REF(sell_loop_start)) return TRUE say("There's nothing to sell!") @@ -470,7 +470,7 @@ GLOBAL_LIST_EMPTY(wasteland_vendor_shop_list) my_bar = SSprogress_bars.add_bar(src, list(), time2sell, TRUE, TRUE) soundloop.start() lock_belt() - sales_timer = addtimer(CALLBACK(src, .proc/sell_loop_end, thing2sell), time2sell, TIMER_STOPPABLE) + sales_timer = addtimer(CALLBACK(src,PROC_REF(sell_loop_end), thing2sell), time2sell, TIMER_STOPPABLE) /obj/machinery/mineral/wasteland_trader/proc/sell_loop_end(obj/item/I) if(!I) diff --git a/code/modules/admin/verbs/SDQL2/SDQL_2.dm b/code/modules/admin/verbs/SDQL2/SDQL_2.dm index f8fd94142f6..971330f0a1d 100644 --- a/code/modules/admin/verbs/SDQL2/SDQL_2.dm +++ b/code/modules/admin/verbs/SDQL2/SDQL_2.dm @@ -494,7 +494,7 @@ GLOBAL_DATUM_INIT(sdql2_vv_statobj, /obj/effect/statclick/sdql2_vv_all, new(null options |= SDQL2_OPTION_SEQUENTIAL /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) diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 408e23e8e8b..440a5334d31 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -218,7 +218,7 @@ //AdminPM popup for ApocStation and anybody else who wants to use it. Set it with POPUP_ADMIN_PM in config.txt ~Carn if(CONFIG_GET(flag/popup_admin_pm)) - INVOKE_ASYNC(src, .proc/popup_admin_pm, recipient, msg) + INVOKE_ASYNC(src,PROC_REF(popup_admin_pm), recipient, msg) else //neither are admins to_chat(src, span_danger("Error: Admin-PM: Non-admin to non-admin PM communication is forbidden."), confidential = TRUE) diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm index f7a5416fc96..d0e117de46b 100644 --- a/code/modules/admin/verbs/one_click_antag.dm +++ b/code/modules/admin/verbs/one_click_antag.dm @@ -346,9 +346,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), diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm index 03f8e2e1cb3..910be6a4e61 100644 --- a/code/modules/admin/verbs/onlyone.dm +++ b/code/modules/admin/verbs/onlyone.dm @@ -25,7 +25,7 @@ GLOBAL_VAR_INIT(highlander, FALSE) send_to_playing_players(span_userdanger("Bagpipes begin to blare. You feel Scottish pride coming over you.")) message_admins(span_adminnotice("[key_name_admin(usr)] used (delayed) THERE CAN BE ONLY ONE!")) log_admin("[key_name(usr)] used delayed THERE CAN BE ONLY ONE.") - addtimer(CALLBACK(src, .proc/only_one), 420) + addtimer(CALLBACK(src,PROC_REF(only_one)), 420) /mob/living/carbon/human/proc/make_scottish() mind.add_antag_datum(/datum/antagonist/highlander) diff --git a/code/modules/antagonists/abductor/equipment/abduction_gear.dm b/code/modules/antagonists/abductor/equipment/abduction_gear.dm index 2856905da0f..706827b119e 100644 --- a/code/modules/antagonists/abductor/equipment/abduction_gear.dm +++ b/code/modules/antagonists/abductor/equipment/abduction_gear.dm @@ -661,7 +661,7 @@ user.visible_message(span_notice("[user] places down [src] and activates it."), span_notice("You place down [src] and activate it.")) user.dropItemToGround(src) playsound(src, 'sound/machines/terminal_alert.ogg', 50) - addtimer(CALLBACK(src, .proc/try_spawn_machine), 30) + addtimer(CALLBACK(src,PROC_REF(try_spawn_machine)), 30) /obj/item/abductor_machine_beacon/proc/try_spawn_machine() var/viable = FALSE @@ -805,7 +805,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/antagonists/abductor/equipment/gland.dm b/code/modules/antagonists/abductor/equipment/gland.dm index fddeac90f81..dc055b11e33 100644 --- a/code/modules/antagonists/abductor/equipment/gland.dm +++ b/code/modules/antagonists/abductor/equipment/gland.dm @@ -63,7 +63,7 @@ update_gland_hud() var/atom/movable/screen/alert/mind_control/mind_alert = owner.throw_alert("mind_control", /atom/movable/screen/alert/mind_control) mind_alert.command = command - addtimer(CALLBACK(src, .proc/clear_mind_control), mind_control_duration) + addtimer(CALLBACK(src,PROC_REF(clear_mind_control)), mind_control_duration) return TRUE /obj/item/organ/heart/gland/proc/clear_mind_control() diff --git a/code/modules/antagonists/abductor/equipment/glands/access.dm b/code/modules/antagonists/abductor/equipment/glands/access.dm index 0b776840f99..48350189b38 100644 --- a/code/modules/antagonists/abductor/equipment/glands/access.dm +++ b/code/modules/antagonists/abductor/equipment/glands/access.dm @@ -9,7 +9,7 @@ /obj/item/organ/heart/gland/access/activate() to_chat(owner, span_notice("You feel like a VIP for some reason.")) - RegisterSignal(owner, COMSIG_MOB_ALLOWED, .proc/free_access) + RegisterSignal(owner, COMSIG_MOB_ALLOWED,PROC_REF(free_access)) /obj/item/organ/heart/gland/access/proc/free_access(datum/source, obj/O) return TRUE diff --git a/code/modules/antagonists/abductor/equipment/glands/electric.dm b/code/modules/antagonists/abductor/equipment/glands/electric.dm index 9ca684493d4..b3a6d55129a 100644 --- a/code/modules/antagonists/abductor/equipment/glands/electric.dm +++ b/code/modules/antagonists/abductor/equipment/glands/electric.dm @@ -20,7 +20,7 @@ owner.visible_message(span_danger("[owner]'s skin starts emitting electric arcs!"),\ span_warning("You feel electric energy building up inside you!")) playsound(get_turf(owner), "sparks", 100, TRUE, -1) - addtimer(CALLBACK(src, .proc/zap), rand(30, 100)) + addtimer(CALLBACK(src,PROC_REF(zap)), rand(30, 100)) /obj/item/organ/heart/gland/electric/proc/zap() tesla_zap(owner, 4, 8000, ZAP_MOB_DAMAGE | ZAP_OBJ_DAMAGE | ZAP_MOB_STUN) diff --git a/code/modules/antagonists/abductor/equipment/glands/heal.dm b/code/modules/antagonists/abductor/equipment/glands/heal.dm index f837745f730..3a53458b4c0 100644 --- a/code/modules/antagonists/abductor/equipment/glands/heal.dm +++ b/code/modules/antagonists/abductor/equipment/glands/heal.dm @@ -107,7 +107,7 @@ else to_chat(owner, span_warning("You feel a weird rumble behind your eye sockets...")) - addtimer(CALLBACK(src, .proc/finish_replace_eyes), rand(100, 200)) + addtimer(CALLBACK(src,PROC_REF(finish_replace_eyes)), rand(100, 200)) /obj/item/organ/heart/gland/heal/proc/finish_replace_eyes() var/eye_type = /obj/item/organ/eyes @@ -125,7 +125,7 @@ else to_chat(owner, span_warning("You feel a weird tingle in your [parse_zone(body_zone)]... even if you don't have one.")) - addtimer(CALLBACK(src, .proc/finish_replace_limb, body_zone), rand(150, 300)) + addtimer(CALLBACK(src,PROC_REF(finish_replace_limb), body_zone), rand(150, 300)) /obj/item/organ/heart/gland/heal/proc/finish_replace_limb(body_zone) owner.visible_message(span_warning("With a loud snap, [owner]'s [parse_zone(body_zone)] rapidly grows back from [owner.p_their()] body!"), @@ -155,7 +155,7 @@ if(owner.reagents.has_reagent(R.type)) keep_going = TRUE if(keep_going) - addtimer(CALLBACK(src, .proc/keep_replacing_blood), 30) + addtimer(CALLBACK(src,PROC_REF(keep_replacing_blood)), 30) /obj/item/organ/heart/gland/heal/proc/replace_chest(obj/item/bodypart/chest/chest) if(chest.status == BODYPART_ROBOTIC) diff --git a/code/modules/antagonists/abductor/equipment/glands/mindshock.dm b/code/modules/antagonists/abductor/equipment/glands/mindshock.dm index 1ab33f96502..3224b5205ce 100644 --- a/code/modules/antagonists/abductor/equipment/glands/mindshock.dm +++ b/code/modules/antagonists/abductor/equipment/glands/mindshock.dm @@ -48,7 +48,7 @@ if(LAZYLEN(broadcasted_mobs)) active_mind_control = TRUE - addtimer(CALLBACK(src, .proc/clear_mind_control), mind_control_duration) + addtimer(CALLBACK(src,PROC_REF(clear_mind_control)), mind_control_duration) update_gland_hud() return TRUE diff --git a/code/modules/antagonists/abductor/equipment/glands/plasma.dm b/code/modules/antagonists/abductor/equipment/glands/plasma.dm index 80a8fd41cbc..653faa1eb85 100644 --- a/code/modules/antagonists/abductor/equipment/glands/plasma.dm +++ b/code/modules/antagonists/abductor/equipment/glands/plasma.dm @@ -10,7 +10,7 @@ /obj/item/organ/heart/gland/plasma/activate() to_chat(owner, span_warning("You feel bloated.")) addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), owner, span_userdanger("A massive stomachache overcomes you.")), 150) - addtimer(CALLBACK(src, .proc/vomit_plasma), 200) + addtimer(CALLBACK(src,PROC_REF(vomit_plasma)), 200) /obj/item/organ/heart/gland/plasma/proc/vomit_plasma() if(!owner) diff --git a/code/modules/antagonists/abductor/equipment/glands/quantum.dm b/code/modules/antagonists/abductor/equipment/glands/quantum.dm index 4827cebb6e7..df8ac5c53f8 100644 --- a/code/modules/antagonists/abductor/equipment/glands/quantum.dm +++ b/code/modules/antagonists/abductor/equipment/glands/quantum.dm @@ -15,7 +15,7 @@ if(!iscarbon(M)) continue entangled_mob = M - addtimer(CALLBACK(src, .proc/quantum_swap), rand(600, 2400)) + addtimer(CALLBACK(src,PROC_REF(quantum_swap)), rand(600, 2400)) return /obj/item/organ/heart/gland/quantum/proc/quantum_swap() diff --git a/code/modules/antagonists/abductor/machinery/pad.dm b/code/modules/antagonists/abductor/machinery/pad.dm index 0b0531fb1ee..1a3a0a0e6f1 100644 --- a/code/modules/antagonists/abductor/machinery/pad.dm +++ b/code/modules/antagonists/abductor/machinery/pad.dm @@ -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" diff --git a/code/modules/antagonists/blob/blob/blobs/core.dm b/code/modules/antagonists/blob/blob/blobs/core.dm index 256b5fadc3b..7362624a1d7 100644 --- a/code/modules/antagonists/blob/blob/blobs/core.dm +++ b/code/modules/antagonists/blob/blob/blobs/core.dm @@ -18,7 +18,7 @@ return INITIALIZE_HINT_QDEL if(overmind) update_icon() - addtimer(CALLBACK(src, .proc/generate_announcement), 1800) + addtimer(CALLBACK(src,PROC_REF(generate_announcement)), 1800) . = ..() /obj/structure/blob/core/proc/generate_announcement() diff --git a/code/modules/antagonists/blob/blob/overmind.dm b/code/modules/antagonists/blob/blob/overmind.dm index 86ad2aa60a1..50a3c20d2df 100644 --- a/code/modules/antagonists/blob/blob/overmind.dm +++ b/code/modules/antagonists/blob/blob/overmind.dm @@ -109,7 +109,7 @@ GLOBAL_LIST_EMPTY(blob_nodes) set_security_level("delta") max_blob_points = INFINITY blob_points = INFINITY - addtimer(CALLBACK(src, .proc/victory), 450) + addtimer(CALLBACK(src,PROC_REF(victory)), 450) else if(!free_strain_rerolls && (last_reroll_time + BLOB_REROLL_TIMEYou have gained another free strain re-roll.") free_strain_rerolls = 1 diff --git a/code/modules/antagonists/bloodsucker/powers/feed.dm b/code/modules/antagonists/bloodsucker/powers/feed.dm index 1687c8b30e8..9a3ad75307c 100644 --- a/code/modules/antagonists/bloodsucker/powers/feed.dm +++ b/code/modules/antagonists/bloodsucker/powers/feed.dm @@ -146,7 +146,7 @@ to_chat(user, span_notice("You lean quietly toward [target] and secretly draw out your fangs...")) else to_chat(user, span_warning("You pull [target] close to you and draw out your fangs...")) - 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_warning("Your feeding was interrupted.")) //DeactivatePower(user,target) return @@ -207,7 +207,7 @@ //user.mobility_flags &= ~MOBILITY_MOVE // user.canmove = 0 // Prevents spilling blood accidentally. // Abort? A bloody mistake. - if(!do_mob(user, target, 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 diff --git a/code/modules/antagonists/bloodsucker/powers/haste.dm b/code/modules/antagonists/bloodsucker/powers/haste.dm index 9009a978776..6c0d480ca8c 100644 --- a/code/modules/antagonists/bloodsucker/powers/haste.dm +++ b/code/modules/antagonists/bloodsucker/powers/haste.dm @@ -48,7 +48,7 @@ /datum/action/bloodsucker/targeted/haste/FireTargetedPower(atom/A) // This is a non-async proc to make sure the power is "locked" until this finishes. hit = list() - RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/on_move) + RegisterSignal(owner, COMSIG_MOVABLE_MOVED,PROC_REF(on_move)) var/mob/living/user = owner var/turf/T = isturf(A) ? A : get_turf(A) // Pulled? Not anymore. diff --git a/code/modules/antagonists/bloodsucker/powers/lunge.dm b/code/modules/antagonists/bloodsucker/powers/lunge.dm index db7868fa8a5..ab63f6adbe4 100644 --- a/code/modules/antagonists/bloodsucker/powers/lunge.dm +++ b/code/modules/antagonists/bloodsucker/powers/lunge.dm @@ -31,14 +31,14 @@ T.min_distance = 2 active = TRUE user.toggle_throw_mode() - RegisterSignal(user, COMSIG_CARBON_TACKLED, .proc/DelayedDeactivatePower) + RegisterSignal(user, COMSIG_CARBON_TACKLED,PROC_REF(DelayedDeactivatePower)) while(B && ContinueActive(user)) B.AddBloodVolume(-0.1) sleep(5) //Without this, the leap component would get removed too early, causing the normal crash into effects. /datum/action/bloodsucker/lunge/proc/DelayedDeactivatePower() - addtimer(CALLBACK(src, .proc/DeactivatePower), 1 SECONDS, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(DeactivatePower)), 1 SECONDS, TIMER_UNIQUE) /datum/action/bloodsucker/lunge/DeactivatePower(mob/living/user = owner) . = ..() diff --git a/code/modules/antagonists/bloodsucker/powers/mesmerize.dm b/code/modules/antagonists/bloodsucker/powers/mesmerize.dm index ef3d2af57d2..d11c243176a 100644 --- a/code/modules/antagonists/bloodsucker/powers/mesmerize.dm +++ b/code/modules/antagonists/bloodsucker/powers/mesmerize.dm @@ -114,9 +114,9 @@ var/power_time = 138 + level_current * 12 target.apply_status_effect(STATUS_EFFECT_MESMERIZE, 30) L.apply_status_effect(STATUS_EFFECT_MESMERIZE, 30) - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/ContinueTarget) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(ContinueTarget)) // 5 second windup - addtimer(CALLBACK(src, .proc/apply_effects, L, target, power_time), 6 SECONDS) + addtimer(CALLBACK(src,PROC_REF(apply_effects), L, target, power_time), 6 SECONDS) /datum/action/bloodsucker/targeted/mesmerize/proc/apply_effects(aggressor, victim, power_time) var/mob/living/carbon/target = victim diff --git a/code/modules/antagonists/changeling/powers/biodegrade.dm b/code/modules/antagonists/changeling/powers/biodegrade.dm index 1913317dcc5..59bbc036700 100644 --- a/code/modules/antagonists/changeling/powers/biodegrade.dm +++ b/code/modules/antagonists/changeling/powers/biodegrade.dm @@ -23,7 +23,7 @@ user.visible_message(span_warning("[user] vomits a glob of acid on [user.p_their()] [O]!"), \ span_warning("We vomit acidic ooze onto our restraints!")) - 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_warning("[user] vomits a glob of acid across the front of [user.p_their()] [S]!"), \ span_warning("We vomit acidic ooze onto our straight jacket!")) - 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_warning("[C]'s hinges suddenly begin to melt and run!")) to_chat(user, span_warning("We vomit acidic goop onto the interior of [C]!")) - 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_warning("[src] shifts and starts to fall apart!")) to_chat(user, span_warning("We secrete acidic enzymes from our skin and begin melting our cocoon...")) - 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 diff --git a/code/modules/antagonists/changeling/powers/fakedeath.dm b/code/modules/antagonists/changeling/powers/fakedeath.dm index 1907e68fb55..d89d0f6950d 100644 --- a/code/modules/antagonists/changeling/powers/fakedeath.dm +++ b/code/modules/antagonists/changeling/powers/fakedeath.dm @@ -19,7 +19,7 @@ user.fakedeath("changeling") //play dead user.update_stat() - addtimer(CALLBACK(src, .proc/ready_to_regenerate, user), LING_FAKEDEATH_TIME, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(ready_to_regenerate), user), LING_FAKEDEATH_TIME, TIMER_UNIQUE) return TRUE /obj/effect/proc_holder/changeling/fakedeath/proc/ready_to_regenerate(mob/user) diff --git a/code/modules/antagonists/changeling/powers/mutations.dm b/code/modules/antagonists/changeling/powers/mutations.dm index d1a3d2b8e19..d94265cf3d0 100644 --- a/code/modules/antagonists/changeling/powers/mutations.dm +++ b/code/modules/antagonists/changeling/powers/mutations.dm @@ -394,12 +394,12 @@ if(INTENT_GRAB) C.visible_message(span_danger("[L] is grabbed by [H]'s tentacle!"),span_userdanger("A tentacle grabs you and pulls you towards [H]!")) - C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src, .proc/tentacle_grab, H, C)) + C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src,PROC_REF(tentacle_grab), H, C)) return BULLET_ACT_HIT if(INTENT_HARM) C.visible_message(span_danger("[L] is thrown towards [H] by a tentacle!"),span_userdanger("A tentacle grabs you and throws you towards [H]!")) - C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src, .proc/tentacle_stab, H, C)) + C.throw_at(get_step_towards(H,C), 8, 2, H, TRUE, TRUE, callback=CALLBACK(src,PROC_REF(tentacle_stab), H, C)) return BULLET_ACT_HIT else L.visible_message(span_danger("[L] is pulled by [H]'s tentacle!"),span_userdanger("A tentacle grabs you and pulls you towards [H]!")) diff --git a/code/modules/antagonists/changeling/powers/strained_muscles.dm b/code/modules/antagonists/changeling/powers/strained_muscles.dm index b0833c6e7f4..28fb9034796 100644 --- a/code/modules/antagonists/changeling/powers/strained_muscles.dm +++ b/code/modules/antagonists/changeling/powers/strained_muscles.dm @@ -25,7 +25,7 @@ user.DefaultCombatKnockdown(60) user.emote("gasp") - INVOKE_ASYNC(src, .proc/muscle_loop, user) + INVOKE_ASYNC(src,PROC_REF(muscle_loop), user) return TRUE diff --git a/code/modules/antagonists/changeling/powers/tiny_prick.dm b/code/modules/antagonists/changeling/powers/tiny_prick.dm index dda314d208a..ae23b478eda 100644 --- a/code/modules/antagonists/changeling/powers/tiny_prick.dm +++ b/code/modules/antagonists/changeling/powers/tiny_prick.dm @@ -154,7 +154,7 @@ target.visible_message(span_warning("A grotesque blade forms around [target.name]\'s arm!"), span_userdanger("Your arm twists and mutates, transforming into a horrific monstrosity!"), span_italic("You hear organic matter ripping and tearing!")) 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) diff --git a/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm b/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm index d8548d7ed08..020901a7497 100644 --- a/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm +++ b/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm @@ -19,7 +19,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -60,7 +60,7 @@ L.visible_message(span_warning("[L]'s [I.name] [resist_string], protecting [L.p_them()] from [src]'s effects!"), \ span_userdanger("Your [I.name] [resist_string], protecting you!")) return - INVOKE_ASYNC(src, .proc/sigil_effects, L) + INVOKE_ASYNC(src,PROC_REF(sigil_effects), L) /obj/effect/clockwork/sigil/proc/sigil_effects(mob/living/L) @@ -242,7 +242,7 @@ if(!cyborg_checks(cyborg)) return to_chat(cyborg, span_brass("You start to charge from the [sigil_name]...")) - 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)) diff --git a/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm b/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm index c8cec2f41ac..9f145452035 100644 --- a/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm +++ b/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm @@ -19,7 +19,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) @@ -161,7 +161,7 @@ else animate(src, transform = matrix() / 1.5, time = 10, flags = ANIMATION_END_NOW) animate(linked_gateway, transform = matrix() / 1.5, time = 10, flags = ANIMATION_END_NOW) - addtimer(CALLBACK(src, .proc/check_uses), 10) + addtimer(CALLBACK(src,PROC_REF(check_uses)), 10) return TRUE /obj/effect/clockwork/spatial_gateway/proc/check_uses() diff --git a/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm index ea75004b7e1..4694f39232f 100644 --- a/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm +++ b/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm @@ -121,7 +121,7 @@ /obj/item/clockwork/slab/dropped(mob/user) . = ..() - addtimer(CALLBACK(src, .proc/check_on_mob, user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later + addtimer(CALLBACK(src,PROC_REF(check_on_mob), user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later /obj/item/clockwork/slab/worn_overlays(isinhands = FALSE, icon_file, used_state, style_flags = NONE) . = ..() @@ -347,7 +347,7 @@ if("toggle") recollecting = !recollecting if("recite") - INVOKE_ASYNC(src, .proc/recite_scripture, text2path(params["script"]), usr, FALSE) + INVOKE_ASYNC(src,PROC_REF(recite_scripture), text2path(params["script"]), usr, FALSE) if("bind") var/datum/clockwork_scripture/path = text2path(params["script"]) //we need a path and not a string if(!ispath(path, /datum/clockwork_scripture) || !initial(path.quickbind) || initial(path.tier) == SCRIPTURE_PERIPHERAL) //fuck you href bus diff --git a/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm b/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm index db9eef1064f..b15b1acbdc7 100644 --- a/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm +++ b/code/modules/antagonists/clockcult/clock_items/judicial_visor.dm @@ -52,7 +52,7 @@ /obj/item/clothing/glasses/judicial_visor/dropped(mob/user) . = ..() - addtimer(CALLBACK(src, .proc/check_on_mob, user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later + addtimer(CALLBACK(src,PROC_REF(check_on_mob), user), 1) //dropped is called before the item is out of the slot, so we need to check slightly later /obj/item/clothing/glasses/judicial_visor/proc/check_on_mob(mob/user) if(user && src != user.get_item_by_slot(SLOT_GLASSES)) //if we happen to check and we AREN'T in the slot, we need to remove our shit from whoever we got dropped from @@ -161,7 +161,7 @@ . = ..() set_light(1.4, 2, "#FE9C11") user = caster - INVOKE_ASYNC(src, .proc/judicialblast) + INVOKE_ASYNC(src,PROC_REF(judicialblast)) /obj/effect/clockwork/judicial_marker/singularity_act() return diff --git a/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm b/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm index c00aa773546..954f41265c9 100644 --- a/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm +++ b/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm @@ -115,7 +115,7 @@ else user.visible_message(span_warning("[user]'s [name] starts consuming [target]!"), \ span_brass("Your [name] starts consuming [target]...")) - 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"] diff --git a/code/modules/antagonists/clockcult/clock_mobs/_eminence.dm b/code/modules/antagonists/clockcult/clock_mobs/_eminence.dm index 6ba78b84a7b..b6ba6a2539b 100644 --- a/code/modules/antagonists/clockcult/clock_mobs/_eminence.dm +++ b/code/modules/antagonists/clockcult/clock_mobs/_eminence.dm @@ -115,11 +115,11 @@ superheat_wall(A) return if(modifiers["middle"] || modifiers["ctrl"]) - INVOKE_ASYNC(src, .proc/issue_command, A) + INVOKE_ASYNC(src,PROC_REF(issue_command), A) return if(GLOB.ark_of_the_clockwork_justiciar == A) var/obj/structure/destructible/clockwork/massive/celestial_gateway/G = GLOB.ark_of_the_clockwork_justiciar - INVOKE_ASYNC(src, .proc/attempt_recall, G) + INVOKE_ASYNC(src,PROC_REF(attempt_recall), G) else if(istype(A, /obj/structure/destructible/clockwork/trap/trigger)) var/obj/structure/destructible/clockwork/trap/trigger/T = A T.visible_message(span_danger("[T] clunks as it's activated remotely.")) diff --git a/code/modules/antagonists/clockcult/clock_scripture.dm b/code/modules/antagonists/clockcult/clock_scripture.dm index 44d76be594e..f0960b0048b 100644 --- a/code/modules/antagonists/clockcult/clock_scripture.dm +++ b/code/modules/antagonists/clockcult/clock_scripture.dm @@ -154,7 +154,7 @@ Judgement 5 converts 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() @@ -201,7 +201,7 @@ Judgement 5 converts /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(multiple_invokers_used) diff --git a/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm b/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm index 3ae9650461c..e448e264b8a 100644 --- a/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm +++ b/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm @@ -35,7 +35,7 @@ /obj/structure/destructible/clockwork/massive/celestial_gateway/Initialize() . = ..() - INVOKE_ASYNC(src, .proc/spawn_animation) + INVOKE_ASYNC(src,PROC_REF(spawn_animation)) glow = new(get_turf(src)) if(!GLOB.ark_of_the_clockwork_justiciar) GLOB.ark_of_the_clockwork_justiciar = src @@ -131,7 +131,7 @@ recalling = TRUE sound_to_playing_players('sound/machines/clockcult/ark_recall.ogg', 75, FALSE) hierophant_message("The Eminence has initiated a mass recall! You are being transported to the Ark!") - 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) diff --git a/code/modules/antagonists/clockcult/clock_structures/eminence_spire.dm b/code/modules/antagonists/clockcult/clock_structures/eminence_spire.dm index 09c4401e0ff..98d16ca7a56 100644 --- a/code/modules/antagonists/clockcult/clock_structures/eminence_spire.dm +++ b/code/modules/antagonists/clockcult/clock_structures/eminence_spire.dm @@ -81,7 +81,7 @@ hierophant_message("[nominee] proposes selecting an Eminence from ghosts! You may object by interacting with the eminence spire. The vote will otherwise pass in 30 seconds.") 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) diff --git a/code/modules/antagonists/clockcult/clock_structures/reflector.dm b/code/modules/antagonists/clockcult/clock_structures/reflector.dm index 58475d6e003..66fdda9673c 100644 --- a/code/modules/antagonists/clockcult/clock_structures/reflector.dm +++ b/code/modules/antagonists/clockcult/clock_structures/reflector.dm @@ -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)) diff --git a/code/modules/antagonists/clockcult/clock_structures/taunting_trail.dm b/code/modules/antagonists/clockcult/clock_structures/taunting_trail.dm index af310bda8d3..704d31f1292 100644 --- a/code/modules/antagonists/clockcult/clock_structures/taunting_trail.dm +++ b/code/modules/antagonists/clockcult/clock_structures/taunting_trail.dm @@ -30,7 +30,7 @@ animate(src, alpha = 100, time = 15) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/antagonists/clockcult/clock_structures/trap_triggers/pressure_sensor.dm b/code/modules/antagonists/clockcult/clock_structures/trap_triggers/pressure_sensor.dm index 349fb6da31c..ba7bce3ba1e 100644 --- a/code/modules/antagonists/clockcult/clock_structures/trap_triggers/pressure_sensor.dm +++ b/code/modules/antagonists/clockcult/clock_structures/trap_triggers/pressure_sensor.dm @@ -10,7 +10,7 @@ /obj/structure/destructible/clockwork/trap/trigger/pressure_sensor/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm b/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm index 5d0d3fe0936..8d6b22c1151 100644 --- a/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm +++ b/code/modules/antagonists/clockcult/clock_structures/traps/brass_skewer.dm @@ -57,7 +57,7 @@ span_userdanger("A massive brass spike rips through your chassis and bursts into shrapnel in your casing!")) 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_boldwarning("A massive brass spike erupts from the ground, impaling [squirrel]!"), \ span_userdanger("A massive brass spike rams through your chest, hoisting you into the air!")) @@ -72,7 +72,7 @@ if(M) M.take_damage(50,BRUTE,"melee") M.visible_message(span_danger("A massive brass spike erupts from the ground, penetrating \the [M] and shattering the trap into pieces!")) - addtimer(CALLBACK(src, .proc/take_damage, max_integrity), 1) + addtimer(CALLBACK(src,PROC_REF(take_damage), max_integrity), 1) else visible_message(span_danger("A massive brass spike erupts from the ground!")) diff --git a/code/modules/antagonists/clockcult/clock_structures/traps/steam_vent.dm b/code/modules/antagonists/clockcult/clock_structures/traps/steam_vent.dm index 1e25df75286..da34b3b30e4 100644 --- a/code/modules/antagonists/clockcult/clock_structures/traps/steam_vent.dm +++ b/code/modules/antagonists/clockcult/clock_structures/traps/steam_vent.dm @@ -20,7 +20,7 @@ /obj/structure/destructible/clockwork/trap/steam_vent/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/antagonists/cult/cult.dm b/code/modules/antagonists/cult/cult.dm index 22176e41ab8..96222dec72a 100644 --- a/code/modules/antagonists/cult/cult.dm +++ b/code/modules/antagonists/cult/cult.dm @@ -301,7 +301,7 @@ if(B.current) SEND_SOUND(B.current, 'sound/hallucinations/i_see_you2.ogg') to_chat(B.current, "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) @@ -309,7 +309,7 @@ if(B.current) SEND_SOUND(B.current, 'sound/hallucinations/im_here1.ogg') to_chat(B.current, "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 diff --git a/code/modules/antagonists/cult/cult_comms.dm b/code/modules/antagonists/cult/cult_comms.dm index 96e87d5c845..105f9a353c0 100644 --- a/code/modules/antagonists/cult/cult_comms.dm +++ b/code/modules/antagonists/cult/cult_comms.dm @@ -378,7 +378,7 @@ button_icon_state = "emp" owner.update_action_buttons_icon() C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target,C.cult_team)), base_cooldown, TIMER_STOPPABLE) - addtimer(CALLBACK(src, .proc/reset_button), base_cooldown) + addtimer(CALLBACK(src,PROC_REF(reset_button)), base_cooldown) //////// ELDRITCH PULSE ///////// diff --git a/code/modules/antagonists/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm index 4d2dae6e3dd..0f55d5b7665 100644 --- a/code/modules/antagonists/cult/cult_items.dm +++ b/code/modules/antagonists/cult/cult_items.dm @@ -270,7 +270,7 @@ sword.spinning = TRUE sword.block_chance = 75 sword.slowdown += 1.5 - addtimer(CALLBACK(src, .proc/stop_spinning), 50) + addtimer(CALLBACK(src,PROC_REF(stop_spinning)), 50) holder.update_action_buttons_icon() /datum/action/innate/cult/spin2win/proc/stop_spinning() @@ -719,8 +719,8 @@ /obj/item/cult_spear/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) /obj/item/cult_spear/ComponentInitialize() . = ..() @@ -889,10 +889,10 @@ qdel(src) return charging = TRUE - INVOKE_ASYNC(src, .proc/charge, user) + INVOKE_ASYNC(src,PROC_REF(charge), user) if(do_after(user, 90, target = user)) firing = TRUE - INVOKE_ASYNC(src, .proc/pewpew, user, params) + INVOKE_ASYNC(src,PROC_REF(pewpew), user, params) var/obj/structure/emergency_shield/invoker/N = new(user.loc) if(do_after(user, 90, target = user)) user.DefaultCombatKnockdown(40) diff --git a/code/modules/antagonists/cult/cult_structures.dm b/code/modules/antagonists/cult/cult_structures.dm index 080d9c12bde..f24eb42477b 100644 --- a/code/modules/antagonists/cult/cult_structures.dm +++ b/code/modules/antagonists/cult/cult_structures.dm @@ -111,7 +111,7 @@ to_chat(user, span_cultitalic("You study the schematics etched into the altar...")) var/list/options = list("Eldritch Whetstone" = radial_whetstone, "Construct Shell" = radial_shell, "Flask of Unholy Water" = radial_unholy_water) - var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE) + var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) var/reward switch(choice) @@ -158,7 +158,7 @@ var/list/options = list("Shielded Robe" = radial_shielded, "Flagellant's Robe" = radial_flagellant, "Mirror Shield" = radial_mirror) - var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src, .proc/check_menu, user), require_near = TRUE, tooltips = TRUE) + var/choice = show_radial_menu(user, src, options, custom_check = CALLBACK(src,PROC_REF(check_menu), user), require_near = TRUE, tooltips = TRUE) var/reward switch(choice) @@ -289,7 +289,7 @@ to_chat(user, span_cultitalic("You flip through the black pages of the archives...")) 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) diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 7fe39e8c0b6..de897a7284c 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -436,7 +436,7 @@ structure_check() searches for nearby cultist structures required for the invoca outer_portal = new(T, 600, color) light_range = 4 update_light() - addtimer(CALLBACK(src, .proc/close_portal), 600, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(close_portal)), 600, TIMER_UNIQUE) /obj/effect/rune/teleport/proc/close_portal() qdel(inner_portal) @@ -662,7 +662,7 @@ structure_check() searches for nearby cultist structures required for the invoca W.density = TRUE W.update_state() W.spread_density() - density_timer = addtimer(CALLBACK(src, .proc/lose_density), 3000, TIMER_STOPPABLE) + density_timer = addtimer(CALLBACK(src,PROC_REF(lose_density)), 3000, TIMER_STOPPABLE) /obj/effect/rune/wall/proc/lose_density() if(density) @@ -672,7 +672,7 @@ structure_check() searches for nearby cultist structures required for the invoca var/oldcolor = color add_atom_colour("#696969", FIXED_COLOUR_PRIORITY) animate(src, color = oldcolor, time = 50, easing = EASE_IN) - addtimer(CALLBACK(src, .proc/recharge), 50) + addtimer(CALLBACK(src,PROC_REF(recharge)), 50) /obj/effect/rune/wall/proc/recharge() recharging = FALSE diff --git a/code/modules/antagonists/disease/disease_mob.dm b/code/modules/antagonists/disease/disease_mob.dm index 3b3a3412196..17262f422c7 100644 --- a/code/modules/antagonists/disease/disease_mob.dm +++ b/code/modules/antagonists/disease/disease_mob.dm @@ -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() . = ..() @@ -265,7 +265,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() @@ -307,7 +307,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_notice("You have altered your genetic structure. You will be unable to adapt again for [DisplayTimeText(adaptation_cooldown)].")) 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_notice("You are now ready to adapt again.")) diff --git a/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm b/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm index bb2021283bb..5631d3d6968 100644 --- a/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm +++ b/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm @@ -157,7 +157,7 @@ if(!chosen_mob) return FALSE curse(compiled_list[chosen_mob]) - addtimer(CALLBACK(src, .proc/uncurse, compiled_list[chosen_mob]),timer) + addtimer(CALLBACK(src,PROC_REF(uncurse), compiled_list[chosen_mob]),timer) return TRUE /datum/eldritch_knowledge/curse/proc/curse(mob/living/chosen_mob) diff --git a/code/modules/antagonists/eldritch_cult/eldritch_magic.dm b/code/modules/antagonists/eldritch_cult/eldritch_magic.dm index 86be19c1fea..3cee2083e69 100644 --- a/code/modules/antagonists/eldritch_cult/eldritch_magic.dm +++ b/code/modules/antagonists/eldritch_cult/eldritch_magic.dm @@ -354,15 +354,15 @@ for(var/X in targets) var/T T = line_target(-25, range, X, user) - INVOKE_ASYNC(src, .proc/fire_line, user,T) + INVOKE_ASYNC(src,PROC_REF(fire_line), user,T) T = line_target(10, range, X, user) - INVOKE_ASYNC(src, .proc/fire_line, user,T) + INVOKE_ASYNC(src,PROC_REF(fire_line), user,T) T = line_target(0, range, X, user) - INVOKE_ASYNC(src, .proc/fire_line, user,T) + INVOKE_ASYNC(src,PROC_REF(fire_line), user,T) T = line_target(-10, range, X, user) - INVOKE_ASYNC(src, .proc/fire_line, user,T) + INVOKE_ASYNC(src,PROC_REF(fire_line), user,T) T = line_target(25, range, X, user) - INVOKE_ASYNC(src, .proc/fire_line, user,T) + INVOKE_ASYNC(src,PROC_REF(fire_line), user,T) return ..() /obj/effect/proc_holder/spell/pointed/nightwatchers_rite/proc/line_target(offset, range, atom/at , atom/user) @@ -440,7 +440,7 @@ action_background_icon_state = "bg_ecult" /obj/effect/proc_holder/spell/aoe_turf/fire_cascade/cast(list/targets, mob/user = usr) - INVOKE_ASYNC(src, .proc/fire_cascade, user,range) + INVOKE_ASYNC(src,PROC_REF(fire_cascade), user,range) /obj/effect/proc_holder/spell/aoe_turf/fire_cascade/proc/fire_cascade(atom/centre,max_range) playsound(get_turf(centre), 'sound/items/welder.ogg', 75, TRUE) @@ -486,7 +486,7 @@ . = ..() current_user = user has_fire_ring = TRUE - addtimer(CALLBACK(src, .proc/remove, user), duration, TIMER_OVERRIDE|TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(remove), user), duration, TIMER_OVERRIDE|TIMER_UNIQUE) /obj/effect/proc_holder/spell/targeted/fire_sworn/proc/remove() has_fire_ring = FALSE diff --git a/code/modules/antagonists/nukeop/equipment/borgchameleon.dm b/code/modules/antagonists/nukeop/equipment/borgchameleon.dm index 126b1277aa5..c325d2c2a27 100644 --- a/code/modules/antagonists/nukeop/equipment/borgchameleon.dm +++ b/code/modules/antagonists/nukeop/equipment/borgchameleon.dm @@ -156,7 +156,7 @@ return if(listeningTo) UnregisterSignal(listeningTo, signalCache) - RegisterSignal(user, signalCache, .proc/disrupt) + RegisterSignal(user, signalCache,PROC_REF(disrupt)) listeningTo = user /obj/item/borg_chameleon/proc/deactivate(mob/living/silicon/robot/user) diff --git a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm index 29960c29d25..a59eeb69807 100644 --- a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm +++ b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm @@ -458,7 +458,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) @@ -539,10 +539,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_notice("[src] fizzes ominously.")) - addtimer(CALLBACK(src, .proc/fizzbuzz), 110) + addtimer(CALLBACK(src,PROC_REF(fizzbuzz)), 110) /obj/machinery/nuclearbomb/beer/proc/disarm() detonation_timer = null diff --git a/code/modules/antagonists/nukeop/nukeop.dm b/code/modules/antagonists/nukeop/nukeop.dm index 2af23e09823..d6e96a72289 100644 --- a/code/modules/antagonists/nukeop/nukeop.dm +++ b/code/modules/antagonists/nukeop/nukeop.dm @@ -176,7 +176,7 @@ to_chat(owner, "If you feel you are not up to this task, give your ID to another operative.") to_chat(owner, "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.") 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() diff --git a/code/modules/antagonists/revenant/revenant.dm b/code/modules/antagonists/revenant/revenant.dm index 54691ca1bea..50f4163539c 100644 --- a/code/modules/antagonists/revenant/revenant.dm +++ b/code/modules/antagonists/revenant/revenant.dm @@ -113,7 +113,7 @@ if(stasis) return if(revealed && essence <= 0) - INVOKE_ASYNC(src, .proc/death) + INVOKE_ASYNC(src,PROC_REF(death)) if(unreveal_time && world.time >= unreveal_time) unreveal_time = 0 revealed = FALSE @@ -191,7 +191,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 @@ -345,7 +345,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) diff --git a/code/modules/antagonists/revenant/revenant_abilities.dm b/code/modules/antagonists/revenant/revenant_abilities.dm index 903e714ac1d..5a7a01ee740 100644 --- a/code/modules/antagonists/revenant/revenant_abilities.dm +++ b/code/modules/antagonists/revenant/revenant_abilities.dm @@ -192,7 +192,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) @@ -203,7 +203,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 @@ -233,7 +233,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) @@ -284,7 +284,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) @@ -330,7 +330,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) diff --git a/code/modules/antagonists/revenant/revenant_blight.dm b/code/modules/antagonists/revenant/revenant_blight.dm index 9fd2181ef6a..adc5c44ff71 100644 --- a/code/modules/antagonists/revenant/revenant_blight.dm +++ b/code/modules/antagonists/revenant/revenant_blight.dm @@ -64,7 +64,7 @@ affected_mob.visible_message(span_warning("[affected_mob] looks terrifyingly gaunt..."), "You suddenly feel like your skin is wrong...") 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)) diff --git a/code/modules/antagonists/slaughter/slaughter.dm b/code/modules/antagonists/slaughter/slaughter.dm index b236f836fc7..c89d38196b1 100644 --- a/code/modules/antagonists/slaughter/slaughter.dm +++ b/code/modules/antagonists/slaughter/slaughter.dm @@ -117,7 +117,7 @@ . = ..() add_movespeed_modifier(/datum/movespeed_modifier/slaughter) var/slowdown_time = 6 SECONDS + (0.5 * consumed_buff) - addtimer(CALLBACK(src, .proc/remove_movespeed_modifier, /datum/movespeed_modifier/slaughter), slowdown_time, TIMER_UNIQUE | TIMER_OVERRIDE) + addtimer(CALLBACK(src,PROC_REF(remove_movespeed_modifier), /datum/movespeed_modifier/slaughter), slowdown_time, TIMER_UNIQUE | TIMER_OVERRIDE) /mob/living/simple_animal/slaughter/Destroy() release_victims() diff --git a/code/modules/antagonists/swarmer/swarmer.dm b/code/modules/antagonists/swarmer/swarmer.dm index 383a25ccb46..3d56419f115 100644 --- a/code/modules/antagonists/swarmer/swarmer.dm +++ b/code/modules/antagonists/swarmer/swarmer.dm @@ -647,7 +647,7 @@ /obj/structure/swarmer/trap/Initialize(mapload) . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/antagonists/traitor/datum_traitor.dm b/code/modules/antagonists/traitor/datum_traitor.dm index 25f35492101..40b51822f2c 100644 --- a/code/modules/antagonists/traitor/datum_traitor.dm +++ b/code/modules/antagonists/traitor/datum_traitor.dm @@ -134,7 +134,7 @@ if(!silent) to_chat(H, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.") H.dna.remove_mutation(CLOWNMUT) - RegisterSignal(M, COMSIG_MOVABLE_HEAR, .proc/handle_hearing) + RegisterSignal(M, COMSIG_MOVABLE_HEAR,PROC_REF(handle_hearing)) /datum/antagonist/traitor/remove_innate_effects(mob/living/mob_override) . = ..() diff --git a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm index 342cc68c301..330a425ed0b 100644 --- a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm +++ b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm @@ -728,7 +728,7 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list( I.loc = T client.images += I I.icon_state = "[success ? "green" : "red"]Overlay" //greenOverlay and redOverlay for success and failure respectively - addtimer(CALLBACK(src, .proc/remove_transformer_image, client, I, T), 30) + addtimer(CALLBACK(src,PROC_REF(remove_transformer_image), client, I, T), 30) if(!success) to_chat(src, span_warning("[alert_msg]")) return success diff --git a/code/modules/antagonists/traitor/syndicate_contract.dm b/code/modules/antagonists/traitor/syndicate_contract.dm index 0ac52045818..bb3f879d4f9 100644 --- a/code/modules/antagonists/traitor/syndicate_contract.dm +++ b/code/modules/antagonists/traitor/syndicate_contract.dm @@ -61,7 +61,7 @@ /datum/syndicate_contract/proc/launch_extraction_pod(turf/empty_pod_turf) var/obj/structure/closet/supplypod/extractionpod/empty_pod = new() - RegisterSignal(empty_pod, COMSIG_ATOM_ENTERED, .proc/enter_check) + RegisterSignal(empty_pod, COMSIG_ATOM_ENTERED,PROC_REF(enter_check)) empty_pod.stay_after_drop = TRUE empty_pod.reversing = TRUE @@ -142,7 +142,7 @@ [C.registered_account.account_balance] cr.", TRUE) /datum/syndicate_contract/proc/handleVictimExperience(mob/living/M) // They're off to holding - handle the return timer and give some text about what's going on. - addtimer(CALLBACK(src, .proc/returnVictim, M), 4 MINUTES) // Ship 'em back - dead or alive... 4 minutes wait. + addtimer(CALLBACK(src,PROC_REF(returnVictim), M), 4 MINUTES) // Ship 'em back - dead or alive... 4 minutes wait. if(M.stat != DEAD) //Even if they weren't the target, we're still treating them the same. M.reagents.add_reagent(/datum/reagent/medicine/regen_jelly, 20) // Heal them up - gets them out of crit/soft crit. -- now 100% toxinlover friendly!! M.flash_act() diff --git a/code/modules/arousal/genitals.dm b/code/modules/arousal/genitals.dm index c211a7d6cc1..d28e3f3f984 100644 --- a/code/modules/arousal/genitals.dm +++ b/code/modules/arousal/genitals.dm @@ -437,7 +437,7 @@ . = ..() if(.) update() - RegisterSignal(owner, COMSIG_MOB_DEATH, .proc/update_appearance) + RegisterSignal(owner, COMSIG_MOB_DEATH,PROC_REF(update_appearance)) if(genital_visflags & GENITAL_ALWAYS_VISIBLE) owner.exposed_genitals += src diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index b714f886042..46690ebf74a 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -61,9 +61,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 diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index 4f5e2a55c17..5cdfcd8359e 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -16,7 +16,7 @@ /obj/item/onetankbomb/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -94,7 +94,7 @@ /obj/item/onetankbomb/proc/on_entered(atom/movable/AM as mob|obj) //for mousetraps SIGNAL_HANDLER if(bombassembly) - INVOKE_ASYNC(bombassembly, .proc/on_entered, AM) + INVOKE_ASYNC(bombassembly,PROC_REF(on_entered), AM) /obj/item/onetankbomb/on_found(mob/finder) //for mousetraps if(bombassembly) diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index 00e5abcd30c..22098c655b0 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -225,7 +225,7 @@ to_chat(I.owner, span_warning("Your photon projector implant overheats and deactivates!")) I.Retract() overheat = TRUE - addtimer(CALLBACK(src, .proc/cooldown), flashcd * 2) + addtimer(CALLBACK(src,PROC_REF(cooldown)), flashcd * 2) /obj/item/assembly/flash/armimplant/try_use_flash(mob/user = null) if(overheat) @@ -233,7 +233,7 @@ to_chat(I.owner, span_warning("Your photon projector is running too hot to be used again so quickly!")) return FALSE overheat = TRUE - addtimer(CALLBACK(src, .proc/cooldown), flashcd) + addtimer(CALLBACK(src,PROC_REF(cooldown)), flashcd) playsound(src, 'sound/weapons/flash.ogg', 100, TRUE) update_icon(1) return TRUE diff --git a/code/modules/assembly/holder.dm b/code/modules/assembly/holder.dm index b0e0b480f57..629b9947161 100644 --- a/code/modules/assembly/holder.dm +++ b/code/modules/assembly/holder.dm @@ -18,7 +18,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -73,9 +73,9 @@ /obj/item/assembly_holder/proc/on_entered(atom/movable/AM as mob|obj) SIGNAL_HANDLER if(a_left) - INVOKE_ASYNC(a_left, .proc/on_entered, AM) + INVOKE_ASYNC(a_left,PROC_REF(on_entered), AM) if(a_right) - INVOKE_ASYNC(a_right, .proc/on_entered, AM) + INVOKE_ASYNC(a_right,PROC_REF(on_entered), AM) /obj/item/assembly_holder/on_found(mob/finder) if(a_left) diff --git a/code/modules/assembly/infrared.dm b/code/modules/assembly/infrared.dm index 93b388e46ac..74bbb6b19bb 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -161,7 +161,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) @@ -225,7 +225,7 @@ /obj/effect/beam/i_beam/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm index 2a8de0d30f8..40f444a3275 100644 --- a/code/modules/assembly/mousetrap.dm +++ b/code/modules/assembly/mousetrap.dm @@ -10,7 +10,7 @@ /obj/item/assembly/mousetrap/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -122,7 +122,7 @@ /obj/item/assembly/mousetrap/proc/on_entered(atom/movable/AM as mob|obj) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/handle_entered, AM) + INVOKE_ASYNC(src,PROC_REF(handle_entered), AM) /obj/item/assembly/mousetrap/on_found(mob/finder) diff --git a/code/modules/assembly/signaler.dm b/code/modules/assembly/signaler.dm index 281b5a66df1..9b880df8713 100644 --- a/code/modules/assembly/signaler.dm +++ b/code/modules/assembly/signaler.dm @@ -64,7 +64,7 @@ switch(action) if("signal") - INVOKE_ASYNC(src, .proc/signal) + INVOKE_ASYNC(src,PROC_REF(signal)) . = TRUE if("freq") frequency = unformat_frequency(params["freq"]) diff --git a/code/modules/assembly/voice.dm b/code/modules/assembly/voice.dm index 04f40f08507..f271cad182e 100644 --- a/code/modules/assembly/voice.dm +++ b/code/modules/assembly/voice.dm @@ -41,7 +41,7 @@ if(!istype(speaker, /obj/item/assembly/playback)) // Check if it isn't a playback device to prevent spam and lag if(message_language == languages) // If it isn't in the same language as the message, don't try to find the message if(check_activation(speaker, raw_message)) // Is it the 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) languages = message_language // Assign the message's language to a variable to use it elsewhere @@ -60,7 +60,7 @@ say("Your voice pattern is saved.", language = languages) 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 diff --git a/code/modules/asset_cache/transports/asset_transport.dm b/code/modules/asset_cache/transports/asset_transport.dm index 0a22b15e51b..42cdb030e26 100644 --- a/code/modules/asset_cache/transports/asset_transport.dm +++ b/code/modules/asset_cache/transports/asset_transport.dm @@ -14,7 +14,7 @@ /datum/asset_transport/proc/Load() if (CONFIG_GET(flag/asset_simple_preload)) for(var/client/C in GLOB.clients) - addtimer(CALLBACK(src, .proc/send_assets_slow, C, preload), 1 SECONDS) + addtimer(CALLBACK(src,PROC_REF(send_assets_slow), C, preload), 1 SECONDS) /// Initialize - Called when SSassets initializes. /datum/asset_transport/proc/Initialize(list/assets) @@ -22,7 +22,7 @@ if (!CONFIG_GET(flag/asset_simple_preload)) return for(var/client/C in GLOB.clients) - addtimer(CALLBACK(src, .proc/send_assets_slow, C, preload), 1 SECONDS) + addtimer(CALLBACK(src,PROC_REF(send_assets_slow), C, preload), 1 SECONDS) /// Register a browser asset with the asset cache system diff --git a/code/modules/atmospherics/machinery/components/binary_devices/valve.dm b/code/modules/atmospherics/machinery/components/binary_devices/valve.dm index 35eb1787714..becb772a5ff 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/valve.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/valve.dm @@ -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() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index aee49e5be45..874b72432c6 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -152,7 +152,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/nap_violation(mob/violator) open_machine() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm b/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm index 74e42f65f4b..62e5d491bcf 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/outlet_injector.dm @@ -124,7 +124,7 @@ on = !on if("inject" in signal.data) - INVOKE_ASYNC(src, .proc/inject) + INVOKE_ASYNC(src,PROC_REF(inject)) return if("set_volume_rate" in signal.data) @@ -132,7 +132,7 @@ var/datum/gas_mixture/air_contents = airs[1] volume_rate = clamp(number, 0, air_contents.return_volume()) - addtimer(CALLBACK(src, .proc/broadcast_status), 2) + addtimer(CALLBACK(src,PROC_REF(broadcast_status)), 2) if(!("status" in signal.data)) //do not update_icon update_icon() diff --git a/code/modules/awaymissions/capture_the_flag.dm b/code/modules/awaymissions/capture_the_flag.dm index 07795b2afda..a487884360b 100644 --- a/code/modules/awaymissions/capture_the_flag.dm +++ b/code/modules/awaymissions/capture_the_flag.dm @@ -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(ckey) @@ -610,7 +610,7 @@ /obj/effect/ctf/ammo/Initialize(mapload) . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index 1d1092e0bb8..824eeece240 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -66,7 +66,7 @@ /obj/effect/mob_spawn/Initialize(mapload) . = ..() if(instant || (roundstart && (mapload || (SSticker && SSticker.current_state > GAME_STATE_SETTING_UP)))) - INVOKE_ASYNC(src, .proc/create) + INVOKE_ASYNC(src,PROC_REF(create)) else if(ghost_usable) GLOB.poi_list |= src LAZYADD(GLOB.mob_spawners[job_description ? job_description : name], src) diff --git a/code/modules/awaymissions/mission_code/murderdome.dm b/code/modules/awaymissions/mission_code/murderdome.dm index 2a7cb21841d..f8f66427c52 100644 --- a/code/modules/awaymissions/mission_code/murderdome.dm +++ b/code/modules/awaymissions/mission_code/murderdome.dm @@ -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)) diff --git a/code/modules/awaymissions/mission_code/wildwest.dm b/code/modules/awaymissions/mission_code/wildwest.dm index 79821094695..cbaa1c6fd92 100644 --- a/code/modules/awaymissions/mission_code/wildwest.dm +++ b/code/modules/awaymissions/mission_code/wildwest.dm @@ -134,7 +134,7 @@ /obj/effect/meatgrinder/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/awaymissions/super_secret_room.dm b/code/modules/awaymissions/super_secret_room.dm index 6ae3ec5e8f8..89964f3ef6d 100644 --- a/code/modules/awaymissions/super_secret_room.dm +++ b/code/modules/awaymissions/super_secret_room.dm @@ -127,7 +127,7 @@ /obj/item/rupee/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/buildmode/buildmode.dm b/code/modules/buildmode/buildmode.dm index 8290258c487..94e26fcae1e 100644 --- a/code/modules/buildmode/buildmode.dm +++ b/code/modules/buildmode/buildmode.dm @@ -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() diff --git a/code/modules/cargo/packs/organic.dm b/code/modules/cargo/packs/organic.dm index daac467cba4..5ffbeb48991 100644 --- a/code/modules/cargo/packs/organic.dm +++ b/code/modules/cargo/packs/organic.dm @@ -172,7 +172,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 diff --git a/code/modules/cargo/supplypod.dm b/code/modules/cargo/supplypod.dm index 710366e3634..48ffb9b4439 100644 --- a/code/modules/cargo/supplypod.dm +++ b/code/modules/cargo/supplypod.dm @@ -115,7 +115,7 @@ /obj/structure/closet/supplypod/proc/handleReturningClose(atom/movable/holder, returntobay) 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)) || (is_type_in_typecache(O, GLOB.blacklisted_cargo_types) && !isliving(O))) //We dont want to take ghosts with us, and we don't want blacklisted items going, but we allow mobs. continue @@ -180,7 +180,7 @@ opened = TRUE //We set opened to TRUE to avoid spending time trying to open (due to being deleted) during the Destroy() proc qdel(src) 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, broken = FALSE, 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 @@ -196,7 +196,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 @@ -209,7 +209,7 @@ depart(src) else if(!stay_after_drop) // Departing should be handled manually - 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) @@ -307,8 +307,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) @@ -326,7 +326,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() diff --git a/code/modules/cargo/supplypod_beacon.dm b/code/modules/cargo/supplypod_beacon.dm index 6bbd6949750..c0f029a1b38 100644 --- a/code/modules/cargo/supplypod_beacon.dm +++ b/code/modules/cargo/supplypod_beacon.dm @@ -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) diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index 3f747099b11..f7dd69491c6 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -279,7 +279,7 @@ GLOBAL_LIST_INIT(warning_ckeys, list()) prefs = new /datum/preferences(src) GLOB.preferences_datums[ckey] = prefs - addtimer(CALLBACK(src, .proc/ensure_keys_set, prefs), 10) //prevents possible race conditions + addtimer(CALLBACK(src,PROC_REF(ensure_keys_set), prefs), 10) //prevents possible race conditions prefs.last_ip = address //these are gonna be used for banning prefs.last_id = computer_id //these are gonna be used for banning @@ -354,7 +354,7 @@ GLOBAL_LIST_INIT(warning_ckeys, list()) // Initialize tgui panel tgui_panel.initialize() - addtimer(CALLBACK(src, .proc/nuke_chat), 5 SECONDS)//Reboot it to fix broken chat window instead of making the player do it (bandaid fix) + addtimer(CALLBACK(src,PROC_REF(nuke_chat)), 5 SECONDS)//Reboot it to fix broken chat window instead of making the player do it (bandaid fix) src << browse(file('html/statbrowser.html'), "window=statbrowser") diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm index 25a707108de..90c325788d4 100644 --- a/code/modules/client/preferences_savefile.dm +++ b/code/modules/client/preferences_savefile.dm @@ -56,7 +56,7 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car /datum/preferences/proc/update_preferences(current_version, savefile/S) if(current_version < 37) //If you remove this, remove force_reset_keybindings() too. force_reset_keybindings_direct(TRUE) - addtimer(CALLBACK(src, .proc/force_reset_keybindings), 30) //No mob available when this is run, timer allows user choice. + addtimer(CALLBACK(src,PROC_REF(force_reset_keybindings)), 30) //No mob available when this is run, timer allows user choice. /datum/preferences/proc/update_character(current_version, savefile/S) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 1c15d44f382..c013f47bb1d 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -200,7 +200,7 @@ if(iscarbon(loc)) var/mob/living/carbon/C = loc C.visible_message(span_danger("The [zone_name] on [C]'s [src.name] is [break_verb] away!"), span_userdanger("The [zone_name] on your [src.name] is [break_verb] away!"), vision_distance = COMBAT_MESSAGE_RANGE) - RegisterSignal(C, COMSIG_MOVABLE_MOVED, .proc/bristle) + RegisterSignal(C, COMSIG_MOVABLE_MOVED,PROC_REF(bristle)) zones_disabled++ for(var/i in zone2body_parts_covered(def_zone)) @@ -243,7 +243,7 @@ return if(slot_flags & slotdefine2slotbit(slot)) //Was equipped to a valid slot for this item? if(iscarbon(user) && LAZYLEN(zones_disabled)) - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/bristle) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(bristle)) if(LAZYLEN(user_vars_to_edit)) for(var/variable in user_vars_to_edit) if(variable in user.vars) diff --git a/code/modules/clothing/glasses/phantomthief.dm b/code/modules/clothing/glasses/phantomthief.dm index b3a85c2c40c..5b62d5c1fee 100644 --- a/code/modules/clothing/glasses/phantomthief.dm +++ b/code/modules/clothing/glasses/phantomthief.dm @@ -35,7 +35,7 @@ return if(slot != SLOT_GLASSES) return - RegisterSignal(user, COMSIG_LIVING_COMBAT_ENABLED, .proc/injectadrenaline) + RegisterSignal(user, COMSIG_LIVING_COMBAT_ENABLED,PROC_REF(injectadrenaline)) /obj/item/clothing/glasses/phantomthief/syndicate/dropped(mob/user) . = ..() diff --git a/code/modules/clothing/gloves/color.dm b/code/modules/clothing/gloves/color.dm index 62abfd612aa..c25294e9872 100644 --- a/code/modules/clothing/gloves/color.dm +++ b/code/modules/clothing/gloves/color.dm @@ -51,7 +51,7 @@ /obj/item/clothing/gloves/color/yellow/sprayon/equipped(mob/user, slot) . = ..() - RegisterSignal(user, COMSIG_LIVING_SHOCK_PREVENTED, .proc/Shocked) + RegisterSignal(user, COMSIG_LIVING_SHOCK_PREVENTED,PROC_REF(Shocked)) /obj/item/clothing/gloves/color/yellow/sprayon/proc/Shocked() shocks_remaining-- diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index fbf88c74dbc..403e811e493 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -216,7 +216,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) diff --git a/code/modules/clothing/head/misc.dm b/code/modules/clothing/head/misc.dm index 95135c8d8a8..4f88baa2b75 100644 --- a/code/modules/clothing/head/misc.dm +++ b/code/modules/clothing/head/misc.dm @@ -375,7 +375,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) diff --git a/code/modules/clothing/head/misc_special.dm b/code/modules/clothing/head/misc_special.dm index 5fe4f067a36..57406835165 100644 --- a/code/modules/clothing/head/misc_special.dm +++ b/code/modules/clothing/head/misc_special.dm @@ -267,7 +267,7 @@ /obj/item/clothing/head/foilhat/Initialize(mapload) . = ..() if(!warped) - AddComponent(/datum/component/anti_magic, FALSE, FALSE, TRUE, INV_SLOTBIT_HEAD, 6, TRUE, null, CALLBACK(src, .proc/warp_up)) + AddComponent(/datum/component/anti_magic, FALSE, FALSE, TRUE, INV_SLOTBIT_HEAD, 6, TRUE, null, CALLBACK(src,PROC_REF(warp_up))) else warp_up() diff --git a/code/modules/clothing/masks/_masks.dm b/code/modules/clothing/masks/_masks.dm index 43ff574f962..105ed4a6bba 100644 --- a/code/modules/clothing/masks/_masks.dm +++ b/code/modules/clothing/masks/_masks.dm @@ -20,7 +20,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) diff --git a/code/modules/clothing/shoes/_shoes.dm b/code/modules/clothing/shoes/_shoes.dm index b9fff13a33f..3171bbf6832 100644 --- a/code/modules/clothing/shoes/_shoes.dm +++ b/code/modules/clothing/shoes/_shoes.dm @@ -77,7 +77,7 @@ equipped_before_drop = TRUE if(can_be_tied && tied == SHOES_UNTIED) our_alert = user.throw_alert("shoealert", /atom/movable/screen/alert/shoes/untied) - RegisterSignal(src, COMSIG_SHOES_STEP_ACTION, .proc/check_trip, override=TRUE) + RegisterSignal(src, COMSIG_SHOES_STEP_ACTION,PROC_REF(check_trip), override=TRUE) /obj/item/clothing/shoes/proc/restore_offsets(mob/user) equipped_before_drop = FALSE @@ -134,7 +134,7 @@ else if(tied == SHOES_UNTIED && our_guy && user == our_guy) our_alert = our_guy.throw_alert("shoealert", /atom/movable/screen/alert/shoes/untied) // if we're the ones unknotting our own laces, of course we know they're untied - RegisterSignal(src, COMSIG_SHOES_STEP_ACTION, .proc/check_trip, override=TRUE) + RegisterSignal(src, COMSIG_SHOES_STEP_ACTION,PROC_REF(check_trip), override=TRUE) /** * handle_tying deals with all the actual tying/untying/knotting, inferring your intent from who you are in relation to the state of the laces @@ -161,7 +161,7 @@ return user.visible_message(span_notice("[user] begins [tied ? "unknotting" : "tying"] the laces of [user.p_their()] [src.name]."), span_notice("You begin [tied ? "unknotting" : "tying"] the laces of your [src.name]...")) - if(do_after(user, lace_time, needhand=TRUE, target=our_guy, extra_checks=CALLBACK(src, .proc/still_shoed, our_guy))) + if(do_after(user, lace_time, needhand=TRUE, target=our_guy, extra_checks=CALLBACK(src,PROC_REF(still_shoed), our_guy))) to_chat(user, span_notice("You [tied ? "unknot" : "tie"] the laces of your [src.name].")) if(tied == SHOES_UNTIED) adjust_laces(SHOES_TIED, user) @@ -185,7 +185,7 @@ if(HAS_TRAIT(user, TRAIT_CLUMSY)) // based clowns trained their whole lives for this mod_time *= 0.75 - if(do_after(user, mod_time, needhand=TRUE, target=our_guy, extra_checks=CALLBACK(src, .proc/still_shoed, our_guy))) + if(do_after(user, mod_time, needhand=TRUE, target=our_guy, extra_checks=CALLBACK(src,PROC_REF(still_shoed), our_guy))) to_chat(user, span_notice("You [tied ? "untie" : "knot"] the laces on [loc]'s [src.name].")) if(tied == SHOES_UNTIED) adjust_laces(SHOES_KNOTTED, user) @@ -266,6 +266,6 @@ to_chat(user, span_notice("You begin [tied ? "untying" : "tying"] the laces on [src]...")) - if(do_after(user, lace_time, needhand=TRUE, target=src,extra_checks=CALLBACK(src, .proc/still_shoed, user))) + if(do_after(user, lace_time, needhand=TRUE, target=src,extra_checks=CALLBACK(src,PROC_REF(still_shoed), user))) to_chat(user, span_notice("You [tied ? "untie" : "tie"] the laces on [src].")) adjust_laces(tied ? SHOES_TIED : SHOES_UNTIED, user) diff --git a/code/modules/clothing/shoes/miscellaneous.dm b/code/modules/clothing/shoes/miscellaneous.dm index 775242c5518..7ed0a245aba 100644 --- a/code/modules/clothing/shoes/miscellaneous.dm +++ b/code/modules/clothing/shoes/miscellaneous.dm @@ -323,14 +323,14 @@ active = TRUE set_light_color(rgb(rand(0,255),rand(0,255),rand(0,255))) set_light_on(TRUE) - 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_color(rgb(rand(0,255),rand(0,255),rand(0,255))) set_light_on(TRUE) lightCycle += 1 - addtimer(CALLBACK(src, .proc/lightUp), 5) + addtimer(CALLBACK(src,PROC_REF(lightUp)), 5) else set_light_on(FALSE) lightCycle = 0 diff --git a/code/modules/clothing/spacesuits/chronosuit.dm b/code/modules/clothing/spacesuits/chronosuit.dm index 55739d0e3ce..b029433bc04 100644 --- a/code/modules/clothing/spacesuits/chronosuit.dm +++ b/code/modules/clothing/spacesuits/chronosuit.dm @@ -129,12 +129,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) @@ -142,14 +142,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) diff --git a/code/modules/clothing/spacesuits/flightsuit.dm b/code/modules/clothing/spacesuits/flightsuit.dm index 657efc08682..2b1bae2d597 100644 --- a/code/modules/clothing/spacesuits/flightsuit.dm +++ b/code/modules/clothing/spacesuits/flightsuit.dm @@ -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 @@ -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() diff --git a/code/modules/clothing/spacesuits/hardsuit.dm b/code/modules/clothing/spacesuits/hardsuit.dm index e58d83bacde..f7fb229af34 100644 --- a/code/modules/clothing/spacesuits/hardsuit.dm +++ b/code/modules/clothing/spacesuits/hardsuit.dm @@ -650,7 +650,7 @@ armor //Baseline hardsuits 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(mob/user) diff --git a/code/modules/clothing/spacesuits/miscellaneous.dm b/code/modules/clothing/spacesuits/miscellaneous.dm index 844b49fcd9f..6afe6dddce4 100644 --- a/code/modules/clothing/spacesuits/miscellaneous.dm +++ b/code/modules/clothing/spacesuits/miscellaneous.dm @@ -377,7 +377,7 @@ Contains: /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal/Initialize() . = ..() - AddComponent(/datum/component/anti_magic, FALSE, FALSE, TRUE, INV_SLOTBIT_HEAD, charges, TRUE, null, CALLBACK(src, .proc/anti_magic_gone)) + AddComponent(/datum/component/anti_magic, FALSE, FALSE, TRUE, INV_SLOTBIT_HEAD, charges, TRUE, null, CALLBACK(src,PROC_REF(anti_magic_gone))) /obj/item/clothing/head/helmet/space/hardsuit/ert/paranormal/proc/anti_magic_gone() var/mob/M = loc @@ -398,7 +398,7 @@ Contains: /obj/item/clothing/suit/space/hardsuit/ert/paranormal/Initialize() . = ..() - AddComponent(/datum/component/anti_magic, TRUE, TRUE, FALSE, INV_SLOTBIT_OCLOTHING, charges, TRUE, null, CALLBACK(src, .proc/anti_magic_gone)) + AddComponent(/datum/component/anti_magic, TRUE, TRUE, FALSE, INV_SLOTBIT_OCLOTHING, charges, TRUE, null, CALLBACK(src,PROC_REF(anti_magic_gone))) /obj/item/clothing/suit/space/hardsuit/ert/paranormal/proc/anti_magic_gone() var/mob/M = loc diff --git a/code/modules/clothing/suits/arfsuits.dm b/code/modules/clothing/suits/arfsuits.dm index c1f4b079139..03bc298958e 100644 --- a/code/modules/clothing/suits/arfsuits.dm +++ b/code/modules/clothing/suits/arfsuits.dm @@ -4622,7 +4622,7 @@ emped = TRUE slowdown += induced_slowdown L.update_equipment_speed_mods() - addtimer(CALLBACK(src, .proc/end_emp_effect, induced_slowdown), 50) + addtimer(CALLBACK(src,PROC_REF(end_emp_effect), induced_slowdown), 50) return /obj/item/clothing/suit/armor/power_armor/proc/end_emp_effect(slowdown_induced) diff --git a/code/modules/clothing/suits/f13armor.dm b/code/modules/clothing/suits/f13armor.dm index 9efb7bfc88c..999b6924b76 100644 --- a/code/modules/clothing/suits/f13armor.dm +++ b/code/modules/clothing/suits/f13armor.dm @@ -544,7 +544,7 @@ emped = TRUE slowdown += induced_slowdown L.update_equipment_speed_mods() - addtimer(CALLBACK(src, .proc/end_emp_effect, induced_slowdown), 50) + addtimer(CALLBACK(src,PROC_REF(end_emp_effect), induced_slowdown), 50) return /obj/item/clothing/suit/armor/power_armor/proc/end_emp_effect(slowdown_induced) diff --git a/code/modules/clothing/suits/wiz_robe.dm b/code/modules/clothing/suits/wiz_robe.dm index 220ad00b9b9..1bd66dcec3a 100644 --- a/code/modules/clothing/suits/wiz_robe.dm +++ b/code/modules/clothing/suits/wiz_robe.dm @@ -189,7 +189,7 @@ /datum/action/item_action/stickmen/New(Target) ..() if(isitem(Target)) - RegisterSignal(Target, COMSIG_PARENT_EXAMINE, .proc/give_infos) + RegisterSignal(Target, COMSIG_PARENT_EXAMINE,PROC_REF(give_infos)) /datum/action/item_action/stickmen/Destroy() for(var/A in summoned_stickmen) @@ -211,7 +211,7 @@ /datum/action/item_action/stickmen/Grant(mob/M) . = ..() if(owner) - RegisterSignal(M, COMSIG_MOB_POINTED, .proc/rally) + RegisterSignal(M, COMSIG_MOB_POINTED,PROC_REF(rally)) if(book_of_grudges[M]) //Stop attacking your new master. book_of_grudges -= M for(var/A in summoned_stickmen) @@ -248,9 +248,9 @@ var/mob/living/simple_animal/hostile/S = new summoned_mob_path (get_turf(usr)) S.faction = owner.faction S.foes = book_of_grudges - RegisterSignal(S, COMSIG_PARENT_QDELETING, .proc/remove_from_list) + RegisterSignal(S, COMSIG_PARENT_QDELETING,PROC_REF(remove_from_list)) ready = FALSE - addtimer(CALLBACK(src, .proc/ready_again), cooldown) + addtimer(CALLBACK(src,PROC_REF(ready_again)), cooldown) /datum/action/item_action/stickmen/proc/remove_from_list(datum/source, forced) summoned_stickmen -= source @@ -279,9 +279,9 @@ var/obj/mecha/M = A L = M.occupant if(L && L.stat != DEAD && !HAS_TRAIT(L, TRAIT_DEATHCOMA)) //Taking revenge on the deads would be proposterous. - addtimer(CALLBACK(src, .proc/clear_grudge, L), 2 MINUTES, TIMER_OVERRIDE|TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(clear_grudge), L), 2 MINUTES, TIMER_OVERRIDE|TIMER_UNIQUE) if(!book_of_grudges[L]) - RegisterSignal(L, list(COMSIG_PARENT_QDELETING, COMSIG_MOB_DEATH), .proc/grudge_settled) + RegisterSignal(L, list(COMSIG_PARENT_QDELETING, COMSIG_MOB_DEATH),PROC_REF(grudge_settled)) book_of_grudges[L] = TRUE for(var/k in summoned_stickmen) //Shamelessly copied from the blob rally power var/mob/living/simple_animal/hostile/S = k diff --git a/code/modules/detectivework/scanner.dm b/code/modules/detectivework/scanner.dm index 8baf2e09c06..6a568e09b3b 100644 --- a/code/modules/detectivework/scanner.dm +++ b/code/modules/detectivework/scanner.dm @@ -33,7 +33,7 @@ if(log.len && !scanning) scanning = TRUE to_chat(user, span_notice("Printing report, please wait...")) - addtimer(CALLBACK(src, .proc/PrintReport), 100) + addtimer(CALLBACK(src,PROC_REF(PrintReport)), 100) else to_chat(user, span_notice("The scanner has no logs or is in use.")) diff --git a/code/modules/events/carp_migration.dm b/code/modules/events/carp_migration.dm index c554032813c..d98e2ab3e9a 100644 --- a/code/modules/events/carp_migration.dm +++ b/code/modules/events/carp_migration.dm @@ -131,8 +131,8 @@ /mob/living/simple_animal/nest_spawn_hole_guy/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_HOSTILE_CHECK_FACTION, .proc/no_attack_pls) - RegisterSignal(src, COMSIG_MOB_APPLY_DAMAGE, .proc/im_hit) + RegisterSignal(src, COMSIG_HOSTILE_CHECK_FACTION,PROC_REF(no_attack_pls)) + RegisterSignal(src, COMSIG_MOB_APPLY_DAMAGE,PROC_REF(im_hit)) /mob/living/simple_animal/nest_spawn_hole_guy/update_overlays() . = ..() diff --git a/code/modules/events/fugitive_spawning.dm b/code/modules/events/fugitive_spawning.dm index f529e09ff4c..be4fa8f8235 100644 --- a/code/modules/events/fugitive_spawning.dm +++ b/code/modules/events/fugitive_spawning.dm @@ -56,7 +56,7 @@ //after spawning playsound(src, 'sound/weapons/emitter.ogg', 50, TRUE) new /obj/item/storage/toolbox/mechanical(landing_turf) //so they can actually escape maint - addtimer(CALLBACK(src, .proc/spawn_hunters), 10 MINUTES) + addtimer(CALLBACK(src,PROC_REF(spawn_hunters)), 10 MINUTES) role_name = "fugitive hunter" return SUCCESSFUL_SPAWN diff --git a/code/modules/events/ghost_role.dm b/code/modules/events/ghost_role.dm index 25e71ab8c99..5dc858a6ca4 100644 --- a/code/modules/events/ghost_role.dm +++ b/code/modules/events/ghost_role.dm @@ -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) diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index f0735916f29..3444927373a 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -280,7 +280,7 @@ . = ..() add_atom_colour("#ffffff", FIXED_COLOUR_PRIORITY) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/fallout/obj/campfire.dm b/code/modules/fallout/obj/campfire.dm index 615c9a6ef65..a867c1e9b69 100644 --- a/code/modules/fallout/obj/campfire.dm +++ b/code/modules/fallout/obj/campfire.dm @@ -19,7 +19,7 @@ /obj/structure/campfire/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -63,7 +63,7 @@ /obj/structure/campfire/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER if(fired) - INVOKE_ASYNC(src, .proc/burn_process) + INVOKE_ASYNC(src,PROC_REF(burn_process)) /obj/structure/campfire/process() if(fuel <= 0) diff --git a/code/modules/fallout/obj/explosives.dm b/code/modules/fallout/obj/explosives.dm index b6e4e37d23a..d0ecda75a41 100644 --- a/code/modules/fallout/obj/explosives.dm +++ b/code/modules/fallout/obj/explosives.dm @@ -115,7 +115,7 @@ /obj/item/mine/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -135,7 +135,7 @@ to_chat(user, span_danger("The mine is already armed!")) //how did we get here if(user.dropItemToGround(src)) anchored = TRUE - addtimer(CALLBACK(src, .proc/arm), 5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(arm)), 5 SECONDS) to_chat(user, span_notice("You drop the mine and activate the 5-second arming process.")) return @@ -164,7 +164,7 @@ if(arrived.movement_type & FLYING) return - INVOKE_ASYNC(src, .proc/triggermine, arrived) + INVOKE_ASYNC(src,PROC_REF(triggermine), arrived) /obj/item/mine/proc/triggermine(mob/victim) if(triggered) diff --git a/code/modules/fallout/obj/rockitlauncher.dm b/code/modules/fallout/obj/rockitlauncher.dm index 0c2b7baa997..6884834555a 100644 --- a/code/modules/fallout/obj/rockitlauncher.dm +++ b/code/modules/fallout/obj/rockitlauncher.dm @@ -226,8 +226,8 @@ Possible solution: Only add the minimum weight class of a stack (which is basica var/settings = 1 /obj/item/pneumatic_cannon/rockitlauncher/Initialize() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) if(istype(loc, /obj/item/rockitlauncher_pack)) //We should spawn inside an ammo pack so let's use that one. ammo_pack = loc diff --git a/code/modules/fallout/obj/stack/f13Cash.dm b/code/modules/fallout/obj/stack/f13Cash.dm index f17a4589ad9..0861600da6b 100644 --- a/code/modules/fallout/obj/stack/f13Cash.dm +++ b/code/modules/fallout/obj/stack/f13Cash.dm @@ -73,7 +73,7 @@ /obj/item/stack/f13Cash/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_ITEM_MOB_DROPPED, .proc/dingaling) + RegisterSignal(src, COMSIG_ITEM_MOB_DROPPED,PROC_REF(dingaling)) /obj/item/stack/f13Cash/attack_self(mob/user) if (flippable) diff --git a/code/modules/fallout/obj/structures/mob_spawners.dm b/code/modules/fallout/obj/structures/mob_spawners.dm index ae53f7f4338..9562c3edca1 100644 --- a/code/modules/fallout/obj/structures/mob_spawners.dm +++ b/code/modules/fallout/obj/structures/mob_spawners.dm @@ -143,7 +143,7 @@ GLOBAL_LIST_EMPTY(player_made_nests) var/image/overlay_image = image(icon, icon_state = cover_state) add_overlay(overlay_image) if(timer) - addtimer(CALLBACK(src, .proc/do_unseal), timer) + addtimer(CALLBACK(src,PROC_REF(do_unseal)), timer) /obj/structure/nest/proc/try_unseal(mob/user = null, obj/item/I = null) if(!istype(user)) diff --git a/code/modules/fallout/obj/structures/wasteplants.dm b/code/modules/fallout/obj/structures/wasteplants.dm index 6cd4a66e75a..41cb1b663d5 100644 --- a/code/modules/fallout/obj/structures/wasteplants.dm +++ b/code/modules/fallout/obj/structures/wasteplants.dm @@ -71,7 +71,7 @@ has_plod = FALSE update_icon() //Won't update due to proc otherwise timer = initial(timer) + rand(-100,100) //add some variability - addtimer(CALLBACK(src, .proc/regrow),timer) //Set up the timer properly + addtimer(CALLBACK(src,PROC_REF(regrow),timer)) //Set up the timer properly update_icon() /obj/structure/flora/wasteplant/proc/regrow() diff --git a/code/modules/fallout/obj/structures/well.dm b/code/modules/fallout/obj/structures/well.dm index f929e4a3853..ea71f460279 100644 --- a/code/modules/fallout/obj/structures/well.dm +++ b/code/modules/fallout/obj/structures/well.dm @@ -17,7 +17,7 @@ if(!moving) moving = TRUE flick("wellwheel-filling", src) - addtimer(CALLBACK(src, .proc/Reset), using_time) + addtimer(CALLBACK(src,PROC_REF(Reset)), using_time) return /obj/structure/sink/well/proc/Reset() diff --git a/code/modules/farming/farming_structures.dm b/code/modules/farming/farming_structures.dm index 9b8e75bcacb..e9994b8f2bd 100644 --- a/code/modules/farming/farming_structures.dm +++ b/code/modules/farming/farming_structures.dm @@ -59,7 +59,7 @@ to_chat(user, span_warning("[I] is stuck to your hand!")) return TRUE to_chat(user, span_notice("You place [I] into [src] to start the fermentation process.")) - addtimer(CALLBACK(src, .proc/makeWine, list(fruit)), rand(8 SECONDS, 12 SECONDS) * speed_multiplier) + addtimer(CALLBACK(src,PROC_REF(makeWine), list(fruit)), rand(8 SECONDS, 12 SECONDS) * speed_multiplier) return TRUE else if(SEND_SIGNAL(I, COMSIG_CONTAINS_STORAGE) && do_after(user, 2 SECONDS, target = src)) var/list/storage_contents = list() @@ -71,7 +71,7 @@ continue fruits += fruit if (length(fruits)) - addtimer(CALLBACK(src, .proc/makeWine, fruits), rand(8 SECONDS, 12 SECONDS) * speed_multiplier) + addtimer(CALLBACK(src,PROC_REF(makeWine), fruits), rand(8 SECONDS, 12 SECONDS) * speed_multiplier) to_chat(user, span_notice("You fill \the [src] from \the [I] and start the fermentation process.")) else to_chat(user, span_warning("There's nothing in \the [I] that you can ferment!")) diff --git a/code/modules/fields/fields.dm b/code/modules/fields/fields.dm index 8a14befcac6..d9ba053a349 100644 --- a/code/modules/fields/fields.dm +++ b/code/modules/fields/fields.dm @@ -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) diff --git a/code/modules/fields/timestop.dm b/code/modules/fields/timestop.dm index 86495536028..0cf89dcaad6 100644 --- a/code/modules/fields/timestop.dm +++ b/code/modules/fields/timestop.dm @@ -33,7 +33,7 @@ if(G.summoner && locate(/obj/effect/proc_holder/spell/aoe_turf/timestop) in G.summoner.mind.spell_list) //It would only make sense that a person's stand would also be immune. immune[G] = TRUE if(start) - INVOKE_ASYNC(src, .proc/timestop) // ironic... + INVOKE_ASYNC(src,PROC_REF(timestop)) // ironic... /obj/effect/timestop/Destroy() qdel(chronofield) @@ -100,8 +100,8 @@ A.move_resist = INFINITY global_frozen_atoms[A] = src into_the_negative_zone(A) - RegisterSignal(A, COMSIG_MOVABLE_PRE_MOVE, .proc/unfreeze_atom) - RegisterSignal(A, COMSIG_ITEM_PICKUP, .proc/unfreeze_atom) + RegisterSignal(A, COMSIG_MOVABLE_PRE_MOVE,PROC_REF(unfreeze_atom)) + RegisterSignal(A, COMSIG_ITEM_PICKUP,PROC_REF(unfreeze_atom)) return TRUE diff --git a/code/modules/flufftext/Dreaming.dm b/code/modules/flufftext/Dreaming.dm index e0b66768695..2a645a81e08 100644 --- a/code/modules/flufftext/Dreaming.dm +++ b/code/modules/flufftext/Dreaming.dm @@ -60,6 +60,6 @@ dream_fragments.Cut(1,2) to_chat(src, span_notice("... [next_message] ...")) 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 diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index 77fc2f44417..7b2236c2931 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -286,7 +286,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( target.client.images |= fakerune target.playsound_local(wall,'sound/effects/meteorimpact.ogg', 150, 1) bubblegum = new(wall, target) - addtimer(CALLBACK(src, .proc/bubble_attack, landing), 10) + addtimer(CALLBACK(src,PROC_REF(bubble_attack), landing), 10) /datum/hallucination/oh_yeah/proc/bubble_attack(turf/landing) var/charged = FALSE //only get hit once @@ -1075,7 +1075,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( /obj/effect/hallucination/danger/lava/Initialize(mapload, _target) . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -1097,7 +1097,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( /obj/effect/hallucination/danger/chasm/Initialize(mapload, _target) . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -1124,7 +1124,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( . = ..() START_PROCESSING(SSobj, src) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -1243,13 +1243,13 @@ GLOBAL_LIST_INIT(hallucination_list, list( if(target.client) target.client.images |= shock_image target.client.images |= electrocution_skeleton_anim - addtimer(CALLBACK(src, .proc/reset_shock_animation), 40) + addtimer(CALLBACK(src,PROC_REF(reset_shock_animation)), 40) target.playsound_local(get_turf(src), "sparks", 100, 1) target.staminaloss += 50 target.Stun(40) target.jitteriness += 1000 target.do_jitter_animation(target.jitteriness) - addtimer(CALLBACK(src, .proc/shock_drop), 20) + addtimer(CALLBACK(src,PROC_REF(shock_drop)), 20) /datum/hallucination/shock/proc/reset_shock_animation() if(target.client) diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 37e1d8f649b..277c59b7903 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -23,13 +23,13 @@ gulp_size = max(round(reagents.total_volume / 5), 5) /obj/item/reagent_containers/food/drinks/take_a_bellybite(datum/source, obj/vore_belly/gut, mob/living/vorer) - INVOKE_ASYNC(src, .proc/attempt_forcedrink, vorer, vorer, TRUE, TRUE, TRUE) + INVOKE_ASYNC(src,PROC_REF(attempt_forcedrink), vorer, vorer, TRUE, TRUE, TRUE) if(gut.can_taste) checkLiked(min(gulp_size/reagents.total_volume, 1), vorer) return TRUE /obj/item/reagent_containers/food/drinks/attack(mob/living/M, mob/user, def_zone) - INVOKE_ASYNC(src, .proc/attempt_forcedrink, M, user) + INVOKE_ASYNC(src,PROC_REF(attempt_forcedrink), M, user) /obj/item/reagent_containers/food/drinks/proc/attempt_forcedrink(mob/living/M, mob/user, force, silent, vorebite) if(!reagents || !reagents.total_volume) @@ -535,10 +535,10 @@ /obj/item/reagent_containers/food/drinks/soda_cans/take_a_bellybite(datum/source, obj/vore_belly/gut, mob/living/vorer) if(!is_drainable()) - INVOKE_ASYNC(src, .proc/pop_top, vorer, vorer, TRUE, TRUE, TRUE) + INVOKE_ASYNC(src,PROC_REF(pop_top), vorer, vorer, TRUE, TRUE, TRUE) return TRUE if(!reagents.total_volume) - INVOKE_ASYNC(src, .proc/crush_can, vorer, vorer, TRUE, TRUE, TRUE) + INVOKE_ASYNC(src,PROC_REF(crush_can), vorer, vorer, TRUE, TRUE, TRUE) return TRUE return ..() diff --git a/code/modules/food_and_drinks/food.dm b/code/modules/food_and_drinks/food.dm index 22b5958f1c6..b58fd72f434 100644 --- a/code/modules/food_and_drinks/food.dm +++ b/code/modules/food_and_drinks/food.dm @@ -25,7 +25,7 @@ /obj/item/reagent_containers/food/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_VORE_ATOM_DIGESTED, .proc/take_a_bellybite) + RegisterSignal(src, COMSIG_VORE_ATOM_DIGESTED,PROC_REF(take_a_bellybite)) /obj/item/reagent_containers/food/proc/adjust_food_quality(new_quality) diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 60abad19a61..e3a2fd9e06f 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -101,7 +101,7 @@ All foods are distributed among various categories. Use common sense. return /obj/item/reagent_containers/food/snacks/take_a_bellybite(datum/source, obj/vore_belly/gut, mob/living/vorer) - INVOKE_ASYNC(src, .proc/attempt_forcefeed, vorer, vorer, TRUE, TRUE, TRUE) + INVOKE_ASYNC(src,PROC_REF(attempt_forcefeed), vorer, vorer, TRUE, TRUE, TRUE) if(gut.can_taste) checkLiked(min(bitesize / reagents.total_volume, 1), vorer) return TRUE @@ -109,7 +109,7 @@ All foods are distributed among various categories. Use common sense. /obj/item/reagent_containers/food/snacks/attack(mob/living/M, mob/living/user, attackchain_flags = NONE, damage_multiplier = 1) if(user.a_intent == INTENT_HARM) return ..() - INVOKE_ASYNC(src, .proc/attempt_forcefeed, M, user) + INVOKE_ASYNC(src,PROC_REF(attempt_forcefeed), M, user) /obj/item/reagent_containers/food/snacks/proc/attempt_forcefeed(mob/living/M, mob/living/user, forced, silent, vorebite) if(!eatverb) diff --git a/code/modules/food_and_drinks/food/snacks_other.dm b/code/modules/food_and_drinks/food/snacks_other.dm index c2141bab28e..02c601e59a6 100644 --- a/code/modules/food_and_drinks/food/snacks_other.dm +++ b/code/modules/food_and_drinks/food/snacks_other.dm @@ -441,7 +441,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) @@ -469,7 +469,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) diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index a6c2b8ed2c2..a35cc774560 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -490,7 +490,7 @@ for(var/R in S.bonus_reagents) LAZYSET(S.cached_reagents_amount, R, S.reagents.get_reagent_amount(R)) S.previous_typepath = type - addtimer(CALLBACK(S, .proc/cool_down), 7 MINUTES) //canonically they reverted back to normal after 7 minutes. + addtimer(CALLBACK(S,PROC_REF(cool_down)), 7 MINUTES) //canonically they reverted back to normal after 7 minutes. /obj/item/reagent_containers/food/snacks/donkpocket/proc/cool_down() if(!previous_typepath) //This shouldn't happen. diff --git a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm index 7bcbc409f41..d54c59caa37 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/gibber.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/gibber.dm @@ -197,7 +197,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) diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index d098fe48797..df5f51c1125 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -312,7 +312,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 diff --git a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm index bbada0fcb11..250dccfdcd3 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/smartfridge.dm @@ -617,7 +617,7 @@ /obj/machinery/smartfridge/bottlerack/gardentool/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))) // Preloaded simple farming rack for mapping /obj/machinery/smartfridge/bottlerack/gardentool/primitive diff --git a/code/modules/holiday/holidays.dm b/code/modules/holiday/holidays.dm index d4eadb0ebbf..fe901495aa2 100644 --- a/code/modules/holiday/holidays.dm +++ b/code/modules/holiday/holidays.dm @@ -577,7 +577,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) diff --git a/code/modules/holodeck/computer.dm b/code/modules/holodeck/computer.dm index 1a320ec7df4..a51a80234da 100644 --- a/code/modules/holodeck/computer.dm +++ b/code/modules/holodeck/computer.dm @@ -220,7 +220,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 @@ -280,7 +280,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() @@ -300,7 +300,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 @@ -328,7 +328,7 @@ if(O && !stat && !forced) if((ismob(O) || ismob(O.loc))) - addtimer(CALLBACK(src, .proc/derez, O, silent), 200) // We want virtual objects to last a long time. + addtimer(CALLBACK(src,PROC_REF(derez), O, silent), 200) // We want virtual objects to last a long time. return spawned -= O diff --git a/code/modules/hydroponics/grown/citrus.dm b/code/modules/hydroponics/grown/citrus.dm index 688e1ee0ef1..d2fe26d0616 100644 --- a/code/modules/hydroponics/grown/citrus.dm +++ b/code/modules/hydroponics/grown/citrus.dm @@ -178,7 +178,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() diff --git a/code/modules/hydroponics/grown/melon.dm b/code/modules/hydroponics/grown/melon.dm index 3dd00c1466d..d7a2f29b243 100644 --- a/code/modules/hydroponics/grown/melon.dm +++ b/code/modules/hydroponics/grown/melon.dm @@ -67,7 +67,7 @@ var/uses = 1 if(seed) uses = round(seed.potency / 20) - AddComponent(/datum/component/anti_magic, TRUE, TRUE, FALSE, INV_SLOTBIT_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, INV_SLOTBIT_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) diff --git a/code/modules/hydroponics/grown/misc.dm b/code/modules/hydroponics/grown/misc.dm index e141fba5385..d21c519cf9a 100644 --- a/code/modules/hydroponics/grown/misc.dm +++ b/code/modules/hydroponics/grown/misc.dm @@ -352,7 +352,7 @@ fusedactive = TRUE defused = FALSE playsound(src, 'sound/effects/fuse.ogg', 100, 0) - addtimer(CALLBACK(src, .proc/prime), 5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(prime)), 5 SECONDS) icon_state = "coconut_grenade_active" desc = "RUN!" if(!seed.get_gene(/datum/plant_gene/trait/glow)) diff --git a/code/modules/hydroponics/grown/towercap.dm b/code/modules/hydroponics/grown/towercap.dm index b31e3ca3637..5db97431bf1 100644 --- a/code/modules/hydroponics/grown/towercap.dm +++ b/code/modules/hydroponics/grown/towercap.dm @@ -199,7 +199,7 @@ /obj/structure/bonfire/prelit/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -208,7 +208,7 @@ /obj/structure/bonfire/dense/prelit/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -336,7 +336,7 @@ /obj/structure/bonfire/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER if(burning & !grill) - INVOKE_ASYNC(src, .proc/Burn) + INVOKE_ASYNC(src,PROC_REF(Burn)) /obj/structure/bonfire/proc/Burn() var/turf/current_location = get_turf(src) diff --git a/code/modules/hydroponics/plant_genes.dm b/code/modules/hydroponics/plant_genes.dm index 101dcc1b499..3f85f95a18f 100644 --- a/code/modules/hydroponics/plant_genes.dm +++ b/code/modules/hydroponics/plant_genes.dm @@ -243,7 +243,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) diff --git a/code/modules/instruments/instruments/item.dm b/code/modules/instruments/instruments/item.dm index 0caa1843a35..5bdfdc2e012 100644 --- a/code/modules/instruments/instruments/item.dm +++ b/code/modules/instruments/instruments/item.dm @@ -357,7 +357,7 @@ /obj/item/instrument/harmonica/equipped(mob/M, slot) . = ..() - RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /obj/item/instrument/harmonica/dropped(mob/M) . = ..() diff --git a/code/modules/instruments/songs/editor.dm b/code/modules/instruments/songs/editor.dm index 828178fcbe9..4d84fa0ae55 100644 --- a/code/modules/instruments/songs/editor.dm +++ b/code/modules/instruments/songs/editor.dm @@ -161,7 +161,7 @@ tempo = sanitize_tempo(tempo + text2num(href_list["tempo"])) else if(href_list["play"]) - INVOKE_ASYNC(src, .proc/start_playing, usr) + INVOKE_ASYNC(src,PROC_REF(start_playing), usr) else if(href_list["newline"]) var/newline = html_encode(input("Enter your line: ", parent.name) as text|null) diff --git a/code/modules/integrated_electronics/core/printer.dm b/code/modules/integrated_electronics/core/printer.dm index ff01ff5c7ab..98662474bad 100644 --- a/code/modules/integrated_electronics/core/printer.dm +++ b/code/modules/integrated_electronics/core/printer.dm @@ -287,7 +287,7 @@ to_chat(usr, "You begin printing a custom assembly. This will take approximately [DisplayTimeText(cloning_time)]. You can still print \ off normal parts during this time.") 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) diff --git a/code/modules/integrated_electronics/subtypes/manipulation.dm b/code/modules/integrated_electronics/subtypes/manipulation.dm index d575357a911..20919b9d3f7 100644 --- a/code/modules/integrated_electronics/subtypes/manipulation.dm +++ b/code/modules/integrated_electronics/subtypes/manipulation.dm @@ -342,7 +342,7 @@ assembly.visible_message(span_danger("[assembly] has thrown [A]!")) 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)) @@ -417,7 +417,7 @@ ) /obj/item/integrated_circuit/manipulation/matman/ComponentInitialize() - var/datum/component/material_container/materials = AddComponent(/datum/component/material_container, mtypes, 100000, FALSE, /obj/item/stack, CALLBACK(src, .proc/is_insertion_ready), CALLBACK(src, .proc/AfterMaterialInsert)) + var/datum/component/material_container/materials = AddComponent(/datum/component/material_container, mtypes, 100000, FALSE, /obj/item/stack, CALLBACK(src,PROC_REF(is_insertion_ready)), CALLBACK(src,PROC_REF(AfterMaterialInsert))) materials.precise_insertion = TRUE .=..() diff --git a/code/modules/integrated_electronics/subtypes/output.dm b/code/modules/integrated_electronics/subtypes/output.dm index 3a129f97371..5c18e44859c 100644 --- a/code/modules/integrated_electronics/subtypes/output.dm +++ b/code/modules/integrated_electronics/subtypes/output.dm @@ -324,7 +324,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) diff --git a/code/modules/integrated_electronics/subtypes/time.dm b/code/modules/integrated_electronics/subtypes/time.dm index 724f8575acc..c8092b1ffc1 100644 --- a/code/modules/integrated_electronics/subtypes/time.dm +++ b/code/modules/integrated_electronics/subtypes/time.dm @@ -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) diff --git a/code/modules/interview/interview.dm b/code/modules/interview/interview.dm index 5f318200589..aeb1525f739 100644 --- a/code/modules/interview/interview.dm +++ b/code/modules/interview/interview.dm @@ -65,7 +65,7 @@ SEND_SOUND(owner, sound('sound/effects/adminhelp.ogg')) to_chat(owner, "-- Interview Update --" \ + "\n[span_adminsay("Your interview was approved, you will now be reconnected in 5 seconds.")]", confidential = TRUE) - addtimer(CALLBACK(src, .proc/reconnect_owner), 50) + addtimer(CALLBACK(src,PROC_REF(reconnect_owner)), 50) /** * Denies the interview and adds the owner to the cooldown for new interviews. diff --git a/code/modules/keybindings/setup.dm b/code/modules/keybindings/setup.dm index 56daa3dbe72..7e4818ae254 100644 --- a/code/modules/keybindings/setup.dm +++ b/code/modules/keybindings/setup.dm @@ -59,7 +59,7 @@ full_macro_assert(prefs_override) /client/proc/full_macro_assert(datum/preferences/prefs_override = prefs) - INVOKE_ASYNC(src, .proc/do_full_macro_assert, prefs_override) // winget sleeps. + INVOKE_ASYNC(src,PROC_REF(do_full_macro_assert), prefs_override) // winget sleeps. // TODO: OVERHAUL ALL OF THIS AGAIN. While this works this is flatout horrid with the "use list but also don't use lists" crap. I hate my life. /client/proc/do_full_macro_assert(datum/preferences/prefs_override = prefs) diff --git a/code/modules/library/lib_codex_gigas.dm b/code/modules/library/lib_codex_gigas.dm index 86c75b5434b..957ebcc69c2 100644 --- a/code/modules/library/lib_codex_gigas.dm +++ b/code/modules/library/lib_codex_gigas.dm @@ -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 diff --git a/code/modules/mafia/controller.dm b/code/modules/mafia/controller.dm index 4a77b3cae77..f05701375c2 100644 --- a/code/modules/mafia/controller.dm +++ b/code/modules/mafia/controller.dm @@ -206,7 +206,7 @@ */ /datum/mafia_controller/proc/start_voting_phase() phase = MAFIA_PHASE_VOTING - next_phase_timer = addtimer(CALLBACK(src, .proc/check_trial, TRUE),voting_phase_period,TIMER_STOPPABLE) //be verbose! + next_phase_timer = addtimer(CALLBACK(src,PROC_REF(check_trial), TRUE),voting_phase_period,TIMER_STOPPABLE) //be verbose! send_message("Voting started! Vote for who you want to see on trial today.") SStgui.update_uis(src) @@ -238,7 +238,7 @@ on_trial = loser on_trial.body.forceMove(get_turf(town_center_landmark)) phase = MAFIA_PHASE_JUDGEMENT - next_phase_timer = addtimer(CALLBACK(src, .proc/lynch),judgement_phase_period,TIMER_STOPPABLE) + next_phase_timer = addtimer(CALLBACK(src,PROC_REF(lynch),judgement_phase_period,TIMER_STOPPABLE)) reset_votes("Day") else if(verbose) @@ -267,13 +267,13 @@ if(judgement_guilty_votes.len > judgement_innocent_votes.len) //strictly need majority guilty to lynch send_message(span_red("Guilty wins majority, [on_trial.body.real_name] has been lynched.")) on_trial.kill(src, lynch = TRUE) - addtimer(CALLBACK(src, .proc/send_home, on_trial),judgement_lynch_period) + addtimer(CALLBACK(src,PROC_REF(send_home), on_trial),judgement_lynch_period) else send_message(span_green("Innocent wins majority, [on_trial.body.real_name] has been spared.")) on_trial.body.forceMove(get_turf(on_trial.assigned_landmark)) on_trial = null //day votes are already cleared, so this will skip the trial and check victory/lockdown/whatever else - next_phase_timer = addtimer(CALLBACK(src, .proc/check_trial, FALSE),judgement_lynch_period,TIMER_STOPPABLE)// small pause to see the guy dead, no verbosity since we already did this + next_phase_timer = addtimer(CALLBACK(src,PROC_REF(check_trial), FALSE),judgement_lynch_period,TIMER_STOPPABLE)// small pause to see the guy dead, no verbosity since we already did this /** * Teenie helper proc to move players back to their home. @@ -423,7 +423,7 @@ phase = MAFIA_PHASE_NIGHT send_message("Night [turn] started! Lockdown will end in 45 seconds.") SEND_SIGNAL(src,COMSIG_MAFIA_SUNDOWN) - next_phase_timer = addtimer(CALLBACK(src, .proc/resolve_night),night_phase_period,TIMER_STOPPABLE) + next_phase_timer = addtimer(CALLBACK(src,PROC_REF(resolve_night),night_phase_period,TIMER_STOPPABLE)) SStgui.update_uis(src) /** diff --git a/code/modules/mafia/roles.dm b/code/modules/mafia/roles.dm index 5fe9934d8ca..5591bc4d046 100644 --- a/code/modules/mafia/roles.dm +++ b/code/modules/mafia/roles.dm @@ -336,7 +336,7 @@ /datum/mafia_role/lawyer/proc/try_to_roleblock(datum/mafia_controller/game) if(current_target) - RegisterSignal(current_target,COMSIG_MAFIA_CAN_PERFORM_ACTION, .proc/prevent_action) + RegisterSignal(current_target,COMSIG_MAFIA_CAN_PERFORM_ACTION,PROC_REF(prevent_action)) /datum/mafia_role/lawyer/proc/release(datum/mafia_controller/game) . = ..() diff --git a/code/modules/mining/aux_base.dm b/code/modules/mining/aux_base.dm index 204f423ced5..d163f84bbf3 100644 --- a/code/modules/mining/aux_base.dm +++ b/code/modules/mining/aux_base.dm @@ -284,7 +284,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) diff --git a/code/modules/mining/equipment/kinetic_crusher.dm b/code/modules/mining/equipment/kinetic_crusher.dm index af1f014aa48..46b3aa0407e 100644 --- a/code/modules/mining/equipment/kinetic_crusher.dm +++ b/code/modules/mining/equipment/kinetic_crusher.dm @@ -40,8 +40,8 @@ /obj/item/kinetic_crusher/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) /obj/item/kinetic_crusher/ComponentInitialize() . = ..() @@ -120,7 +120,7 @@ D.fire() charged = FALSE update_icon() - 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 @@ -419,7 +419,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) @@ -483,7 +483,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 diff --git a/code/modules/mining/equipment/regenerative_core.dm b/code/modules/mining/equipment/regenerative_core.dm index aa30284fff9..55f6ffa43a2 100644 --- a/code/modules/mining/equipment/regenerative_core.dm +++ b/code/modules/mining/equipment/regenerative_core.dm @@ -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) diff --git a/code/modules/mining/equipment/resonator.dm b/code/modules/mining/equipment/resonator.dm index 304c774056f..fff6645b332 100644 --- a/code/modules/mining/equipment/resonator.dm +++ b/code/modules/mining/equipment/resonator.dm @@ -72,7 +72,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) diff --git a/code/modules/mining/equipment/wormhole_jaunter.dm b/code/modules/mining/equipment/wormhole_jaunter.dm index 013e72da44b..c1a5ed42237 100644 --- a/code/modules/mining/equipment/wormhole_jaunter.dm +++ b/code/modules/mining/equipment/wormhole_jaunter.dm @@ -21,7 +21,7 @@ /obj/item/wormhole_jaunter/equipped(mob/user, slot) . = ..() if(slot == SLOT_BELT) - RegisterSignal(user, COMSIG_MOVABLE_CHASM_DROP, .proc/chasm_react) + RegisterSignal(user, COMSIG_MOVABLE_CHASM_DROP,PROC_REF(chasm_react)) /obj/item/wormhole_jaunter/dropped(mob/user) . = ..() diff --git a/code/modules/mining/lavaland/ash_flora.dm b/code/modules/mining/lavaland/ash_flora.dm index e6c613567b6..8ba8b03b737 100644 --- a/code/modules/mining/lavaland/ash_flora.dm +++ b/code/modules/mining/lavaland/ash_flora.dm @@ -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() diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index 9782377f714..015af91c9c2 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -613,7 +613,7 @@ can_destroy = FALSE - addtimer(CALLBACK(src, .proc/unvanish, user), 10 SECONDS) + addtimer(CALLBACK(src,PROC_REF(unvanish), user), 10 SECONDS) /obj/effect/immortality_talisman/proc/unvanish(mob/user) user.status_flags &= ~GODMODE @@ -1054,7 +1054,7 @@ /obj/item/lava_staff/afterattack(atom/target, mob/user, proximity_flag, click_parameters) . = ..() - INVOKE_ASYNC(src, .proc/attempt_lava, target, user, proximity_flag, click_parameters) + INVOKE_ASYNC(src,PROC_REF(attempt_lava), target, user, proximity_flag, click_parameters) /obj/item/lava_staff/proc/attempt_lava(atom/target, mob/user, proximity_flag, click_parameters) if(timer > world.time) @@ -1244,11 +1244,11 @@ calculate_anger_mod(user) timer = world.time + CLICK_CD_MELEE //by default, melee attacks only cause melee blasts, and have an accordingly short cooldown if(proximity_flag) - INVOKE_ASYNC(src, .proc/aoe_burst, T, user) + INVOKE_ASYNC(src,PROC_REF(aoe_burst), T, user) log_combat(user, target, "fired 3x3 blast at", src) else if(ismineralturf(target) && get_dist(user, target) < 6) //target is minerals, we can hit it(even if we can't see it) - INVOKE_ASYNC(src, .proc/cardinal_blasts, T, user) + INVOKE_ASYNC(src,PROC_REF(cardinal_blasts), T, user) timer = world.time + cooldown_time else if(target in view(5, get_turf(user))) //if the target is in view, hit it timer = world.time + cooldown_time @@ -1259,12 +1259,12 @@ C.monster_damage_boost = FALSE log_combat(user, target, "fired a chaser at", src) else - INVOKE_ASYNC(src, .proc/cardinal_blasts, T, user) //otherwise, just do cardinal blast + INVOKE_ASYNC(src,PROC_REF(cardinal_blasts), T, user) //otherwise, just do cardinal blast log_combat(user, target, "fired cardinal blast at", src) else to_chat(user, span_warning("That target is out of range!") ) timer = world.time - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) /obj/item/hierophant_club/proc/calculate_anger_mod(mob/user) //we get stronger as the user loses health chaser_cooldown = initial(chaser_cooldown) @@ -1302,7 +1302,7 @@ user.visible_message(span_hierophant_warning("[user] starts fiddling with [src]'s pommel..."), \ span_notice("You start detaching the hierophant beacon...")) timer = world.time + 51 - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) if(do_after(user, 50, target = user) && !beacon) var/turf/T = get_turf(user) playsound(T,'sound/magic/blind.ogg', 200, 1, -4) @@ -1314,7 +1314,7 @@ You can remove the beacon to place it again by striking it with the club.") else timer = world.time - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) else to_chat(user, span_warning("You need to be on solid ground to detach the beacon!")) return @@ -1331,7 +1331,7 @@ user.update_action_buttons_icon() user.visible_message(span_hierophant_warning("[user] starts to glow faintly...")) timer = world.time + 50 - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) beacon.icon_state = "hierophant_tele_on" var/obj/effect/temp_visual/hierophant/telegraph/edge/TE1 = new /obj/effect/temp_visual/hierophant/telegraph/edge(user.loc) var/obj/effect/temp_visual/hierophant/telegraph/edge/TE2 = new /obj/effect/temp_visual/hierophant/telegraph/edge(beacon.loc) @@ -1343,7 +1343,7 @@ to_chat(user, span_warning("The beacon is blocked by something, preventing teleportation!")) user.update_action_buttons_icon() timer = world.time - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) beacon.icon_state = "hierophant_tele_off" return new /obj/effect/temp_visual/hierophant/telegraph(T, user) @@ -1355,7 +1355,7 @@ if(user) user.update_action_buttons_icon() timer = world.time - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) if(beacon) beacon.icon_state = "hierophant_tele_off" return @@ -1364,7 +1364,7 @@ to_chat(user, span_warning("The beacon is blocked by something, preventing teleportation!")) user.update_action_buttons_icon() timer = world.time - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) beacon.icon_state = "hierophant_tele_off" return user.log_message("teleported self from [AREACOORD(source)] to [beacon]") @@ -1377,7 +1377,7 @@ var/obj/effect/temp_visual/hierophant/blast/B = new /obj/effect/temp_visual/hierophant/blast(t, user, TRUE) //but absolutely will hurt enemies B.damage = 30 for(var/mob/living/L in range(1, source)) - INVOKE_ASYNC(src, .proc/teleport_mob, source, L, T, user) //regardless, take all mobs near us along + INVOKE_ASYNC(src,PROC_REF(teleport_mob), source, L, T, user) //regardless, take all mobs near us along sleep(6) //at this point the blasts detonate if(beacon) beacon.icon_state = "hierophant_tele_off" @@ -1385,7 +1385,7 @@ qdel(TE1) qdel(TE2) timer = world.time - INVOKE_ASYNC(src, .proc/prepare_icon_update) + INVOKE_ASYNC(src,PROC_REF(prepare_icon_update)) if(beacon) beacon.icon_state = "hierophant_tele_off" teleporting = FALSE @@ -1424,7 +1424,7 @@ sleep(2) new /obj/effect/temp_visual/hierophant/blast(T, user, friendly_fire_check) for(var/d in GLOB.cardinals) - INVOKE_ASYNC(src, .proc/blast_wall, T, d, user) + INVOKE_ASYNC(src,PROC_REF(blast_wall), T, d, user) /obj/item/hierophant_club/proc/blast_wall(turf/T, dir, mob/living/user) //make a wall of blasts blast_range tiles long if(!T) diff --git a/code/modules/mining/machine_processing.dm b/code/modules/mining/machine_processing.dm index 5c55a21164d..65c678e682d 100644 --- a/code/modules/mining/machine_processing.dm +++ b/code/modules/mining/machine_processing.dm @@ -23,7 +23,7 @@ /obj/machinery/mineral/proc/register_input_turf() input_turf = get_step(src, input_dir) if(input_turf) // make sure there is actually a turf - RegisterSignal(input_turf, list(COMSIG_ATOM_CREATED, COMSIG_ATOM_ENTERED), .proc/pickup_item) + RegisterSignal(input_turf, list(COMSIG_ATOM_CREATED, COMSIG_ATOM_ENTERED),PROC_REF(pickup_item)) /// Unregisters signals that are registered the machine's input turf, if it has one. /obj/machinery/mineral/proc/unregister_input_turf() diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm index e92e2c52202..26822b0a4bd 100644 --- a/code/modules/mining/ores_coins.dm +++ b/code/modules/mining/ores_coins.dm @@ -343,7 +343,7 @@ GLOBAL_LIST_INIT(sand_recipes, list(\ else user.visible_message(span_warning("[user] strikes \the [src], causing a chain reaction!"), span_danger("You strike \the [src], causing a chain reaction.")) 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/gibtonite/proc/detonate(notify_admins) if(primed) diff --git a/code/modules/mob/living/brain/posibrain.dm b/code/modules/mob/living/brain/posibrain.dm index 9186822a452..3d7dce13023 100644 --- a/code/modules/mob/living/brain/posibrain.dm +++ b/code/modules/mob/living/brain/posibrain.dm @@ -83,7 +83,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 diff --git a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm index 241b2a3d00f..1da03160dc0 100644 --- a/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm +++ b/code/modules/mob/living/carbon/alien/humanoid/caste/hunter.dm @@ -50,7 +50,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 diff --git a/code/modules/mob/living/carbon/alien/organs.dm b/code/modules/mob/living/carbon/alien/organs.dm index 8a14d9f3886..3ce94c06c87 100644 --- a/code/modules/mob/living/carbon/alien/organs.dm +++ b/code/modules/mob/living/carbon/alien/organs.dm @@ -142,7 +142,7 @@ recent_queen_death = 1 owner.throw_alert("alien_noqueen", /atom/movable/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() diff --git a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm index 3dc0b4fd7f8..82878ad7ffc 100644 --- a/code/modules/mob/living/carbon/alien/special/alien_embryo.dm +++ b/code/modules/mob/living/carbon/alien/special/alien_embryo.dm @@ -51,7 +51,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) diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index e73943bff76..227226d6656 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -34,7 +34,7 @@ /obj/item/clothing/mask/facehugger/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -118,7 +118,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") @@ -190,7 +190,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) @@ -199,7 +199,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 @@ -242,7 +242,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) diff --git a/code/modules/mob/living/carbon/carbon_defense.dm b/code/modules/mob/living/carbon/carbon_defense.dm index 2224268db64..7db2b361414 100644 --- a/code/modules/mob/living/carbon/carbon_defense.dm +++ b/code/modules/mob/living/carbon/carbon_defense.dm @@ -259,7 +259,7 @@ jitteriness += 1000 do_jitter_animation(jitteriness) stuttering += 2 - addtimer(CALLBACK(src, .proc/secondary_shock, should_stun), 20) + addtimer(CALLBACK(src,PROC_REF(secondary_shock), should_stun), 20) return shock_damage ///Called slightly after electrocute act to reduce jittering and apply a secondary stun. diff --git a/code/modules/mob/living/carbon/death.dm b/code/modules/mob/living/carbon/death.dm index da8cee906e6..32509a6df13 100644 --- a/code/modules/mob/living/carbon/death.dm +++ b/code/modules/mob/living/carbon/death.dm @@ -10,7 +10,7 @@ if(ckey) SSsecondwind.i_died(ckey) if(!gibbed) - INVOKE_ASYNC(src, .proc/emote, "deathgasp") + INVOKE_ASYNC(src,PROC_REF(emote), "deathgasp") SWplz = new SWplz.Grant(src) diff --git a/code/modules/mob/living/carbon/emote.dm b/code/modules/mob/living/carbon/emote.dm index d84123b60f2..dddb7389cb4 100644 --- a/code/modules/mob/living/carbon/emote.dm +++ b/code/modules/mob/living/carbon/emote.dm @@ -404,7 +404,7 @@ hasPickedUp = TRUE damageMult = rock.throwforce if(!timerEnabled) - addtimer(CALLBACK(src, .proc/reset_damage), 2.5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(reset_damage)), 2.5 SECONDS) timerEnabled = TRUE COOLDOWN_START(src, rock_cooldown, 2.5 SECONDS) to_chat(user, span_notice("You find a nice hefty throwing rock!")) @@ -444,7 +444,7 @@ hasPickedUp = TRUE damageMult = brick.throwforce if(!timerEnabled) - addtimer(CALLBACK(src, .proc/reset_damage), 2.5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(reset_damage)), 2.5 SECONDS) timerEnabled = TRUE COOLDOWN_START(src, brick_cooldown, 2.5 SECONDS) to_chat(user, span_notice("You find a nice weighty brick!")) diff --git a/code/modules/mob/living/carbon/human/emote.dm b/code/modules/mob/living/carbon/human/emote.dm index 0c471bfdeeb..0222a9b0cc5 100644 --- a/code/modules/mob/living/carbon/human/emote.dm +++ b/code/modules/mob/living/carbon/human/emote.dm @@ -239,7 +239,7 @@ //rock paper scissors emote handling /mob/living/carbon/human/proc/beginRockPaperScissors(chosen_move) GLOB.rockpaperscissors_players[src] = list(chosen_move, ROCKPAPERSCISSORS_NOT_DECIDED) - do_after_advanced(src, ROCKPAPERSCISSORS_TIME_LIMIT, src, DO_AFTER_REQUIRES_USER_ON_TURF|DO_AFTER_NO_COEFFICIENT|DO_AFTER_NO_PROGRESSBAR|DO_AFTER_DISALLOW_MOVING_ABSOLUTE_USER, CALLBACK(src, .proc/rockpaperscissors_tick)) + do_after_advanced(src, ROCKPAPERSCISSORS_TIME_LIMIT, src, DO_AFTER_REQUIRES_USER_ON_TURF|DO_AFTER_NO_COEFFICIENT|DO_AFTER_NO_PROGRESSBAR|DO_AFTER_DISALLOW_MOVING_ABSOLUTE_USER, CALLBACK(src,PROC_REF(rockpaperscissors_tick))) var/new_entry = GLOB.rockpaperscissors_players[src] if(new_entry[2] == ROCKPAPERSCISSORS_NOT_DECIDED) to_chat(src, "You put your hand back down.") diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index b9f195084b9..86338438eca 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -60,7 +60,7 @@ GLOBAL_VAR_INIT(crotch_call_cooldown, 0) AddElement(/datum/element/flavor_text/carbon, _name = "Flavor Text", _save_key = "flavor_text") AddElement(/datum/element/flavor_text, "", "Set Pose/Leave OOC Message", "This should be used only for things pertaining to the current round!") AddElement(/datum/element/flavor_text, _name = "OOC Notes", _addendum = "Put information on ERP/lewd-related preferences here. THIS SHOULD NOT CONTAIN REGULAR FLAVORTEXT!!", _always_show = TRUE, _save_key = "ooc_notes", _examine_no_preview = TRUE) - RegisterSignal(src, COMSIG_HUMAN_UPDATE_GENITALS, .proc/signal_update_genitals) + RegisterSignal(src, COMSIG_HUMAN_UPDATE_GENITALS,PROC_REF(signal_update_genitals)) /mob/living/carbon/human/Destroy() QDEL_NULL(physiology) @@ -1059,7 +1059,7 @@ GLOBAL_VAR_INIT(crotch_call_cooldown, 0) 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) diff --git a/code/modules/mob/living/carbon/human/species.dm b/code/modules/mob/living/carbon/human/species.dm index 52bcd65a6ff..88d855aca33 100644 --- a/code/modules/mob/living/carbon/human/species.dm +++ b/code/modules/mob/living/carbon/human/species.dm @@ -1422,7 +1422,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) if(radiation > RAD_MOB_HAIRLOSS) if(prob(15) && !(H.hair_style == "Bald") && (HAIR in species_traits)) to_chat(H, span_danger("Your hair starts to fall out in clumps...")) - addtimer(CALLBACK(src, .proc/go_bald, H), 50) + addtimer(CALLBACK(src,PROC_REF(go_bald), H), 50) /datum/species/proc/go_bald(mob/living/carbon/human/H) if(QDELETED(H)) //may be called from a timer @@ -1667,7 +1667,7 @@ GLOBAL_LIST_EMPTY(roundstart_race_names) // for(var/i in 1 to 3) // vol *= 0.75 // dist = round(dist*0.75) - // addtimer(CALLBACK(src, .proc/bootysmack, get_turf(target), vol, dist), time) + // addtimer(CALLBACK(src,PROC_REF(bootysmack), get_turf(target), vol, dist), time) // time += 0.5 SECONDS target.adjustStaminaLoss(25) user.visible_message( diff --git a/code/modules/mob/living/carbon/human/species_types/dullahan.dm b/code/modules/mob/living/carbon/human/species_types/dullahan.dm index d50ba698b23..0daada5a5ab 100644 --- a/code/modules/mob/living/carbon/human/species_types/dullahan.dm +++ b/code/modules/mob/living/carbon/human/species_types/dullahan.dm @@ -124,10 +124,10 @@ return INITIALIZE_HINT_QDEL owner = new_owner START_PROCESSING(SSobj, src) - RegisterSignal(owner, COMSIG_MOB_CLICKED_SHIFT_ON, .proc/examinate_check) - RegisterSignal(src, COMSIG_ATOM_HEARER_IN_VIEW, .proc/include_owner) - RegisterSignal(owner, COMSIG_LIVING_REGENERATE_LIMBS, .proc/unlist_head) - RegisterSignal(owner, COMSIG_LIVING_REVIVE, .proc/retrieve_head) + RegisterSignal(owner, COMSIG_MOB_CLICKED_SHIFT_ON,PROC_REF(examinate_check)) + RegisterSignal(src, COMSIG_ATOM_HEARER_IN_VIEW,PROC_REF(include_owner)) + RegisterSignal(owner, COMSIG_LIVING_REGENERATE_LIMBS,PROC_REF(unlist_head)) + RegisterSignal(owner, COMSIG_LIVING_REVIVE,PROC_REF(retrieve_head)) /obj/item/dullahan_relay/proc/examinate_check(mob/source, atom/target) if(source.client.eye == src) diff --git a/code/modules/mob/living/carbon/human/species_types/ethereal.dm b/code/modules/mob/living/carbon/human/species_types/ethereal.dm index 4db0573c1bd..dc15582fd27 100644 --- a/code/modules/mob/living/carbon/human/species_types/ethereal.dm +++ b/code/modules/mob/living/carbon/human/species_types/ethereal.dm @@ -57,8 +57,8 @@ g1 = GETGREENPART(default_color) b1 = GETBLUEPART(default_color) spec_updatehealth(H) - RegisterSignal(C, COMSIG_ATOM_EMAG_ACT, .proc/on_emag_act) - RegisterSignal(C, COMSIG_ATOM_EMP_ACT, .proc/on_emp_act) + RegisterSignal(C, COMSIG_ATOM_EMAG_ACT,PROC_REF(on_emag_act)) + RegisterSignal(C, COMSIG_ATOM_EMP_ACT,PROC_REF(on_emp_act)) ethereal_light = H.mob_light() /datum/species/ethereal/on_species_loss(mob/living/carbon/human/C, datum/species/new_species, pref_load) @@ -95,7 +95,7 @@ EMPeffect = TRUE spec_updatehealth(H) to_chat(H, span_notice("You feel the light of your body leave you.")) - addtimer(CALLBACK(src, .proc/stop_emp, H), (severity/5) SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE) //lights out + addtimer(CALLBACK(src,PROC_REF(stop_emp), H), (severity/5) SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE) //lights out /datum/species/ethereal/proc/on_emag_act(mob/living/carbon/human/H, mob/user) if(emageffect) @@ -105,7 +105,7 @@ to_chat(user, span_notice("You tap [H] on the back with your card.")) H.visible_message(span_danger("[H] starts flickering in an array of colors!")) handle_emag(H) - addtimer(CALLBACK(src, .proc/stop_emag, H), 30 SECONDS) //Disco mode for 30 seconds! This doesn't affect the ethereal at all besides either annoying some players, or making someone look badass. + addtimer(CALLBACK(src,PROC_REF(stop_emag), H), 30 SECONDS) //Disco mode for 30 seconds! This doesn't affect the ethereal at all besides either annoying some players, or making someone look badass. /datum/species/ethereal/spec_life(mob/living/carbon/human/H) @@ -124,7 +124,7 @@ return current_color = pick(ETHEREAL_COLORS) spec_updatehealth(H) - addtimer(CALLBACK(src, .proc/handle_emag, H), 5) //Call ourselves every 0.5 seconds to change color + addtimer(CALLBACK(src,PROC_REF(handle_emag), H), 5) //Call ourselves every 0.5 seconds to change color /datum/species/ethereal/proc/stop_emag(mob/living/carbon/human/H) emageffect = FALSE 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 84e7cb8b83b..52aefea3410 100644 --- a/code/modules/mob/living/carbon/human/species_types/golems.dm +++ b/code/modules/mob/living/carbon/human/species_types/golems.dm @@ -469,7 +469,7 @@ var/mob/living/carbon/human/H = owner H.visible_message(span_warning("[H] starts vibrating!"), span_danger("You start charging your bluespace core...")) playsound(get_turf(H), 'sound/weapons/flash.ogg', 25, 1) - addtimer(CALLBACK(src, .proc/teleport, H), 15) + addtimer(CALLBACK(src,PROC_REF(teleport), H), 15) /datum/action/innate/unstable_teleport/proc/teleport(mob/living/carbon/human/H) H.visible_message(span_warning("[H] disappears in a shower of sparks!"), span_danger("You teleport!")) @@ -558,7 +558,7 @@ /datum/species/golem/clockwork/on_species_gain(mob/living/carbon/human/H) . = ..() H.faction |= "ratvar" - RegisterSignal(H, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(H, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/species/golem/clockwork/on_species_loss(mob/living/carbon/human/H) if(!is_servant_of_ratvar(H)) @@ -666,7 +666,7 @@ H.forceMove(src) cloth_golem = H to_chat(cloth_golem, span_notice("You start gathering your life energy, preparing to rise again...")) - addtimer(CALLBACK(src, .proc/revive), revive_time) + addtimer(CALLBACK(src,PROC_REF(revive)), revive_time) else return INITIALIZE_HINT_QDEL diff --git a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm index b07ed878b1d..4b1e1309c95 100644 --- a/code/modules/mob/living/carbon/human/species_types/jellypeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/jellypeople.dm @@ -905,8 +905,8 @@ linked_mobs.Add(M) if(!selflink) to_chat(M, span_notice("You are now connected to [slimelink_owner.real_name]'s Slime Link.")) - RegisterSignal(M, COMSIG_MOB_DEATH , .proc/unlink_mob) - RegisterSignal(M, COMSIG_PARENT_QDELETING, .proc/unlink_mob) + RegisterSignal(M, COMSIG_MOB_DEATH ,PROC_REF(unlink_mob)) + RegisterSignal(M, COMSIG_PARENT_QDELETING,PROC_REF(unlink_mob)) var/datum/action/innate/linked_speech/action = new(src) linked_actions.Add(action) action.Grant(M) diff --git a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm index f91c3518a39..7312454035d 100644 --- a/code/modules/mob/living/carbon/human/species_types/mushpeople.dm +++ b/code/modules/mob/living/carbon/human/species_types/mushpeople.dm @@ -38,7 +38,7 @@ H.faction |= "mushroom" mush = new() mush.teach(H, TRUE) - RegisterSignal(C, COMSIG_MOB_ON_NEW_MIND, .proc/on_new_mind) + RegisterSignal(C, COMSIG_MOB_ON_NEW_MIND,PROC_REF(on_new_mind)) /datum/species/mush/proc/on_new_mind(mob/owner) mush.teach(owner, TRUE) //make_temporary TRUE as it shouldn't carry over to other mobs on mind transfer_to. diff --git a/code/modules/mob/living/carbon/human/species_types/synths.dm b/code/modules/mob/living/carbon/human/species_types/synths.dm index 2fd92901d6f..b0b791291de 100644 --- a/code/modules/mob/living/carbon/human/species_types/synths.dm +++ b/code/modules/mob/living/carbon/human/species_types/synths.dm @@ -31,7 +31,7 @@ /datum/species/synth/on_species_gain(mob/living/carbon/human/H, datum/species/old_species) ..() assume_disguise(old_species, H) - RegisterSignal(H, COMSIG_MOB_SAY, .proc/handle_speech) + RegisterSignal(H, COMSIG_MOB_SAY,PROC_REF(handle_speech)) /datum/species/synth/on_species_loss(mob/living/carbon/human/H) . = ..() diff --git a/code/modules/mob/living/carbon/monkey/combat.dm b/code/modules/mob/living/carbon/monkey/combat.dm index a10ff7ade63..d1684cfc00b 100644 --- a/code/modules/mob/living/carbon/monkey/combat.dm +++ b/code/modules/mob/living/carbon/monkey/combat.dm @@ -74,7 +74,7 @@ if(I.force >= best_force) best_force = I.force else - addtimer(CALLBACK(src, .proc/pickup_and_wear, I), 5) + addtimer(CALLBACK(src,PROC_REF(pickup_and_wear), I), 5) return TRUE @@ -117,7 +117,7 @@ pickupTarget = null pickupTimer = 0 else - INVOKE_ASYNC(src, .proc/walk2derpless, pickupTarget.loc) + INVOKE_ASYNC(src,PROC_REF(walk2derpless), pickupTarget.loc) if(Adjacent(pickupTarget) || Adjacent(pickupTarget.loc)) // next to target drop_all_held_items() // who cares about these items, i want that one! if(isturf(pickupTarget.loc)) // on floor @@ -131,7 +131,7 @@ if(!pickpocketing) pickpocketing = TRUE M.visible_message("[src] starts trying to take [pickupTarget] from [M]", "[src] tries to take [pickupTarget]!") - INVOKE_ASYNC(src, .proc/pickpocket, M) + INVOKE_ASYNC(src,PROC_REF(pickpocket), M) return TRUE switch(mode) @@ -167,7 +167,7 @@ return TRUE if(target != null) - INVOKE_ASYNC(src, .proc/walk2derpless, target) + INVOKE_ASYNC(src,PROC_REF(walk2derpless), target) // pickup any nearby weapon if(!pickupTarget && prob(MONKEY_WEAPON_PROB)) @@ -252,7 +252,7 @@ if(target.pulledby != src && !istype(target.pulledby, /mob/living/carbon/monkey/)) - INVOKE_ASYNC(src, .proc/walk2derpless, target.loc) + INVOKE_ASYNC(src,PROC_REF(walk2derpless), target.loc) if(Adjacent(target) && isturf(target.loc)) a_intent = INTENT_GRAB @@ -265,11 +265,11 @@ frustration = 0 else if(!disposing_body) - INVOKE_ASYNC(src, .proc/walk2derpless, bodyDisposal.loc) + INVOKE_ASYNC(src,PROC_REF(walk2derpless), bodyDisposal.loc) if(Adjacent(bodyDisposal)) disposing_body = TRUE - addtimer(CALLBACK(src, .proc/stuff_mob_in), 5) + addtimer(CALLBACK(src,PROC_REF(stuff_mob_in)), 5) else var/turf/olddist = get_dist(src, bodyDisposal) @@ -410,7 +410,7 @@ var/mob/living/carbon/monkey/M = AM if(!istype(M) || !M) return - INVOKE_ASYNC(src, .proc/knockOver, M) + INVOKE_ASYNC(src,PROC_REF(knockOver), M) return /mob/living/carbon/monkey/proc/monkeyDrop(obj/item/A) diff --git a/code/modules/mob/living/death.dm b/code/modules/mob/living/death.dm index e96aa2e212c..7dc19083fce 100644 --- a/code/modules/mob/living/death.dm +++ b/code/modules/mob/living/death.dm @@ -84,7 +84,7 @@ med_hud_set_status() clear_typing_indicator() if(!gibbed && !QDELETED(src)) - addtimer(CALLBACK(src, .proc/med_hud_set_status), (DEFIB_TIME_LIMIT * 10) + 1) + addtimer(CALLBACK(src,PROC_REF(med_hud_set_status)), (DEFIB_TIME_LIMIT * 10) + 1) stop_pulling() var/signal = SEND_SIGNAL(src, COMSIG_MOB_DEATH, gibbed) diff --git a/code/modules/mob/living/init_signals.dm b/code/modules/mob/living/init_signals.dm index ec1e5b4241e..04aa2c76090 100644 --- a/code/modules/mob/living/init_signals.dm +++ b/code/modules/mob/living/init_signals.dm @@ -1,7 +1,7 @@ /// Called on [/mob/living/Initialize()], for the mob to register to relevant signals. /mob/living/proc/register_init_signals() - RegisterSignal(src, SIGNAL_ADDTRAIT(TRAIT_KNOCKEDOUT), .proc/on_knockedout_trait_gain) - RegisterSignal(src, SIGNAL_REMOVETRAIT(TRAIT_KNOCKEDOUT), .proc/on_knockedout_trait_loss) + RegisterSignal(src, SIGNAL_ADDTRAIT(TRAIT_KNOCKEDOUT),PROC_REF(on_knockedout_trait_gain)) + RegisterSignal(src, SIGNAL_REMOVETRAIT(TRAIT_KNOCKEDOUT),PROC_REF(on_knockedout_trait_loss)) /// Called when [TRAIT_KNOCKEDOUT] is added to the mob. diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm index 701144f6135..d165a2d16be 100644 --- a/code/modules/mob/living/life.dm +++ b/code/modules/mob/living/life.dm @@ -211,7 +211,7 @@ /mob/living/proc/gravity_animate() if(!get_filter("gravity")) add_filter("gravity",1, GRAVITY_MOTION_BLUR) - INVOKE_ASYNC(src, .proc/gravity_pulse_animation) + INVOKE_ASYNC(src,PROC_REF(gravity_pulse_animation)) /mob/living/proc/gravity_pulse_animation() animate(get_filter("gravity"), y = 1, time = 10) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index 439910a4a8c..c917816cbc2 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1,7 +1,7 @@ /mob/living/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -483,12 +483,12 @@ return else src.reset_perspective(T) - RegisterSignal(src, COMSIG_MOB_CLIENT_CHANGE_VIEW, .proc/stop_looking_up) //no binos/scops - RegisterSignal(src, COMSIG_MOVABLE_MOVED, .proc/stop_looking_up) - RegisterSignal(src, COMSIG_LIVING_STATUS_KNOCKDOWN, .proc/stop_looking_up) - RegisterSignal(src, COMSIG_LIVING_STATUS_PARALYZE, .proc/stop_looking_up) - RegisterSignal(src, COMSIG_LIVING_STATUS_UNCONSCIOUS, .proc/stop_looking_up) - RegisterSignal(src, COMSIG_LIVING_STATUS_SLEEP, .proc/stop_looking_up) + RegisterSignal(src, COMSIG_MOB_CLIENT_CHANGE_VIEW,PROC_REF(stop_looking_up)) //no binos/scops + RegisterSignal(src, COMSIG_MOVABLE_MOVED,PROC_REF(stop_looking_up)) + RegisterSignal(src, COMSIG_LIVING_STATUS_KNOCKDOWN,PROC_REF(stop_looking_up)) + RegisterSignal(src, COMSIG_LIVING_STATUS_PARALYZE,PROC_REF(stop_looking_up)) + RegisterSignal(src, COMSIG_LIVING_STATUS_UNCONSCIOUS,PROC_REF(stop_looking_up)) + RegisterSignal(src, COMSIG_LIVING_STATUS_SLEEP,PROC_REF(stop_looking_up)) /mob/living/proc/stop_looking_up() reset_perspective(null) diff --git a/code/modules/mob/living/living_active_block.dm b/code/modules/mob/living/living_active_block.dm index a5a1fb41def..5050cbecd7e 100644 --- a/code/modules/mob/living/living_active_block.dm +++ b/code/modules/mob/living/living_active_block.dm @@ -103,7 +103,7 @@ var/delay = data.block_start_delay combat_flags |= COMBAT_FLAG_ACTIVE_BLOCK_STARTING animate(src, pixel_x = get_standard_pixel_x_offset(), pixel_y = get_standard_pixel_y_offset(), time = delay, FALSE, SINE_EASING | EASE_IN) - if(!do_after_advanced(src, delay, src, DO_AFTER_REQUIRES_USER_ON_TURF|DO_AFTER_NO_COEFFICIENT, CALLBACK(src, .proc/continue_starting_active_block), MOBILITY_USE, null, null, I)) + if(!do_after_advanced(src, delay, src, DO_AFTER_REQUIRES_USER_ON_TURF|DO_AFTER_NO_COEFFICIENT, CALLBACK(src,PROC_REF(continue_starting_active_block)), MOBILITY_USE, null, null, I)) to_chat(src, span_warning("You fail to raise [I].")) combat_flags &= ~(COMBAT_FLAG_ACTIVE_BLOCK_STARTING) animate(src, pixel_x = get_standard_pixel_x_offset(), pixel_y = get_standard_pixel_y_offset(), time = 2.5, FALSE, SINE_EASING | EASE_IN, ANIMATION_END_NOW) diff --git a/code/modules/mob/living/living_active_parry.dm b/code/modules/mob/living/living_active_parry.dm index e0b06f4e4b2..21a954f4820 100644 --- a/code/modules/mob/living/living_active_parry.dm +++ b/code/modules/mob/living/living_active_parry.dm @@ -79,7 +79,7 @@ adjustStaminaLossBuffered(data.parry_stamina_cost) parry_start_time = world.time successful_parries = list() - addtimer(CALLBACK(src, .proc/end_parry_sequence), full_parry_duration) + addtimer(CALLBACK(src,PROC_REF(end_parry_sequence)), full_parry_duration) if(data.parry_flags & PARRY_LOCK_ATTACKING) ADD_TRAIT(src, TRAIT_MOBILITY_NOUSE, ACTIVE_PARRY_TRAIT) if(data.parry_flags & PARRY_LOCK_SPRINTING) @@ -340,7 +340,7 @@ if(owner) attach_to(owner) if(autorun) - INVOKE_ASYNC(src, .proc/run_animation, windup, active, spindown) + INVOKE_ASYNC(src,PROC_REF(run_animation), windup, active, spindown) /obj/effect/abstract/parry/main/Destroy() detach_from(owner) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 0523c92a4a9..5f597decb8a 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -568,7 +568,7 @@ /mob/living/proc/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /atom/movable/screen/fullscreen/flash) if(get_eye_protection() < intensity && (override_blindness_check || !(HAS_TRAIT(src, TRAIT_BLIND)))) overlay_fullscreen("flash", type) - addtimer(CALLBACK(src, .proc/clear_fullscreen, "flash", 25), 25) + addtimer(CALLBACK(src,PROC_REF(clear_fullscreen), "flash", 25), 25) return TRUE return FALSE diff --git a/code/modules/mob/living/living_mobility.dm b/code/modules/mob/living/living_mobility.dm index 354e6bd9b6a..190661a37ae 100644 --- a/code/modules/mob/living/living_mobility.dm +++ b/code/modules/mob/living/living_mobility.dm @@ -171,7 +171,7 @@ //Handle citadel autoresist if(CHECK_MOBILITY(src, MOBILITY_MOVE) && !(combat_flags & COMBAT_FLAG_INTENTIONALLY_RESTING) && canstand_involuntary && iscarbon(src) && client?.prefs?.autostand)//CIT CHANGE - adds autostanding as a preference - addtimer(CALLBACK(src, .proc/resist_a_rest, TRUE), 0) //CIT CHANGE - ditto + addtimer(CALLBACK(src,PROC_REF(resist_a_rest), TRUE), 0) //CIT CHANGE - ditto // Movespeed mods based on arms/legs quantity if(!get_leg_ignore()) diff --git a/code/modules/mob/living/living_sprint.dm b/code/modules/mob/living/living_sprint.dm index 32efc91a005..9105e68f914 100644 --- a/code/modules/mob/living/living_sprint.dm +++ b/code/modules/mob/living/living_sprint.dm @@ -1,6 +1,6 @@ /mob/living/ComponentInitialize() . = ..() - RegisterSignal(src, list(SIGNAL_ADDTRAIT(TRAIT_SPRINT_LOCKED), SIGNAL_REMOVETRAIT(TRAIT_SPRINT_LOCKED)), .proc/update_sprint_lock) + RegisterSignal(src, list(SIGNAL_ADDTRAIT(TRAIT_SPRINT_LOCKED), SIGNAL_REMOVETRAIT(TRAIT_SPRINT_LOCKED)),PROC_REF(update_sprint_lock)) /mob/living/proc/update_sprint_icon() var/atom/movable/screen/sprintbutton/S = locate() in hud_used?.static_inventory diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 1d65712825a..c661252ca76 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -131,7 +131,7 @@ create_eye() if(client) - INVOKE_ASYNC(src, .proc/apply_pref_name,"ai",client) + INVOKE_ASYNC(src,PROC_REF(apply_pref_name,"ai",client)) set_core_display_icon() diff --git a/code/modules/mob/living/silicon/ai/death.dm b/code/modules/mob/living/silicon/ai/death.dm index 29543a792f8..0c56455c43a 100644 --- a/code/modules/mob/living/silicon/ai/death.dm +++ b/code/modules/mob/living/silicon/ai/death.dm @@ -23,7 +23,7 @@ GLOB.shuttle_caller_list -= src SSshuttle.autoEvac() - INVOKE_ASYNC(src, .proc/ShutOffDoomsdayDevice) + INVOKE_ASYNC(src,PROC_REF(ShutOffDoomsdayDevice)) if(explosive) spawn(10) diff --git a/code/modules/mob/living/silicon/ai/freelook/chunk.dm b/code/modules/mob/living/silicon/ai/freelook/chunk.dm index 4591720b798..5ce8818f190 100644 --- a/code/modules/mob/living/silicon/ai/freelook/chunk.dm +++ b/code/modules/mob/living/silicon/ai/freelook/chunk.dm @@ -50,7 +50,7 @@ /datum/camerachunk/proc/hasChanged(update_now = 0) if(seenby.len || update_now) - addtimer(CALLBACK(src, .proc/update), UPDATE_BUFFER, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(update)), UPDATE_BUFFER, TIMER_UNIQUE) else changed = 1 diff --git a/code/modules/mob/living/silicon/ai/life.dm b/code/modules/mob/living/silicon/ai/life.dm index dc92eac679a..220c5c5dc51 100644 --- a/code/modules/mob/living/silicon/ai/life.dm +++ b/code/modules/mob/living/silicon/ai/life.dm @@ -173,7 +173,7 @@ blind_eyes(1) update_sight() to_chat(src, "You've lost power!") - addtimer(CALLBACK(src, .proc/start_RestorePowerRoutine), 20) + addtimer(CALLBACK(src,PROC_REF(start_RestorePowerRoutine)), 20) #undef POWER_RESTORATION_OFF #undef POWER_RESTORATION_START diff --git a/code/modules/mob/living/silicon/death.dm b/code/modules/mob/living/silicon/death.dm index 26a77a37e82..d061b5696f5 100644 --- a/code/modules/mob/living/silicon/death.dm +++ b/code/modules/mob/living/silicon/death.dm @@ -6,7 +6,7 @@ /mob/living/silicon/death(gibbed) if(!gibbed) - INVOKE_ASYNC(src, .proc/emote, "deathgasp") + INVOKE_ASYNC(src,PROC_REF(emote), "deathgasp") diag_hud_set_status() diag_hud_set_health() update_health_hud() diff --git a/code/modules/mob/living/silicon/laws.dm b/code/modules/mob/living/silicon/laws.dm index d92f4a5999c..1faab8c4476 100644 --- a/code/modules/mob/living/silicon/laws.dm +++ b/code/modules/mob/living/silicon/laws.dm @@ -9,7 +9,7 @@ throw_alert("newlaw", /atom/movable/screen/alert/newlaw) if(announce && last_lawchange_announce != world.time) to_chat(src, "Your laws have been changed.") - addtimer(CALLBACK(src, .proc/show_laws), 0) + addtimer(CALLBACK(src,PROC_REF(show_laws)), 0) last_lawchange_announce = world.time /mob/living/silicon/proc/set_law_sixsixsix(law, announce = TRUE) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index a7fe9016946..4e95fa2273f 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -316,7 +316,7 @@ deltimer(radio_short_timerid) radio_short = TRUE to_chat(src, span_danger("Your radio shorts out!")) - radio_short_timerid = addtimer(CALLBACK(src, .proc/unshort_radio), radio_short_cooldown, flags = TIMER_STOPPABLE) + radio_short_timerid = addtimer(CALLBACK(src,PROC_REF(unshort_radio)), radio_short_cooldown, flags = TIMER_STOPPABLE) /mob/living/silicon/pai/proc/unshort_radio() radio_short = FALSE diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index 613278a6c42..252ac275314 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -16,7 +16,7 @@ wires = new /datum/wires/robot(src) AddElement(/datum/element/empprotection, EMP_PROTECT_WIRES) - RegisterSignal(src, COMSIG_PROCESS_BORGCHARGER_OCCUPANT, .proc/charge) + RegisterSignal(src, COMSIG_PROCESS_BORGCHARGER_OCCUPANT,PROC_REF(charge)) robot_modules_background = new() robot_modules_background.icon_state = "block" @@ -63,7 +63,7 @@ mmi.brainmob.real_name = src.real_name mmi.brainmob.container = mmi - INVOKE_ASYNC(src, .proc/updatename) + INVOKE_ASYNC(src,PROC_REF(updatename)) equippable_hats = typecacheof(equippable_hats) @@ -334,11 +334,11 @@ /mob/living/silicon/robot/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/weldingtool) && (user.a_intent != INTENT_HARM || user == src)) - INVOKE_ASYNC(src, .proc/attempt_welder_repair, W, user) + INVOKE_ASYNC(src,PROC_REF(attempt_welder_repair), W, user) return else if(istype(W, /obj/item/stack/cable_coil) && wiresexposed) - INVOKE_ASYNC(src, .proc/attempt_cable_repair, W, user) + INVOKE_ASYNC(src,PROC_REF(attempt_cable_repair), W, user) return else if(istype(W, /obj/item/crowbar)) // crowbar means open or close the cover @@ -747,7 +747,7 @@ cell = new /obj/item/stock_parts/cell/hyper(src, 25000) radio = new /obj/item/radio/borg/syndicate(src) laws = new /datum/ai_laws/syndicate_override() - addtimer(CALLBACK(src, .proc/show_playstyle), 5) + addtimer(CALLBACK(src,PROC_REF(show_playstyle)), 5) /mob/living/silicon/robot/modules/syndicate/proc/show_playstyle() if(playstyle_string) @@ -948,7 +948,7 @@ hat_offset = module.hat_offset magpulse = module.magpulsing - INVOKE_ASYNC(src, .proc/updatename) + INVOKE_ASYNC(src,PROC_REF(updatename)) /mob/living/silicon/robot/proc/place_on_head(obj/item/new_hat) diff --git a/code/modules/mob/living/silicon/robot/robot_defense.dm b/code/modules/mob/living/silicon/robot/robot_defense.dm index 475ef2bc4f0..63a151db862 100644 --- a/code/modules/mob/living/silicon/robot/robot_defense.dm +++ b/code/modules/mob/living/silicon/robot/robot_defense.dm @@ -127,7 +127,7 @@ ResetModule() return TRUE - INVOKE_ASYNC(src, .proc/beep_boop_rogue_bot, user) + INVOKE_ASYNC(src,PROC_REF(beep_boop_rogue_bot), user) return TRUE /mob/living/silicon/robot/proc/beep_boop_rogue_bot(mob/user) diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index a7e79301dda..602a0c951a7 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -207,7 +207,7 @@ R.module = RM R.update_module_innate() RM.rebuild_modules() - INVOKE_ASYNC(RM, .proc/do_transform_animation) + INVOKE_ASYNC(RM,PROC_REF(do_transform_animation)) R.maxHealth = borghealth R.health = min(borghealth, R.health) qdel(src) @@ -334,7 +334,7 @@ "Default" = image(icon = 'icons/mob/robots.dmi', icon_state = "medical") ) med_icons = sortList(med_icons) - var/med_borg_icon = show_radial_menu(R, R , med_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/med_borg_icon = show_radial_menu(R, R , med_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) switch(med_borg_icon) if("Default") cyborg_base_icon = "medical" @@ -388,7 +388,7 @@ "Default" = image(icon = 'icons/mob/robots.dmi', icon_state = "engineer") ) engi_icons = sortList(engi_icons) - var/engi_borg_icon = show_radial_menu(R, R , engi_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/engi_borg_icon = show_radial_menu(R, R , engi_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) switch(engi_borg_icon) if("Default") cyborg_base_icon = "engineer" @@ -427,7 +427,7 @@ "Default" = image(icon = 'icons/mob/robots.dmi', icon_state = "sec"), ) sec_icons = sortList(sec_icons) - var/sec_borg_icon = show_radial_menu(R, R , sec_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/sec_borg_icon = show_radial_menu(R, R , sec_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) switch(sec_borg_icon) if("Default") cyborg_base_icon = "sec" @@ -475,7 +475,7 @@ var/static/list/peace_icons = sortList(list( "Default" = image(icon = 'icons/mob/robots.dmi', icon_state = "peace") )) - var/peace_borg_icon = show_radial_menu(R, R , peace_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/peace_borg_icon = show_radial_menu(R, R , peace_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) switch(peace_borg_icon) if("Default") cyborg_base_icon = "peace" @@ -580,7 +580,7 @@ "(Service) Can" = image(icon = 'icons/mob/robots.dmi', icon_state = "kent"), "(Service) Tophat" = image(icon = 'icons/mob/robots.dmi', icon_state = "tophat"), ) - var/service_robot_icon = show_radial_menu(R, R , service_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/service_robot_icon = show_radial_menu(R, R , service_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) switch(service_robot_icon) if("(Service) Waitress") cyborg_base_icon = "service_f" @@ -641,7 +641,7 @@ "Lavaland" = image(icon = 'icons/mob/robots.dmi', icon_state = "miner"), "Asteroid" = image(icon = 'icons/mob/robots.dmi', icon_state = "minerOLD") ) - var/mining_borg_icon = show_radial_menu(R, R , mining_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/mining_borg_icon = show_radial_menu(R, R , mining_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) switch(mining_borg_icon) if("Lavaland") cyborg_base_icon = "miner" diff --git a/code/modules/mob/living/silicon/silicon_movement.dm b/code/modules/mob/living/silicon/silicon_movement.dm index 590326eda1b..6cc0f42f88f 100644 --- a/code/modules/mob/living/silicon/silicon_movement.dm +++ b/code/modules/mob/living/silicon/silicon_movement.dm @@ -18,5 +18,5 @@ oldLoc = get_turf(oldLoc) if(!QDELETED(builtInCamera) && !updating && oldLoc != get_turf(src)) updating = TRUE - addtimer(CALLBACK(src, .proc/do_camera_update, oldLoc), SILICON_CAMERA_BUFFER) + addtimer(CALLBACK(src,PROC_REF(do_camera_update), oldLoc), SILICON_CAMERA_BUFFER) #undef SILICON_CAMERA_BUFFER diff --git a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm index 611a8815459..f84801a7f14 100644 --- a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm +++ b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm @@ -28,7 +28,7 @@ if(ismob(AM) && AM == target) visible_message("[src] flails his swords and cuts [AM]!") playsound(src,'sound/effects/beepskyspinsabre.ogg',100,TRUE,-1) - INVOKE_ASYNC(src, .proc/stun_attack, AM) + INVOKE_ASYNC(src,PROC_REF(stun_attack), AM) /mob/living/simple_animal/bot/secbot/grievous/Initialize() . = ..() @@ -107,7 +107,7 @@ if((C.name == oldtarget_name) && (world.time < last_found + 100)) continue - threatlevel = C.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threatlevel = C.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) if(!threatlevel) continue @@ -122,7 +122,7 @@ icon_state = "grievous-c" visible_message("[src] points at [C.name]!") mode = BOT_HUNT - INVOKE_ASYNC(src, .proc/handle_automated_action) + INVOKE_ASYNC(src,PROC_REF(handle_automated_action)) break else continue diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index 9b54f79cfba..753dd489070 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -559,7 +559,7 @@ Pass a positive integer as an argument to override a bot's default speed. turn_on() //Saves the AI the hassle of having to activate a bot manually. access_card = all_access //Give the bot all-access while under the AI's command. if(client) - reset_access_timer_id = addtimer(CALLBACK (src, .proc/bot_reset), 600, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_STOPPABLE) //if the bot is player controlled, they get the extra access for a limited time + reset_access_timer_id = addtimer(CALLBACK (src,PROC_REF(bot_reset)), 600, TIMER_UNIQUE|TIMER_OVERRIDE|TIMER_STOPPABLE) //if the bot is player controlled, they get the extra access for a limited time to_chat(src, span_notice("Priority waypoint set by [icon2html(calling_ai, src)] [caller]. Proceed to [end_area].
[path.len-1] meters to destination. You have been granted additional door access for 60 seconds.")) if(message) to_chat(calling_ai, span_notice("[icon2html(src, calling_ai)] [name] called to [end_area]. [path.len-1] meters to destination.")) diff --git a/code/modules/mob/living/simple_animal/bot/ed209bot.dm b/code/modules/mob/living/simple_animal/bot/ed209bot.dm index c4e736c8609..828f6fed8cf 100644 --- a/code/modules/mob/living/simple_animal/bot/ed209bot.dm +++ b/code/modules/mob/living/simple_animal/bot/ed209bot.dm @@ -171,7 +171,7 @@ Auto Patrol[]"}, /mob/living/simple_animal/bot/ed209/proc/retaliate(mob/living/carbon/human/H) var/judgement_criteria = judgement_criteria() - threatlevel = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threatlevel = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) threatlevel += 6 if(threatlevel >= 4) target = H @@ -223,7 +223,7 @@ Auto Patrol[]"}, var/threatlevel = 0 if((C.stat) || (C.lying)) continue - threatlevel = C.assess_threat(judgement_criteria, lasercolor, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threatlevel = C.assess_threat(judgement_criteria, lasercolor, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) //speak(C.real_name + text(": threat: []", threatlevel)) if(threatlevel < 4 ) continue @@ -325,13 +325,13 @@ Auto Patrol[]"}, target = null last_found = world.time frustration = 0 - INVOKE_ASYNC(src, .proc/handle_automated_action) //ensure bot quickly responds + INVOKE_ASYNC(src,PROC_REF(handle_automated_action)) //ensure bot quickly responds /mob/living/simple_animal/bot/ed209/proc/back_to_hunt() anchored = FALSE frustration = 0 mode = BOT_HUNT - INVOKE_ASYNC(src, .proc/handle_automated_action) //ensure bot quickly responds + INVOKE_ASYNC(src,PROC_REF(handle_automated_action)) //ensure bot quickly responds // look for a criminal in view of the bot @@ -348,7 +348,7 @@ Auto Patrol[]"}, if((C.name == oldtarget_name) && (world.time < last_found + 100)) continue - threatlevel = C.assess_threat(judgement_criteria, lasercolor, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threatlevel = C.assess_threat(judgement_criteria, lasercolor, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) if(!threatlevel) continue @@ -546,7 +546,7 @@ Auto Patrol[]"}, if(ishuman(C)) var/mob/living/carbon/human/H = C var/judgement_criteria = judgement_criteria() - threat = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threat = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) log_combat(src,C,"stunned") if(declare_arrests) var/area/location = get_area(src) diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index 944cb71366f..6b947a5f96d 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -475,7 +475,7 @@ process_bot() num_steps-- if(mode != BOT_IDLE) - var/process_timer = addtimer(CALLBACK(src, .proc/process_bot), 2, TIMER_LOOP|TIMER_STOPPABLE) + var/process_timer = addtimer(CALLBACK(src,PROC_REF(process_bot)), 2, TIMER_LOOP|TIMER_STOPPABLE) addtimer(CALLBACK(GLOBAL_PROC_REF(deltimer), process_timer), (num_steps*2) + 1) /mob/living/simple_animal/bot/mulebot/proc/process_bot() @@ -541,7 +541,7 @@ buzz(SIGH) mode = BOT_WAIT_FOR_NAV blockcount = 0 - addtimer(CALLBACK(src, .proc/process_blocked, next), 2 SECONDS) + addtimer(CALLBACK(src,PROC_REF(process_blocked), next), 2 SECONDS) return return else @@ -554,7 +554,7 @@ if(BOT_NAV) // calculate new path mode = BOT_WAIT_FOR_NAV - INVOKE_ASYNC(src, .proc/process_nav) + INVOKE_ASYNC(src,PROC_REF(process_nav)) /mob/living/simple_animal/bot/mulebot/proc/process_blocked(turf/next) calc_path(avoid=next) @@ -603,7 +603,7 @@ /mob/living/simple_animal/bot/mulebot/proc/start_home() if(!on) return - INVOKE_ASYNC(src, .proc/do_start_home) + INVOKE_ASYNC(src,PROC_REF(do_start_home)) update_icon() /mob/living/simple_animal/bot/mulebot/proc/do_start_home() diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index ac39b915b77..bb50dfad7ec 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -263,7 +263,7 @@ Auto Patrol: []"}, /mob/living/simple_animal/bot/secbot/proc/retaliate(mob/living/carbon/human/H) var/judgement_criteria = judgement_criteria() - threatlevel = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threatlevel = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) threatlevel += 6 if(threatlevel >= 4) target = H @@ -415,12 +415,12 @@ Auto Patrol: []"}, C.stuttering = 5 C.DefaultCombatKnockdown(100) var/mob/living/carbon/human/H = C - threat = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threat = H.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) else playsound(src, 'sound/weapons/egloves.ogg', 50, TRUE, -1) C.DefaultCombatKnockdown(100) C.stuttering = 5 - threat = C.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threat = C.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) log_combat(src,C,"stunned") if(declare_arrests) @@ -522,13 +522,13 @@ Auto Patrol: []"}, target = null last_found = world.time frustration = 0 - INVOKE_ASYNC(src, .proc/handle_automated_action) + INVOKE_ASYNC(src,PROC_REF(handle_automated_action)) /mob/living/simple_animal/bot/secbot/proc/back_to_hunt() anchored = FALSE frustration = 0 mode = BOT_HUNT - INVOKE_ASYNC(src, .proc/handle_automated_action) + INVOKE_ASYNC(src,PROC_REF(handle_automated_action)) // look for a criminal in view of the bot /mob/living/simple_animal/bot/secbot/proc/look_for_perp() @@ -541,7 +541,7 @@ Auto Patrol: []"}, if((C.name == oldtarget_name) && (world.time < last_found + 100)) continue - threatlevel = C.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src, .proc/check_for_weapons)) + threatlevel = C.assess_threat(judgement_criteria, weaponcheck=CALLBACK(src,PROC_REF(check_for_weapons))) if(!threatlevel) continue @@ -553,7 +553,7 @@ Auto Patrol: []"}, playsound(loc, pick('sound/voice/beepsky/criminal.ogg', 'sound/voice/beepsky/justice.ogg', 'sound/voice/beepsky/freeze.ogg'), 50, FALSE) visible_message(process_emote("TAUNT", target, threatlevel)) mode = BOT_HUNT - INVOKE_ASYNC(src, .proc/handle_automated_action) + INVOKE_ASYNC(src,PROC_REF(handle_automated_action)) break else continue diff --git a/code/modules/mob/living/simple_animal/eldritch_demons.dm b/code/modules/mob/living/simple_animal/eldritch_demons.dm index f9233a7fe30..8da0595afc4 100644 --- a/code/modules/mob/living/simple_animal/eldritch_demons.dm +++ b/code/modules/mob/living/simple_animal/eldritch_demons.dm @@ -85,7 +85,7 @@ var/datum/action/innate/mansus_speech/action = new(src) linked_mobs[mob_linked] = action action.Grant(mob_linked) - RegisterSignal(mob_linked, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING) , .proc/unlink_mob) + RegisterSignal(mob_linked, list(COMSIG_MOB_DEATH, COMSIG_PARENT_QDELETING) ,PROC_REF(unlink_mob)) return TRUE /mob/living/simple_animal/hostile/eldritch/raw_prophet/proc/unlink_mob(mob/living/mob_linked) diff --git a/code/modules/mob/living/simple_animal/friendly/mouse.dm b/code/modules/mob/living/simple_animal/friendly/mouse.dm index b09823be62e..59a375d9a7f 100644 --- a/code/modules/mob/living/simple_animal/friendly/mouse.dm +++ b/code/modules/mob/living/simple_animal/friendly/mouse.dm @@ -68,7 +68,7 @@ var/mob/M = AM to_chat(M, span_notice("[icon2html(src, M)] Squeak!")) if(istype(AM, /obj/item/reagent_containers/food/snacks/royalcheese)) - INVOKE_ASYNC(src, .proc/evolve) + INVOKE_ASYNC(src,PROC_REF(evolve)) qdel(AM) /mob/living/simple_animal/mouse/handle_automated_action() diff --git a/code/modules/mob/living/simple_animal/guardian/types/charger.dm b/code/modules/mob/living/simple_animal/guardian/types/charger.dm index 8946f4512e1..7cf0bd6d726 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/charger.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/charger.dm @@ -31,7 +31,7 @@ /mob/living/simple_animal/hostile/guardian/charger/Shoot(atom/targeted_atom) charging = 1 - throw_at(targeted_atom, range, 1, src, FALSE, TRUE, callback = CALLBACK(src, .proc/charging_end)) + throw_at(targeted_atom, range, 1, src, FALSE, TRUE, callback = CALLBACK(src,PROC_REF(charging_end))) /mob/living/simple_animal/hostile/guardian/charger/proc/charging_end() charging = 0 diff --git a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm index ba633306dbf..ad064a6f508 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm @@ -38,7 +38,7 @@ return if(isobj(A) && Adjacent(A)) if(bomb_cooldown <= world.time && !stat) - var/datum/component/killerqueen/K = A.AddComponent(/datum/component/killerqueen, EXPLODE_HEAVY, CALLBACK(src, .proc/on_explode), CALLBACK(src, .proc/on_failure), \ + var/datum/component/killerqueen/K = A.AddComponent(/datum/component/killerqueen, EXPLODE_HEAVY, CALLBACK(src,PROC_REF(on_explode)), CALLBACK(src,PROC_REF(on_failure)), \ examine_message = "It glows with a strange light!") QDEL_IN(K, 1 MINUTES) to_chat(src, "Success! Bomb armed!") diff --git a/code/modules/mob/living/simple_animal/guardian/types/ranged.dm b/code/modules/mob/living/simple_animal/guardian/types/ranged.dm index 3dfc0831984..e9412285b2c 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/ranged.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/ranged.dm @@ -110,7 +110,7 @@ /obj/effect/snare/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/mob/living/simple_animal/hostile/bees.dm b/code/modules/mob/living/simple_animal/hostile/bees.dm index 5e7d5038711..849d90fd81a 100644 --- a/code/modules/mob/living/simple_animal/hostile/bees.dm +++ b/code/modules/mob/living/simple_animal/hostile/bees.dm @@ -209,7 +209,7 @@ return beehome = BB BB.bees |= src - RegisterSignal(BB, COMSIG_PARENT_QDELETING, .proc/move_out) + RegisterSignal(BB, COMSIG_PARENT_QDELETING,PROC_REF(move_out)) /mob/living/simple_animal/hostile/poison/bees/proc/move_out() if(!beehome) @@ -325,7 +325,7 @@ /mob/living/simple_animal/hostile/poison/bees/short/Initialize() . = ..() - addtimer(CALLBACK(src, .proc/death), 50 SECONDS) + addtimer(CALLBACK(src,PROC_REF(death)), 50 SECONDS) /mob/living/simple_animal/hostile/poison/bees/short/frenly //these bees need to be frenly or they'd murder everyone faction = list("neutral") diff --git a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm b/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm index 401127972fb..dd44473f21e 100644 --- a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm +++ b/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm @@ -69,7 +69,7 @@ var/minions_chosen = pick(minions) var/mob/living/simple_animal/hostile/stickman/S = new minions_chosen (get_step(boss,pick_n_take(directions)), 1) S.faction = boss.faction - RegisterSignal(S, COMSIG_PARENT_QDELETING, .proc/remove_from_list) + RegisterSignal(S, COMSIG_PARENT_QDELETING,PROC_REF(remove_from_list)) summoned_minions += S /datum/action/boss/wizard_summon_minions/proc/remove_from_list(datum/source, forced) diff --git a/code/modules/mob/living/simple_animal/hostile/f13/Securitron.dm b/code/modules/mob/living/simple_animal/hostile/f13/Securitron.dm index c10eb3adc48..d75dc878752 100644 --- a/code/modules/mob/living/simple_animal/hostile/f13/Securitron.dm +++ b/code/modules/mob/living/simple_animal/hostile/f13/Securitron.dm @@ -111,8 +111,8 @@ /mob/living/simple_animal/hostile/securitron/death() do_sparks(3, TRUE, src) for(var/i in 1 to 3) - addtimer(CALLBACK(src, .proc/do_death_beep), i * 1 SECONDS) - addtimer(CALLBACK(src, .proc/self_destruct), 4 SECONDS) + addtimer(CALLBACK(src,PROC_REF(do_death_beep)), i * 1 SECONDS) + addtimer(CALLBACK(src,PROC_REF(self_destruct)), 4 SECONDS) return ..() /mob/living/simple_animal/hostile/securitron/Aggro() @@ -262,5 +262,5 @@ minimum_distance = 1 /mob/living/simple_animal/hostile/securitron/sentrybot/self_destruct/AttackingTarget() - addtimer(CALLBACK(src, .proc/do_death_beep), 1 SECONDS) - addtimer(CALLBACK(src, .proc/self_destruct), 2 SECONDS) + addtimer(CALLBACK(src,PROC_REF(do_death_beep)), 1 SECONDS) + addtimer(CALLBACK(src,PROC_REF(self_destruct)), 2 SECONDS) diff --git a/code/modules/mob/living/simple_animal/hostile/f13/deathclaw.dm b/code/modules/mob/living/simple_animal/hostile/f13/deathclaw.dm index 5dca68b8ebe..e55b01f0d44 100644 --- a/code/modules/mob/living/simple_animal/hostile/f13/deathclaw.dm +++ b/code/modules/mob/living/simple_animal/hostile/f13/deathclaw.dm @@ -420,7 +420,7 @@ return if(!charging) visible_message(span_danger("\The [src] growls, enraged!")) - addtimer(CALLBACK(src, .proc/Charge), 3) + addtimer(CALLBACK(src,PROC_REF(Charge)), 3) . = ..() // I swear I looked at this like 10 times before, never once noticed this wasnt here, fmdakm /mob/living/simple_animal/hostile/deathclaw/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect) @@ -446,7 +446,7 @@ setDir(get_dir(src, T)) var/obj/effect/temp_visual/decoy/D = new /obj/effect/temp_visual/decoy(loc,src) animate(D, alpha = 0, color = "#FF0000", transform = matrix()*2, time = 1) - throw_at(T, get_dist(src, T), 1, src, 0, callback = CALLBACK(src, .proc/charge_end)) + throw_at(T, get_dist(src, T), 1, src, 0, callback = CALLBACK(src,PROC_REF(charge_end))) /mob/living/simple_animal/hostile/deathclaw/proc/charge_end(list/effects_to_destroy) charging = FALSE diff --git a/code/modules/mob/living/simple_animal/hostile/f13/supermutant.dm b/code/modules/mob/living/simple_animal/hostile/f13/supermutant.dm index c72ae6a3681..f0f12456b86 100644 --- a/code/modules/mob/living/simple_animal/hostile/f13/supermutant.dm +++ b/code/modules/mob/living/simple_animal/hostile/f13/supermutant.dm @@ -443,7 +443,7 @@ var/obj/effect/temp_visual/decoy/D = new /obj/effect/temp_visual/decoy(loc,src) animate(D, alpha = 0, color = "#FF0000", transform = matrix()*2, time = 1) addtimer(3) - throw_at(T, get_dist(src, T), 1, src, 0, callback = CALLBACK(src, .proc/charge_end)) + throw_at(T, get_dist(src, T), 1, src, 0, callback = CALLBACK(src,PROC_REF(charge_end))) /mob/living/simple_animal/hostile/supermutant/nightkin/rain/proc/charge_end(list/effects_to_destroy) charging = FALSE @@ -513,7 +513,7 @@ playsound(get_turf(src),'sound/magic/fireball.ogg', 200, 1) for(var/d in GLOB.cardinals) - INVOKE_ASYNC(src, .proc/fire_release_wall, d) + INVOKE_ASYNC(src,PROC_REF(fire_release_wall), d) /mob/living/simple_animal/hostile/supermutant/nightkin/rangedmutant/rain/proc/fire_release_wall(dir) var/list/hit_things = list(src) diff --git a/code/modules/mob/living/simple_animal/hostile/headcrab.dm b/code/modules/mob/living/simple_animal/hostile/headcrab.dm index 60d8483a3e9..933f8b5f214 100644 --- a/code/modules/mob/living/simple_animal/hostile/headcrab.dm +++ b/code/modules/mob/living/simple_animal/hostile/headcrab.dm @@ -52,7 +52,7 @@ return Infect(my_target) to_chat(src, span_userdanger("With our egg laid, our death approaches rapidly...")) - addtimer(CALLBACK(src, .proc/death), 100) + addtimer(CALLBACK(src,PROC_REF(death)), 100) /obj/item/organ/body_egg/changeling_egg name = "changeling egg" diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 2b2ff870fe4..7deed9cb554 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -228,7 +228,7 @@ if(go2bed) if(lonely_timer_id) return - lonely_timer_id = addtimer(CALLBACK(src, .proc/queue_unbirth), 30 SECONDS, TIMER_STOPPABLE) + lonely_timer_id = addtimer(CALLBACK(src,PROC_REF(queue_unbirth)), 30 SECONDS, TIMER_STOPPABLE) else if(!lonely_timer_id) return @@ -456,7 +456,7 @@ //What we do after closing in /mob/living/simple_animal/hostile/proc/MeleeAction(patience = TRUE) if(rapid_melee > 1) - var/datum/callback/cb = CALLBACK(src, .proc/CheckAndAttack) + var/datum/callback/cb = CALLBACK(src,PROC_REF(CheckAndAttack)) var/delay = SSnpcpool.wait / rapid_melee for(var/i in 1 to rapid_melee) addtimer(cb, (i - 1)*delay) @@ -588,7 +588,7 @@ vision_range = aggro_vision_range var/atom/my_target = get_target() if(my_target && LAZYLEN(emote_taunt) && prob(taunt_chance)) - INVOKE_ASYNC(src, .proc/emote, "me", EMOTE_VISIBLE, "[pick(emote_taunt)] at [my_target].") + INVOKE_ASYNC(src,PROC_REF(emote), "me", EMOTE_VISIBLE, "[pick(emote_taunt)] at [my_target].") taunt_chance = max(taunt_chance-7,2) if(LAZYLEN(emote_taunt_sound)) var/taunt_choice = pick(emote_taunt_sound) @@ -641,13 +641,13 @@ return visible_message(span_danger("[src] [islist(ranged_message) ? pick(ranged_message) : ranged_message] at [A]!")) if(rapid > 1) - var/datum/callback/cb = CALLBACK(src, .proc/Shoot, A) + var/datum/callback/cb = CALLBACK(src,PROC_REF(Shoot), A) for(var/i in 1 to rapid) addtimer(cb, (i - 1)*rapid_fire_delay) else Shoot(A) for(var/i in 1 to extra_projectiles) - addtimer(CALLBACK(src, .proc/Shoot, A), i * auto_fire_delay) + addtimer(CALLBACK(src,PROC_REF(Shoot), A), i * auto_fire_delay) ThrowSomething(A) ranged_cooldown = world.time + ranged_cooldown_time if(sound_after_shooting) @@ -840,7 +840,7 @@ mob/living/simple_animal/hostile/proc/DestroySurroundings() // for use with mega if(lose_patience_timeout) LosePatience() - lose_patience_timer_id = addtimer(CALLBACK(src, .proc/LoseTarget), lose_patience_timeout, TIMER_STOPPABLE) + lose_patience_timer_id = addtimer(CALLBACK(src,PROC_REF(LoseTarget)), lose_patience_timeout, TIMER_STOPPABLE) /mob/living/simple_animal/hostile/proc/LosePatience() @@ -854,7 +854,7 @@ mob/living/simple_animal/hostile/proc/DestroySurroundings() // for use with mega search_objects = 0 deltimer(search_objects_timer_id) - search_objects_timer_id = addtimer(CALLBACK(src, .proc/RegainSearchObjects), search_objects_regain_time, TIMER_STOPPABLE) + search_objects_timer_id = addtimer(CALLBACK(src,PROC_REF(RegainSearchObjects)), search_objects_regain_time, TIMER_STOPPABLE) /mob/living/simple_animal/hostile/proc/RegainSearchObjects(value) @@ -909,7 +909,7 @@ mob/living/simple_animal/hostile/proc/DestroySurroundings() // for use with mega if(!new_target) return target = WEAKREF(new_target) - RegisterSignal(target, COMSIG_PARENT_QDELETING, .proc/handle_target_del, TRUE) + RegisterSignal(target, COMSIG_PARENT_QDELETING,PROC_REF(handle_target_del), TRUE) /mob/living/simple_animal/hostile/proc/queue_unbirth() SSidlenpcpool.add_to_culling(src) @@ -976,7 +976,7 @@ mob/living/simple_animal/hostile/proc/DestroySurroundings() // for use with mega visible_message(span_green("[src] shudders as the EMP overloads its servos!")) LoseTarget() toggle_ai(AI_OFF) - addtimer(CALLBACK(src, .proc/un_emp_stun), min(intensity, 3 SECONDS)) + addtimer(CALLBACK(src,PROC_REF(un_emp_stun)), min(intensity, 3 SECONDS)) /mob/living/simple_animal/hostile/proc/un_emp_stun() active_emp_flags -= MOB_EMP_STUN @@ -993,7 +993,7 @@ mob/living/simple_animal/hostile/proc/DestroySurroundings() // for use with mega visible_message(span_green("[src] lets out a burst of static and whips its gun around wildly!")) var/list/old_faction = faction faction = null - addtimer(CALLBACK(src, .proc/un_emp_berserk, old_faction), intensity SECONDS * 0.5) + addtimer(CALLBACK(src,PROC_REF(un_emp_berserk), old_faction), intensity SECONDS * 0.5) /mob/living/simple_animal/hostile/proc/un_emp_berserk(list/unberserk) active_emp_flags -= MOB_EMP_BERSERK diff --git a/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm b/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm index 19646705363..59f1f187040 100644 --- a/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm +++ b/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm @@ -82,7 +82,7 @@ /obj/structure/leaper_bubble/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -217,7 +217,7 @@ if(AIStatus == AI_ON && ranged_cooldown <= world.time) projectile_ready = TRUE update_icons() - throw_at(new_turf, max(3,get_dist(src,new_turf)), 1, src, FALSE, callback = CALLBACK(src, .proc/FinishHop)) + throw_at(new_turf, max(3,get_dist(src,new_turf)), 1, src, FALSE, callback = CALLBACK(src,PROC_REF(FinishHop))) /mob/living/simple_animal/hostile/jungle/leaper/proc/FinishHop() density = TRUE @@ -228,18 +228,18 @@ var/atom/my_target = get_target() if(my_target && AIStatus == AI_ON && projectile_ready && !ckey) face_atom(my_target) - addtimer(CALLBACK(src, .proc/OpenFire, my_target), 5) + addtimer(CALLBACK(src,PROC_REF(OpenFire), my_target), 5) /mob/living/simple_animal/hostile/jungle/leaper/proc/BellyFlop() var/turf/new_turf = get_turf(get_target()) hopping = TRUE mob_transforming = TRUE new /obj/effect/temp_visual/leaper_crush(new_turf) - addtimer(CALLBACK(src, .proc/BellyFlopHop, new_turf), 30) + addtimer(CALLBACK(src,PROC_REF(BellyFlopHop), new_turf), 30) /mob/living/simple_animal/hostile/jungle/leaper/proc/BellyFlopHop(turf/T) density = FALSE - throw_at(T, get_dist(src,T),1,src, FALSE, callback = CALLBACK(src, .proc/Crush)) + throw_at(T, get_dist(src,T),1,src, FALSE, callback = CALLBACK(src,PROC_REF(Crush))) /mob/living/simple_animal/hostile/jungle/leaper/proc/Crush() hopping = FALSE diff --git a/code/modules/mob/living/simple_animal/hostile/jungle/mook.dm b/code/modules/mob/living/simple_animal/hostile/jungle/mook.dm index a7927bae1bf..8086af500af 100644 --- a/code/modules/mob/living/simple_animal/hostile/jungle/mook.dm +++ b/code/modules/mob/living/simple_animal/hostile/jungle/mook.dm @@ -73,9 +73,9 @@ walk(src,0) update_icons() if(prob(50) && get_dist(src,my_target) <= 3 || forced_slash_combo) - addtimer(CALLBACK(src, .proc/SlashCombo), ATTACK_INTERMISSION_TIME) + addtimer(CALLBACK(src,PROC_REF(SlashCombo)), ATTACK_INTERMISSION_TIME) return - addtimer(CALLBACK(src, .proc/LeapAttack), ATTACK_INTERMISSION_TIME + rand(0,3)) + addtimer(CALLBACK(src,PROC_REF(LeapAttack)), ATTACK_INTERMISSION_TIME + rand(0,3)) return attack_state = MOOK_ATTACK_RECOVERY ResetNeutral() @@ -85,9 +85,9 @@ attack_state = MOOK_ATTACK_ACTIVE update_icons() SlashAttack() - addtimer(CALLBACK(src, .proc/SlashAttack), 3) - addtimer(CALLBACK(src, .proc/SlashAttack), 6) - addtimer(CALLBACK(src, .proc/AttackRecovery), 9) + addtimer(CALLBACK(src,PROC_REF(SlashAttack)), 3) + addtimer(CALLBACK(src,PROC_REF(SlashAttack)), 6) + addtimer(CALLBACK(src,PROC_REF(AttackRecovery)), 9) /mob/living/simple_animal/hostile/jungle/mook/proc/SlashAttack() var/atom/my_target = get_target() @@ -119,7 +119,7 @@ playsound(src, 'sound/weapons/thudswoosh.ogg', 25, 1) playsound(src, 'sound/voice/mook_leap_yell.ogg', 100, 1) var/target_turf = get_turf(my_target) - throw_at(target_turf, 7, 1, src, FALSE, callback = CALLBACK(src, .proc/AttackRecovery)) + throw_at(target_turf, 7, 1, src, FALSE, callback = CALLBACK(src,PROC_REF(AttackRecovery))) return attack_state = MOOK_ATTACK_RECOVERY ResetNeutral() @@ -140,11 +140,11 @@ if(isliving(my_target)) var/mob/living/L = my_target if(L.incapacitated() && L.stat != DEAD) - addtimer(CALLBACK(src, .proc/WarmupAttack, TRUE), ATTACK_INTERMISSION_TIME) + addtimer(CALLBACK(src,PROC_REF(WarmupAttack), TRUE), ATTACK_INTERMISSION_TIME) return - addtimer(CALLBACK(src, .proc/WarmupAttack), ATTACK_INTERMISSION_TIME) + addtimer(CALLBACK(src,PROC_REF(WarmupAttack)), ATTACK_INTERMISSION_TIME) return - addtimer(CALLBACK(src, .proc/ResetNeutral), ATTACK_INTERMISSION_TIME) + addtimer(CALLBACK(src,PROC_REF(ResetNeutral)), ATTACK_INTERMISSION_TIME) /mob/living/simple_animal/hostile/jungle/mook/proc/ResetNeutral() if(attack_state != MOOK_ATTACK_RECOVERY) diff --git a/code/modules/mob/living/simple_animal/hostile/jungle/seedling.dm b/code/modules/mob/living/simple_animal/hostile/jungle/seedling.dm index 7d4cff7bc2d..e96f6b3227c 100644 --- a/code/modules/mob/living/simple_animal/hostile/jungle/seedling.dm +++ b/code/modules/mob/living/simple_animal/hostile/jungle/seedling.dm @@ -136,7 +136,7 @@ if(get_dist(src,my_target) >= 4 && prob(40)) SolarBeamStartup(my_target) return - addtimer(CALLBACK(src, .proc/Volley), 5) + addtimer(CALLBACK(src,PROC_REF(Volley)), 5) /mob/living/simple_animal/hostile/jungle/seedling/proc/SolarBeamStartup(mob/living/living_target)//It's more like requiem than final spark if(combatant_state != SEEDLING_STATE_WARMUP || !get_target()) @@ -148,7 +148,7 @@ if(get_dist(src,living_target) > 7) playsound(living_target,'sound/effects/seedling_chargeup.ogg', 100, 0) solar_beam_identifier = world.time - addtimer(CALLBACK(src, .proc/Beamu, living_target, solar_beam_identifier), 35) + addtimer(CALLBACK(src,PROC_REF(Beamu), living_target, solar_beam_identifier), 35) /mob/living/simple_animal/hostile/jungle/seedling/proc/Beamu(mob/living/living_target, beam_id = 0) if(combatant_state == SEEDLING_STATE_ACTIVE && living_target && beam_id == solar_beam_identifier) @@ -168,7 +168,7 @@ living_target.adjust_fire_stacks(0.2)//Just here for the showmanship living_target.IgniteMob() playsound(living_target,'sound/weapons/sear.ogg', 50, 1) - addtimer(CALLBACK(src, .proc/AttackRecovery), 5) + addtimer(CALLBACK(src,PROC_REF(AttackRecovery)), 5) return AttackRecovery() @@ -176,10 +176,10 @@ if(combatant_state == SEEDLING_STATE_WARMUP && target) combatant_state = SEEDLING_STATE_ACTIVE update_icons() - var/datum/callback/cb = CALLBACK(src, .proc/InaccurateShot) + var/datum/callback/cb = CALLBACK(src,PROC_REF(InaccurateShot)) for(var/i in 1 to 13) addtimer(cb, i) - addtimer(CALLBACK(src, .proc/AttackRecovery), 14) + addtimer(CALLBACK(src,PROC_REF(AttackRecovery)), 14) /mob/living/simple_animal/hostile/jungle/seedling/proc/InaccurateShot() var/atom/my_target = get_target() @@ -203,7 +203,7 @@ ranged_cooldown = world.time + ranged_cooldown_time if(my_target) face_atom(my_target) - addtimer(CALLBACK(src, .proc/ResetNeutral), 10) + addtimer(CALLBACK(src,PROC_REF(ResetNeutral)), 10) /mob/living/simple_animal/hostile/jungle/seedling/proc/ResetNeutral() combatant_state = SEEDLING_STATE_NEUTRAL diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/behemoth.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/behemoth.dm index a5583ae3730..76b3b62e2f0 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/behemoth.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/behemoth.dm @@ -95,7 +95,7 @@ . = ..() stored_move_dirs &= ~direct if(!stored_move_dirs) - INVOKE_ASYNC(src, .proc/ground_slam, stomp_range, 1, FALSE) + INVOKE_ASYNC(src,PROC_REF(ground_slam), stomp_range, 1, FALSE) /// Slams the ground around the behemoth throwing back enemies caught nearby /mob/living/simple_animal/hostile/megafauna/behemoth/proc/ground_slam(range, delay, do_damage) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm index 9b8b30bafb0..b3d54f83bee 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner.dm @@ -61,7 +61,7 @@ Difficulty: Medium /mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/hunter/AttackingTarget() . = ..() if(. && prob(12)) - INVOKE_ASYNC(src, .proc/dash) + INVOKE_ASYNC(src,PROC_REF(dash)) /obj/item/melee/transforming/cleaving_saw/miner //nerfed saw because it is very murdery force = 6 @@ -112,7 +112,7 @@ Difficulty: Medium if(QDELETED(my_target)) return if(!CheckActionCooldown() || !Adjacent(my_target)) //some cheating - INVOKE_ASYNC(src, .proc/quick_attack_loop) + INVOKE_ASYNC(src,PROC_REF(quick_attack_loop)) return face_atom(my_target) // if(isliving(my_target)) @@ -132,7 +132,7 @@ Difficulty: Medium if(guidance) adjustHealth(-2) transform_weapon() - INVOKE_ASYNC(src, .proc/quick_attack_loop) + INVOKE_ASYNC(src,PROC_REF(quick_attack_loop)) return TRUE /mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/do_attack_animation(atom/A, visual_effect_icon, obj/item/used_item, no_effect) @@ -147,13 +147,13 @@ Difficulty: Medium if(. && my_target && !targets_the_same) wander = TRUE transform_weapon() - INVOKE_ASYNC(src, .proc/quick_attack_loop) + INVOKE_ASYNC(src,PROC_REF(quick_attack_loop)) /mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/OpenFire() var/atom/my_target = get_target() Goto(my_target, move_to_delay, minimum_distance) if(get_dist(src, my_target) > MINER_DASH_RANGE && dash_cooldown <= world.time) - INVOKE_ASYNC(src, .proc/dash, my_target) + INVOKE_ASYNC(src,PROC_REF(dash), my_target) else shoot_ka() transform_weapon() @@ -181,7 +181,7 @@ Difficulty: Medium if(dashing || !CheckActionCooldown() || !Adjacent(my_target)) if(dashing && next_action <= world.time) SetNextAction(1, considered_action = FALSE, immediate = FALSE, flush = TRUE) - INVOKE_ASYNC(src, .proc/quick_attack_loop) //lets try that again. + INVOKE_ASYNC(src,PROC_REF(quick_attack_loop)) //lets try that again. return AttackingTarget() @@ -251,7 +251,7 @@ Difficulty: Medium /obj/effect/temp_visual/dir_setting/miner_death/Initialize(mapload, set_dir) . = ..() - INVOKE_ASYNC(src, .proc/fade_out) + INVOKE_ASYNC(src,PROC_REF(fade_out)) /obj/effect/temp_visual/dir_setting/miner_death/proc/fade_out() var/matrix/M = new diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index 6d9e015eb94..1191823a612 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -77,15 +77,15 @@ Difficulty: Hard blood_warp() if(prob(25)) - INVOKE_ASYNC(src, .proc/blood_spray) + INVOKE_ASYNC(src,PROC_REF(blood_spray)) else if(prob(5+anger_modifier/2)) slaughterlings() else if(health > maxHealth/2 && !client) - INVOKE_ASYNC(src, .proc/charge) + INVOKE_ASYNC(src,PROC_REF(charge)) else - INVOKE_ASYNC(src, .proc/triple_charge) + INVOKE_ASYNC(src,PROC_REF(triple_charge)) /mob/living/simple_animal/hostile/megafauna/bubblegum/Initialize() diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/captainarlem.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/captainarlem.dm index c24e22843e4..b2b9b45c121 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/captainarlem.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/captainarlem.dm @@ -58,10 +58,10 @@ eyebots() else if(health > maxHealth/2 && !client) - INVOKE_ASYNC(src, .proc/charge) + INVOKE_ASYNC(src,PROC_REF(charge)) visible_message("\" FOR THE ENCLAVE!\"") else - INVOKE_ASYNC(src, .proc/triple_charge) + INVOKE_ASYNC(src,PROC_REF(triple_charge)) visible_message("\"YOUR RIDE IS OVER MUTIE, TIME TO DIE!\"") /mob/living/simple_animal/hostile/megafauna/captainarlem/Initialize() @@ -178,7 +178,7 @@ mob/living/simple_animal/hostile/megafauna/captainarlem/do_attack_animation(atom /mob/living/simple_animal/hostile/megafauna/captainarlem/death() do_sparks(3, TRUE, src) - addtimer(CALLBACK(src, .proc/self_destruct), 4 SECONDS) + addtimer(CALLBACK(src,PROC_REF(self_destruct)), 4 SECONDS) return ..() diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm index 6115de1efeb..314bf0fe203 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm @@ -79,7 +79,7 @@ Difficulty: Very Hard double_spiral() else visible_message("\"Judgement.\"") - INVOKE_ASYNC(src, .proc/spiral_shoot, pick(TRUE, FALSE)) + INVOKE_ASYNC(src,PROC_REF(spiral_shoot), pick(TRUE, FALSE)) else if(prob(20)) ranged_cooldown = world.time + 2 @@ -90,7 +90,7 @@ Difficulty: Very Hard blast() else ranged_cooldown = world.time + 20 - INVOKE_ASYNC(src, .proc/alternating_dir_shots) + INVOKE_ASYNC(src,PROC_REF(alternating_dir_shots)) /mob/living/simple_animal/hostile/megafauna/colossus/Initialize() @@ -142,8 +142,8 @@ Difficulty: Very Hard visible_message("\"Die.\"") sleep(10) - INVOKE_ASYNC(src, .proc/spiral_shoot) - INVOKE_ASYNC(src, .proc/spiral_shoot, TRUE) + INVOKE_ASYNC(src,PROC_REF(spiral_shoot)) + INVOKE_ASYNC(src,PROC_REF(spiral_shoot), TRUE) /mob/living/simple_animal/hostile/megafauna/colossus/proc/spiral_shoot(negative = FALSE, counter_start = 8) var/turf/start_turf = get_step(src, pick(GLOB.alldirs)) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/demonic_frost_miner.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/demonic_frost_miner.dm index b3ee67fb878..01026038fd8 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/demonic_frost_miner.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/demonic_frost_miner.dm @@ -98,7 +98,7 @@ Difficulty: Extremely Hard if(easy_attack) snowball_machine_gun() else - INVOKE_ASYNC(src, .proc/ice_shotgun, 5, list(list(-180, -140, -100, -60, -20, 20, 60, 100, 140), list(-160, -120, -80, -40, 0, 40, 80, 120, 160))) + INVOKE_ASYNC(src,PROC_REF(ice_shotgun), 5, list(list(-180, -140, -100, -60, -20, 20, 60, 100, 140), list(-160, -120, -80, -40, 0, 40, 80, 120, 160))) snowball_machine_gun(5 * 8, 5) if(3) if(easy_attack) @@ -282,7 +282,7 @@ Difficulty: Extremely Hard return forceMove(user) to_chat(user, span_notice("You feel a bit safer... but a demonic presence lurks in the back of your head...")) - RegisterSignal(user, COMSIG_MOB_DEATH, .proc/resurrect) + RegisterSignal(user, COMSIG_MOB_DEATH,PROC_REF(resurrect)) /// Resurrects the targette when they die by cloning them into a new duplicate body and transferring their mind to the clone on a safe station turf /obj/item/resurrection_crystal/proc/resurrect(mob/living/carbon/user, gibbed) @@ -343,7 +343,7 @@ Difficulty: Extremely Hard icon_state = "frozen" /datum/status_effect/ice_block_talisman/on_apply() - RegisterSignal(owner, COMSIG_MOVABLE_PRE_MOVE, .proc/owner_moved) + RegisterSignal(owner, COMSIG_MOVABLE_PRE_MOVE,PROC_REF(owner_moved)) if(!owner.stat) to_chat(owner, span_userdanger("You become frozen in a cube!")) cube = icon('icons/effects/freeze.dmi', "ice_cube") diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm index 39faaa8bde5..1c5fee25d16 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/drake.dm @@ -115,15 +115,15 @@ Difficulty: Medium if(prob(15 + anger_modifier) && !client) if(health < maxHealth/2) - INVOKE_ASYNC(src, .proc/swoop_attack, TRUE, null, 50) + INVOKE_ASYNC(src,PROC_REF(swoop_attack), TRUE, null, 50) else fire_rain() else if(prob(10+anger_modifier) && !client) if(health > maxHealth/2) - INVOKE_ASYNC(src, .proc/swoop_attack) + INVOKE_ASYNC(src,PROC_REF(swoop_attack)) else - INVOKE_ASYNC(src, .proc/triple_swoop) + INVOKE_ASYNC(src,PROC_REF(triple_swoop)) else fire_walls() @@ -140,7 +140,7 @@ Difficulty: Medium playsound(get_turf(src),'sound/magic/fireball.ogg', 200, 1) for(var/d in GLOB.cardinals) - INVOKE_ASYNC(src, .proc/fire_wall, d) + INVOKE_ASYNC(src,PROC_REF(fire_wall), d) /mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_wall(dir) var/list/hit_things = list(src) @@ -315,7 +315,7 @@ Difficulty: Medium /obj/effect/temp_visual/target/Initialize(mapload, list/flame_hit) . = ..() - INVOKE_ASYNC(src, .proc/fall, flame_hit) + INVOKE_ASYNC(src,PROC_REF(fall), flame_hit) /obj/effect/temp_visual/target/proc/fall(list/flame_hit) var/turf/T = get_turf(src) @@ -361,7 +361,7 @@ Difficulty: Medium /obj/effect/temp_visual/dragon_flight/Initialize(mapload, negative) . = ..() - INVOKE_ASYNC(src, .proc/flight, negative) + INVOKE_ASYNC(src,PROC_REF(flight), negative) /obj/effect/temp_visual/dragon_flight/proc/flight(negative) if(negative) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm index 73dbc735f84..2df6403303d 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm @@ -161,10 +161,10 @@ Difficulty: Normal if(ranged_cooldown <= world.time) calculate_rage() ranged_cooldown = world.time + max(5, ranged_cooldown_time - anger_modifier * 0.75) - INVOKE_ASYNC(src, .proc/burst, get_turf(src)) + INVOKE_ASYNC(src,PROC_REF(burst), get_turf(src)) else burst_range = 3 - INVOKE_ASYNC(src, .proc/burst, get_turf(src), 0.25) //melee attacks on living mobs cause it to release a fast burst if on cooldown + INVOKE_ASYNC(src,PROC_REF(burst), get_turf(src), 0.25) //melee attacks on living mobs cause it to release a fast burst if on cooldown if(L.stat == CONSCIOUS && L.health >= 30) OpenFire() return ..() @@ -262,9 +262,9 @@ Difficulty: Normal while(health && !QDELETED(my_target) && cross_counter) cross_counter-- if(prob(60)) - INVOKE_ASYNC(src, .proc/cardinal_blasts, my_target) + INVOKE_ASYNC(src,PROC_REF(cardinal_blasts), my_target) else - INVOKE_ASYNC(src, .proc/diagonal_blasts, my_target) + INVOKE_ASYNC(src,PROC_REF(diagonal_blasts), my_target) sleep(6 + target_slowness) animate(src, color = oldcolor, time = 8) addtimer(CALLBACK(src, /atom/proc/update_atom_colour), 8) @@ -310,13 +310,13 @@ Difficulty: Normal else if(prob(70 - anger_modifier)) //a cross blast of some type if(prob(anger_modifier * (2 / target_slowness)) && health < maxHealth * 0.5) //we're super angry do it at all dirs - INVOKE_ASYNC(src, .proc/alldir_blasts, my_target) + INVOKE_ASYNC(src,PROC_REF(alldir_blasts), my_target) else if(prob(60)) - INVOKE_ASYNC(src, .proc/cardinal_blasts, my_target) + INVOKE_ASYNC(src,PROC_REF(cardinal_blasts), my_target) else - INVOKE_ASYNC(src, .proc/diagonal_blasts, my_target) + INVOKE_ASYNC(src,PROC_REF(diagonal_blasts), my_target) else //just release a burst of power - INVOKE_ASYNC(src, .proc/burst, get_turf(src)) + INVOKE_ASYNC(src,PROC_REF(burst), get_turf(src)) /mob/living/simple_animal/hostile/megafauna/hierophant/proc/diagonal_blasts(mob/victim) //fire diagonal cross blasts with a delay var/turf/T = get_turf(victim) @@ -327,7 +327,7 @@ Difficulty: Normal sleep(2) new /obj/effect/temp_visual/hierophant/blast(T, src, FALSE) for(var/d in GLOB.diagonals) - INVOKE_ASYNC(src, .proc/blast_wall, T, d) + INVOKE_ASYNC(src,PROC_REF(blast_wall), T, d) /mob/living/simple_animal/hostile/megafauna/hierophant/proc/cardinal_blasts(mob/victim) //fire cardinal cross blasts with a delay var/turf/T = get_turf(victim) @@ -338,7 +338,7 @@ Difficulty: Normal sleep(2) new /obj/effect/temp_visual/hierophant/blast(T, src, FALSE) for(var/d in GLOB.cardinals) - INVOKE_ASYNC(src, .proc/blast_wall, T, d) + INVOKE_ASYNC(src,PROC_REF(blast_wall), T, d) /mob/living/simple_animal/hostile/megafauna/hierophant/proc/alldir_blasts(mob/victim) //fire alldir cross blasts with a delay var/turf/T = get_turf(victim) @@ -349,7 +349,7 @@ Difficulty: Normal sleep(2) new /obj/effect/temp_visual/hierophant/blast(T, src, FALSE) for(var/d in GLOB.alldirs) - INVOKE_ASYNC(src, .proc/blast_wall, T, d) + INVOKE_ASYNC(src,PROC_REF(blast_wall), T, d) /mob/living/simple_animal/hostile/megafauna/hierophant/proc/blast_wall(turf/T, set_dir) //make a wall of blasts beam_range tiles long var/range = beam_range @@ -368,13 +368,13 @@ Difficulty: Normal return arena_cooldown = world.time + initial(arena_cooldown) for(var/d in GLOB.cardinals) - INVOKE_ASYNC(src, .proc/arena_squares, T, d) + INVOKE_ASYNC(src,PROC_REF(arena_squares), T, d) for(var/t in RANGE_TURFS(11, T)) if(t && get_dist(t, T) == 11) new /obj/effect/temp_visual/hierophant/wall(t, src) new /obj/effect/temp_visual/hierophant/blast(t, src, FALSE) if(get_dist(src, T) >= 11) //hey you're out of range I need to get closer to you! - INVOKE_ASYNC(src, .proc/blink, T) + INVOKE_ASYNC(src,PROC_REF(blink), T) /mob/living/simple_animal/hostile/megafauna/hierophant/proc/arena_squares(turf/T, set_dir) //make a fancy effect extending from the arena targette var/turf/previousturf = T @@ -526,7 +526,7 @@ Difficulty: Normal friendly_fire_check = is_friendly_fire if(new_speed) speed = new_speed - addtimer(CALLBACK(src, .proc/seek_target), 1) + addtimer(CALLBACK(src,PROC_REF(seek_target)), 1) /obj/effect/temp_visual/hierophant/chaser/proc/get_target_dir() . = get_cardinal_dir(src, targetturf) @@ -614,10 +614,10 @@ Difficulty: Normal if(ismineralturf(loc)) //drill mineral turfs var/turf/closed/mineral/M = loc M.gets_drilled(caster) - INVOKE_ASYNC(src, .proc/blast) + INVOKE_ASYNC(src,PROC_REF(blast)) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -637,7 +637,7 @@ Difficulty: Normal /obj/effect/temp_visual/hierophant/blast/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER if(bursting) - INVOKE_ASYNC(src, .proc/do_damage, get_turf(src)) + INVOKE_ASYNC(src,PROC_REF(do_damage), get_turf(src)) /obj/effect/temp_visual/hierophant/blast/proc/do_damage(turf/T) if(!damage) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm index ab01d56534f..adf9fa5bbdc 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/legion.dm @@ -92,7 +92,7 @@ Difficulty: Medium speed = 0 move_to_delay = 1 charging = 1 - addtimer(CALLBACK(src, .proc/reset_charge), 50) + addtimer(CALLBACK(src,PROC_REF(reset_charge)), 50) /mob/living/simple_animal/hostile/megafauna/legion/proc/reset_charge() ranged = 1 diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm index c5c087cd627..06b4925d455 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/swarmer.dm @@ -151,7 +151,7 @@ GLOBAL_LIST_INIT(AISwarmerCapsByType, list(/mob/living/simple_animal/hostile/swa /mob/living/simple_animal/hostile/swarmer/ai/proc/StartAction(deci = 0) stop_automated_movement = TRUE AIStatus = AI_OFF - addtimer(CALLBACK(src, .proc/EndAction), deci) + addtimer(CALLBACK(src,PROC_REF(EndAction)), deci) /mob/living/simple_animal/hostile/swarmer/ai/proc/EndAction() diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/wendigo.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/wendigo.dm index 7779f2b4107..16caaa87717 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/wendigo.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/wendigo.dm @@ -110,7 +110,7 @@ Difficulty: Hard . = ..() stored_move_dirs &= ~direct if(!stored_move_dirs) - INVOKE_ASYNC(src, .proc/ground_slam, stomp_range, 1) + INVOKE_ASYNC(src,PROC_REF(ground_slam), stomp_range, 1) /// Slams the ground around the wendigo throwing back enemies caught nearby /mob/living/simple_animal/hostile/megafauna/wendigo/proc/ground_slam(range, delay) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/elite.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/elite.dm index 6bdf4df09f7..0fb47538dbb 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/elite.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/elite.dm @@ -160,15 +160,15 @@ While using this makes the system rely on OnFire, it still gives options for tim if(boosted) mychild.playsound_local(get_turf(mychild), 'sound/effects/magic.ogg', 40, 0) to_chat(mychild, "Someone has activated your tumor. You will be returned to fight shortly, get ready!") - addtimer(CALLBACK(src, .proc/return_elite), 30) - INVOKE_ASYNC(src, .proc/arena_checks) + addtimer(CALLBACK(src,PROC_REF(return_elite)), 30) + INVOKE_ASYNC(src,PROC_REF(arena_checks)) if(TUMOR_INACTIVE) activity = TUMOR_ACTIVE var/mob/elitemind = null visible_message(span_boldwarning("[src] begins to convulse. Your instincts tell you to step back.")) activator = user if(!boosted) - addtimer(CALLBACK(src, .proc/spawn_elite), 30) + addtimer(CALLBACK(src,PROC_REF(spawn_elite)), 30) return visible_message(span_boldwarning("Something within [src] stirs...")) var/list/candidates = pollCandidatesForMob("Do you want to play as a lavaland elite?", ROLE_SENTIENCE, null, ROLE_SENTIENCE, 50, src, POLL_IGNORE_SENTIENCE_POTION) @@ -177,7 +177,7 @@ While using this makes the system rely on OnFire, it still gives options for tim elitemind = pick(candidates) elitemind.playsound_local(get_turf(elitemind), 'sound/effects/magic.ogg', 40, 0) to_chat(elitemind, "You have been chosen to play as a Lavaland Elite.\nIn a few seconds, you will be summoned on Lavaland as a monster to fight your activator, in a fight to the death.\nYour attacks can be switched using the buttons on the top left of the HUD, and used by clicking on targets or tiles similar to a gun.\nWhile the opponent might have an upper hand with powerful mining equipment and tools, you have great power normally limited by AI mobs.\nIf you want to win, you'll have to use your powers in creative ways to ensure the kill. It's suggested you try using them all as soon as possible.\nShould you win, you'll receive extra information regarding what to do after. Good luck!") - addtimer(CALLBACK(src, .proc/spawn_elite, elitemind), 100) + addtimer(CALLBACK(src,PROC_REF(spawn_elite), elitemind), 100) else visible_message(span_boldwarning("The stirring stops, and nothing emerges. Perhaps try again later.")) activity = TUMOR_INACTIVE @@ -193,7 +193,7 @@ While using this makes the system rely on OnFire, it still gives options for tim mychild.key = elitemind.key mychild.sentience_act() icon_state = "tumor_popped" - INVOKE_ASYNC(src, .proc/arena_checks) + INVOKE_ASYNC(src,PROC_REF(arena_checks)) /obj/structure/elite_tumor/proc/return_elite() mychild.forceMove(loc) @@ -240,11 +240,11 @@ While using this makes the system rely on OnFire, it still gives options for tim /obj/structure/elite_tumor/proc/arena_checks() if(activity != TUMOR_ACTIVE || QDELETED(src)) return - INVOKE_ASYNC(src, .proc/fighters_check) //Checks to see if our fighters died. - INVOKE_ASYNC(src, .proc/arena_trap) //Gets another arena trap queued up for when this one runs out. - INVOKE_ASYNC(src, .proc/border_check) //Checks to see if our fighters got out of the arena somehow. + INVOKE_ASYNC(src,PROC_REF(fighters_check)) //Checks to see if our fighters died. + INVOKE_ASYNC(src,PROC_REF(arena_trap)) //Gets another arena trap queued up for when this one runs out. + INVOKE_ASYNC(src,PROC_REF(border_check)) //Checks to see if our fighters got out of the arena somehow. if(!QDELETED(src)) - addtimer(CALLBACK(src, .proc/arena_checks), 50) + addtimer(CALLBACK(src,PROC_REF(arena_checks)), 50) /obj/structure/elite_tumor/proc/fighters_check() if(activator != null && activator.stat == DEAD || activity == TUMOR_ACTIVE && QDELETED(activator)) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/goliath_broodmother.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/goliath_broodmother.dm index 5820aa8eef2..d094760ac06 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/goliath_broodmother.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/goliath_broodmother.dm @@ -137,7 +137,7 @@ color = "#FF0000" set_varspeed(0) move_to_delay = 3 - addtimer(CALLBACK(src, .proc/reset_rage), 65) + addtimer(CALLBACK(src,PROC_REF(reset_rage)), 65) /mob/living/simple_animal/hostile/asteroid/elite/broodmother/proc/reset_rage() color = "#FFFFFF" @@ -214,11 +214,11 @@ retract() else deltimer(timerid) - timerid = addtimer(CALLBACK(src, .proc/retract), 10, TIMER_STOPPABLE) + timerid = addtimer(CALLBACK(src,PROC_REF(retract)), 10, TIMER_STOPPABLE) /obj/effect/temp_visual/goliath_tentacle/broodmother/patch/Initialize(mapload, new_spawner) . = ..() - INVOKE_ASYNC(src, .proc/do_spiral) // shitty hack because we don't do sleeps in init + INVOKE_ASYNC(src,PROC_REF(do_spiral)) // shitty hack because we don't do sleeps in init /obj/effect/temp_visual/goliath_tentacle/broodmother/patch/proc/do_spiral() var/tentacle_locs = spiral_range_turfs(1, get_turf(src)) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/herald.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/herald.dm index 9bac94986de..b363719ab16 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/herald.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/herald.dm @@ -52,7 +52,7 @@ /mob/living/simple_animal/hostile/asteroid/elite/herald/death() . = ..() if(!is_mirror) - addtimer(CALLBACK(src, .proc/become_ghost), 8) + addtimer(CALLBACK(src,PROC_REF(become_ghost)), 8) if(my_mirror) QDEL_NULL(my_mirror) @@ -143,13 +143,13 @@ var/target_turf = get_turf(target) var/angle_to_target = Get_Angle(src, target_turf) shoot_projectile(target_turf, angle_to_target, FALSE) - addtimer(CALLBACK(src, .proc/shoot_projectile, target_turf, angle_to_target, FALSE), 2) - addtimer(CALLBACK(src, .proc/shoot_projectile, target_turf, angle_to_target, FALSE), 4) + addtimer(CALLBACK(src,PROC_REF(shoot_projectile), target_turf, angle_to_target, FALSE), 2) + addtimer(CALLBACK(src,PROC_REF(shoot_projectile), target_turf, angle_to_target, FALSE), 4) if(health < maxHealth * 0.5) playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 20, TRUE) - addtimer(CALLBACK(src, .proc/shoot_projectile, target_turf, angle_to_target, FALSE), 10) - addtimer(CALLBACK(src, .proc/shoot_projectile, target_turf, angle_to_target, FALSE), 12) - addtimer(CALLBACK(src, .proc/shoot_projectile, target_turf, angle_to_target, FALSE), 14) + addtimer(CALLBACK(src,PROC_REF(shoot_projectile), target_turf, angle_to_target, FALSE), 10) + addtimer(CALLBACK(src,PROC_REF(shoot_projectile), target_turf, angle_to_target, FALSE), 12) + addtimer(CALLBACK(src,PROC_REF(shoot_projectile), target_turf, angle_to_target, FALSE), 14) /mob/living/simple_animal/hostile/asteroid/elite/herald/proc/herald_circleshot() var/static/list/directional_shot_angles = list(0, 45, 90, 135, 180, 225, 270, 315) @@ -166,11 +166,11 @@ if(!is_mirror) icon_state = "herald_enraged" playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 20, TRUE) - addtimer(CALLBACK(src, .proc/herald_circleshot), 5) + addtimer(CALLBACK(src,PROC_REF(herald_circleshot)), 5) if(health < maxHealth * 0.5) playsound(get_turf(src), 'sound/magic/clockwork/invoke_general.ogg', 20, TRUE) - addtimer(CALLBACK(src, .proc/herald_circleshot), 15) - addtimer(CALLBACK(src, .proc/unenrage), 20) + addtimer(CALLBACK(src,PROC_REF(herald_circleshot)), 15) + addtimer(CALLBACK(src,PROC_REF(unenrage)), 20) /mob/living/simple_animal/hostile/asteroid/elite/herald/proc/herald_teleshot(target) ranged_cooldown = world.time + 30 @@ -271,4 +271,4 @@ return owner.visible_message(span_danger("[owner]'s [src] emits a loud noise as [owner] is struck!")) playsound(get_turf(owner), 'sound/magic/clockwork/invoke_general.ogg', 20, TRUE) - addtimer(CALLBACK(src, .proc/reactionshot, owner), 10) + addtimer(CALLBACK(src,PROC_REF(reactionshot), owner), 10) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/legionnaire.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/legionnaire.dm index 48594bbdf4f..446b0bbb312 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/legionnaire.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/legionnaire.dm @@ -104,7 +104,7 @@ T = get_step(T, dir_to_target) playsound(src,'sound/magic/demon_attack1.ogg', 200, 1) visible_message(span_boldwarning("[src] prepares to charge!")) - addtimer(CALLBACK(src, .proc/legionnaire_charge_2, dir_to_target, 0), 5) + addtimer(CALLBACK(src,PROC_REF(legionnaire_charge_2), dir_to_target, 0), 5) /mob/living/simple_animal/hostile/asteroid/elite/legionnaire/proc/legionnaire_charge_2(move_dir, times_ran) if(times_ran >= 4) @@ -133,7 +133,7 @@ //L.Paralyze(20) L.Stun(20) //substituting this for the Paralyze from the line above, because we don't have tg paralysis stuff L.adjustBruteLoss(50) - addtimer(CALLBACK(src, .proc/legionnaire_charge_2, move_dir, (times_ran + 1)), 2) + addtimer(CALLBACK(src,PROC_REF(legionnaire_charge_2), move_dir, (times_ran + 1)), 2) /mob/living/simple_animal/hostile/asteroid/elite/legionnaire/proc/head_detach(target) ranged_cooldown = world.time + 10 @@ -161,7 +161,7 @@ /mob/living/simple_animal/hostile/asteroid/elite/legionnaire/proc/onHeadDeath() myhead = null - addtimer(CALLBACK(src, .proc/regain_head), 50) + addtimer(CALLBACK(src,PROC_REF(regain_head)), 50) /mob/living/simple_animal/hostile/asteroid/elite/legionnaire/proc/regain_head() has_head = TRUE diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/pandora.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/pandora.dm index 9f7ac6a4ad4..f23fc4de426 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/pandora.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/pandora.dm @@ -118,7 +118,7 @@ new /obj/effect/temp_visual/hierophant/blast/pandora(T, src, null, null, list(owner)) T = get_step(T, angleused) procsleft = procsleft - 1 - addtimer(CALLBACK(src, .proc/singular_shot_line, procsleft, angleused, T), 2) + addtimer(CALLBACK(src,PROC_REF(singular_shot_line), procsleft, angleused, T), 2) /mob/living/simple_animal/hostile/asteroid/elite/pandora/proc/magic_box(target) ranged_cooldown = world.time + cooldown_time @@ -134,7 +134,7 @@ new /obj/effect/temp_visual/hierophant/telegraph(T, src) new /obj/effect/temp_visual/hierophant/telegraph(source, src) playsound(source,'sound/machines/airlockopen.ogg', 200, 1) - addtimer(CALLBACK(src, .proc/pandora_teleport_2, T, source), 2) + addtimer(CALLBACK(src,PROC_REF(pandora_teleport_2), T, source), 2) /mob/living/simple_animal/hostile/asteroid/elite/pandora/proc/pandora_teleport_2(turf/T, turf/source) new /obj/effect/temp_visual/hierophant/telegraph/teleport(T, src) @@ -146,7 +146,7 @@ animate(src, alpha = 0, time = 2, easing = EASE_OUT) //fade out visible_message(span_hierophant_warning("[src] fades out!")) density = FALSE - addtimer(CALLBACK(src, .proc/pandora_teleport_3, T), 2) + addtimer(CALLBACK(src,PROC_REF(pandora_teleport_3), T), 2) /mob/living/simple_animal/hostile/asteroid/elite/pandora/proc/pandora_teleport_3(turf/T) forceMove(T) @@ -159,7 +159,7 @@ var/turf/T = get_turf(target) new /obj/effect/temp_visual/hierophant/blast/pandora(T, src, null, null, list(owner)) var/max_size = 2 - addtimer(CALLBACK(src, .proc/aoe_squares_2, T, 0, max_size), 2) + addtimer(CALLBACK(src,PROC_REF(aoe_squares_2), T, 0, max_size), 2) /mob/living/simple_animal/hostile/asteroid/elite/pandora/proc/aoe_squares_2(turf/T, ring, max_size) if(ring > max_size) @@ -167,7 +167,7 @@ for(var/t in spiral_range_turfs(ring, T)) if(get_dist(t, T) == ring) new /obj/effect/temp_visual/hierophant/blast/pandora(t, src, null, null, list(owner)) - addtimer(CALLBACK(src, .proc/aoe_squares_2, T, (ring + 1), max_size), 2) + addtimer(CALLBACK(src,PROC_REF(aoe_squares_2), T, (ring + 1), max_size), 2) //The specific version of hiero's squares pandora uses /obj/effect/temp_visual/hierophant/blast/pandora diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goldgrub.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goldgrub.dm index 4d8367fb57b..2143a0fdd38 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goldgrub.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goldgrub.dm @@ -55,7 +55,7 @@ retreat_distance = 10 minimum_distance = 10 if(will_burrow) - addtimer(CALLBACK(src, .proc/Burrow), chase_time) + addtimer(CALLBACK(src,PROC_REF(Burrow)), chase_time) /mob/living/simple_animal/hostile/asteroid/goldgrub/AttackingTarget() var/atom/my_target = get_target() diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm index a72a46f2520..98f0ffa4aee 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/goliath.dm @@ -162,7 +162,7 @@ var/turf/closed/mineral/M = loc M.gets_drilled() deltimer(timerid) - timerid = addtimer(CALLBACK(src, .proc/tripanim), 7, TIMER_STOPPABLE) + timerid = addtimer(CALLBACK(src,PROC_REF(tripanim)), 7, TIMER_STOPPABLE) /obj/effect/temp_visual/goliath_tentacle/original/Initialize(mapload) . = ..() @@ -176,7 +176,7 @@ /obj/effect/temp_visual/goliath_tentacle/proc/tripanim() icon_state = "Goliath_tentacle_wiggle" deltimer(timerid) - timerid = addtimer(CALLBACK(src, .proc/trip), 3, TIMER_STOPPABLE) + timerid = addtimer(CALLBACK(src,PROC_REF(trip)), 3, TIMER_STOPPABLE) /obj/effect/temp_visual/goliath_tentacle/proc/trip() var/latched = FALSE @@ -198,7 +198,7 @@ retract() else deltimer(timerid) - timerid = addtimer(CALLBACK(src, .proc/retract), 10, TIMER_STOPPABLE) + timerid = addtimer(CALLBACK(src,PROC_REF(retract)), 10, TIMER_STOPPABLE) /obj/effect/temp_visual/goliath_tentacle/proc/retract() icon_state = "Goliath_tentacle_retract" diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm index af70d71d924..c613205c1c1 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/hivelord.dm @@ -93,7 +93,7 @@ . = ..() if(swarming) AddComponent(/datum/component/swarming) //oh god not the bees - addtimer(CALLBACK(src, .proc/death), 100) + addtimer(CALLBACK(src,PROC_REF(death)), 100) //Legion /mob/living/simple_animal/hostile/asteroid/hivelord/legion @@ -161,7 +161,7 @@ return stored_mob = prefbreak prefbreak.forceMove(src) - RegisterSignal(prefbreak, COMSIG_PARENT_QDELETING, .proc/squirt_mob) + RegisterSignal(prefbreak, COMSIG_PARENT_QDELETING,PROC_REF(squirt_mob)) /mob/living/simple_animal/hostile/asteroid/hivelord/legion/proc/squirt_mob() visible_message(span_warning("The skulls on [src] wail in anger as they flee from their dying host!")) diff --git a/code/modules/mob/living/simple_animal/hostile/mining_mobs/necropolis_tendril.dm b/code/modules/mob/living/simple_animal/hostile/mining_mobs/necropolis_tendril.dm index 51718a4bc54..f9350e21a3a 100644 --- a/code/modules/mob/living/simple_animal/hostile/mining_mobs/necropolis_tendril.dm +++ b/code/modules/mob/living/simple_animal/hostile/mining_mobs/necropolis_tendril.dm @@ -79,7 +79,7 @@ visible_message(span_boldannounce("The tendril writhes in fury as the earth around it begins to crack and break apart! Get back!")) visible_message(span_warning("Something falls free of the tendril!")) playsound(loc,'sound/effects/tendril_destroyed.ogg', 200, 0, 50, 1, 1) - addtimer(CALLBACK(src, .proc/collapse), 50) + addtimer(CALLBACK(src,PROC_REF(collapse)), 50) /obj/effect/collapse/Destroy() QDEL_NULL(emitted_light) diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm index d693759f69e..1a3daabfc30 100644 --- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm +++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm @@ -89,7 +89,7 @@ /mob/living/simple_animal/hostile/mushroom/adjustHealth(amount, updating_health = TRUE, forced = FALSE) //Possibility to flee from a fight just to make it more visually interesting if(!retreat_distance && prob(33)) retreat_distance = 5 - addtimer(CALLBACK(src, .proc/stop_retreat), 30) + addtimer(CALLBACK(src,PROC_REF(stop_retreat)), 30) . = ..() /mob/living/simple_animal/hostile/mushroom/proc/stop_retreat() @@ -138,7 +138,7 @@ revive(full_heal = 1) UpdateMushroomCap() recovery_cooldown = 1 - addtimer(CALLBACK(src, .proc/recovery_recharge), 300) + addtimer(CALLBACK(src,PROC_REF(recovery_recharge)), 300) /mob/living/simple_animal/hostile/mushroom/proc/recovery_recharge() recovery_cooldown = 0 diff --git a/code/modules/mob/living/simple_animal/hostile/regalrat.dm b/code/modules/mob/living/simple_animal/hostile/regalrat.dm index 8fb7ff34ec9..6b900c60028 100644 --- a/code/modules/mob/living/simple_animal/hostile/regalrat.dm +++ b/code/modules/mob/living/simple_animal/hostile/regalrat.dm @@ -39,7 +39,7 @@ coffer.Grant(src) riot = new /datum/action/cooldown/riot riot.Grant(src) - INVOKE_ASYNC(src, .proc/get_player) + INVOKE_ASYNC(src,PROC_REF(get_player)) /mob/living/simple_animal/hostile/regalrat/proc/get_player() var/list/mob/dead/observer/candidates = pollGhostCandidates("Do you want to play as the Royal Rat, cheesey be his crown?", ROLE_SENTIENCE, null, FALSE, 100, POLL_IGNORE_SENTIENCE_POTION) @@ -381,4 +381,4 @@ /mob/living/simple_animal/hostile/rat/skitter/curious/frenly/Initialize() . = ..() - addtimer(CALLBACK(src, .proc/death), 50 SECONDS) + addtimer(CALLBACK(src,PROC_REF(death)), 50 SECONDS) diff --git a/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm b/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm index f66b05cd16e..2f556937883 100644 --- a/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm +++ b/code/modules/mob/living/simple_animal/hostile/venus_human_trap.dm @@ -21,7 +21,7 @@ for(var/turf/T in anchors) var/datum/beam/B = Beam(T, "vine", time=INFINITY, maxdistance=5, beam_type=/obj/effect/ebeam/vine) B.sleep_time = 10 //these shouldn't move, so let's slow down updates to 1 second (any slower and the deletion of the vines would be too slow) - addtimer(CALLBACK(src, .proc/bear_fruit), growth_time) + addtimer(CALLBACK(src,PROC_REF(bear_fruit)), growth_time) /** * Spawns a venus human trap, then qdels itself. @@ -41,7 +41,7 @@ /obj/effect/ebeam/vine/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -141,7 +141,7 @@ return var/datum/beam/newVine = Beam(the_target, "vine", time=INFINITY, maxdistance = vine_grab_distance, beam_type=/obj/effect/ebeam/vine) - RegisterSignal(newVine, COMSIG_PARENT_QDELETING, .proc/remove_vine, newVine) + RegisterSignal(newVine, COMSIG_PARENT_QDELETING,PROC_REF(remove_vine), newVine) vines += newVine if(isliving(the_target)) var/mob/living/L = the_target diff --git a/code/modules/mob/living/simple_animal/hostile/zombie.dm b/code/modules/mob/living/simple_animal/hostile/zombie.dm index 13bf5b80d4f..9101033d33a 100644 --- a/code/modules/mob/living/simple_animal/hostile/zombie.dm +++ b/code/modules/mob/living/simple_animal/hostile/zombie.dm @@ -27,7 +27,7 @@ /mob/living/simple_animal/hostile/zombie/Initialize(mapload) . = ..() - INVOKE_ASYNC(src, .proc/setup_visuals) + INVOKE_ASYNC(src,PROC_REF(setup_visuals)) /mob/living/simple_animal/hostile/zombie/proc/setup_visuals() var/datum/preferences/dummy_prefs = new diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 637d6ba069c..1f4fc9d21a8 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -346,7 +346,7 @@ GLOBAL_LIST_EMPTY(playmob_cooldowns) . = ..() if(can_ghost_into) AddElement(/datum/element/ghost_role_eligibility, free_ghosting = FALSE, penalize_on_ghost = TRUE) - RegisterSignal(src, COMSIG_HOSTILE_CHECK_FACTION, .proc/infight_check) + RegisterSignal(src, COMSIG_HOSTILE_CHECK_FACTION,PROC_REF(infight_check)) /mob/living/simple_animal/proc/infight_check(mob/living/simple_animal/H) if(SSmobs.debug_disable_mob_ceasefire) @@ -450,7 +450,7 @@ GLOBAL_LIST_EMPTY(playmob_cooldowns) can_ghost_into = TRUE AddElement(/datum/element/ghost_role_eligibility, free_ghosting = TRUE, penalize_on_ghost = FALSE) LAZYADD(GLOB.mob_spawners[initial(name)], src) - RegisterSignal(src, COMSIG_MOB_GHOSTIZE_FINAL, .proc/set_ghost_timeout) + RegisterSignal(src, COMSIG_MOB_GHOSTIZE_FINAL,PROC_REF(set_ghost_timeout)) if(istype(user)) lazarused = TRUE lazarused_by = WEAKREF(user) @@ -714,7 +714,7 @@ GLOBAL_LIST_EMPTY(playmob_cooldowns) if(death_sound) playsound(get_turf(src),death_sound, 200, ignore_walls = TRUE, vary = FALSE, frequency = SOUND_FREQ_NORMALIZED(sound_pitch, vary_pitches[1], vary_pitches[2])) if(deathmessage || !del_on_death) - INVOKE_ASYNC(src, .proc/emote, "deathgasp") + INVOKE_ASYNC(src,PROC_REF(emote), "deathgasp") if(del_on_death) ..(gibbed) // if(prob(del_on_death*100)) diff --git a/code/modules/mob/living/simple_animal/slime/life.dm b/code/modules/mob/living/simple_animal/slime/life.dm index b983c9bef51..fd1d7eb5998 100644 --- a/code/modules/mob/living/simple_animal/slime/life.dm +++ b/code/modules/mob/living/simple_animal/slime/life.dm @@ -388,7 +388,7 @@ else if(CHECK_MOBILITY(src, MOBILITY_MOVE) && isturf(loc) && prob(33)) step(src, pick(GLOB.cardinals)) else if(!AIproc) - INVOKE_ASYNC(src, .proc/AIprocess) + INVOKE_ASYNC(src,PROC_REF(AIprocess)) /mob/living/simple_animal/slime/handle_automated_movement() return //slime random movement is currently handled in handle_targets() diff --git a/code/modules/mob/living/status_procs.dm b/code/modules/mob/living/status_procs.dm index 6a7e1195f73..683e5131bef 100644 --- a/code/modules/mob/living/status_procs.dm +++ b/code/modules/mob/living/status_procs.dm @@ -643,7 +643,7 @@ if(stat == DEAD) return if(!silent) - INVOKE_ASYNC(src, .proc/emote, "deathgasp") + INVOKE_ASYNC(src,PROC_REF(emote), "deathgasp") ADD_TRAIT(src, TRAIT_FAKEDEATH, source) ADD_TRAIT(src, TRAIT_DEATHCOMA, source) tod = STATION_TIME_TIMESTAMP("hh:mm:ss", world.time) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index adc2f1d16b4..c4a3bf39eef 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -390,8 +390,8 @@ mob/visible_message(message, self_message, blind_message, vision_distance = DEFA if(isnull(client.recent_examines[A]) || client.recent_examines[A] < world.time) result = A.examine(src) client.recent_examines[A] = world.time + EXAMINE_MORE_TIME // set the value to when the examine cooldown ends - RegisterSignal(A, COMSIG_PARENT_QDELETING, .proc/clear_from_recent_examines, override=TRUE) // to flush the value if deleted early - addtimer(CALLBACK(src, .proc/clear_from_recent_examines, A), EXAMINE_MORE_TIME) + RegisterSignal(A, COMSIG_PARENT_QDELETING,PROC_REF(clear_from_recent_examines), override=TRUE) // to flush the value if deleted early + addtimer(CALLBACK(src,PROC_REF(clear_from_recent_examines), A), EXAMINE_MORE_TIME) handle_eye_contact(A) else result = A.examine_more(src) diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index f9c9b880057..a5028dbacbf 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -11,7 +11,7 @@ if(!length(message)) return if(!findtext(message, "*")) //this is used to abort the play_AC_typing_indicator() in case someone is using an emote. - INVOKE_ASYNC(src, .proc/play_AC_typing_indicator, message) + INVOKE_ASYNC(src,PROC_REF(play_AC_typing_indicator), message) if(is_autowhisper) return whisper_verb(message) return say_verb(message) @@ -29,7 +29,7 @@ return clear_typing_indicator() if(!findtext(message, "*")) //this is used to abort the play_AC_typing_indicator() in case someone is using an emote. - INVOKE_ASYNC(src, .proc/play_AC_typing_indicator, message) + INVOKE_ASYNC(src,PROC_REF(play_AC_typing_indicator), message) say(message) /mob/verb/me_typing_indicator() diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm index 2b7a2bbb6b7..bd3749128ac 100644 --- a/code/modules/mob/transform_procs.dm +++ b/code/modules/mob/transform_procs.dm @@ -19,7 +19,7 @@ new /obj/effect/temp_visual/monkeyify(loc) - transformation_timer = addtimer(CALLBACK(src, .proc/finish_monkeyize, tr_flags), TRANSFORMATION_DURATION, TIMER_UNIQUE) + transformation_timer = addtimer(CALLBACK(src,PROC_REF(finish_monkeyize), tr_flags), TRANSFORMATION_DURATION, TIMER_UNIQUE) /mob/living/carbon/proc/finish_monkeyize(tr_flags) transformation_timer = null @@ -175,7 +175,7 @@ invisibility = INVISIBILITY_MAXIMUM new /obj/effect/temp_visual/monkeyify/humanify(loc) - transformation_timer = addtimer(CALLBACK(src, .proc/finish_humanize, tr_flags), TRANSFORMATION_DURATION, TIMER_UNIQUE) + transformation_timer = addtimer(CALLBACK(src,PROC_REF(finish_humanize), tr_flags), TRANSFORMATION_DURATION, TIMER_UNIQUE) /mob/living/carbon/proc/finish_humanize(tr_flags) transformation_timer = null diff --git a/code/modules/mob/typing_indicator.dm b/code/modules/mob/typing_indicator.dm index e06ed299b5a..b80d490b5d4 100644 --- a/code/modules/mob/typing_indicator.dm +++ b/code/modules/mob/typing_indicator.dm @@ -36,7 +36,7 @@ GLOBAL_LIST_EMPTY(typing_indicator_overlays) return typing_indicator_current = state_override add_overlay(state_override) - typing_indicator_timerid = addtimer(CALLBACK(src, .proc/clear_typing_indicator), timeout_override, TIMER_STOPPABLE) + typing_indicator_timerid = addtimer(CALLBACK(src,PROC_REF(clear_typing_indicator)), timeout_override, TIMER_STOPPABLE) /** * Removes typing indicator. diff --git a/code/modules/modular_computers/laptop_vendor.dm b/code/modules/modular_computers/laptop_vendor.dm index a81d9e32180..17a69b65b4e 100644 --- a/code/modules/modular_computers/laptop_vendor.dm +++ b/code/modules/modular_computers/laptop_vendor.dm @@ -305,6 +305,6 @@ credits -= total_price say("Enjoy your new product!") state = 3 - addtimer(CALLBACK(src, .proc/reset_order), 100) + addtimer(CALLBACK(src,PROC_REF(reset_order)), 100) return TRUE return FALSE diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm index d8fc1a62c9f..565d4b69d24 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_adrenaline.dm @@ -11,7 +11,7 @@ a_boost-- to_chat(H, span_notice("There are [a_boost] adrenaline boosts remaining.")) s_coold = 3 - addtimer(CALLBACK(src, .proc/ninjaboost_after), 70) + addtimer(CALLBACK(src,PROC_REF(ninjaboost_after)), 70) /obj/item/clothing/suit/space/space_ninja/proc/ninjaboost_after() var/mob/living/carbon/human/H = affecting diff --git a/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm b/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm index fc4c318a98f..33ebc58e11d 100644 --- a/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm +++ b/code/modules/ninja/suit/n_suit_verbs/ninja_stealth.dm @@ -21,13 +21,13 @@ Contents: animate(affecting, alpha = 15, time = 3 SECONDS) affecting.visible_message(span_warning("[affecting.name] vanishes into thin air!"), \ span_notice("You are now mostly invisible to normal detection.")) - addtimer(CALLBACK(src, .proc/enable_signals), 3 SECONDS) + addtimer(CALLBACK(src,PROC_REF(enable_signals)), 3 SECONDS) /obj/item/clothing/suit/space/space_ninja/proc/enable_signals() if(!affecting) return - RegisterSignal(affecting, list(COMSIG_MOB_ITEM_ATTACK, COMSIG_MOB_ATTACK_RANGED, COMSIG_HUMAN_MELEE_UNARMED_ATTACK, COMSIG_MOB_ATTACK_HAND, COMSIG_MOB_THROW, COMSIG_PARENT_ATTACKBY, COMSIG_MOVABLE_TELEPORTED, COMSIG_LIVING_GUN_PROCESS_FIRE), .proc/reduce_stealth) - RegisterSignal(affecting, COMSIG_MOVABLE_BUMP, .proc/bumping_stealth) + RegisterSignal(affecting, list(COMSIG_MOB_ITEM_ATTACK, COMSIG_MOB_ATTACK_RANGED, COMSIG_HUMAN_MELEE_UNARMED_ATTACK, COMSIG_MOB_ATTACK_HAND, COMSIG_MOB_THROW, COMSIG_PARENT_ATTACKBY, COMSIG_MOVABLE_TELEPORTED, COMSIG_LIVING_GUN_PROCESS_FIRE),PROC_REF(reduce_stealth)) + RegisterSignal(affecting, COMSIG_MOVABLE_BUMP,PROC_REF(bumping_stealth)) /obj/item/clothing/suit/space/space_ninja/proc/reduce_stealth(datum/source) affecting.alpha = min(affecting.alpha + 40, 100) diff --git a/code/modules/ninja/suit/suit_initialisation.dm b/code/modules/ninja/suit/suit_initialisation.dm index 481ca21ef5c..1590d9a4158 100644 --- a/code/modules/ninja/suit/suit_initialisation.dm +++ b/code/modules/ninja/suit/suit_initialisation.dm @@ -13,18 +13,18 @@ return //Not sure how this could happen. s_busy = TRUE to_chat(U, span_notice("Now initializing...")) - addtimer(CALLBACK(src, .proc/ninitialize_two, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(ninitialize_two), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/ninitialize_two(delay, mob/living/carbon/human/U) if(!lock_suit(U))//To lock the suit onto wearer. s_busy = FALSE return to_chat(U, span_notice("Securing external locking mechanism...\nNeural-net established.")) - addtimer(CALLBACK(src, .proc/ninitialize_three, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(ninitialize_three), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/ninitialize_three(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Extending neural-net interface...\nNow monitoring brain wave pattern...")) - addtimer(CALLBACK(src, .proc/ninitialize_four, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(ninitialize_four), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/ninitialize_four(delay, mob/living/carbon/human/U) if(U.stat == DEAD|| U.health <= 0) @@ -35,15 +35,15 @@ lockIcons(U)//Check for icons. U.regenerate_icons() to_chat(U, span_notice("Linking neural-net interface...\nPattern
\green GREEN, continuing operation.")) - addtimer(CALLBACK(src, .proc/ninitialize_five, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(ninitialize_five), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/ninitialize_five(delay, mob/living/carbon/human/U) to_chat(U, span_notice("VOID-shift device status: ONLINE.\nCLOAK-tech device status: ONLINE.")) - addtimer(CALLBACK(src, .proc/ninitialize_six, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(ninitialize_six), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/ninitialize_six(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Primary system status: ONLINE.\nBackup system status: ONLINE.\nCurrent energy capacity: [DisplayEnergy(cell.charge)].")) - addtimer(CALLBACK(src, .proc/ninitialize_seven, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(ninitialize_seven), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/ninitialize_seven(delay, mob/living/carbon/human/U) to_chat(U, span_notice("All systems operational. Welcome to SpiderOS, [U.real_name].")) @@ -59,32 +59,32 @@ if(alert("Are you certain you wish to remove the suit? This will take time and remove all abilities.",,"Yes","No")=="No") return s_busy = TRUE - addtimer(CALLBACK(src, .proc/deinitialize_two, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(deinitialize_two), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/deinitialize_two(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Now de-initializing...")) - addtimer(CALLBACK(src, .proc/deinitialize_three, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(deinitialize_three), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/deinitialize_three(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Logging off, [U.real_name]. Shutting down SpiderOS.")) - addtimer(CALLBACK(src, .proc/deinitialize_four, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(deinitialize_four), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/deinitialize_four(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Primary system status: OFFLINE.\nBackup system status: OFFLINE.")) - addtimer(CALLBACK(src, .proc/deinitialize_five, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(deinitialize_five), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/deinitialize_five(delay, mob/living/carbon/human/U) to_chat(U, span_notice("VOID-shift device status: OFFLINE.\nCLOAK-tech device status: OFFLINE.")) cancel_stealth()//Shutdowns stealth. - addtimer(CALLBACK(src, .proc/deinitialize_six, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(deinitialize_six), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/deinitialize_six(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Disconnecting neural-net interface...\greenSuccess.")) - addtimer(CALLBACK(src, .proc/deinitialize_seven, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(deinitialize_seven), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/deinitialize_seven(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Disengaging neural-net interface...\greenSuccess.")) - addtimer(CALLBACK(src, .proc/deinitialize_eight, delay, U), delay) + addtimer(CALLBACK(src,PROC_REF(deinitialize_eight), delay, U), delay) /obj/item/clothing/suit/space/space_ninja/proc/deinitialize_eight(delay, mob/living/carbon/human/U) to_chat(U, span_notice("Unsecuring external locking mechanism...\nNeural-net abolished.\nOperation status: FINISHED.")) diff --git a/code/modules/paperwork/photocopier.dm b/code/modules/paperwork/photocopier.dm index 7c916bfd414..76854c63184 100644 --- a/code/modules/paperwork/photocopier.dm +++ b/code/modules/paperwork/photocopier.dm @@ -97,23 +97,23 @@ return FALSE // Basic paper if(istype(paper_copy, /obj/item/paper)) - do_copy_loop(CALLBACK(src, .proc/make_paper_copy), usr) + do_copy_loop(CALLBACK(src,PROC_REF(make_paper_copy)), usr) return TRUE // Devil contract paper. if(istype(paper_copy, /obj/item/paper/contract/employment)) - do_copy_loop(CALLBACK(src, .proc/make_devil_paper_copy), usr) + do_copy_loop(CALLBACK(src,PROC_REF(make_devil_paper_copy)), usr) return TRUE // Copying photo. if(photo_copy) - do_copy_loop(CALLBACK(src, .proc/make_photo_copy), usr) + do_copy_loop(CALLBACK(src,PROC_REF(make_photo_copy)), usr) return TRUE // Copying Documents. if(document_copy) - do_copy_loop(CALLBACK(src, .proc/make_document_copy), usr) + do_copy_loop(CALLBACK(src,PROC_REF(make_document_copy)), usr) return TRUE // ASS COPY. By Miauw if(ass) - do_copy_loop(CALLBACK(src, .proc/make_ass_copy), usr) + do_copy_loop(CALLBACK(src,PROC_REF(make_ass_copy)), usr) return TRUE // Remove the paper/photo/document from the photocopier. @@ -193,7 +193,7 @@ // break addtimer(copy_cb, i SECONDS) num_loops++ - addtimer(CALLBACK(src, .proc/reset_busy), num_loops SECONDS) + addtimer(CALLBACK(src,PROC_REF(reset_busy)), num_loops SECONDS) /** * Sets busy to `FALSE`. Created as a proc so it can be used in callbacks. diff --git a/code/modules/paperwork/ticketmachine.dm b/code/modules/paperwork/ticketmachine.dm index bf3798fa733..7727e43042c 100644 --- a/code/modules/paperwork/ticketmachine.dm +++ b/code/modules/paperwork/ticketmachine.dm @@ -165,7 +165,7 @@ /obj/machinery/ticket_machine/attack_hand(mob/living/carbon/user) . = ..() - INVOKE_ASYNC(src, .proc/attempt_ticket, user) + INVOKE_ASYNC(src,PROC_REF(attempt_ticket), user) /obj/machinery/ticket_machine/proc/attempt_ticket(mob/living/carbon/user) if(!ready) @@ -192,7 +192,7 @@ tickets += theirticket if(obj_flags & EMAGGED) //Emag the machine to destroy the HOP's life. ready = FALSE - addtimer(CALLBACK(src, .proc/reset_cooldown), cooldown)//Small cooldown to prevent piles of flaming tickets + addtimer(CALLBACK(src,PROC_REF(reset_cooldown)), cooldown)//Small cooldown to prevent piles of flaming tickets theirticket.fire_act() user.dropItemToGround(theirticket) user.adjust_fire_stacks(1) diff --git a/code/modules/photography/camera/camera.dm b/code/modules/photography/camera/camera.dm index 3adcdb7709a..f7fe7222e81 100644 --- a/code/modules/photography/camera/camera.dm +++ b/code/modules/photography/camera/camera.dm @@ -130,11 +130,11 @@ var/mob/living/carbon/human/H = user if (HAS_TRAIT(H, TRAIT_PHOTOGRAPHER)) realcooldown *= 0.5 - addtimer(CALLBACK(src, .proc/cooldown), realcooldown) + addtimer(CALLBACK(src,PROC_REF(cooldown)), realcooldown) icon_state = state_off - INVOKE_ASYNC(src, .proc/captureimage, target, user, flag, picture_size_x - 1, picture_size_y - 1) + INVOKE_ASYNC(src,PROC_REF(captureimage), target, user, flag, picture_size_x - 1, picture_size_y - 1) /obj/item/camera/proc/cooldown() diff --git a/code/modules/plumbing/plumbers/_plumb_machinery.dm b/code/modules/plumbing/plumbers/_plumb_machinery.dm index a1810070c33..6ee1f3fe63b 100644 --- a/code/modules/plumbing/plumbers/_plumb_machinery.dm +++ b/code/modules/plumbing/plumbers/_plumb_machinery.dm @@ -26,7 +26,7 @@ . = ..() anchored = bolt create_reagents(buffer, reagent_flags) - 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/plumbing/proc/can_be_rotated(mob/user,rotation_type) return TRUE diff --git a/code/modules/plumbing/plumbers/autohydro.dm b/code/modules/plumbing/plumbers/autohydro.dm index 4d10ce4f5ed..1372b2c1d9f 100644 --- a/code/modules/plumbing/plumbers/autohydro.dm +++ b/code/modules/plumbing/plumbers/autohydro.dm @@ -34,7 +34,7 @@ /obj/machinery/hydroponics/constructable/automagic/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) diff --git a/code/modules/plumbing/plumbers/fermenter.dm b/code/modules/plumbing/plumbers/fermenter.dm index d8fdd05bdcd..616769b8c09 100644 --- a/code/modules/plumbing/plumbers/fermenter.dm +++ b/code/modules/plumbing/plumbers/fermenter.dm @@ -41,14 +41,14 @@ if(move_dir == eat_dir) return TRUE var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) /obj/machinery/plumbing/fermenter/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/ferment, AM) + INVOKE_ASYNC(src,PROC_REF(ferment), AM) /obj/machinery/plumbing/fermenter/proc/ferment(atom/AM) if(stat & NOPOWER) diff --git a/code/modules/plumbing/plumbers/grinder_chemical.dm b/code/modules/plumbing/plumbers/grinder_chemical.dm index 6a52cd4fac7..3826ed1a9a5 100644 --- a/code/modules/plumbing/plumbers/grinder_chemical.dm +++ b/code/modules/plumbing/plumbers/grinder_chemical.dm @@ -14,7 +14,7 @@ . = ..() AddComponent(/datum/component/plumbing/simple_supply, bolt) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -46,7 +46,7 @@ /obj/machinery/plumbing/grinder_chemical/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER - INVOKE_ASYNC(src, .proc/grind, AM) + INVOKE_ASYNC(src,PROC_REF(grind), AM) /obj/machinery/plumbing/grinder_chemical/proc/grind(atom/AM) if(stat & NOPOWER) diff --git a/code/modules/plumbing/plumbers/medipenrefill.dm b/code/modules/plumbing/plumbers/medipenrefill.dm index 33714eeb9c4..52ab98c07d8 100644 --- a/code/modules/plumbing/plumbers/medipenrefill.dm +++ b/code/modules/plumbing/plumbers/medipenrefill.dm @@ -57,7 +57,7 @@ if(reagents.has_reagent(allowed[P.type], 10)) busy = TRUE add_overlay("active") - addtimer(CALLBACK(src, .proc/refill, P, user), 20) + addtimer(CALLBACK(src,PROC_REF(refill), P, user), 20) qdel(P) return to_chat(user, span_danger("There aren't enough reagents to finish this operation.")) diff --git a/code/modules/pool/pool_structures.dm b/code/modules/pool/pool_structures.dm index 179f607f806..417fbd27d90 100644 --- a/code/modules/pool/pool_structures.dm +++ b/code/modules/pool/pool_structures.dm @@ -77,7 +77,7 @@ jumper.AddElement(/datum/element/swimming) sleep(1) jumper.forceMove(T) - addtimer(CALLBACK(src, .proc/dive, jumper, original_layer, original_px, original_py), 10) + addtimer(CALLBACK(src,PROC_REF(dive), jumper, original_layer, original_px, original_py), 10) /obj/structure/pool/Lboard/proc/dive(mob/living/carbon/jumper, original_layer, original_px, original_py) switch(rand(1, 100)) @@ -87,7 +87,7 @@ sleep(15) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 1, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) + jumper.throw_at(throw_target, 1, 1, callback = CALLBACK(src,PROC_REF(on_finish_jump), jumper)) if(21 to 40) jumper.visible_message(span_notice("[jumper] goes for a dive!"), \ @@ -95,7 +95,7 @@ sleep(20) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 2, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) + jumper.throw_at(throw_target, 2, 1, callback = CALLBACK(src,PROC_REF(on_finish_jump), jumper)) if(41 to 60) jumper.visible_message(span_notice("[jumper] goes for a long dive! Stay far away!"), \ @@ -103,7 +103,7 @@ sleep(25) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 3, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) + jumper.throw_at(throw_target, 3, 1, callback = CALLBACK(src,PROC_REF(on_finish_jump), jumper)) if(61 to 80) jumper.visible_message(span_notice("[jumper] goes for an awesome dive! Don't stand in [jumper.p_their()] way!"), \ @@ -111,14 +111,14 @@ sleep(30) backswim() var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 4, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) + jumper.throw_at(throw_target, 4, 1, callback = CALLBACK(src,PROC_REF(on_finish_jump), jumper)) if(81 to 91) sleep(20) backswim() jumper.visible_message(span_danger("[jumper] misses [jumper.p_their()] step!"), \ span_userdanger("You misstep!")) var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 0, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) + jumper.throw_at(throw_target, 0, 1, callback = CALLBACK(src,PROC_REF(on_finish_jump), jumper)) jumper.DefaultCombatKnockdown(100) jumper.adjustBruteLoss(10) @@ -133,7 +133,7 @@ jumper.visible_message(span_notice("[jumper] fails!"), \ span_userdanger("You can't quite do it!")) var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 1, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) + jumper.throw_at(throw_target, 1, 1, callback = CALLBACK(src,PROC_REF(on_finish_jump), jumper)) else jumper.fire_stacks = min(1,jumper.fire_stacks + 1) jumper.IgniteMob() @@ -142,8 +142,8 @@ jumper.visible_message(span_danger("[jumper] bursts into flames of pure awesomness!"), \ span_userdanger("No one can stop you now!")) var/atom/throw_target = get_edge_target_turf(src, dir) - jumper.throw_at(throw_target, 6, 1, callback = CALLBACK(src, .proc/on_finish_jump, jumper)) - addtimer(CALLBACK(src, .proc/togglejumping), 35) + jumper.throw_at(throw_target, 6, 1, callback = CALLBACK(src,PROC_REF(on_finish_jump), jumper)) + addtimer(CALLBACK(src,PROC_REF(togglejumping)), 35) reset_position(jumper, original_layer, original_px, original_py) /obj/structure/pool/Lboard/proc/togglejumping() diff --git a/code/modules/power/antimatter/control.dm b/code/modules/power/antimatter/control.dm index d66f14009b3..fc065873eee 100644 --- a/code/modules/power/antimatter/control.dm +++ b/code/modules/power/antimatter/control.dm @@ -250,7 +250,7 @@ else for(var/obj/machinery/am_shielding/AMS in linked_shielding) AMS.update_icon() - addtimer(CALLBACK(src, .proc/reset_shield_icon_delay), 20) + addtimer(CALLBACK(src,PROC_REF(reset_shield_icon_delay)), 20) /obj/machinery/power/am_control_unit/proc/reset_shield_icon_delay() shield_icon_delay = 0 @@ -263,7 +263,7 @@ for(var/obj/machinery/am_shielding/AMS in linked_cores) stored_core_stability += AMS.stability stored_core_stability/=linked_cores.len - addtimer(CALLBACK(src, .proc/reset_stored_core_stability_delay), 40) + addtimer(CALLBACK(src,PROC_REF(reset_stored_core_stability_delay)), 40) /obj/machinery/power/am_control_unit/proc/reset_stored_core_stability_delay() stored_core_stability_delay = 0 diff --git a/code/modules/power/antimatter/shielding.dm b/code/modules/power/antimatter/shielding.dm index b5ef5829153..1348f455f39 100644 --- a/code/modules/power/antimatter/shielding.dm +++ b/code/modules/power/antimatter/shielding.dm @@ -30,7 +30,7 @@ /obj/machinery/am_shielding/Initialize() . = ..() - addtimer(CALLBACK(src, .proc/controllerscan), 10) + addtimer(CALLBACK(src,PROC_REF(controllerscan)), 10) /obj/machinery/am_shielding/proc/overheat() visible_message(span_danger("[src] melts!")) @@ -65,7 +65,7 @@ if(!control_unit) if(!priorscan) - addtimer(CALLBACK(src, .proc/controllerscan, 1), 20) + addtimer(CALLBACK(src,PROC_REF(controllerscan), 1), 20) return collapse() diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 8cac8e7ef68..4b69d89a151 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -188,7 +188,7 @@ name = "\improper [A.name] APC" stat |= MAINT update_icon() - addtimer(CALLBACK(src, .proc/update), 5) + addtimer(CALLBACK(src,PROC_REF(update)), 5) GLOB.apcs_list += src @@ -1462,7 +1462,7 @@ environ = 0 update_icon() update() - addtimer(CALLBACK(src, .proc/reset, APC_RESET_EMP), severity*8) + addtimer(CALLBACK(src,PROC_REF(reset), APC_RESET_EMP), severity*8) /obj/machinery/power/apc/blob_act(obj/structure/blob/B) set_broken() @@ -1489,7 +1489,7 @@ return if( cell && cell.charge>=20) cell.use(20) - INVOKE_ASYNC(src, .proc/break_lights) + INVOKE_ASYNC(src,PROC_REF(break_lights)) /obj/machinery/power/apc/proc/break_lights() for(var/obj/machinery/light/L in area) diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 1a7302453c9..12d5a69d0f8 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -468,7 +468,7 @@ By design, d1 is the smallest direction and d2 is the highest moveToNullspace() powernet.remove_cable(src) //remove the cut cable from its powernet - addtimer(CALLBACK(O, .proc/auto_propogate_cut_cable, O), 0) //so we don't rebuild the network X times when singulo/explosion destroys a line of X cables + addtimer(CALLBACK(O,PROC_REF(auto_propogate_cut_cable), O), 0) //so we don't rebuild the network X times when singulo/explosion destroys a line of X cables // Disconnect machines connected to nodes if(d1 == 0) // if we cut a node (O-X) cable diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index bbf489d0d2e..e51da751a8f 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -40,7 +40,7 @@ if(ratingdesc) desc += " This one has a rating of [DisplayEnergy(maxcharge)], and you should not swallow it." update_icon() - RegisterSignal(src, COMSIG_ATOM_LICKED, .proc/lick_battery) + RegisterSignal(src, COMSIG_ATOM_LICKED,PROC_REF(lick_battery)) /obj/item/stock_parts/cell/Destroy() STOP_PROCESSING(SSobj, src) diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 03536152374..07de8332fc2 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -289,7 +289,7 @@ update(0) if(flicker_chance) START_PROCESSING(SSmachines, src) - RegisterSignal(src, COMSIG_ATOM_LICKED, .proc/lick_light) + RegisterSignal(src, COMSIG_ATOM_LICKED,PROC_REF(lick_light)) /obj/machinery/light/proc/lick_light(atom/A, mob/living/carbon/licker, obj/item/hand_item/tongue) if(!iscarbon(licker) || !tongue) diff --git a/code/modules/power/multiz.dm b/code/modules/power/multiz.dm index 0b8d1eea40c..a9ef5344f7a 100644 --- a/code/modules/power/multiz.dm +++ b/code/modules/power/multiz.dm @@ -38,13 +38,13 @@ icon_state = "cablerelay-off" to_chat(user, span_danger("Powernet connection lost. Attempting to re-establish. Ensure the relays below this one are connected too.")) find_relays() - addtimer(CALLBACK(src, .proc/refresh), 20) //Wait a bit so we can find the one below, then get powering + addtimer(CALLBACK(src,PROC_REF(refresh)), 20) //Wait a bit so we can find the one below, then get powering return TRUE /obj/machinery/power/deck_relay/Initialize() . = ..() - addtimer(CALLBACK(src, .proc/find_relays), 30) - addtimer(CALLBACK(src, .proc/refresh), 50) //Wait a bit so we can find the one below, then get powering + addtimer(CALLBACK(src,PROC_REF(find_relays)), 30) + addtimer(CALLBACK(src,PROC_REF(refresh)), 50) //Wait a bit so we can find the one below, then get powering ///Handles re-acquiring + merging powernets found by find_relays() /obj/machinery/power/deck_relay/proc/refresh() diff --git a/code/modules/power/singularity/containment_field.dm b/code/modules/power/singularity/containment_field.dm index 01230877bf9..ebdd0f61447 100644 --- a/code/modules/power/singularity/containment_field.dm +++ b/code/modules/power/singularity/containment_field.dm @@ -19,7 +19,7 @@ /obj/machinery/field/containment/Initialize() . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -66,10 +66,10 @@ /obj/machinery/field/containment/proc/on_entered(mob/mover) SIGNAL_HANDLER if(isliving(mover)) - INVOKE_ASYNC(src, .proc/shock, mover) + INVOKE_ASYNC(src,PROC_REF(shock), mover) if(ismachinery(mover) || isstructure(mover) || ismecha(mover)) - INVOKE_ASYNC(src, .proc/bump_field, mover) + INVOKE_ASYNC(src,PROC_REF(bump_field), mover) /obj/machinery/field/containment/proc/set_master(master1,master2) if(!master1 || !master2) @@ -140,4 +140,4 @@ do_sparks(5, TRUE, AM.loc) var/atom/target = get_edge_target_turf(AM, get_dir(src, get_step_away(AM, src))) AM.throw_at(target, 200, 4) - addtimer(CALLBACK(src, .proc/clear_shock), 5) + addtimer(CALLBACK(src,PROC_REF(clear_shock)), 5) diff --git a/code/modules/power/singularity/emitter.dm b/code/modules/power/singularity/emitter.dm index d508d56fcaa..f11e42f26d9 100644 --- a/code/modules/power/singularity/emitter.dm +++ b/code/modules/power/singularity/emitter.dm @@ -95,7 +95,7 @@ /obj/machinery/power/emitter/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/power/emitter/proc/can_be_rotated(mob/user,rotation_type) if (anchored) diff --git a/code/modules/power/singularity/narsie.dm b/code/modules/power/singularity/narsie.dm index 4ca675b7817..d6b6015e08d 100644 --- a/code/modules/power/singularity/narsie.dm +++ b/code/modules/power/singularity/narsie.dm @@ -36,7 +36,7 @@ if(A) var/mutable_appearance/alert_overlay = mutable_appearance('icons/effects/cult_effects.dmi', "ghostalertsie") notify_ghosts("Nar'Sie has risen in \the [A.name]. Reach out to the Geometer to be given a new shell for your soul.", source = src, alert_overlay = alert_overlay, action=NOTIFY_ATTACK) - INVOKE_ASYNC(src, .proc/narsie_spawn_animation) + INVOKE_ASYNC(src,PROC_REF(narsie_spawn_animation)) /obj/singularity/narsie/large/cult // For the new cult ending, guaranteed to end the round within 3 minutes var/list/souls_needed = list() @@ -67,7 +67,7 @@ if(player.stat != DEAD && player.loc && is_station_level(player.loc.z) && !iscultist(player) && !isanimal(player)) souls_needed[player] = TRUE soul_goal = round(1 + LAZYLEN(souls_needed) * 0.75) - INVOKE_ASYNC(src, .proc/begin_the_end) + INVOKE_ASYNC(src,PROC_REF(begin_the_end)) /obj/singularity/narsie/large/cult/proc/begin_the_end() sleep(50) diff --git a/code/modules/power/singularity/particle_accelerator/particle.dm b/code/modules/power/singularity/particle_accelerator/particle.dm index 8f179c4c328..7884ca3dbc4 100644 --- a/code/modules/power/singularity/particle_accelerator/particle.dm +++ b/code/modules/power/singularity/particle_accelerator/particle.dm @@ -25,7 +25,7 @@ /obj/effect/accelerated_particle/New(loc) ..() - addtimer(CALLBACK(src, .proc/move), 1) + addtimer(CALLBACK(src,PROC_REF(move)), 1) /obj/effect/accelerated_particle/Bump(atom/A) @@ -46,7 +46,7 @@ /obj/effect/accelerated_particle/proc/on_entered(atom/A) SIGNAL_HANDLER if(isliving(A)) - INVOKE_ASYNC(src, .proc/toxmob, A) + INVOKE_ASYNC(src,PROC_REF(toxmob), A) /obj/effect/accelerated_particle/ex_act(severity, target) diff --git a/code/modules/power/solar.dm b/code/modules/power/solar.dm index 7ddc27f77b9..657b43dda86 100644 --- a/code/modules/power/solar.dm +++ b/code/modules/power/solar.dm @@ -35,7 +35,7 @@ panel.layer = FLY_LAYER Make(S) connect_to_network() - RegisterSignal(SSsun, COMSIG_SUN_MOVED, .proc/queue_update_solar_exposure) + RegisterSignal(SSsun, COMSIG_SUN_MOVED,PROC_REF(queue_update_solar_exposure)) /obj/machinery/power/solar/Destroy() unset_control() //remove from control computer @@ -306,7 +306,7 @@ /obj/machinery/power/solar_control/Initialize() . = ..() azimuth_rate = SSsun.base_rotation - RegisterSignal(SSsun, COMSIG_SUN_MOVED, .proc/timed_track) + RegisterSignal(SSsun, COMSIG_SUN_MOVED,PROC_REF(timed_track)) connect_to_network() if(powernet) set_panels(azimuth_target) diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 07581ed4795..799a877be9e 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -296,7 +296,7 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) GLOB.main_supermatter_engine = src AddElement(/datum/element/bsa_blocker) - RegisterSignal(src, COMSIG_ATOM_BSA_BEAM, .proc/call_explode) + RegisterSignal(src, COMSIG_ATOM_BSA_BEAM,PROC_REF(call_explode)) soundloop = new(list(src), TRUE) diff --git a/code/modules/power/tesla/coil.dm b/code/modules/power/tesla/coil.dm index c78c2487394..d5bac170b20 100644 --- a/code/modules/power/tesla/coil.dm +++ b/code/modules/power/tesla/coil.dm @@ -86,7 +86,7 @@ D.adjust_money(min(power_produced, 1)) if(istype(linked_techweb)) linked_techweb.add_point_type(TECHWEB_POINT_TYPE_DEFAULT, min(power_produced, 1)) // x4 coils = ~240/m point bonus for R&D - addtimer(CALLBACK(src, .proc/reset_shocked), 10) + addtimer(CALLBACK(src,PROC_REF(reset_shocked)), 10) zap_buckle_check(power) playsound(src.loc, 'sound/magic/lightningshock.ogg', 100, TRUE, extrarange = 5) return power_produced @@ -124,7 +124,7 @@ D.adjust_money(min(power_produced, 3)) if(istype(linked_techweb)) linked_techweb.add_point_type(TECHWEB_POINT_TYPE_DEFAULT, min(power_produced, 3)) // x4 coils with a pulse per second or so = ~720/m point bonus for R&D - addtimer(CALLBACK(src, .proc/reset_shocked), 10) + addtimer(CALLBACK(src,PROC_REF(reset_shocked)), 10) zap_buckle_check(power) playsound(src.loc, 'sound/magic/lightningshock.ogg', 100, TRUE, extrarange = 5) return power_produced diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm index cc0ecf13a67..f10fa4784e3 100644 --- a/code/modules/power/tesla/energy_ball.dm +++ b/code/modules/power/tesla/energy_ball.dm @@ -132,7 +132,7 @@ energy_to_raise = energy_to_raise * 1.25 playsound(src.loc, 'sound/magic/lightning_chargeup.ogg', 100, TRUE, extrarange = 30) - addtimer(CALLBACK(src, .proc/new_mini_ball), 100) + addtimer(CALLBACK(src,PROC_REF(new_mini_ball)), 100) else if(energy < energy_to_lower && orbiting_balls.len) energy_to_raise = energy_to_raise / 1.25 diff --git a/code/modules/power/tracker.dm b/code/modules/power/tracker.dm index 3a6dc7c7da4..c94fda93cec 100644 --- a/code/modules/power/tracker.dm +++ b/code/modules/power/tracker.dm @@ -21,7 +21,7 @@ . = ..() Make(S) connect_to_network() - RegisterSignal(SSsun, COMSIG_SUN_MOVED, .proc/sun_update) + RegisterSignal(SSsun, COMSIG_SUN_MOVED,PROC_REF(sun_update)) /obj/machinery/power/tracker/Destroy() unset_control() //remove from control computer diff --git a/code/modules/projectiles/boxes_magazines/_box_magazine.dm b/code/modules/projectiles/boxes_magazines/_box_magazine.dm index caaa9f96834..224c1498d9c 100644 --- a/code/modules/projectiles/boxes_magazines/_box_magazine.dm +++ b/code/modules/projectiles/boxes_magazines/_box_magazine.dm @@ -54,8 +54,8 @@ /obj/item/ammo_box/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_ATOM_POST_ADMIN_SPAWN, .proc/admin_load) - RegisterSignal(src, COMSIG_GUN_MAG_ADMIN_RELOAD, .proc/admin_load) + RegisterSignal(src, COMSIG_ATOM_POST_ADMIN_SPAWN,PROC_REF(admin_load)) + RegisterSignal(src, COMSIG_GUN_MAG_ADMIN_RELOAD,PROC_REF(admin_load)) /// An aheal, but for ammo boxes /obj/item/ammo_box/proc/admin_load() diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index 6c1659b82d2..0763a66de8a 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -265,8 +265,8 @@ ATTACHMENTS /obj/item/gun/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_ATOM_POST_ADMIN_SPAWN, .proc/admin_fill_gun) - RegisterSignal(src, COMSIG_GUN_MAG_ADMIN_RELOAD, .proc/admin_fill_gun) + RegisterSignal(src, COMSIG_ATOM_POST_ADMIN_SPAWN,PROC_REF(admin_fill_gun)) + RegisterSignal(src, COMSIG_GUN_MAG_ADMIN_RELOAD,PROC_REF(admin_fill_gun)) /obj/item/gun/proc/admin_fill_gun() return @@ -838,7 +838,7 @@ ATTACHMENTS user.client.change_view(zoom_out_amt) user.client.pixel_x = world.icon_size*_x user.client.pixel_y = world.icon_size*_y - RegisterSignal(user, COMSIG_ATOM_DIR_CHANGE, .proc/rotate) + RegisterSignal(user, COMSIG_ATOM_DIR_CHANGE,PROC_REF(rotate)) UnregisterSignal(user, COMSIG_MOVABLE_MOVED) //pls don't conflict with anything else using this signal user.visible_message(span_notice("[user] looks down the scope of [src]."), span_notice("You look down the scope of [src].")) else @@ -848,7 +848,7 @@ ATTACHMENTS user.client.pixel_y = 0 UnregisterSignal(user, COMSIG_ATOM_DIR_CHANGE) user.visible_message(span_notice("[user] looks up from the scope of [src]."), span_notice("You look up from the scope of [src].")) - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/on_walk) //Extra proc to make sure your zoom resets for bug where you don't unzoom when toggling while moving + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(on_walk)) //Extra proc to make sure your zoom resets for bug where you don't unzoom when toggling while moving /obj/item/gun/proc/on_walk(mob/living/user) UnregisterSignal(user, COMSIG_MOVABLE_MOVED) diff --git a/code/modules/projectiles/guns/ballistic/flintlock.dm b/code/modules/projectiles/guns/ballistic/flintlock.dm index eaffb266f32..09f26757864 100644 --- a/code/modules/projectiles/guns/ballistic/flintlock.dm +++ b/code/modules/projectiles/guns/ballistic/flintlock.dm @@ -176,7 +176,7 @@ firing = TRUE var/shoot_delay = round(max(gaussian(prefire_time, prefire_time * prefire_randomness), prefire_time * 0.75), 0.1) fuse_loop.start() - addtimer(CALLBACK(src, .proc/fire_at_cursor, user), shoot_delay) + addtimer(CALLBACK(src,PROC_REF(fire_at_cursor), user), shoot_delay) update_icon() return TRUE diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm index 6e3256a9dd7..fca0992be9f 100644 --- a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm +++ b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm @@ -139,7 +139,7 @@ if(!QDELING(src) && !holds_charge) // Put it on a delay because moving item from slot to hand // calls dropped(). - addtimer(CALLBACK(src, .proc/empty_if_not_held), 2) + addtimer(CALLBACK(src,PROC_REF(empty_if_not_held)), 2) /obj/item/gun/energy/kinetic_accelerator/proc/empty_if_not_held() if(!ismob(loc) && !istype(loc, /obj/item/integrated_circuit)) @@ -170,7 +170,7 @@ carried = 1 deltimer(recharge_timerid) - recharge_timerid = addtimer(CALLBACK(src, .proc/reload), recharge_time * carried, TIMER_STOPPABLE) + recharge_timerid = addtimer(CALLBACK(src,PROC_REF(reload)), recharge_time * carried, TIMER_STOPPABLE) /obj/item/gun/energy/kinetic_accelerator/emp_act(severity) return diff --git a/code/modules/projectiles/guns/magic.dm b/code/modules/projectiles/guns/magic.dm index 96a5440f13a..2be8681f718 100644 --- a/code/modules/projectiles/guns/magic.dm +++ b/code/modules/projectiles/guns/magic.dm @@ -71,7 +71,7 @@ return FALSE // Already full soundloop.start() charge_start_message() - charge_timer = addtimer(CALLBACK(src, .proc/charge), recharge_rate, TIMER_UNIQUE|TIMER_STOPPABLE) + charge_timer = addtimer(CALLBACK(src,PROC_REF(charge)), recharge_rate, TIMER_UNIQUE|TIMER_STOPPABLE) /obj/item/gun/magic/proc/charge() recharge_newshot() @@ -83,7 +83,7 @@ return FALSE charges++ charge_partial_message() - charge_timer = addtimer(CALLBACK(src, .proc/charge), recharge_rate, TIMER_UNIQUE|TIMER_STOPPABLE) + charge_timer = addtimer(CALLBACK(src,PROC_REF(charge)), recharge_rate, TIMER_UNIQUE|TIMER_STOPPABLE) /obj/item/gun/magic/proc/charge_full_message() audible_message("[src] lets out a satisfied hum and falls quiet.") diff --git a/code/modules/projectiles/guns/misc/beam_rifle.dm b/code/modules/projectiles/guns/misc/beam_rifle.dm index 9df197059ad..95296a0a08f 100644 --- a/code/modules/projectiles/guns/misc/beam_rifle.dm +++ b/code/modules/projectiles/guns/misc/beam_rifle.dm @@ -262,7 +262,7 @@ current_user = null if(istype(user)) current_user = user - RegisterSignal(user, COMSIG_MOVABLE_MOVED, .proc/on_mob_move) + RegisterSignal(user, COMSIG_MOVABLE_MOVED,PROC_REF(on_mob_move)) /obj/item/gun/energy/beam_rifle/onMouseDrag(src_object, over_object, src_location, over_location, params, mob) if(aiming) diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 7c83108aa49..c372fcb77e8 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -762,7 +762,7 @@ fired = TRUE randomize_damage() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) if(hitscan) diff --git a/code/modules/projectiles/projectile/energy/net_snare.dm b/code/modules/projectiles/projectile/energy/net_snare.dm index db9239ee03b..3c6bb7c9dd4 100644 --- a/code/modules/projectiles/projectile/energy/net_snare.dm +++ b/code/modules/projectiles/projectile/energy/net_snare.dm @@ -37,7 +37,7 @@ if(com.power_station && com.power_station.teleporter_hub && com.power_station.engaged) teletarget = com.target - addtimer(CALLBACK(src, .proc/pop, teletarget), 30) + addtimer(CALLBACK(src,PROC_REF(pop), teletarget), 30) /obj/effect/nettingportal/proc/pop(teletarget) if(teletarget) diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index 2255827ca42..fafbc9791aa 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -381,8 +381,8 @@ /obj/structure/closet/decay/Initialize() . = ..() if(auto_destroy) - addtimer(CALLBACK(src, .proc/bust_open), 5 MINUTES) - addtimer(CALLBACK(src, .proc/magicly_lock), 5) + addtimer(CALLBACK(src,PROC_REF(bust_open)), 5 MINUTES) + addtimer(CALLBACK(src,PROC_REF(magicly_lock)), 5) /obj/structure/closet/decay/proc/magicly_lock() if(!welded) @@ -404,12 +404,12 @@ if(icon_state == magic_icon) //check if we used the magic icon at all before giving it the lesser magic icon unmagify() else - addtimer(CALLBACK(src, .proc/decay), 15 SECONDS) + addtimer(CALLBACK(src,PROC_REF(decay)), 15 SECONDS) /obj/structure/closet/decay/proc/unmagify() icon_state = weakened_icon update_icon() - addtimer(CALLBACK(src, .proc/decay), 15 SECONDS) + addtimer(CALLBACK(src,PROC_REF(decay)), 15 SECONDS) icon_welded = "welded" /obj/item/projectile/magic/aoe diff --git a/code/modules/projectiles/projectile/special/hallucination.dm b/code/modules/projectiles/projectile/special/hallucination.dm index 3c51b5ac13f..94f9f23a017 100644 --- a/code/modules/projectiles/projectile/special/hallucination.dm +++ b/code/modules/projectiles/projectile/special/hallucination.dm @@ -100,7 +100,7 @@ layer = ABOVE_MOB_LAYER hal_target.client.images += blood animate(blood, pixel_x = target_pixel_x, pixel_y = target_pixel_y, alpha = 0, time = 5) - addtimer(CALLBACK(src, .proc/cleanup_blood), 5) + addtimer(CALLBACK(src,PROC_REF(cleanup_blood)), 5) /obj/item/projectile/hallucination/proc/cleanup_blood(image/blood) hal_target.client.images -= blood diff --git a/code/modules/reagents/chemistry/machinery/pandemic.dm b/code/modules/reagents/chemistry/machinery/pandemic.dm index 848bd1eaea9..6e8a75dea1a 100644 --- a/code/modules/reagents/chemistry/machinery/pandemic.dm +++ b/code/modules/reagents/chemistry/machinery/pandemic.dm @@ -217,7 +217,7 @@ update_icon() var/turf/source_turf = get_turf(src) log_virus("A culture bottle was printed for the virus [A.admin_details()] at [loc_name(source_turf)] by [key_name(usr)]") - addtimer(CALLBACK(src, .proc/reset_replicator_cooldown), 50) + addtimer(CALLBACK(src,PROC_REF(reset_replicator_cooldown)), 50) . = TRUE if("create_vaccine_bottle") if (wait) @@ -229,7 +229,7 @@ B.reagents.add_reagent(/datum/reagent/vaccine, 15, list(id)) wait = TRUE update_icon() - addtimer(CALLBACK(src, .proc/reset_replicator_cooldown), 200) + addtimer(CALLBACK(src,PROC_REF(reset_replicator_cooldown)), 200) . = TRUE diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index 792d71eee98..769f4faf6f9 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -234,7 +234,7 @@ var/offset = prob(50) ? -2 : 2 var/old_pixel_x = pixel_x animate(src, pixel_x = pixel_x + offset, time = 0.2, loop = -1) //start shaking - addtimer(CALLBACK(src, .proc/stop_shaking, old_pixel_x), duration) + addtimer(CALLBACK(src,PROC_REF(stop_shaking), old_pixel_x), duration) /obj/machinery/reagentgrinder/proc/stop_shaking(old_px) animate(src) @@ -248,7 +248,7 @@ playsound(src, 'sound/machines/blender.ogg', 50, 1) else playsound(src, 'sound/machines/juicer.ogg', 20, 1) - addtimer(CALLBACK(src, .proc/stop_operating), time / speed) + addtimer(CALLBACK(src,PROC_REF(stop_operating)), time / speed) /obj/machinery/reagentgrinder/proc/stop_operating() operating = FALSE diff --git a/code/modules/reagents/chemistry/machinery/smoke_machine.dm b/code/modules/reagents/chemistry/machinery/smoke_machine.dm index 0caefc18a2f..bc0e59b06f8 100644 --- a/code/modules/reagents/chemistry/machinery/smoke_machine.dm +++ b/code/modules/reagents/chemistry/machinery/smoke_machine.dm @@ -38,7 +38,7 @@ /obj/machinery/smoke_machine/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/smoke_machine/proc/can_be_rotated(mob/user, rotation_type) return !anchored diff --git a/code/modules/reagents/chemistry/reagents/other_reagents.dm b/code/modules/reagents/chemistry/reagents/other_reagents.dm index e52aa678c14..5898ff71e8c 100644 --- a/code/modules/reagents/chemistry/reagents/other_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/other_reagents.dm @@ -2634,7 +2634,7 @@ /datum/reagent/gravitum/reaction_obj(obj/O, volume) O.AddElement(/datum/element/forced_gravity, 0) - addtimer(CALLBACK(O, .proc/_RemoveElement, /datum/element/forced_gravity, 0), volume * time_multiplier) + addtimer(CALLBACK(O,PROC_REF(_RemoveElement), /datum/element/forced_gravity, 0), volume * time_multiplier) /datum/reagent/gravitum/on_mob_add(mob/living/L) L.AddElement(/datum/element/forced_gravity, 0) //0 is the gravity, and in this case weightless diff --git a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm index 8e03d68525e..47631b94ac4 100644 --- a/code/modules/reagents/chemistry/recipes/pyrotechnics.dm +++ b/code/modules/reagents/chemistry/recipes/pyrotechnics.dm @@ -415,13 +415,13 @@ var/T3 = created_volume * 120 var/added_delay = 0.5 SECONDS if(created_volume >= 75) - addtimer(CALLBACK(src, .proc/zappy_zappy, holder, T1), added_delay) + addtimer(CALLBACK(src,PROC_REF(zappy_zappy), holder, T1), added_delay) added_delay += 1.5 SECONDS if(created_volume >= 40) - addtimer(CALLBACK(src, .proc/zappy_zappy, holder, T2), added_delay) + addtimer(CALLBACK(src,PROC_REF(zappy_zappy), holder, T2), added_delay) added_delay += 1.5 SECONDS if(created_volume >= 10) //10 units minimum for lightning, 40 units for secondary blast, 75 units for tertiary blast. - addtimer(CALLBACK(src, .proc/zappy_zappy, holder, T3), added_delay) + addtimer(CALLBACK(src,PROC_REF(zappy_zappy), holder, T3), added_delay) ..() /datum/chemical_reaction/reagent_explosion/teslium_lightning/proc/zappy_zappy(datum/reagents/holder, power) diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index a4674029c5d..959e6aed5e4 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -125,11 +125,11 @@ var/obj/item/slime_extract/M = holder.my_atom deltimer(M.qdel_timer) ..() - M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE) + M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE) /datum/chemical_reaction/slime/slimemobspawn/proc/summon_mobs(datum/reagents/holder, turf/T) T.visible_message(span_danger("The slime extract begins to vibrate violently!")) - //addtimer(CALLBACK(src, .proc/chemical_mob_spawn, holder, 5, "Gold Slime", HOSTILE_SPAWN), 50) + //addtimer(CALLBACK(src,PROC_REF(chemical_mob_spawn), holder, 5, "Gold Slime", HOSTILE_SPAWN), 50) /datum/chemical_reaction/slime/slimemobspawn/lesser name = "Slime Crit Lesser" @@ -138,7 +138,7 @@ /datum/chemical_reaction/slime/slimemobspawn/lesser/summon_mobs(datum/reagents/holder, turf/T) T.visible_message(span_danger("The slime extract begins to vibrate violently!")) - //addtimer(CALLBACK(src, .proc/chemical_mob_spawn, holder, 3, "Lesser Gold Slime", HOSTILE_SPAWN, "neutral"), 50) + //addtimer(CALLBACK(src,PROC_REF(chemical_mob_spawn), holder, 3, "Lesser Gold Slime", HOSTILE_SPAWN, "neutral"), 50) /datum/chemical_reaction/slime/slimemobspawn/friendly name = "Slime Crit Friendly" @@ -147,7 +147,7 @@ /datum/chemical_reaction/slime/slimemobspawn/friendly/summon_mobs(datum/reagents/holder, turf/T) T.visible_message(span_danger("The slime extract begins to vibrate adorably!")) - //addtimer(CALLBACK(src, .proc/chemical_mob_spawn, holder, 1, "Friendly Gold Slime", FRIENDLY_SPAWN, "neutral"), 50) + //addtimer(CALLBACK(src,PROC_REF(chemical_mob_spawn), holder, 1, "Friendly Gold Slime", FRIENDLY_SPAWN, "neutral"), 50) //Silver /datum/chemical_reaction/slime/slimebork @@ -227,11 +227,11 @@ /datum/chemical_reaction/slime/slimefreeze/on_reaction(datum/reagents/holder) var/turf/T = get_turf(holder.my_atom) T.visible_message(span_danger("The slime extract starts to feel extremely cold!")) - addtimer(CALLBACK(src, .proc/freeze, holder), 50) + addtimer(CALLBACK(src,PROC_REF(freeze), holder), 50) var/obj/item/slime_extract/M = holder.my_atom deltimer(M.qdel_timer) ..() - M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE) + M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE) /datum/chemical_reaction/slime/slimefreeze/proc/freeze(datum/reagents/holder) if(holder && holder.my_atom) @@ -270,11 +270,11 @@ /datum/chemical_reaction/slime/slimefire/on_reaction(datum/reagents/holder) var/turf/T = get_turf(holder.my_atom) T.visible_message(span_danger("The slime extract begins to vibrate adorably!")) - addtimer(CALLBACK(src, .proc/slime_burn, holder), 50) + addtimer(CALLBACK(src,PROC_REF(slime_burn), holder), 50) var/obj/item/slime_extract/M = holder.my_atom deltimer(M.qdel_timer) ..() - M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE) + M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE) /datum/chemical_reaction/slime/slimefire/proc/slime_burn(datum/reagents/holder) if(holder && holder.my_atom) @@ -455,11 +455,11 @@ message_admins("Slime Explosion reaction started at [ADMIN_VERBOSEJMP(T)]. Last Fingerprint: [touch_msg]") log_game("Slime Explosion reaction started at [AREACOORD(T)]. Last Fingerprint: [lastkey ? lastkey : "N/A"].") T.visible_message(span_danger("The slime extract begins to vibrate violently !")) - addtimer(CALLBACK(src, .proc/boom, holder), 50) + addtimer(CALLBACK(src,PROC_REF(boom), holder), 50) var/obj/item/slime_extract/M = holder.my_atom deltimer(M.qdel_timer) ..() - M.qdel_timer = addtimer(CALLBACK(src, .proc/delete_extract, holder), 55, TIMER_STOPPABLE) + M.qdel_timer = addtimer(CALLBACK(src,PROC_REF(delete_extract), holder), 55, TIMER_STOPPABLE) /datum/chemical_reaction/slime/slimeexplosion/proc/boom(datum/reagents/holder) if(holder && holder.my_atom) @@ -580,7 +580,7 @@ required_other = TRUE /datum/chemical_reaction/slime/slimestop/on_reaction(datum/reagents/holder, created_volume) - addtimer(CALLBACK(src, .proc/slime_stop, holder), 5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(slime_stop), holder), 5 SECONDS) /datum/chemical_reaction/slime/slimestop/proc/slime_stop(datum/reagents/holder) var/obj/item/slime_extract/sepia/extract = holder.my_atom diff --git a/code/modules/reagents/reagent_containers.dm b/code/modules/reagents/reagent_containers.dm index 31c65d747eb..f814a1429d4 100644 --- a/code/modules/reagents/reagent_containers.dm +++ b/code/modules/reagents/reagent_containers.dm @@ -139,7 +139,7 @@ else if(bartender_check(target) && thrown) visible_message(span_notice("[src] lands without spilling a single drop.")) transform = initial(transform) - addtimer(CALLBACK(src, .proc/ForceResetRotation), 1) + addtimer(CALLBACK(src,PROC_REF(ForceResetRotation)), 1) else if(isturf(target) && reagents.reagent_list.len && thrownby) diff --git a/code/modules/reagents/reagent_containers/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 4cf69f96368..48b1a54ae40 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -11,7 +11,7 @@ /obj/item/reagent_containers/glass/attack(mob/M, mob/user, obj/target) // WARNING: This entire section is shitcode and prone to breaking at any time. - INVOKE_ASYNC(src, .proc/attempt_feed, M, user, target) // for example, the arguments in this proc are wrong + INVOKE_ASYNC(src,PROC_REF(attempt_feed), M, user, target) // for example, the arguments in this proc are wrong // but i don't have time to properly fix it right now. /obj/item/reagent_containers/glass/proc/attempt_feed(mob/M, mob/user, obj/target) diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 20e2e0fb0ac..5c67a173590 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -122,7 +122,7 @@ qdel(src) return update_icon() - addtimer(CALLBACK(src, .proc/cyborg_recharge, user), 80) + addtimer(CALLBACK(src,PROC_REF(cyborg_recharge), user), 80) /obj/item/reagent_containers/hypospray/medipen/proc/cyborg_recharge(mob/living/silicon/robot/user) if(!reagents.total_volume && iscyborg(user)) @@ -497,7 +497,7 @@ /obj/item/hypospray/mkii/afterattack(atom/target, mob/user, proximity) . = ..() - INVOKE_ASYNC(src, .proc/attempt_inject, target, user, proximity) + INVOKE_ASYNC(src,PROC_REF(attempt_inject), target, user, proximity) /obj/item/hypospray/mkii/proc/attempt_inject(atom/target, mob/user, proximity) if(!vial || !proximity || !isliving(target)) diff --git a/code/modules/reagents/reagent_containers/medspray.dm b/code/modules/reagents/reagent_containers/medspray.dm index f50a060c7af..ac5c6ac5ad2 100644 --- a/code/modules/reagents/reagent_containers/medspray.dm +++ b/code/modules/reagents/reagent_containers/medspray.dm @@ -32,7 +32,7 @@ to_chat(user, span_notice("You will now apply the medspray's contents in [squirt_mode ? "short bursts":"extended sprays"]. You'll now use [amount_per_transfer_from_this] units per use.")) /obj/item/reagent_containers/medspray/attack(mob/living/L, mob/user, def_zone) - INVOKE_ASYNC(src, .proc/attempt_spray, L, user, def_zone) // this is shitcode because the params for attack aren't even right but i'm not in the mood to refactor right now. + INVOKE_ASYNC(src,PROC_REF(attempt_spray), L, user, def_zone) // this is shitcode because the params for attack aren't even right but i'm not in the mood to refactor right now. /obj/item/reagent_containers/medspray/proc/attempt_spray(mob/living/L, mob/user, def_zone) if(!reagents || !reagents.total_volume) diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index 9ba72e284d1..a8041d7149f 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -29,7 +29,7 @@ return DEFAULT_VOLUME_TINY/2 + reagents.total_volume / reagents.maximum_volume * DEFAULT_VOLUME_TINY /obj/item/reagent_containers/pill/attack(mob/living/M, mob/living/user, attackchain_flags = NONE, damage_multiplier = 1) - INVOKE_ASYNC(src, .proc/attempt_feed, M, user) + INVOKE_ASYNC(src,PROC_REF(attempt_feed), M, user) /obj/item/reagent_containers/pill/proc/attempt_feed(mob/living/M, mob/living/user) if(!canconsume(M, user)) diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index 7cacf2984ab..a049e8dd339 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -87,7 +87,7 @@ log_reagent("SPRAY: [key_name(usr)] fired [src] ([REF(src)]) [COORD(T)] at [A] ([REF(A)]) [COORD(A)] (chempuff: [D.reagents.log_list()])") var/wait_step = max(round(2+ spray_delay * INVERSE(range)), 2) last_spray = world.time - INVOKE_ASYNC(src, .proc/do_spray, A, wait_step, D, range, puff_reagent_left) + INVOKE_ASYNC(src,PROC_REF(do_spray), A, wait_step, D, range, puff_reagent_left) return TRUE /obj/item/reagent_containers/spray/proc/do_spray(atom/A, wait_step, obj/effect/decal/chempuff/D, range, puff_reagent_left) diff --git a/code/modules/reagents/reagent_containers/syringes.dm b/code/modules/reagents/reagent_containers/syringes.dm index 91a6cd4e8ac..e8d629006fc 100644 --- a/code/modules/reagents/reagent_containers/syringes.dm +++ b/code/modules/reagents/reagent_containers/syringes.dm @@ -58,7 +58,7 @@ /obj/item/reagent_containers/syringe/afterattack(atom/target, mob/user, proximity) . = ..() - INVOKE_ASYNC(src, .proc/attempt_inject, target, user, proximity) + INVOKE_ASYNC(src,PROC_REF(attempt_inject), target, user, proximity) /obj/item/reagent_containers/syringe/proc/attempt_inject(atom/target, mob/user, proximity) if(busy) diff --git a/code/modules/recycling/conveyor2.dm b/code/modules/recycling/conveyor2.dm index ab1934f291b..aef95724790 100644 --- a/code/modules/recycling/conveyor2.dm +++ b/code/modules/recycling/conveyor2.dm @@ -132,7 +132,7 @@ GLOBAL_LIST_EMPTY(conveyors_by_id) return use_power(6) affecting = loc.contents - src // moved items will be all in loc - addtimer(CALLBACK(src, .proc/convey, affecting), 1) + addtimer(CALLBACK(src,PROC_REF(convey), affecting), 1) /obj/machinery/conveyor/proc/convey(list/affecting) var/turf/T = get_step(src, movedir) diff --git a/code/modules/recycling/disposal/construction.dm b/code/modules/recycling/disposal/construction.dm index aa618f2699c..60ea6e13bb8 100644 --- a/code/modules/recycling/disposal/construction.dm +++ b/code/modules/recycling/disposal/construction.dm @@ -89,7 +89,7 @@ /obj/structure/disposalconstruct/ComponentInitialize() . = ..() - AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE | ROTATION_FLIP | ROTATION_VERBS ,null,CALLBACK(src, .proc/can_be_rotated), CALLBACK(src, .proc/after_rot)) + AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE | ROTATION_FLIP | ROTATION_VERBS ,null,CALLBACK(src,PROC_REF(can_be_rotated)), CALLBACK(src,PROC_REF(after_rot))) /obj/structure/disposalconstruct/proc/after_rot(mob/user,rotation_type) if(rotation_type == ROTATION_FLIP) diff --git a/code/modules/recycling/disposal/holder.dm b/code/modules/recycling/disposal/holder.dm index 37b052399d4..146d91e07e8 100644 --- a/code/modules/recycling/disposal/holder.dm +++ b/code/modules/recycling/disposal/holder.dm @@ -70,9 +70,9 @@ var/delay = world.tick_lag var/datum/move_loop/our_loop = SSmove_manager.move_disposals(src, delay = delay, timeout = delay * count) if(our_loop) - RegisterSignal(our_loop, COMSIG_MOVELOOP_PREPROCESS_CHECK, .proc/pre_move) - RegisterSignal(our_loop, COMSIG_MOVELOOP_POSTPROCESS, .proc/try_expel) - RegisterSignal(our_loop, COMSIG_PARENT_QDELETING, .proc/movement_stop) + RegisterSignal(our_loop, COMSIG_MOVELOOP_PREPROCESS_CHECK,PROC_REF(pre_move)) + RegisterSignal(our_loop, COMSIG_MOVELOOP_POSTPROCESS,PROC_REF(try_expel)) + RegisterSignal(our_loop, COMSIG_PARENT_QDELETING,PROC_REF(movement_stop)) current_pipe = loc /obj/structure/disposalholder/proc/pre_move(datum/move_loop/source) diff --git a/code/modules/recycling/disposal/outlet.dm b/code/modules/recycling/disposal/outlet.dm index 8994983effc..9d0f36f932f 100644 --- a/code/modules/recycling/disposal/outlet.dm +++ b/code/modules/recycling/disposal/outlet.dm @@ -44,9 +44,9 @@ if((start_eject + 30) < world.time) start_eject = world.time playsound(src, 'sound/machines/warning-buzzer.ogg', 50, 0, 0) - addtimer(CALLBACK(src, .proc/expel_holder, H, TRUE), 20) + addtimer(CALLBACK(src,PROC_REF(expel_holder), H, TRUE), 20) else - addtimer(CALLBACK(src, .proc/expel_holder, H), 20) + addtimer(CALLBACK(src,PROC_REF(expel_holder), H), 20) /obj/structure/disposaloutlet/proc/expel_holder(obj/structure/disposalholder/H, playsound=FALSE) if(playsound) diff --git a/code/modules/research/destructive_analyzer.dm b/code/modules/research/destructive_analyzer.dm index 642c8708de3..619e5620a03 100644 --- a/code/modules/research/destructive_analyzer.dm +++ b/code/modules/research/destructive_analyzer.dm @@ -43,7 +43,7 @@ Note: Must be placed within 3 tiles of the R&D Console loaded_item = O to_chat(user, span_notice("You add the [O.name] to the [src.name]!")) flick("d_analyzer_la", src) - addtimer(CALLBACK(src, .proc/finish_loading), 10) + addtimer(CALLBACK(src,PROC_REF(finish_loading)), 10) if (linked_console) linked_console.updateUsrDialog() @@ -74,7 +74,7 @@ Note: Must be placed within 3 tiles of the R&D Console if(!innermode) flick("d_analyzer_process", src) busy = TRUE - addtimer(CALLBACK(src, .proc/reset_busy), 24) + addtimer(CALLBACK(src,PROC_REF(reset_busy)), 24) use_power(250) if(thing == loaded_item) loaded_item = null diff --git a/code/modules/research/experimentor.dm b/code/modules/research/experimentor.dm index 96f9c00029e..bc2f43d8d12 100644 --- a/code/modules/research/experimentor.dm +++ b/code/modules/research/experimentor.dm @@ -494,7 +494,7 @@ use_power(500000) investigate_log("Experimentor has drained power from its APC", INVESTIGATE_EXPERIMENTOR) - addtimer(CALLBACK(src, .proc/reset_exp), resetTime) + addtimer(CALLBACK(src,PROC_REF(reset_exp)), resetTime) /obj/machinery/rnd/experimentor/proc/reset_exp() update_icon() @@ -560,7 +560,7 @@ cooldown = TRUE call(src,realProc)(user) if(!QDELETED(src)) - addtimer(CALLBACK(src, .proc/cd), cooldownMax) + addtimer(CALLBACK(src,PROC_REF(cd)), cooldownMax) else to_chat(user, span_notice("You aren't quite sure what to do with this yet.")) @@ -577,7 +577,7 @@ /obj/item/relic/proc/corgicannon(mob/user) playsound(src, "sparks", rand(25,50), 1) var/mob/living/simple_animal/pet/dog/corgi/C = new/mob/living/simple_animal/pet/dog/corgi(get_turf(user)) - C.throw_at(pick(oview(10,user)), 10, rand(3,8), callback = CALLBACK(src, .proc/throwSmoke, C)) + C.throw_at(pick(oview(10,user)), 10, rand(3,8), callback = CALLBACK(src,PROC_REF(throwSmoke), C)) warn_admins(user, "Corgi Cannon", 0) /obj/item/relic/proc/clean(mob/user) @@ -627,7 +627,7 @@ /obj/item/relic/proc/explode(mob/user) to_chat(user, span_danger("[src] begins to heat up!")) - addtimer(CALLBACK(src, .proc/do_explode, user), rand(35, 100)) + addtimer(CALLBACK(src,PROC_REF(do_explode), user), rand(35, 100)) /obj/item/relic/proc/do_explode(mob/user) if(loc == user) @@ -638,7 +638,7 @@ /obj/item/relic/proc/teleport(mob/user) to_chat(user, span_notice("[src] begins to vibrate!")) - addtimer(CALLBACK(src, .proc/do_the_teleport, user), rand(10, 30)) + addtimer(CALLBACK(src,PROC_REF(do_the_teleport), user), rand(10, 30)) /obj/item/relic/proc/do_the_teleport(mob/user) var/turf/userturf = get_turf(user) diff --git a/code/modules/research/machinery/_production.dm b/code/modules/research/machinery/_production.dm index c7202a12ca1..9060dfc5a96 100644 --- a/code/modules/research/machinery/_production.dm +++ b/code/modules/research/machinery/_production.dm @@ -26,8 +26,8 @@ cached_designs = list() stored_research = new host_research = SSresearch.science_tech - INVOKE_ASYNC(src, .proc/update_research) - materials = AddComponent(/datum/component/remote_materials, "lathe", mapload, _after_insert=CALLBACK(src, .proc/AfterMaterialInsert)) + INVOKE_ASYNC(src,PROC_REF(update_research)) + materials = AddComponent(/datum/component/remote_materials, "lathe", mapload, _after_insert=CALLBACK(src,PROC_REF(AfterMaterialInsert))) RefreshParts() /obj/machinery/rnd/production/Destroy() @@ -171,8 +171,8 @@ if(production_animation) flick(production_animation, src) var/timecoeff = D.lathe_time_factor * print_cost_coeff - addtimer(CALLBACK(src, .proc/reset_busy), (20 * timecoeff * amount) ** 0.5) - addtimer(CALLBACK(src, .proc/do_print, D.build_path, amount, efficient_mats, D.dangerous_construction, usr), (20 * timecoeff * amount) ** 0.5) + addtimer(CALLBACK(src,PROC_REF(reset_busy)), (20 * timecoeff * amount) ** 0.5) + addtimer(CALLBACK(src,PROC_REF(do_print), D.build_path, amount, efficient_mats, D.dangerous_construction, usr), (20 * timecoeff * amount) ** 0.5) return TRUE /obj/machinery/rnd/production/proc/search(string) diff --git a/code/modules/research/nanites/nanite_chamber.dm b/code/modules/research/nanites/nanite_chamber.dm index 19a73d42fbd..1dedf5b09a3 100644 --- a/code/modules/research/nanites/nanite_chamber.dm +++ b/code/modules/research/nanites/nanite_chamber.dm @@ -63,11 +63,11 @@ //TODO OMINOUS MACHINE SOUNDS set_busy(TRUE, "Initializing injection protocol...", "[initial(icon_state)]_raising") - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Analyzing host bio-structure...", "[initial(icon_state)]_active"),20) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Priming nanites...", "[initial(icon_state)]_active"),40) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Injecting...", "[initial(icon_state)]_active"),70) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Activating nanites...", "[initial(icon_state)]_falling"),110) - addtimer(CALLBACK(src, .proc/complete_injection, locked_state),130) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Analyzing host bio-structure...", "[initial(icon_state)]_active"),20) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Priming nanites...", "[initial(icon_state)]_active"),40) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Injecting...", "[initial(icon_state)]_active"),70) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Activating nanites...", "[initial(icon_state)]_falling"),110) + addtimer(CALLBACK(src,PROC_REF(complete_injection), locked_state),130) /obj/machinery/nanite_chamber/proc/complete_injection(locked_state) //TODO MACHINE DING @@ -90,11 +90,11 @@ //TODO OMINOUS MACHINE SOUNDS set_busy(TRUE, "Initializing cleanup protocol...", "[initial(icon_state)]_raising") - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Analyzing host bio-structure...", "[initial(icon_state)]_active"),20) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Pinging nanites...", "[initial(icon_state)]_active"),40) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Initiating graceful self-destruct sequence...", "[initial(icon_state)]_active"),70) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "Removing debris...", "[initial(icon_state)]_falling"),110) - addtimer(CALLBACK(src, .proc/complete_removal, locked_state),130) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Analyzing host bio-structure...", "[initial(icon_state)]_active"),20) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Pinging nanites...", "[initial(icon_state)]_active"),40) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Initiating graceful self-destruct sequence...", "[initial(icon_state)]_active"),70) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "Removing debris...", "[initial(icon_state)]_falling"),110) + addtimer(CALLBACK(src,PROC_REF(complete_removal), locked_state),130) /obj/machinery/nanite_chamber/proc/complete_removal(locked_state) //TODO MACHINE DING diff --git a/code/modules/research/nanites/nanite_chamber_computer.dm b/code/modules/research/nanites/nanite_chamber_computer.dm index 84664881e61..db3d4bade11 100644 --- a/code/modules/research/nanites/nanite_chamber_computer.dm +++ b/code/modules/research/nanites/nanite_chamber_computer.dm @@ -100,7 +100,7 @@ UnregisterSignal(chamber, COMSIG_PARENT_QDELETING) chamber = new_chamber if(chamber) - RegisterSignal(chamber, COMSIG_PARENT_QDELETING, .proc/react_to_chamber_del) + RegisterSignal(chamber, COMSIG_PARENT_QDELETING,PROC_REF(react_to_chamber_del)) /obj/machinery/computer/nanite_chamber_control/proc/react_to_chamber_del(datum/source) SIGNAL_HANDLER diff --git a/code/modules/research/nanites/nanite_programs/healing.dm b/code/modules/research/nanites/nanite_programs/healing.dm index b00554e52c8..d8292ab9287 100644 --- a/code/modules/research/nanites/nanite_programs/healing.dm +++ b/code/modules/research/nanites/nanite_programs/healing.dm @@ -222,7 +222,7 @@ /datum/nanite_program/defib/on_trigger(comm_message) host_mob.notify_ghost_cloning("Your heart is being defibrillated by nanites. Re-enter your corpse if you want to be revived!") - addtimer(CALLBACK(src, .proc/zap), 50) + addtimer(CALLBACK(src,PROC_REF(zap)), 50) /datum/nanite_program/defib/proc/check_revivable() if(!iscarbon(host_mob)) //nonstandard biology diff --git a/code/modules/research/nanites/nanite_programs/sensor.dm b/code/modules/research/nanites/nanite_programs/sensor.dm index 260811445b8..61ff8963260 100644 --- a/code/modules/research/nanites/nanite_programs/sensor.dm +++ b/code/modules/research/nanites/nanite_programs/sensor.dm @@ -36,7 +36,7 @@ /datum/nanite_program/sensor/repeat/on_trigger(comm_message) var/datum/nanite_extra_setting/ES = extra_settings[NES_DELAY] - addtimer(CALLBACK(src, .proc/send_code), ES.get_value() * 10) + addtimer(CALLBACK(src,PROC_REF(send_code)), ES.get_value() * 10) /datum/nanite_program/sensor/relay_repeat name = "Relay Signal Repeater" @@ -53,7 +53,7 @@ /datum/nanite_program/sensor/relay_repeat/on_trigger(comm_message) var/datum/nanite_extra_setting/ES = extra_settings[NES_DELAY] - addtimer(CALLBACK(src, .proc/send_code), ES.get_value() * 10) + addtimer(CALLBACK(src,PROC_REF(send_code)), ES.get_value() * 10) /datum/nanite_program/sensor/relay_repeat/send_code() var/datum/nanite_extra_setting/relay = extra_settings[NES_RELAY_CHANNEL] @@ -245,10 +245,10 @@ /datum/nanite_program/sensor/voice/on_mob_add() . = ..() - RegisterSignal(host_mob, COMSIG_MOVABLE_HEAR, .proc/on_hear) + RegisterSignal(host_mob, COMSIG_MOVABLE_HEAR,PROC_REF(on_hear)) /datum/nanite_program/sensor/voice/on_mob_remove() - UnregisterSignal(host_mob, COMSIG_MOVABLE_HEAR, .proc/on_hear) + UnregisterSignal(host_mob, COMSIG_MOVABLE_HEAR,PROC_REF(on_hear)) /datum/nanite_program/sensor/voice/proc/on_hear(datum/source, list/hearing_args) var/datum/nanite_extra_setting/sentence = extra_settings[NES_SENTENCE] diff --git a/code/modules/research/nanites/nanite_programs/weapon.dm b/code/modules/research/nanites/nanite_programs/weapon.dm index 1979a6d8042..ef1303fc3c9 100644 --- a/code/modules/research/nanites/nanite_programs/weapon.dm +++ b/code/modules/research/nanites/nanite_programs/weapon.dm @@ -84,7 +84,7 @@ /datum/nanite_program/explosive/on_trigger(comm_message) host_mob.visible_message(span_warning("[host_mob] starts emitting a high-pitched buzzing, and [host_mob.p_their()] skin begins to glow..."),\ span_userdanger("You start emitting a high-pitched buzzing, and your skin begins to glow...")) - addtimer(CALLBACK(src, .proc/boom), clamp((nanites.nanite_volume * 0.35), 25, 150)) + addtimer(CALLBACK(src,PROC_REF(boom)), clamp((nanites.nanite_volume * 0.35), 25, 150)) /datum/nanite_program/explosive/proc/boom() var/nanite_amount = nanites.nanite_volume @@ -178,7 +178,7 @@ sent_directive = ES.get_value() brainwash(host_mob, sent_directive) log_game("A mind control nanite program brainwashed [key_name(host_mob)] with the objective '[sent_directive]'.") - addtimer(CALLBACK(src, .proc/end_brainwashing), 600) + addtimer(CALLBACK(src,PROC_REF(end_brainwashing)), 600) /datum/nanite_program/comm/mind_control/proc/end_brainwashing() if(host_mob.mind && host_mob.mind.has_antag_datum(/datum/antagonist/brainwashed)) diff --git a/code/modules/research/nanites/public_chamber.dm b/code/modules/research/nanites/public_chamber.dm index 26eebbf99a1..b6761aeb93f 100644 --- a/code/modules/research/nanites/public_chamber.dm +++ b/code/modules/research/nanites/public_chamber.dm @@ -45,9 +45,9 @@ //TODO OMINOUS MACHINE SOUNDS set_busy(TRUE, "[initial(icon_state)]_raising") - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_active"),20) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_falling"),60) - addtimer(CALLBACK(src, .proc/complete_injection, locked_state, attacker),80) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "[initial(icon_state)]_active"),20) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "[initial(icon_state)]_falling"),60) + addtimer(CALLBACK(src,PROC_REF(complete_injection), locked_state, attacker),80) /obj/machinery/public_nanite_chamber/proc/complete_injection(locked_state, mob/living/attacker) //TODO MACHINE DING @@ -72,9 +72,9 @@ locked = TRUE set_busy(TRUE, "[initial(icon_state)]_raising") - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_active"),20) - addtimer(CALLBACK(src, .proc/set_busy, TRUE, "[initial(icon_state)]_falling"),40) - addtimer(CALLBACK(src, .proc/complete_cloud_change, locked_state, attacker),60) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "[initial(icon_state)]_active"),20) + addtimer(CALLBACK(src,PROC_REF(set_busy), TRUE, "[initial(icon_state)]_falling"),40) + addtimer(CALLBACK(src,PROC_REF(complete_cloud_change), locked_state, attacker),60) /obj/machinery/public_nanite_chamber/proc/complete_cloud_change(locked_state, mob/living/attacker) locked = locked_state @@ -149,7 +149,7 @@ . = TRUE - addtimer(CALLBACK(src, .proc/try_inject_nanites, attacker), 30) //If someone is shoved in give them a chance to get out before the injection starts + addtimer(CALLBACK(src,PROC_REF(try_inject_nanites), attacker), 30) //If someone is shoved in give them a chance to get out before the injection starts /obj/machinery/public_nanite_chamber/proc/try_inject_nanites(mob/living/attacker) if(occupant) diff --git a/code/modules/research/server.dm b/code/modules/research/server.dm index 2f96281601f..4e62df7c9e7 100644 --- a/code/modules/research/server.dm +++ b/code/modules/research/server.dm @@ -45,7 +45,7 @@ if(. & EMP_PROTECT_SELF) return stat |= EMPED - addtimer(CALLBACK(src, .proc/unemp), severity*9) + addtimer(CALLBACK(src,PROC_REF(unemp)), severity*9) refresh_working() /obj/machinery/rnd/server/proc/unemp() diff --git a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm index d95b73a6924..2485e088a03 100644 --- a/code/modules/research/xenobiology/crossbreeding/_status_effects.dm +++ b/code/modules/research/xenobiology/crossbreeding/_status_effects.dm @@ -68,7 +68,7 @@ var/icon/bluespace /datum/status_effect/slimerecall/on_apply() - RegisterSignal(owner, COMSIG_LIVING_RESIST, .proc/resistField) + RegisterSignal(owner, COMSIG_LIVING_RESIST,PROC_REF(resistField)) to_chat(owner, span_danger("You feel a sudden tug from an unknown force, and feel a pull to bluespace!")) to_chat(owner, span_notice("Resist if you wish avoid the force!")) bluespace = icon('icons/effects/effects.dmi',"chronofield") @@ -102,7 +102,7 @@ var/obj/structure/ice_stasis/cube /datum/status_effect/frozenstasis/on_apply() - RegisterSignal(owner, COMSIG_LIVING_RESIST, .proc/breakCube) + RegisterSignal(owner, COMSIG_LIVING_RESIST,PROC_REF(breakCube)) cube = new /obj/structure/ice_stasis(get_turf(owner)) owner.forceMove(cube) owner.status_flags |= GODMODE diff --git a/code/modules/research/xenobiology/crossbreeding/burning.dm b/code/modules/research/xenobiology/crossbreeding/burning.dm index 32cdc8b91c9..e2dd19976d9 100644 --- a/code/modules/research/xenobiology/crossbreeding/burning.dm +++ b/code/modules/research/xenobiology/crossbreeding/burning.dm @@ -242,7 +242,7 @@ Burning extracts: /obj/item/slimecross/burning/oil/do_effect(mob/user) user.visible_message(span_danger("[src] begins to shake with rapidly increasing force!")) - addtimer(CALLBACK(src, .proc/boom), 50) + addtimer(CALLBACK(src,PROC_REF(boom)), 50) /obj/item/slimecross/burning/oil/proc/boom() explosion(get_turf(src), 2, 4, 4) //Same area as normal oils, but increased high-impact values by one each, then decreased light by 2. diff --git a/code/modules/research/xenobiology/crossbreeding/charged.dm b/code/modules/research/xenobiology/crossbreeding/charged.dm index ff155ecf567..a5202155153 100644 --- a/code/modules/research/xenobiology/crossbreeding/charged.dm +++ b/code/modules/research/xenobiology/crossbreeding/charged.dm @@ -173,7 +173,7 @@ Charged extracts: /obj/item/slimecross/charged/gold/do_effect(mob/user) user.visible_message(span_warning("[src] starts shuddering violently!")) - addtimer(CALLBACK(src, .proc/startTimer), 50) + addtimer(CALLBACK(src,PROC_REF(startTimer)), 50) /obj/item/slimecross/charged/gold/proc/startTimer() START_PROCESSING(SSobj, src) @@ -197,7 +197,7 @@ Charged extracts: /obj/item/slimecross/charged/oil/do_effect(mob/user) user.visible_message(span_danger("[src] begins to shake with rapidly increasing force!")) - addtimer(CALLBACK(src, .proc/boom), 50) + addtimer(CALLBACK(src,PROC_REF(boom)), 50) /obj/item/slimecross/charged/oil/proc/boom() explosion(get_turf(src), 3, 2, 1) //Much smaller effect than normal oils, but devastatingly strong where it does hit. diff --git a/code/modules/research/xenobiology/crossbreeding/chilling.dm b/code/modules/research/xenobiology/crossbreeding/chilling.dm index 3f2a66e01fd..ccdc1b33b62 100644 --- a/code/modules/research/xenobiology/crossbreeding/chilling.dm +++ b/code/modules/research/xenobiology/crossbreeding/chilling.dm @@ -264,7 +264,7 @@ Chilling extracts: /obj/item/slimecross/chilling/oil/do_effect(mob/user) user.visible_message(span_danger("[src] begins to shake with muted intensity!")) - addtimer(CALLBACK(src, .proc/boom), 50) + addtimer(CALLBACK(src,PROC_REF(boom)), 50) /obj/item/slimecross/chilling/oil/proc/boom() explosion(get_turf(src), -1, -1, 10, 0) //Large radius, but mostly light damage, and no flash. diff --git a/code/modules/research/xenobiology/xenobio_camera.dm b/code/modules/research/xenobiology/xenobio_camera.dm index 79570cc46d0..dc2126e3c1e 100644 --- a/code/modules/research/xenobiology/xenobio_camera.dm +++ b/code/modules/research/xenobiology/xenobio_camera.dm @@ -51,7 +51,7 @@ potion_action = new hotkey_help = new stored_slimes = list() - RegisterSignal(src, COMSIG_ATOM_CONTENTS_DEL, .proc/on_contents_del) + RegisterSignal(src, COMSIG_ATOM_CONTENTS_DEL,PROC_REF(on_contents_del)) /obj/machinery/computer/camera_advanced/xenobio/Destroy() stored_slimes = null @@ -107,12 +107,12 @@ hotkey_help.Grant(user) actions += hotkey_help - RegisterSignal(user, COMSIG_XENO_SLIME_CLICK_CTRL, .proc/XenoSlimeClickCtrl) - RegisterSignal(user, COMSIG_XENO_SLIME_CLICK_ALT, .proc/XenoSlimeClickAlt) - RegisterSignal(user, COMSIG_XENO_SLIME_CLICK_SHIFT, .proc/XenoSlimeClickShift) - RegisterSignal(user, COMSIG_XENO_TURF_CLICK_SHIFT, .proc/XenoTurfClickShift) - RegisterSignal(user, COMSIG_XENO_TURF_CLICK_CTRL, .proc/XenoTurfClickCtrl) - RegisterSignal(user, COMSIG_XENO_MONKEY_CLICK_CTRL, .proc/XenoMonkeyClickCtrl) + RegisterSignal(user, COMSIG_XENO_SLIME_CLICK_CTRL,PROC_REF(XenoSlimeClickCtrl)) + RegisterSignal(user, COMSIG_XENO_SLIME_CLICK_ALT,PROC_REF(XenoSlimeClickAlt)) + RegisterSignal(user, COMSIG_XENO_SLIME_CLICK_SHIFT,PROC_REF(XenoSlimeClickShift)) + RegisterSignal(user, COMSIG_XENO_TURF_CLICK_SHIFT,PROC_REF(XenoTurfClickShift)) + RegisterSignal(user, COMSIG_XENO_TURF_CLICK_CTRL,PROC_REF(XenoTurfClickCtrl)) + RegisterSignal(user, COMSIG_XENO_MONKEY_CLICK_CTRL,PROC_REF(XenoMonkeyClickCtrl)) /obj/machinery/computer/camera_advanced/xenobio/remove_eye_control(mob/living/user) UnregisterSignal(user, COMSIG_XENO_SLIME_CLICK_CTRL) diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index 665401102a5..6d8a514adda 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -460,7 +460,7 @@ return to_chat(user, span_notice("You feel your skin harden and become more resistant.")) species.armor += 25 - addtimer(CALLBACK(src, .proc/reset_armor, species), 1200) + addtimer(CALLBACK(src,PROC_REF(reset_armor), species), 1200) return 450 if(SLIME_ACTIVATE_MAJOR) diff --git a/code/modules/ruins/icemoonruin_code/hotsprings.dm b/code/modules/ruins/icemoonruin_code/hotsprings.dm index 12704924b4b..7fec472dfa5 100644 --- a/code/modules/ruins/icemoonruin_code/hotsprings.dm +++ b/code/modules/ruins/icemoonruin_code/hotsprings.dm @@ -23,7 +23,7 @@ GLOBAL_LIST_EMPTY(cursed_minds) if(GLOB.cursed_minds[L.mind]) return GLOB.cursed_minds[L.mind] = TRUE - RegisterSignal(L.mind, COMSIG_PARENT_QDELETING, .proc/remove_from_cursed) + RegisterSignal(L.mind, COMSIG_PARENT_QDELETING,PROC_REF(remove_from_cursed)) L = wabbajack(L, "animal") // Appearance randomization removed so citadel players don't get randomized into some ungodly ugly creature and complain var/turf/T = find_safe_turf() L.forceMove(T) diff --git a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm index 46e566508be..6e18789fa5e 100644 --- a/code/modules/ruins/objects_and_mobs/necropolis_gate.dm +++ b/code/modules/ruins/objects_and_mobs/necropolis_gate.dm @@ -159,7 +159,7 @@ toggle_the_gate() /obj/structure/necropolis_gate/proc/autoclose_in(wait) - addtimer(CALLBACK(src, .proc/autoclose), wait, TIMER_UNIQUE | TIMER_NO_HASH_WAIT | TIMER_OVERRIDE) + addtimer(CALLBACK(src,PROC_REF(autoclose)), wait, TIMER_UNIQUE | TIMER_NO_HASH_WAIT | TIMER_OVERRIDE) /obj/structure/necropolis_gate/locked @@ -298,7 +298,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate) . = ..() icon_state = "[tile_key][rand(1, tile_random_sprite_max)]" var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) @@ -328,7 +328,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate) switch(fall_on_cross) if(COLLAPSE_ON_CROSS, DESTROY_ON_CROSS) if((I && I.w_class >= WEIGHT_CLASS_BULKY) || (L && !(L.movement_type & FLYING) && L.mob_size >= MOB_SIZE_HUMAN)) //too heavy! too big! aaah! - INVOKE_ASYNC(src, .proc/collapse) + INVOKE_ASYNC(src,PROC_REF(collapse)) if(UNIQUE_EFFECT) crossed_effect(AM) @@ -347,7 +347,7 @@ GLOBAL_DATUM(necropolis_gate, /obj/structure/necropolis_gate/legion_gate) if(break_that_sucker) QDEL_IN(src, 10) else - addtimer(CALLBACK(src, .proc/rebuild), 55) + addtimer(CALLBACK(src,PROC_REF(rebuild)), 55) /obj/structure/stone_tile/proc/rebuild() pixel_x = initial(pixel_x) diff --git a/code/modules/ruins/objects_and_mobs/sin_ruins.dm b/code/modules/ruins/objects_and_mobs/sin_ruins.dm index 47be724c5b7..476b18da9c0 100644 --- a/code/modules/ruins/objects_and_mobs/sin_ruins.dm +++ b/code/modules/ruins/objects_and_mobs/sin_ruins.dm @@ -24,7 +24,7 @@ know it'll be worth it.") icon_state = "slots2" playsound(src, 'sound/lavaland/cursed_slot_machine.ogg', 50, 0) - addtimer(CALLBACK(src, .proc/determine_victor, user), 50) + addtimer(CALLBACK(src,PROC_REF(determine_victor), user), 50) /obj/structure/cursed_slot_machine/proc/determine_victor(mob/living/user) icon_state = "slots1" @@ -50,7 +50,7 @@ /obj/structure/cursed_money/Initialize() . = ..() - addtimer(CALLBACK(src, .proc/collapse), 600) + addtimer(CALLBACK(src,PROC_REF(collapse)), 600) /obj/structure/cursed_money/proc/collapse() visible_message("[src] falls in on itself, \ diff --git a/code/modules/security_levels/keycard_authentication.dm b/code/modules/security_levels/keycard_authentication.dm index 7ffe568044b..87ecc81ad12 100644 --- a/code/modules/security_levels/keycard_authentication.dm +++ b/code/modules/security_levels/keycard_authentication.dm @@ -28,7 +28,7 @@ GLOBAL_DATUM_INIT(keycard_events, /datum/events, new) /obj/machinery/keycard_auth/Initialize() . = ..() - ev = GLOB.keycard_events.addEvent("triggerEvent", CALLBACK(src, .proc/triggerEvent)) + ev = GLOB.keycard_events.addEvent("triggerEvent", CALLBACK(src,PROC_REF(triggerEvent))) /obj/machinery/keycard_auth/Destroy() GLOB.keycard_events.clearEvent("triggerEvent", ev) @@ -93,7 +93,7 @@ GLOBAL_DATUM_INIT(keycard_events, /datum/events, new) event = event_type waiting = 1 GLOB.keycard_events.fireEvent("triggerEvent", src, trigger_id) - addtimer(CALLBACK(src, .proc/eventSent), 20) + addtimer(CALLBACK(src,PROC_REF(eventSent)), 20) /obj/machinery/keycard_auth/proc/eventSent() triggerer = null @@ -104,7 +104,7 @@ GLOBAL_DATUM_INIT(keycard_events, /datum/events, new) icon_state = "auth_on" first_id = trigger_id event_source = source - addtimer(CALLBACK(src, .proc/eventTriggered), 20) + addtimer(CALLBACK(src,PROC_REF(eventTriggered)), 20) /obj/machinery/keycard_auth/proc/eventTriggered() icon_state = "auth_off" diff --git a/code/modules/shuttle/ripple.dm b/code/modules/shuttle/ripple.dm index 4bf6eac0ebe..2a0bdf7f9ca 100644 --- a/code/modules/shuttle/ripple.dm +++ b/code/modules/shuttle/ripple.dm @@ -14,7 +14,7 @@ /obj/effect/abstract/ripple/Initialize(mapload, time_left) . = ..() animate(src, alpha=255, time=time_left) - addtimer(CALLBACK(src, .proc/stop_animation), 8, TIMER_CLIENT_TIME) + addtimer(CALLBACK(src,PROC_REF(stop_animation)), 8, TIMER_CLIENT_TIME) /obj/effect/abstract/ripple/proc/stop_animation() icon_state = "medi_holo_no_anim" diff --git a/code/modules/shuttle/special.dm b/code/modules/shuttle/special.dm index 47a8b537d78..69f2bc0e9c6 100644 --- a/code/modules/shuttle/special.dm +++ b/code/modules/shuttle/special.dm @@ -94,7 +94,7 @@ L.visible_message(span_revennotice("A strange purple glow wraps itself around [L] as [L.p_they()] suddenly fall[L.p_s()] unconscious."), span_revendanger("[desc]")) // Don't let them sit suround unconscious forever - addtimer(CALLBACK(src, .proc/sleeper_dreams, L), 100) + addtimer(CALLBACK(src,PROC_REF(sleeper_dreams), L), 100) // Existing sleepers for(var/i in found) @@ -181,7 +181,7 @@ . = ..() var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/smithing/anvil.dm b/code/modules/smithing/anvil.dm index c83016e6f08..d3abd3fe107 100644 --- a/code/modules/smithing/anvil.dm +++ b/code/modules/smithing/anvil.dm @@ -108,7 +108,7 @@ GLOBAL_LIST_INIT(anvil_recipes, list( /obj/structure/anvil/Initialize(mapload) . = ..() - RegisterSignal(src, COMSIG_CLICK_ALT, .proc/ResetAnvil) // emergency way to reset the anvil incase something goes wrong. + RegisterSignal(src, COMSIG_CLICK_ALT,PROC_REF(ResetAnvil)) // emergency way to reset the anvil incase something goes wrong. currentquality = anvilquality /obj/structure/anvil/attackby(obj/item/I, mob/user) diff --git a/code/modules/smithing/finished_items.dm b/code/modules/smithing/finished_items.dm index aa27a9f8fdc..931a04b775c 100644 --- a/code/modules/smithing/finished_items.dm +++ b/code/modules/smithing/finished_items.dm @@ -70,8 +70,8 @@ /obj/item/melee/smith/twohand/Initialize() . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/on_wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/on_unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(on_wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(on_unwield)) /obj/item/melee/smith/twohand/proc/on_wield(obj/item/source, mob/user) wielded = TRUE diff --git a/code/modules/spells/spell_but_good.dm b/code/modules/spells/spell_but_good.dm index a064ff98aef..f703c0967e1 100644 --- a/code/modules/spells/spell_but_good.dm +++ b/code/modules/spells/spell_but_good.dm @@ -55,7 +55,7 @@ if(!isliving(loc)) // fuck qdel(src) return - RegisterSignal(loc, COMSIG_MOB_CLICKON, .proc/intercept_click) + RegisterSignal(loc, COMSIG_MOB_CLICKON,PROC_REF(intercept_click)) owner = WEAKREF(loc) /obj/item/hand_item/caster/Destroy() diff --git a/code/modules/spells/spell_types/area_teleport.dm b/code/modules/spells/spell_types/area_teleport.dm index fa4be10141b..359c69c7479 100644 --- a/code/modules/spells/spell_types/area_teleport.dm +++ b/code/modules/spells/spell_types/area_teleport.dm @@ -15,7 +15,7 @@ return invocation(thearea,user) if(charge_type == "recharge" && recharge) - INVOKE_ASYNC(src, .proc/start_recharge) + INVOKE_ASYNC(src,PROC_REF(start_recharge)) cast(targets,thearea,user) after_cast(targets) diff --git a/code/modules/spells/spell_types/cone_spells.dm b/code/modules/spells/spell_types/cone_spells.dm index 26dd1579861..b0aa076794b 100644 --- a/code/modules/spells/spell_types/cone_spells.dm +++ b/code/modules/spells/spell_types/cone_spells.dm @@ -114,4 +114,4 @@ var/list/cone_turfs = cone_helper(get_turf(user), user.dir, cone_levels) for(var/list/turf_list in cone_turfs) level_counter++ - addtimer(CALLBACK(src, .proc/do_cone_effects, turf_list, level_counter), 2 * level_counter) + addtimer(CALLBACK(src,PROC_REF(do_cone_effects), turf_list, level_counter), 2 * level_counter) diff --git a/code/modules/spells/spell_types/construct_spells.dm b/code/modules/spells/spell_types/construct_spells.dm index a970f0045c5..4becb00cf9b 100644 --- a/code/modules/spells/spell_types/construct_spells.dm +++ b/code/modules/spells/spell_types/construct_spells.dm @@ -213,7 +213,7 @@ target.playsound_local(get_turf(target), 'sound/hallucinations/i_see_you1.ogg', 50, 1) user.playsound_local(get_turf(user), 'sound/effects/ghost2.ogg', 50, 1) target.become_blind(ABYSSAL_GAZE_BLIND) - addtimer(CALLBACK(src, .proc/cure_blindness, target), 40) + addtimer(CALLBACK(src,PROC_REF(cure_blindness), target), 40) target.adjust_bodytemperature(-200) /obj/effect/proc_holder/spell/targeted/abyssal_gaze/proc/cure_blindness(mob/target) diff --git a/code/modules/spells/spell_types/devil.dm b/code/modules/spells/spell_types/devil.dm index 8e9b8dbf026..3c576603edb 100644 --- a/code/modules/spells/spell_types/devil.dm +++ b/code/modules/spells/spell_types/devil.dm @@ -161,7 +161,7 @@ client.eye = src visible_message(span_warning("[src] appears in a fiery blaze!")) playsound(get_turf(src), 'sound/magic/exit_blood.ogg', 100, 1, -1) - addtimer(CALLBACK(src, .proc/fakefireextinguish), 15, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(fakefireextinguish)), 15, TIMER_UNIQUE) /obj/effect/proc_holder/spell/targeted/sintouch name = "Sin Touch" diff --git a/code/modules/spells/spell_types/ethereal_jaunt.dm b/code/modules/spells/spell_types/ethereal_jaunt.dm index 2abe80c8caa..4766eb484d3 100644 --- a/code/modules/spells/spell_types/ethereal_jaunt.dm +++ b/code/modules/spells/spell_types/ethereal_jaunt.dm @@ -19,7 +19,7 @@ /obj/effect/proc_holder/spell/targeted/ethereal_jaunt/cast(list/targets,mob/user = usr) //magnets, so mostly hardcoded play_sound("enter",user) for(var/mob/living/target in targets) - INVOKE_ASYNC(src, .proc/do_jaunt, target) + INVOKE_ASYNC(src,PROC_REF(do_jaunt), target) /obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/do_jaunt(mob/living/target) target.mob_transforming = 1 diff --git a/code/modules/spells/spell_types/genetic.dm b/code/modules/spells/spell_types/genetic.dm index 8a71ac617e2..cd7908e1c83 100644 --- a/code/modules/spells/spell_types/genetic.dm +++ b/code/modules/spells/spell_types/genetic.dm @@ -28,7 +28,7 @@ for(var/A in traits) ADD_TRAIT(target, A, GENETICS_SPELL) active_on += target - addtimer(CALLBACK(src, .proc/remove, target), duration) + addtimer(CALLBACK(src,PROC_REF(remove), target), duration) /obj/effect/proc_holder/spell/targeted/genetic/Destroy() . = ..() diff --git a/code/modules/spells/spell_types/knock.dm b/code/modules/spells/spell_types/knock.dm index e622b4a1cad..25f808a5dc3 100644 --- a/code/modules/spells/spell_types/knock.dm +++ b/code/modules/spells/spell_types/knock.dm @@ -16,9 +16,9 @@ SEND_SOUND(user, sound('sound/magic/knock.ogg')) for(var/turf/T in targets) for(var/obj/machinery/door/door in T.contents) - INVOKE_ASYNC(src, .proc/open_door, door) + INVOKE_ASYNC(src,PROC_REF(open_door), door) for(var/obj/structure/closet/C in T.contents) - INVOKE_ASYNC(src, .proc/open_closet, C) + INVOKE_ASYNC(src,PROC_REF(open_closet), C) /obj/effect/proc_holder/spell/aoe_turf/knock/proc/open_door(obj/machinery/door/door) if(istype(door, /obj/machinery/door/airlock)) diff --git a/code/modules/spells/spell_types/lichdom.dm b/code/modules/spells/spell_types/lichdom.dm index bc835c89a56..865eeba41b0 100644 --- a/code/modules/spells/spell_types/lichdom.dm +++ b/code/modules/spells/spell_types/lichdom.dm @@ -111,7 +111,7 @@ return if(!mind.current || (mind.current && mind.current.stat == DEAD)) - addtimer(CALLBACK(src, .proc/rise), respawn_time, TIMER_UNIQUE) + addtimer(CALLBACK(src,PROC_REF(rise)), respawn_time, TIMER_UNIQUE) /obj/item/phylactery/proc/rise() if(mind.current && mind.current.stat != DEAD) diff --git a/code/modules/spells/spell_types/spacetime_distortion.dm b/code/modules/spells/spell_types/spacetime_distortion.dm index d641be3ae3e..6372c39ae94 100644 --- a/code/modules/spells/spell_types/spacetime_distortion.dm +++ b/code/modules/spells/spell_types/spacetime_distortion.dm @@ -35,7 +35,7 @@ perform(turf_steps,user=user) /obj/effect/proc_holder/spell/spacetime_dist/after_cast(list/targets) - addtimer(CALLBACK(src, .proc/clean_turfs), duration) + addtimer(CALLBACK(src,PROC_REF(clean_turfs)), duration) /obj/effect/proc_holder/spell/spacetime_dist/cast(list/targets, mob/user = usr) effects = list() @@ -83,7 +83,7 @@ . = ..() setDir(pick(GLOB.cardinals)) var/static/list/loc_connections = list( - COMSIG_ATOM_ENTERED = .proc/on_entered, + COMSIG_ATOM_ENTERED =PROC_REF(on_entered), ) AddElement(/datum/element/connect_loc, loc_connections) diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index d72a6e33775..0f412ebdeba 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -31,7 +31,7 @@ items_list += I // ayy only dropped signal for performance, we can't possibly have shitcode that doesn't call it when removing items from a mob, right? // .. right??! - RegisterSignal(I, COMSIG_ITEM_DROPPED, .proc/magnetic_catch) + RegisterSignal(I, COMSIG_ITEM_DROPPED,PROC_REF(magnetic_catch)) /obj/item/organ/cyberimp/arm/proc/magnetic_catch(datum/source, mob/user) . = COMPONENT_DROPPED_RELOCATION @@ -285,7 +285,7 @@ /obj/item/organ/cyberimp/arm/shield/Insert(mob/living/carbon/M, special = FALSE, drop_if_replaced = TRUE) . = ..() if(.) - RegisterSignal(M, COMSIG_LIVING_ACTIVE_BLOCK_START, .proc/on_signal) + RegisterSignal(M, COMSIG_LIVING_ACTIVE_BLOCK_START,PROC_REF(on_signal)) /obj/item/organ/cyberimp/arm/shield/Remove(special = FALSE) UnregisterSignal(owner, COMSIG_LIVING_ACTIVE_BLOCK_START) diff --git a/code/modules/surgery/organs/augments_chest.dm b/code/modules/surgery/organs/augments_chest.dm index 06ceeb4ef99..8474634f81e 100644 --- a/code/modules/surgery/organs/augments_chest.dm +++ b/code/modules/surgery/organs/augments_chest.dm @@ -24,7 +24,7 @@ synthesizing = TRUE to_chat(owner, span_notice("You feel less hungry...")) owner.adjust_nutrition(50) - addtimer(CALLBACK(src, .proc/synth_cool), 50) + addtimer(CALLBACK(src,PROC_REF(synth_cool)), 50) /obj/item/organ/cyberimp/chest/nutriment/proc/synth_cool() synthesizing = FALSE @@ -69,7 +69,7 @@ else if(!do_heal) convalescence_time = world.time + DEF_CONVALESCENCE_TIME if(. && (do_heal || world.time < convalescence_time)) - addtimer(CALLBACK(src, .proc/heal), 3 SECONDS) + addtimer(CALLBACK(src,PROC_REF(heal)), 3 SECONDS) else cooldown = revive_cost + world.time reviving = FALSE @@ -117,7 +117,7 @@ if(H.stat != DEAD && prob(severity/2) && H.can_heartattack()) H.set_heartattack(TRUE) to_chat(H, span_userdanger("You feel a horrible agony in your chest!")) - addtimer(CALLBACK(src, .proc/undo_heart_attack), (60 * severity/100) SECONDS) + addtimer(CALLBACK(src,PROC_REF(undo_heart_attack)), (60 * severity/100) SECONDS) /obj/item/organ/cyberimp/chest/reviver/proc/undo_heart_attack() var/mob/living/carbon/human/H = owner @@ -166,7 +166,7 @@ on = TRUE if(allow_thrust(0.01)) ion_trail.start() - RegisterSignal(owner, COMSIG_MOVABLE_MOVED, .proc/move_react) + RegisterSignal(owner, COMSIG_MOVABLE_MOVED,PROC_REF(move_react)) owner.add_movespeed_modifier(/datum/movespeed_modifier/jetpack/cybernetic) if(!silent) to_chat(owner, span_notice("You turn your thrusters set on.")) diff --git a/code/modules/surgery/organs/augments_internal.dm b/code/modules/surgery/organs/augments_internal.dm index a4b825dbba5..1e453a37be9 100644 --- a/code/modules/surgery/organs/augments_internal.dm +++ b/code/modules/surgery/organs/augments_internal.dm @@ -112,7 +112,7 @@ return crit_fail = TRUE organ_flags |= ORGAN_FAILING - addtimer(CALLBACK(src, .proc/reboot), 0.9 * severity) + addtimer(CALLBACK(src,PROC_REF(reboot)), 0.9 * severity) /obj/item/organ/cyberimp/brain/anti_stun/proc/reboot() crit_fail = FALSE diff --git a/code/modules/surgery/organs/eyes.dm b/code/modules/surgery/organs/eyes.dm index 92cb695d883..1f5939aa2b9 100644 --- a/code/modules/surgery/organs/eyes.dm +++ b/code/modules/surgery/organs/eyes.dm @@ -330,7 +330,7 @@ if(!silent) to_chat(owner, span_warning("Your [src] clicks and makes a whining noise, before shooting out a beam of light!")) active = TRUE - RegisterSignal(owner, COMSIG_ATOM_DIR_CHANGE, .proc/update_visuals) + RegisterSignal(owner, COMSIG_ATOM_DIR_CHANGE,PROC_REF(update_visuals)) cycle_mob_overlay() /obj/item/organ/eyes/robotic/glow/proc/deactivate(silent = FALSE) diff --git a/code/modules/surgery/organs/heart.dm b/code/modules/surgery/organs/heart.dm index 2e7e4d88710..e0bca1cfe25 100644 --- a/code/modules/surgery/organs/heart.dm +++ b/code/modules/surgery/organs/heart.dm @@ -31,7 +31,7 @@ /obj/item/organ/heart/Remove(special = FALSE) if(!special) - addtimer(CALLBACK(src, .proc/stop_if_unowned), 12 SECONDS) + addtimer(CALLBACK(src,PROC_REF(stop_if_unowned)), 12 SECONDS) return ..() /obj/item/organ/heart/proc/stop_if_unowned() @@ -44,7 +44,7 @@ user.visible_message("[user] squeezes [src] to \ make it beat again!",span_notice("You squeeze [src] to make it beat again!")) Restart() - addtimer(CALLBACK(src, .proc/stop_if_unowned), 80) + addtimer(CALLBACK(src,PROC_REF(stop_if_unowned)), 80) /obj/item/organ/heart/proc/Stop() beating = 0 @@ -199,7 +199,7 @@ obj/item/organ/heart/slime if(. & EMP_PROTECT_SELF) return Stop() - addtimer(CALLBACK(src, .proc/Restart), 0.2*severity SECONDS) + addtimer(CALLBACK(src,PROC_REF(Restart)), 0.2*severity SECONDS) damage += severity /obj/item/organ/heart/cybernetic/upgraded diff --git a/code/modules/surgery/organs/organ_internal.dm b/code/modules/surgery/organs/organ_internal.dm index 117d7ebf9af..ec033cb1c88 100644 --- a/code/modules/surgery/organs/organ_internal.dm +++ b/code/modules/surgery/organs/organ_internal.dm @@ -33,7 +33,7 @@ /obj/item/organ/Initialize() . = ..() if(organ_flags & ORGAN_EDIBLE) - AddComponent(/datum/component/edible, food_reagents, null, RAW | MEAT | GROSS, null, 10, null, null, null, CALLBACK(src, .proc/OnEatFrom)) + AddComponent(/datum/component/edible, food_reagents, null, RAW | MEAT | GROSS, null, 10, null, null, null, CALLBACK(src,PROC_REF(OnEatFrom))) START_PROCESSING(SSobj, src) /obj/item/organ/Destroy() diff --git a/code/modules/surgery/organs/stomach.dm b/code/modules/surgery/organs/stomach.dm index 5550eb4570a..27d3cc1ef89 100644 --- a/code/modules/surgery/organs/stomach.dm +++ b/code/modules/surgery/organs/stomach.dm @@ -132,8 +132,8 @@ /obj/item/organ/stomach/ethereal/Insert(mob/living/carbon/M, special = 0, drop_if_replaced = TRUE) ..() - RegisterSignal(owner, COMSIG_PROCESS_BORGCHARGER_OCCUPANT, .proc/charge) - RegisterSignal(owner, COMSIG_LIVING_ELECTROCUTE_ACT, .proc/on_electrocute) + RegisterSignal(owner, COMSIG_PROCESS_BORGCHARGER_OCCUPANT,PROC_REF(charge)) + RegisterSignal(owner, COMSIG_LIVING_ELECTROCUTE_ACT,PROC_REF(on_electrocute)) /obj/item/organ/stomach/ethereal/Remove(mob/living/carbon/M, special = 0) UnregisterSignal(owner, COMSIG_PROCESS_BORGCHARGER_OCCUPANT) diff --git a/code/modules/surgery/organs/tongue.dm b/code/modules/surgery/organs/tongue.dm index 0a023f1e632..e6cbed1335d 100644 --- a/code/modules/surgery/organs/tongue.dm +++ b/code/modules/surgery/organs/tongue.dm @@ -105,14 +105,14 @@ M.dna.species.say_mod = say_mod if(length(initial_accents) || length(accents)) //M.UnregisterSignal(M, COMSIG_MOB_SAY) - RegisterSignal(M, COMSIG_MOB_SAY, .proc/handle_speech, override = TRUE) + RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech), override = TRUE) /obj/item/organ/tongue/Remove(special = FALSE) if(!QDELETED(owner)) if(say_mod && owner.dna?.species) owner.dna.species.say_mod = initial(owner.dna.species.say_mod) - UnregisterSignal(owner, COMSIG_MOB_SAY, .proc/handle_speech) + UnregisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) //owner.RegisterSignal(owner, COMSIG_MOB_SAY, /mob/living/carbon/.proc/handle_tongueless_speech) return ..() diff --git a/code/modules/tgui_panel/tgui_panel.dm b/code/modules/tgui_panel/tgui_panel.dm index 73d56426c1b..c9d3b4ea72c 100644 --- a/code/modules/tgui_panel/tgui_panel.dm +++ b/code/modules/tgui_panel/tgui_panel.dm @@ -16,7 +16,7 @@ /datum/tgui_panel/New(client/client) src.client = client window = new(client, "browseroutput") - window.subscribe(src, .proc/on_message) + window.subscribe(src,PROC_REF(on_message)) /datum/tgui_panel/Del() window.unsubscribe(src) @@ -48,8 +48,8 @@ window.send_asset(get_asset_datum(/datum/asset/spritesheet/chat)) initialized_at = world.time - addtimer(CALLBACK(src, .proc/request_telemetry), 1 SECONDS) - addtimer(CALLBACK(src, .proc/on_initialize_timed_out), 10 SECONDS) + addtimer(CALLBACK(src,PROC_REF(request_telemetry)), 1 SECONDS) + addtimer(CALLBACK(src,PROC_REF(on_initialize_timed_out)), 10 SECONDS) /** * private diff --git a/code/modules/tooltip/tooltip.dm b/code/modules/tooltip/tooltip.dm index 31e570cd943..455ee8bdf0a 100644 --- a/code/modules/tooltip/tooltip.dm +++ b/code/modules/tooltip/tooltip.dm @@ -88,7 +88,7 @@ Notes: /datum/tooltip/proc/hide() if (queueHide) - addtimer(CALLBACK(src, .proc/do_hide), 1) + addtimer(CALLBACK(src,PROC_REF(do_hide)), 1) else do_hide() diff --git a/code/modules/unit_tests/combat.dm b/code/modules/unit_tests/combat.dm index 1bf0883bd78..73a58d8930e 100644 --- a/code/modules/unit_tests/combat.dm +++ b/code/modules/unit_tests/combat.dm @@ -53,9 +53,9 @@ var/mob/living/carbon/human/victim = allocate(/mob/living/carbon/human) var/obj/item/storage/toolbox/toolbox = allocate(/obj/item/storage/toolbox) - RegisterSignal(toolbox, COMSIG_ITEM_PRE_ATTACK, .proc/pre_attack_hit) - RegisterSignal(toolbox, COMSIG_ITEM_ATTACK, .proc/attack_hit) - RegisterSignal(toolbox, COMSIG_ITEM_AFTERATTACK, .proc/post_attack_hit) + RegisterSignal(toolbox, COMSIG_ITEM_PRE_ATTACK,PROC_REF(pre_attack_hit)) + RegisterSignal(toolbox, COMSIG_ITEM_ATTACK,PROC_REF(attack_hit)) + RegisterSignal(toolbox, COMSIG_ITEM_AFTERATTACK,PROC_REF(post_attack_hit)) attacker.put_in_active_hand(toolbox, forced = TRUE) attacker.a_intent_change(INTENT_HARM) diff --git a/code/modules/unit_tests/emoting.dm b/code/modules/unit_tests/emoting.dm index 5795ab34374..2e9fefe0815 100644 --- a/code/modules/unit_tests/emoting.dm +++ b/code/modules/unit_tests/emoting.dm @@ -3,7 +3,7 @@ /datum/unit_test/emoting/Run() var/mob/living/carbon/human/human = allocate(/mob/living/carbon/human) - RegisterSignal(human, COMSIG_MOB_EMOTE, .proc/on_emote_used) + RegisterSignal(human, COMSIG_MOB_EMOTE,PROC_REF(on_emote_used)) human.say("*shrug") TEST_ASSERT_EQUAL(emotes_used, 1, "Human did not shrug") diff --git a/code/modules/vehicles/scooter.dm b/code/modules/vehicles/scooter.dm index 6ae1577dbf9..8f6a376224c 100644 --- a/code/modules/vehicles/scooter.dm +++ b/code/modules/vehicles/scooter.dm @@ -134,7 +134,7 @@ // playsound(src, 'sound/vehicles/skateboard_roll.ogg', 50, TRUE) // if(prob (25)) // sparks.start() //the most radical way to start plasma fires -// addtimer(CALLBACK(src, .proc/grind), 2) +// addtimer(CALLBACK(src,PROC_REF(grind)), 2) // return // else // grinding = FALSE diff --git a/code/modules/vehicles/wheelchair.dm b/code/modules/vehicles/wheelchair.dm index 25e39a51537..d5749997543 100644 --- a/code/modules/vehicles/wheelchair.dm +++ b/code/modules/vehicles/wheelchair.dm @@ -26,7 +26,7 @@ /obj/vehicle/ridden/wheelchair/ComponentInitialize() //Since it's technically a chair I want it to have chair properties . = ..() - AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE, CALLBACK(src, .proc/can_user_rotate),CALLBACK(src, .proc/can_be_rotated),null) + AddComponent(/datum/component/simple_rotation,ROTATION_ALTCLICK | ROTATION_CLOCKWISE, CALLBACK(src,PROC_REF(can_user_rotate),CALLBACK(src),PROC_REF(can_be_rotated),null)) /obj/vehicle/ridden/wheelchair/obj_destruction(damage_flag) new /obj/item/stack/rods(drop_location(), 1) diff --git a/code/modules/vending/brahminvendordm.dm b/code/modules/vending/brahminvendordm.dm index 03aae646508..d0a10d7e7fa 100644 --- a/code/modules/vending/brahminvendordm.dm +++ b/code/modules/vending/brahminvendordm.dm @@ -68,7 +68,7 @@ GLOBAL_VAR(orbital_cow_cooldown) COOLDOWN_START(src, clickyclick, 4 SECONDS) playsound(src, 'sound/machines/keyboard_beep.ogg', 40, ignore_walls = TRUE) user.show_message(span_notice("You press one or more buttons on the uplink...")) - addtimer(CALLBACK(src, .proc/claim_beacon, user), 3 SECONDS) + addtimer(CALLBACK(src,PROC_REF(claim_beacon), user), 3 SECONDS) /obj/item/brahmin_beacon/proc/claim_beacon(mob/user) if(!GLOB.orbital_cow_catapult_ready) @@ -84,9 +84,9 @@ GLOBAL_VAR(orbital_cow_cooldown) playsound(src, 'sound/machines/fuckedup_fax.ogg', 80, ignore_walls = TRUE) if(in_range(src, user)) user.show_message(span_notice("...and the uplink starts making noises like it's doing something!")) - addtimer(CALLBACK(src, .proc/drop_cow, user), 7.5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(drop_cow), user), 7.5 SECONDS) addtimer(VARSET_CALLBACK(GLOB, orbital_cow_catapult_ready, TRUE), COW_CANNON_RELOAD_DELAY) - addtimer(CALLBACK(src, .proc/reset_beacon), COW_CANNON_RELOAD_DELAY) + addtimer(CALLBACK(src,PROC_REF(reset_beacon)), COW_CANNON_RELOAD_DELAY) /obj/item/brahmin_beacon/proc/drop_cow(mob/user) var/obj/structure/closet/supplypod/bluespacepod/pod = new() @@ -109,7 +109,7 @@ GLOBAL_VAR(orbital_cow_cooldown) var/turf/hereiam = get_turf(src) hereiam.visible_message(span_userdanger("[src] starts beeping furiously! HIT THE DECK!")) new /obj/effect/abstract/DPtarget(get_turf(src), pod) - addtimer(CALLBACK(src, .proc/reset_beacon), 7.5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(reset_beacon)), 7.5 SECONDS) /obj/item/brahmin_beacon/proc/reset_beacon(mob/user) delivering_cow = FALSE @@ -120,6 +120,6 @@ GLOBAL_VAR(orbital_cow_cooldown) if(beeps_left-- < 0) beeps_left = initial(beeps_left) return - addtimer(CALLBACK(src, .proc/beep_loop), 0.2 SECONDS) + addtimer(CALLBACK(src,PROC_REF(beep_loop)), 0.2 SECONDS) #undef COW_CANNON_RELOAD_DELAY diff --git a/code/modules/vore/eating/belly_obj.dm b/code/modules/vore/eating/belly_obj.dm index 500a3026016..b3c8f492ec8 100644 --- a/code/modules/vore/eating/belly_obj.dm +++ b/code/modules/vore/eating/belly_obj.dm @@ -252,15 +252,15 @@ /obj/vore_belly/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_VORE_DEVOUR_ATOM, .proc/nom_mob) - RegisterSignal(src, COMSIG_VORE_STOP_SOUNDS, .proc/stop_sounds) - RegisterSignal(src, COMSIG_VORE_AUTO_EMOTE, .proc/auto_emote) - RegisterSignal(src, COMSIG_VORE_ADD_BELLY, .proc/add_belly) - RegisterSignal(src, COMSIG_BELLY_EXPEL_SPECIFIC, .proc/release_specific_contents) - RegisterSignal(src, COMSIG_VORE_EXPEL_MOB_OOC, .proc/ooc_escape) - RegisterSignal(src, COMSIG_VORE_EXPEL_ALL, .proc/release_all_contents) - RegisterSignal(src, COMSIG_VORE_RECALCULATE_SLOWDOWN, .proc/update_slowdowns) - RegisterSignal(src, COMSIG_BELLY_HANDLE_TRASH, .proc/hork_trash) + RegisterSignal(src, COMSIG_VORE_DEVOUR_ATOM,PROC_REF(nom_mob)) + RegisterSignal(src, COMSIG_VORE_STOP_SOUNDS,PROC_REF(stop_sounds)) + RegisterSignal(src, COMSIG_VORE_AUTO_EMOTE,PROC_REF(auto_emote)) + RegisterSignal(src, COMSIG_VORE_ADD_BELLY,PROC_REF(add_belly)) + RegisterSignal(src, COMSIG_BELLY_EXPEL_SPECIFIC,PROC_REF(release_specific_contents)) + RegisterSignal(src, COMSIG_VORE_EXPEL_MOB_OOC,PROC_REF(ooc_escape)) + RegisterSignal(src, COMSIG_VORE_EXPEL_ALL,PROC_REF(release_all_contents)) + RegisterSignal(src, COMSIG_VORE_RECALCULATE_SLOWDOWN,PROC_REF(update_slowdowns)) + RegisterSignal(src, COMSIG_BELLY_HANDLE_TRASH,PROC_REF(hork_trash)) /obj/vore_belly/Destroy() // be kind, undefined @@ -294,11 +294,11 @@ SIGNAL_HANDLER owner = new_owner START_PROCESSING(SSvore, src) - RegisterSignal(new_owner, COMSIG_VORE_STOP_SOUNDS, .proc/stop_sounds) - RegisterSignal(new_owner, COMSIG_BELLY_EXPEL_SPECIFIC, .proc/release_specific_contents) - RegisterSignal(new_owner, COMSIG_VORE_EXPEL_MOB_OOC, .proc/ooc_escape) - RegisterSignal(new_owner, COMSIG_VORE_EXPEL_ALL, .proc/release_all_contents) - RegisterSignal(new_owner, COMSIG_MOB_APPLY_DAMAGE, .proc/pass_damage) // OUR APC IS UNDER ATTACK + RegisterSignal(new_owner, COMSIG_VORE_STOP_SOUNDS,PROC_REF(stop_sounds)) + RegisterSignal(new_owner, COMSIG_BELLY_EXPEL_SPECIFIC,PROC_REF(release_specific_contents)) + RegisterSignal(new_owner, COMSIG_VORE_EXPEL_MOB_OOC,PROC_REF(ooc_escape)) + RegisterSignal(new_owner, COMSIG_VORE_EXPEL_ALL,PROC_REF(release_all_contents)) + RegisterSignal(new_owner, COMSIG_MOB_APPLY_DAMAGE,PROC_REF(pass_damage)) // OUR APC IS UNDER ATTACK // Called whenever an atom enters this belly /obj/vore_belly/Entered(atom/movable/arrived, atom/old_loc, list/atom/old_locs) @@ -311,10 +311,10 @@ SEND_SIGNAL(src, COMSIG_BELLY_EXPEL_SPECIFIC, living_prey) // oops! out you go! return living_prey.become_blind("belly_[REF(src)]") - RegisterSignal(living_prey, COMSIG_MOB_DEATH, .proc/digestion_death) - RegisterSignal(living_prey, COMSIG_MOB_GHOSTIZE, .proc/stop_sounds_ghostize) - RegisterSignal(living_prey, COMSIG_LIVING_RESIST, .proc/relay_resist) - RegisterSignal(living_prey, COMSIG_ATOM_RELAYMOVE, .proc/relay_resist) + RegisterSignal(living_prey, COMSIG_MOB_DEATH,PROC_REF(digestion_death)) + RegisterSignal(living_prey, COMSIG_MOB_GHOSTIZE,PROC_REF(stop_sounds_ghostize)) + RegisterSignal(living_prey, COMSIG_LIVING_RESIST,PROC_REF(relay_resist)) + RegisterSignal(living_prey, COMSIG_ATOM_RELAYMOVE,PROC_REF(relay_resist)) if(CHECK_PREFS(living_prey, VOREPREF_VORE_MESSAGES)) var/raw_desc //Let's use this to avoid needing to write the reformat code twice if(absorbed_desc && SEND_SIGNAL(living_prey, COMSIG_VORE_ABSORBED_STATE)) @@ -330,7 +330,7 @@ formatted_desc = replacetext(formatted_desc, "%prey", living_prey) //replace with whatever mob entered into this belly to_chat(living_prey, span_notice("[formatted_desc]"), pref_check = VOREPREF_VORE_MESSAGES) - RegisterSignal(arrived, COMSIG_PARENT_PREQDELETED, .proc/trigger_slowdown_update) + RegisterSignal(arrived, COMSIG_PARENT_PREQDELETED,PROC_REF(trigger_slowdown_update)) //Generic entered message SEND_SIGNAL(arrived, COMSIG_VORE_ATOM_DEVOURED, src, owner) SEND_SIGNAL(arrived, COMSIG_VORE_UPDATE_PANEL) @@ -623,7 +623,7 @@ // M.updateVRPanel() // Setup the autotransfer checks if needed if(!isnull(transferlocation) && autotransferchance > 0) - addtimer(CALLBACK(src, .proc/check_autotransfer, movable_prey), autotransferwait) + addtimer(CALLBACK(src,PROC_REF(check_autotransfer), movable_prey), autotransferwait) /obj/vore_belly/proc/check_autotransfer(atom/movable/movable_prey) // Some sanity checks @@ -634,7 +634,7 @@ return SEND_SIGNAL(src, COMSIG_VORE_UPDATE_PANEL) // Didn't transfer, so wait before retrying - addtimer(CALLBACK(src, .proc/check_autotransfer, movable_prey), autotransferwait) + addtimer(CALLBACK(src,PROC_REF(check_autotransfer), movable_prey), autotransferwait) ///Transfers contents from one belly to another /obj/vore_belly/proc/transfer_contents(atom/movable/movable_prey, obj/vore_belly/target, silent = FALSE) @@ -845,13 +845,13 @@ send_voremessage(living_prey, struggle_messages_outside, struggle_messages_inside) if(!escapechance && owner.stat != CONSCIOUS) - INVOKE_ASYNC(src, .proc/attempt_escape, living_prey) //If owner is stat (dead, KO) we can actually escape + INVOKE_ASYNC(src,PROC_REF(attempt_escape), living_prey) //If owner is stat (dead, KO) we can actually escape return if(!escapable) //If the stomach has escapable enabled. return if(prob(escapechance)) //Let's have it check to see if the prey escapes first. - INVOKE_ASYNC(src, .proc/attempt_escape, living_prey) + INVOKE_ASYNC(src,PROC_REF(attempt_escape), living_prey) if(prob(transferchance) && transferlocation) //Next, let's have it see if they end up getting into an even bigger mess then when they started. var/list/assbellies = list() SEND_SIGNAL(src, COMSIG_VORE_GET_BELLIES, assbellies, TRUE) diff --git a/code/modules/vore/eating/living.dm b/code/modules/vore/eating/living.dm index a753a64f74d..565bcd5a551 100644 --- a/code/modules/vore/eating/living.dm +++ b/code/modules/vore/eating/living.dm @@ -1,7 +1,7 @@ ///////////////////// Mob Living ///////////////////// /mob/living/ComponentInitialize() . = ..() - RegisterSignal(src, list(COMSIG_MOB_CLIENT_LOGIN, COMSIG_MOB_KEY_CHANGE), .proc/vorify) + RegisterSignal(src, list(COMSIG_MOB_CLIENT_LOGIN, COMSIG_MOB_KEY_CHANGE),PROC_REF(vorify)) /mob/living/proc/vorify() if(!CHECK_PREFS(src, VOREPREF_MASTER)) diff --git a/code/modules/vore/eating/vore_core.dm b/code/modules/vore/eating/vore_core.dm index 010f8fb5e59..23d402a1933 100644 --- a/code/modules/vore/eating/vore_core.dm +++ b/code/modules/vore/eating/vore_core.dm @@ -34,31 +34,31 @@ /datum/component/vore/Initialize() if(!SSvore.should_have_vore(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_MOB_CLIENT_LOGIN), .proc/setup_vore) - RegisterSignal(parent, list(COMSIG_VORE_SAVE_PREFS), .proc/save_prefs) - RegisterSignal(parent, list(COMSIG_VORE_LOAD_PREFS), .proc/load_prefs) - RegisterSignal(parent, list(COMSIG_VORE_ABSORBED_STATE), .proc/absorbed_state) - RegisterSignal(parent, list(COMSIG_VORE_ADD_BELLY), .proc/add_belly) - RegisterSignal(parent, list(COMSIG_VORE_REMOVE_BELLY), .proc/remove_belly) - RegisterSignal(parent, list(COMSIG_VORE_GET_BELLIES), .proc/get_bellies) - RegisterSignal(parent, list(COMSIG_VORE_HAS_BELLIES), .proc/has_belly) - RegisterSignal(parent, list(COMSIG_VORE_VERIFY_BELLY), .proc/verify_belly) - RegisterSignal(parent, list(COMSIG_VORE_SET_SELECTED_BELLY), .proc/select_belly) - RegisterSignal(parent, list(COMSIG_VORE_SWAP_BELLY_INDEX), .proc/swap_belly_index) - RegisterSignal(parent, list(COMSIG_VORE_DO_VORE), .proc/vore_attack) - RegisterSignal(parent, list(COMSIG_VORE_SNIFF_LIVING), .proc/sniff_mob) - RegisterSignal(parent, list(COMSIG_VORE_UPDATE_PANEL), .proc/update_vore_panel) - RegisterSignal(parent, list(COMSIG_VORE_TOGGLE_VOREMODE), .proc/toggle_voremode) - RegisterSignal(parent, list(COMSIG_VORE_GET_VOREMODE), .proc/get_voremode) - RegisterSignal(parent, list(COMSIG_VORE_CAN_EAT), .proc/can_eat) - RegisterSignal(parent, list(COMSIG_VORE_CAN_BE_EATEN), .proc/can_be_eaten) - RegisterSignal(parent, list(COMSIG_VORE_CAN_BE_FED_PREY), .proc/can_be_fed_prey) - RegisterSignal(parent, list(COMSIG_VORE_RECALCULATE_SLOWDOWN), .proc/update_slowdowns) - RegisterSignal(parent, list(COMSIG_VORE_CHECK_EDIBILITY), .proc/can_eat_item) - RegisterSignal(parent, list(COMSIG_VORE_DO_MESSAGE), .proc/do_voremessage) - RegisterSignal(parent, list(COMSIG_VORE_EXISTS), .proc/setup_vore) - RegisterSignal(parent, list(COMSIG_PARENT_EXAMINE), .proc/examine_bellies) - RegisterSignal(parent, list(COMSIG_MOB_DEATH), .proc/you_died) // casual + RegisterSignal(parent, list(COMSIG_MOB_CLIENT_LOGIN),PROC_REF(setup_vore)) + RegisterSignal(parent, list(COMSIG_VORE_SAVE_PREFS),PROC_REF(save_prefs)) + RegisterSignal(parent, list(COMSIG_VORE_LOAD_PREFS),PROC_REF(load_prefs)) + RegisterSignal(parent, list(COMSIG_VORE_ABSORBED_STATE),PROC_REF(absorbed_state)) + RegisterSignal(parent, list(COMSIG_VORE_ADD_BELLY),PROC_REF(add_belly)) + RegisterSignal(parent, list(COMSIG_VORE_REMOVE_BELLY),PROC_REF(remove_belly)) + RegisterSignal(parent, list(COMSIG_VORE_GET_BELLIES),PROC_REF(get_bellies)) + RegisterSignal(parent, list(COMSIG_VORE_HAS_BELLIES),PROC_REF(has_belly)) + RegisterSignal(parent, list(COMSIG_VORE_VERIFY_BELLY),PROC_REF(verify_belly)) + RegisterSignal(parent, list(COMSIG_VORE_SET_SELECTED_BELLY),PROC_REF(select_belly)) + RegisterSignal(parent, list(COMSIG_VORE_SWAP_BELLY_INDEX),PROC_REF(swap_belly_index)) + RegisterSignal(parent, list(COMSIG_VORE_DO_VORE),PROC_REF(vore_attack)) + RegisterSignal(parent, list(COMSIG_VORE_SNIFF_LIVING),PROC_REF(sniff_mob)) + RegisterSignal(parent, list(COMSIG_VORE_UPDATE_PANEL),PROC_REF(update_vore_panel)) + RegisterSignal(parent, list(COMSIG_VORE_TOGGLE_VOREMODE),PROC_REF(toggle_voremode)) + RegisterSignal(parent, list(COMSIG_VORE_GET_VOREMODE),PROC_REF(get_voremode)) + RegisterSignal(parent, list(COMSIG_VORE_CAN_EAT),PROC_REF(can_eat)) + RegisterSignal(parent, list(COMSIG_VORE_CAN_BE_EATEN),PROC_REF(can_be_eaten)) + RegisterSignal(parent, list(COMSIG_VORE_CAN_BE_FED_PREY),PROC_REF(can_be_fed_prey)) + RegisterSignal(parent, list(COMSIG_VORE_RECALCULATE_SLOWDOWN),PROC_REF(update_slowdowns)) + RegisterSignal(parent, list(COMSIG_VORE_CHECK_EDIBILITY),PROC_REF(can_eat_item)) + RegisterSignal(parent, list(COMSIG_VORE_DO_MESSAGE),PROC_REF(do_voremessage)) + RegisterSignal(parent, list(COMSIG_VORE_EXISTS),PROC_REF(setup_vore)) + RegisterSignal(parent, list(COMSIG_PARENT_EXAMINE),PROC_REF(examine_bellies)) + RegisterSignal(parent, list(COMSIG_MOB_DEATH),PROC_REF(you_died)) // casual START_PROCESSING(SSvore, src) if(isliving(parent)) var/mob/living/master = parent @@ -214,7 +214,7 @@ SEND_SIGNAL(master, COMSIG_VORE_EXPEL_ALL, TRUE, TRUE) /datum/component/vore/proc/add_belly(mob/living/source, obj/vore_belly/gut) - RegisterSignal(gut, list(COMSIG_VORE_UPDATE_PANEL), .proc/update_vore_panel) + RegisterSignal(gut, list(COMSIG_VORE_UPDATE_PANEL),PROC_REF(update_vore_panel)) vore_organs |= gut /datum/component/vore/proc/remove_belly(mob/living/source, obj/vore_belly/gut) @@ -390,7 +390,7 @@ if(!SEND_SIGNAL(living_pred, COMSIG_VORE_CAN_BE_FED_PREY)) to_chat(master, span_alert("[living_pred] would prefer not to be fed!")) return FALSE // they cont want to eat em - INVOKE_ASYNC(src, .proc/feed_prey_to_predator, living_pred, movable_prey) + INVOKE_ASYNC(src,PROC_REF(feed_prey_to_predator), living_pred, movable_prey) if(VORETYPE_FEED_US_TO_PRED) if(!master.Adjacent(living_pred)) to_chat(master, span_alert("You are too far away from [living_pred]!")) @@ -408,7 +408,7 @@ if(!SEND_SIGNAL(living_pred, COMSIG_VORE_CAN_BE_FED_PREY)) to_chat(master, span_alert("[living_pred] would prefer not to be fed prey!")) return FALSE // they cont want to eat em - INVOKE_ASYNC(src, .proc/feed_self_to_other, living_pred) + INVOKE_ASYNC(src,PROC_REF(feed_self_to_other), living_pred) if(VORETYPE_EAT_PREY) if(!master.Adjacent(movable_prey)) to_chat(master, span_alert("You are too far away from [movable_prey]!")) @@ -423,7 +423,7 @@ if(!can_eat()) // just in case to_chat(master, span_alert("You can't eat [movable_prey] right now!")) return FALSE - INVOKE_ASYNC(src, .proc/devour_prey, movable_prey) + INVOKE_ASYNC(src,PROC_REF(devour_prey), movable_prey) return TRUE /datum/component/vore/proc/devour_prey(atom/movable/movable_prey) @@ -622,7 +622,7 @@ to_chat(probably_master, span_alert("Okay! See you on the other side!")) qdel(master) else - INVOKE_ASYNC(src, .proc/you_died) + INVOKE_ASYNC(src,PROC_REF(you_died)) if("Fall out") to_chat(probably_master, span_alert("Ejecting your corpse!")) SEND_SIGNAL(master.loc, COMSIG_BELLY_EXPEL_SPECIFIC, master) diff --git a/code/modules/vore/eating/vorepanel.dm b/code/modules/vore/eating/vorepanel.dm index cbd6ff69a4c..30bbe9332f7 100644 --- a/code/modules/vore/eating/vorepanel.dm +++ b/code/modules/vore/eating/vorepanel.dm @@ -32,7 +32,7 @@ /datum/vore_look/New(mob/living/new_host) if(istype(new_host)) host = new_host - RegisterSignal(host, COMSIG_PARENT_QDELETING, .proc/disown) + RegisterSignal(host, COMSIG_PARENT_QDELETING,PROC_REF(disown)) . = ..() /datum/vore_look/Destroy() diff --git a/code/modules/zombie/organs.dm b/code/modules/zombie/organs.dm index a93e6bf9472..38df2098f4f 100644 --- a/code/modules/zombie/organs.dm +++ b/code/modules/zombie/organs.dm @@ -64,7 +64,7 @@ not even death can stop, you will rise again!") var/revive_time = rand(revive_time_min, revive_time_max) var/flags = TIMER_STOPPABLE - timer_id = addtimer(CALLBACK(src, .proc/zombify), revive_time, flags) + timer_id = addtimer(CALLBACK(src,PROC_REF(zombify)), revive_time, flags) /obj/item/organ/zombie_infection/proc/zombify() timer_id = null diff --git a/modular_citadel/code/datums/components/souldeath.dm b/modular_citadel/code/datums/components/souldeath.dm index ab45210a466..2860bd4dad2 100644 --- a/modular_citadel/code/datums/components/souldeath.dm +++ b/modular_citadel/code/datums/components/souldeath.dm @@ -6,13 +6,13 @@ /datum/component/souldeath/Initialize() if(!isitem(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, .proc/equip) - RegisterSignal(parent, COMSIG_ITEM_DROPPED, .proc/unequip) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,PROC_REF(equip)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED,PROC_REF(unequip)) /datum/component/souldeath/proc/equip(datum/source, mob/living/equipper, slot) if(!slot || equip_slot == slot) wearer = equipper - RegisterSignal(wearer, COMSIG_MOB_DEATH, .proc/die, TRUE) + RegisterSignal(wearer, COMSIG_MOB_DEATH,PROC_REF(die), TRUE) signal = TRUE else if(signal) diff --git a/modular_citadel/code/datums/status_effects/chems.dm b/modular_citadel/code/datums/status_effects/chems.dm index d05fd93bd5d..97c608b8a68 100644 --- a/modular_citadel/code/datums/status_effects/chems.dm +++ b/modular_citadel/code/datums/status_effects/chems.dm @@ -128,8 +128,8 @@ master = get_mob_by_key(enthrallID) //if(M.ckey == enthrallID) // owner.remove_status_effect(src)//At the moment, a user can enthrall themselves, toggle this back in if that should be removed. - RegisterSignal(owner, COMSIG_LIVING_RESIST, .proc/owner_resist) //Do resistance calc if resist is pressed# - RegisterSignal(owner, COMSIG_MOVABLE_HEAR, .proc/owner_hear) + RegisterSignal(owner, COMSIG_LIVING_RESIST,PROC_REF(owner_resist)) //Do resistance calc if resist is pressed# + RegisterSignal(owner, COMSIG_MOVABLE_HEAR,PROC_REF(owner_hear)) mental_capacity = 500 - M.getOrganLoss(ORGAN_SLOT_BRAIN)//It's their brain! lewd = (owner.client?.prefs.cit_toggles & HYPNO) && (master.client?.prefs.cit_toggles & HYPNO) var/message = "[(lewd ? "I am a good pet for [enthrallGender]." : "[master] is a really inspirational person!")]" diff --git a/modular_citadel/code/modules/reagents/objects/clothes.dm b/modular_citadel/code/modules/reagents/objects/clothes.dm index 04f7fa513a9..992c416b940 100644 --- a/modular_citadel/code/modules/reagents/objects/clothes.dm +++ b/modular_citadel/code/modules/reagents/objects/clothes.dm @@ -38,14 +38,14 @@ /obj/item/clothing/head/hattip/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) /obj/item/clothing/head/hattip/dropped(mob/M) . = ..() UnregisterSignal(M, COMSIG_MOB_SAY) - addtimer(CALLBACK(src, .proc/root_and_toot), 200) + addtimer(CALLBACK(src,PROC_REF(root_and_toot)), 200) /obj/item/clothing/head/hattip/proc/root_and_toot() if(QDELETED(src) || isnull(loc)) diff --git a/modular_coyote/code/game/objects/structures/firebow.dm b/modular_coyote/code/game/objects/structures/firebow.dm index 93da9db6eca..baf2e78a92b 100644 --- a/modular_coyote/code/game/objects/structures/firebow.dm +++ b/modular_coyote/code/game/objects/structures/firebow.dm @@ -70,7 +70,7 @@ /obj/item/firebow/proc/StartBurning(mob/user) cinder = TRUE heat = 1500 - addtimer(CALLBACK(src, .proc/Extinguish, user), burnLength) + addtimer(CALLBACK(src,PROC_REF(Extinguish), user), burnLength) UpdateIcon() /obj/item/firebow/proc/Extinguish(mob/user) diff --git a/modular_coyote/code/game/objects/structures/sacredwell.dm b/modular_coyote/code/game/objects/structures/sacredwell.dm index 6b339b2bc28..98df5011cbf 100644 --- a/modular_coyote/code/game/objects/structures/sacredwell.dm +++ b/modular_coyote/code/game/objects/structures/sacredwell.dm @@ -237,7 +237,7 @@ GLOBAL_LIST_EMPTY(sacred_well_items) if(debug) say("cooldown started!!") set_light(1, -1, "#f9ff48") - addtimer(CALLBACK(src, .proc/end_cooldown), 1.5 MINUTES) + addtimer(CALLBACK(src,PROC_REF(end_cooldown)), 1.5 MINUTES) /obj/structure/sacredwell/proc/end_cooldown() //might need to fiddle w/ this...... if(debug) diff --git a/modular_coyote/code/mailbird.dm b/modular_coyote/code/mailbird.dm index d88154254b4..688bdab3152 100644 --- a/modular_coyote/code/mailbird.dm +++ b/modular_coyote/code/mailbird.dm @@ -82,9 +82,9 @@ var/delayRespond = rand(2,4) SECONDS var/delayAnim = delayRespond + rand(1,2) SECONDS var/delayQuery = delayAnim + 1.5 SECONDS - addtimer(CALLBACK(src, .proc/respond), delayRespond) - addtimer(CALLBACK(src, .proc/arrive), delayAnim) - addtimer(CALLBACK(src, .proc/queryCaller), delayQuery) + addtimer(CALLBACK(src,PROC_REF(respond)), delayRespond) + addtimer(CALLBACK(src,PROC_REF(arrive)), delayAnim) + addtimer(CALLBACK(src,PROC_REF(queryCaller)), delayQuery) /obj/effect/mailbird/proc/respond() playsound(src.loc, 'modular_coyote/sound/mobsounds/crowrespond.ogg', 50, FALSE) //Magic numbers bad. Oh well. 50 is volume (average) and FALSE is for whether or not playsound should go through walls. @@ -152,7 +152,7 @@ qdel(src) return component.unsetTarget() - addtimer(CALLBACK(src, .proc/deliver), rand(60, 90) SECONDS) + addtimer(CALLBACK(src,PROC_REF(deliver)), rand(60, 90) SECONDS) /obj/effect/mailbird/proc/deliver() icon_state = "crow-glide" @@ -176,7 +176,7 @@ component.changeTarget(following) pixel_y = 60 pixel_x = -100 - addtimer(CALLBACK(src, .proc/dropAndLeave, success), 0.5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(dropAndLeave), success), 0.5 SECONDS) playsound(src.loc, 'modular_coyote/sound/mobsounds/crowrespond.ogg', 50, FALSE) animate(src, pixel_y = 30, pixel_x = 0, time = 0.5 SECONDS, flags = ANIMATION_PARALLEL) animate(src, alpha = 255, time = 0.1 SECONDS, flags = ANIMATION_PARALLEL) @@ -187,7 +187,7 @@ to_chat(following, span_info("A crow swoops in and gently deposits \a [mail] at your feet.")) else to_chat(following, span_warning("The crow returns \the [mail], unable to find someone to deliver to.")) - addtimer(CALLBACK(src, .proc/fadeAway), 0.4 SECONDS) + addtimer(CALLBACK(src,PROC_REF(fadeAway)), 0.4 SECONDS) animate(src, pixel_y = 60, pixel_x = 100, time = 0.5 SECONDS) /obj/effect/mailbird/proc/fadeAway() @@ -206,7 +206,7 @@ return COMPONENT_INCOMPATIBLE target = newTarget - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/move_react) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(move_react)) /datum/component/mailbird_movement/proc/unsetTarget() UnregisterSignal(target, COMSIG_MOVABLE_MOVED) @@ -217,7 +217,7 @@ return COMPONENT_INCOMPATIBLE unsetTarget() target = newTarget - RegisterSignal(target, COMSIG_MOVABLE_MOVED, .proc/move_react) + RegisterSignal(target, COMSIG_MOVABLE_MOVED,PROC_REF(move_react)) /datum/component/mailbird_movement/proc/move_react(atom/moved, atom/oldloc, direction) var/atom/movable/A = parent diff --git a/modular_coyote/code/modules/mapping/ambient_lighting.dm b/modular_coyote/code/modules/mapping/ambient_lighting.dm index 3ddc081c8a6..fa6dda96a94 100644 --- a/modular_coyote/code/modules/mapping/ambient_lighting.dm +++ b/modular_coyote/code/modules/mapping/ambient_lighting.dm @@ -1,7 +1,7 @@ /area/f13/ambientlighting/LateInitialize() . = ..() - RegisterSignal(src, COMSIG_EXIT_AREA, .proc/HandleExitLighting) - RegisterSignal(src, COMSIG_ENTER_AREA, .proc/HandleEnterLighting) + RegisterSignal(src, COMSIG_EXIT_AREA,PROC_REF(HandleExitLighting)) + RegisterSignal(src, COMSIG_ENTER_AREA,PROC_REF(HandleEnterLighting)) /area/f13/ambientlighting/proc/HandleExitLighting(datum/source, mob/user) if(!iscarbon(user)) diff --git a/modular_coyote/code/modules/mechanical_erp/merp_component.dm b/modular_coyote/code/modules/mechanical_erp/merp_component.dm index 3c3767707c4..ed0b5424ec6 100644 --- a/modular_coyote/code/modules/mechanical_erp/merp_component.dm +++ b/modular_coyote/code/modules/mechanical_erp/merp_component.dm @@ -53,14 +53,14 @@ /datum/component/merp/Initialize() if(!SSmerp.should_merp(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, list(COMSIG_MOB_CLIENT_LOGIN), .proc/setup_merp) - RegisterSignal(parent, list(COMSIG_MERP_GIVE_MERP_INITIATOR), .proc/give_initiator) - RegisterSignal(parent, list(COMSIG_MERP_GIVE_HAND_BIT), .proc/give_merp_item) - RegisterSignal(parent, list(COMSIG_MERP_DO_PLAP), .proc/plap) - RegisterSignal(parent, list(COMSIG_MERP_GET_PLAPPED), .proc/get_plapped) - RegisterSignal(parent, list(COMSIG_MERP_KILL_COMBO), .proc/combo_died) // ): - RegisterSignal(parent, list(COMSIG_MERP_PLAP_EXPIRED), .proc/plap_died) // ): - RegisterSignal(parent, list(COMSIG_MERP_GET_OTHER_COMBOS), .proc/get_combos) + RegisterSignal(parent, list(COMSIG_MOB_CLIENT_LOGIN),PROC_REF(setup_merp)) + RegisterSignal(parent, list(COMSIG_MERP_GIVE_MERP_INITIATOR),PROC_REF(give_initiator)) + RegisterSignal(parent, list(COMSIG_MERP_GIVE_HAND_BIT),PROC_REF(give_merp_item)) + RegisterSignal(parent, list(COMSIG_MERP_DO_PLAP),PROC_REF(plap)) + RegisterSignal(parent, list(COMSIG_MERP_GET_PLAPPED),PROC_REF(get_plapped)) + RegisterSignal(parent, list(COMSIG_MERP_KILL_COMBO),PROC_REF(combo_died)) // ): + RegisterSignal(parent, list(COMSIG_MERP_PLAP_EXPIRED),PROC_REF(plap_died)) // ): + RegisterSignal(parent, list(COMSIG_MERP_GET_OTHER_COMBOS),PROC_REF(get_combos)) START_PROCESSING(SSmerp, src) setup_merp() diff --git a/modular_coyote/code/modules/misc_patches.dm b/modular_coyote/code/modules/misc_patches.dm index c72a4b7fede..4002c4a7f26 100644 --- a/modular_coyote/code/modules/misc_patches.dm +++ b/modular_coyote/code/modules/misc_patches.dm @@ -14,7 +14,7 @@ /obj/item/reagent_containers/food/drinks/Initialize(mapload) . = ..() - RegisterSignal(src, COMSIG_ATOM_LICKED, .proc/LapDrink) + RegisterSignal(src, COMSIG_ATOM_LICKED,PROC_REF(LapDrink)) /obj/item/reagent_containers/food/drinks/Destroy() diff --git a/modular_coyote/code/modules/regeneration/sleepingpart/regenerate_sleeping.dm b/modular_coyote/code/modules/regeneration/sleepingpart/regenerate_sleeping.dm index 28b75c70617..788c1c03cbc 100644 --- a/modular_coyote/code/modules/regeneration/sleepingpart/regenerate_sleeping.dm +++ b/modular_coyote/code/modules/regeneration/sleepingpart/regenerate_sleeping.dm @@ -27,7 +27,7 @@ /datum/component/sleeping_regeneration/RegisterWithParent() . = ..() var/mob/living/M = parent - RegisterSignal(M, COMSIG_MOB_SLEEPING, .proc/OnSleep) + RegisterSignal(M, COMSIG_MOB_SLEEPING,PROC_REF(OnSleep)) // We need to unregister it from calling when the component is removed, this is just because it can be a permanent/stacking effect. We dont want that. /datum/component/sleeping_regeneration/UnregisterFromParent() diff --git a/modular_coyote/eris/code/living_recoil.dm b/modular_coyote/eris/code/living_recoil.dm index 22945b4cef6..0898ac963d1 100644 --- a/modular_coyote/eris/code/living_recoil.dm +++ b/modular_coyote/eris/code/living_recoil.dm @@ -55,7 +55,7 @@ mob/proc/handle_movement_recoil() // Used in movement/mob.dm G.check_safety_cursor(src) if(recoil > 0) - recoil_reduction_timer = addtimer(CALLBACK(src, .proc/calc_recoil), 0.1 SECONDS, TIMER_STOPPABLE) + recoil_reduction_timer = addtimer(CALLBACK(src,PROC_REF(calc_recoil)), 0.1 SECONDS, TIMER_STOPPABLE) else if(!istype(G)) remove_cursor() diff --git a/modular_coyote/eris/code/mods/_upgrades.dm b/modular_coyote/eris/code/mods/_upgrades.dm index c1f622b9a76..5ed4553b7ad 100644 --- a/modular_coyote/eris/code/mods/_upgrades.dm +++ b/modular_coyote/eris/code/mods/_upgrades.dm @@ -39,10 +39,10 @@ var/list/weapon_upgrades = list() //variable name(string) -> num /datum/component/item_upgrade/RegisterWithParent() - RegisterSignal(parent, COMSIG_ITEM_ATTACK_OBJ_NOHIT, .proc/attempt_install) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/on_examine) - RegisterSignal(parent, COMSIG_UPGRADE_REMOVE, .proc/uninstall) - RegisterSignal(parent, COMSIG_GET_UPGRADES, .proc/get_upgrades) + RegisterSignal(parent, COMSIG_ITEM_ATTACK_OBJ_NOHIT,PROC_REF(attempt_install)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine)) + RegisterSignal(parent, COMSIG_UPGRADE_REMOVE,PROC_REF(uninstall)) + RegisterSignal(parent, COMSIG_GET_UPGRADES,PROC_REF(get_upgrades)) /datum/component/item_upgrade/proc/attempt_install(datum/source, atom/movable/target, mob/living/user) return can_apply(target, user) && apply(target, user) @@ -104,8 +104,8 @@ var/obj/item/I = parent I.forceMove(A) A.item_upgrades.Add(I) - RegisterSignal(A, COMSIG_UPGRADE_APPVAL, .proc/apply_values) - RegisterSignal(A, COMSIG_UPGRADE_ADDVAL, .proc/add_values) + RegisterSignal(A, COMSIG_UPGRADE_APPVAL,PROC_REF(apply_values)) + RegisterSignal(A, COMSIG_UPGRADE_ADDVAL,PROC_REF(add_values)) A.AddComponent(/datum/component/upgrade_removal) A.refresh_upgrades() return TRUE @@ -452,7 +452,7 @@ dupe_mode = COMPONENT_DUPE_UNIQUE /datum/component/upgrade_removal/RegisterWithParent() - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, .proc/attempt_uninstall) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,PROC_REF(attempt_uninstall)) /datum/component/upgrade_removal/UnregisterFromParent() UnregisterSignal(parent, COMSIG_PARENT_ATTACKBY) From 3234edc558025c2e59c34d6cac7a9bdc87b9add9 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 13:16:38 -0400 Subject: [PATCH 06/52] min compiler bump --- code/__byond_version_compat.dm | 4 ++-- dependencies.sh | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/__byond_version_compat.dm b/code/__byond_version_compat.dm index ca19128a4fe..c65279d8dd8 100644 --- a/code/__byond_version_compat.dm +++ b/code/__byond_version_compat.dm @@ -2,7 +2,7 @@ //Update this whenever you need to take advantage of more recent byond features #define MIN_COMPILER_VERSION 514 -#define MIN_COMPILER_BUILD 1556 +#define MIN_COMPILER_BUILD 1589 #if (DM_VERSION < MIN_COMPILER_VERSION || DM_BUILD < MIN_COMPILER_BUILD) && !defined(SPACEMAN_DMM) //Don't forget to update this part #error Your version of BYOND is too out-of-date to compile this project. Go to https://secure.byond.com/download and update. @@ -72,4 +72,4 @@ #define fcopy(Src, Dst) world.__fcopy(Src, Dst) -#endif \ No newline at end of file +#endif diff --git a/dependencies.sh b/dependencies.sh index 7b314c222d7..1e7f9680626 100644 --- a/dependencies.sh +++ b/dependencies.sh @@ -5,7 +5,7 @@ # byond version export BYOND_MAJOR=514 -export BYOND_MINOR=1571 +export BYOND_MINOR=1589 #rust_g git tag export RUST_G_VERSION=0.5.0 From c197287ebf4a86a529cdb068a9be014079953aa7 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 13:16:48 -0400 Subject: [PATCH 07/52] regex bug fix --- code/modules/antagonists/cult/cult_comms.dm | 4 ++-- code/modules/mob/living/silicon/ai/ai.dm | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/antagonists/cult/cult_comms.dm b/code/modules/antagonists/cult/cult_comms.dm index 105f9a353c0..13a311c7b8e 100644 --- a/code/modules/antagonists/cult/cult_comms.dm +++ b/code/modules/antagonists/cult/cult_comms.dm @@ -290,7 +290,7 @@ B.current.client.images += C.cult_team.blood_target_image attached_action.owner.update_action_buttons_icon() remove_ranged_ability(span_cult("The marking rite is complete! It will last for 90 seconds.")) - C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target,C.cult_team)), 900, TIMER_STOPPABLE) + C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target),C.cult_team), 900, TIMER_STOPPABLE) return TRUE return FALSE @@ -377,7 +377,7 @@ desc = "Remove the Blood Mark you previously set." button_icon_state = "emp" owner.update_action_buttons_icon() - C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target,C.cult_team)), base_cooldown, TIMER_STOPPABLE) + C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target),C.cult_team), base_cooldown, TIMER_STOPPABLE) addtimer(CALLBACK(src,PROC_REF(reset_button)), base_cooldown) diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index c661252ca76..54d708d0a47 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -131,7 +131,7 @@ create_eye() if(client) - INVOKE_ASYNC(src,PROC_REF(apply_pref_name,"ai",client)) + INVOKE_ASYNC(src,PROC_REF(apply_pref_name),"ai",client) set_core_display_icon() From f8ff8f8737d372f83c716eecab4160557f57c097 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 13:49:52 -0400 Subject: [PATCH 08/52] NAMEOF -> NAMEOF_STATIC --- code/__HELPERS/unsorted.dm | 17 +++++++++++++++-- code/controllers/configuration/config_entry.dm | 4 ++-- 2 files changed, 17 insertions(+), 4 deletions(-) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index fc354c309b8..8f9e6b66f0d 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1357,12 +1357,25 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) if(is_servant_of_ratvar(V) || isobserver(V)) . += V -//datum may be null, but it does need to be a typed var +/** + * NAMEOF: Compile time checked variable name to string conversion + * evaluates to a string equal to "X", but compile errors if X isn't a var on datum. + * datum may be null, but it does need to be a typed var. + **/ #define NAMEOF(datum, X) (#X || ##datum.##X) +/** + * NAMEOF that actually works in static definitions because src::type requires src to be defined + */ +#if DM_VERSION >= 515 +#define NAMEOF_STATIC(datum, X) (nameof(type::##X)) +#else +#define NAMEOF_STATIC(datum, X) (#X || ##datum.##X) +#endif + #define VARSET_LIST_CALLBACK(target, var_name, var_value) CALLBACK(GLOBAL_PROC_REF(___callbackvarset), ##target, ##var_name, ##var_value) //dupe code because dm can't handle 3 level deep macros -#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(GLOBAL_PROC_REF(___callbackvarset), ##datum, NAMEOF(##datum, ##var), ##var_value) +#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(GLOBAL_PROC_REF(___callbackvarset), ##datum, NAMEOF_STATIC(##datum, ##var), ##var_value) /proc/___callbackvarset(list_or_datum, var_name, var_value) if(length(list_or_datum)) diff --git a/code/controllers/configuration/config_entry.dm b/code/controllers/configuration/config_entry.dm index 259082a6ba9..8e7857e9e83 100644 --- a/code/controllers/configuration/config_entry.dm +++ b/code/controllers/configuration/config_entry.dm @@ -44,7 +44,7 @@ . &= !(protection & CONFIG_ENTRY_HIDDEN) /datum/config_entry/vv_edit_var(var_name, var_value) - var/static/list/banned_edits = list(NAMEOF(src, name), NAMEOF(src, vv_VAS), NAMEOF(src, default), NAMEOF(src, resident_file), NAMEOF(src, protection), NAMEOF(src, abstract_type), NAMEOF(src, modified), NAMEOF(src, dupes_allowed)) + var/static/list/banned_edits = list(NAMEOF_STATIC(src, name), NAMEOF_STATIC(src, vv_VAS), NAMEOF_STATIC(src, default), NAMEOF_STATIC(src, resident_file), NAMEOF_STATIC(src, protection), NAMEOF_STATIC(src, abstract_type), NAMEOF_STATIC(src, modified), NAMEOF_STATIC(src, dupes_allowed)) if(var_name == NAMEOF(src, config_entry_value)) if(protection & CONFIG_ENTRY_LOCKED) return FALSE @@ -110,7 +110,7 @@ return FALSE /datum/config_entry/number/vv_edit_var(var_name, var_value) - var/static/list/banned_edits = list(NAMEOF(src, max_val), NAMEOF(src, min_val), NAMEOF(src, integer)) + var/static/list/banned_edits = list(NAMEOF_STATIC(src, max_val), NAMEOF_STATIC(src, min_val), NAMEOF_STATIC(src, integer)) return !(var_name in banned_edits) && ..() /datum/config_entry/flag From a488c7dbea657ff8d3f0025a5e9c6e3a5524930d Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 14:22:41 -0400 Subject: [PATCH 09/52] type.proc/ -> TYPE_PROC --- code/__DEFINES/skills/helpers.dm | 2 +- code/_onclick/ai.dm | 2 +- code/_onclick/cyborg.dm | 4 +-- code/controllers/subsystem/pathfinder.dm | 2 +- code/controllers/subsystem/progress_bars.dm | 10 +++--- code/controllers/subsystem/statpanel.dm | 2 +- code/controllers/subsystem/ticker.dm | 4 +-- code/datums/beam.dm | 2 +- code/datums/brain_damage/mild.dm | 4 +-- code/datums/brain_damage/severe.dm | 2 +- code/datums/components/caltrop.dm | 2 +- code/datums/components/decal.dm | 4 +-- code/datums/components/mood.dm | 2 +- code/datums/components/riding.dm | 2 +- code/datums/components/slippery.dm | 2 +- .../datums/diseases/advance/symptoms/cough.dm | 6 ++-- code/datums/diseases/advance/symptoms/heal.dm | 2 +- code/datums/elements/decal.dm | 2 +- code/datums/elements/drag_pickup.dm | 2 +- code/datums/martial/wrestling.dm | 2 +- code/datums/materials/_material.dm | 2 +- code/datums/mind.dm | 4 +-- .../mood_events/generic_negative_events.dm | 2 +- code/datums/skills/_skill_modifier.dm | 6 ++-- code/datums/status_effects/debuffs.dm | 4 +-- code/datums/wires/airalarm.dm | 4 +-- code/datums/wires/airlock.dm | 6 ++-- code/datums/wires/apc.dm | 6 ++-- code/datums/wires/autolathe.dm | 6 ++-- code/game/area/areas.dm | 4 +-- code/game/atoms.dm | 2 +- code/game/gamemodes/dynamic/dynamic.dm | 4 +-- code/game/gamemodes/traitor/traitor.dm | 2 +- code/game/machinery/buttons.dm | 2 +- code/game/machinery/doors/brigdoors.dm | 4 +-- .../embedded_controller_base.dm | 2 +- code/game/mecha/equipment/weapons/weapons.dm | 2 +- code/game/objects/effects/decals/cleanable.dm | 2 +- .../objects/effects/spawners/roomspawner.dm | 2 +- .../temporary_visuals/miscellaneous.dm | 2 +- code/game/objects/items/devices/PDA/cart.dm | 2 +- .../items/devices/portable_blender_brain.dm | 2 +- .../devices/portable_chem_blenderbelt.dm | 2 +- .../items/devices/portable_chem_mixer.dm | 2 +- .../objects/items/devices/transfer_valve.dm | 2 +- .../objects/items/grenades/antigravity.dm | 2 +- code/game/objects/items/handcuffs.dm | 2 +- code/game/objects/items/melee/weaponry.dm | 2 +- code/game/objects/items/plushes.dm | 2 +- code/game/objects/items/stacks/stack.dm | 2 +- code/game/objects/structures/divine.dm | 2 +- code/game/objects/structures/electricchair.dm | 2 +- code/game/objects/structures/flora.dm | 2 +- .../objects/structures/ghost_role_spawners.dm | 2 +- code/game/objects/structures/guillotine.dm | 2 +- code/game/objects/structures/life_candle.dm | 2 +- code/game/objects/structures/manned_turret.dm | 2 +- code/game/objects/structures/statues.dm | 2 +- code/game/turfs/open.dm | 2 +- code/game/turfs/turf.dm | 2 +- code/modules/VR/vr_sleeper.dm | 6 ++-- code/modules/admin/verbs/onlyone.dm | 2 +- .../blood_contract/blood_contract.dm | 2 +- .../clock_helpers/fabrication_helpers.dm | 8 ++--- .../clock_items/clock_weapons/_call_weapon.dm | 2 +- .../clock_weapons/ratvarian_shield.dm | 2 +- .../clockcult/clock_items/clockwork_armor.dm | 8 ++--- .../clockcult/clock_items/judicial_visor.dm | 4 +-- .../clock_scriptures/scripture_scripts.dm | 2 +- .../ratvar_the_clockwork_justicar.dm | 2 +- code/modules/antagonists/cult/blood_magic.dm | 2 +- code/modules/antagonists/cult/cult_comms.dm | 8 ++--- code/modules/antagonists/cult/cult_items.dm | 4 +-- .../antagonists/cult/rune_spawn_action.dm | 4 +-- code/modules/antagonists/cult/runes.dm | 6 ++-- .../traitor/equipment/Malf_Modules.dm | 10 +++--- .../antagonists/wizard/equipment/artefact.dm | 2 +- code/modules/assembly/doorcontrol.dm | 12 +++---- code/modules/assembly/flash.dm | 4 +-- code/modules/assembly/infrared.dm | 2 +- .../atmospherics/environmental/LINDA_fire.dm | 2 +- code/modules/awaymissions/gateway.dm | 2 +- .../modules/awaymissions/super_secret_room.dm | 2 +- code/modules/client/client_procs.dm | 2 +- code/modules/clothing/gloves/_gloves.dm | 2 +- code/modules/clothing/shoes/_shoes.dm | 2 +- .../modules/clothing/spacesuits/flightsuit.dm | 4 +-- code/modules/events/fugitive_spawning.dm | 2 +- code/modules/flufftext/Hallucination.dm | 14 ++++---- code/modules/food_and_drinks/drinks/drinks.dm | 2 +- code/modules/holiday/party_time.dm | 2 +- code/modules/holodeck/turfs.dm | 2 +- code/modules/hydroponics/grown/misc.dm | 2 +- .../subtypes/weaponized.dm | 2 +- code/modules/interview/interview.dm | 2 +- code/modules/mafia/controller.dm | 4 +-- .../mining/equipment/wormhole_jaunter.dm | 2 +- .../mining/lavaland/necropolis_chests.dm | 2 +- code/modules/mob/living/bloodcrawl.dm | 2 +- .../living/carbon/alien/special/facehugger.dm | 2 +- code/modules/mob/living/carbon/human/death.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 4 +-- .../carbon/human/species_types/golems.dm | 2 +- .../mob/living/carbon/monkey/monkey.dm | 2 +- code/modules/mob/living/emote.dm | 34 +++++++++---------- code/modules/mob/living/life.dm | 2 +- code/modules/mob/living/living.dm | 2 +- code/modules/mob/living/say.dm | 2 +- .../living/simple_animal/bot/SuperBeepsky.dm | 4 +-- .../mob/living/simple_animal/bot/cleanbot.dm | 2 +- .../mob/living/simple_animal/bot/secbot.dm | 2 +- .../mob/living/simple_animal/friendly/dog.dm | 2 +- .../simple_animal/friendly/drone/_drone.dm | 2 +- .../simple_animal/hostile/giant_spider.dm | 2 +- .../living/simple_animal/hostile/hostile.dm | 2 +- .../simple_animal/hostile/jungle/leaper.dm | 2 +- .../simple_animal/hostile/mecha_pilot.dm | 4 +-- .../hostile/megafauna/hierophant.dm | 4 +-- code/modules/paperwork/contract.dm | 2 +- code/modules/pool/pool_wires.dm | 2 +- code/modules/power/antimatter/control.dm | 2 +- code/modules/power/apc.dm | 4 +-- .../procedural_mapping/mapGenerator.dm | 4 +-- code/modules/projectiles/gun.dm | 2 +- .../projectiles/guns/misc/grenade_launcher.dm | 2 +- code/modules/projectiles/guns/misc/medbeam.dm | 2 +- .../projectiles/projectile/energy/stun.dm | 2 +- .../projectile/special/hallucination.dm | 2 +- .../chemistry/reagents/medicine_reagents.dm | 4 +-- .../chemistry/recipes/slime_extracts.dm | 4 +-- .../reagents/reagent_containers/glass.dm | 2 +- .../recycling/disposal/construction.dm | 2 +- .../nanites/nanite_programs/suppression.dm | 2 +- .../research/xenobiology/xenobiology.dm | 2 +- code/modules/shuttle/on_move.dm | 2 +- code/modules/surgery/organs/tongue.dm | 2 +- code/modules/surgery/organs/vocal_cords.dm | 10 +++--- 137 files changed, 223 insertions(+), 223 deletions(-) diff --git a/code/__DEFINES/skills/helpers.dm b/code/__DEFINES/skills/helpers.dm index e52179b554f..295719ef1fa 100644 --- a/code/__DEFINES/skills/helpers.dm +++ b/code/__DEFINES/skills/helpers.dm @@ -27,7 +27,7 @@ if(body.mind){\ body.mind.add_skill_modifier(prototype.identifier)\ } else {\ - prototype.RegisterSignal(body, COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier.proc/on_mob_new_mind, TRUE)\ + prototype.RegisterSignal(body, TYPE_PROC_REF(COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier,on_mob_new_mind), TRUE)\ } /// Same as above but to remove the skill modifier. diff --git a/code/_onclick/ai.dm b/code/_onclick/ai.dm index f2116186187..273b31f4ff5 100644 --- a/code/_onclick/ai.dm +++ b/code/_onclick/ai.dm @@ -75,7 +75,7 @@ if(aicamera.in_camera_mode) aicamera.camera_mode_off() - INVOKE_ASYNC(aicamera, /obj/item/camera.proc/captureimage, pixel_turf, usr) + INVOKE_ASYNC(aicamera, TYPE_PROC_REF(/obj/item/camera,captureimage), pixel_turf, usr) return if(waypoint_mode) waypoint_mode = FALSE diff --git a/code/_onclick/cyborg.dm b/code/_onclick/cyborg.dm index e30b1836805..0726c052d13 100644 --- a/code/_onclick/cyborg.dm +++ b/code/_onclick/cyborg.dm @@ -40,7 +40,7 @@ */ if(aicamera.in_camera_mode) //Cyborg picture taking aicamera.camera_mode_off() - INVOKE_ASYNC(aicamera, /obj/item/camera.proc/captureimage, A, usr) + INVOKE_ASYNC(aicamera, TYPE_PROC_REF(/obj/item/camera,captureimage), A, usr) return var/obj/item/W = get_active_held_item() @@ -48,7 +48,7 @@ if(!W && A.Adjacent(src) && (isobj(A) || ismob(A))) var/atom/movable/C = A if(C.can_buckle && C.has_buckled_mobs()) - INVOKE_ASYNC(C, /atom/movable.proc/precise_user_unbuckle_mob, src) + INVOKE_ASYNC(C, TYPE_PROC_REF(/atom/movable,precise_user_unbuckle_mob), src) return if(!W && (get_dist(src,A) <= interaction_range)) diff --git a/code/controllers/subsystem/pathfinder.dm b/code/controllers/subsystem/pathfinder.dm index ccbea793066..2ed77541c90 100644 --- a/code/controllers/subsystem/pathfinder.dm +++ b/code/controllers/subsystem/pathfinder.dm @@ -31,7 +31,7 @@ SUBSYSTEM_DEF(pathfinder) while(flow[free]) CHECK_TICK free = (free % lcount) + 1 - var/t = addtimer(CALLBACK(src, /datum/flowcache.proc/toolong, free), 150, TIMER_STOPPABLE) + var/t = addtimer(CALLBACK(src, TYPE_PROC_REF(/datum/flowcache,toolong), free), 150, TIMER_STOPPABLE) flow[free] = t flow[t] = M return free diff --git a/code/controllers/subsystem/progress_bars.dm b/code/controllers/subsystem/progress_bars.dm index 032abf7d536..cccacd6bfec 100644 --- a/code/controllers/subsystem/progress_bars.dm +++ b/code/controllers/subsystem/progress_bars.dm @@ -24,19 +24,19 @@ PROCESSING_SUBSYSTEM_DEF(progress_bars) var/datum/progressbar/bar = new(owner, can_see, duration, automatic, auto_remove) register_bar(owner, bar) . = bar.bar_id - INVOKE_ASYNC(bar, /datum/progressbar.proc/start) + INVOKE_ASYNC(bar, TYPE_PROC_REF(/datum/progressbar,start)) /datum/controller/subsystem/processing/progress_bars/proc/remove_bar(bar_id) var/datum/progressbar/bar = LAZYACCESS(progbars, bar_id) if(!istype(bar)) return - INVOKE_ASYNC(bar, /datum/progressbar.proc/stop) + INVOKE_ASYNC(bar, TYPE_PROC_REF(/datum/progressbar,stop)) /datum/controller/subsystem/processing/progress_bars/proc/update_bar(bar_id, number) var/datum/progressbar/bar = LAZYACCESS(progbars, bar_id) if(!istype(bar)) return FALSE - INVOKE_ASYNC(bar, /datum/progressbar.proc/update, number) + INVOKE_ASYNC(bar, TYPE_PROC_REF(/datum/progressbar,update), number) return number /datum/controller/subsystem/processing/progress_bars/proc/check_bar(bar_id) @@ -92,7 +92,7 @@ PROCESSING_SUBSYSTEM_DEF(progress_bars) return for(var/datum/weakref/weakbar in ckey_proglist[the_ckey]) var/datum/progressbar/bar = RESOLVEWEAKREF(weakbar) - INVOKE_ASYNC(bar, /datum/progressbar.proc/show_bar) + INVOKE_ASYNC(bar, TYPE_PROC_REF(/datum/progressbar,show_bar)) return TRUE /// When a client who is supposed to see this connects, we need to show it to their client @@ -120,7 +120,7 @@ PROCESSING_SUBSYSTEM_DEF(progress_bars) var/datum/progressbar/bar = LAZYACCESS(progbars, barid) if(!bar) continue - INVOKE_ASYNC(bar, /datum/progressbar.proc/update_position, get_bar_index(owner, barid)) + INVOKE_ASYNC(bar, TYPE_PROC_REF(/datum/progressbar,update_position), get_bar_index(owner, barid)) #define BAR_MASTER var/atom/master = display_loc?.resolve();if(!master ||(master && QDELETED(master))){master_deleted(); return} #define PROGRESSBAR_HEIGHT 6 diff --git a/code/controllers/subsystem/statpanel.dm b/code/controllers/subsystem/statpanel.dm index 049833cf199..f9479125924 100644 --- a/code/controllers/subsystem/statpanel.dm +++ b/code/controllers/subsystem/statpanel.dm @@ -145,7 +145,7 @@ SUBSYSTEM_DEF(statpanels) if(length(turfitems) < 30) // only create images for the first 30 items on the turf, for performance reasons if(!(REF(turf_content) in cached_images)) cached_images += REF(turf_content) - turf_content.RegisterSignal(turf_content, COMSIG_PARENT_QDELETING, /atom/.proc/remove_from_cache) // we reset cache if anything in it gets deleted + turf_content.RegisterSignal(turf_content, TYPE_PROC_REF(COMSIG_PARENT_QDELETING, /atom/,remove_from_cache)) // we reset cache if anything in it gets deleted if(ismob(turf_content) || length(turf_content.overlays) > 2) turfitems[++turfitems.len] = list("[turf_content.name]", REF(turf_content), costly_icon2html(turf_content, target, sourceonly=TRUE)) else diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 7972b6e4886..def81b201bd 100755 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -476,7 +476,7 @@ SUBSYSTEM_DEF(ticker) if (!prob((world.time/600)*CONFIG_GET(number/maprotatechancedelta)) && CONFIG_GET(flag/tgstyle_maprotation)) return if(CONFIG_GET(flag/tgstyle_maprotation)) - INVOKE_ASYNC(SSmapping, /datum/controller/subsystem/mapping/.proc/maprotate) + INVOKE_ASYNC(SSmapping, TYPE_PROC_REF(/datum/controller/subsystem/mapping/,maprotate)) else var/vote_type = CONFIG_GET(string/map_vote_type) switch(vote_type) @@ -639,7 +639,7 @@ SUBSYSTEM_DEF(ticker) for(var/mob/dead/new_player/player in GLOB.player_list) if(player.ready == PLAYER_READY_TO_OBSERVE && player.mind) //Break chain since this has a sleep input in it - addtimer(CALLBACK(player, /mob/dead/new_player.proc/make_me_an_observer), 1) + addtimer(CALLBACK(player, TYPE_PROC_REF(/mob/dead/new_player,make_me_an_observer)), 1) /datum/controller/subsystem/ticker/proc/load_mode() var/mode = trim(file2text("data/mode.txt")) diff --git a/code/datums/beam.dm b/code/datums/beam.dm index f727ce4c6cf..9fbe13abf79 100644 --- a/code/datums/beam.dm +++ b/code/datums/beam.dm @@ -167,5 +167,5 @@ /atom/proc/Beam(atom/BeamTarget,icon_state="b_beam",icon='icons/effects/beam.dmi',time=50, maxdistance=10,beam_type=/obj/effect/ebeam,beam_sleep_time = 3) var/datum/beam/newbeam = new(src,BeamTarget,icon,icon_state,time,maxdistance,beam_type,beam_sleep_time) - INVOKE_ASYNC(newbeam, /datum/beam/.proc/Start) + INVOKE_ASYNC(newbeam, TYPE_PROC_REF(/datum/beam/,Start)) return newbeam diff --git a/code/datums/brain_damage/mild.dm b/code/datums/brain_damage/mild.dm index 42d756fc675..c0b20296b69 100644 --- a/code/datums/brain_damage/mild.dm +++ b/code/datums/brain_damage/mild.dm @@ -160,8 +160,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") ..() diff --git a/code/datums/brain_damage/severe.dm b/code/datums/brain_damage/severe.dm index 74ea58f53c4..02163a6419b 100644 --- a/code/datums/brain_damage/severe.dm +++ b/code/datums/brain_damage/severe.dm @@ -188,7 +188,7 @@ to_chat(owner, span_warning("You feel sick...")) else to_chat(owner, span_warning("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, span_warning("You can't stop shaking...")) diff --git a/code/datums/components/caltrop.dm b/code/datums/components/caltrop.dm index 0fb706b6d36..900334691d5 100644 --- a/code/datums/components/caltrop.dm +++ b/code/datums/components/caltrop.dm @@ -108,7 +108,7 @@ span_userdanger("You step on [parent]!") ) - INVOKE_ASYNC(H, /mob/living/carbon/human/.proc/apply_damage, damage, BRUTE, picked_def_zone, FALSE, FALSE, FALSE, CANT_WOUND) + INVOKE_ASYNC(H, TYPE_PROC_REF(/mob/living/carbon/human/,apply_damage), damage, BRUTE, picked_def_zone, FALSE, FALSE, FALSE, CANT_WOUND) if(!(flags & CALTROP_NOSTUN)) // Won't set off the paralysis. H.Paralyze(60) diff --git a/code/datums/components/decal.dm b/code/datums/components/decal.dm index b41cc7670c3..62efecbba77 100644 --- a/code/datums/components/decal.dm +++ b/code/datums/components/decal.dm @@ -51,13 +51,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(old_dir, new_dir) if(old_dir == new_dir) diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index 1f74f2898e0..4e09ba1ac35 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -245,7 +245,7 @@ if(master.mind) master.mind.add_skill_modifier(malus.identifier) else - malus.RegisterSignal(master, COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier.proc/on_mob_new_mind, TRUE) + malus.RegisterSignal(master, TYPE_PROC_REF(COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier,on_mob_new_mind), TRUE) malus.value_mod = malus.level_mod = 1 - (sanity_level - 3) * MOOD_INSANITY_MALUS else if(malus) if(master.mind) diff --git a/code/datums/components/riding.dm b/code/datums/components/riding.dm index 6ea969590d3..80ef59334cf 100644 --- a/code/datums/components/riding.dm +++ b/code/datums/components/riding.dm @@ -207,7 +207,7 @@ to_chat(user, span_notice("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 diff --git a/code/datums/components/slippery.dm b/code/datums/components/slippery.dm index d82bc82dcb1..4a5aef05b66 100644 --- a/code/datums/components/slippery.dm +++ b/code/datums/components/slippery.dm @@ -77,7 +77,7 @@ return var/mob/living/victim = arrived if(!(victim.movement_type & (FLYING | FLOATING)) && victim.slip(knockdown_time, parent, lube_flags, paralyze_time, force_drop_items) && callback) - INVOKE_ASYNC(callback, /datum/callback/.proc/Invoke, victim) + INVOKE_ASYNC(callback, TYPE_PROC_REF(/datum/callback/,Invoke), victim) /* * Gets called when COMSIG_ITEM_EQUIPPED is sent to parent. diff --git a/code/datums/diseases/advance/symptoms/cough.dm b/code/datums/diseases/advance/symptoms/cough.dm index cf15ec407ac..55bb7ee563c 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/diseases/advance/symptoms/heal.dm b/code/datums/diseases/advance/symptoms/heal.dm index 913be2cd856..f0d5b59619e 100644 --- a/code/datums/diseases/advance/symptoms/heal.dm +++ b/code/datums/diseases/advance/symptoms/heal.dm @@ -278,7 +278,7 @@ /datum/symptom/heal/coma/proc/coma(mob/living/M) if(deathgasp) - INVOKE_ASYNC(M, /mob/living.proc/emote, "deathgasp") + INVOKE_ASYNC(M, TYPE_PROC_REF(/mob/living,emote), "deathgasp") M.fakedeath("regenerative_coma", TRUE) M.update_stat() M.update_mobility() diff --git a/code/datums/elements/decal.dm b/code/datums/elements/decal.dm index b62f1b06cb5..7cc9c42b7b5 100644 --- a/code/datums/elements/decal.dm +++ b/code/datums/elements/decal.dm @@ -53,7 +53,7 @@ else if(!QDELETED(target) && num_decals_per_atom[target] == 1) RegisterSignal(target, COMSIG_ATOM_AFTER_SUCCESSFUL_INITIALIZE,PROC_REF(late_update_icon)) if(isitem(target)) - addtimer(CALLBACK(target, /obj/item/.proc/update_slot_icon), 0, TIMER_UNIQUE) + addtimer(CALLBACK(target, TYPE_PROC_REF(/obj/item/,update_slot_icon)), 0, TIMER_UNIQUE) /datum/element/decal/proc/late_update_icon(atom/source) source.update_icon() diff --git a/code/datums/elements/drag_pickup.dm b/code/datums/elements/drag_pickup.dm index a19e72a56e1..480f65339d3 100644 --- a/code/datums/elements/drag_pickup.dm +++ b/code/datums/elements/drag_pickup.dm @@ -23,7 +23,7 @@ return if(over == picker) - INVOKE_ASYNC(picker, /mob/.proc/put_in_hands, source) + INVOKE_ASYNC(picker, TYPE_PROC_REF(/mob/,put_in_hands), source) else if(istype(over, /atom/movable/screen/inventory/hand)) var/atom/movable/screen/inventory/hand/Selected_hand = over picker.putItemFromInventoryInHandIfPossible(source, Selected_hand.held_index) diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 482289be576..4cf9a7c835c 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -209,7 +209,7 @@ if (T && isturf(T)) if (!D.stat) D.emote("scream") - D.throw_at(T, 10, 4, A, TRUE, TRUE, callback = CALLBACK(D, /mob/living/carbon/human.proc/DefaultCombatKnockdown, 20)) + D.throw_at(T, TYPE_PROC_REF(10, 4, A, TRUE, TRUE, callback = CALLBACK(D, /mob/living/carbon/human,DefaultCombatKnockdown), 20)) log_combat(A, D, "has thrown with wrestling") return FALSE diff --git a/code/datums/materials/_material.dm b/code/datums/materials/_material.dm index 6ab19334dba..831dc5e200b 100644 --- a/code/datums/materials/_material.dm +++ b/code/datums/materials/_material.dm @@ -54,7 +54,7 @@ Simple datum which is instanced once per type and is used for every object of sa source.name = "[name] [source.name]" if(beauty_modifier) - addtimer(CALLBACK(source, /datum.proc/_AddElement, list(/datum/element/beauty, beauty_modifier * amount)), 0) + addtimer(CALLBACK(source, TYPE_PROC_REF(/datum,_AddElement), list(/datum/element/beauty, beauty_modifier * amount)), 0) if(istype(source, /obj)) //objs on_applied_obj(source, amount, material_flags) diff --git a/code/datums/mind.dm b/code/datums/mind.dm index 801e44b353b..99315d536e1 100644 --- a/code/datums/mind.dm +++ b/code/datums/mind.dm @@ -177,7 +177,7 @@ var/datum/team/antag_team = A.get_team() if(antag_team) antag_team.add_member(src) - INVOKE_ASYNC(A, /datum/antagonist.proc/on_gain) + INVOKE_ASYNC(A, TYPE_PROC_REF(/datum/antagonist,on_gain)) return A /datum/mind/proc/remove_antag_datum(datum_type) @@ -734,7 +734,7 @@ continue S.charge_counter = delay S.updateButtonIcon() - INVOKE_ASYNC(S, /obj/effect/proc_holder/spell.proc/start_recharge) + INVOKE_ASYNC(S, TYPE_PROC_REF(/obj/effect/proc_holder/spell,start_recharge)) /datum/mind/proc/get_ghost(even_if_they_cant_reenter) for(var/mob/dead/observer/G in GLOB.dead_mob_list) diff --git a/code/datums/mood_events/generic_negative_events.dm b/code/datums/mood_events/generic_negative_events.dm index 27bf81c5007..092df6bcf1c 100644 --- a/code/datums/mood_events/generic_negative_events.dm +++ b/code/datums/mood_events/generic_negative_events.dm @@ -91,7 +91,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 = span_nicegreen("They want to play on the table!") mood_change = 2 diff --git a/code/datums/skills/_skill_modifier.dm b/code/datums/skills/_skill_modifier.dm index 1c9ec4d9471..731198f2672 100644 --- a/code/datums/skills/_skill_modifier.dm +++ b/code/datums/skills/_skill_modifier.dm @@ -115,8 +115,8 @@ GLOBAL_LIST_EMPTY(potential_mods_per_skill) skill_holder.need_static_data_update = TRUE if(M.modifier_flags & MODIFIER_SKILL_BODYBOUND) - M.RegisterSignal(src, COMSIG_MIND_TRANSFER, /datum/skill_modifier.proc/on_mind_transfer) - M.RegisterSignal(current, COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier.proc/on_mob_new_mind, TRUE) + M.RegisterSignal(src, TYPE_PROC_REF(COMSIG_MIND_TRANSFER, /datum/skill_modifier,on_mind_transfer)) + M.RegisterSignal(current, TYPE_PROC_REF(COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier,on_mob_new_mind), TRUE) RegisterSignal(M, COMSIG_PARENT_PREQDELETED,PROC_REF(on_skill_modifier_deletion)) #undef ADD_MOD_STEP @@ -201,4 +201,4 @@ GLOBAL_LIST_EMPTY(potential_mods_per_skill) /datum/skill_modifier/proc/on_mob_new_mind(mob/source) source.mind.add_skill_modifier(identifier) - RegisterSignal(source.mind, COMSIG_MIND_TRANSFER, /datum/skill_modifier.proc/on_mind_transfer) + RegisterSignal(source.mind, TYPE_PROC_REF(COMSIG_MIND_TRANSFER, /datum/skill_modifier,on_mind_transfer)) diff --git a/code/datums/status_effects/debuffs.dm b/code/datums/status_effects/debuffs.dm index 76cf15eff3c..22c031babbf 100644 --- a/code/datums/status_effects/debuffs.dm +++ b/code/datums/status_effects/debuffs.dm @@ -1000,8 +1000,8 @@ datum/status_effect/pacify var/mob/living/carbon/C = owner var/hypnomsg = uncostumize_say(hearing_args[HEARING_RAW_MESSAGE], hearing_args[HEARING_MESSAGE_MODE]) 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, hypnomsg), 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, hypnomsg), 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/spasms diff --git a/code/datums/wires/airalarm.dm b/code/datums/wires/airalarm.dm index 376512a3756..3434b0b888c 100644 --- a/code/datums/wires/airalarm.dm +++ b/code/datums/wires/airalarm.dm @@ -32,13 +32,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 diff --git a/code/datums/wires/airlock.dm b/code/datums/wires/airlock.dm index a5772da71b2..8e09aa75e01 100644 --- a/code/datums/wires/airlock.dm +++ b/code/datums/wires/airlock.dm @@ -83,9 +83,9 @@ return if(!A.requiresID() || A.check_access(null)) if(A.density) - INVOKE_ASYNC(A, /obj/machinery/door/airlock.proc/open) + INVOKE_ASYNC(A, TYPE_PROC_REF(/obj/machinery/door/airlock,open)) else - INVOKE_ASYNC(A, /obj/machinery/door/airlock.proc/close) + INVOKE_ASYNC(A, TYPE_PROC_REF(/obj/machinery/door/airlock,close)) else holder.visible_message(span_notice("You hear a a grinding noise coming from the airlock.")) if(WIRE_BOLTS) // Pulse to toggle bolts (but only raise if power is on). @@ -106,7 +106,7 @@ A.aiControlDisabled = 1 else if(A.aiControlDisabled == -1) A.aiControlDisabled = 2 - addtimer(CALLBACK(A, /obj/machinery/door/airlock.proc/reset_ai_wire), 1 SECONDS) + addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/door/airlock,reset_ai_wire)), 1 SECONDS) if(WIRE_SHOCK) // Pulse to shock the door for 10 ticks. if(!A.secondsElectrified) A.set_electrified(30, usr) diff --git a/code/datums/wires/apc.dm b/code/datums/wires/apc.dm index d167a11fd36..bd7453c950d 100644 --- a/code/datums/wires/apc.dm +++ b/code/datums/wires/apc.dm @@ -31,14 +31,14 @@ if(!A.shorted) A.shorted = TRUE A.update() - 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 diff --git a/code/datums/wires/autolathe.dm b/code/datums/wires/autolathe.dm index 01e87228d4f..834333c0372 100644 --- a/code/datums/wires/autolathe.dm +++ b/code/datums/wires/autolathe.dm @@ -28,14 +28,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/area/areas.dm b/code/game/area/areas.dm index 614da7eb8d8..b2be8d79d40 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -401,7 +401,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) if(D.operating) D.nextstate = opening ? FIREDOOR_OPEN : FIREDOOR_CLOSED else if(!(D.density ^ opening)) - INVOKE_ASYNC(D, (opening ? /obj/machinery/door/firedoor.proc/open : /obj/machinery/door/firedoor.proc/close)) + INVOKE_ASYNC(D, TYPE_PROC_REF((opening ? /obj/machinery/door/firedoor.proc/open : /obj/machinery/door/firedoor,close))) /area/proc/firealert(obj/source) if(always_unpowered == 1) //no fire alarms in space/asteroid @@ -470,7 +470,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) var/mob/living/silicon/SILICON = i if(SILICON.triggerAlarm("Burglar", src, cameras, trigger)) //Cancel silicon alert after 1 minute - addtimer(CALLBACK(SILICON, /mob/living/silicon.proc/cancelAlarm,"Burglar",src,trigger), 600) + addtimer(CALLBACK(SILICON, TYPE_PROC_REF(/mob/living/silicon,cancelAlarm,"Burglar",src,trigger)), 600) /area/proc/set_fire_alarm_effects(boolean) fire = boolean diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 185a0353261..809faf648a8 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -714,7 +714,7 @@ var/list/things = src_object.contents() var/my_bar = SSprogress_bars.add_bar(src, list(), things.len, FALSE, FALSE) var/datum/component/storage/STR = GetComponent(/datum/component/storage) - while (do_after(user, 10, TRUE, src, FALSE, CALLBACK(STR, /datum/component/storage.proc/handle_mass_item_insertion, things, src_object, user, my_bar))) + while (do_after(user, TYPE_PROC_REF(10, TRUE, src, FALSE, CALLBACK(STR, /datum/component/storage,handle_mass_item_insertion), things, src_object, user, my_bar))) stoplag(1) SSprogress_bars.remove_bar(my_bar) to_chat(user, span_notice("You dump as much of [src_object.parent]'s contents into [STR.insert_preposition]to [src] as you can.")) diff --git a/code/game/gamemodes/dynamic/dynamic.dm b/code/game/gamemodes/dynamic/dynamic.dm index 78ea7c9bedb..0c61ad3afa9 100644 --- a/code/game/gamemodes/dynamic/dynamic.dm +++ b/code/game/gamemodes/dynamic/dynamic.dm @@ -409,7 +409,7 @@ GLOBAL_VAR_INIT(dynamic_forced_threat_level, -1) /datum/game_mode/dynamic/post_setup(report) for(var/datum/dynamic_ruleset/roundstart/rule in executed_rules) rule.candidates.Cut() // The rule should not use candidates at this point as they all are null. - addtimer(CALLBACK(src, /datum/game_mode/dynamic/.proc/execute_roundstart_rule, rule), rule.delay) + addtimer(CALLBACK(src, TYPE_PROC_REF(/datum/game_mode/dynamic/,execute_roundstart_rule), rule), rule.delay) ..() @@ -715,7 +715,7 @@ GLOBAL_VAR_INIT(dynamic_forced_threat_level, -1) if (forced_latejoin_rule.ready(TRUE)) if (!forced_latejoin_rule.repeatable) latejoin_rules = remove_from_list(latejoin_rules, forced_latejoin_rule.type) - addtimer(CALLBACK(src, /datum/game_mode/dynamic/.proc/execute_midround_latejoin_rule, forced_latejoin_rule), forced_latejoin_rule.delay) + addtimer(CALLBACK(src, TYPE_PROC_REF(/datum/game_mode/dynamic/,execute_midround_latejoin_rule), forced_latejoin_rule), forced_latejoin_rule.delay) forced_latejoin_rule = null else if (latejoin_injection_cooldown < world.time && prob(get_injection_chance())) diff --git a/code/game/gamemodes/traitor/traitor.dm b/code/game/gamemodes/traitor/traitor.dm index 8b1b18660ab..1730e6575c0 100644 --- a/code/game/gamemodes/traitor/traitor.dm +++ b/code/game/gamemodes/traitor/traitor.dm @@ -68,7 +68,7 @@ /datum/game_mode/traitor/post_setup() for(var/datum/mind/traitor in pre_traitors) var/datum/antagonist/traitor/new_antag = new antag_datum() - addtimer(CALLBACK(traitor, /datum/mind.proc/add_antag_datum, new_antag), rand(10,100)) + addtimer(CALLBACK(traitor, TYPE_PROC_REF(/datum/mind,add_antag_datum), new_antag), rand(10,100)) if(!exchange_blue) exchange_blue = -1 //Block latejoiners from getting exchange objectives ..() diff --git a/code/game/machinery/buttons.dm b/code/game/machinery/buttons.dm index 0426e0c5534..659f3ab7e92 100644 --- a/code/game/machinery/buttons.dm +++ b/code/game/machinery/buttons.dm @@ -183,7 +183,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/doors/brigdoors.dm b/code/game/machinery/doors/brigdoors.dm index 620061b636b..844c8b9c741 100644 --- a/code/game/machinery/doors/brigdoors.dm +++ b/code/game/machinery/doors/brigdoors.dm @@ -89,7 +89,7 @@ for(var/obj/machinery/door/window/brigdoor/door in targets) if(door.density) continue - INVOKE_ASYNC(door, /obj/machinery/door/window/brigdoor.proc/close) + INVOKE_ASYNC(door, TYPE_PROC_REF(/obj/machinery/door/window/brigdoor,close)) for(var/obj/structure/closet/secure_closet/brig/C in targets) if(C.broken) @@ -117,7 +117,7 @@ for(var/obj/machinery/door/window/brigdoor/door in targets) if(!door.density) continue - INVOKE_ASYNC(door, /obj/machinery/door/window/brigdoor.proc/open) + INVOKE_ASYNC(door, TYPE_PROC_REF(/obj/machinery/door/window/brigdoor,open)) for(var/obj/structure/closet/secure_closet/brig/C in targets) if(C.broken) diff --git a/code/game/machinery/embedded_controller/embedded_controller_base.dm b/code/game/machinery/embedded_controller/embedded_controller_base.dm index aaf39059617..57dbd7ad853 100644 --- a/code/game/machinery/embedded_controller/embedded_controller_base.dm +++ b/code/game/machinery/embedded_controller/embedded_controller_base.dm @@ -58,7 +58,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 ad473b30a93..03bbc459874 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -340,7 +340,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/decals/cleanable.dm b/code/game/objects/effects/decals/cleanable.dm index bd90c9502c3..acf2c9eed9a 100644 --- a/code/game/objects/effects/decals/cleanable.dm +++ b/code/game/objects/effects/decals/cleanable.dm @@ -32,7 +32,7 @@ ) AddElement(/datum/element/connect_loc, loc_connections) - addtimer(CALLBACK(src, /datum.proc/_AddElement, list(/datum/element/beauty, beauty)), 0) + addtimer(CALLBACK(src, TYPE_PROC_REF(/datum,_AddElement), list(/datum/element/beauty, beauty)), 0) /obj/effect/decal/cleanable/proc/replace_decal(obj/effect/decal/cleanable/C) // Returns true if we should give up in favor of the pre-existing decal if(mergeable_decal) diff --git a/code/game/objects/effects/spawners/roomspawner.dm b/code/game/objects/effects/spawners/roomspawner.dm index f6753a7742b..a4d3713828e 100644 --- a/code/game/objects/effects/spawners/roomspawner.dm +++ b/code/game/objects/effects/spawners/roomspawner.dm @@ -22,7 +22,7 @@ if(istype(template, /datum/map_template/random_room) && room_height == template.template_height && room_width == template.template_width) if(!template.spawned) template.spawned = TRUE - addtimer(CALLBACK(src, /obj/effect/spawner/room.proc/LateSpawn), 600) + addtimer(CALLBACK(src, TYPE_PROC_REF(/obj/effect/spawner/room,LateSpawn)), 600) break template = null if(!template) diff --git a/code/game/objects/effects/temporary_visuals/miscellaneous.dm b/code/game/objects/effects/temporary_visuals/miscellaneous.dm index 390cd98ff2a..4b03b151ab8 100644 --- a/code/game/objects/effects/temporary_visuals/miscellaneous.dm +++ b/code/game/objects/effects/temporary_visuals/miscellaneous.dm @@ -481,7 +481,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/items/devices/PDA/cart.dm b/code/game/objects/items/devices/PDA/cart.dm index 412f2bf0a74..b8d9a9ebae7 100644 --- a/code/game/objects/items/devices/PDA/cart.dm +++ b/code/game/objects/items/devices/PDA/cart.dm @@ -646,7 +646,7 @@ Current Size: [usr.transform.a]

playsound(src, 'sound/machines/terminal_select.ogg', 50, 1) if("Send Signal") - INVOKE_ASYNC(radio, /obj/item/integrated_signaler.proc/send_activation) + INVOKE_ASYNC(radio, TYPE_PROC_REF(/obj/item/integrated_signaler,send_activation)) playsound(src, 'sound/machines/terminal_select.ogg', 50, 1) if("Signal Frequency") diff --git a/code/game/objects/items/devices/portable_blender_brain.dm b/code/game/objects/items/devices/portable_blender_brain.dm index b504c76f60e..ccda149b722 100644 --- a/code/game/objects/items/devices/portable_blender_brain.dm +++ b/code/game/objects/items/devices/portable_blender_brain.dm @@ -1196,7 +1196,7 @@ CRASH("Blenderbrain [src] tried to process an invalid impulse: [impulse]") var/datum/blenderbrain_impulse/thimpulse = impulse var/do_next = thimpulse.immediate_next - INVOKE_ASYNC(thimpulse, /datum/blenderbrain_impulse.proc/run_it) + INVOKE_ASYNC(thimpulse, TYPE_PROC_REF(/datum/blenderbrain_impulse,run_it)) if(do_next) continue break diff --git a/code/game/objects/items/devices/portable_chem_blenderbelt.dm b/code/game/objects/items/devices/portable_chem_blenderbelt.dm index 86c1915c117..c9e06a2787a 100644 --- a/code/game/objects/items/devices/portable_chem_blenderbelt.dm +++ b/code/game/objects/items/devices/portable_chem_blenderbelt.dm @@ -670,7 +670,7 @@ /obj/item/storage/blender_belt/attack_hand(mob/user) if(grind_or_dispense == BLENDER_BELTMODE_DISPENSER && ismob(loc)) - INVOKE_ASYNC(src, /datum.proc/ui_interact, user) + INVOKE_ASYNC(src, TYPE_PROC_REF(/datum,ui_interact), user) else . = ..() diff --git a/code/game/objects/items/devices/portable_chem_mixer.dm b/code/game/objects/items/devices/portable_chem_mixer.dm index fe051867be8..1fff8ac7c41 100644 --- a/code/game/objects/items/devices/portable_chem_mixer.dm +++ b/code/game/objects/items/devices/portable_chem_mixer.dm @@ -111,7 +111,7 @@ if (loc != user) return ..() if(SEND_SIGNAL(src, COMSIG_IS_STORAGE_LOCKED)) - INVOKE_ASYNC(src, /datum.proc/ui_interact, user) + INVOKE_ASYNC(src, TYPE_PROC_REF(/datum,ui_interact), user) /obj/item/storage/portable_chem_mixer/attack_self(mob/user) if(loc == user) diff --git a/code/game/objects/items/devices/transfer_valve.dm b/code/game/objects/items/devices/transfer_valve.dm index e5eedcade2e..a26ac10f87e 100644 --- a/code/game/objects/items/devices/transfer_valve.dm +++ b/code/game/objects/items/devices/transfer_valve.dm @@ -228,7 +228,7 @@ merge_gases() for(var/i in 1 to 6) - addtimer(CALLBACK(src, /atom/.proc/update_icon), 20 + (i - 1) * 10) + addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/,update_icon)), 20 + (i - 1) * 10) else if(valve_open && tank_one && tank_two) split_gases() diff --git a/code/game/objects/items/grenades/antigravity.dm b/code/game/objects/items/grenades/antigravity.dm index b6700599a3e..6caebeedfce 100644 --- a/code/game/objects/items/grenades/antigravity.dm +++ b/code/game/objects/items/grenades/antigravity.dm @@ -13,6 +13,6 @@ for(var/turf/T in view(range,src)) T.AddElement(/datum/element/forced_gravity, forced_value) - addtimer(CALLBACK(T, /datum/.proc/_RemoveElement, list(forced_value)), duration) + addtimer(CALLBACK(T, TYPE_PROC_REF(/datum/,_RemoveElement), list(forced_value)), duration) qdel(src) diff --git a/code/game/objects/items/handcuffs.dm b/code/game/objects/items/handcuffs.dm index 2e677f8be12..0650becc5a2 100644 --- a/code/game/objects/items/handcuffs.dm +++ b/code/game/objects/items/handcuffs.dm @@ -286,7 +286,7 @@ if(!C.lying) def_zone = pick(BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) if(!C.legcuffed) //beartrap can't cuff your leg if there's already a beartrap or legcuffs, or you don't have two legs. - INVOKE_ASYNC(C, /mob/living/carbon.proc/equip_to_slot, src, SLOT_LEGCUFFED) + INVOKE_ASYNC(C, TYPE_PROC_REF(/mob/living/carbon,equip_to_slot), src, SLOT_LEGCUFFED) SSblackbox.record_feedback("tally", "handcuffs", 1, type) else if(snap && isanimal(L)) var/mob/living/simple_animal/SA = L diff --git a/code/game/objects/items/melee/weaponry.dm b/code/game/objects/items/melee/weaponry.dm index b1f0ed09b09..df8108fe217 100644 --- a/code/game/objects/items/melee/weaponry.dm +++ b/code/game/objects/items/melee/weaponry.dm @@ -400,7 +400,7 @@ superlagg says: cool story, oranges /obj/item/statuebust/Initialize() . = ..() AddElement(/datum/element/art, impressiveness) - addtimer(CALLBACK(src, /datum.proc/_AddElement, list(/datum/element/beauty, 1000)), 0) + addtimer(CALLBACK(src, TYPE_PROC_REF(/datum,_AddElement), list(/datum/element/beauty, 1000)), 0) /obj/item/tailclub name = "tail club" diff --git a/code/game/objects/items/plushes.dm b/code/game/objects/items/plushes.dm index 3904c8223b9..74def28c25e 100644 --- a/code/game/objects/items/plushes.dm +++ b/code/game/objects/items/plushes.dm @@ -837,7 +837,7 @@ GLOBAL_LIST_INIT(valid_plushie_paths, valid_plushie_paths()) if(!H) return //Type safety. H.apply_damage(5, BRUTE, pick(BODY_ZONE_L_ARM, BODY_ZONE_R_ARM)) - addtimer(CALLBACK(H, /mob/living/carbon/human.proc/dropItemToGround, src, TRUE), 1) + addtimer(CALLBACK(H, TYPE_PROC_REF(/mob/living/carbon/human,dropItemToGround), src, TRUE), 1) /obj/item/toy/plush/plushling/New() var/initial_state = pick("plushie_lizard", "plushie_snake", "plushie_slime", "fox") diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 92ed138645e..f055e159624 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -449,7 +449,7 @@ else transfer = min(transfer, (limit ? limit : target_stack.max_amount) - target_stack.amount) if(pulledby) - INVOKE_ASYNC(pulledby, /atom/movable/.proc/start_pulling, target_stack) + INVOKE_ASYNC(pulledby, TYPE_PROC_REF(/atom/movable/,start_pulling), target_stack) target_stack.copy_evidences(src) use(transfer, transfer = TRUE, check = FALSE) target_stack.add(transfer) diff --git a/code/game/objects/structures/divine.dm b/code/game/objects/structures/divine.dm index 8994b9ccd20..b7dddd4a9c1 100644 --- a/code/game/objects/structures/divine.dm +++ b/code/game/objects/structures/divine.dm @@ -87,7 +87,7 @@ GLOBAL_LIST_INIT(gunparts_rates, list( to_chat(user, span_notice("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_state() if(last_process + time_between_uses > world.time) diff --git a/code/game/objects/structures/electricchair.dm b/code/game/objects/structures/electricchair.dm index 51af17da7e2..1251bf98a27 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, span_userdanger("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(span_danger("The electric chair went off!"), span_italic("You hear a deep sharp shock!")) diff --git a/code/game/objects/structures/flora.dm b/code/game/objects/structures/flora.dm index b816fecf659..d8a3b4b6499 100644 --- a/code/game/objects/structures/flora.dm +++ b/code/game/objects/structures/flora.dm @@ -349,7 +349,7 @@ /obj/item/kirbyplants/ComponentInitialize() . = ..() AddElement(/datum/element/tactical) - addtimer(CALLBACK(src, /datum.proc/_AddElement, list(/datum/element/beauty, 500)), 0) + addtimer(CALLBACK(src, TYPE_PROC_REF(/datum,_AddElement), list(/datum/element/beauty, 500)), 0) AddComponent(/datum/component/two_handed, require_twohands=TRUE, force_unwielded=10, force_wielded=10) /obj/item/kirbyplants/random diff --git a/code/game/objects/structures/ghost_role_spawners.dm b/code/game/objects/structures/ghost_role_spawners.dm index 9a47994fb59..bbe1a7c225c 100644 --- a/code/game/objects/structures/ghost_role_spawners.dm +++ b/code/game/objects/structures/ghost_role_spawners.dm @@ -427,7 +427,7 @@ id.update_label() else to_chat(L, span_userdanger("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 ce8ca5b870f..bfc6e884c4b 100644 --- a/code/game/objects/structures/guillotine.dm +++ b/code/game/objects/structures/guillotine.dm @@ -133,7 +133,7 @@ for(var/mob/M in fov_viewers(world.view, src)) 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) diff --git a/code/game/objects/structures/life_candle.dm b/code/game/objects/structures/life_candle.dm index d30d1a38c70..8c6abcc781e 100644 --- a/code/game/objects/structures/life_candle.dm +++ b/code/game/objects/structures/life_candle.dm @@ -35,7 +35,7 @@ linked_minds |= user.mind update_icon() - INVOKE_ASYNC(src, /atom/movable.proc/float, linked_minds.len) + INVOKE_ASYNC(src, TYPE_PROC_REF(/atom/movable,float), linked_minds.len) if(linked_minds.len) START_PROCESSING(SSobj, src) set_light(lit_luminosity) diff --git a/code/game/objects/structures/manned_turret.dm b/code/game/objects/structures/manned_turret.dm index e8fbafa42bc..e2cdd27baa4 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/objects/structures/statues.dm b/code/game/objects/structures/statues.dm index 5ac60244945..387660ac75b 100644 --- a/code/game/objects/structures/statues.dm +++ b/code/game/objects/structures/statues.dm @@ -15,7 +15,7 @@ /obj/structure/statue/Initialize() . = ..() AddElement(/datum/element/art, impressiveness) - addtimer(CALLBACK(src, /datum.proc/_AddElement, list(/datum/element/beauty, impressiveness * 75)), 0) + addtimer(CALLBACK(src, TYPE_PROC_REF(/datum,_AddElement), list(/datum/element/beauty, impressiveness * 75)), 0) AddComponent(/datum/component/simple_rotation, ROTATION_ALTCLICK | ROTATION_CLOCKWISE, CALLBACK(src,PROC_REF(can_user_rotate)), CALLBACK(src,PROC_REF(can_be_rotated)), null) /obj/structure/statue/proc/can_be_rotated(mob/user) diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index f0c5d11bd81..195ab0a9678 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -279,7 +279,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, TYPE_PROC_REF(get_ranged_target_turf(C, olddir, 4), 1, FALSE, CALLBACK(C, /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 TRUE diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 0abe8730816..7b2c65bfd03 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -401,7 +401,7 @@ var/list/things = src_object.contents() var/my_bar = SSprogress_bars.add_bar(src, list(), things.len, FALSE, TRUE) - while (do_after(user, 10, TRUE, src, FALSE, CALLBACK(src_object, /datum/component/storage.proc/mass_remove_from_storage, src, things, my_bar))) + while (do_after(user, TYPE_PROC_REF(10, TRUE, src, FALSE, CALLBACK(src_object, /datum/component/storage,mass_remove_from_storage), src, things, my_bar))) stoplag(1) SSprogress_bars.remove_bar(my_bar) diff --git a/code/modules/VR/vr_sleeper.dm b/code/modules/VR/vr_sleeper.dm index f1936055f91..6c1b1f89d82 100644 --- a/code/modules/VR/vr_sleeper.dm +++ b/code/modules/VR/vr_sleeper.dm @@ -179,9 +179,9 @@ RegisterSignal(VR, COMSIG_COMPONENT_UNREGISTER_PARENT,PROC_REF(unset_vr_mob)) RegisterSignal(VR, COMSIG_COMPONENT_REGISTER_PARENT,PROC_REF(set_vr_mob)) if(!only_current_user_can_interact) - VR.RegisterSignal(src, COMSIG_ATOM_EMAG_ACT, /datum/component/virtual_reality.proc/you_only_live_once) - VR.RegisterSignal(src, COMSIG_MACHINE_EJECT_OCCUPANT, /datum/component/virtual_reality.proc/revert_to_reality) - VR.RegisterSignal(src, COMSIG_PARENT_QDELETING, /datum/component/virtual_reality.proc/machine_destroyed) + VR.RegisterSignal(src, TYPE_PROC_REF(COMSIG_ATOM_EMAG_ACT, /datum/component/virtual_reality,you_only_live_once)) + VR.RegisterSignal(src, TYPE_PROC_REF(COMSIG_MACHINE_EJECT_OCCUPANT, /datum/component/virtual_reality,revert_to_reality)) + VR.RegisterSignal(src, TYPE_PROC_REF(COMSIG_PARENT_QDELETING, /datum/component/virtual_reality,machine_destroyed)) to_chat(vr_mob, span_notice("Transfer successful! You are now playing as [vr_mob] in VR!")) else to_chat(M, span_notice("Transfer failed! virtual reality data likely corrupted!")) diff --git a/code/modules/admin/verbs/onlyone.dm b/code/modules/admin/verbs/onlyone.dm index 910be6a4e61..5bec90268b5 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(span_adminnotice("[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(span_userdanger("Bagpipes begin to blare. You feel Scottish pride coming over you.")) diff --git a/code/modules/antagonists/blood_contract/blood_contract.dm b/code/modules/antagonists/blood_contract/blood_contract.dm index 346243d785a..a7c2311dd16 100644 --- a/code/modules/antagonists/blood_contract/blood_contract.dm +++ b/code/modules/antagonists/blood_contract/blood_contract.dm @@ -24,7 +24,7 @@ return H.add_atom_colour("#FF0000", ADMIN_COLOUR_PRIORITY) var/obj/effect/mine/pickup/bloodbath/B = new(H) - INVOKE_ASYNC(B, /obj/effect/mine/pickup/bloodbath/.proc/mineEffect, H) //could use moving out from the mine + INVOKE_ASYNC(B, TYPE_PROC_REF(/obj/effect/mine/pickup/bloodbath/,mineEffect), H) //could use moving out from the mine for(var/mob/living/carbon/human/P in GLOB.player_list) if(P == H || HAS_TRAIT(P, TRAIT_NO_MIDROUND_ANTAG)) diff --git a/code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm b/code/modules/antagonists/clockcult/clock_helpers/fabrication_helpers.dm index 96ec774e160..7d0c57ded14 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 98d4bfd033e..ada2f610dc4 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/clock_weapons/ratvarian_shield.dm b/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_shield.dm index 2664f0739b0..116a5707cb3 100644 --- a/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_shield.dm +++ b/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_shield.dm @@ -49,7 +49,7 @@ obj/item/shield/riot/ratvarian/proc/calc_bash_mult() C.apply_damage((iscultist(C) ? damage * 2 : damage), BURN, (istype(part, /obj/item/bodypart/l_arm) ? BODY_ZONE_L_ARM : BODY_ZONE_R_ARM)) //Deals the damage to the holder instead of absorbing it instead + forcedrops. Doubled if a cultist of Nar'Sie. else owner.adjustFireLoss(iscultist(owner) ? damage * 2 : damage) - addtimer(CALLBACK(owner, /mob/living.proc/dropItemToGround, src, TRUE), 1) + addtimer(CALLBACK(owner, TYPE_PROC_REF(/mob/living,dropItemToGround), src, TRUE), 1) else if(!is_servant_of_ratvar(attacker)) //No exploiting my snowflake mechanics dam_absorbed += damage playsound(owner, 'sound/machines/clockcult/steam_whoosh.ogg', 30) diff --git a/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_armor.dm index d8a12f8272d..3d7ea62c038 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)) @@ -119,7 +119,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 b15b1acbdc7..4deeed6ac28 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(span_warning("[ranged_ability_user]'s judicial visor fires a stream of energy at [target], creating a strange mark!"), span_heavy_brass("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 c39bb9b0833..1e0e1282936 100644 --- a/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm +++ b/code/modules/antagonists/clockcult/clock_scriptures/scripture_scripts.dm @@ -217,7 +217,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 a820c103f7d..befdc1fc6b5 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 e011b202e26..87be7cece0c 100644 --- a/code/modules/antagonists/cult/blood_magic.dm +++ b/code/modules/antagonists/cult/blood_magic.dm @@ -268,7 +268,7 @@ SEND_SOUND(ranged_ability_user, sound('sound/effects/ghost.ogg',0,1,50)) var/image/C = image('icons/effects/cult_effects.dmi',H,"bloodsparkles", ABOVE_MOB_LAYER) add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/cult, "cult_apoc", C, FALSE) - addtimer(CALLBACK(H,/atom/.proc/remove_alt_appearance,"cult_apoc",TRUE), 2400, TIMER_OVERRIDE|TIMER_UNIQUE) + addtimer(CALLBACK(H,TYPE_PROC_REF(/atom/,remove_alt_appearance,"cult_apoc",TRUE)), 2400, TIMER_OVERRIDE|TIMER_UNIQUE) to_chat(ranged_ability_user,"[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 13a311c7b8e..ed85f86b185 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(span_cult("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 0f55d5b7665..0173d07ded6 100644 --- a/code/modules/antagonists/cult/cult_items.dm +++ b/code/modules/antagonists/cult/cult_items.dm @@ -965,7 +965,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 @@ -1012,7 +1012,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 1ed2b760f97..c9c6e3df544 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, TYPE_PROC_REF(scribe_mod, target = owner, extra_checks = CALLBACK(owner, /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 diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index de897a7284c..6f0409d31c3 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -994,7 +994,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 @@ -1002,13 +1002,13 @@ structure_check() searches for nearby cultist structures required for the invoca var/image/B = image('icons/mob/mob.dmi',M,construct, ABOVE_MOB_LAYER) B.override = 1 add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/noncult, "mob_apoc", B, FALSE) - addtimer(CALLBACK(M,/atom/.proc/remove_alt_appearance,"mob_apoc",TRUE), duration) + addtimer(CALLBACK(M,TYPE_PROC_REF(/atom/,remove_alt_appearance,"mob_apoc",TRUE)), duration) images += B if(!iscultist(M)) if(M.client) var/image/C = image('icons/effects/cult_effects.dmi',M,"bloodsparkles", ABOVE_MOB_LAYER) add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/cult, "cult_apoc", C, FALSE) - addtimer(CALLBACK(M,/atom/.proc/remove_alt_appearance,"cult_apoc",TRUE), duration) + addtimer(CALLBACK(M,TYPE_PROC_REF(/atom/,remove_alt_appearance,"cult_apoc",TRUE)), duration) images += C else to_chat(M, span_cultlarge("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 330a425ed0b..d6f2d91430e 100644 --- a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm +++ b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm @@ -448,8 +448,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) @@ -606,7 +606,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(span_userdanger("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(span_danger("Overcharging machine...")) return TRUE @@ -653,7 +653,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(span_userdanger("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(span_danger("Sending override signal...")) return TRUE @@ -783,7 +783,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, span_notice("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 47649be70d0..e7ae1722cb2 100644 --- a/code/modules/antagonists/wizard/equipment/artefact.dm +++ b/code/modules/antagonists/wizard/equipment/artefact.dm @@ -111,7 +111,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/doorcontrol.dm b/code/modules/assembly/doorcontrol.dm index ca81c1e3ecd..2d7d317a33d 100644 --- a/code/modules/assembly/doorcontrol.dm +++ b/code/modules/assembly/doorcontrol.dm @@ -45,7 +45,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, TYPE_PROC_REF(openclose ? /obj/machinery/door/poddoor.proc/open : /obj/machinery/door/poddoor,close)) addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 10) /obj/item/assembly/control/airlock @@ -88,7 +88,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, TYPE_PROC_REF(doors_need_closing ? /obj/machinery/door/airlock.proc/close : /obj/machinery/door/airlock,open)) addtimer(VARSET_CALLBACK(src, cooldown, FALSE), 10) @@ -101,7 +101,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) @@ -113,7 +113,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) @@ -126,7 +126,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) @@ -144,7 +144,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) diff --git a/code/modules/assembly/flash.dm b/code/modules/assembly/flash.dm index 22098c655b0..6f46678a39a 100644 --- a/code/modules/assembly/flash.dm +++ b/code/modules/assembly/flash.dm @@ -28,7 +28,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() @@ -303,7 +303,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/assembly/infrared.dm b/code/modules/assembly/infrared.dm index 74bbb6b19bb..56095cbe7cd 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -238,4 +238,4 @@ var/obj/item/I = AM if (I.item_flags & ABSTRACT) return - INVOKE_ASYNC(master, /obj/item/assembly/infra/.proc/trigger_beam, AM, get_turf(src)) + INVOKE_ASYNC(master, TYPE_PROC_REF(/obj/item/assembly/infra/,trigger_beam), AM, get_turf(src)) diff --git a/code/modules/atmospherics/environmental/LINDA_fire.dm b/code/modules/atmospherics/environmental/LINDA_fire.dm index 19b4636457c..8a964b9a16b 100644 --- a/code/modules/atmospherics/environmental/LINDA_fire.dm +++ b/code/modules/atmospherics/environmental/LINDA_fire.dm @@ -221,7 +221,7 @@ /obj/effect/hotspot/proc/on_entered(atom/movable/AM, oldLoc) SIGNAL_HANDLER if(isliving(AM)) - INVOKE_ASYNC(AM, /atom/.proc/fire_act, temperature, volume) + INVOKE_ASYNC(AM, TYPE_PROC_REF(/atom/,fire_act), temperature, volume) /obj/effect/hotspot/singularity_pull() return diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm index 293e2b12b51..a8a14ce0232 100644 --- a/code/modules/awaymissions/gateway.dm +++ b/code/modules/awaymissions/gateway.dm @@ -89,7 +89,7 @@ GLOBAL_LIST_EMPTY(gateway_destinations) /datum/gateway_destination/gateway/post_transfer(atom/movable/AM) . = ..() - addtimer(CALLBACK(AM,/atom/movable.proc/setDir,SOUTH),0) + addtimer(CALLBACK(AM,TYPE_PROC_REF(/atom/movable,setDir,SOUTH),0)) /* Special home destination, so we can check exile implants */ /datum/gateway_destination/gateway/home diff --git a/code/modules/awaymissions/super_secret_room.dm b/code/modules/awaymissions/super_secret_room.dm index 89964f3ef6d..adabc44520c 100644 --- a/code/modules/awaymissions/super_secret_room.dm +++ b/code/modules/awaymissions/super_secret_room.dm @@ -141,7 +141,7 @@ SIGNAL_HANDLER if(!istype(M)) return - INVOKE_ASYNC(M, /mob/.proc/put_in_hands, src) + INVOKE_ASYNC(M, TYPE_PROC_REF(/mob/,put_in_hands), src) /obj/item/rupee/equipped(mob/user, slot) playsound(get_turf(loc), 'sound/misc/server-ready.ogg', 50, 1, -1) diff --git a/code/modules/client/client_procs.dm b/code/modules/client/client_procs.dm index f7dd69491c6..f1df89748c0 100644 --- a/code/modules/client/client_procs.dm +++ b/code/modules/client/client_procs.dm @@ -969,7 +969,7 @@ GLOBAL_LIST_INIT(warning_ckeys, list()) //Precache the client with all other assets slowly, so as to not block other browse() calls if (CONFIG_GET(flag/asset_simple_preload)) - addtimer(CALLBACK(SSassets.transport, /datum/asset_transport.proc/send_assets_slow, src, SSassets.transport.preload), 5 SECONDS) + addtimer(CALLBACK(SSassets.transport, TYPE_PROC_REF(/datum/asset_transport,send_assets_slow), src, SSassets.transport.preload), 5 SECONDS) #if (PRELOAD_RSC == 0) for (var/name in GLOB.vox_sounds) diff --git a/code/modules/clothing/gloves/_gloves.dm b/code/modules/clothing/gloves/_gloves.dm index 70451f2803e..eff5f0d260d 100644 --- a/code/modules/clothing/gloves/_gloves.dm +++ b/code/modules/clothing/gloves/_gloves.dm @@ -16,7 +16,7 @@ /obj/item/clothing/gloves/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, /atom.proc/clean_blood) + RegisterSignal(src, TYPE_PROC_REF(COMSIG_COMPONENT_CLEAN_ACT, /atom,clean_blood)) /obj/item/clothing/gloves/clean_blood(datum/source, strength) . = ..() diff --git a/code/modules/clothing/shoes/_shoes.dm b/code/modules/clothing/shoes/_shoes.dm index 3171bbf6832..29e2180187c 100644 --- a/code/modules/clothing/shoes/_shoes.dm +++ b/code/modules/clothing/shoes/_shoes.dm @@ -33,7 +33,7 @@ /obj/item/clothing/shoes/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, /atom.proc/clean_blood) + RegisterSignal(src, TYPE_PROC_REF(COMSIG_COMPONENT_CLEAN_ACT, /atom,clean_blood)) /obj/item/clothing/shoes/examine(mob/user) . = ..() diff --git a/code/modules/clothing/spacesuits/flightsuit.dm b/code/modules/clothing/spacesuits/flightsuit.dm index 2b1bae2d597..744b395093b 100644 --- a/code/modules/clothing/spacesuits/flightsuit.dm +++ b/code/modules/clothing/spacesuits/flightsuit.dm @@ -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_boldnotice("[wearer] rolls to [wearer.p_their()] sides and slips past [door]!")) @@ -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_warning("[wearer] rolls sideways and slips past [A]")) var/turf/target = get_turf(A) if(istype(A, /obj/machinery/door/window) && (get_turf(wearer) == get_turf(A))) diff --git a/code/modules/events/fugitive_spawning.dm b/code/modules/events/fugitive_spawning.dm index be4fa8f8235..4791101c608 100644 --- a/code/modules/events/fugitive_spawning.dm +++ b/code/modules/events/fugitive_spawning.dm @@ -69,7 +69,7 @@ player_mind.special_role = "Fugitive" player_mind.add_antag_datum(/datum/antagonist/fugitive) var/datum/antagonist/fugitive/fugitiveantag = player_mind.has_antag_datum(/datum/antagonist/fugitive) - INVOKE_ASYNC(fugitiveantag, /datum/antagonist/fugitive.proc/greet, backstory) //some fugitives have a sleep on their greet, so we don't want to stop the entire antag granting proc with fluff + INVOKE_ASYNC(fugitiveantag, TYPE_PROC_REF(/datum/antagonist/fugitive,greet), backstory) //some fugitives have a sleep on their greet, so we don't want to stop the entire antag granting proc with fluff switch(backstory) if("prisoner") diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index 7b2236c2931..480286faba1 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -330,10 +330,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) @@ -343,10 +343,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) @@ -364,10 +364,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) @@ -1088,7 +1088,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( /obj/effect/hallucination/danger/lava/proc/on_entered(atom/movable/AM) SIGNAL_HANDLER if(AM == target) - INVOKE_ASYNC(target, /mob/living/.proc/adjustStaminaLoss, 20) + INVOKE_ASYNC(target, TYPE_PROC_REF(/mob/living/,adjustStaminaLoss), 20) new /datum/hallucination/fire(target) /obj/effect/hallucination/danger/chasm diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index 277c59b7903..0d36962a137 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -91,7 +91,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/holiday/party_time.dm b/code/modules/holiday/party_time.dm index 1c181c7735d..c03297336c0 100644 --- a/code/modules/holiday/party_time.dm +++ b/code/modules/holiday/party_time.dm @@ -148,7 +148,7 @@ GLOBAL_LIST_EMPTY(party_landmarks) return FALSE for(var/mob/living/seer in range(10, src)) seer.overlay_fullscreen("flash", type, 2) - addtimer(CALLBACK(seer, /mob/living.proc/clear_fullscreen, "flash", 25), 2.5 SECONDS) + addtimer(CALLBACK(seer, TYPE_PROC_REF(/mob/living,clear_fullscreen), "flash", 25), 2.5 SECONDS) for(var/turf/blocker in block(locate(x + template.width*0.5,y + template.height*0.5,z),locate(x - template.width*0.5,y - template.height*0.5,z))) for(var/atom/movable/AM in blocker) if(!AM.anchored) diff --git a/code/modules/holodeck/turfs.dm b/code/modules/holodeck/turfs.dm index e2e75b99de1..61abd24d423 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 d21c519cf9a..96b227d6af6 100644 --- a/code/modules/hydroponics/grown/misc.dm +++ b/code/modules/hydroponics/grown/misc.dm @@ -467,7 +467,7 @@ to_chat(user, span_notice("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 61fb69052e4..11d282adbdc 100644 --- a/code/modules/integrated_electronics/subtypes/weaponized.dm +++ b/code/modules/integrated_electronics/subtypes/weaponized.dm @@ -197,7 +197,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/interview/interview.dm b/code/modules/interview/interview.dm index aeb1525f739..d7ad99c7277 100644 --- a/code/modules/interview/interview.dm +++ b/code/modules/interview/interview.dm @@ -80,7 +80,7 @@ GLOB.interviews.cooldown_ckeys |= owner_ckey log_admin_private("[key_name(denied_by)] has denied interview #[id] for [owner_ckey][!owner ? "(DC)": ""].") message_admins(span_adminnotice("[key_name(denied_by)] has denied [link_self()] for [owner_ckey][!owner ? "(DC)": ""].")) - addtimer(CALLBACK(GLOB.interviews, /datum/interview_manager.proc/release_from_cooldown, owner_ckey), 180) + addtimer(CALLBACK(GLOB.interviews, TYPE_PROC_REF(/datum/interview_manager,release_from_cooldown), owner_ckey), 180) if (owner) SEND_SOUND(owner, sound('sound/effects/adminhelp.ogg')) to_chat(owner, "-- Interview Update --" \ diff --git a/code/modules/mafia/controller.dm b/code/modules/mafia/controller.dm index f05701375c2..9fcf7f29c36 100644 --- a/code/modules/mafia/controller.dm +++ b/code/modules/mafia/controller.dm @@ -408,9 +408,9 @@ if(D.id != "mafia") //so as to not trigger shutters on station, lol continue if(close) - INVOKE_ASYNC(D, /obj/machinery/door/poddoor.proc/close) + INVOKE_ASYNC(D, TYPE_PROC_REF(/obj/machinery/door/poddoor,close)) else - INVOKE_ASYNC(D, /obj/machinery/door/poddoor.proc/open) + INVOKE_ASYNC(D, TYPE_PROC_REF(/obj/machinery/door/poddoor,open)) /** * The actual start of night for players. Mostly info is given at the start of the night as the end of the night is when votes and actions are submitted and tried. diff --git a/code/modules/mining/equipment/wormhole_jaunter.dm b/code/modules/mining/equipment/wormhole_jaunter.dm index c1a5ed42237..6c55435a959 100644 --- a/code/modules/mining/equipment/wormhole_jaunter.dm +++ b/code/modules/mining/equipment/wormhole_jaunter.dm @@ -103,4 +103,4 @@ L.DefaultCombatKnockdown(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 015af91c9c2..20171acf2a0 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -1132,7 +1132,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, span_notice("You shatter the bottle!")) playsound(user.loc, 'sound/effects/glassbr1.ogg', 100, 1) message_admins(span_adminnotice("[ADMIN_LOOKUPFLW(user)] has activated a bottle of mayhem!")) diff --git a/code/modules/mob/living/bloodcrawl.dm b/code/modules/mob/living/bloodcrawl.dm index c0a9ef3f608..aea5a4f086a 100644 --- a/code/modules/mob/living/bloodcrawl.dm +++ b/code/modules/mob/living/bloodcrawl.dm @@ -152,7 +152,7 @@ newcolor = BLOOD_COLOR_XENO add_atom_colour(newcolor, TEMPORARY_COLOUR_PRIORITY) // but only for a few seconds - addtimer(CALLBACK(src, /atom/.proc/remove_atom_colour, TEMPORARY_COLOUR_PRIORITY, newcolor), 6 SECONDS) + addtimer(CALLBACK(src, TYPE_PROC_REF(/atom/,remove_atom_colour), TEMPORARY_COLOUR_PRIORITY, newcolor), 6 SECONDS) /mob/living/proc/phasein(obj/effect/decal/cleanable/B) if(src.mob_transforming) diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index 227226d6656..aebca9fa8ad 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -100,7 +100,7 @@ /obj/item/clothing/mask/facehugger/proc/on_entered(atom/target) SIGNAL_HANDLER - INVOKE_ASYNC(src, /atom/.proc/HasProximity, target) + INVOKE_ASYNC(src, TYPE_PROC_REF(/atom/,HasProximity), target) return /obj/item/clothing/mask/facehugger/on_found(mob/finder) diff --git a/code/modules/mob/living/carbon/human/death.dm b/code/modules/mob/living/carbon/human/death.dm index 4e6aac4bcbd..5cf84f158bd 100644 --- a/code/modules/mob/living/carbon/human/death.dm +++ b/code/modules/mob/living/carbon/human/death.dm @@ -51,7 +51,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) /mob/living/carbon/human/proc/makeSkeleton() ADD_TRAIT(src, TRAIT_DISFIGURED, TRAIT_GENERIC) diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 86338438eca..bf963fb99b2 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -46,7 +46,7 @@ GLOBAL_VAR_INIT(crotch_call_cooldown, 0) if(CONFIG_GET(flag/disable_stambuffer)) enable_intentional_sprint_mode() - RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, /atom.proc/clean_blood) + RegisterSignal(src, TYPE_PROC_REF(COMSIG_COMPONENT_CLEAN_ACT, /atom,clean_blood)) GLOB.human_list += src // var/datum/atom_hud/data/human/genital/pornHud = GLOB.huds[GENITAL_PORNHUD] // pornHud.add_to_hud(src) @@ -234,7 +234,7 @@ GLOBAL_VAR_INIT(crotch_call_cooldown, 0) ..() var/mob/living/simple_animal/bot/mulebot/MB = AM if(istype(MB)) - INVOKE_ASYNC(MB, /mob/living/simple_animal/bot/mulebot/.proc/RunOver, src) + INVOKE_ASYNC(MB, TYPE_PROC_REF(/mob/living/simple_animal/bot/mulebot/,RunOver), src) spreadFire(AM) 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 52aefea3410..1ca7b089da6 100644 --- a/code/modules/mob/living/carbon/human/species_types/golems.dm +++ b/code/modules/mob/living/carbon/human/species_types/golems.dm @@ -920,7 +920,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/carbon/monkey/monkey.dm b/code/modules/mob/living/carbon/monkey/monkey.dm index e3092d04c35..5b23e9a4f2c 100644 --- a/code/modules/mob/living/carbon/monkey/monkey.dm +++ b/code/modules/mob/living/carbon/monkey/monkey.dm @@ -173,4 +173,4 @@ if(prob(10)) var/obj/item/clothing/head/helmet/justice/escape/helmet = new(src) equip_to_slot_or_del(helmet,SLOT_HEAD) - INVOKE_ASYNC(helmet, /obj/item.proc/attack_self, src) // todo encapsulate toggle + INVOKE_ASYNC(helmet, TYPE_PROC_REF(/obj/item,attack_self), src) // todo encapsulate toggle diff --git a/code/modules/mob/living/emote.dm b/code/modules/mob/living/emote.dm index bc090bd95b3..14e2fd590e1 100644 --- a/code/modules/mob/living/emote.dm +++ b/code/modules/mob/living/emote.dm @@ -49,7 +49,7 @@ /datum/emote/living/chuckle/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 1, -1, 1, -1, 1 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 1, -1, 1, -1, 1 SECONDS) /datum/emote/living/chuckle/get_sound(mob/living/M) if(ishuman(M)) @@ -80,7 +80,7 @@ /datum/emote/living/cough/run_emote(mob/user, params) . = ..() // var/matrix/tf = matrix(user.transform) - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 2, -1, 1, -1, 1 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 2, -1, 1, -1, 1 SECONDS) /datum/emote/living/cough/can_run_emote(mob/user, status_check = TRUE , intentional) . = ..() @@ -209,7 +209,7 @@ H.CloseWings() else H.OpenWings() - addtimer(CALLBACK(H, open ? /mob/living/carbon/human/atom/.proc/OpenWings : /mob/living/carbon/human/atom/.proc/CloseWings), wing_time) + addtimer(CALLBACK(H, TYPE_PROC_REF(open ? /mob/living/carbon/human/atom/.proc/OpenWings : /mob/living/carbon/human/atom/,CloseWings)), wing_time) /datum/emote/living/flap/aflap key = "aflap" @@ -322,7 +322,7 @@ /datum/emote/living/giggle/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 1, -1, 1, -1, 0.5 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 1, -1, 1, -1, 0.5 SECONDS) /datum/emote/living/giggle/get_sound(mob/living/M) if(ishuman(M)) @@ -363,7 +363,7 @@ /datum/emote/living/jump/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, -1, 5, -4, 0, 0.8 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), -1, 5, -4, 0, 0.8 SECONDS) /datum/emote/living/kiss key = "kiss" @@ -390,7 +390,7 @@ /datum/emote/living/audible/laugh/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 2, -2, 2, -2, 1.5 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 2, -2, 2, -2, 1.5 SECONDS) /datum/emote/living/audible/laugh/get_sound(mob/living/user) . = ..() @@ -436,7 +436,7 @@ /datum/emote/living/nod/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_directional_tilt, 5, 0.5 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_directional_tilt), 5, 0.5 SECONDS) /datum/emote/living/point key = "point" @@ -488,7 +488,7 @@ /datum/emote/living/shake/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 1, -1, 1, -1, 1.2 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 1, -1, 1, -1, 1.2 SECONDS) /datum/emote/living/shiver key = "shiver" @@ -499,7 +499,7 @@ /datum/emote/living/shiver/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 1, -1, 1, -1, 1 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 1, -1, 1, -1, 1 SECONDS) /datum/emote/living/sigh key = "sigh" @@ -542,7 +542,7 @@ /datum/emote/living/shake/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 2, -2, 2, -2, 1.5 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 2, -2, 2, -2, 1.5 SECONDS) /datum/emote/living/sneeze/get_sound(mob/living/M) if(ishuman(M)) @@ -1043,7 +1043,7 @@ /datum/emote/aflap/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, -1, 5, -4, 0, 0.8 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), -1, 5, -4, 0, 0.8 SECONDS) /datum/emote/flaparms key = "flapa" @@ -1052,7 +1052,7 @@ /datum/emote/flapa/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, -1, 5, -4, 0, 0.8 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), -1, 5, -4, 0, 0.8 SECONDS) /datum/emote/aflaparms key = "aflapa" @@ -1061,7 +1061,7 @@ /datum/emote/aflapa/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, -1, 5, -4, 0, 0.8 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), -1, 5, -4, 0, 0.8 SECONDS) /datum/emote/wah key = "wah" @@ -1128,7 +1128,7 @@ /datum/emote/living/bwoing/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 2, -2, 2, -2, 0.6 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 2, -2, 2, -2, 0.6 SECONDS) /datum/emote/living/bwoing/skip key = "skip" @@ -1143,7 +1143,7 @@ /datum/emote/living/bounce/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 2, 0, 2, 0, 1.5 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 2, 0, 2, 0, 1.5 SECONDS) /datum/emote/plap key = "plap" @@ -1171,7 +1171,7 @@ /datum/emote/aie/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 0, 5, 0, 0, 0.8 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 0, 5, 0, 0, 0.8 SECONDS) /datum/emote/nightstalker @@ -1273,7 +1273,7 @@ /datum/emote/rattle/run_emote(mob/user, params) . = ..() - INVOKE_ASYNC(user, /atom/.proc/do_double_bounce, 1, -1, 1, -1, 1.5 SECONDS) + INVOKE_ASYNC(user, TYPE_PROC_REF(/atom/,do_double_bounce), 1, -1, 1, -1, 1.5 SECONDS) /datum/emote/snakehiss diff --git a/code/modules/mob/living/life.dm b/code/modules/mob/living/life.dm index d165a2d16be..63da3cc270d 100644 --- a/code/modules/mob/living/life.dm +++ b/code/modules/mob/living/life.dm @@ -94,7 +94,7 @@ handle_diginvis() //AI becomes unable to see mob if((movement_type & FLYING) && !(movement_type & FLOATING)) //TODO: Better floating - INVOKE_ASYNC(src, /atom/movable.proc/float, TRUE) + INVOKE_ASYNC(src, TYPE_PROC_REF(/atom/movable,float), TRUE) if(!loc) return FALSE diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index c917816cbc2..585edb07116 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -921,7 +921,7 @@ else throw_alert("gravity", /atom/movable/screen/alert/weightless) if(!override && !is_flying()) - INVOKE_ASYNC(src, /atom/movable.proc/float, !has_gravity) + INVOKE_ASYNC(src, TYPE_PROC_REF(/atom/movable,float), !has_gravity) /mob/living/float(on) if(throwing) diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index 1c1aa4aa480..b78dcfa3673 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -263,7 +263,7 @@ speech_bubble_recipients.Add(M.client) var/image/I = image('icons/mob/talk.dmi', src, "[bubble_type][say_test(message)]", FLY_LAYER) I.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA - INVOKE_ASYNC(GLOBAL_PROC, /.proc/flick_overlay, I, speech_bubble_recipients, 30) + INVOKE_ASYNC(GLOBAL_PROC, TYPE_PROC_REF(/,flick_overlay), I, speech_bubble_recipients, 30) /mob/proc/binarycheck() return FALSE diff --git a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm index f84801a7f14..7d9989a67b2 100644 --- a/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm +++ b/code/modules/mob/living/simple_animal/bot/SuperBeepsky.dm @@ -33,7 +33,7 @@ /mob/living/simple_animal/bot/secbot/grievous/Initialize() . = ..() weapon = new baton_type(src) - INVOKE_ASYNC(weapon, /obj/item.proc/attack_self, src) + INVOKE_ASYNC(weapon, TYPE_PROC_REF(/obj/item,attack_self), src) /mob/living/simple_animal/bot/secbot/grievous/Destroy() QDEL_NULL(weapon) @@ -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/cleanbot.dm b/code/modules/mob/living/simple_animal/bot/cleanbot.dm index 1fc982cbc05..f780642c40e 100644 --- a/code/modules/mob/living/simple_animal/bot/cleanbot.dm +++ b/code/modules/mob/living/simple_animal/bot/cleanbot.dm @@ -147,7 +147,7 @@ stolen_valor += C.job update_titles() - INVOKE_ASYNC(weapon, /obj/item/weapon/.proc/attack, C, src) + INVOKE_ASYNC(weapon, TYPE_PROC_REF(/obj/item/weapon/,attack), C, src) C.Knockdown(20) /mob/living/simple_animal/bot/cleanbot/attackby(obj/item/W, mob/user, params) diff --git a/code/modules/mob/living/simple_animal/bot/secbot.dm b/code/modules/mob/living/simple_animal/bot/secbot.dm index bb50dfad7ec..5b89877e41c 100644 --- a/code/modules/mob/living/simple_animal/bot/secbot.dm +++ b/code/modules/mob/living/simple_animal/bot/secbot.dm @@ -403,7 +403,7 @@ Auto Patrol: []"}, /mob/living/simple_animal/bot/secbot/proc/stun_attack(mob/living/carbon/C) var/judgement_criteria = judgement_criteria() 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)) if(stored_fashion) diff --git a/code/modules/mob/living/simple_animal/friendly/dog.dm b/code/modules/mob/living/simple_animal/friendly/dog.dm index 7a36fca5ea6..f9b2db8585a 100644 --- a/code/modules/mob/living/simple_animal/friendly/dog.dm +++ b/code/modules/mob/living/simple_animal/friendly/dog.dm @@ -254,7 +254,7 @@ /mob/living/simple_animal/pet/dog/corgi/proc/place_on_head(obj/item/item_to_add, mob/user) if(istype(item_to_add, /obj/item/grenade/plastic)) // last thing he ever wears, I guess - INVOKE_ASYNC(item_to_add, /obj/item.proc/afterattack, src,user,1) + INVOKE_ASYNC(item_to_add, TYPE_PROC_REF(/obj/item,afterattack), src,user,1) return if(inventory_head) diff --git a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm index ad84598aa3f..c079b0fea7a 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -103,7 +103,7 @@ . = ..() if(can_be_held) //icon/item state is defined in mob_holder/drone_worn_icon() - AddElement(/datum/element/mob_holder, null, 'icons/mob/clothing/head.dmi', 'icons/mob/inhands/clothing_righthand.dmi', 'icons/mob/inhands/clothing_lefthand.dmi', INV_SLOTBIT_HEAD, /datum/element/mob_holder.proc/drone_worn_icon) + AddElement(/datum/element/mob_holder, TYPE_PROC_REF(null, 'icons/mob/clothing/head.dmi', 'icons/mob/inhands/clothing_righthand.dmi', 'icons/mob/inhands/clothing_lefthand.dmi', INV_SLOTBIT_HEAD, /datum/element/mob_holder,drone_worn_icon)) /mob/living/simple_animal/drone/med_hud_set_health() var/image/holder = hud_list[DIAG_HUD] diff --git a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm index 686122db33c..b81898e8e3a 100644 --- a/code/modules/mob/living/simple_animal/hostile/giant_spider.dm +++ b/code/modules/mob/living/simple_animal/hostile/giant_spider.dm @@ -435,7 +435,7 @@ if(target_atom.anchored) return user.cocoon_target = target_atom - INVOKE_ASYNC(user, /mob/living/simple_animal/hostile/poison/giant_spider/nurse/.proc/cocoon) + INVOKE_ASYNC(user, TYPE_PROC_REF(/mob/living/simple_animal/hostile/poison/giant_spider/nurse/,cocoon)) remove_ranged_ability() return TRUE diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 7deed9cb554..f6f58cdf2cf 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -568,7 +568,7 @@ if(melee_windup_time) if(melee_windup_sound) playsound(src.loc, melee_windup_sound, 150, TRUE, distant_range = 4) //Play the windup sound effect to warn that an attack is coming. - INVOKE_ASYNC(src, /atom/.proc/do_windup, melee_windup_magnitude, melee_windup_time) //Bouncing bitches. + INVOKE_ASYNC(src, TYPE_PROC_REF(/atom/,do_windup), melee_windup_magnitude, melee_windup_time) //Bouncing bitches. if(do_after(user=src,delay=melee_windup_time,needhand=FALSE,progress=FALSE,required_mobility_flags=null,allow_movement=TRUE,stay_close=FALSE,public_progbar=FALSE)) my_target = get_target() //Switch targets if we did during our windup. if(my_target && Adjacent(my_target)) //If we waited, check if we died or something before finishing the attack windup. If so, don't attack. diff --git a/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm b/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm index 59f1f187040..2382a2fbc75 100644 --- a/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm +++ b/code/modules/mob/living/simple_animal/hostile/jungle/leaper.dm @@ -87,7 +87,7 @@ AddElement(/datum/element/connect_loc, loc_connections) - INVOKE_ASYNC(src, /atom/movable.proc/float, TRUE) + INVOKE_ASYNC(src, TYPE_PROC_REF(/atom/movable,float), TRUE) QDEL_IN(src, 100) /obj/structure/leaper_bubble/Destroy() 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 f3a8a78821a..1dcb5754647 100644 --- a/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm +++ b/code/modules/mob/living/simple_animal/hostile/mecha_pilot.dm @@ -233,13 +233,13 @@ Featuring: if(mecha.defense_action && mecha.defense_action.owner && !mecha.defense_mode) mecha.leg_overload_mode = 0 mecha.defense_action.Activate(TRUE) - addtimer(CALLBACK(mecha.defense_action, /datum/action/innate/mecha/mech_defense_mode.proc/Activate, FALSE), 100) //10 seconds of defense, then toggle off + addtimer(CALLBACK(mecha.defense_action, TYPE_PROC_REF(/datum/action/innate/mecha/mech_defense_mode,Activate), FALSE), 100) //10 seconds of defense, 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_defense_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_defense_mode,Activate), FALSE), 100) //10 seconds of speeeeed, then toggle off retreat_distance = 50 spawn(100) diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm index 2df6403303d..1a89bb78a7b 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/hierophant.dm @@ -693,7 +693,7 @@ Difficulty: Normal if(H.beacon == src) to_chat(user, span_notice("You start removing your hierophant beacon...")) H.timer = world.time + 51 - INVOKE_ASYNC(H, /obj/item/hierophant_club.proc/prepare_icon_update) + INVOKE_ASYNC(H, TYPE_PROC_REF(/obj/item/hierophant_club,prepare_icon_update)) if(do_after(user, 50, target = src)) playsound(src,'sound/magic/blind.ogg', 200, 1, -4) new /obj/effect/temp_visual/hierophant/telegraph/teleport(get_turf(src), user) @@ -703,7 +703,7 @@ Difficulty: Normal qdel(src) else H.timer = world.time - INVOKE_ASYNC(H, /obj/item/hierophant_club.proc/prepare_icon_update) + INVOKE_ASYNC(H, TYPE_PROC_REF(/obj/item/hierophant_club,prepare_icon_update)) else to_chat(user, span_hierophant_warning("You touch the beacon with the club, but nothing happens.")) else diff --git a/code/modules/paperwork/contract.dm b/code/modules/paperwork/contract.dm index 4fe08c09c73..4bc344dabc6 100644 --- a/code/modules/paperwork/contract.dm +++ b/code/modules/paperwork/contract.dm @@ -228,7 +228,7 @@ user.visible_message(span_notice("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 d9b3d28b84d..04f1d2f7bf1 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 diff --git a/code/modules/power/antimatter/control.dm b/code/modules/power/antimatter/control.dm index fc065873eee..ec3a9779dc6 100644 --- a/code/modules/power/antimatter/control.dm +++ b/code/modules/power/antimatter/control.dm @@ -245,7 +245,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 4b69d89a151..e41ed82cc0b 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -1073,7 +1073,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 TRUE @@ -1142,7 +1142,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/atom/movable/screen/alert/hackingapc/A A = malf.throw_alert("hackingapc", /atom/movable/screen/alert/hackingapc) diff --git a/code/modules/procedural_mapping/mapGenerator.dm b/code/modules/procedural_mapping/mapGenerator.dm index 323f74d0efe..ad81312d4e2 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 0763a66de8a..8a1de1ad71b 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -463,7 +463,7 @@ ATTACHMENTS else if(G.can_trigger_gun(user)) loop_counter++ var/stam_cost = G.getstamcost(user) - addtimer(CALLBACK(G, /obj/item/gun.proc/process_fire, target, user, TRUE, params, null, stam_cost), loop_counter) + addtimer(CALLBACK(G, TYPE_PROC_REF(/obj/item/gun,process_fire), target, user, TRUE, params, null, stam_cost), loop_counter) var/stam_cost = getstamcost(user) diff --git a/code/modules/projectiles/guns/misc/grenade_launcher.dm b/code/modules/projectiles/guns/misc/grenade_launcher.dm index 1771b71998c..4e4cdc643b7 100644 --- a/code/modules/projectiles/guns/misc/grenade_launcher.dm +++ b/code/modules/projectiles/guns/misc/grenade_launcher.dm @@ -44,4 +44,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/guns/misc/medbeam.dm b/code/modules/projectiles/guns/misc/medbeam.dm index 8457385a10e..dae511dac87 100644 --- a/code/modules/projectiles/guns/misc/medbeam.dm +++ b/code/modules/projectiles/guns/misc/medbeam.dm @@ -52,7 +52,7 @@ current_target = target active = TRUE current_beam = new(user,current_target,time=6000,beam_icon_state="medbeam",btype=/obj/effect/ebeam/medical) - INVOKE_ASYNC(current_beam, /datum/beam.proc/Start) + INVOKE_ASYNC(current_beam, TYPE_PROC_REF(/datum/beam,Start)) SSblackbox.record_feedback("tally", "gun_fired", 1, type) diff --git a/code/modules/projectiles/projectile/energy/stun.dm b/code/modules/projectiles/projectile/energy/stun.dm index 7143de07b23..efbc439350f 100644 --- a/code/modules/projectiles/projectile/energy/stun.dm +++ b/code/modules/projectiles/projectile/energy/stun.dm @@ -32,7 +32,7 @@ C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ), forced = "hulk") else if(tase_duration && (C.status_flags & CANKNOCKDOWN) && !HAS_TRAIT(C, TRAIT_STUNIMMUNE) && !HAS_TRAIT(C, TRAIT_TASED_RESISTANCE)) C.apply_status_effect(strong_tase? STATUS_EFFECT_TASED : STATUS_EFFECT_TASED_WEAK, 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 94f9f23a017..c7d9d695cb2 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/reagents/medicine_reagents.dm b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm index a58358809a8..806e120fccc 100644 --- a/code/modules/reagents/chemistry/reagents/medicine_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/medicine_reagents.dm @@ -1025,8 +1025,8 @@ M.visible_message(span_warning("[M]'s body starts convulsing!")) M.notify_ghost_cloning(source = M) M.do_jitter_animation(10) - addtimer(CALLBACK(M, /mob/living/carbon.proc/do_jitter_animation, 10), 40) //jitter immediately, then again after 4 and 8 seconds - addtimer(CALLBACK(M, /mob/living/carbon.proc/do_jitter_animation, 10), 80) + addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/living/carbon,do_jitter_animation), 10), 40) //jitter immediately, then again after 4 and 8 seconds + addtimer(CALLBACK(M, TYPE_PROC_REF(/mob/living/carbon,do_jitter_animation), 10), 80) spawn(100) //so the ghost has time to re-enter if(iscarbon(M)) diff --git a/code/modules/reagents/chemistry/recipes/slime_extracts.dm b/code/modules/reagents/chemistry/recipes/slime_extracts.dm index 959e6aed5e4..2ecc2eea4f5 100644 --- a/code/modules/reagents/chemistry/recipes/slime_extracts.dm +++ b/code/modules/reagents/chemistry/recipes/slime_extracts.dm @@ -655,7 +655,7 @@ S.visible_message(span_danger("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 ..() @@ -671,7 +671,7 @@ S.visible_message(span_danger("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/glass.dm b/code/modules/reagents/reagent_containers/glass.dm index 48b1a54ae40..1cc774daeb4 100644 --- a/code/modules/reagents/reagent_containers/glass.dm +++ b/code/modules/reagents/reagent_containers/glass.dm @@ -61,7 +61,7 @@ log_reagent("INGESTION: SELF: [key_name(user)] (loc [user.loc] at [AREACOORD(T)]) - [reagents.log_list()]") var/fraction = min(5/reagents.total_volume, 1) reagents.reaction(M, INGEST, fraction) - addtimer(CALLBACK(reagents, /datum/reagents.proc/trans_to, M, 5, null, null, null, self_fed? "self swallowed" : "fed by [user]"), 5) + addtimer(CALLBACK(reagents, TYPE_PROC_REF(/datum/reagents,trans_to), M, 5, null, null, null, self_fed? "self swallowed" : "fed by [user]"), 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/recycling/disposal/construction.dm b/code/modules/recycling/disposal/construction.dm index 60ea6e13bb8..7e57491d771 100644 --- a/code/modules/recycling/disposal/construction.dm +++ b/code/modules/recycling/disposal/construction.dm @@ -30,7 +30,7 @@ if(flip) var/datum/component/simple_rotation/rotcomp = GetComponent(/datum/component/simple_rotation) - INVOKE_ASYNC(CALLBACK(rotcomp, /datum/component/simple_rotation.proc/BaseRot, ROTATION_FLIP)) + INVOKE_ASYNC(CALLBACK(rotcomp, TYPE_PROC_REF(/datum/component/simple_rotation,BaseRot), ROTATION_FLIP)) update_icon() diff --git a/code/modules/research/nanites/nanite_programs/suppression.dm b/code/modules/research/nanites/nanite_programs/suppression.dm index 1a9f36ac3e9..1d39566c79a 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, span_warning("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 6d8a514adda..6f1a1b299c9 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -254,7 +254,7 @@ to_chat(user, span_warning("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, span_notice("You start glowing brighter.")) if(SLIME_ACTIVATE_MAJOR) diff --git a/code/modules/shuttle/on_move.dm b/code/modules/shuttle/on_move.dm index d163154e68f..82206819eec 100644 --- a/code/modules/shuttle/on_move.dm +++ b/code/modules/shuttle/on_move.dm @@ -181,7 +181,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/tongue.dm b/code/modules/surgery/organs/tongue.dm index e6cbed1335d..35c673407dd 100644 --- a/code/modules/surgery/organs/tongue.dm +++ b/code/modules/surgery/organs/tongue.dm @@ -113,7 +113,7 @@ if(say_mod && owner.dna?.species) owner.dna.species.say_mod = initial(owner.dna.species.say_mod) UnregisterSignal(owner, COMSIG_MOB_SAY,PROC_REF(handle_speech)) - //owner.RegisterSignal(owner, COMSIG_MOB_SAY, /mob/living/carbon/.proc/handle_tongueless_speech) + //owner.RegisterSignal(owner, TYPE_PROC_REF(COMSIG_MOB_SAY, /mob/living/carbon/,handle_tongueless_speech)) return ..() /obj/item/organ/tongue/could_speak_language(language) diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm index 4cdc5430aa6..4147019546d 100644 --- a/code/modules/surgery/organs/vocal_cords.dm +++ b/code/modules/surgery/organs/vocal_cords.dm @@ -494,7 +494,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 @@ -504,7 +504,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 @@ -512,7 +512,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 @@ -520,7 +520,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 @@ -528,7 +528,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++ else From 5f1facd8dd35fe62b7329378599aed6decf1e6c8 Mon Sep 17 00:00:00 2001 From: TalkingCactus Date: Sat, 28 Oct 2023 14:23:09 -0400 Subject: [PATCH 10/52] invalid switch switch statements need to be in order now --- code/datums/components/edible.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/datums/components/edible.dm b/code/datums/components/edible.dm index b959b072cf9..c983dbc4d30 100644 --- a/code/datums/components/edible.dm +++ b/code/datums/components/edible.dm @@ -156,7 +156,7 @@ Behavior that's still missing from this component that original food items had t eater.visible_message( span_notice("[eater] unwillingly [eatverb]s \the [parent]."), span_notice("You unwillingly [eatverb] \the [parent].")) - if((600 * (1 + eater.overeatduration / 1000)) to INFINITY) + if(650 to INFINITY) if(HAS_TRAIT(eater, TRAIT_VORACIOUS)) eater.visible_message( span_notice("[eater] gluttonously [eatverb]s \the [parent], cramming it down [eater.p_their()] throat!"), From f8ba77912b491b886c16020034794a271204f048 Mon Sep 17 00:00:00 2001 From: gremlingss Date: Fri, 26 Jan 2024 22:49:44 +0000 Subject: [PATCH 11/52] Updates all the .proc references --- code/controllers/subsystem/ticker.dm | 4 +- code/datums/beam.dm | 2 +- code/datums/brain_damage/phobia.dm | 2 +- code/datums/components/archaeology.dm | 2 +- code/datums/components/construction.dm | 2 +- code/datums/components/dejavu.dm | 8 ++-- code/datums/components/earprotection.dm | 2 +- code/datums/components/embedded.dm | 2 +- code/datums/components/knockoff.dm | 4 +- code/datums/components/phantomthief.dm | 2 +- code/datums/components/wearertargeting.dm | 2 +- code/datums/elements/debris.dm | 6 +-- code/datums/elements/dusts_on_leaving_area.dm | 2 +- code/datums/elements/mob_holder.dm | 6 +-- code/game/machinery/autolathe.dm | 8 ++-- code/game/objects/effects/particle_holder.dm | 4 +- .../circuitboards/machine_circuitboards.dm | 4 +- code/modules/balloon_alert/balloon_alert.dm | 2 +- code/modules/mob/living/carbon/emote.dm | 2 +- .../multichance_projectile_hit_behaviour.dm | 4 +- code/modules/surgery/organs/soda_organ.dm | 2 +- .../code/datums/components/autoplapper.dm | 4 +- .../container_item/container_item.dm | 2 +- .../code/datums/components/glory_kill.dm | 8 ++-- .../components/interaction_menu_granter.dm | 12 ++--- modular_sand/code/datums/components/riding.dm | 2 +- .../components/storage/concrete/dresser.dm | 4 +- .../code/datums/elements/holder_micro.dm | 6 +-- .../code/datums/elements/skirt_peeking.dm | 6 +-- modular_sand/code/datums/traits/neutral.dm | 6 +-- modular_sand/code/datums/wires/firealarm.dm | 2 +- .../game/objects/items/borg_shapeshifter.dm | 22 ++++----- .../code/game/objects/items/fleshlight.dm | 4 +- .../modules/clothing/spacesuits/chronosuit.dm | 8 ++-- .../modules/clothing/spacesuits/hardsuit.dm | 4 +- .../mining/equipment/kinetic_crusher.dm | 6 +-- .../mining/lavaland/necropolis_chests.dm | 8 ++-- modular_sand/code/modules/mob/emote.dm | 2 +- .../mob/living/silicon/robot/robot_modules.dm | 2 +- .../hostile/megafauna/bubblegum.dm | 10 ++-- .../hostile/megafauna/glaurung.dm | 2 +- .../hostile/megafauna/rogueprocess.dm | 46 +++++++++---------- .../hostile/mining_mobs/elites/candy.dm | 4 +- .../hostile/mining_mobs/elites/drakeling.dm | 4 +- modular_sand/code/modules/resize/resizing.dm | 6 +-- .../modules/ruins/lavalandruin_code/doom.dm | 4 +- .../modules/ruins/lavalandruin_code/misc.dm | 2 +- .../chastity/chastity_belt.dm | 2 +- .../chastity/chastity_cage.dm | 4 +- .../chastity/metal_chastity_cage.dm | 2 +- .../genital_equipment/genital_equipment.dm | 8 ++-- .../game/objects/items/lewd_items/leash.dm | 24 +++++----- .../game/objects/items/lewd_items/rope.dm | 6 +-- .../game/objects/items/lewd_items/vibrator.dm | 4 +- 54 files changed, 154 insertions(+), 154 deletions(-) diff --git a/code/controllers/subsystem/ticker.dm b/code/controllers/subsystem/ticker.dm index 6805d868ddf..ac8521e09c1 100755 --- a/code/controllers/subsystem/ticker.dm +++ b/code/controllers/subsystem/ticker.dm @@ -202,7 +202,7 @@ SUBSYSTEM_DEF(ticker) for(var/client/C in SSvote.voting) C << browse(null, "window=vote;can_close=0") SSvote.reset() - addtimer(CALLBACK(src, .proc/send_midround_tip), 1 MINUTES)//Send out first tip + addtimer(CALLBACK(src, PROC_REF(send_midround_tip)), 1 MINUTES)//Send out first tip current_state = GAME_STATE_SETTING_UP Master.SetRunLevel(RUNLEVEL_SETUP) if(start_immediately) @@ -458,7 +458,7 @@ SUBSYSTEM_DEF(ticker) to_chat(world, "Tip: [html_encode(m)]") // Queue up the next tip even if it didn't send one so long as it was an organic tip that wasn't sent by an admin. if(isnull(override)) - addtimer(CALLBACK(src, .proc/send_midround_tip), midround_tip_interval*(rand(5,15)*0.1))//Random tip interval of +- 50% the average + addtimer(CALLBACK(src,PROC_REF(send_midround_tip)), midround_tip_interval*(rand(5,15)*0.1))//Random tip interval of +- 50% the average /datum/controller/subsystem/ticker/proc/check_queue() var/hpc = CONFIG_GET(number/hard_popcap) diff --git a/code/datums/beam.dm b/code/datums/beam.dm index 9fbe13abf79..3b3bbd33849 100644 --- a/code/datums/beam.dm +++ b/code/datums/beam.dm @@ -30,7 +30,7 @@ icon_state = beam_icon_state beam_type = btype if(time < INFINITY) - addtimer(CALLBACK(src,.proc/End), time) + addtimer(CALLBACK(src,PROC_REF(End)), time) /datum/beam/proc/Start() Draw() diff --git a/code/datums/brain_damage/phobia.dm b/code/datums/brain_damage/phobia.dm index a3bd2ca600f..42cb8f8e0e7 100644 --- a/code/datums/brain_damage/phobia.dm +++ b/code/datums/brain_damage/phobia.dm @@ -126,7 +126,7 @@ owner.stuttering += 5 ADD_TRAIT(owner, TRAIT_PHOBIC, TRAIT_GENERIC) // Generic phobia trait for applying general non-mood debuffs to people if(!timer_active) - addtimer(CALLBACK(src, .proc/RemoveTrait), 3 MINUTES) + addtimer(CALLBACK(src, PROC_REF(RemoveTrait)), 3 MINUTES) timer_active = 1 SEND_SIGNAL(owner, COMSIG_ADD_MOOD_EVENT, "phobia", /datum/mood_event/phobia) //Always apply the phobia mood debuff diff --git a/code/datums/components/archaeology.dm b/code/datums/components/archaeology.dm index bc53ab2199a..8df4f5d640b 100644 --- a/code/datums/components/archaeology.dm +++ b/code/datums/components/archaeology.dm @@ -15,7 +15,7 @@ archdrops[i][ARCH_PROB] = 100 stack_trace("ARCHAEOLOGY WARNING: [parent] contained a null probability value in [i].") callback = _callback - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,.proc/Dig) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, PROC_REF(Dig)) RegisterSignal(parent, COMSIG_ATOM_EX_ACT,PROC_REF(BombDig)) RegisterSignal(parent, COMSIG_ATOM_SING_PULL,PROC_REF(SingDig)) diff --git a/code/datums/components/construction.dm b/code/datums/components/construction.dm index 5d56f55565f..cd9d2846499 100644 --- a/code/datums/components/construction.dm +++ b/code/datums/components/construction.dm @@ -16,7 +16,7 @@ return COMPONENT_INCOMPATIBLE RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examine)) - RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,.proc/action) + RegisterSignal(parent, COMSIG_PARENT_ATTACKBY, PROC_REF(action)) update_parent(index) /datum/component/construction/proc/examine(datum/source, mob/user, list/examine_list) diff --git a/code/datums/components/dejavu.dm b/code/datums/components/dejavu.dm index 19e41148d3b..b2a2cddf9c9 100644 --- a/code/datums/components/dejavu.dm +++ b/code/datums/components/dejavu.dm @@ -42,22 +42,22 @@ tox_loss = L.getToxLoss() oxy_loss = L.getOxyLoss() brain_loss = L.getOrganLoss(ORGAN_SLOT_BRAIN) - rewind_type = .proc/rewind_living + rewind_type = PROC_REF(rewind_living) if(iscarbon(parent)) var/mob/living/carbon/C = parent saved_bodyparts = C.save_bodyparts() - rewind_type = .proc/rewind_carbon + rewind_type = PROC_REF(rewind_carbon) else if(isanimal(parent)) var/mob/living/simple_animal/M = parent brute_loss = M.bruteloss - rewind_type = .proc/rewind_animal + rewind_type = PROC_REF(rewind_animal) else if(isobj(parent)) var/obj/O = parent integrity = O.obj_integrity - rewind_type = .proc/rewind_obj + rewind_type = PROC_REF(rewind_obj) addtimer(CALLBACK(src, rewind_type), rewind_interval) diff --git a/code/datums/components/earprotection.dm b/code/datums/components/earprotection.dm index 9256c4310a7..6439e49b831 100644 --- a/code/datums/components/earprotection.dm +++ b/code/datums/components/earprotection.dm @@ -1,7 +1,7 @@ /datum/component/wearertargeting/earprotection signals = list(COMSIG_CARBON_SOUNDBANG) mobtype = /mob/living/carbon - proctype = .proc/reducebang + proctype = PROC_REF(reducebang) /datum/component/wearertargeting/earprotection/Initialize(_valid_slots) . = ..() diff --git a/code/datums/components/embedded.dm b/code/datums/components/embedded.dm index 4d10d6250df..fcc30b70fbf 100644 --- a/code/datums/components/embedded.dm +++ b/code/datums/components/embedded.dm @@ -326,7 +326,7 @@ var/matrix/M = matrix() M.Translate(pixelX, pixelY) overlay.transform = M - RegisterSignal(hit,COMSIG_ATOM_UPDATE_OVERLAYS,.proc/apply_overlay) + RegisterSignal(hit,COMSIG_ATOM_UPDATE_OVERLAYS, PROC_REF(apply_overlay)) hit.update_icon() if(harmful) diff --git a/code/datums/components/knockoff.dm b/code/datums/components/knockoff.dm index 61df51a8ff5..aa45473491b 100644 --- a/code/datums/components/knockoff.dm +++ b/code/datums/components/knockoff.dm @@ -7,8 +7,8 @@ /datum/component/knockoff/Initialize(knockoff_chance,zone_override,slots_knockoffable) if(!isitem(parent)) return COMPONENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_ITEM_EQUIPPED,.proc/OnEquipped) - RegisterSignal(parent, COMSIG_ITEM_DROPPED,.proc/OnDropped) + RegisterSignal(parent, COMSIG_ITEM_EQUIPPED, PROC_REF(OnEquipped)) + RegisterSignal(parent, COMSIG_ITEM_DROPPED, PROC_REF(OnDropped)) src.knockoff_chance = knockoff_chance diff --git a/code/datums/components/phantomthief.dm b/code/datums/components/phantomthief.dm index 6b7e7221c35..767d877151c 100644 --- a/code/datums/components/phantomthief.dm +++ b/code/datums/components/phantomthief.dm @@ -3,7 +3,7 @@ /datum/component/wearertargeting/phantomthief dupe_mode = COMPONENT_DUPE_ALLOWED signals = list(COMSIG_LIVING_COMBAT_ENABLED, COMSIG_LIVING_COMBAT_DISABLED) - proctype = .proc/handlefilterstuff + proctype = PROC_REF(handlefilterstuff) var/filter_x var/filter_y var/filter_size diff --git a/code/datums/components/wearertargeting.dm b/code/datums/components/wearertargeting.dm index 3361116d175..1b37dbde200 100644 --- a/code/datums/components/wearertargeting.dm +++ b/code/datums/components/wearertargeting.dm @@ -3,7 +3,7 @@ /datum/component/wearertargeting var/list/valid_slots = list() var/list/signals = list() - var/proctype = .proc/pass + var/proctype = PROC_REF(pass) var/mobtype = /mob/living /datum/component/wearertargeting/Initialize() diff --git a/code/datums/elements/debris.dm b/code/datums/elements/debris.dm index 993dc342562..29f89317b17 100644 --- a/code/datums/elements/debris.dm +++ b/code/datums/elements/debris.dm @@ -46,7 +46,7 @@ debris_velocity = _debris_velocity debris_amount = _debris_amount debris_scale = _debris_scale - RegisterSignal(target, COMSIG_ATOM_BULLET_ACT,.proc/register_for_impact) + RegisterSignal(target, COMSIG_ATOM_BULLET_ACT, PROC_REF(register_for_impact)) /datum/element/debris/Detach(datum/source, force) . = ..() @@ -55,7 +55,7 @@ /datum/element/debris/proc/register_for_impact(datum/source, what_should_be_a_projectile) // WHY DOES THIS NOT FUCKING WORK, WHY CAN I NOT JUST FUCKING TELL THIS WHAT THE VARIABLE TYPE IS HERE SIGNAL_HANDLER var/obj/item/projectile/proj = what_should_be_a_projectile - INVOKE_ASYNC(src, .proc/on_impact, source, proj) + INVOKE_ASYNC(src, PROC_REF(on_impact), source, proj) /datum/element/debris/proc/on_impact(datum/source, obj/item/projectile/P) var/angle = round(Get_Angle(P.starting, source), 1) @@ -79,7 +79,7 @@ debris_visuals.particles.spawning = debris_amount debris_visuals.particles.scale = debris_scale smoke_visuals.layer = ABOVE_OBJ_LAYER + 0.01 - addtimer(CALLBACK(src, .proc/remove_ping, src, smoke_visuals, debris_visuals), 0.7 SECONDS) + addtimer(CALLBACK(src, PROC_REF(remove_ping), src, smoke_visuals, debris_visuals), 0.7 SECONDS) /datum/element/debris/proc/remove_ping(hit, obj/effect/abstract/particle_holder/smoke_visuals, obj/effect/abstract/particle_holder/debris_visuals) QDEL_NULL(smoke_visuals) diff --git a/code/datums/elements/dusts_on_leaving_area.dm b/code/datums/elements/dusts_on_leaving_area.dm index 7b1807a15c4..dd22542bfed 100644 --- a/code/datums/elements/dusts_on_leaving_area.dm +++ b/code/datums/elements/dusts_on_leaving_area.dm @@ -8,7 +8,7 @@ if(!ismob(target)) return ELEMENT_INCOMPATIBLE area_types = types - RegisterSignal(target,COMSIG_ENTER_AREA,.proc/check_dust) + RegisterSignal(target,COMSIG_ENTER_AREA, PROC_REF(check_dust)) /datum/element/dusts_on_leaving_area/Detach(mob/M) . = ..() diff --git a/code/datums/elements/mob_holder.dm b/code/datums/elements/mob_holder.dm index 7de84ad1096..64d7f349b58 100644 --- a/code/datums/elements/mob_holder.dm +++ b/code/datums/elements/mob_holder.dm @@ -185,11 +185,11 @@ if(!istype(grabber)) return carrier = WEAKREF(grabber) - RegisterSignal(grabber, COMSIG_MOB_APPLY_DAMAGE, .proc/pass_damage) // OUR APC IS UNDER ATTACK - RegisterSignal(grabber, COMSIG_MOB_DEATH, .proc/release) // Oh no im dead + RegisterSignal(grabber, COMSIG_MOB_APPLY_DAMAGE, PROC_REF(pass_damage)) // OUR APC IS UNDER ATTACK + RegisterSignal(grabber, COMSIG_MOB_DEATH, PROC_REF(release)) // Oh no im dead if(!held_mob) return - RegisterSignal(held_mob, COMSIG_MOB_DEATH, .proc/release) // Oh no im dead 2 + RegisterSignal(held_mob, COMSIG_MOB_DEATH, PROC_REF(release)) // Oh no im dead 2 /obj/item/clothing/head/mob_holder/dropped(mob/user) . = ..() diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 9b05344608d..734cb0da0a0 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -474,7 +474,7 @@ GLOBAL_VAR_INIT(lathe_reports_done, 0) // to_chat(user, span_warning("You can't load \the [gunammo] into \the [src]!")) // return FALSE // screw energy guns /// if we're here, we loaded something, so lets queue up another cycle - addtimer(CALLBACK(src, .proc/gun_loop, user, gunammo), 0.1 SECONDS) + addtimer(CALLBACK(src,PROC_REF(gun_loop), user, gunammo), 0.1 SECONDS) return TRUE /obj/machinery/autolathe/proc/load_from_bag(mob/user, obj/item/storage/bag/casings/cbag) // BIG BAG, BIG BAG, BIGABIGABIGBAG @@ -606,14 +606,14 @@ GLOBAL_VAR_INIT(lathe_reports_done, 0) report_card.inserted_something(item) if(report_timer) deltimer(report_timer) - report_timer = addtimer(CALLBACK(src, .proc/print_record), 30 SECONDS, TIMER_STOPPABLE) // save in 4 seconds + report_timer = addtimer(CALLBACK(src,PROC_REF(print_record)), 30 SECONDS, TIMER_STOPPABLE) // save in 4 seconds if(!istype(big_report_card)) big_report_card = new() big_report_card.inserted_something(item) if(big_report_timer) deltimer(big_report_timer) - big_report_timer = addtimer(CALLBACK(src, .proc/print_big_record), 15 MINUTES, TIMER_STOPPABLE) // save in 4 seconds + big_report_timer = addtimer(CALLBACK(src,PROC_REF(print_big_record)), 15 MINUTES, TIMER_STOPPABLE) // save in 4 seconds /obj/machinery/autolathe/proc/print_record() if(!istype(report_card, /datum/autolathe_loop_returns)) @@ -1052,7 +1052,7 @@ GLOBAL_VAR_INIT(lathe_reports_done, 0) icon_state = icon_state_base wooded = FALSE framed = FALSE - RegisterSignal(T, list(COMSIG_OBJ_DECONSTRUCT, COMSIG_OBJ_BREAK, COMSIG_PARENT_PREQDELETED), .proc/self_destruct) + RegisterSignal(T, list(COMSIG_OBJ_DECONSTRUCT, COMSIG_OBJ_BREAK, COMSIG_PARENT_PREQDELETED),PROC_REF(self_destruct)) /obj/machinery/autolathe/ammo/improvised/proc/self_destruct(disassembled) var/obj/structure/table/T = GET_WEAKREF(mytable) diff --git a/code/game/objects/effects/particle_holder.dm b/code/game/objects/effects/particle_holder.dm index 010688b70c2..43a5d83bec7 100644 --- a/code/game/objects/effects/particle_holder.dm +++ b/code/game/objects/effects/particle_holder.dm @@ -19,8 +19,8 @@ stack_trace("particle holder was created with no loc!") return INITIALIZE_HINT_QDEL if(ismovable(loc)) - RegisterSignal(loc, COMSIG_MOVABLE_MOVED, .proc/on_move) - RegisterSignal(loc, COMSIG_PARENT_QDELETING, .proc/on_qdel) + RegisterSignal(loc, COMSIG_MOVABLE_MOVED,PROC_REF(on_move)) + RegisterSignal(loc, COMSIG_PARENT_QDELETING,PROC_REF(on_qdel)) weak_attached = WEAKREF(loc) particles = new particle_path update_visual_contents(loc) diff --git a/code/game/objects/items/circuitboards/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machine_circuitboards.dm index a8737e34dcb..51ff1fbd8bb 100644 --- a/code/game/objects/items/circuitboards/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machine_circuitboards.dm @@ -1217,7 +1217,7 @@ /obj/item/circuitboard/machine/autolathe/ammo/improvised/ComponentInitialize() . = ..() - RegisterSignal(src, COMSIG_TABLE_CLICKED_WITH_ITEM, .proc/apply_to_table) + RegisterSignal(src, COMSIG_TABLE_CLICKED_WITH_ITEM,PROC_REF(apply_to_table)) /obj/item/circuitboard/machine/autolathe/ammo/improvised/examine(mob/user) . = ..() @@ -1255,7 +1255,7 @@ return if(!user.Adjacent(T)) return - INVOKE_ASYNC(src, .proc/actually_apply_to_table, T, user, params) + INVOKE_ASYNC(src,PROC_REF(actually_apply_to_table), T, user, params) return TABLE_NO_PLACE /obj/item/circuitboard/machine/autolathe/ammo/improvised/proc/actually_apply_to_table(obj/structure/table/T, mob/user, params) diff --git a/code/modules/balloon_alert/balloon_alert.dm b/code/modules/balloon_alert/balloon_alert.dm index c068d08d56c..461ec9d7d6c 100644 --- a/code/modules/balloon_alert/balloon_alert.dm +++ b/code/modules/balloon_alert/balloon_alert.dm @@ -45,7 +45,7 @@ easing = CUBIC_EASING | EASE_IN, ) - addtimer(CALLBACK(GLOBAL_PROC, .proc/remove_image_from_client, balloon_alert, viewer_client), BALLOON_TEXT_TOTAL_LIFETIME) + addtimer(CALLBACK(GLOBAL_PROC_REF(remove_image_from_client), balloon_alert, viewer_client), BALLOON_TEXT_TOTAL_LIFETIME) #undef BALLOON_TEXT_FADE_TIME #undef BALLOON_TEXT_FULLY_VISIBLE_TIME diff --git a/code/modules/mob/living/carbon/emote.dm b/code/modules/mob/living/carbon/emote.dm index 407f9030e02..d8fd24cfd78 100644 --- a/code/modules/mob/living/carbon/emote.dm +++ b/code/modules/mob/living/carbon/emote.dm @@ -565,7 +565,7 @@ hasPickedUp = TRUE damageMult = snowball.throwforce if(!timerEnabled) - addtimer(CALLBACK(src, .proc/reset_damage), 2.5 SECONDS) + addtimer(CALLBACK(src,PROC_REF(reset_damage)), 2.5 SECONDS) timerEnabled = TRUE COOLDOWN_START(src, snowball_cooldown, 2.5 SECONDS) to_chat(user, span_notice("You pack together a nice round snowball!")) diff --git a/code/modules/projectiles/multichance_projectile_hit_behaviour.dm b/code/modules/projectiles/multichance_projectile_hit_behaviour.dm index 9b532899ca4..59c96a4c55d 100644 --- a/code/modules/projectiles/multichance_projectile_hit_behaviour.dm +++ b/code/modules/projectiles/multichance_projectile_hit_behaviour.dm @@ -63,7 +63,7 @@ if(prob(PROB_ARMS_HIT+firer_crit_shot_add)) if(!T.mcphb_arms_hit) to_chat(firer, span_green("The [P] hits [T] on their arm, making it jitter and forcing it to move inconsistently!")) - INVOKE_ASYNC(T, /mob.proc/emote, "me", EMOTE_VISIBLE, "'s arms jitter in pain!") + INVOKE_ASYNC(T, TYPE_PROC_REF(/mob,emote), "me", EMOTE_VISIBLE, "'s arms jitter in pain!") T.mcphb_arms_hit = TRUE //arms got hit, so for a while don't do damage T.melee_damage_lower *= TRGT_DEBUFF_MULT_DAM_ARMS_HIT T.melee_damage_upper *= TRGT_DEBUFF_MULT_DAM_ARMS_HIT @@ -104,7 +104,7 @@ if(prob(PROB_LEGS_HIT+firer_crit_shot_add)) if(!T.mcphb_legs_hit) to_chat(firer, span_green("The [P] hits [T] on their legs, forcing them to trudge along!")) - INVOKE_ASYNC(T, /mob.proc/emote, "me", EMOTE_VISIBLE, "'s legs jitter in pain!") + INVOKE_ASYNC(T, TYPE_PROC_REF(/mob,emote), "me", EMOTE_VISIBLE, "'s legs jitter in pain!") T.mcphb_legs_hit = TRUE T.move_to_delay *= SPEED_MULT_LEGS_HIT diff --git a/code/modules/surgery/organs/soda_organ.dm b/code/modules/surgery/organs/soda_organ.dm index 1de913958f0..3ecb18bea04 100644 --- a/code/modules/surgery/organs/soda_organ.dm +++ b/code/modules/surgery/organs/soda_organ.dm @@ -91,7 +91,7 @@ /obj/item/organ/sodie_organ/Insert(mob/living/carbon/M, special = FALSE, drop_if_replaced = TRUE) . = ..() - RegisterSignal(M, COMSIG_CARBON_REAGENT_POST_LIFE, .proc/bank_sauce) + RegisterSignal(M, COMSIG_CARBON_REAGENT_POST_LIFE,PROC_REF(bank_sauce)) /obj/item/organ/sodie_organ/Remove(special = FALSE) UnregisterSignal(owner, COMSIG_CARBON_REAGENT_POST_LIFE) diff --git a/modular_sand/code/datums/components/autoplapper.dm b/modular_sand/code/datums/components/autoplapper.dm index 989a514138d..d099bd51a75 100644 --- a/modular_sand/code/datums/components/autoplapper.dm +++ b/modular_sand/code/datums/components/autoplapper.dm @@ -73,8 +73,8 @@ else to_chat(pLapper, span_notice("First action recorded! Perform it again to start looping that action!")) plap_listening = TRUE - RegisterSignal(pLapper, COMSIG_SPLURT_INTERACTION_PITCHED, .proc/check_finalized) // quietly wait for anotehr plap of our kind - plap_ignore_timer = addtimer(CALLBACK(src, .proc/give_up), SSinteractions.max_autoplap_interval, TIMER_CLIENT_TIME | TIMER_STOPPABLE) + RegisterSignal(pLapper, COMSIG_SPLURT_INTERACTION_PITCHED,PROC_REF(check_finalized)) // quietly wait for anotehr plap of our kind + plap_ignore_timer = addtimer(CALLBACK(src,PROC_REF(give_up)), SSinteractions.max_autoplap_interval, TIMER_CLIENT_TIME | TIMER_STOPPABLE) SEND_SIGNAL(pLapper, COMSIG_SPLURT_ADD_AUTOPLAPPER, src) /datum/autoplapper/Destroy(force, ...) diff --git a/modular_sand/code/datums/components/container_item/container_item.dm b/modular_sand/code/datums/components/container_item/container_item.dm index fda012cb0ea..872a710e202 100644 --- a/modular_sand/code/datums/components/container_item/container_item.dm +++ b/modular_sand/code/datums/components/container_item/container_item.dm @@ -3,7 +3,7 @@ /datum/component/container_item/Initialize() . = ..() - RegisterSignal(parent, COMSIG_CONTAINER_TRY_ATTACH, .proc/try_attach) + RegisterSignal(parent, COMSIG_CONTAINER_TRY_ATTACH,PROC_REF(try_attach)) /// Called when parent is added to the container. /datum/component/container_item/proc/try_attach(datum/source, atom/container, mob/user) diff --git a/modular_sand/code/datums/components/glory_kill.dm b/modular_sand/code/datums/components/glory_kill.dm index 94267c23c08..aee9f5e9340 100644 --- a/modular_sand/code/datums/components/glory_kill.dm +++ b/modular_sand/code/datums/components/glory_kill.dm @@ -41,10 +41,10 @@ /datum/component/glory_kill/RegisterWithParent() . = ..() - RegisterSignal(parent, COMSIG_CLICK_ALT, .proc/glory_kill) - RegisterSignal(parent, COMSIG_MOB_APPLY_DAMAGE, .proc/health_modified) - RegisterSignal(parent, COMSIG_MOB_DEATH, .proc/on_death) - RegisterSignal(parent, COMSIG_PARENT_EXAMINE, .proc/examined) + RegisterSignal(parent, COMSIG_CLICK_ALT,PROC_REF(glory_kill)) + RegisterSignal(parent, COMSIG_MOB_APPLY_DAMAGE,PROC_REF(health_modified)) + RegisterSignal(parent, COMSIG_MOB_DEATH,PROC_REF(on_death)) + RegisterSignal(parent, COMSIG_PARENT_EXAMINE,PROC_REF(examined)) /datum/component/glory_kill/UnregisterFromParent() UnregisterSignal(parent, list(COMSIG_CLICK_ALT, COMSIG_MOB_APPLY_DAMAGE, COMSIG_MOB_DEATH, COMSIG_MOB_EXAMINATE)) diff --git a/modular_sand/code/datums/components/interaction_menu_granter.dm b/modular_sand/code/datums/components/interaction_menu_granter.dm index 0b49b2d91d3..34e4e214e19 100644 --- a/modular_sand/code/datums/components/interaction_menu_granter.dm +++ b/modular_sand/code/datums/components/interaction_menu_granter.dm @@ -69,11 +69,11 @@ /datum/component/interaction_menu_granter/RegisterWithParent() . = ..() - RegisterSignal(parent, COMSIG_CLICK_CTRL_SHIFT, .proc/open_menu) - RegisterSignal(parent, COMSIG_SPLURT_REMOVE_AUTOPLAPPER, .proc/kill_autoplapper) - RegisterSignal(parent, COMSIG_SPLURT_ADD_AUTOPLAPPER, .proc/confirm_autoplap) - RegisterSignal(parent, COMSIG_SPLURT_SOMEONE_CUMMED, .proc/stop_all_autoplappers) - RegisterSignal(parent, COMSIG_SPLURT_I_CAME, .proc/stop_all_autoplappers) + RegisterSignal(parent, COMSIG_CLICK_CTRL_SHIFT,PROC_REF(open_menu)) + RegisterSignal(parent, COMSIG_SPLURT_REMOVE_AUTOPLAPPER,PROC_REF(kill_autoplapper)) + RegisterSignal(parent, COMSIG_SPLURT_ADD_AUTOPLAPPER,PROC_REF(confirm_autoplap)) + RegisterSignal(parent, COMSIG_SPLURT_SOMEONE_CUMMED,PROC_REF(stop_all_autoplappers)) + RegisterSignal(parent, COMSIG_SPLURT_I_CAME,PROC_REF(stop_all_autoplappers)) /datum/component/interaction_menu_granter/Destroy(force, ...) weaktarget = null @@ -457,7 +457,7 @@ /datum/component/interaction_menu_granter/proc/queue_save() if(savetimer) deltimer(savetimer) - savetimer = addtimer(CALLBACK(src, .proc/save_prefs), 4 SECONDS, TIMER_STOPPABLE) // save in 4 seconds + savetimer = addtimer(CALLBACK(src,PROC_REF(save_prefs)), 4 SECONDS, TIMER_STOPPABLE) // save in 4 seconds /datum/component/interaction_menu_granter/proc/save_prefs() var/mob/living/self = parent diff --git a/modular_sand/code/datums/components/riding.dm b/modular_sand/code/datums/components/riding.dm index 9c486d38f48..00d088c0fdf 100644 --- a/modular_sand/code/datums/components/riding.dm +++ b/modular_sand/code/datums/components/riding.dm @@ -1,6 +1,6 @@ /datum/component/riding/human/Initialize() . = ..() - RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE, .proc/update_dir) + RegisterSignal(parent, COMSIG_ATOM_DIR_CHANGE,PROC_REF(update_dir)) /datum/component/riding/human/proc/update_dir(mob/source, dir, newdir) var/mob/living/carbon/human/H = source diff --git a/modular_sand/code/datums/components/storage/concrete/dresser.dm b/modular_sand/code/datums/components/storage/concrete/dresser.dm index 03233081ef2..a3dc1bbdb2c 100644 --- a/modular_sand/code/datums/components/storage/concrete/dresser.dm +++ b/modular_sand/code/datums/components/storage/concrete/dresser.dm @@ -9,8 +9,8 @@ /datum/component/storage/concrete/dresser/Initialize() if(..()) return ELEMENT_INCOMPATIBLE - RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND, .proc/signal_show_attempt, TRUE) - RegisterSignal(parent, COMSIG_ATOM_ATTACK_PAW, .proc/signal_show_attempt, TRUE) + RegisterSignal(parent, COMSIG_ATOM_ATTACK_HAND,PROC_REF(signal_show_attempt), TRUE) + RegisterSignal(parent, COMSIG_ATOM_ATTACK_PAW,PROC_REF(signal_show_attempt), TRUE) /datum/component/storage/concrete/dresser/user_show_to_mob(mob/M, force, trigger_on_found) . = ..() diff --git a/modular_sand/code/datums/elements/holder_micro.dm b/modular_sand/code/datums/elements/holder_micro.dm index c395706a937..536ee82a843 100644 --- a/modular_sand/code/datums/elements/holder_micro.dm +++ b/modular_sand/code/datums/elements/holder_micro.dm @@ -3,9 +3,9 @@ /datum/element/mob_holder/micro/Attach(datum/target, worn_state, alt_worn, right_hand, left_hand, inv_slots = NONE, proctype, escape_on_find) . = ..() - RegisterSignal(target, COMSIG_CLICK_ALT, .proc/mob_try_pickup_micro, TRUE) - RegisterSignal(target, COMSIG_MICRO_PICKUP_FEET, .proc/mob_pickup_micro_feet) - RegisterSignal(target, COMSIG_MOB_RESIZED, .proc/on_resize) + RegisterSignal(target, COMSIG_CLICK_ALT,PROC_REF(mob_try_pickup_micro), TRUE) + RegisterSignal(target, COMSIG_MICRO_PICKUP_FEET,PROC_REF(mob_pickup_micro_feet)) + RegisterSignal(target, COMSIG_MOB_RESIZED,PROC_REF(on_resize)) /datum/element/mob_holder/micro/Detach(datum/source, force) . = ..() diff --git a/modular_sand/code/datums/elements/skirt_peeking.dm b/modular_sand/code/datums/elements/skirt_peeking.dm index 426900d7911..ccfba68bbbd 100644 --- a/modular_sand/code/datums/elements/skirt_peeking.dm +++ b/modular_sand/code/datums/elements/skirt_peeking.dm @@ -6,8 +6,8 @@ if(!ishuman(peeked)) return ELEMENT_INCOMPATIBLE - RegisterSignal(peeked, COMSIG_PARENT_EXAMINE, .proc/on_examine) - RegisterSignal(peeked, COMSIG_PARENT_EXAMINE_MORE, .proc/on_closer_look) + RegisterSignal(peeked, COMSIG_PARENT_EXAMINE,PROC_REF(on_examine)) + RegisterSignal(peeked, COMSIG_PARENT_EXAMINE_MORE,PROC_REF(on_closer_look)) /datum/element/skirt_peeking/proc/can_skirt_peek(mob/living/carbon/human/peeked, mob/peeker) var/mob/living/living_peeker = peeker @@ -105,7 +105,7 @@ examine_content += span_purple(string) // Let's see if we caught them, addtimer so it appears after the peek. - addtimer(CALLBACK(src, .proc/try_notice, peeked, peeker), 1) + addtimer(CALLBACK(src,PROC_REF(try_notice), peeked, peeker), 1) /// Alright, they've peeked us and everything, did we notice it though? /datum/element/skirt_peeking/proc/try_notice(mob/living/carbon/human/peeked, mob/living/peeker) diff --git a/modular_sand/code/datums/traits/neutral.dm b/modular_sand/code/datums/traits/neutral.dm index ea574d896b9..e60c83684d6 100644 --- a/modular_sand/code/datums/traits/neutral.dm +++ b/modular_sand/code/datums/traits/neutral.dm @@ -48,11 +48,11 @@ /datum/quirk/estrous_active/add() // Add examine hook - RegisterSignal(quirk_holder, COMSIG_PARENT_EXAMINE, .proc/quirk_examine_estrous_active) + RegisterSignal(quirk_holder, COMSIG_PARENT_EXAMINE,PROC_REF(quirk_examine_estrous_active)) // Add organ change hooks - RegisterSignal(quirk_holder, COMSIG_MOB_ORGAN_ADD, .proc/update_heat_type) - RegisterSignal(quirk_holder, COMSIG_MOB_ORGAN_REMOVE, .proc/update_heat_type) + RegisterSignal(quirk_holder, COMSIG_MOB_ORGAN_ADD,PROC_REF(update_heat_type)) + RegisterSignal(quirk_holder, COMSIG_MOB_ORGAN_REMOVE,PROC_REF(update_heat_type)) /datum/quirk/estrous_active/remove() // Remove signals diff --git a/modular_sand/code/datums/wires/firealarm.dm b/modular_sand/code/datums/wires/firealarm.dm index cb8ef5f71ff..08b8ea2f58f 100644 --- a/modular_sand/code/datums/wires/firealarm.dm +++ b/modular_sand/code/datums/wires/firealarm.dm @@ -37,7 +37,7 @@ A.detecting = !A.detecting if(WIRE_FIRE_TRIGGER) A.alarm() - addtimer(CALLBACK(A, /obj/machinery/firealarm.proc/reset, wire), 1000) + addtimer(CALLBACK(A, TYPE_PROC_REF(/obj/machinery/firealarm,reset), wire), 1000) /datum/wires/firealarm/on_cut(index, mend) var/obj/machinery/firealarm/A = holder diff --git a/modular_sand/code/game/objects/items/borg_shapeshifter.dm b/modular_sand/code/game/objects/items/borg_shapeshifter.dm index f9917d3ce79..194e575a27e 100644 --- a/modular_sand/code/game/objects/items/borg_shapeshifter.dm +++ b/modular_sand/code/game/objects/items/borg_shapeshifter.dm @@ -136,7 +136,7 @@ "Clown" = image(icon = 'icons/mob/robots.dmi', icon_state = "clown"), "Syndicate" = image(icon = 'icons/mob/robots.dmi', icon_state = "synd_sec") )) - var/module_selection = show_radial_menu(R, R , module_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/module_selection = show_radial_menu(R, R , module_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!module_selection) return FALSE @@ -145,7 +145,7 @@ var/static/list/standard_icons = sortList(list( "Default" = image(icon = 'icons/mob/robots.dmi', icon_state = "robot") )) - var/borg_icon = show_radial_menu(R, R , standard_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , standard_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -171,7 +171,7 @@ wide.pixel_x = -16 med_icons[a] = wide med_icons = sortList(med_icons) - var/borg_icon = show_radial_menu(R, R , med_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , med_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -235,7 +235,7 @@ wide.pixel_x = -16 engi_icons[a] = wide engi_icons = sortList(engi_icons) - var/borg_icon = show_radial_menu(R, R , engi_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , engi_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -305,7 +305,7 @@ wide.pixel_x = -16 sec_icons[a] = wide sec_icons = sortList(sec_icons) - var/borg_icon = show_radial_menu(R, R , sec_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , sec_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -380,7 +380,7 @@ wide.pixel_x = -16 service_icons[a] = wide service_icons = sortList(service_icons) - var/borg_icon = show_radial_menu(R, R , service_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , service_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -464,7 +464,7 @@ wide.pixel_x = -16 mining_icons[a] = wide mining_icons = sortList(mining_icons) - var/borg_icon = show_radial_menu(R, R , mining_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , mining_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -516,7 +516,7 @@ "Spider" = image(icon = 'modular_citadel/icons/mob/robots.dmi', icon_state = "whitespider"), "Drake" = image(icon = 'modular_sand/icons/mob/cyborg/drakemech.dmi', icon_state = "drakepeacebox") )) - var/borg_icon = show_radial_menu(R, R , peace_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , peace_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -540,7 +540,7 @@ var/static/list/clown_icons = sortList(list( "Default" = image(icon = 'icons/mob/robots.dmi', icon_state = "clown") )) - var/borg_icon = show_radial_menu(R, R , clown_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , clown_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -555,7 +555,7 @@ "Medical" = image(icon = 'icons/mob/robots.dmi', icon_state = "synd_medical"), "Assault" = image(icon = 'icons/mob/robots.dmi', icon_state = "synd_sec") )) - var/borg_icon = show_radial_menu(R, R , syndicatejack_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/borg_icon = show_radial_menu(R, R , syndicatejack_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) if(!borg_icon) return FALSE switch(borg_icon) @@ -632,7 +632,7 @@ return if(listeningTo) UnregisterSignal(listeningTo, signalCache) - RegisterSignal(user, signalCache, .proc/disrupt) + RegisterSignal(user, signalCache,PROC_REF(disrupt)) listeningTo = user /obj/item/borg_shapeshifter/proc/deactivate(mob/living/silicon/robot/user) diff --git a/modular_sand/code/game/objects/items/fleshlight.dm b/modular_sand/code/game/objects/items/fleshlight.dm index b0c2f7c8ad5..78cf0f7d5ec 100644 --- a/modular_sand/code/game/objects/items/fleshlight.dm +++ b/modular_sand/code/game/objects/items/fleshlight.dm @@ -666,7 +666,7 @@ playsound(src, 'sound/machines/ping.ogg', 50, FALSE) to_chat(user, "[P] has been linked up successfully.") update_portal() - RegisterSignal(user, COMSIG_PARENT_QDELETING, .proc/drop_out) + RegisterSignal(user, COMSIG_PARENT_QDELETING,PROC_REF(drop_out)) else to_chat(user, "One of these pieces has already been paired.") else @@ -710,7 +710,7 @@ to_chat(user, span_notice("The panties are not linked to a portal fleshlight.")) else update_portal() - RegisterSignal(user, COMSIG_PARENT_QDELETING, .proc/drop_out) + RegisterSignal(user, COMSIG_PARENT_QDELETING,PROC_REF(drop_out)) else update_portal() UnregisterSignal(user, COMSIG_PARENT_QDELETING) diff --git a/modular_sand/code/modules/clothing/spacesuits/chronosuit.dm b/modular_sand/code/modules/clothing/spacesuits/chronosuit.dm index 945f95424df..8fbbcf14f44 100644 --- a/modular_sand/code/modules/clothing/spacesuits/chronosuit.dm +++ b/modular_sand/code/modules/clothing/spacesuits/chronosuit.dm @@ -135,12 +135,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) @@ -148,14 +148,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) diff --git a/modular_sand/code/modules/clothing/spacesuits/hardsuit.dm b/modular_sand/code/modules/clothing/spacesuits/hardsuit.dm index c6190c83949..e9c38bdcac8 100644 --- a/modular_sand/code/modules/clothing/spacesuits/hardsuit.dm +++ b/modular_sand/code/modules/clothing/spacesuits/hardsuit.dm @@ -108,9 +108,9 @@ if(prob(explodioprobemp)) playsound(src.loc, 'sound/effects/fuse.ogg', 60, 1, 10) visible_message("The power module on the [src] begins to smoke, glowing with an alarming warmth! Get away from it, now!") - addtimer(CALLBACK(src, .proc/detonate),50) + addtimer(CALLBACK(src,PROC_REF(detonate),50)) else - addtimer(CALLBACK(src, .proc/revivemessage), rebootdelay) + addtimer(CALLBACK(src,PROC_REF(revivemessage)), rebootdelay) return /obj/item/clothing/suit/space/hardsuit/powerarmor/proc/revivemessage() //we use this proc to add a timer, so we can have it take a while to boot diff --git a/modular_sand/code/modules/mining/equipment/kinetic_crusher.dm b/modular_sand/code/modules/mining/equipment/kinetic_crusher.dm index 7cedccf6ff7..5e351037db6 100644 --- a/modular_sand/code/modules/mining/equipment/kinetic_crusher.dm +++ b/modular_sand/code/modules/mining/equipment/kinetic_crusher.dm @@ -75,7 +75,7 @@ /obj/item/crusher_trophy/brokentech/on_projectile_fire(obj/item/projectile/destabilizer/marker, mob/living/user) . = ..() if(cooldowntime < world.time) - INVOKE_ASYNC(src, .proc/invokesmoke, user) + INVOKE_ASYNC(src,PROC_REF(invokesmoke), user) /obj/item/crusher_trophy/brokentech/proc/invokesmoke(mob/living/user) cooldown = world.time + cooldowntime @@ -207,7 +207,7 @@ D.fire() charged = FALSE update_icon() - 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 @@ -397,7 +397,7 @@ D.fire() charged = FALSE update_icon() - 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 diff --git a/modular_sand/code/modules/mining/lavaland/necropolis_chests.dm b/modular_sand/code/modules/mining/lavaland/necropolis_chests.dm index 6fa85fd385d..7591dfea9eb 100644 --- a/modular_sand/code/modules/mining/lavaland/necropolis_chests.dm +++ b/modular_sand/code/modules/mining/lavaland/necropolis_chests.dm @@ -226,8 +226,8 @@ /obj/item/crucible/Initialize(mapload) . = ..() - RegisterSignal(src, COMSIG_TWOHANDED_WIELD, .proc/wield) - RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD, .proc/unwield) + RegisterSignal(src, COMSIG_TWOHANDED_WIELD,PROC_REF(wield)) + RegisterSignal(src, COMSIG_TWOHANDED_UNWIELD,PROC_REF(unwield)) /obj/item/crucible/ComponentInitialize() . = ..() @@ -637,7 +637,7 @@ /obj/item/clothing/accessory/lavawalk/ComponentInitialize() . = ..() lavawalk = new(src) - RegisterSignal(lavawalk, COMSIG_ACTION_TRIGGER, .proc/activate) + RegisterSignal(lavawalk, COMSIG_ACTION_TRIGGER,PROC_REF(activate)) /obj/item/clothing/accessory/lavawalk/Destroy() . = ..() @@ -673,7 +673,7 @@ //L.balloon_alert(L, "activated") ADD_TRAIT(L, TRAIT_ASHSTORM_IMMUNE, src) ADD_TRAIT(L, TRAIT_LAVA_IMMUNE, src) - timer = addtimer(CALLBACK(src, .proc/reset_user, L), effectduration) + timer = addtimer(CALLBACK(src,PROC_REF(reset_user), L), effectduration) action.StartCooldown() /obj/item/clothing/accessory/lavawalk/proc/reset_user(mob/living/user) diff --git a/modular_sand/code/modules/mob/emote.dm b/modular_sand/code/modules/mob/emote.dm index e725562c1ce..016f7e286ae 100644 --- a/modular_sand/code/modules/mob/emote.dm +++ b/modular_sand/code/modules/mob/emote.dm @@ -11,7 +11,7 @@ I.icon_state = state M.vis_contents += I animate(I, alpha = 255, time = 5, easing = BOUNCE_EASING, pixel_y = 10) - addtimer(CALLBACK(GLOBAL_PROC, /proc/finish_flick, M, I), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) + addtimer(CALLBACK(GLOBAL_PROC_REF(finish_flick), M, I), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) /proc/finish_flick(mob/M, I) M.vis_contents -= I diff --git a/modular_sand/code/modules/mob/living/silicon/robot/robot_modules.dm b/modular_sand/code/modules/mob/living/silicon/robot/robot_modules.dm index c52935fbd48..6fd57945eac 100644 --- a/modular_sand/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/modular_sand/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -156,7 +156,7 @@ "BootyNukie" = image(icon = 'modular_splurt/icons/mob/robots.dmi', icon_state = "bootynukie"), // SPLURT Addon (Hyper Port) "BootyGorlex" = image(icon = 'modular_splurt/icons/mob/robots.dmi', icon_state = "bootygorlex") // SPLURT Addon (Hyper Port) )) - var/syndiejack_icon = show_radial_menu(R, R , syndicatejack_icons, custom_check = CALLBACK(src, .proc/check_menu, R), radius = 42, require_near = TRUE) + var/syndiejack_icon = show_radial_menu(R, R , syndicatejack_icons, custom_check = CALLBACK(src,PROC_REF(check_menu), R), radius = 42, require_near = TRUE) switch(syndiejack_icon) if("Saboteur") cyborg_base_icon = "synd_engi" diff --git a/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm b/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm index b4a8993f4e1..042d2fec7c8 100644 --- a/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm +++ b/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/bubblegum.dm @@ -36,13 +36,13 @@ Removes slaughterlings (because they are bullshit), instead replacing them with blood_warp() bloodsmacks() if(prob(25)) - INVOKE_ASYNC(src, .proc/blood_spray) - INVOKE_ASYNC(src, .proc/bloodsmacks) + INVOKE_ASYNC(src,PROC_REF(blood_spray)) + INVOKE_ASYNC(src,PROC_REF(bloodsmacks)) else if(health > maxHealth/2 && !client) - INVOKE_ASYNC(src, .proc/charge) + INVOKE_ASYNC(src,PROC_REF(charge)) else - INVOKE_ASYNC(src, .proc/triple_charge) + INVOKE_ASYNC(src,PROC_REF(triple_charge)) /mob/living/simple_animal/hostile/megafauna/bubblegum/charge() bloodsmacks() @@ -71,7 +71,7 @@ Removes slaughterlings (because they are bullshit), instead replacing them with mobcount++ if(mobcount) var/hand = rand(0,1) - INVOKE_ASYNC(src, .proc/bloodsmack, T, hand) + INVOKE_ASYNC(src,PROC_REF(bloodsmack), T, hand) /mob/living/simple_animal/hostile/megafauna/bubblegum/proc/bloodsmack(turf/T, handedness) if(handedness) diff --git a/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/glaurung.dm b/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/glaurung.dm index 1e1efc46092..ecd43177c6f 100644 --- a/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/glaurung.dm +++ b/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/glaurung.dm @@ -86,7 +86,7 @@ Difficulty: Medium var/range = 20 var/list/turfs = list() turfs = line_target(0, range, at) - INVOKE_ASYNC(src, .proc/fire_line, turfs) + INVOKE_ASYNC(src,PROC_REF(fire_line), turfs) /mob/living/simple_animal/hostile/megafauna/dragon/glaurung/OpenFire() if(swooping) diff --git a/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/rogueprocess.dm b/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/rogueprocess.dm index c392c9e0dd9..9cb0b4e8913 100644 --- a/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/rogueprocess.dm +++ b/modular_sand/code/modules/mob/living/simple_animal/hostile/megafauna/rogueprocess.dm @@ -68,57 +68,57 @@ switch(anger_modifier) if(0 to 25) if(prob(50)) - INVOKE_ASYNC(src, .proc/plasmashot, target) + INVOKE_ASYNC(src,PROC_REF(plasmashot), target) if(prob(80)) sleep(6) - INVOKE_ASYNC(src, .proc/plasmashot, target) + INVOKE_ASYNC(src,PROC_REF(plasmashot), target) if(prob(50)) sleep(6) - INVOKE_ASYNC(src, .proc/plasmashot, target) + INVOKE_ASYNC(src,PROC_REF(plasmashot), target) else animate(src, color = "#ff0000", time = 3) sleep(4) - INVOKE_ASYNC(src, .proc/shockwave, src.dir, 7, 2.5) + INVOKE_ASYNC(src,PROC_REF(shockwave), src.dir, 7, 2.5) if(25 to 50) if(prob(60)) special = TRUE - INVOKE_ASYNC(src, .proc/plasmaburst, target, FALSE) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), target, FALSE) sleep(6) - INVOKE_ASYNC(src, .proc/plasmaburst, target, TRUE) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), target, TRUE) if(prob(50)) sleep(6) - INVOKE_ASYNC(src, .proc/plasmashot, target, FALSE) + INVOKE_ASYNC(src,PROC_REF(plasmashot), target, FALSE) if(prob(50)) sleep(6) - INVOKE_ASYNC(src, .proc/plasmashot, target, FALSE) + INVOKE_ASYNC(src,PROC_REF(plasmashot), target, FALSE) special = FALSE else special = TRUE animate(src, color = "#ff0000", time = 3) sleep(4) - INVOKE_ASYNC(src, .proc/shockwave, WEST, 10, TRUE) - INVOKE_ASYNC(src, .proc/shockwave, EAST, 10, TRUE) + INVOKE_ASYNC(src,PROC_REF(shockwave), WEST, 10, TRUE) + INVOKE_ASYNC(src,PROC_REF(shockwave), EAST, 10, TRUE) sleep(7) - INVOKE_ASYNC(src, .proc/shockwave, NORTH, 10, TRUE) - INVOKE_ASYNC(src, .proc/shockwave, SOUTH, 10, TRUE) + INVOKE_ASYNC(src,PROC_REF(shockwave), NORTH, 10, TRUE) + INVOKE_ASYNC(src,PROC_REF(shockwave), SOUTH, 10, TRUE) animate(src, color = initial(color), time = 5) special = FALSE if(50 to INFINITY) if(prob(75)) if(prob(60)) - INVOKE_ASYNC(src, .proc/plasmaburst, target) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), target) special = TRUE animate(src, color = "#ff0000", time = 3) sleep(5) - INVOKE_ASYNC(src, .proc/shockwave, src.dir, 15) + INVOKE_ASYNC(src,PROC_REF(shockwave), src.dir, 15) if(prob(60)) sleep(5) - INVOKE_ASYNC(src, .proc/plasmaburst, target) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), target) sleep(5) - INVOKE_ASYNC(src, .proc/plasmaburst, target) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), target) if(prob(50)) sleep(5) - INVOKE_ASYNC(src, .proc/plasmaburst, target) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), target) animate(src, color = initial(color), time = 3) special = FALSE else @@ -129,11 +129,11 @@ animate(src, color = "#ff0000", time = 3) special = TRUE sleep(3) - INVOKE_ASYNC(src, .proc/plasmaburst, left, TRUE) - INVOKE_ASYNC(src, .proc/plasmaburst, right, FALSE) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), left, TRUE) + INVOKE_ASYNC(src,PROC_REF(plasmaburst), right, FALSE) sleep(3) - INVOKE_ASYNC(src, .proc/plasmashot, up, FALSE) - INVOKE_ASYNC(src, .proc/plasmashot, down, FALSE) + INVOKE_ASYNC(src,PROC_REF(plasmashot), up, FALSE) + INVOKE_ASYNC(src,PROC_REF(plasmashot), down, FALSE) sleep(10) animate(src, color = initial(color), time = 3) special = FALSE @@ -142,13 +142,13 @@ sleep(3) special = TRUE for(var/dire in GLOB.cardinals) - INVOKE_ASYNC(src, .proc/shockwave, dire, 7, TRUE, 3) + INVOKE_ASYNC(src,PROC_REF(shockwave), dire, 7, TRUE, 3) sleep(6) animate(src, color = initial(color), time = 3) special = FALSE else special = TRUE - INVOKE_ASYNC(src, .proc/ultishockwave, 7, 5) + INVOKE_ASYNC(src,PROC_REF(ultishockwave), 7, 5) sleep(10) special = FALSE diff --git a/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/candy.dm b/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/candy.dm index 8372abd7a26..2d2348f7687 100644 --- a/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/candy.dm +++ b/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/candy.dm @@ -116,7 +116,7 @@ new /obj/effect/temp_visual/dir_setting/bloodsplatter/candy(T, get_dir(T, target)) T = get_step(T, dir_to_target) sleep(1) - addtimer(CALLBACK(src, .proc/blood_charge_2, dir_to_target, 0), 5) + addtimer(CALLBACK(src,PROC_REF(blood_charge_2), dir_to_target, 0), 5) /mob/living/simple_animal/hostile/asteroid/elite/candy/proc/bloodytrap(mob/target) playsound(src,'sound/magic/Blind.ogg', 200, 1) @@ -229,7 +229,7 @@ //L.Paralyze(20) L.Stun(20) //substituting this for the Paralyze from the line above, because we don't have tg paralysis stuff L.adjustBruteLoss(50) - addtimer(CALLBACK(src, .proc/blood_charge_2, move_dir, (times_ran + 1)), 2) + addtimer(CALLBACK(src,PROC_REF(blood_charge_2), move_dir, (times_ran + 1)), 2) /obj/effect/temp_visual/dir_setting/bloodsplatter/candy duration = 10 diff --git a/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/drakeling.dm b/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/drakeling.dm index d4796330271..09b3bf60241 100644 --- a/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/drakeling.dm +++ b/modular_sand/code/modules/mob/living/simple_animal/hostile/mining_mobs/elites/drakeling.dm @@ -114,7 +114,7 @@ /mob/living/simple_animal/hostile/asteroid/elite/drakeling/proc/lava_around() ranged_cooldown = world.time + 50 for(var/d in GLOB.cardinals) - INVOKE_ASYNC(src, .proc/lava_wall, d, 5) + INVOKE_ASYNC(src,PROC_REF(lava_wall), d, 5) /mob/living/simple_animal/hostile/asteroid/elite/drakeling/proc/fire_spew() ranged_cooldown = world.time + 25 @@ -129,7 +129,7 @@ visible_message(span_boldwarning("[src] violently puffs smoke!They're going to make a fire moat!")) sleep(5) for(var/d in GLOB.alldirs) - INVOKE_ASYNC(src, .proc/fire_wall, d, 10) + INVOKE_ASYNC(src,PROC_REF(fire_wall), d, 10) // Drakeling helpers diff --git a/modular_sand/code/modules/resize/resizing.dm b/modular_sand/code/modules/resize/resizing.dm index 913fcbb294a..73f5a5dbccc 100644 --- a/modular_sand/code/modules/resize/resizing.dm +++ b/modular_sand/code/modules/resize/resizing.dm @@ -66,7 +66,7 @@ user.forceMove(target.loc) user.sizediffStamLoss(target) user.add_movespeed_modifier(/datum/movespeed_modifier/stomp, TRUE) //Full stop - addtimer(CALLBACK(user, /mob/.proc/remove_movespeed_modifier, MOVESPEED_ID_STOMP, TRUE), 3) //0.3 seconds + addtimer(CALLBACK(user, TYPE_PROC_REF(/mob/,remove_movespeed_modifier), MOVESPEED_ID_STOMP, TRUE), 3) //0.3 seconds if(iscarbon(user)) if(istype(user) && user.dna.features["taur"] == "Naga" || user.dna.features["taur"] == "Tentacle") target.visible_message(span_danger("[src] carefully rolls their tail over [target]!"), span_danger("[src]'s huge tail rolls over you!")) @@ -81,7 +81,7 @@ user.sizediffBruteloss(target) playsound(loc, 'sound/misc/splort.ogg', 50, 1) user.add_movespeed_modifier(/datum/movespeed_modifier/stomp, TRUE) - addtimer(CALLBACK(user, /mob/.proc/remove_movespeed_modifier, MOVESPEED_ID_STOMP, TRUE), 10) //1 second + addtimer(CALLBACK(user, TYPE_PROC_REF(/mob/,remove_movespeed_modifier), MOVESPEED_ID_STOMP, TRUE), 10) //1 second //user.Stun(20) if(iscarbon(user)) if(istype(user) && (user.dna.features["taur"] == "Naga" || user.dna.features["taur"] == "Tentacle")) @@ -96,7 +96,7 @@ user.sizediffStamLoss(target) user.sizediffStun(target) user.add_movespeed_modifier(/datum/movespeed_modifier/stomp, TRUE) - addtimer(CALLBACK(user, /mob/.proc/remove_movespeed_modifier, MOVESPEED_ID_STOMP, TRUE), 7)//About 3/4th a second + addtimer(CALLBACK(user, TYPE_PROC_REF(/mob/,remove_movespeed_modifier), MOVESPEED_ID_STOMP, TRUE), 7)//About 3/4th a second if(iscarbon(user)) var/feetCover = (user.wear_suit && (user.wear_suit.body_parts_covered & FEET)) || (user.w_uniform && (user.w_uniform.body_parts_covered & FEET) || (user.shoes && (user.shoes.body_parts_covered & FEET))) if(feetCover) diff --git a/modular_sand/code/modules/ruins/lavalandruin_code/doom.dm b/modular_sand/code/modules/ruins/lavalandruin_code/doom.dm index b693d9b8400..6fa23209f63 100644 --- a/modular_sand/code/modules/ruins/lavalandruin_code/doom.dm +++ b/modular_sand/code/modules/ruins/lavalandruin_code/doom.dm @@ -78,8 +78,8 @@ for(var/mob/living/simple_animal/hostile/asteroid/elite/candy/C in view(15)) candylist += C if(candylist.len) - INVOKE_ASYNC(src, /obj/machinery/door/airlock/titanium/doomed/locked.proc/close) - addtimer(CALLBACK(src, .proc/bolt), 5) + INVOKE_ASYNC(src, TYPE_PROC_REF(/obj/machinery/door/airlock/titanium/doomed/locked,close)) + addtimer(CALLBACK(src,PROC_REF(bolt)), 5) /obj/machinery/door/airlock/titanium/doomed/locked/process() . = ..() diff --git a/modular_sand/code/modules/ruins/lavalandruin_code/misc.dm b/modular_sand/code/modules/ruins/lavalandruin_code/misc.dm index d001b41fda6..fe2530ba996 100644 --- a/modular_sand/code/modules/ruins/lavalandruin_code/misc.dm +++ b/modular_sand/code/modules/ruins/lavalandruin_code/misc.dm @@ -73,7 +73,7 @@ /obj/effect/wrath/Initialize(mapload) . = ..() megalist = list("Cockblock", "Cockblock", "Cockblock") //cockblock just to be sure that no one goes through the wrath wall in the 10 minute grace period - addtimer(CALLBACK(src, .proc/updatemegalist), 6000) //10 minutes delay so that all megafauna can spawn and etc. + addtimer(CALLBACK(src,PROC_REF(updatemegalist)), 6000) //10 minutes delay so that all megafauna can spawn and etc. /obj/effect/wrath/proc/updatemegalist() megalist = list() diff --git a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_belt.dm b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_belt.dm index b0e76c32e3b..f6e72e4093c 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_belt.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_belt.dm @@ -109,7 +109,7 @@ ENABLE_BITFIELD(G.genital_flags, GENITAL_CHASTENED) H.update_genitals() - RegisterSignal(src, COMSIG_MOB_ITEM_DROPPING, .proc/mob_can_unequip) + RegisterSignal(src, COMSIG_MOB_ITEM_DROPPING,PROC_REF(mob_can_unequip)) /obj/item/clothing/underwear/chastity_belt/proc/mob_can_unequip(obj/item/source, force, newloc, no_move, invdrop, silent) if(force) diff --git a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm index 02105fbd3cb..d114a5ad32c 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/chastity_cage.dm @@ -99,8 +99,8 @@ is_overlay_on = TRUE H.update_genitals() - RegisterSignal(H, COMSIG_MOB_ITEM_EQUIPPED, .proc/mob_equipped_item) - RegisterSignal(H, COMSIG_MOB_ITEM_DROPPED, .proc/mob_dropped_item) + RegisterSignal(H, COMSIG_MOB_ITEM_EQUIPPED,PROC_REF(mob_equipped_item)) + RegisterSignal(H, COMSIG_MOB_ITEM_DROPPED,PROC_REF(mob_dropped_item)) /obj/item/genital_equipment/chastity_cage/item_removing(datum/source, obj/item/organ/genital/G, mob/user) . = TRUE diff --git a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm index b600c0d9c02..bb8f28c4cba 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/chastity/metal_chastity_cage.dm @@ -13,7 +13,7 @@ . = ..() var/mob/living/carbon/human/H = equipment.get_wearer() - RegisterSignal(H, COMSIG_MOVABLE_MOVED, .proc/on_move) + RegisterSignal(H, COMSIG_MOVABLE_MOVED,PROC_REF(on_move)) skin_overlay = mutable_appearance(icon, "worn_[icon_state]_[cage_sprite]_skin", skin_overlay_layer) skin_overlay.color = G.color diff --git a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/genital_equipment.dm b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/genital_equipment.dm index 428b16cafce..1cc52b1fd00 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/genital_equipment.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/genital_equipment/genital_equipment.dm @@ -5,10 +5,10 @@ /obj/item/genital_equipment/ComponentInitialize() . = ..() var/list/procs_list = list( - "before_inserting" = CALLBACK(src, .proc/item_inserting), - "after_inserting" = CALLBACK(src, .proc/item_inserted), - "before_removing" = CALLBACK(src, .proc/item_removing), - "after_removing" = CALLBACK(src, .proc/item_removed) + "before_inserting" = CALLBACK(src,PROC_REF(item_inserting)), + "after_inserting" = CALLBACK(src,PROC_REF(item_inserted)), + "before_removing" = CALLBACK(src,PROC_REF(item_removing)), + "after_removing" = CALLBACK(src,PROC_REF(item_removed)) ) AddComponent(/datum/component/genital_equipment, genital_slot, procs_list) equipment = GetComponent(/datum/component/genital_equipment) diff --git a/modular_splurt/code/game/objects/items/lewd_items/leash.dm b/modular_splurt/code/game/objects/items/lewd_items/leash.dm index 88ed837f87b..fdd35bdfe57 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/leash.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/leash.dm @@ -45,8 +45,8 @@ Icons, maybe? /datum/status_effect/leash_pet/on_apply() - //redirect_component = WEAKREF(owner.AddComponent(/datum/component/redirect, list(COMSIG_LIVING_RESIST = CALLBACK(src, .proc/owner_resist)))) - RegisterSignal(owner, COMSIG_LIVING_RESIST, .proc/owner_resist) + //redirect_component = WEAKREF(owner.AddComponent(/datum/component/redirect, list(COMSIG_LIVING_RESIST = CALLBACK(src,PROC_REF(owner_resist))))) + RegisterSignal(owner, COMSIG_LIVING_RESIST,PROC_REF(owner_resist)) redirect_component = owner if(!owner.stat) to_chat(owner, span_userdanger("You have been leashed!")) @@ -103,11 +103,11 @@ Icons, maybe? user.apply_status_effect(/datum/status_effect/leash_dom) //Is the leasher leash_pet = C //Save pet reference for later leash_master = user //Save dom reference for later - //mobhook_leash_pet = leash_pet.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/on_pet_move))) - RegisterSignal(leash_pet, COMSIG_MOVABLE_MOVED, .proc/on_pet_move) + //mobhook_leash_pet = leash_pet.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src,PROC_REF(on_pet_move)))) + RegisterSignal(leash_pet, COMSIG_MOVABLE_MOVED,PROC_REF(on_pet_move)) mobhook_leash_pet = leash_pet - //mobhook_leash_master = leash_master.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/on_master_move))) - RegisterSignal(leash_master, COMSIG_MOVABLE_MOVED, .proc/on_master_move) + //mobhook_leash_master = leash_master.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src,PROC_REF(on_master_move)))) + RegisterSignal(leash_master, COMSIG_MOVABLE_MOVED,PROC_REF(on_master_move)) mobhook_leash_master = leash_master leash_used = 1 if(!leash_pet.has_status_effect(/datum/status_effect/leash_dom)) //Add slowdown if the pet didn't leash themselves @@ -339,7 +339,7 @@ Icons, maybe? if(leash_master == "null") return //Dropping procs any time the leash changes slots. So, we will wait a tick and see if the leash was actually dropped - addtimer(CALLBACK(src, .proc/drop_effects, user, silent), 1) + addtimer(CALLBACK(src,PROC_REF(drop_effects), user, silent), 1) /obj/item/leash/proc/drop_effects(mob/user, silent) if(leash_master.is_holding_item_of_type(/obj/item/leash) || istype(leash_master.get_item_by_slot(ITEM_SLOT_BELT), /obj/item/leash)) @@ -348,8 +348,8 @@ Icons, maybe? viewing.show_message(span_notice("[leash_master] has dropped the leash."), 1) //DOM HAS DROPPED LEASH. PET IS FREE. SCP HAS BREACHED CONTAINMENT. leash_pet.remove_movespeed_modifier(MOVESPEED_ID_LEASH) - //mobhook_leash_freepet = leash_pet.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/on_freepet_move))) - RegisterSignal(leash_pet, COMSIG_MOVABLE_MOVED, .proc/on_freepet_move) + //mobhook_leash_freepet = leash_pet.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src,PROC_REF(on_freepet_move)))) + RegisterSignal(leash_pet, COMSIG_MOVABLE_MOVED,PROC_REF(on_freepet_move)) mobhook_leash_freepet = leash_pet leash_master.remove_status_effect(/datum/status_effect/leash_dom) //No dom with no leash. We will get a new dom if the leash is picked back up. leash_master = "null" @@ -360,7 +360,7 @@ Icons, maybe? . = ..() if(leash_used == 0) //Don't apply statuses with a fresh leash. Keeps things clean on the backend. return - addtimer(CALLBACK(src, .proc/equip_effects, user), 2) + addtimer(CALLBACK(src,PROC_REF(equip_effects), user), 2) /obj/item/leash/proc/equip_effects(mob/user) if(leash_pet == "null") @@ -370,8 +370,8 @@ Icons, maybe? leash_master = "null" return leash_master.apply_status_effect(/datum/status_effect/leash_dom) - //mobhook_leash_master = leash_master.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src, .proc/on_master_move))) - RegisterSignal(leash_master, COMSIG_MOVABLE_MOVED, .proc/on_master_move) + //mobhook_leash_master = leash_master.AddComponent(/datum/component/redirect, list(COMSIG_MOVABLE_MOVED = CALLBACK(src,PROC_REF(on_master_move)))) + RegisterSignal(leash_master, COMSIG_MOVABLE_MOVED,PROC_REF(on_master_move)) mobhook_leash_master = leash_master leash_pet.remove_status_effect(/datum/status_effect/leash_freepet) //QDEL_NULL(mobhook_leash_freepet) diff --git a/modular_splurt/code/game/objects/items/lewd_items/rope.dm b/modular_splurt/code/game/objects/items/lewd_items/rope.dm index d950844904b..8cf53ed9900 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/rope.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/rope.dm @@ -434,14 +434,14 @@ GLOBAL_LIST_INIT(bondage_rope_slowdowns, list( roped_mob.clear_cuffs(roped_mob.legcuffed, 0) roped_mob = new_mob if(roped_mob != null) - RegisterSignal(roped_mob, COMSIG_MOVABLE_MOVED, .proc/on_mob_move) + RegisterSignal(roped_mob, COMSIG_MOVABLE_MOVED,PROC_REF(on_mob_move)) /obj/item/restraints/bondage_rope/proc/set_roped_master(mob/living/carbon/new_master) if(roped_master != null && roped_mob != roped_master) UnregisterSignal(roped_master, COMSIG_MOVABLE_MOVED) roped_master = new_master if(roped_master != null && roped_mob != roped_master) - RegisterSignal(roped_master, COMSIG_MOVABLE_MOVED, .proc/on_master_move) + RegisterSignal(roped_master, COMSIG_MOVABLE_MOVED,PROC_REF(on_master_move)) /obj/item/restraints/bondage_rope/proc/set_roped_object(obj/new_object, new_object_type) if(roped_object != null) @@ -450,7 +450,7 @@ GLOBAL_LIST_INIT(bondage_rope_slowdowns, list( roped_object_type = new_object_type set_rope_slowdown(roped_mob) if(roped_object != null) - RegisterSignal(roped_object, COMSIG_MOVABLE_MOVED, .proc/on_object_move) + RegisterSignal(roped_object, COMSIG_MOVABLE_MOVED,PROC_REF(on_object_move)) // Returns true, if roped mob can tug their object behind them /obj/item/restraints/bondage_rope/proc/can_move_object() diff --git a/modular_splurt/code/game/objects/items/lewd_items/vibrator.dm b/modular_splurt/code/game/objects/items/lewd_items/vibrator.dm index be625903c65..2aa12adef50 100644 --- a/modular_splurt/code/game/objects/items/lewd_items/vibrator.dm +++ b/modular_splurt/code/game/objects/items/lewd_items/vibrator.dm @@ -21,8 +21,8 @@ /obj/item/electropack/vibrator/ComponentInitialize() . = ..() var/list/procs_list = list( - "before_inserting" = CALLBACK(src, .proc/item_inserting), - "after_inserting" = CALLBACK(src, .proc/item_inserted), + "before_inserting" = CALLBACK(src,PROC_REF(item_inserting)), + "after_inserting" = CALLBACK(src,PROC_REF(item_inserted)), ) AddComponent(/datum/component/genital_equipment, list(ORGAN_SLOT_VAGINA, ORGAN_SLOT_ANUS, ORGAN_SLOT_PENIS, ORGAN_SLOT_BREASTS, ORGAN_SLOT_BUTT, ORGAN_SLOT_BELLY), procs_list) From 9f1698ad02048c5d39d67dc4a0c54f64ea674f43 Mon Sep 17 00:00:00 2001 From: gremlingss Date: Fri, 26 Jan 2024 23:39:44 +0000 Subject: [PATCH 12/52] Fixes some proc-ref macros --- code/__DEFINES/skills/helpers.dm | 2 +- code/controllers/subsystem/statpanel.dm | 2 +- code/datums/components/mood.dm | 2 +- code/datums/martial/wrestling.dm | 2 +- code/datums/skills/_skill_modifier.dm | 6 +++--- code/datums/weather/weather.dm | 5 ++--- code/game/area/areas.dm | 4 ++-- code/game/atoms.dm | 2 +- code/game/turfs/open.dm | 2 +- code/game/turfs/turf.dm | 2 +- code/modules/VR/vr_sleeper.dm | 6 +++--- code/modules/antagonists/cult/blood_magic.dm | 2 +- code/modules/antagonists/cult/rune_spawn_action.dm | 2 +- code/modules/antagonists/cult/runes.dm | 6 +++--- code/modules/awaymissions/gateway.dm | 2 +- code/modules/clothing/gloves/_gloves.dm | 2 +- code/modules/clothing/masks/_masks.dm | 2 +- code/modules/clothing/shoes/_shoes.dm | 2 +- code/modules/mob/living/carbon/human/human.dm | 2 +- .../mob/living/simple_animal/friendly/drone/_drone.dm | 2 +- 20 files changed, 28 insertions(+), 29 deletions(-) diff --git a/code/__DEFINES/skills/helpers.dm b/code/__DEFINES/skills/helpers.dm index 295719ef1fa..fc56ea1b0de 100644 --- a/code/__DEFINES/skills/helpers.dm +++ b/code/__DEFINES/skills/helpers.dm @@ -27,7 +27,7 @@ if(body.mind){\ body.mind.add_skill_modifier(prototype.identifier)\ } else {\ - prototype.RegisterSignal(body, TYPE_PROC_REF(COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier,on_mob_new_mind), TRUE)\ + prototype.RegisterSignal(body, COMSIG_MOB_ON_NEW_MIND, TYPE_PROC_REF(/datum/skill_modifier,on_mob_new_mind), TRUE)\ } /// Same as above but to remove the skill modifier. diff --git a/code/controllers/subsystem/statpanel.dm b/code/controllers/subsystem/statpanel.dm index f9479125924..ae42021ba91 100644 --- a/code/controllers/subsystem/statpanel.dm +++ b/code/controllers/subsystem/statpanel.dm @@ -145,7 +145,7 @@ SUBSYSTEM_DEF(statpanels) if(length(turfitems) < 30) // only create images for the first 30 items on the turf, for performance reasons if(!(REF(turf_content) in cached_images)) cached_images += REF(turf_content) - turf_content.RegisterSignal(turf_content, TYPE_PROC_REF(COMSIG_PARENT_QDELETING, /atom/,remove_from_cache)) // we reset cache if anything in it gets deleted + turf_content.RegisterSignal(turf_content, COMSIG_PARENT_QDELETING, TYPE_PROC_REF(/atom/movable, remove_from_cache)) // we reset cache if anything in it gets deleted if(ismob(turf_content) || length(turf_content.overlays) > 2) turfitems[++turfitems.len] = list("[turf_content.name]", REF(turf_content), costly_icon2html(turf_content, target, sourceonly=TRUE)) else diff --git a/code/datums/components/mood.dm b/code/datums/components/mood.dm index 4e09ba1ac35..9907e7f7b7c 100644 --- a/code/datums/components/mood.dm +++ b/code/datums/components/mood.dm @@ -245,7 +245,7 @@ if(master.mind) master.mind.add_skill_modifier(malus.identifier) else - malus.RegisterSignal(master, TYPE_PROC_REF(COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier,on_mob_new_mind), TRUE) + malus.RegisterSignal(master, COMSIG_MOB_ON_NEW_MIND, TYPE_PROC_REF(/datum/skill_modifier,on_mob_new_mind), TRUE) malus.value_mod = malus.level_mod = 1 - (sanity_level - 3) * MOOD_INSANITY_MALUS else if(malus) if(master.mind) diff --git a/code/datums/martial/wrestling.dm b/code/datums/martial/wrestling.dm index 4cf9a7c835c..65c4d2dbf7c 100644 --- a/code/datums/martial/wrestling.dm +++ b/code/datums/martial/wrestling.dm @@ -209,7 +209,7 @@ if (T && isturf(T)) if (!D.stat) D.emote("scream") - D.throw_at(T, TYPE_PROC_REF(10, 4, A, TRUE, TRUE, callback = CALLBACK(D, /mob/living/carbon/human,DefaultCombatKnockdown), 20)) + D.throw_at(T, 10, 4, A, TRUE, TRUE, callback = CALLBACK(D, TYPE_PROC_REF(/mob/living/carbon/human,DefaultCombatKnockdown), 20)) log_combat(A, D, "has thrown with wrestling") return FALSE diff --git a/code/datums/skills/_skill_modifier.dm b/code/datums/skills/_skill_modifier.dm index 731198f2672..a732957c210 100644 --- a/code/datums/skills/_skill_modifier.dm +++ b/code/datums/skills/_skill_modifier.dm @@ -115,8 +115,8 @@ GLOBAL_LIST_EMPTY(potential_mods_per_skill) skill_holder.need_static_data_update = TRUE if(M.modifier_flags & MODIFIER_SKILL_BODYBOUND) - M.RegisterSignal(src, TYPE_PROC_REF(COMSIG_MIND_TRANSFER, /datum/skill_modifier,on_mind_transfer)) - M.RegisterSignal(current, TYPE_PROC_REF(COMSIG_MOB_ON_NEW_MIND, /datum/skill_modifier,on_mob_new_mind), TRUE) + M.RegisterSignal(src, COMSIG_MIND_TRANSFER, TYPE_PROC_REF(/datum/skill_modifier,on_mind_transfer)) + M.RegisterSignal(current, COMSIG_MOB_ON_NEW_MIND, TYPE_PROC_REF(/datum/skill_modifier,on_mob_new_mind), TRUE) RegisterSignal(M, COMSIG_PARENT_PREQDELETED,PROC_REF(on_skill_modifier_deletion)) #undef ADD_MOD_STEP @@ -201,4 +201,4 @@ GLOBAL_LIST_EMPTY(potential_mods_per_skill) /datum/skill_modifier/proc/on_mob_new_mind(mob/source) source.mind.add_skill_modifier(identifier) - RegisterSignal(source.mind, TYPE_PROC_REF(COMSIG_MIND_TRANSFER, /datum/skill_modifier,on_mind_transfer)) + RegisterSignal(source.mind, COMSIG_MIND_TRANSFER, TYPE_PROC_REF(/datum/skill_modifier,on_mind_transfer)) diff --git a/code/datums/weather/weather.dm b/code/datums/weather/weather.dm index f63a9c09c23..c34dd45b13d 100644 --- a/code/datums/weather/weather.dm +++ b/code/datums/weather/weather.dm @@ -162,9 +162,8 @@ */ /datum/weather/proc/start() if(stage >= MAIN_STAGE) - return - stage = MAIN_STAGE - update_areas() + stage = MAIN_STAGE + update_areas() alert_players(pick(weather_message_list), weather_sound) else alert_players(weather_message, weather_sound) diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index b2be8d79d40..9be194c2bf1 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -401,7 +401,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) if(D.operating) D.nextstate = opening ? FIREDOOR_OPEN : FIREDOOR_CLOSED else if(!(D.density ^ opening)) - INVOKE_ASYNC(D, TYPE_PROC_REF((opening ? /obj/machinery/door/firedoor.proc/open : /obj/machinery/door/firedoor,close))) + INVOKE_ASYNC(D, (opening ? TYPE_PROC_REF(/obj/machinery/door/firedoor, open) : TYPE_PROC_REF(/obj/machinery/door/firedoor, close))) /area/proc/firealert(obj/source) if(always_unpowered == 1) //no fire alarms in space/asteroid @@ -470,7 +470,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) var/mob/living/silicon/SILICON = i if(SILICON.triggerAlarm("Burglar", src, cameras, trigger)) //Cancel silicon alert after 1 minute - addtimer(CALLBACK(SILICON, TYPE_PROC_REF(/mob/living/silicon,cancelAlarm,"Burglar",src,trigger)), 600) + addtimer(CALLBACK(SILICON, TYPE_PROC_REF(/mob/living/silicon,cancelAlarm) ,"Burglar",src,trigger), 600) /area/proc/set_fire_alarm_effects(boolean) fire = boolean diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 5f9b22c5dfc..f18e47ec639 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -724,7 +724,7 @@ var/list/things = src_object.contents() var/my_bar = SSprogress_bars.add_bar(src, list(), things.len, FALSE, FALSE) var/datum/component/storage/STR = GetComponent(/datum/component/storage) - while (do_after(user, TYPE_PROC_REF(10, TRUE, src, FALSE, CALLBACK(STR, /datum/component/storage,handle_mass_item_insertion), things, src_object, user, my_bar))) + while (do_after(user, 10, TRUE, src, FALSE, CALLBACK(STR, TYPE_PROC_REF(/datum/component/storage,handle_mass_item_insertion), things, src_object, user, my_bar))) stoplag(1) SSprogress_bars.remove_bar(my_bar) to_chat(user, span_notice("You dump as much of [src_object.parent]'s contents into [STR.insert_preposition]to [src] as you can.")) diff --git a/code/game/turfs/open.dm b/code/game/turfs/open.dm index 94e65ab1df1..f821ee847a4 100644 --- a/code/game/turfs/open.dm +++ b/code/game/turfs/open.dm @@ -279,7 +279,7 @@ lube |= SLIDE_ICE if(lube&SLIDE) - new /datum/forced_movement(C, TYPE_PROC_REF(get_ranged_target_turf(C, olddir, 4), 1, FALSE, CALLBACK(C, /mob/living/carbon/,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 TRUE diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index 6c96fc3b91d..b7d02d3688a 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -403,7 +403,7 @@ var/list/things = src_object.contents() var/my_bar = SSprogress_bars.add_bar(src, list(), things.len, FALSE, TRUE) - while (do_after(user, TYPE_PROC_REF(10, TRUE, src, FALSE, CALLBACK(src_object, /datum/component/storage,mass_remove_from_storage), src, things, my_bar))) + while (do_after(user, 10, TRUE, src, FALSE, CALLBACK(src_object, TYPE_PROC_REF(/datum/component/storage,mass_remove_from_storage), src, things, my_bar))) stoplag(1) SSprogress_bars.remove_bar(my_bar) diff --git a/code/modules/VR/vr_sleeper.dm b/code/modules/VR/vr_sleeper.dm index 6c1b1f89d82..c1945bd7448 100644 --- a/code/modules/VR/vr_sleeper.dm +++ b/code/modules/VR/vr_sleeper.dm @@ -179,9 +179,9 @@ RegisterSignal(VR, COMSIG_COMPONENT_UNREGISTER_PARENT,PROC_REF(unset_vr_mob)) RegisterSignal(VR, COMSIG_COMPONENT_REGISTER_PARENT,PROC_REF(set_vr_mob)) if(!only_current_user_can_interact) - VR.RegisterSignal(src, TYPE_PROC_REF(COMSIG_ATOM_EMAG_ACT, /datum/component/virtual_reality,you_only_live_once)) - VR.RegisterSignal(src, TYPE_PROC_REF(COMSIG_MACHINE_EJECT_OCCUPANT, /datum/component/virtual_reality,revert_to_reality)) - VR.RegisterSignal(src, TYPE_PROC_REF(COMSIG_PARENT_QDELETING, /datum/component/virtual_reality,machine_destroyed)) + VR.RegisterSignal(src, COMSIG_ATOM_EMAG_ACT, TYPE_PROC_REF(/datum/component/virtual_reality, you_only_live_once)) + VR.RegisterSignal(src, COMSIG_MACHINE_EJECT_OCCUPANT, TYPE_PROC_REF(/datum/component/virtual_reality, revert_to_reality)) + VR.RegisterSignal(src, COMSIG_PARENT_QDELETING, TYPE_PROC_REF(/datum/component/virtual_reality, machine_destroyed)) to_chat(vr_mob, span_notice("Transfer successful! You are now playing as [vr_mob] in VR!")) else to_chat(M, span_notice("Transfer failed! virtual reality data likely corrupted!")) diff --git a/code/modules/antagonists/cult/blood_magic.dm b/code/modules/antagonists/cult/blood_magic.dm index 87be7cece0c..3c49acf714f 100644 --- a/code/modules/antagonists/cult/blood_magic.dm +++ b/code/modules/antagonists/cult/blood_magic.dm @@ -268,7 +268,7 @@ SEND_SOUND(ranged_ability_user, sound('sound/effects/ghost.ogg',0,1,50)) var/image/C = image('icons/effects/cult_effects.dmi',H,"bloodsparkles", ABOVE_MOB_LAYER) add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/cult, "cult_apoc", C, FALSE) - addtimer(CALLBACK(H,TYPE_PROC_REF(/atom/,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/rune_spawn_action.dm b/code/modules/antagonists/cult/rune_spawn_action.dm index c9c6e3df544..76aa1969ca4 100644 --- a/code/modules/antagonists/cult/rune_spawn_action.dm +++ b/code/modules/antagonists/cult/rune_spawn_action.dm @@ -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, TYPE_PROC_REF(scribe_mod, target = owner, extra_checks = CALLBACK(owner, /mob,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 diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index 9eb30d3e08f..ed61bdbc6b6 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -994,7 +994,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,TYPE_PROC_REF(/atom/,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 @@ -1002,13 +1002,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,TYPE_PROC_REF(/atom/,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,TYPE_PROC_REF(/atom/,remove_alt_appearance,"cult_apoc",TRUE)), duration) + addtimer(CALLBACK(M,TYPE_PROC_REF(/atom/,remove_alt_appearance),"cult_apoc",TRUE), duration) images += C else to_chat(M, span_cultlarge("An Apocalypse Rune was invoked in the [place.name], it is no longer available as a summoning site!")) diff --git a/code/modules/awaymissions/gateway.dm b/code/modules/awaymissions/gateway.dm index a8a14ce0232..ca1852e7c10 100644 --- a/code/modules/awaymissions/gateway.dm +++ b/code/modules/awaymissions/gateway.dm @@ -89,7 +89,7 @@ GLOBAL_LIST_EMPTY(gateway_destinations) /datum/gateway_destination/gateway/post_transfer(atom/movable/AM) . = ..() - addtimer(CALLBACK(AM,TYPE_PROC_REF(/atom/movable,setDir,SOUTH),0)) + addtimer(CALLBACK(AM,TYPE_PROC_REF(/atom/movable,setDir),SOUTH),0) /* Special home destination, so we can check exile implants */ /datum/gateway_destination/gateway/home diff --git a/code/modules/clothing/gloves/_gloves.dm b/code/modules/clothing/gloves/_gloves.dm index eff5f0d260d..9bc690a856e 100644 --- a/code/modules/clothing/gloves/_gloves.dm +++ b/code/modules/clothing/gloves/_gloves.dm @@ -16,7 +16,7 @@ /obj/item/clothing/gloves/ComponentInitialize() . = ..() - RegisterSignal(src, TYPE_PROC_REF(COMSIG_COMPONENT_CLEAN_ACT, /atom,clean_blood)) + RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, TYPE_PROC_REF(/atom,clean_blood)) /obj/item/clothing/gloves/clean_blood(datum/source, strength) . = ..() diff --git a/code/modules/clothing/masks/_masks.dm b/code/modules/clothing/masks/_masks.dm index 105ed4a6bba..109eb17ab97 100644 --- a/code/modules/clothing/masks/_masks.dm +++ b/code/modules/clothing/masks/_masks.dm @@ -19,7 +19,7 @@ /obj/item/clothing/mask/equipped(mob/M, slot) . = ..() - if (slot == SLOT_WEAR_MASK && modifies_speech) + if (slot == SLOT_MASK && modifies_speech) RegisterSignal(M, COMSIG_MOB_SAY,PROC_REF(handle_speech)) else UnregisterSignal(M, COMSIG_MOB_SAY) diff --git a/code/modules/clothing/shoes/_shoes.dm b/code/modules/clothing/shoes/_shoes.dm index 29e2180187c..9de5d7af03b 100644 --- a/code/modules/clothing/shoes/_shoes.dm +++ b/code/modules/clothing/shoes/_shoes.dm @@ -33,7 +33,7 @@ /obj/item/clothing/shoes/ComponentInitialize() . = ..() - RegisterSignal(src, TYPE_PROC_REF(COMSIG_COMPONENT_CLEAN_ACT, /atom,clean_blood)) + RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, TYPE_PROC_REF(/atom,clean_blood)) /obj/item/clothing/shoes/examine(mob/user) . = ..() diff --git a/code/modules/mob/living/carbon/human/human.dm b/code/modules/mob/living/carbon/human/human.dm index 1140416cbcd..9a4e7922f0a 100644 --- a/code/modules/mob/living/carbon/human/human.dm +++ b/code/modules/mob/living/carbon/human/human.dm @@ -44,7 +44,7 @@ GLOBAL_VAR_INIT(crotch_call_cooldown, 0) if(CONFIG_GET(flag/disable_stambuffer)) enable_intentional_sprint_mode() - RegisterSignal(src, TYPE_PROC_REF(COMSIG_COMPONENT_CLEAN_ACT, /atom,clean_blood)) + RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, TYPE_PROC_REF(/atom,clean_blood)) GLOB.human_list += src // var/datum/atom_hud/data/human/genital/pornHud = GLOB.huds[GENITAL_PORNHUD] // pornHud.add_to_hud(src) diff --git a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm index c079b0fea7a..bcca020a9fb 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -103,7 +103,7 @@ . = ..() if(can_be_held) //icon/item state is defined in mob_holder/drone_worn_icon() - AddElement(/datum/element/mob_holder, TYPE_PROC_REF(null, 'icons/mob/clothing/head.dmi', 'icons/mob/inhands/clothing_righthand.dmi', 'icons/mob/inhands/clothing_lefthand.dmi', INV_SLOTBIT_HEAD, /datum/element/mob_holder,drone_worn_icon)) + AddElement(/datum/element/mob_holder, null, 'icons/mob/clothing/head.dmi', 'icons/mob/inhands/clothing_righthand.dmi', 'icons/mob/inhands/clothing_lefthand.dmi', INV_SLOTBIT_HEAD, TYPE_PROC_REF(/datum/element/mob_holder,drone_worn_icon)) /mob/living/simple_animal/drone/med_hud_set_health() var/image/holder = hud_list[DIAG_HUD] From 882e4d71a23a54eab9ade8bb1310d06564788e5d Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sat, 27 Jan 2024 00:12:31 +0000 Subject: [PATCH 13/52] Fixes one global proc ref error --- code/__HELPERS/game.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index d374e44cbee..dad45e17716 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -392,14 +392,14 @@ /proc/flick_overlay(image/I, list/show_to, duration) for(var/client/C in show_to) C.images += I - addtimer(CALLBACK(GLOBAL_PROC_REF(remove_images_from_clients), I, show_to), duration, TIMER_CLIENT_TIME) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(remove_images_from_clients), I, show_to), duration, TIMER_CLIENT_TIME) /proc/flick_overlay_global(image/I, list/show_to, duration) if(!show_to || !length(show_to) || !I) return for(var/client/add_to in show_to) add_to.images += I - addtimer(CALLBACK(GLOBAL_PROC_REF(remove_images_from_clients), I, show_to), duration, TIMER_CLIENT_TIME) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(remove_images_from_clients), I, show_to), duration, TIMER_CLIENT_TIME) /proc/flick_overlay_view(image/I, atom/target, duration) //wrapper for the above, flicks to everyone who can see the target atom var/list/viewing = list() From 302f48bbc05d4537fb0d48ad0e3d65cf48969097 Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sat, 27 Jan 2024 00:26:44 +0000 Subject: [PATCH 14/52] Somehow in some disgusting way one major error was solved... --- code/__DEFINES/callbacks.dm | 2 +- code/__DEFINES/cooldowns.dm | 4 +- code/__DEFINES/qdel.dm | 6 +- code/__HELPERS/unsorted.dm | 8 +-- .../configuration/configuration.dm | 2 +- code/datums/explosion.dm | 2 +- code/datums/traits/negative.dm | 4 +- code/game/gamemodes/game_mode.dm | 2 +- .../effect_system/effects_explosion.dm | 2 +- .../effects/spawners/xeno_egg_delivery.dm | 2 +- code/game/objects/items/devices/PDA/PDA.dm | 2 +- code/game/world.dm | 2 +- code/modules/admin/secrets.dm | 4 +- code/modules/admin/verbs/randomverbs.dm | 2 +- .../abductor/equipment/glands/plasma.dm | 2 +- .../clockcult/clock_effects/clock_overlay.dm | 2 +- code/modules/antagonists/cult/cult_comms.dm | 4 +- code/modules/antagonists/cult/runes.dm | 2 +- .../traitor/equipment/Malf_Modules.dm | 2 +- code/modules/awaymissions/capture_the_flag.dm | 8 +-- code/modules/balloon_alert/balloon_alert.dm | 2 +- code/modules/events/fake_virus.dm | 2 +- code/modules/events/pirates.dm | 4 +- code/modules/flufftext/Hallucination.dm | 2 +- .../kitchen_machinery/monkeyrecycler.dm | 2 +- code/modules/jobs/job_types/SS13/captain.dm | 2 +- code/modules/jobs/job_types/_job.dm | 2 +- code/modules/jobs/job_types/silicon.dm | 2 +- code/modules/mob/living/living_defense.dm | 4 +- .../mob/living/simple_animal/bot/mulebot.dm | 2 +- .../living/simple_animal/hostile/hostile.dm | 2 +- .../living/simple_animal/hostile/regalrat.dm | 4 +- code/modules/mob/mob.dm | 4 +- code/modules/power/rtg.dm | 2 +- code/modules/power/singularity/narsie.dm | 2 +- .../projectiles/ammunition/_ammunition.dm | 4 +- code/modules/projectiles/guns/ballistic.dm | 2 +- code/modules/projectiles/projectile/magic.dm | 4 +- .../reagents/reagent_containers/pill.dm | 2 +- code/modules/shuttle/arrivals.dm | 2 +- code/modules/surgery/organs/vocal_cords.dm | 66 +++++++++---------- .../code/datums/status_effects/chems.dm | 4 +- .../code/modules/mentor/mentorhelp.dm | 2 +- modular_sand/code/modules/mob/emote.dm | 2 +- 44 files changed, 95 insertions(+), 95 deletions(-) diff --git a/code/__DEFINES/callbacks.dm b/code/__DEFINES/callbacks.dm index c02e31c01df..21e8863458b 100644 --- a/code/__DEFINES/callbacks.dm +++ b/code/__DEFINES/callbacks.dm @@ -2,4 +2,4 @@ /// A shorthand for the callback datum, [documented here](datum/callback.html) #define CALLBACK new /datum/callback #define INVOKE_ASYNC world.ImmediateInvokeAsync -#define CALLBACK_NEW(typepath, args) CALLBACK(GLOBAL_PROC_REF(___callbacknew), typepath, args) +#define CALLBACK_NEW(typepath, args) CALLBACK(usr, GLOBAL_PROC_REF(___callbacknew), typepath, args) diff --git a/code/__DEFINES/cooldowns.dm b/code/__DEFINES/cooldowns.dm index c31d5e85d10..c5852252205 100644 --- a/code/__DEFINES/cooldowns.dm +++ b/code/__DEFINES/cooldowns.dm @@ -34,7 +34,7 @@ #define COMSIG_CD_STOP(cd_index) "cooldown_[cd_index]" #define COMSIG_CD_RESET(cd_index) "cd_reset_[cd_index]" -#define TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(GLOBAL_PROC_REF(end_cooldown), cd_source, cd_index), cd_time)) +#define TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(usr, GLOBAL_PROC_REF(end_cooldown), cd_source, cd_index), cd_time)) #define TIMER_COOLDOWN_CHECK(cd_source, cd_index) LAZYACCESS(cd_source.cooldowns, cd_index) @@ -47,7 +47,7 @@ * A bit more expensive than the regular timers, but can be reset before they end and the time left can be checked. */ -#define S_TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(GLOBAL_PROC_REF(end_cooldown), cd_source, cd_index), cd_time, TIMER_STOPPABLE)) +#define S_TIMER_COOLDOWN_START(cd_source, cd_index, cd_time) LAZYSET(cd_source.cooldowns, cd_index, addtimer(CALLBACK(usr, GLOBAL_PROC_REF(end_cooldown), cd_source, cd_index), cd_time, TIMER_STOPPABLE)) #define S_TIMER_COOLDOWN_RESET(cd_source, cd_index) reset_cooldown(cd_source, cd_index) diff --git a/code/__DEFINES/qdel.dm b/code/__DEFINES/qdel.dm index 25647505d79..baf66055524 100644 --- a/code/__DEFINES/qdel.dm +++ b/code/__DEFINES/qdel.dm @@ -47,11 +47,11 @@ #define QDELETED(X) (!X || QDELING(X)) #define QDESTROYING(X) (!X || X.gc_destroyed == GC_CURRENTLY_BEING_QDELETED) -#define QDEL_IN(item, time) addtimer(CALLBACK(GLOBAL_PROC_REF(qdel), (time) > GC_FILTER_QUEUE ? WEAKREF(item) : item), time, TIMER_STOPPABLE) -#define QDEL_IN_CLIENT_TIME(item, time) addtimer(CALLBACK(GLOBAL_PROC_REF(qdel), item), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) +#define QDEL_IN(item, time) addtimer(CALLBACK(usr, GLOBAL_PROC_REF(qdel), (time) > GC_FILTER_QUEUE ? WEAKREF(item) : item), time, TIMER_STOPPABLE) +#define QDEL_IN_CLIENT_TIME(item, time) addtimer(CALLBACK(usr, GLOBAL_PROC_REF(qdel), item), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) #define QDEL_NULL(item) qdel(item); item = null #define QDEL_LIST(L) if(L) { for(var/I in L) qdel(I); L.Cut(); } -#define QDEL_LIST_IN(L, time) addtimer(CALLBACK(GLOBAL_PROC_REF(______qdel_list_wrapper), L), time, TIMER_STOPPABLE) +#define QDEL_LIST_IN(L, time) addtimer(CALLBACK(usr, GLOBAL_PROC_REF(______qdel_list_wrapper), L), time, TIMER_STOPPABLE) #define QDEL_LIST_ASSOC(L) if(L) { for(var/I in L) { qdel(L[I]); qdel(I); } L.Cut(); } #define QDEL_LIST_ASSOC_VAL(L) if(L) { for(var/I in L) qdel(L[I]); L.Cut(); } diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index af7614c9434..b97a3bdbfb1 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1373,9 +1373,9 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) #define NAMEOF_STATIC(datum, X) (#X || ##datum.##X) #endif -#define VARSET_LIST_CALLBACK(target, var_name, var_value) CALLBACK(GLOBAL_PROC_REF(___callbackvarset), ##target, ##var_name, ##var_value) +#define VARSET_LIST_CALLBACK(target, var_name, var_value) CALLBACK(usr, GLOBAL_PROC_REF(___callbackvarset), ##target, ##var_name, ##var_value) //dupe code because dm can't handle 3 level deep macros -#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(GLOBAL_PROC_REF(___callbackvarset), ##datum, NAMEOF_STATIC(##datum, ##var), ##var_value) +#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(usr, GLOBAL_PROC_REF(___callbackvarset), ##datum, NAMEOF_STATIC(##datum, ##var), ##var_value) /proc/___callbackvarset(list_or_datum, var_name, var_value) if(length(list_or_datum)) @@ -1387,8 +1387,8 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) else D.vars[var_name] = var_value -#define TRAIT_CALLBACK_ADD(target, trait, source) CALLBACK(GLOBAL_PROC_REF(___TraitAdd), ##target, ##trait, ##source) -#define TRAIT_CALLBACK_REMOVE(target, trait, source) CALLBACK(GLOBAL_PROC_REF(___TraitRemove), ##target, ##trait, ##source) +#define TRAIT_CALLBACK_ADD(target, trait, source) CALLBACK(usr, GLOBAL_PROC_REF(___TraitAdd), ##target, ##trait, ##source) +#define TRAIT_CALLBACK_REMOVE(target, trait, source) CALLBACK(usr, GLOBAL_PROC_REF(___TraitRemove), ##target, ##trait, ##source) ///DO NOT USE ___TraitAdd OR ___TraitRemove as a replacement for ADD_TRAIT / REMOVE_TRAIT defines. To be used explicitly for callback. /proc/___TraitAdd(target,trait,source) diff --git a/code/controllers/configuration/configuration.dm b/code/controllers/configuration/configuration.dm index 87085dec46d..256dd871672 100644 --- a/code/controllers/configuration/configuration.dm +++ b/code/controllers/configuration/configuration.dm @@ -460,4 +460,4 @@ Example config: //Message admins when you can. /datum/controller/configuration/proc/DelayedMessageAdmins(text) - addtimer(CALLBACK(GLOBAL_PROC_REF(message_admins), text), 0) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(message_admins), text), 0) diff --git a/code/datums/explosion.dm b/code/datums/explosion.dm index 58c7922b056..420e7f37cc4 100644 --- a/code/datums/explosion.dm +++ b/code/datums/explosion.dm @@ -405,7 +405,7 @@ GLOBAL_LIST_EMPTY(explosions) else continue - addtimer(CALLBACK(GLOBAL_PROC_REF(wipe_color_and_text), wipe_colours), 100) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(wipe_color_and_text), wipe_colours), 100) /proc/wipe_color_and_text(list/atom/wiping) for(var/i in wiping) diff --git a/code/datums/traits/negative.dm b/code/datums/traits/negative.dm index a7ae3efbc0e..923b94ea218 100644 --- a/code/datums/traits/negative.dm +++ b/code/datums/traits/negative.dm @@ -504,7 +504,7 @@ Edit: TK~ This is the dumbest fucking shit I've ever seen in my life. This isn if(prob(85) || (istype(mind_check) && mind_check.mind)) return - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), quirk_holder, span_smallnotice("You make eye contact with [A].")), 3) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), quirk_holder, span_smallnotice("You make eye contact with [A].")), 3) */ /datum/quirk/social_anxiety/proc/eye_contact(datum/source, mob/living/other_mob, triggering_examiner) if(prob(75)) @@ -527,7 +527,7 @@ Edit: TK~ This is the dumbest fucking shit I've ever seen in my life. This isn msg += "causing you to freeze up!" SEND_SIGNAL(quirk_holder, COMSIG_ADD_MOOD_EVENT, "anxiety_eyecontact", /datum/mood_event/anxiety_eyecontact) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), quirk_holder, span_userdanger("[msg]")), 3) // so the examine signal has time to fire and this will print after + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), quirk_holder, span_userdanger("[msg]")), 3) // so the examine signal has time to fire and this will print after return COMSIG_BLOCK_EYECONTACT /datum/mood_event/anxiety_eyecontact diff --git a/code/game/gamemodes/game_mode.dm b/code/game/gamemodes/game_mode.dm index 90e41961597..270e9e20711 100644 --- a/code/game/gamemodes/game_mode.dm +++ b/code/game/gamemodes/game_mode.dm @@ -89,7 +89,7 @@ //finalize_monster_hunters() Disabled for now if(!report) report = !CONFIG_GET(flag/no_intercept_report) - addtimer(CALLBACK(GLOBAL_PROC_REF(display_roundstart_logout_report)), ROUNDSTART_LOGOUT_REPORT_TIME) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(display_roundstart_logout_report)), ROUNDSTART_LOGOUT_REPORT_TIME) if(prob(20)) //CIT CHANGE - adds a 20% chance for the security level to be the opposite of what it normally is flipseclevel = TRUE diff --git a/code/game/objects/effects/effect_system/effects_explosion.dm b/code/game/objects/effects/effect_system/effects_explosion.dm index 6c5f0648079..748661e646d 100644 --- a/code/game/objects/effects/effect_system/effects_explosion.dm +++ b/code/game/objects/effects/effect_system/effects_explosion.dm @@ -17,7 +17,7 @@ var/direct = pick(GLOB.alldirs) var/steps_amt = pick(1;25,2;50,3,4;200) for(var/j in 1 to steps_amt) - addtimer(CALLBACK(GLOBAL_PROC_REF(_step), expl, direct), j) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(_step), expl, direct), j) /obj/effect/explosion name = "fire" diff --git a/code/game/objects/effects/spawners/xeno_egg_delivery.dm b/code/game/objects/effects/spawners/xeno_egg_delivery.dm index 50b1a1cf8ac..fd93bebf02d 100644 --- a/code/game/objects/effects/spawners/xeno_egg_delivery.dm +++ b/code/game/objects/effects/spawners/xeno_egg_delivery.dm @@ -15,5 +15,5 @@ message_admins("An alien egg has been delivered to [ADMIN_VERBOSEJMP(T)].") log_game("An alien egg has been delivered to [AREACOORD(T)]") var/message = "Attention [station_name()], we have entrusted you with a research specimen in [get_area_name(T, TRUE)]. Remember to follow all safety precautions when dealing with the specimen." - SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(_addtimer), CALLBACK(GLOBAL_PROC_REF(print_command_report), message), announcement_time)) + SSticker.OnRoundstart(CALLBACK(usr, GLOBAL_PROC_REF(_addtimer), CALLBACK(usr, GLOBAL_PROC_REF(print_command_report), message), announcement_time)) return INITIALIZE_HINT_QDEL diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index fa3f6bf7923..f9e0b660874 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -600,7 +600,7 @@ GLOBAL_LIST_EMPTY(PDAs) update_label() if (!silent) playsound(src, 'sound/machines/terminal_processing.ogg', 15, 1) - addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, 'sound/machines/terminal_success.ogg', 15, 1), 13) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(playsound), src, 'sound/machines/terminal_success.ogg', 15, 1), 13) if("Eject")//Ejects the cart, only done from hub. if (!isnull(cartridge)) diff --git a/code/game/world.dm b/code/game/world.dm index 6e6dd1f4178..1a073ea500b 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -89,7 +89,7 @@ GLOBAL_LIST(topic_status_cache) #else cb = VARSET_CALLBACK(SSticker, force_ending, TRUE) #endif - SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(_addtimer), cb, 10 SECONDS)) + SSticker.OnRoundstart(CALLBACK(usr, GLOBAL_PROC_REF(_addtimer), cb, 10 SECONDS)) /world/proc/SetupLogs() var/override_dir = params[OVERRIDE_LOG_DIRECTORY_PARAMETER] diff --git a/code/modules/admin/secrets.dm b/code/modules/admin/secrets.dm index e1a8446aef4..c17cdb946a8 100644 --- a/code/modules/admin/secrets.dm +++ b/code/modules/admin/secrets.dm @@ -699,9 +699,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_REF(doPortalSpawn), get_random_station_turf(), pathToSpawn, length(ghostcandidates), storm, ghostcandidates, outfit), i*prefs["delay"]["value"]) + addtimer(CALLBACK(usr, 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_REF(doPortalSpawn), get_random_station_turf(), pathToSpawn, prefs["amount"]["value"], storm, null, outfit), i*prefs["delay"]["value"]) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(doPortalSpawn), get_random_station_turf(), pathToSpawn, prefs["amount"]["value"], storm, null, outfit), i*prefs["delay"]["value"]) if(E) E.processing = FALSE diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm index 27d206c8960..cbe4fbc3e62 100644 --- a/code/modules/admin/verbs/randomverbs.dm +++ b/code/modules/admin/verbs/randomverbs.dm @@ -1526,7 +1526,7 @@ GLOBAL_LIST_EMPTY(custom_outfits) //Admin created outfits var/shots_this_limb = 0 for(var/t in shuffle(open_adj_turfs)) var/turf/iter_turf = t - addtimer(CALLBACK(GLOBAL_PROC_REF(firing_squad), dude, iter_turf, slice_part.body_zone, wound_bonuses[wound_bonus_rep], damage), delay_counter) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(firing_squad), dude, iter_turf, slice_part.body_zone, wound_bonuses[wound_bonus_rep], damage), delay_counter) delay_counter += delay_per_shot shots_this_limb++ if(shots_this_limb > shots_per_limb_per_rep) diff --git a/code/modules/antagonists/abductor/equipment/glands/plasma.dm b/code/modules/antagonists/abductor/equipment/glands/plasma.dm index 653faa1eb85..1f82dd51917 100644 --- a/code/modules/antagonists/abductor/equipment/glands/plasma.dm +++ b/code/modules/antagonists/abductor/equipment/glands/plasma.dm @@ -9,7 +9,7 @@ /obj/item/organ/heart/gland/plasma/activate() to_chat(owner, span_warning("You feel bloated.")) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), owner, span_userdanger("A massive stomachache overcomes you.")), 150) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), owner, span_userdanger("A massive stomachache overcomes you.")), 150) addtimer(CALLBACK(src,PROC_REF(vomit_plasma)), 200) /obj/item/organ/heart/gland/plasma/proc/vomit_plasma() diff --git a/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm b/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm index ce9374f60ba..847b4a460ff 100644 --- a/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm +++ b/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm @@ -35,7 +35,7 @@ /obj/effect/clockwork/overlay/wall/Initialize() . = ..() queue_smooth_neighbors(src) - addtimer(CALLBACK(GLOBAL_PROC_REF(queue_smooth), src), 1) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(queue_smooth), src), 1) /obj/effect/clockwork/overlay/wall/Destroy() queue_smooth_neighbors(src) diff --git a/code/modules/antagonists/cult/cult_comms.dm b/code/modules/antagonists/cult/cult_comms.dm index ed85f86b185..28dea20c626 100644 --- a/code/modules/antagonists/cult/cult_comms.dm +++ b/code/modules/antagonists/cult/cult_comms.dm @@ -290,7 +290,7 @@ B.current.client.images += C.cult_team.blood_target_image attached_action.owner.update_action_buttons_icon() remove_ranged_ability(span_cult("The marking rite is complete! It will last for 90 seconds.")) - C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target),C.cult_team), 900, TIMER_STOPPABLE) + C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(usr, GLOBAL_PROC_REF(reset_blood_target),C.cult_team), 900, TIMER_STOPPABLE) return TRUE return FALSE @@ -377,7 +377,7 @@ desc = "Remove the Blood Mark you previously set." button_icon_state = "emp" owner.update_action_buttons_icon() - C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(GLOBAL_PROC_REF(reset_blood_target),C.cult_team), base_cooldown, TIMER_STOPPABLE) + C.cult_team.blood_target_reset_timer = addtimer(CALLBACK(usr, GLOBAL_PROC_REF(reset_blood_target),C.cult_team), base_cooldown, TIMER_STOPPABLE) addtimer(CALLBACK(src,PROC_REF(reset_button)), base_cooldown) diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index ed61bdbc6b6..72e479e2dd2 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -990,7 +990,7 @@ structure_check() searches for nearby cultist structures required for the invoca if(ishuman(M)) if(!iscultist(M)) AH.remove_hud_from(M) - addtimer(CALLBACK(GLOBAL_PROC_REF(hudFix), M), duration) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(hudFix), M), duration) var/image/A = image('icons/mob/mob.dmi',M,"cultist", ABOVE_MOB_LAYER) A.override = 1 add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/noncult, "human_apoc", A, FALSE) diff --git a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm index d6f2d91430e..c37250ca939 100644 --- a/code/modules/antagonists/traitor/equipment/Malf_Modules.dm +++ b/code/modules/antagonists/traitor/equipment/Malf_Modules.dm @@ -457,7 +457,7 @@ GLOBAL_LIST_INIT(blacklisted_malf_machines, typecacheof(list( minor_announce("Hostile runtime detected in door controllers. Isolation lockdown protocols are now in effect. Please remain calm.","Network Alert:", TRUE) to_chat(owner, span_danger("Lockdown initiated. Network reset in 90 seconds.")) - addtimer(CALLBACK(GLOBAL_PROC_REF(minor_announce), + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(minor_announce), "Automatic system reboot complete. Have a secure day.", "Network reset:"), 900) diff --git a/code/modules/awaymissions/capture_the_flag.dm b/code/modules/awaymissions/capture_the_flag.dm index a487884360b..c8a55b0c2c3 100644 --- a/code/modules/awaymissions/capture_the_flag.dm +++ b/code/modules/awaymissions/capture_the_flag.dm @@ -385,7 +385,7 @@ /obj/item/gun/ballistic/automatic/pistol/deagle/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /obj/item/ammo_casing/a50/ctf projectile_type = /obj/item/projectile/bullet/ctf @@ -405,14 +405,14 @@ /obj/item/gun/ballistic/automatic/laser/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /obj/item/ammo_box/magazine/recharge/ctf ammo_type = /obj/item/ammo_casing/caseless/laser/ctf /obj/item/ammo_box/magazine/recharge/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /obj/item/ammo_casing/caseless/laser/ctf projectile_type = /obj/item/projectile/beam/ctf @@ -477,7 +477,7 @@ /obj/item/claymore/ctf/dropped(mob/user) . = ..() - addtimer(CALLBACK(GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(ctf_floor_vanish), src), 1) /datum/outfit/ctf name = "CTF" diff --git a/code/modules/balloon_alert/balloon_alert.dm b/code/modules/balloon_alert/balloon_alert.dm index 461ec9d7d6c..5cd8e4b755c 100644 --- a/code/modules/balloon_alert/balloon_alert.dm +++ b/code/modules/balloon_alert/balloon_alert.dm @@ -45,7 +45,7 @@ easing = CUBIC_EASING | EASE_IN, ) - addtimer(CALLBACK(GLOBAL_PROC_REF(remove_image_from_client), balloon_alert, viewer_client), BALLOON_TEXT_TOTAL_LIFETIME) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(remove_image_from_client), balloon_alert, viewer_client), BALLOON_TEXT_TOTAL_LIFETIME) #undef BALLOON_TEXT_FADE_TIME #undef BALLOON_TEXT_FULLY_VISIBLE_TIME diff --git a/code/modules/events/fake_virus.dm b/code/modules/events/fake_virus.dm index bc4c2dd5e99..2bbdfb0e806 100644 --- a/code/modules/events/fake_virus.dm +++ b/code/modules/events/fake_virus.dm @@ -24,7 +24,7 @@ for(var/i=1; i<=rand(1,defacto_min); i++) var/mob/living/carbon/human/onecoughman = pick(fake_virus_victims) if(prob(25))//1/4 odds to get a spooky message instead of coughing out loud - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), onecoughman, span_warning("[pick("Your head hurts.", "Your head pounds.")]")), rand(30,150)) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), onecoughman, span_warning("[pick("Your head hurts.", "Your head pounds.")]")), rand(30,150)) else addtimer(CALLBACK(onecoughman, .mob/proc/emote, pick("cough", "sniff", "sneeze")), rand(30,150))//deliver the message with a slightly randomized time interval so there arent multiple people coughing at the exact same time fake_virus_victims -= onecoughman diff --git a/code/modules/events/pirates.dm b/code/modules/events/pirates.dm index c26e61d1ea5..ffd813628c2 100644 --- a/code/modules/events/pirates.dm +++ b/code/modules/events/pirates.dm @@ -53,8 +53,8 @@ // threat_msg.title = "Business proposition" // threat_msg.content = "Ahoy! This be the [ship_name]. Cough up [payoff] credits or you'll walk the plank." // threat_msg.possible_answers = list("We'll pay.","We will not be extorted.") - threat_msg.answer_callback = CALLBACK(GLOBAL_PROC_REF(pirates_answered), threat_msg, payoff, ship_name, initial_send_time, response_max_time, ship_template) - addtimer(CALLBACK(GLOBAL_PROC_REF(spawn_pirates), threat_msg, ship_template, FALSE), response_max_time) + threat_msg.answer_callback = CALLBACK(usr, GLOBAL_PROC_REF(pirates_answered), threat_msg, payoff, ship_name, initial_send_time, response_max_time, ship_template) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(spawn_pirates), threat_msg, ship_template, FALSE), response_max_time) SScommunications.send_message(threat_msg,unique = TRUE) /proc/pirates_answered(datum/comm_message/threat_msg, payoff, ship_name, initial_send_time, response_max_time, ship_template) diff --git a/code/modules/flufftext/Hallucination.dm b/code/modules/flufftext/Hallucination.dm index 480286faba1..10b0e1d418e 100644 --- a/code/modules/flufftext/Hallucination.dm +++ b/code/modules/flufftext/Hallucination.dm @@ -1114,7 +1114,7 @@ GLOBAL_LIST_INIT(hallucination_list, list( return to_chat(target, span_userdanger("You fall into the chasm!")) target.DefaultCombatKnockdown(40) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), target, span_notice("It's surprisingly shallow.")), 15) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), target, span_notice("It's surprisingly shallow.")), 15) QDEL_IN(src, 30) /obj/effect/hallucination/danger/anomaly diff --git a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm index c1f6f8d8036..e57b2018506 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/monkeyrecycler.dm @@ -70,7 +70,7 @@ use_power(500) grinded++ addtimer(VARSET_CALLBACK(src, pixel_x, initial(pixel_x))) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), user, span_notice("The machine now has [grinded] monkey\s worth of material stored."))) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), user, span_notice("The machine now has [grinded] monkey\s worth of material stored."))) /obj/machinery/monkey_recycler/interact(mob/user) if(grinded >= required_grind) diff --git a/code/modules/jobs/job_types/SS13/captain.dm b/code/modules/jobs/job_types/SS13/captain.dm index 4afff036a9e..228f9f1efe1 100644 --- a/code/modules/jobs/job_types/SS13/captain.dm +++ b/code/modules/jobs/job_types/SS13/captain.dm @@ -37,7 +37,7 @@ /datum/job/captain/announce(mob/living/carbon/human/H) ..() - SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(minor_announce), "Captain [H.real_name] on deck!")) + SSticker.OnRoundstart(CALLBACK(usr, GLOBAL_PROC_REF(minor_announce), "Captain [H.real_name] on deck!")) /datum/outfit/job/captain name = "Captain" diff --git a/code/modules/jobs/job_types/_job.dm b/code/modules/jobs/job_types/_job.dm index a4a87f34388..15fb059370a 100644 --- a/code/modules/jobs/job_types/_job.dm +++ b/code/modules/jobs/job_types/_job.dm @@ -215,7 +215,7 @@ /datum/job/proc/announce_head(mob/living/carbon/human/H, 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_REF(_addtimer), CALLBACK(pick(GLOB.announcement_systems), /obj/machinery/announcement_system/proc/announce, "NEWHEAD", H.real_name, H.job, channels), 1)) + SSticker.OnRoundstart(CALLBACK(usr, GLOBAL_PROC_REF(_addtimer), CALLBACK(pick(GLOB.announcement_systems), /obj/machinery/announcement_system/proc/announce, "NEWHEAD", H.real_name, 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) diff --git a/code/modules/jobs/job_types/silicon.dm b/code/modules/jobs/job_types/silicon.dm index 1ce7964b0d2..31b2c8589e9 100644 --- a/code/modules/jobs/job_types/silicon.dm +++ b/code/modules/jobs/job_types/silicon.dm @@ -69,7 +69,7 @@ AI /datum/job/ai/announce(mob/living/silicon/ai/AI) . = ..() - SSticker.OnRoundstart(CALLBACK(GLOBAL_PROC_REF(minor_announce), "[AI] has been downloaded to an empty bluespace-networked AI core at [AREACOORD(AI)].")) + SSticker.OnRoundstart(CALLBACK(usr, 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) diff --git a/code/modules/mob/living/living_defense.dm b/code/modules/mob/living/living_defense.dm index 5f597decb8a..a5931eb55f5 100644 --- a/code/modules/mob/living/living_defense.dm +++ b/code/modules/mob/living/living_defense.dm @@ -537,8 +537,8 @@ if((GLOB.cult_narsie.souls == GLOB.cult_narsie.soul_goal) && (GLOB.cult_narsie.resolved == FALSE)) GLOB.cult_narsie.resolved = TRUE sound_to_playing_players('sound/machines/alarm.ogg') - addtimer(CALLBACK(GLOBAL_PROC_REF(cult_ending_helper), 1), 120) - addtimer(CALLBACK(GLOBAL_PROC_REF(ending_helper)), 270) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(cult_ending_helper), 1), 120) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(ending_helper)), 270) if(client) INVOKE_ASYNC(GLOBAL_PROC_REF(makeNewConstruct), /mob/living/simple_animal/hostile/construct/harvester, src, null, TRUE) // must pass keyword args explicitly else diff --git a/code/modules/mob/living/simple_animal/bot/mulebot.dm b/code/modules/mob/living/simple_animal/bot/mulebot.dm index 6b947a5f96d..6ac62966dc7 100644 --- a/code/modules/mob/living/simple_animal/bot/mulebot.dm +++ b/code/modules/mob/living/simple_animal/bot/mulebot.dm @@ -476,7 +476,7 @@ num_steps-- if(mode != BOT_IDLE) var/process_timer = addtimer(CALLBACK(src,PROC_REF(process_bot)), 2, TIMER_LOOP|TIMER_STOPPABLE) - addtimer(CALLBACK(GLOBAL_PROC_REF(deltimer), process_timer), (num_steps*2) + 1) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(deltimer), process_timer), (num_steps*2) + 1) /mob/living/simple_animal/bot/mulebot/proc/process_bot() if(!on || client) diff --git a/code/modules/mob/living/simple_animal/hostile/hostile.dm b/code/modules/mob/living/simple_animal/hostile/hostile.dm index 635724f31d0..b126206d3ef 100644 --- a/code/modules/mob/living/simple_animal/hostile/hostile.dm +++ b/code/modules/mob/living/simple_animal/hostile/hostile.dm @@ -688,7 +688,7 @@ ThrowSomething(A) ranged_cooldown = world.time + ranged_cooldown_time if(sound_after_shooting) - addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, sound_after_shooting, 100, 0, 0), sound_after_shooting_delay, TIMER_STOPPABLE) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(playsound), src, sound_after_shooting, 100, 0, 0), sound_after_shooting_delay, TIMER_STOPPABLE) if(projectiletype) if(LAZYLEN(variation_list[MOB_PROJECTILE]) >= 2) // Gotta have multiple different projectiles to cycle through projectiletype = vary_from_list(variation_list[MOB_PROJECTILE], TRUE) diff --git a/code/modules/mob/living/simple_animal/hostile/regalrat.dm b/code/modules/mob/living/simple_animal/hostile/regalrat.dm index 6b900c60028..a7797680635 100644 --- a/code/modules/mob/living/simple_animal/hostile/regalrat.dm +++ b/code/modules/mob/living/simple_animal/hostile/regalrat.dm @@ -247,13 +247,13 @@ MOB_MINIMUM_DISTANCE_CHANGE_PER_TURN_CHANCE(100), ) -/mob/living/simple_animal/hostile/rat/Initialize() +/mob/living/simple_animal/hostile/rat/Initialize(mapload) . = ..() if(cheesy) SSmobs.cheeserats += src AddComponent(/datum/component/swarming) AddElement(/datum/element/mob_holder, "mouse_gray") - if(!is_smol) + if(!is_smol && !mapload) do_alert_animation(src) resize = 1.5 update_transform() diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index c7d69feb8a4..fb4fec521fa 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -454,13 +454,13 @@ mob/visible_message(message, self_message, blind_message, vision_distance = DEFA if(!istype(examined_carbon) || (!(examined_carbon.wear_mask && examined_carbon.wear_mask.flags_inv & HIDEFACE) && !(examined_carbon.head && examined_carbon.head.flags_inv & HIDEFACE))) if(SEND_SIGNAL(src, COMSIG_MOB_EYECONTACT, examined_mob, TRUE) != COMSIG_BLOCK_EYECONTACT) var/msg = span_smallnotice("You make eye contact with [examined_mob].") - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), src, msg), 3) // so the examine signal has time to fire and this will print after + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), src, msg), 3) // so the examine signal has time to fire and this will print after var/mob/living/carbon/us_as_carbon = src // i know >casting as subtype, but this isn't really an inheritable check if(!istype(us_as_carbon) || (!(us_as_carbon.wear_mask && us_as_carbon.wear_mask.flags_inv & HIDEFACE) && !(us_as_carbon.head && us_as_carbon.head.flags_inv & HIDEFACE))) if(SEND_SIGNAL(examined_mob, COMSIG_MOB_EYECONTACT, src, FALSE) != COMSIG_BLOCK_EYECONTACT) var/msg = span_smallnotice("[src] makes eye contact with you.") - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), examined_mob, msg), 3) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), examined_mob, msg), 3) //same as above //note: ghosts can point, this is intended diff --git a/code/modules/power/rtg.dm b/code/modules/power/rtg.dm index 0e4c7fb4cda..41d8aecf637 100644 --- a/code/modules/power/rtg.dm +++ b/code/modules/power/rtg.dm @@ -76,7 +76,7 @@ span_italic("You hear a loud electrical crack!")) playsound(src.loc, 'sound/magic/lightningshock.ogg', 100, 1, extrarange = 5) tesla_zap(src, 5, power_gen * 0.05) - addtimer(CALLBACK(GLOBAL_PROC_REF(explosion), get_turf(src), 2, 3, 4, 8), 100) // Not a normal explosion. + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(explosion), get_turf(src), 2, 3, 4, 8), 100) // Not a normal explosion. /obj/machinery/power/rtg/abductor/bullet_act(obj/item/projectile/Proj) . = ..() diff --git a/code/modules/power/singularity/narsie.dm b/code/modules/power/singularity/narsie.dm index d6b6015e08d..c901cbdda86 100644 --- a/code/modules/power/singularity/narsie.dm +++ b/code/modules/power/singularity/narsie.dm @@ -82,7 +82,7 @@ if(resolved == FALSE) resolved = TRUE sound_to_playing_players('sound/machines/alarm.ogg') - addtimer(CALLBACK(GLOBAL_PROC_REF(cult_ending_helper)), 120) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(cult_ending_helper)), 120) /obj/singularity/narsie/large/cult/Destroy() GLOB.cult_narsie = null diff --git a/code/modules/projectiles/ammunition/_ammunition.dm b/code/modules/projectiles/ammunition/_ammunition.dm index 1f794a88f50..cf36d77e859 100644 --- a/code/modules/projectiles/ammunition/_ammunition.dm +++ b/code/modules/projectiles/ammunition/_ammunition.dm @@ -212,9 +212,9 @@ return var/turf/this_turf_here = get_turf(src) if(still_warm && this_turf_here && this_turf_here.bullet_sizzle) - addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, 'sound/items/welder.ogg', 20, 1), bounce_delay) //If the turf is made of water and the shell casing is still hot, make a sizzling sound when it's ejected. + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(playsound), src, 'sound/items/welder.ogg', 20, 1), bounce_delay) //If the turf is made of water and the shell casing is still hot, make a sizzling sound when it's ejected. else if(this_turf_here && this_turf_here.bullet_bounce_sound) - addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, this_turf_here.bullet_bounce_sound, 60, 1), bounce_delay) //Soft / non-solid turfs that shouldn't make a sound when a shell casing is ejected over them. + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(playsound), src, this_turf_here.bullet_bounce_sound, 60, 1), bounce_delay) //Soft / non-solid turfs that shouldn't make a sound when a shell casing is ejected over them. /obj/item/ammo_casing/proc/get_casing_destination(eject_direction, max_dist = 6, max_spread = 2) if(!eject_direction) diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm index 39b359b1365..ad3926f0bc9 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/ballistic.dm @@ -146,7 +146,7 @@ GLOBAL_LIST_EMPTY(gun_accepted_magazines) playsound(src, "gun_insert_full_magazine", 70, 1) if(!chambered) chamber_round() - addtimer(CALLBACK(GLOBAL_PROC_REF(playsound), src, 'sound/weapons/gun_chamber_round.ogg', 100, 1), 3) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(playsound), src, 'sound/weapons/gun_chamber_round.ogg', 100, 1), 3) else playsound(src, "gun_insert_empty_magazine", 70, 1) new_mag.update_icon() diff --git a/code/modules/projectiles/projectile/magic.dm b/code/modules/projectiles/projectile/magic.dm index 72192fbcf7a..dac29c5011d 100644 --- a/code/modules/projectiles/projectile/magic.dm +++ b/code/modules/projectiles/projectile/magic.dm @@ -396,7 +396,7 @@ /obj/structure/closet/decay/proc/decay() animate(src, alpha = 0, time = 30) - addtimer(CALLBACK(GLOBAL_PROC_REF(qdel), src), 30) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(qdel), src), 30) /obj/structure/closet/decay/open(mob/living/user) . = ..() @@ -505,7 +505,7 @@ return BULLET_ACT_BLOCK var/turf/T = get_turf(target) for(var/i=0, i<50, i+=10) - addtimer(CALLBACK(GLOBAL_PROC_REF(explosion), T, -1, exp_heavy, exp_light, exp_flash, FALSE, FALSE, exp_fire), i) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(explosion), T, -1, exp_heavy, exp_light, exp_flash, FALSE, FALSE, exp_fire), i) /obj/item/projectile/magic/aoe/fireball/lowpower name = "bolt of fireball" diff --git a/code/modules/reagents/reagent_containers/pill.dm b/code/modules/reagents/reagent_containers/pill.dm index a8041d7149f..febe361aa0a 100644 --- a/code/modules/reagents/reagent_containers/pill.dm +++ b/code/modules/reagents/reagent_containers/pill.dm @@ -51,7 +51,7 @@ var/makes_me_think = pick(strings("redpill.json", "redpill_questions")) if(icon_state == "pill4" && prob(5)) //you take the red pill - you stay in Wonderland, and I show you how deep the rabbit hole goes - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), M, span_notice("[makes_me_think]")), 50) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), M, span_notice("[makes_me_think]")), 50) log_combat(user, M, "fed", reagents.log_list()) if(reagents.total_volume) diff --git a/code/modules/shuttle/arrivals.dm b/code/modules/shuttle/arrivals.dm index 2b41637c976..92284a45957 100644 --- a/code/modules/shuttle/arrivals.dm +++ b/code/modules/shuttle/arrivals.dm @@ -197,7 +197,7 @@ if(mode != SHUTTLE_CALL) AnnounceArrival(mob, rank) else - LAZYADD(queued_announces, CALLBACK(GLOBAL_PROC_REF(AnnounceArrival), mob, rank)) + LAZYADD(queued_announces, CALLBACK(usr, GLOBAL_PROC_REF(AnnounceArrival), mob, rank)) /obj/docking_port/mobile/arrivals/vv_edit_var(var_name, var_value) switch(var_name) diff --git a/code/modules/surgery/organs/vocal_cords.dm b/code/modules/surgery/organs/vocal_cords.dm index 4147019546d..8e463ddbd66 100644 --- a/code/modules/surgery/organs/vocal_cords.dm +++ b/code/modules/surgery/organs/vocal_cords.dm @@ -405,7 +405,7 @@ for(var/iter in 1 to 5 * power_multiplier) for(var/V in listeners) var/mob/living/L = V - addtimer(CALLBACK(GLOBAL_PROC_REF(_step), L, direction? direction : pick(GLOB.cardinals)), 10 * (iter - 1)) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(_step), L, direction? direction : pick(GLOB.cardinals)), 10 * (iter - 1)) //WALK else if((findtext(message, walk_words))) @@ -733,7 +733,7 @@ else E.enthrallTally += power_multiplier*1.25 //thinking about it, I don't know how this can proc if(E.lewd) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_nicegreen("[E.enthrallGender] is so nice to listen to.")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, span_nicegreen("[E.enthrallGender] is so nice to listen to.")), 5) E.cooldown += 1 //REWARD mixable works @@ -745,13 +745,13 @@ if(L == user) continue if (E.lewd) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_love("[E.enthrallGender] has praised me!!")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, span_love("[E.enthrallGender] has praised me!!")), 5) if(HAS_TRAIT(L, TRAIT_MASO)) E.enthrallTally -= power_multiplier E.resistanceTally += power_multiplier E.cooldown += 1 else - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_nicegreen("I've been praised for doing a good job!")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, span_nicegreen("I've been praised for doing a good job!")), 5) E.resistanceTally -= power_multiplier E.enthrallTally += power_multiplier var/descmessage = "[(E.lewd?"I feel so happy! I'm a good pet who [E.enthrallGender] loves!":"I did a good job!")]" @@ -774,11 +774,11 @@ descmessage += "And yet, it feels so good..!" //I don't really understand masco, is this the right sort of thing they like? E.enthrallTally += power_multiplier E.resistanceTally -= power_multiplier - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "I've let [E.enthrallGender] down...!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "I've let [E.enthrallGender] down...!"), 5) else - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_warning("I've let [E.enthrallGender] down...")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, span_warning("I've let [E.enthrallGender] down...")), 5) else - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, span_warning("I've failed [E.master]...")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, span_warning("I've failed [E.master]...")), 5) E.resistanceTally += power_multiplier E.enthrallTally += power_multiplier E.cooldown += 1 @@ -812,9 +812,9 @@ E.status = null user.emote("snap") if(E.lewd) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "The snapping of your [E.enthrallGender]'s fingers brings you back to your enthralled state, obedient and ready to serve."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "The snapping of your [E.enthrallGender]'s fingers brings you back to your enthralled state, obedient and ready to serve."), 5) else - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "The snapping of [E.master]'s fingers brings you back to being under their influence."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "The snapping of [E.master]'s fingers brings you back to being under their influence."), 5) to_chat(user, "You wake up [L]!") //tier 1 @@ -947,7 +947,7 @@ ADD_TRAIT(C, TRAIT_MUTE, "enthrall") else C.silent += ((10 * power_multiplier) * E.phase) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You are unable to speak!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, "You are unable to speak!"), 5) to_chat(user, "You silence [C].") E.cooldown += 3 @@ -967,7 +967,7 @@ var/mob/living/L = V var/datum/status_effect/chem/enthrall/E = L.has_status_effect(/datum/status_effect/chem/enthrall) E.status = "Antiresist" - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "Your mind clouds over, as you find yourself unable to resist!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "Your mind clouds over, as you find yourself unable to resist!"), 5) E.statusStrength = (1 * power_multiplier * E.phase) E.cooldown += 15//Too short? yes, made 15 to_chat(user, "You frustrate [L]'s attempts at resisting.") @@ -980,7 +980,7 @@ E.deltaResist += (power_multiplier) E.owner_resist() E.cooldown += 2 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You are spurred into resisting from [user]'s words!'"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, "You are spurred into resisting from [user]'s words!'"), 5) to_chat(user, "You spark resistance in [C].") //FORGET (A way to cancel the process) @@ -988,9 +988,9 @@ for(var/mob/living/carbon/C in listeners) var/datum/status_effect/chem/enthrall/E = C.has_status_effect(/datum/status_effect/chem/enthrall) if(E.phase == 4) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_warning("You're unable to forget about [(E.lewd?"the dominating presence of [E.enthrallGender]":"[E.master]")]!")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, span_warning("You're unable to forget about [(E.lewd?"the dominating presence of [E.enthrallGender]":"[E.master]")]!")), 5) continue - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_warning("You wake up, forgetting everything that just happened. You must've dozed off..? How embarassing!")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, span_warning("You wake up, forgetting everything that just happened. You must've dozed off..? How embarassing!")), 5) C.Sleeping(50) switch(E.phase) if(1 to 2) @@ -1001,9 +1001,9 @@ E.phase = 0 E.cooldown = 0 if(E.lewd) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You revert to yourself before being enthralled by your [E.enthrallGender], with no memory of what happened."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, "You revert to yourself before being enthralled by your [E.enthrallGender], with no memory of what happened."), 5) else - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "You revert to who you were before, with no memory of what happened with [E.master]."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, "You revert to who you were before, with no memory of what happened with [E.master]."), 5) to_chat(user, "You put [C] into a sleeper state, ready to turn them back at the snap of your fingers.") //ATTRACT @@ -1013,7 +1013,7 @@ var/datum/status_effect/chem/enthrall/E = L.has_status_effect(/datum/status_effect/chem/enthrall) L.throw_at(get_step_towards(user,L), 3 * power_multiplier, 1 * power_multiplier) E.cooldown += 3 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You are drawn towards [user]!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You are drawn towards [user]!"), 5) to_chat(user, "You draw [L] towards you!") //SLEEP @@ -1024,7 +1024,7 @@ if(2 to INFINITY) C.Sleeping(45 * power_multiplier) E.cooldown += 10 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "Drowsiness suddenly overwhelms you as you fall asleep!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, "Drowsiness suddenly overwhelms you as you fall asleep!"), 5) to_chat(user, "You send [C] to sleep.") //STRIP @@ -1038,7 +1038,7 @@ for(var/obj/item/W in items) if(W == H.wear_suit) H.dropItemToGround(W, TRUE) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, "Before you can even think about it, you quickly remove your clothes in response to [(E.lewd?"your [E.enthrallGender]'s command'":"[E.master]'s directive'")]."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), H, "Before you can even think about it, you quickly remove your clothes in response to [(E.lewd?"your [E.enthrallGender]'s command'":"[E.master]'s directive'")]."), 5) E.cooldown += 10 //WALK @@ -1051,7 +1051,7 @@ if(L.m_intent != MOVE_INTENT_WALK) L.toggle_move_intent() E.cooldown += 1 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You slow down to a walk."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You slow down to a walk."), 5) to_chat(user, "You encourage [L] to slow down.") //RUN @@ -1064,7 +1064,7 @@ if(L.m_intent != MOVE_INTENT_RUN) L.toggle_move_intent() E.cooldown += 1 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You speed up into a jog!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You speed up into a jog!"), 5) to_chat(user, "You encourage [L] to pick up the pace!") //LIE DOWN @@ -1076,7 +1076,7 @@ if(2 to INFINITY) L.lay_down() E.cooldown += 10 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "[(E.lewd?"You eagerly lie down!":"You suddenly lie down!")]"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "[(E.lewd?"You eagerly lie down!":"You suddenly lie down!")]"), 5) to_chat(user, "You encourage [L] to lie down.") //KNOCKDOWN @@ -1088,7 +1088,7 @@ if(2 to INFINITY) L.DefaultCombatKnockdown(30 * power_multiplier * E.phase) E.cooldown += 8 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You suddenly drop to the ground!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You suddenly drop to the ground!"), 5) to_chat(user, "You encourage [L] to drop down to the ground.") //tier3 @@ -1107,7 +1107,7 @@ for (var/trigger in E.customTriggers) speaktrigger += "[trigger], " to_chat(user, "[C] whispers, \"[speaktrigger] are my triggers.\"")//So they don't trigger themselves! - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_notice("You whisper your triggers to [(E.lewd?"Your [E.enthrallGender]":"[E.master]")].")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, span_notice("You whisper your triggers to [(E.lewd?"Your [E.enthrallGender]":"[E.master]")].")), 5) //CUSTOM TRIGGERS @@ -1142,7 +1142,7 @@ E.customTriggers[trigger] = trigger2 log_reagent("FERMICHEM: [H] has been implanted by [user] with [trigger], triggering [trigger2].") E.mental_capacity -= 5 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, span_notice("[(E.lewd?"your [E.enthrallGender]":"[E.master]")] whispers you a new trigger.")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), H, span_notice("[(E.lewd?"your [E.enthrallGender]":"[E.master]")] whispers you a new trigger.")), 5) to_chat(user, "You sucessfully set the trigger word [trigger] in [H]") else to_chat(user, span_warning("Your pet looks at you confused, it seems they don't understand that effect!")) @@ -1203,7 +1203,7 @@ objective = replacetext(lowertext(objective), "strangle", "meow at") message_admins("[H] has been implanted by [user] with the objective [objective].") log_reagent("FERMICHEM: [H] has been implanted by [user] with the objective [objective] via MKUltra.") - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, span_notice("[(E.lewd?"Your [E.enthrallGender]":"[E.master]")] whispers you a new objective.")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), H, span_notice("[(E.lewd?"Your [E.enthrallGender]":"[E.master]")] whispers you a new objective.")), 5) brainwash(H, objective) E.mental_capacity -= 200 to_chat(user, "You sucessfully give an objective to [H]") @@ -1232,7 +1232,7 @@ if(E.phase > 1) if(user.ckey == E.enthrallID && user.real_name == E.master.real_name) E.master = user - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), H, span_nicegreen("[(E.lewd?"You hear the words of your [E.enthrallGender] again!! They're back!!":"You recognise the voice of [E.master].")]")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), H, span_nicegreen("[(E.lewd?"You hear the words of your [E.enthrallGender] again!! They're back!!":"You recognise the voice of [E.master].")]")), 5) to_chat(user, "[H] looks at you with sparkling eyes, recognising you!") //I dunno how to do state objectives without them revealing they're an antag @@ -1247,7 +1247,7 @@ E.status = "heal" E.statusStrength = (5 * power_multiplier) E.cooldown += 5 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You begin to lick your wounds."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You begin to lick your wounds."), 5) L.Stun(15 * power_multiplier) to_chat(user, "[L] begins to lick their wounds.") @@ -1260,7 +1260,7 @@ if(3 to INFINITY) L.Stun(40 * power_multiplier) E.cooldown += 8 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "Your muscles freeze up!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "Your muscles freeze up!"), 5) to_chat(user, "You cause [L] to freeze up!") //HALLUCINATE @@ -1281,7 +1281,7 @@ switch(E.phase) if(3 to INFINITY) L.adjust_bodytemperature(50 * power_multiplier)//This seems nuts, reduced it, but then it didn't do anything, so I reverted it. - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You feel your metabolism speed up!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You feel your metabolism speed up!"), 5) to_chat(user, "You speed [L]'s metabolism up!") //COLD @@ -1292,7 +1292,7 @@ switch(E.phase) if(3 to INFINITY) L.adjust_bodytemperature(-50 * power_multiplier) - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You feel your metabolism slow down!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You feel your metabolism slow down!"), 5) to_chat(user, "You slow [L]'s metabolism down!") //GET UP @@ -1306,7 +1306,7 @@ L.SetAllImmobility(0) L.SetUnconscious(0) //i said get up i don't care if you're being tased E.cooldown += 10 //This could be really strong - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You jump to your feet from sheer willpower!"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You jump to your feet from sheer willpower!"), 5) to_chat(user, "You spur [L] to their feet!") //PACIFY @@ -1318,7 +1318,7 @@ if(3)//Tier 3 only E.status = "pacify" E.cooldown += 10 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), L, "You feel like never hurting anyone ever again."), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), L, "You feel like never hurting anyone ever again."), 5) to_chat(user, "You remove any intent to harm from [L]'s mind.") //CHARGE diff --git a/modular_citadel/code/datums/status_effects/chems.dm b/modular_citadel/code/datums/status_effects/chems.dm index 97c608b8a68..bf0c6a32425 100644 --- a/modular_citadel/code/datums/status_effects/chems.dm +++ b/modular_citadel/code/datums/status_effects/chems.dm @@ -484,14 +484,14 @@ //Speak (Forces player to talk) if (lowertext(customTriggers[trigger][1]) == "speak")//trigger2 var/saytext = "Your mouth moves on it's own before you can even catch it." - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, span_notice("[saytext]")), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, span_notice("[saytext]")), 5) addtimer(CALLBACK(C, /atom/movable/proc/say, "[customTriggers[trigger][2]]"), 5) log_reagent("FERMICHEM: MKULTRA: [owner] ckey: [owner.key] has been forced to say: \"[customTriggers[trigger][2]]\" from previous trigger.") //Echo (repeats message!) allows customisation, but won't display var calls! Defaults to hypnophrase. else if (lowertext(customTriggers[trigger][1]) == "echo")//trigger2 - addtimer(CALLBACK(GLOBAL_PROC_REF(to_chat), C, "[customTriggers[trigger][2]]"), 5) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(to_chat), C, "[customTriggers[trigger][2]]"), 5) //(to_chat(owner, "[customTriggers[trigger][2]]"))//trigger3 //Shocking truth! diff --git a/modular_citadel/code/modules/mentor/mentorhelp.dm b/modular_citadel/code/modules/mentor/mentorhelp.dm index d382a3a4194..f19bb711909 100644 --- a/modular_citadel/code/modules/mentor/mentorhelp.dm +++ b/modular_citadel/code/modules/mentor/mentorhelp.dm @@ -8,7 +8,7 @@ //remove out mentorhelp verb temporarily to prevent spamming of mentors. remove_verb(src, /client/verb/mentorhelp) - addtimer(CALLBACK(GLOBAL_PROC_REF(add_verb), src, /client/verb/mentorhelp), 30 SECONDS) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(add_verb), src, /client/verb/mentorhelp), 30 SECONDS) msg = sanitize(copytext_char(msg, 1, MAX_MESSAGE_LEN)) if(!msg || !mob) diff --git a/modular_sand/code/modules/mob/emote.dm b/modular_sand/code/modules/mob/emote.dm index 016f7e286ae..6a67f2071e6 100644 --- a/modular_sand/code/modules/mob/emote.dm +++ b/modular_sand/code/modules/mob/emote.dm @@ -11,7 +11,7 @@ I.icon_state = state M.vis_contents += I animate(I, alpha = 255, time = 5, easing = BOUNCE_EASING, pixel_y = 10) - addtimer(CALLBACK(GLOBAL_PROC_REF(finish_flick), M, I), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) + addtimer(CALLBACK(usr, GLOBAL_PROC_REF(finish_flick), M, I), time, TIMER_STOPPABLE | TIMER_CLIENT_TIME) /proc/finish_flick(mob/M, I) M.vis_contents -= I From 16c81fc8a9173fa60e5ee2f11fa9000c42089e7d Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sat, 27 Jan 2024 01:04:15 +0000 Subject: [PATCH 15/52] why the fuck is this here??? --- code/modules/mafia/roles.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/modules/mafia/roles.dm b/code/modules/mafia/roles.dm index 5591bc4d046..73a9ba4d7c1 100644 --- a/code/modules/mafia/roles.dm +++ b/code/modules/mafia/roles.dm @@ -339,7 +339,6 @@ RegisterSignal(current_target,COMSIG_MAFIA_CAN_PERFORM_ACTION,PROC_REF(prevent_action)) /datum/mafia_role/lawyer/proc/release(datum/mafia_controller/game) - . = ..() if(current_target) UnregisterSignal(current_target, COMSIG_MAFIA_CAN_PERFORM_ACTION) current_target = null From 8665a2e931b22f08535c26291c8e637ea7e2694e Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sat, 27 Jan 2024 11:50:40 +0000 Subject: [PATCH 16/52] fixes some more typeref issues --- code/modules/assembly/doorcontrol.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/modules/assembly/doorcontrol.dm b/code/modules/assembly/doorcontrol.dm index 2d7d317a33d..161aea4bb4f 100644 --- a/code/modules/assembly/doorcontrol.dm +++ b/code/modules/assembly/doorcontrol.dm @@ -45,7 +45,7 @@ if(M.id == src.id) if(openclose == null) openclose = M.density - INVOKE_ASYNC(M, TYPE_PROC_REF(openclose ? /obj/machinery/door/poddoor.proc/open : /obj/machinery/door/poddoor,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) /obj/item/assembly/control/airlock @@ -88,7 +88,7 @@ D.safe = !D.safe for(var/D in open_or_close) - INVOKE_ASYNC(D, TYPE_PROC_REF(doors_need_closing ? /obj/machinery/door/airlock.proc/close : /obj/machinery/door/airlock,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) From 7a6c20351e0a6fa6311ddccb562abf048e64c87d Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sat, 27 Jan 2024 11:51:01 +0000 Subject: [PATCH 17/52] FIxes the varset callback to work again --- code/__HELPERS/unsorted.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index b97a3bdbfb1..2d3a0035644 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1375,7 +1375,7 @@ GLOBAL_DATUM_INIT(dview_mob, /mob/dview, new) #define VARSET_LIST_CALLBACK(target, var_name, var_value) CALLBACK(usr, GLOBAL_PROC_REF(___callbackvarset), ##target, ##var_name, ##var_value) //dupe code because dm can't handle 3 level deep macros -#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(usr, GLOBAL_PROC_REF(___callbackvarset), ##datum, NAMEOF_STATIC(##datum, ##var), ##var_value) +#define VARSET_CALLBACK(datum, var, var_value) CALLBACK(usr, GLOBAL_PROC_REF(___callbackvarset), ##datum, NAMEOF(##datum, ##var), ##var_value) /proc/___callbackvarset(list_or_datum, var_name, var_value) if(length(list_or_datum)) From 29da21b8f9ead026e0674eb746fc08bc18658dc8 Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sat, 27 Jan 2024 12:53:57 +0000 Subject: [PATCH 18/52] Fixes the constant switches --- .../objects/items/devices/traitordevices.dm | 2 +- .../clock_mobs/clockwork_marauder.dm | 12 +- code/modules/food_and_drinks/food/snacks.dm | 3 +- .../mob/living/carbon/human/examine.dm | 34 ++-- .../mob/living/carbon/human/human_defense.dm | 159 +++++++++--------- code/modules/mob/living/say.dm | 1 + .../chemistry/reagents/alcohol_reagents.dm | 9 +- 7 files changed, 111 insertions(+), 109 deletions(-) diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index 5fd6e81f987..60171849871 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -86,7 +86,7 @@ effective or pretty fucking useless. return if(!used) log_combat(user, M, "irradiated", src) - var/cooldown = get_cooldown() + var/cooldown = get_cooldown() used = TRUE icon_state = "health1" addtimer(VARSET_CALLBACK(src, used, FALSE), cooldown) diff --git a/code/modules/antagonists/clockcult/clock_mobs/clockwork_marauder.dm b/code/modules/antagonists/clockcult/clock_mobs/clockwork_marauder.dm index dbc3b3844de..a101c4d583b 100644 --- a/code/modules/antagonists/clockcult/clock_mobs/clockwork_marauder.dm +++ b/code/modules/antagonists/clockcult/clock_mobs/clockwork_marauder.dm @@ -319,32 +319,32 @@ else var/healthpercent = (health/maxHealth) * 100 switch(healthpercent) - if(100 to 70) //Bonuses to speed and damage at high health + if(70 to 100) //Bonuses to speed and damage at high health speed = 0 melee_damage_lower = 16 melee_damage_upper = 16 attack_verb_continuous = "viciously slashes" - if(70 to 40) + if(40 to 70) speed = initial(speed) melee_damage_lower = initial(melee_damage_lower) melee_damage_upper = initial(melee_damage_upper) attack_verb_continuous = initial(attack_verb_continuous) - if(40 to 30) //Damage decrease, but not speed + if(30 to 40) //Damage decrease, but not speed speed = initial(speed) melee_damage_lower = 10 melee_damage_upper = 10 attack_verb_continuous = "lightly slashes" - if(30 to 20) //Speed decrease + if(20 to 30) //Speed decrease speed = 2 melee_damage_lower = 8 melee_damage_upper = 8 attack_verb_continuous = "lightly slashes" - if(20 to 10) //Massive speed decrease and weak melee attacks + if(10 to 20) //Massive speed decrease and weak melee attacks speed = 3 melee_damage_lower = 6 melee_damage_upper = 6 attack_verb_continuous = "weakly slashes" - if(10 to 0) //We are super weak and going to die + if(0 to 10) //We are super weak and going to die speed = 4 melee_damage_lower = 4 melee_damage_upper = 4 diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index f6e16ba41d8..900f1bcc918 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -175,7 +175,8 @@ All foods are distributed among various categories. Use common sense. M.visible_message( span_notice("[M] unwillingly [eatverb]s \the [src]."), span_notice("You unwillingly [eatverb] \the [src].")) - if((600 * (1 + M.overeatduration / 1000)) to INFINITY) + //if((600 * (1 + M.overeatduration / 1000)) to INFINITY) // Had to change this to a const, sorry if it don't work! Can convert it to an if else statemetnt but I'm lazy. + if(650 to INFINITY) if(HAS_TRAIT(M, TRAIT_VORACIOUS)) M.visible_message( span_notice("[M] gluttonously [eatverb]s \the [src], cramming it down [M.p_their()] throat!"), diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index f02dc63b58b..0b13d5afc1d 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -257,15 +257,14 @@ GLOBAL_LIST_INIT(personalitytrait2description, list( var/bandaid_max_time = initial(BP.current_gauze.covering_lifespan) var/bandaid_time = BP.get_covering_timeleft(COVERING_BANDAGE, COVERING_TIME_TRUE) // how much life we have left in these bandages - switch(bandaid_time) - if((bandaid_max_time * BANDAGE_GOODLIFE_DURATION) to INFINITY) - msg += "fresh " - if((bandaid_max_time * BANDAGE_MIDLIFE_DURATION) to (bandaid_max_time * BANDAGE_GOODLIFE_DURATION)) - msg += "slightly worn " - if((bandaid_max_time * BANDAGE_ENDLIFE_DURATION) to (bandaid_max_time * BANDAGE_MIDLIFE_DURATION)) - msg += "badly worn " - if(-INFINITY to (bandaid_max_time * BANDAGE_ENDLIFE_DURATION)) - msg += "nearly ruined " + if(bandaid_time > bandaid_max_time * BANDAGE_GOODLIFE_DURATION) + msg += "fresh " + else if(bandaid_time > bandaid_max_time * BANDAGE_MIDLIFE_DURATION) + msg += "slightly worn " + else if(bandaid_time > bandaid_max_time * BANDAGE_ENDLIFE_DURATION) + msg += "badly worn " + else + msg += "nearly ruined " msg += "[BP.current_gauze.name]" if(has_bleed_wounds) msg += span_warning(" covering a bleeding wound!\n") @@ -277,15 +276,14 @@ GLOBAL_LIST_INIT(personalitytrait2description, list( var/bandaid_max_time = initial(BP.current_suture.covering_lifespan) var/bandaid_time = BP.get_covering_timeleft(COVERING_SUTURE, COVERING_TIME_TRUE) // how much life we have left in these bandages - switch(bandaid_time) - if((bandaid_max_time * SUTURE_GOODLIFE_DURATION) to INFINITY) - msg += "sturdy " - if((bandaid_max_time * SUTURE_MIDLIFE_DURATION) to (bandaid_max_time * SUTURE_GOODLIFE_DURATION)) - msg += "slightly frayed " - if((bandaid_max_time * SUTURE_ENDLIFE_DURATION) to (bandaid_max_time * SUTURE_MIDLIFE_DURATION)) - msg += "badly frayed " - if(-INFINITY to (bandaid_max_time * SUTURE_ENDLIFE_DURATION)) - msg += "nearly popped " + if(bandaid_time > bandaid_max_time * SUTURE_GOODLIFE_DURATION) + msg += "sturdy " + else if(bandaid_time > bandaid_max_time * SUTURE_MIDLIFE_DURATION) + msg += "slightly frayed " + else if(bandaid_time > bandaid_max_time * SUTURE_ENDLIFE_DURATION) + msg += "badly frayed " + else + msg += "nearly popped " msg += "[BP.current_suture.name]" if(has_bleed_wounds) msg += span_warning(" covering a bleeding wound!\n") diff --git a/code/modules/mob/living/carbon/human/human_defense.dm b/code/modules/mob/living/carbon/human/human_defense.dm index 6f961181fc7..1da7f85f0a4 100644 --- a/code/modules/mob/living/carbon/human/human_defense.dm +++ b/code/modules/mob/living/carbon/human/human_defense.dm @@ -823,27 +823,27 @@ var/msg = span_notice("[src]'s [LB.name] is ") var/list/damage_words = list() if(brutedamage || burndamage || bleeddamage) - switch(brutedamage) - if(1 to (limb_max_damage*0.4)) - damage_words += LB.light_brute_msg - if((limb_max_damage*0.4) to (limb_max_damage*0.8)) - damage_words += LB.medium_brute_msg - if((limb_max_damage*0.8) to INFINITY) - damage_words += LB.heavy_brute_msg - switch(burndamage) - if(1 to (limb_max_damage*0.4)) - damage_words += LB.light_burn_msg - if((limb_max_damage*0.4) to (limb_max_damage*0.8)) - damage_words += LB.medium_burn_msg - if((limb_max_damage*0.8) to INFINITY) - damage_words += LB.heavy_burn_msg - switch(bleeddamage) - if(1 to (limb_max_damage*0.4)) - damage_words += LB.light_bleed_msg - if((limb_max_damage*0.4) to (limb_max_damage*0.8)) - damage_words += LB.medium_bleed_msg - if((limb_max_damage*0.8) to INFINITY) - damage_words += LB.heavy_bleed_msg + if(brutedamage < limb_max_damage * 0.4) + damage_words += LB.light_brute_msg + else if(brutedamage < limb_max_damage * 0.8) + damage_words += LB.medium_brute_msg + else + damage_words += LB.heavy_brute_msg + + if(burndamage < limb_max_damage * 0.4) + damage_words += LB.light_burn_msg + else if(burndamage < limb_max_damage * 0.8) + damage_words += LB.medium_burn_msg + else + damage_words += LB.heavy_burn_msg + + if(bleeddamage < limb_max_damage * 0.4) + damage_words += LB.light_bleed_msg + else if(bleeddamage < limb_max_damage * 0.8) + damage_words += LB.medium_bleed_msg + else + damage_words += LB.heavy_bleed_msg + msg += span_alert(english_list(damage_words)) else msg += span_green("intact") @@ -870,16 +870,17 @@ message_bandage += "It is coated with " var/bandaid_max_time = initial(LB.current_gauze.covering_lifespan) var/bandaid_time = LB.get_covering_timeleft(COVERING_BANDAGE, COVERING_TIME_TRUE) + // how much life we have left in these bandages - switch(bandaid_time) - if((bandaid_max_time * BANDAGE_GOODLIFE_DURATION) to INFINITY) - message_bandage += "fresh " - if((bandaid_max_time * BANDAGE_MIDLIFE_DURATION) to (bandaid_max_time * BANDAGE_GOODLIFE_DURATION)) - message_bandage += "slightly worn " - if((bandaid_max_time * BANDAGE_ENDLIFE_DURATION) to (bandaid_max_time * BANDAGE_MIDLIFE_DURATION)) - message_bandage += "badly worn " - if(-INFINITY to (bandaid_max_time * BANDAGE_ENDLIFE_DURATION)) - message_bandage += "nearly ruined " + if(bandaid_time > bandaid_max_time * BANDAGE_GOODLIFE_DURATION) + message_bandage += "fresh " + else if(bandaid_time > bandaid_max_time * BANDAGE_MIDLIFE_DURATION) + message_bandage += "slightly worn " + else if(bandaid_time > bandaid_max_time * BANDAGE_ENDLIFE_DURATION) + message_bandage += "badly worn " + else + message_bandage += "nearly ruined " + message_bandage += "[LB.current_gauze.name]" if(has_bleed_wounds) message_bandage += span_warning(" covering a bleeding wound! ") @@ -893,16 +894,17 @@ message_suture += "It is stitched up with " var/bandaid_max_time = initial(LB.current_suture.covering_lifespan) var/bandaid_time = LB.get_covering_timeleft(COVERING_SUTURE, COVERING_TIME_TRUE) + // how much life we have left in these bandages - switch(bandaid_time) - if((bandaid_max_time * SUTURE_GOODLIFE_DURATION) to INFINITY) - message_suture += "sturdy " - if((bandaid_max_time * SUTURE_MIDLIFE_DURATION) to (bandaid_max_time * SUTURE_GOODLIFE_DURATION)) - message_suture += "slightly frayed " - if((bandaid_max_time * SUTURE_ENDLIFE_DURATION) to (bandaid_max_time * SUTURE_MIDLIFE_DURATION)) - message_suture += "badly frayed " - if(-INFINITY to (bandaid_max_time * SUTURE_ENDLIFE_DURATION)) - message_suture += "nearly popped " + if(bandaid_time > bandaid_max_time * SUTURE_GOODLIFE_DURATION) + message_suture += "sturdy " + else if(bandaid_time > bandaid_max_time * SUTURE_MIDLIFE_DURATION) + message_suture += "slightly frayed " + else if(bandaid_time > bandaid_max_time * SUTURE_ENDLIFE_DURATION) + message_suture += "badly frayed " + else + message_suture += "nearly popped " + message_suture += "[LB.current_suture.name]" if(has_bleed_wounds) message_suture += span_warning(" closing a bleeding wound! ") @@ -953,27 +955,26 @@ var/msg = "[src]'s [LB.name] is " var/list/damage_words = list() if(brutedamage || burndamage || bleeddamage) - switch(brutedamage) - if(1 to (limb_max_damage*0.4)) - damage_words += LB.light_brute_msg - if((limb_max_damage*0.4) to (limb_max_damage*0.8)) - damage_words += LB.medium_brute_msg - if((limb_max_damage*0.8) to INFINITY) - damage_words += LB.heavy_brute_msg - switch(burndamage) - if(1 to (limb_max_damage*0.4)) - damage_words += LB.light_burn_msg - if((limb_max_damage*0.4) to (limb_max_damage*0.8)) - damage_words += LB.medium_burn_msg - if((limb_max_damage*0.8) to INFINITY) - damage_words += LB.heavy_burn_msg - switch(bleeddamage) - if(1 to (limb_max_damage*0.4)) - damage_words += LB.light_bleed_msg - if((limb_max_damage*0.4) to (limb_max_damage*0.8)) - damage_words += LB.medium_bleed_msg - if((limb_max_damage*0.8) to INFINITY) - damage_words += LB.heavy_bleed_msg + if(brutedamage < limb_max_damage * 0.4) + damage_words += LB.light_brute_msg + else if(brutedamage < limb_max_damage * 0.8) + damage_words += LB.medium_brute_msg + else + damage_words += LB.heavy_brute_msg + + if(burndamage < limb_max_damage * 0.4) + damage_words += LB.light_burn_msg + else if(burndamage < limb_max_damage * 0.8) + damage_words += LB.medium_burn_msg + else + damage_words += LB.heavy_burn_msg + + if(bleeddamage < limb_max_damage * 0.4) + damage_words += LB.light_bleed_msg + else if(bleeddamage < limb_max_damage * 0.8) + damage_words += LB.medium_bleed_msg + else + damage_words += LB.heavy_bleed_msg msg += english_list(damage_words) else msg += "intact" @@ -1000,16 +1001,17 @@ message_bandage += "It is coated with " var/bandaid_max_time = initial(LB.current_gauze.covering_lifespan) var/bandaid_time = LB.get_covering_timeleft(COVERING_BANDAGE, COVERING_TIME_TRUE) + // how much life we have left in these bandages - switch(bandaid_time) - if((bandaid_max_time * BANDAGE_GOODLIFE_DURATION) to INFINITY) - message_bandage += "fresh " - if((bandaid_max_time * BANDAGE_MIDLIFE_DURATION) to (bandaid_max_time * BANDAGE_GOODLIFE_DURATION)) - message_bandage += "slightly worn " - if((bandaid_max_time * BANDAGE_ENDLIFE_DURATION) to (bandaid_max_time * BANDAGE_MIDLIFE_DURATION)) - message_bandage += "badly worn " - if(-INFINITY to (bandaid_max_time * BANDAGE_ENDLIFE_DURATION)) - message_bandage += "nearly ruined " + if(bandaid_time > bandaid_max_time * BANDAGE_GOODLIFE_DURATION) + message_bandage += "fresh " + else if(bandaid_time > bandaid_max_time * BANDAGE_MIDLIFE_DURATION) + message_bandage += "slightly worn " + else if(bandaid_time > bandaid_max_time * BANDAGE_ENDLIFE_DURATION) + message_bandage += "badly worn " + else + message_bandage += "nearly ruined " + message_bandage += "[LB.current_gauze.name]" if(has_bleed_wounds) message_bandage += span_warning(" covering a bleeding wound! ") @@ -1023,16 +1025,17 @@ message_suture += "It is stitched up with " var/bandaid_max_time = initial(LB.current_suture.covering_lifespan) var/bandaid_time = LB.get_covering_timeleft(COVERING_SUTURE, COVERING_TIME_TRUE) + // how much life we have left in these bandages - switch(bandaid_time) - if((bandaid_max_time * SUTURE_GOODLIFE_DURATION) to INFINITY) - message_suture += "sturdy " - if((bandaid_max_time * SUTURE_MIDLIFE_DURATION) to (bandaid_max_time * SUTURE_GOODLIFE_DURATION)) - message_suture += "slightly frayed " - if((bandaid_max_time * SUTURE_ENDLIFE_DURATION) to (bandaid_max_time * SUTURE_MIDLIFE_DURATION)) - message_suture += "badly frayed " - if(-INFINITY to (bandaid_max_time * SUTURE_ENDLIFE_DURATION)) - message_suture += "nearly popped " + if(bandaid_time > bandaid_max_time * SUTURE_GOODLIFE_DURATION) + message_suture += "sturdy " + else if(bandaid_time > bandaid_max_time * SUTURE_MIDLIFE_DURATION) + message_suture += "slightly frayed " + else if(bandaid_time > bandaid_max_time * SUTURE_ENDLIFE_DURATION) + message_suture += "badly frayed " + else + message_suture += "nearly popped " + message_suture += "[LB.current_suture.name]" if(has_bleed_wounds) message_suture += span_warning(" closing a bleeding wound! ") diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index cc1bdb13fd0..0a35ca4584b 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -244,6 +244,7 @@ the_dead[M] = TRUE var/eavesdropping + var/eavesrendered if(eavesdrop_range) eavesdropping = stars(message) diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 567c07eff5d..9edb6bb9fcb 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -2666,11 +2666,10 @@ All effects don't start immediately, but rather get worse over time; the rate is glass_name = "glass of [name]" glass_desc = description for(var/taste in tastes) - switch(tastes[taste]) - if(minimum_percent*2 to INFINITY) - primary_tastes += taste - if(minimum_percent to minimum_percent*2) - secondary_tastes += taste + if(tastes[taste] > minimum_percent*2) + primary_tastes += taste + else if(tastes[taste] > minimum_percent) + secondary_tastes += taste var/minimum_name_percent = 0.35 name = "" From 9fc2464ce103bb110341109b063bd5362aaecbcb Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sat, 27 Jan 2024 12:54:10 +0000 Subject: [PATCH 19/52] updates rust_g to use ext lib calls --- code/__DEFINES/rust_g.dm | 84 ++++++++++++++++++++-------------------- 1 file changed, 42 insertions(+), 42 deletions(-) diff --git a/code/__DEFINES/rust_g.dm b/code/__DEFINES/rust_g.dm index 4b2ac79d8fd..5aa1f07d6a0 100644 --- a/code/__DEFINES/rust_g.dm +++ b/code/__DEFINES/rust_g.dm @@ -39,31 +39,31 @@ #endif /// Gets the version of rust_g -/proc/rustg_get_version() return call(RUST_G, "get_version")() +/proc/rustg_get_version() return LIBCALL(RUST_G, "get_version")() /** * Sets up the Aho-Corasick automaton with its default options. * - * The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace call + * The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace LIBCALL * Arguments: - * * key - The key for the automaton, to be used with subsequent rustg_acreplace/rustg_acreplace_with_replacements calls + * * key - The key for the automaton, to be used with subsequent rustg_acreplace/rustg_acreplace_with_replacements LIBCALLs * * patterns - A non-associative list of strings to search for * * replacements - Default replacements for this automaton, used with rustg_acreplace */ -#define rustg_setup_acreplace(key, patterns, replacements) call(RUST_G, "setup_acreplace")(key, json_encode(patterns), json_encode(replacements)) +#define rustg_setup_acreplace(key, patterns, replacements) LIBCALL(RUST_G, "setup_acreplace")(key, json_encode(patterns), json_encode(replacements)) /** * Sets up the Aho-Corasick automaton using supplied options. * - * The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace call + * The search patterns list and the replacements must be of the same length when replace is run, but an empty replacements list is allowed if replacements are supplied with the replace LIBCALL * Arguments: - * * key - The key for the automaton, to be used with subsequent rustg_acreplace/rustg_acreplace_with_replacements calls - * * options - An associative list like list("anchored" = 0, "ascii_case_insensitive" = 0, "match_kind" = "Standard"). The values shown on the example are the defaults, and default values may be omitted. See the identically named methods at https://docs.rs/aho-corasick/latest/aho_corasick/struct.AhoCorasickBuilder.html to see what the options do. + * * key - The key for the automaton, to be used with subsequent rustg_acreplace/rustg_acreplace_with_replacements LIBCALLs + * * options - An associative list like list("anchored" = 0, "ascii_case_insensitive" = 0, "match_kind" = "Standard"). The values shown on the example are the defaults, and default values may be omitted. See the identiLIBCALLy named methods at https://docs.rs/aho-corasick/latest/aho_corasick/struct.AhoCorasickBuilder.html to see what the options do. * * patterns - A non-associative list of strings to search for * * replacements - Default replacements for this automaton, used with rustg_acreplace */ -#define rustg_setup_acreplace_with_options(key, options, patterns, replacements) call(RUST_G, "setup_acreplace")(key, json_encode(options), json_encode(patterns), json_encode(replacements)) +#define rustg_setup_acreplace_with_options(key, options, patterns, replacements) LIBCALL(RUST_G, "setup_acreplace")(key, json_encode(options), json_encode(patterns), json_encode(replacements)) /** * Run the specified replacement engine with the provided haystack text to replace, returning replaced text. @@ -72,7 +72,7 @@ * * key - The key for the automaton * * text - Text to run replacements on */ -#define rustg_acreplace(key, text) call(RUST_G, "acreplace")(key, text) +#define rustg_acreplace(key, text) LIBCALL(RUST_G, "acreplace")(key, text) /** * Run the specified replacement engine with the provided haystack text to replace, returning replaced text. @@ -80,9 +80,9 @@ * Arguments: * * key - The key for the automaton * * text - Text to run replacements on - * * replacements - Replacements for this call. Must be the same length as the set-up patterns + * * replacements - Replacements for this LIBCALL. Must be the same length as the set-up patterns */ -#define rustg_acreplace_with_replacements(key, text, replacements) call(RUST_G, "acreplace_with_replacements")(key, text, json_encode(replacements)) +#define rustg_acreplace_with_replacements(key, text, replacements) LIBCALL(RUST_G, "acreplace_with_replacements")(key, text, json_encode(replacements)) /** * This proc generates a cellular automata noise grid which can be used in procedural generation methods. @@ -98,26 +98,26 @@ * * height: The height of the grid. */ #define rustg_cnoise_generate(percentage, smoothing_iterations, birth_limit, death_limit, width, height) \ - call(RUST_G, "cnoise_generate")(percentage, smoothing_iterations, birth_limit, death_limit, width, height) + LIBCALL(RUST_G, "cnoise_generate")(percentage, smoothing_iterations, birth_limit, death_limit, width, height) -#define rustg_dmi_strip_metadata(fname) call(RUST_G, "dmi_strip_metadata")(fname) -#define rustg_dmi_create_png(path, width, height, data) call(RUST_G, "dmi_create_png")(path, width, height, data) -#define rustg_dmi_resize_png(path, width, height, resizetype) call(RUST_G, "dmi_resize_png")(path, width, height, resizetype) +#define rustg_dmi_strip_metadata(fname) LIBCALL(RUST_G, "dmi_strip_metadata")(fname) +#define rustg_dmi_create_png(path, width, height, data) LIBCALL(RUST_G, "dmi_create_png")(path, width, height, data) +#define rustg_dmi_resize_png(path, width, height, resizetype) LIBCALL(RUST_G, "dmi_resize_png")(path, width, height, resizetype) -#define rustg_file_read(fname) call(RUST_G, "file_read")(fname) -#define rustg_file_exists(fname) call(RUST_G, "file_exists")(fname) -#define rustg_file_write(text, fname) call(RUST_G, "file_write")(text, fname) -#define rustg_file_append(text, fname) call(RUST_G, "file_append")(text, fname) -#define rustg_file_get_line_count(fname) text2num(call(RUST_G, "file_get_line_count")(fname)) -#define rustg_file_seek_line(fname, line) call(RUST_G, "file_seek_line")(fname, "[line]") +#define rustg_file_read(fname) LIBCALL(RUST_G, "file_read")(fname) +#define rustg_file_exists(fname) LIBCALL(RUST_G, "file_exists")(fname) +#define rustg_file_write(text, fname) LIBCALL(RUST_G, "file_write")(text, fname) +#define rustg_file_append(text, fname) LIBCALL(RUST_G, "file_append")(text, fname) +#define rustg_file_get_line_count(fname) text2num(LIBCALL(RUST_G, "file_get_line_count")(fname)) +#define rustg_file_seek_line(fname, line) LIBCALL(RUST_G, "file_seek_line")(fname, "[line]") #ifdef RUSTG_OVERRIDE_BUILTINS #define file2text(fname) rustg_file_read("[fname]") #define text2file(text, fname) rustg_file_append(text, "[fname]") #endif -#define rustg_git_revparse(rev) call(RUST_G, "rg_git_revparse")(rev) -#define rustg_git_commit_date(rev) call(RUST_G, "rg_git_commit_date")(rev) +#define rustg_git_revparse(rev) LIBCALL(RUST_G, "rg_git_revparse")(rev) +#define rustg_git_commit_date(rev) LIBCALL(RUST_G, "rg_git_commit_date")(rev) #define RUSTG_HTTP_METHOD_GET "get" #define RUSTG_HTTP_METHOD_PUT "put" @@ -125,36 +125,36 @@ #define RUSTG_HTTP_METHOD_PATCH "patch" #define RUSTG_HTTP_METHOD_HEAD "head" #define RUSTG_HTTP_METHOD_POST "post" -#define rustg_http_request_blocking(method, url, body, headers, options) call(RUST_G, "http_request_blocking")(method, url, body, headers, options) -#define rustg_http_request_async(method, url, body, headers, options) call(RUST_G, "http_request_async")(method, url, body, headers, options) -#define rustg_http_check_request(req_id) call(RUST_G, "http_check_request")(req_id) +#define rustg_http_request_blocking(method, url, body, headers, options) LIBCALL(RUST_G, "http_request_blocking")(method, url, body, headers, options) +#define rustg_http_request_async(method, url, body, headers, options) LIBCALL(RUST_G, "http_request_async")(method, url, body, headers, options) +#define rustg_http_check_request(req_id) LIBCALL(RUST_G, "http_check_request")(req_id) #define RUSTG_JOB_NO_RESULTS_YET "NO RESULTS YET" #define RUSTG_JOB_NO_SUCH_JOB "NO SUCH JOB" #define RUSTG_JOB_ERROR "JOB PANICKED" -#define rustg_json_is_valid(text) (call(RUST_G, "json_is_valid")(text) == "true") +#define rustg_json_is_valid(text) (LIBCALL(RUST_G, "json_is_valid")(text) == "true") -#define rustg_log_write(fname, text, format) call(RUST_G, "log_write")(fname, text, format) -/proc/rustg_log_close_all() return call(RUST_G, "log_close_all")() +#define rustg_log_write(fname, text, format) LIBCALL(RUST_G, "log_write")(fname, text, format) +/proc/rustg_log_close_all() return LIBCALL(RUST_G, "log_close_all")() -#define rustg_noise_get_at_coordinates(seed, x, y) call(RUST_G, "noise_get_at_coordinates")(seed, x, y) +#define rustg_noise_get_at_coordinates(seed, x, y) LIBCALL(RUST_G, "noise_get_at_coordinates")(seed, x, y) -#define rustg_sql_connect_pool(options) call(RUST_G, "sql_connect_pool")(options) -#define rustg_sql_query_async(handle, query, params) call(RUST_G, "sql_query_async")(handle, query, params) -#define rustg_sql_query_blocking(handle, query, params) call(RUST_G, "sql_query_blocking")(handle, query, params) -#define rustg_sql_connected(handle) call(RUST_G, "sql_connected")(handle) -#define rustg_sql_disconnect_pool(handle) call(RUST_G, "sql_disconnect_pool")(handle) -#define rustg_sql_check_query(job_id) call(RUST_G, "sql_check_query")("[job_id]") +#define rustg_sql_connect_pool(options) LIBCALL(RUST_G, "sql_connect_pool")(options) +#define rustg_sql_query_async(handle, query, params) LIBCALL(RUST_G, "sql_query_async")(handle, query, params) +#define rustg_sql_query_blocking(handle, query, params) LIBCALL(RUST_G, "sql_query_blocking")(handle, query, params) +#define rustg_sql_connected(handle) LIBCALL(RUST_G, "sql_connected")(handle) +#define rustg_sql_disconnect_pool(handle) LIBCALL(RUST_G, "sql_disconnect_pool")(handle) +#define rustg_sql_check_query(job_id) LIBCALL(RUST_G, "sql_check_query")("[job_id]") -#define rustg_time_microseconds(id) text2num(call(RUST_G, "time_microseconds")(id)) -#define rustg_time_milliseconds(id) text2num(call(RUST_G, "time_milliseconds")(id)) -#define rustg_time_reset(id) call(RUST_G, "time_reset")(id) +#define rustg_time_microseconds(id) text2num(LIBCALL(RUST_G, "time_microseconds")(id)) +#define rustg_time_milliseconds(id) text2num(LIBCALL(RUST_G, "time_milliseconds")(id)) +#define rustg_time_reset(id) LIBCALL(RUST_G, "time_reset")(id) -#define rustg_read_toml_file(path) json_decode(call(RUST_G, "toml_file_to_json")(path) || "null") +#define rustg_read_toml_file(path) json_decode(LIBCALL(RUST_G, "toml_file_to_json")(path) || "null") -#define rustg_url_encode(text) call(RUST_G, "url_encode")("[text]") -#define rustg_url_decode(text) call(RUST_G, "url_decode")(text) +#define rustg_url_encode(text) LIBCALL(RUST_G, "url_encode")("[text]") +#define rustg_url_decode(text) LIBCALL(RUST_G, "url_decode")(text) #ifdef RUSTG_OVERRIDE_BUILTINS #define url_encode(text) rustg_url_encode(text) From ceb5b1c1a0f31b83135537950fcb00dc1fe05804 Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sun, 28 Jan 2024 23:08:14 +0000 Subject: [PATCH 20/52] THE BIG LIST SORTING TO 515 --- code/__HELPERS/_lists.dm | 10 +++++----- code/__HELPERS/areas.dm | 4 ++-- code/__HELPERS/files.dm | 2 +- code/__HELPERS/global_lists.dm | 4 ++-- code/__HELPERS/icons.dm | 2 +- code/__HELPERS/roundend.dm | 2 +- code/__HELPERS/sorts/__main.dm | 2 +- code/__HELPERS/stat_tracking.dm | 2 +- code/controllers/failsafe.dm | 2 +- code/controllers/master.dm | 12 ++++++------ code/controllers/subsystem/listbank.dm | 2 +- code/controllers/subsystem/mapping.dm | 2 +- code/controllers/subsystem/materials.dm | 2 +- code/controllers/subsystem/processing/quirks.dm | 6 +++--- code/datums/components/storage/ui.dm | 2 +- code/datums/diseases/advance/advance.dm | 2 +- code/datums/profiling.dm | 2 +- code/datums/skills/_skill.dm | 2 +- code/datums/skills/_skill_modifier.dm | 2 +- code/game/area/areas.dm | 2 +- code/game/atoms.dm | 2 +- code/game/machinery/autolathe.dm | 2 +- code/game/machinery/constructable_frame.dm | 2 +- code/modules/WVM/wmv_buyer.dm | 4 ++-- code/modules/admin/check_antagonists.dm | 2 +- code/modules/admin/verbs/debug.dm | 2 +- code/modules/admin/verbs/individual_logging.dm | 2 +- code/modules/admin/view_variables/topic_basic.dm | 4 ++-- .../clockcult/clock_helpers/scripture_checks.dm | 2 +- .../antagonists/eldritch_cult/eldritch_knowledge.dm | 2 +- code/modules/antagonists/pirate/pirate.dm | 2 +- code/modules/atmospherics/gasmixtures/reactions.dm | 2 +- code/modules/cargo/centcom_podlauncher.dm | 2 +- code/modules/client/border_control.dm | 2 +- code/modules/client/client_colour.dm | 2 +- code/modules/client/preferences.dm | 2 +- code/modules/clothing/chameleon.dm | 2 +- .../instruments/instrument_data/_instrument_data.dm | 2 +- code/modules/mining/laborcamp/laborstacker.dm | 2 +- code/modules/mob/living/living_block.dm | 2 +- code/modules/reagents/chemistry/holder.dm | 2 +- .../reagents/chemistry/machinery/chem_dispenser.dm | 12 ++++++------ .../reagents/chemistry/reagents/alcohol_reagents.dm | 2 +- .../reagents/chemistry/machinery/chem_dispenser.dm | 2 +- 44 files changed, 64 insertions(+), 64 deletions(-) diff --git a/code/__HELPERS/_lists.dm b/code/__HELPERS/_lists.dm index 7daed5d6508..c0156dcfd9a 100644 --- a/code/__HELPERS/_lists.dm +++ b/code/__HELPERS/_lists.dm @@ -575,16 +575,16 @@ ///uses sort_list() but uses the var's name specifically. This should probably be using mergeAtom() instead /proc/sort_names(list/list_to_sort, order=1) - return sortTim(list_to_sort.Copy(), order >= 0 ? /proc/cmp_name_asc : /proc/cmp_name_dsc) + return sortTim(list_to_sort.Copy(), order >= 0 ? GLOBAL_PROC_REF(cmp_name_asc) : GLOBAL_PROC_REF(cmp_name_dsc)) //for sorting clients or mobs by ckey /proc/sortKey(list/L, order=1) - return sortTim(L, order >= 0 ? /proc/cmp_ckey_asc : /proc/cmp_ckey_dsc) + return sortTim(L, order >= 0 ? GLOBAL_PROC_REF(cmp_ckey_asc) : GLOBAL_PROC_REF(cmp_ckey_dsc)) //Specifically for record datums in a list. /proc/sortRecord(list/L, field = "name", order = 1) GLOB.cmp_field = field - return sortTim(L, order >= 0 ? /proc/cmp_records_asc : /proc/cmp_records_dsc) + return sortTim(L, order >= 0 ? GLOBAL_PROC_REF(cmp_records_asc) : GLOBAL_PROC_REF(cmp_records_dsc)) //any value in a list /proc/sortList(list/L, cmp=/proc/cmp_text_asc) @@ -592,11 +592,11 @@ //uses sortList() but uses the var's name specifically. This should probably be using mergeAtom() instead /proc/sortNames(list/L, order=1) - return sortTim(L, order >= 0 ? /proc/cmp_name_asc : /proc/cmp_name_dsc) + return sortTim(L, order >= 0 ? GLOBAL_PROC_REF(cmp_name_asc) : GLOBAL_PROC_REF(cmp_name_dsc)) //uses sortList() but uses the mob's ckey specifically! /proc/sortCkeys(list/L, order=1) - return sortTim(L, order >= 0 ? /proc/cmp_ckey_mob_asc : /proc/cmp_ckey_mob_dsc) + return sortTim(L, order >= 0 ? GLOBAL_PROC_REF(cmp_ckey_mob_asc) : GLOBAL_PROC_REF(cmp_ckey_mob_dsc)) //Converts a bitfield to a list of numbers (or words if a wordlist is provided) /proc/bitfield2list(bitfield = 0, list/wordlist) diff --git a/code/__HELPERS/areas.dm b/code/__HELPERS/areas.dm index b112ab1ee04..47f6f209867 100644 --- a/code/__HELPERS/areas.dm +++ b/code/__HELPERS/areas.dm @@ -12,11 +12,11 @@ GLOBAL_LIST_INIT(typecache_powerfailure_safe_areas, typecacheof(/area/engine/eng for(var/area/A in world) GLOB.sortedAreas.Add(A) - sortTim(GLOB.sortedAreas, /proc/cmp_name_asc) + sortTim(GLOB.sortedAreas, GLOBAL_PROC_REF(cmp_name_asc)) /area/proc/addSorted() GLOB.sortedAreas.Add(src) - sortTim(GLOB.sortedAreas, /proc/cmp_name_asc) + sortTim(GLOB.sortedAreas, GLOBAL_PROC_REF(cmp_name_asc)) //Takes: Area type as a text string from a variable. //Returns: Instance for the area in the world. diff --git a/code/__HELPERS/files.dm b/code/__HELPERS/files.dm index 8cc54cd8641..976cf6b04fd 100644 --- a/code/__HELPERS/files.dm +++ b/code/__HELPERS/files.dm @@ -31,7 +31,7 @@ for(var/i=0, i 0) - sortTim(advance_diseases, /proc/cmp_advdisease_resistance_asc) + sortTim(advance_diseases, GLOBAL_PROC_REF(cmp_advdisease_resistance_asc)) for(var/i in 1 to replace_num) var/datum/disease/advance/competition = advance_diseases[i] if(totalTransmittable() > competition.totalResistance()) diff --git a/code/datums/profiling.dm b/code/datums/profiling.dm index 49a80d0eded..1eec8787116 100644 --- a/code/datums/profiling.dm +++ b/code/datums/profiling.dm @@ -6,7 +6,7 @@ GLOBAL_REAL_VAR(PROFILE_SLEEPCHECK) GLOBAL_REAL_VAR(PROFILE_TIME) -/proc/profile_show(user, sort = /proc/cmp_profile_avg_time_dsc) +/proc/profile_show(user, sort = GLOBAL_PROC_REF(cmp_profile_avg_time_dsc)) sortTim(PROFILE_STORE, sort, TRUE) var/list/lines = list() diff --git a/code/datums/skills/_skill.dm b/code/datums/skills/_skill.dm index 0346d956b1c..fd5ea0007c7 100644 --- a/code/datums/skills/_skill.dm +++ b/code/datums/skills/_skill.dm @@ -8,7 +8,7 @@ GLOBAL_LIST_INIT_TYPED(skill_datums, /datum/skill, init_skill_datums()) continue S = new path .[S.type] = S - . = sortTim(., /proc/cmp_skill_categories, TRUE) + . = sortTim(., GLOBAL_PROC_REF(cmp_skill_categories), TRUE) /** * Skill datums diff --git a/code/datums/skills/_skill_modifier.dm b/code/datums/skills/_skill_modifier.dm index a732957c210..4792446bbf2 100644 --- a/code/datums/skills/_skill_modifier.dm +++ b/code/datums/skills/_skill_modifier.dm @@ -52,7 +52,7 @@ GLOBAL_LIST_EMPTY(potential_mods_per_skill) GLOB.potential_skills_per_mod[target_skills_key] = list(target_skills) else //Should be a list. var/list/T = target_skills - T = sortTim(target_skills, /proc/cmp_text_asc) //Sort the list contents alphabetically. + T = sortTim(target_skills, GLOBAL_PROC_REF(cmp_text_asc)) //Sort the list contents alphabetically. target_skills_key = T.Join("-") var/list/L = GLOB.potential_skills_per_mod[target_skills_key] if(!L) diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index 9be194c2bf1..1bf4560a5e4 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -161,7 +161,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) if (picked && is_station_level(picked.z)) GLOB.teleportlocs[AR.name] = AR - sortTim(GLOB.teleportlocs, /proc/cmp_text_dsc) + sortTim(GLOB.teleportlocs, GLOBAL_PROC_REF(cmp_text_dsc)) // === diff --git a/code/game/atoms.dm b/code/game/atoms.dm index f18e47ec639..18b3426faf6 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -1195,7 +1195,7 @@ /atom/proc/update_filters() filters = null - filter_data = sortTim(filter_data, /proc/cmp_filter_data_priority, TRUE) + filter_data = sortTim(filter_data, GLOBAL_PROC_REF(cmp_filter_data_priority), TRUE) for(var/f in filter_data) var/list/data = filter_data[f] var/list/arguments = data.Copy() diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index 734cb0da0a0..c07b8efee0d 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -248,7 +248,7 @@ GLOBAL_VAR_INIT(lathe_reports_done, 0) if(materials.materials[i] > 0) list_to_show += i - used_material = tgui_input_list(usr, "Choose [used_material]", "Custom Material", sortList(list_to_show, /proc/cmp_typepaths_asc)) + used_material = tgui_input_list(usr, "Choose [used_material]", "Custom Material", sortList(list_to_show, GLOBAL_PROC_REF(cmp_typepaths_asc))) if(isnull(used_material)) return //Didn't pick any material, so you can't build shit either. custom_materials[used_material] += amount_needed diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index 6dbe09688f2..6e4e97cf40f 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -210,7 +210,7 @@ for(var/obj/item/co in replacer) part_list += co //Sort the parts. This ensures that higher tier items are applied first. - part_list = sortTim(part_list, /proc/cmp_rped_sort) + part_list = sortTim(part_list, GLOBAL_PROC_REF(cmp_rped_sort)) for(var/path in req_components) while(req_components[path] > 0 && (locate(path) in part_list)) diff --git a/code/modules/WVM/wmv_buyer.dm b/code/modules/WVM/wmv_buyer.dm index 4b48db3388c..9165a39c2a0 100644 --- a/code/modules/WVM/wmv_buyer.dm +++ b/code/modules/WVM/wmv_buyer.dm @@ -280,7 +280,7 @@ GLOBAL_LIST_EMPTY(wasteland_vendor_shop_list) GLOB.wasteland_vendor_shop_list[trader_key] = list() var/list/donut = list() /// so parents are processed first, and subtype prices have priority - var/list/buylist = sortList(buyables_loose, /proc/cmp_typepaths_length_asc) + var/list/buylist = sortList(buyables_loose, GLOBAL_PROC_REF(cmp_typepaths_length_asc)) for(var/stuff in buylist) var/list/cumfrosting = list() cumfrosting = typecacheof(stuff) @@ -289,7 +289,7 @@ GLOBAL_LIST_EMPTY(wasteland_vendor_shop_list) donut[thing] = cumfrosting[thing] /// now, prune and process the tight list buylist.Cut() - buylist = sortList(buyables_tight, /proc/cmp_typepaths_length_asc) + buylist = sortList(buyables_tight, GLOBAL_PROC_REF(cmp_typepaths_length_asc)) for(var/stuff in buylist) var/list/cumfrosting = list() cumfrosting = typecacheof(stuff, TRUE) diff --git a/code/modules/admin/check_antagonists.dm b/code/modules/admin/check_antagonists.dm index 532a11a532f..3b683ebaf71 100644 --- a/code/modules/admin/check_antagonists.dm +++ b/code/modules/admin/check_antagonists.dm @@ -106,7 +106,7 @@ else sections += T.antag_listing_entry() - sortTim(all_antagonists, /proc/cmp_antag_category) + sortTim(all_antagonists, GLOBAL_PROC_REF(cmp_antag_category)) var/current_category var/list/current_section = list() diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index 6d2db7a5faa..ca28adfc662 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -1196,7 +1196,7 @@ GLOBAL_LIST_INIT(gun_loot_tables, list(/obj/effect/spawner/lootdrop/f13/trash_gu var/list/sortinglist = list() for(var/gg in GLOB.gun_balance_list) sortinglist[gg] = GLOB.gun_balance_list[gg][sorttype]//Associate the sorting value to the key - sortTim(sortinglist, /proc/cmp_numeric_dsc, associative = TRUE)//Sort the DPS associations + sortTim(sortinglist, GLOBAL_PROC_REF(cmp_numeric_dsc), associative = TRUE)//Sort the DPS associations for(var/gs in sortinglist)//Re-add the other variables sortinglist[gs] = GLOB.gun_balance_list[gs] GLOB.gun_balance_list = LAZYCOPY(sortinglist)//Copy the temporary sorted list into the global list diff --git a/code/modules/admin/verbs/individual_logging.dm b/code/modules/admin/verbs/individual_logging.dm index 75c8409031c..86542132e8c 100644 --- a/code/modules/admin/verbs/individual_logging.dm +++ b/code/modules/admin/verbs/individual_logging.dm @@ -64,7 +64,7 @@ for(var/entry in all_the_entrys) concatenated_logs += "[entry]
[all_the_entrys[entry]]" if(length(concatenated_logs)) - sortTim(concatenated_logs, cmp = /proc/cmp_text_dsc) //Sort by timestamp. + sortTim(concatenated_logs, cmp = GLOBAL_PROC_REF(cmp_text_dsc)) //Sort by timestamp. dat += "" dat += concatenated_logs.Join("
") dat += "
" diff --git a/code/modules/admin/view_variables/topic_basic.dm b/code/modules/admin/view_variables/topic_basic.dm index ebd9e33df43..a5c98bb177d 100644 --- a/code/modules/admin/view_variables/topic_basic.dm +++ b/code/modules/admin/view_variables/topic_basic.dm @@ -63,11 +63,11 @@ if(!check_rights(NONE)) return var/list/names = list() - var/list/componentsubtypes = sortList(subtypesof(/datum/component), /proc/cmp_typepaths_asc) + var/list/componentsubtypes = sortList(subtypesof(/datum/component), GLOBAL_PROC_REF(cmp_typepaths_asc)) names += "---Components---" names += componentsubtypes names += "---Elements---" - names += sortList(subtypesof(/datum/element), /proc/cmp_typepaths_asc) + names += sortList(subtypesof(/datum/element), GLOBAL_PROC_REF(cmp_typepaths_asc)) var/result = input(usr, "Choose a component/element to add","better know what ur fuckin doin pal") as null|anything in names if(!usr || !result || result == "---Components---" || result == "---Elements---") return diff --git a/code/modules/antagonists/clockcult/clock_helpers/scripture_checks.dm b/code/modules/antagonists/clockcult/clock_helpers/scripture_checks.dm index 66e20b6e87d..13b6d6dff12 100644 --- a/code/modules/antagonists/clockcult/clock_helpers/scripture_checks.dm +++ b/code/modules/antagonists/clockcult/clock_helpers/scripture_checks.dm @@ -40,7 +40,7 @@ /proc/generate_all_scripture() if(GLOB.all_scripture.len) return - for(var/V in sortList(subtypesof(/datum/clockwork_scripture) - list(/datum/clockwork_scripture/channeled, /datum/clockwork_scripture/create_object, /datum/clockwork_scripture/create_object/construct), /proc/cmp_clockscripture_priority)) + for(var/V in sortList(subtypesof(/datum/clockwork_scripture) - list(/datum/clockwork_scripture/channeled, /datum/clockwork_scripture/create_object, /datum/clockwork_scripture/create_object/construct), GLOBAL_PROC_REF(cmp_clockscripture_priority))) var/datum/clockwork_scripture/S = new V GLOB.all_scripture[S.type] = S diff --git a/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm b/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm index 5631d3d6968..0ca13b22f3c 100644 --- a/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm +++ b/code/modules/antagonists/eldritch_cult/eldritch_knowledge.dm @@ -153,7 +153,7 @@ to_chat(user, span_warning("The items don't posses required fingerprints.")) return FALSE - var/chosen_mob = input("Select the person you wish to curse","Your target") as null|anything in sortList(compiled_list, /proc/cmp_mob_realname_dsc) + var/chosen_mob = input("Select the person you wish to curse","Your target") as null|anything in sortList(compiled_list, GLOBAL_PROC_REF(cmp_mob_realname_dsc)) if(!chosen_mob) return FALSE curse(compiled_list[chosen_mob]) diff --git a/code/modules/antagonists/pirate/pirate.dm b/code/modules/antagonists/pirate/pirate.dm index 43437d90ed7..a0ac64ba78b 100644 --- a/code/modules/antagonists/pirate/pirate.dm +++ b/code/modules/antagonists/pirate/pirate.dm @@ -70,7 +70,7 @@ //Lists notable loot. if(!cargo_hold || !cargo_hold.total_report) return "Nothing" - cargo_hold.total_report.total_value = sortTim(cargo_hold.total_report.total_value, cmp = /proc/cmp_numeric_dsc, associative = TRUE) + cargo_hold.total_report.total_value = sortTim(cargo_hold.total_report.total_value, cmp = GLOBAL_PROC_REF(cmp_numeric_dsc), associative = TRUE) var/count = 0 var/list/loot_texts = list() for(var/datum/export/E in cargo_hold.total_report.total_value) diff --git a/code/modules/atmospherics/gasmixtures/reactions.dm b/code/modules/atmospherics/gasmixtures/reactions.dm index 9d3c4d7721d..273874dc0f3 100644 --- a/code/modules/atmospherics/gasmixtures/reactions.dm +++ b/code/modules/atmospherics/gasmixtures/reactions.dm @@ -9,7 +9,7 @@ continue reaction = new r . += reaction - sortTim(., /proc/cmp_gas_reaction) + sortTim(., GLOBAL_PROC_REF(cmp_gas_reaction)) /proc/cmp_gas_reaction(datum/gas_reaction/a, datum/gas_reaction/b) // compares lists of reactions by the maximum priority contained within the list return b.priority - a.priority diff --git a/code/modules/cargo/centcom_podlauncher.dm b/code/modules/cargo/centcom_podlauncher.dm index 1e2880a9c26..d6c822b345f 100644 --- a/code/modules/cargo/centcom_podlauncher.dm +++ b/code/modules/cargo/centcom_podlauncher.dm @@ -264,7 +264,7 @@ if (temp_pod.effectShrapnel == TRUE) //If already doing custom damage, set back to default (no shrapnel) temp_pod.effectShrapnel = FALSE return - var/shrapnelInput = input("Please enter the type of pellet cloud you'd like to create on landing (Can be any projectile!)", "Projectile Typepath", 0) in sortList(subtypesof(/obj/item/projectile), /proc/cmp_typepaths_asc) + var/shrapnelInput = input("Please enter the type of pellet cloud you'd like to create on landing (Can be any projectile!)", "Projectile Typepath", 0) in sortList(subtypesof(/obj/item/projectile), GLOBAL_PROC_REF(cmp_typepaths_asc)) if (isnull(shrapnelInput)) return var/shrapnelMagnitude = input("Enter the magnitude of the pellet cloud. This is usually a value around 1-5. Please note that Ryll-Ryll has asked me to tell you that if you go too crazy with the projectiles you might crash the server. So uh, be gentle!", "Shrapnel Magnitude", 0) as null|num diff --git a/code/modules/client/border_control.dm b/code/modules/client/border_control.dm index dcaedfc3556..54cdf3cf149 100644 --- a/code/modules/client/border_control.dm +++ b/code/modules/client/border_control.dm @@ -78,7 +78,7 @@ proc/BC_WhitelistKey(var/key) else LAZYINITLIST(GLOB.whitelistedCkeys) - ADD_SORTED(GLOB.whitelistedCkeys, keyAsCkey, /proc/cmp_text_asc) + ADD_SORTED(GLOB.whitelistedCkeys, keyAsCkey, GLOBAL_PROC_REF(cmp_text_asc)) BC_SaveWhitelist() return 1 diff --git a/code/modules/client/client_colour.dm b/code/modules/client/client_colour.dm index ab69003953b..d5b8affe2c1 100644 --- a/code/modules/client/client_colour.dm +++ b/code/modules/client/client_colour.dm @@ -28,7 +28,7 @@ var/datum/client_colour/CC = new colour_type() LAZYINITLIST(client_colours) client_colours |= CC - sortTim(client_colours, /proc/cmp_clientcolour_priority) + sortTim(client_colours, GLOBAL_PROC_REF(cmp_clientcolour_priority)) update_client_colour() diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm index 96a2fbc37c9..1689b0cb36f 100644 --- a/code/modules/client/preferences.dm +++ b/code/modules/client/preferences.dm @@ -1985,7 +1985,7 @@ GLOBAL_LIST_EMPTY(preferences_datums) //The job before the current job. I only use this to get the previous jobs color when I'm filling in blank rows. var/datum/job/lastJob - for(var/datum/job/job in sortList(SSjob.occupations, /proc/cmp_job_display_asc)) + for(var/datum/job/job in sortList(SSjob.occupations, GLOBAL_PROC_REF(cmp_job_display_asc))) if(job.total_positions == 0) continue diff --git a/code/modules/clothing/chameleon.dm b/code/modules/clothing/chameleon.dm index caddd70222a..a30076e2a18 100644 --- a/code/modules/clothing/chameleon.dm +++ b/code/modules/clothing/chameleon.dm @@ -85,7 +85,7 @@ var/datum/outfit/O = path if(initial(O.can_be_admin_equipped)) standard_outfit_options[initial(O.name)] = path - sortTim(standard_outfit_options, /proc/cmp_text_asc) + sortTim(standard_outfit_options, GLOBAL_PROC_REF(cmp_text_asc)) outfit_options = standard_outfit_options /datum/action/chameleon_outfit/Trigger() diff --git a/code/modules/instruments/instrument_data/_instrument_data.dm b/code/modules/instruments/instrument_data/_instrument_data.dm index 447bcdffb1a..97c9e4b25da 100644 --- a/code/modules/instruments/instrument_data/_instrument_data.dm +++ b/code/modules/instruments/instrument_data/_instrument_data.dm @@ -83,7 +83,7 @@ samples = list() for(var/key in real_samples) real_keys += text2num(key) - sortTim(real_keys, /proc/cmp_numeric_asc, associative = FALSE) + sortTim(real_keys, GLOBAL_PROC_REF(cmp_numeric_asc), associative = FALSE) for(var/i in 1 to (length(real_keys) - 1)) var/from_key = real_keys[i] diff --git a/code/modules/mining/laborcamp/laborstacker.dm b/code/modules/mining/laborcamp/laborstacker.dm index f19526c8f8d..de0da02ad33 100644 --- a/code/modules/mining/laborcamp/laborstacker.dm +++ b/code/modules/mining/laborcamp/laborstacker.dm @@ -28,7 +28,7 @@ GLOBAL_LIST(labor_sheet_values) if(!initial(sheet.point_value) || (initial(sheet.merge_type) && initial(sheet.merge_type) != sheet_type)) //ignore no-value sheets and x/fifty subtypes continue sheet_list += list(list("ore" = initial(sheet.name), "value" = initial(sheet.point_value))) - GLOB.labor_sheet_values = sortList(sheet_list, /proc/cmp_sheet_list) + GLOB.labor_sheet_values = sortList(sheet_list, GLOBAL_PROC_REF(cmp_sheet_list)) /proc/cmp_sheet_list(list/a, list/b) return a["value"] - b["value"] diff --git a/code/modules/mob/living/living_block.dm b/code/modules/mob/living/living_block.dm index 4d2e8351466..2a7de7f67c0 100644 --- a/code/modules/mob/living/living_block.dm +++ b/code/modules/mob/living/living_block.dm @@ -27,7 +27,7 @@ return_list[BLOCK_RETURN_PROJECTILE_BLOCK_PERCENTAGE] = 100 return var/list/obj/item/tocheck = get_blocking_items() - sortTim(tocheck, /proc/cmp_numeric_dsc, TRUE) + sortTim(tocheck, GLOBAL_PROC_REF(cmp_numeric_dsc), TRUE) // i don't like this var/block_chance_modifier = round(damage / -3) if(real_attack) diff --git a/code/modules/reagents/chemistry/holder.dm b/code/modules/reagents/chemistry/holder.dm index c9bf08a7012..1b10ca47cc5 100644 --- a/code/modules/reagents/chemistry/holder.dm +++ b/code/modules/reagents/chemistry/holder.dm @@ -479,7 +479,7 @@ if(total_matching_reagents == total_required_reagents && total_matching_catalysts == total_required_catalysts && matching_container && matching_other && meets_temp_requirement && can_special_react) possible_reactions += C - sortTim(possible_reactions, /proc/cmp_chemical_reactions_default, FALSE) + sortTim(possible_reactions, GLOBAL_PROC_REF(cmp_chemical_reactions_default), FALSE) if(possible_reactions.len) var/datum/chemical_reaction/selected_reaction = possible_reactions[1] diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index df4e6bb5492..2c988e3dace 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -95,16 +95,16 @@ /obj/machinery/chem_dispenser/Initialize() . = ..() - dispensable_reagents = sortList(dispensable_reagents, /proc/cmp_reagents_asc) + dispensable_reagents = sortList(dispensable_reagents, GLOBAL_PROC_REF(cmp_reagents_asc)) if(emagged_reagents) - emagged_reagents = sortList(emagged_reagents, /proc/cmp_reagents_asc) + emagged_reagents = sortList(emagged_reagents, GLOBAL_PROC_REF(cmp_reagents_asc)) if(upgrade_reagents) - upgrade_reagents = sortList(upgrade_reagents, /proc/cmp_reagents_asc) + upgrade_reagents = sortList(upgrade_reagents, GLOBAL_PROC_REF(cmp_reagents_asc)) if(upgrade_reagents2) - upgrade_reagents2 = sortList(upgrade_reagents2, /proc/cmp_reagents_asc) + upgrade_reagents2 = sortList(upgrade_reagents2, GLOBAL_PROC_REF(cmp_reagents_asc)) if(upgrade_reagents3) - upgrade_reagents3 = sortList(upgrade_reagents3, /proc/cmp_reagents_asc) - dispensable_reagents = sortList(dispensable_reagents, /proc/cmp_reagents_asc) + upgrade_reagents3 = sortList(upgrade_reagents3, GLOBAL_PROC_REF(cmp_reagents_asc)) + dispensable_reagents = sortList(dispensable_reagents, GLOBAL_PROC_REF(cmp_reagents_asc)) update_icon() /obj/machinery/chem_dispenser/Destroy() diff --git a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm index 9edb6bb9fcb..0437377b6b5 100644 --- a/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm +++ b/code/modules/reagents/chemistry/reagents/alcohol_reagents.dm @@ -2673,7 +2673,7 @@ All effects don't start immediately, but rather get worse over time; the rate is var/minimum_name_percent = 0.35 name = "" - var/list/names_in_order = sortTim(names, /proc/cmp_numeric_dsc, TRUE) + var/list/names_in_order = sortTim(names, GLOBAL_PROC_REF(cmp_numeric_dsc), TRUE) var/named = FALSE for(var/fruit_name in names) if(names[fruit_name] >= minimum_name_percent) diff --git a/modular_sand/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/modular_sand/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index e1beced5b0f..1b893c6f3af 100644 --- a/modular_sand/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/modular_sand/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -5,7 +5,7 @@ /obj/machinery/chem_dispenser/Initialize(mapload) if(upgrade_reagents4) - upgrade_reagents4 = sortList(upgrade_reagents4, /proc/cmp_reagents_asc) + upgrade_reagents4 = sortList(upgrade_reagents4, GLOBAL_PROC_REF(cmp_reagents_asc)) . = ..() /obj/machinery/chem_dispenser/drinks From 6079d8a63c2b7e923f60f2e0012aa2407c1ca01d Mon Sep 17 00:00:00 2001 From: gremlingss Date: Sun, 28 Jan 2024 23:39:21 +0000 Subject: [PATCH 21/52] Somewhat functional??? POGGERS?? --- code/controllers/master.dm | 2 +- tgui/packages/tgui-dev-server/dreamseeker.js | 3 +++ tgui/packages/tgui-dev-server/reloader.js | 4 ++-- tgui/public/tgui.html | 5 ++++- 4 files changed, 10 insertions(+), 4 deletions(-) diff --git a/code/controllers/master.dm b/code/controllers/master.dm index bcc5c71a1e7..ede5a8724f6 100644 --- a/code/controllers/master.dm +++ b/code/controllers/master.dm @@ -315,7 +315,7 @@ GLOBAL_REAL(Master, /datum/controller/master) = new //(higher subsystems will be sooner in the queue, adding them later in the loop means we don't have to loop thru them next queue add) sortTim(tickersubsystems, GLOBAL_PROC_REF(cmp_subsystem_priority)) for(var/I in runlevel_sorted_subsystems) - sortTim(runlevel_sorted_subsystems, GLOBAL_PROC_REF(cmp_subsystem_priority)) + sortTim(I, GLOBAL_PROC_REF(cmp_subsystem_priority)) I += tickersubsystems var/cached_runlevel = current_runlevel diff --git a/tgui/packages/tgui-dev-server/dreamseeker.js b/tgui/packages/tgui-dev-server/dreamseeker.js index c11ecad1b0d..1faa713af01 100644 --- a/tgui/packages/tgui-dev-server/dreamseeker.js +++ b/tgui/packages/tgui-dev-server/dreamseeker.js @@ -27,6 +27,9 @@ export class DreamSeeker { .map(key => encodeURIComponent(key) + '=' + encodeURIComponent(params[key])) .join('&'); + logger.log( + `topic call at ${this.client.defaults.baseURL + '/dummy?' + query}` + ); return this.client.get('/dummy?' + query); } } diff --git a/tgui/packages/tgui-dev-server/reloader.js b/tgui/packages/tgui-dev-server/reloader.js index 22527890409..74485de5c74 100644 --- a/tgui/packages/tgui-dev-server/reloader.js +++ b/tgui/packages/tgui-dev-server/reloader.js @@ -67,8 +67,6 @@ export const findCacheRoot = async () => { const onCacheRootFound = cacheRoot => { logger.log(`found cache at '${cacheRoot}'`); - // Plant a dummy - fs.closeSync(fs.openSync(cacheRoot + '/dummy', 'w')); }; export const reloadByondCache = async bundleDir => { @@ -93,6 +91,8 @@ export const reloadByondCache = async bundleDir => { // Clear garbage const garbage = await resolveGlob(cacheDir, './*.+(bundle|chunk|hot-update).*'); try { + // Plant a dummy, we're avoiding world topic by placing it here..? + fs.closeSync(fs.openSync(cacheRoot + '/dummy', 'w')); for (let file of garbage) { fs.unlinkSync(file); } diff --git a/tgui/public/tgui.html b/tgui/public/tgui.html index 5bda2a9b813..499278ad4bf 100644 --- a/tgui/public/tgui.html +++ b/tgui/public/tgui.html @@ -48,7 +48,8 @@ // Basic checks to detect whether this page runs in BYOND var isByond = (tridentVersion !== null || window.cef_to_byond) && location.hostname === '127.0.0.1' - && location.pathname.indexOf('/tmp') === 0 + // 515 doesn't onclude the tmp dir anymore, FUCK TGUI ; A; + //&& location.pathname.indexOf('/tmp') === 0 && location.search !== '?external'; // Version constants @@ -202,6 +203,8 @@ var len = styleSheets.length; for (var i = 0; i < len; i++) { var styleSheet = styleSheets[i]; + if(styleSheet.href === undefined) + continue; if (styleSheet.href.indexOf(url) !== -1) { return styleSheet.rules.length > 0; } From bae89bebf51f1ef5f6dd7c0ef370732f22dc74ba Mon Sep 17 00:00:00 2001 From: gremlingss Date: Tue, 6 Feb 2024 19:47:25 +0000 Subject: [PATCH 22/52] sanity missing (attempts to make auxtools load & speedbike fixed errors) --- code/game/world.dm | 4 ++-- code/modules/vehicles/speedbike.dm | 3 ++- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/code/game/world.dm b/code/game/world.dm index 1a073ea500b..5eb28d33a34 100644 --- a/code/game/world.dm +++ b/code/game/world.dm @@ -13,7 +13,7 @@ GLOBAL_LIST(topic_status_cache) /world/New() var/debug_server = world.GetConfig("env", "AUXTOOLS_DEBUG_DLL") if (debug_server) - call(debug_server, "auxtools_init")() + LIBCALL(debug_server, "auxtools_init")() enable_debugging() //AUXTOOLS_CHECK(AUXMOS) #ifdef EXTOOLS_REFERENCE_TRACKING @@ -284,7 +284,7 @@ GLOBAL_LIST(topic_status_cache) //AUXTOOLS_SHUTDOWN(AUXMOS) var/debug_server = world.GetConfig("env", "AUXTOOLS_DEBUG_DLL") if (debug_server) - call(debug_server, "auxtools_shutdown")() + LIBCALL(debug_server, "auxtools_shutdown")() ..() /world/proc/update_status() diff --git a/code/modules/vehicles/speedbike.dm b/code/modules/vehicles/speedbike.dm index adbc79b16b8..33d07eb9194 100644 --- a/code/modules/vehicles/speedbike.dm +++ b/code/modules/vehicles/speedbike.dm @@ -44,7 +44,7 @@ icon = 'icons/obj/car.dmi' icon_state = "speedwagon" layer = LYING_MOB_LAYER - var/static/mutable_appearance/overlay = mutable_appearance(icon, "speedwagon_cover", ABOVE_MOB_LAYER) + var/mutable_appearance/overlay max_buckled_mobs = 4 var/crash_all = FALSE //CHAOS pixel_y = -48 @@ -52,6 +52,7 @@ /obj/vehicle/ridden/space/speedwagon/Initialize() . = ..() + overlay = mutable_appearance(icon, "speedwagon_cover", ABOVE_MOB_LAYER) add_overlay(overlay) var/datum/component/riding/D = LoadComponent(/datum/component/riding) D.vehicle_move_delay = 0 From 17f0a8565b0bd369bff7f9bfb57e437338f9488e Mon Sep 17 00:00:00 2001 From: gremlingss Date: Tue, 6 Feb 2024 20:06:21 +0000 Subject: [PATCH 23/52] augh --- code/__HELPERS/global_lists.dm | 2 +- code/modules/admin/verbs/adminhelp.dm | 4 ++-- code/modules/asset_cache/transports/asset_transport.dm | 2 +- code/modules/tgs/v3210/api.dm | 2 +- 4 files changed, 5 insertions(+), 5 deletions(-) diff --git a/code/__HELPERS/global_lists.dm b/code/__HELPERS/global_lists.dm index 3fb0cbe02a8..f58fc6da6bb 100644 --- a/code/__HELPERS/global_lists.dm +++ b/code/__HELPERS/global_lists.dm @@ -103,7 +103,7 @@ init_subtypes(/datum/crafting_recipe, GLOB.crafting_recipes) - INVOKE_ASYNC(GLOBAL_PROC_REF(init_ref_coin_values)) //so the current procedure doesn't sleep because of UNTIL() + INVOKE_ASYNC(GLOBAL_PROC, GLOBAL_PROC_REF(init_ref_coin_values)) //so the current procedure doesn't sleep because of UNTIL() //creates every subtype of prototype (excluding prototype) and adds it to list L. //if no list/L is provided, one is created. diff --git a/code/modules/admin/verbs/adminhelp.dm b/code/modules/admin/verbs/adminhelp.dm index 07748d3fd60..cd6b783dca9 100644 --- a/code/modules/admin/verbs/adminhelp.dm +++ b/code/modules/admin/verbs/adminhelp.dm @@ -228,7 +228,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) //Removes the ahelp verb and returns it after 2 minutes /datum/admin_help/proc/TimeoutVerb() remove_verb(initiator, /client/verb/adminhelp) - initiator.adminhelptimerid = addtimer(CALLBACK(initiator, /client/proc/giveadminhelpverb), 1200, TIMER_STOPPABLE) //2 minute cooldown of admin helps + initiator.adminhelptimerid = addtimer(CALLBACK(initiator, TYPE_PROC_REF(/client, giveadminhelpverb)), 1200, TIMER_STOPPABLE) //2 minute cooldown of admin helps //private /datum/admin_help/proc/FullMonty(ref_src) @@ -348,7 +348,7 @@ GLOBAL_DATUM_INIT(ahelp_tickets, /datum/admin_help_tickets, new) state = AHELP_RESOLVED GLOB.ahelp_tickets.ListInsert(src) - addtimer(CALLBACK(initiator, /client/proc/giveadminhelpverb), 50) + addtimer(CALLBACK(initiator, TYPE_PROC_REF(/client, giveadminhelpverb)), 50) AddInteraction("Resolved by [key_name].") to_chat(initiator, span_adminhelp("Your ticket has been resolved by [usr?.client?.holder?.fakekey? usr.client.holder.fakekey : "an administrator"]. The Adminhelp verb will be returned to you shortly.")) diff --git a/code/modules/asset_cache/transports/asset_transport.dm b/code/modules/asset_cache/transports/asset_transport.dm index 7b72b0d83b2..2e03ad7cc74 100644 --- a/code/modules/asset_cache/transports/asset_transport.dm +++ b/code/modules/asset_cache/transports/asset_transport.dm @@ -137,7 +137,7 @@ client.sent_assets[new_asset_name] = ACI.hash - addtimer(CALLBACK(client, /client/proc/asset_cache_update_json), 1 SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE) + addtimer(CALLBACK(client, TYPE_PROC_REF(/client, asset_cache_update_json)), 1 SECONDS, TIMER_UNIQUE|TIMER_OVERRIDE) return TRUE return FALSE diff --git a/code/modules/tgs/v3210/api.dm b/code/modules/tgs/v3210/api.dm index 666201a3225..f4c43b6a541 100644 --- a/code/modules/tgs/v3210/api.dm +++ b/code/modules/tgs/v3210/api.dm @@ -102,7 +102,7 @@ #if DM_VERSION >= 515 call_ext(SERVICE_INTERFACE_DLL, SERVICE_INTERFACE_FUNCTION)(instance_name, command) //trust no retval #else - call(SERVICE_INTERFACE_DLL, SERVICE_INTERFACE_FUNCTION)(instance_name, command) //trust no retval + LIBCALL(SERVICE_INTERFACE_DLL, SERVICE_INTERFACE_FUNCTION)(instance_name, command) //trust no retval #endif return TRUE From b8e54721259ed2afed16e8ee4e50b4c7ab9be27b Mon Sep 17 00:00:00 2001 From: Dameon Owen Date: Tue, 5 Mar 2024 20:32:21 -0500 Subject: [PATCH 24/52] Whoops --- code/game/area/areas.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/area/areas.dm b/code/game/area/areas.dm index 1c72240cf77..cead9608a17 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -673,7 +673,7 @@ GLOBAL_LIST_EMPTY(teleportlocs) return var/sound_delay = rand(1 SECONDS, 15 SECONDS) var/sound/S = sound(music_to_play, repeat = TRUE, wait = 0, volume = 25, channel = CHANNEL_AMBIENT_MUSIC) - addtimer(CALLBACK(src, PROF_REF(play_ambient_sound_delayed), S, L), sound_delay, TIMER_STOPPABLE) + addtimer(CALLBACK(src, PROC_REF(play_ambient_sound_delayed), S, L), sound_delay, TIMER_STOPPABLE) COOLDOWN_START(L.client, area_music_cooldown, music_to_play[SL_FILE_LENGTH] + sound_delay) /area/proc/play_ambient_sound_delayed(sound/to_play, mob/living/play_to) From 973212fac3e31a3b97695631adbeb4a7741e495d Mon Sep 17 00:00:00 2001 From: Superlagg Date: Tue, 5 Mar 2024 18:15:07 -0800 Subject: [PATCH 25/52] moo --- code/modules/mob/living/say.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index b6d3208f525..ecb1c852a0a 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -266,7 +266,7 @@ speech_bubble_recipients.Add(M.client) var/image/I = image('icons/mob/talk.dmi', src, "[bubble_type][say_test(message)]", FLY_LAYER) I.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA - INVOKE_ASYNC(GLOBAL_PROC, TYPE_PROC_REF(/,flick_overlay), I, speech_bubble_recipients, 30) + INVOKE_ASYNC(GLOBAL_PROC_REF(flick_overlay), I, speech_bubble_recipients, 30) /mob/proc/binarycheck() return FALSE From 6900a0ca26f875a41183228ffd8227fefb7b4557 Mon Sep 17 00:00:00 2001 From: Superlagg Date: Tue, 5 Mar 2024 18:32:12 -0800 Subject: [PATCH 26/52] readf --- code/modules/mapping/reader.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mapping/reader.dm b/code/modules/mapping/reader.dm index e4887768e0f..d68d80365af 100644 --- a/code/modules/mapping/reader.dm +++ b/code/modules/mapping/reader.dm @@ -421,7 +421,7 @@ //then instance the /turf and, if multiple tiles are presents, simulates the DMM underlays piling effect var/first_turf_index = 1 - while(!ispath(members[first_turf_index], /turf)) //find first /turf object in members + while(!ispath(LAZYACCESS(members, first_turf_index), /turf)) //find first /turf object in members first_turf_index++ //turn off base new Initialization until the whole thing is loaded From fede4379d2a995de32f0f22a602f2890e469b858 Mon Sep 17 00:00:00 2001 From: Superlagg Date: Tue, 5 Mar 2024 18:55:27 -0800 Subject: [PATCH 27/52] l00p --- code/modules/mapping/reader.dm | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/code/modules/mapping/reader.dm b/code/modules/mapping/reader.dm index d68d80365af..81b34a842ad 100644 --- a/code/modules/mapping/reader.dm +++ b/code/modules/mapping/reader.dm @@ -421,8 +421,9 @@ //then instance the /turf and, if multiple tiles are presents, simulates the DMM underlays piling effect var/first_turf_index = 1 - while(!ispath(LAZYACCESS(members, first_turf_index), /turf)) //find first /turf object in members - first_turf_index++ + if(LAZYLEN(members) && LAZYACCESS(members, first_turf_index)) + while(!ispath(members[first_turf_index], /turf)) //find first /turf object in members + first_turf_index++ //turn off base new Initialization until the whole thing is loaded SSatoms.map_loader_begin() From 63587fcfd4c8a3e0712e8c086543635f6d2aa74d Mon Sep 17 00:00:00 2001 From: Dameon Owen Date: Tue, 5 Mar 2024 22:59:47 -0500 Subject: [PATCH 28/52] Fix flick-overlay? --- code/datums/brain_damage/imaginary_friend.dm | 2 +- code/game/mecha/mecha.dm | 2 +- code/modules/mob/living/say.dm | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/code/datums/brain_damage/imaginary_friend.dm b/code/datums/brain_damage/imaginary_friend.dm index 03c86f08ef5..07ac95e2fa0 100644 --- a/code/datums/brain_damage/imaginary_friend.dm +++ b/code/datums/brain_damage/imaginary_friend.dm @@ -172,7 +172,7 @@ if(owner.client) var/mutable_appearance/MA = mutable_appearance('icons/mob/talk.dmi', src, "default[say_test(message)]", FLY_LAYER) MA.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA - INVOKE_ASYNC(GLOBAL_PROC_REF(flick_overlay), MA, list(owner.client), 30) + INVOKE_ASYNC(GLOBAL_PROC, GLOBAL_PROC_REF(flick_overlay), MA, list(owner.client), 30) for(var/mob/M in GLOB.dead_mob_list) var/link = FOLLOW_LINK(M, owner) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 9965a3068e2..93358142951 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -367,7 +367,7 @@ for(var/mob/M in get_hearers_in_view(7,src)) if(M.client) speech_bubble_recipients.Add(M.client) - INVOKE_ASYNC(GLOBAL_PROC_REF(flick_overlay), image('icons/mob/talk.dmi', src, "machine[say_test(raw_message)]",MOB_LAYER+1), speech_bubble_recipients, 30) + INVOKE_ASYNC(GLOBAL_PROC, GLOBAL_PROC_REF(flick_overlay), image('icons/mob/talk.dmi', src, "machine[say_test(raw_message)]",MOB_LAYER+1), speech_bubble_recipients, 30) //////////////////////////// ///// Action processing //// diff --git a/code/modules/mob/living/say.dm b/code/modules/mob/living/say.dm index ecb1c852a0a..c9ccc005c25 100644 --- a/code/modules/mob/living/say.dm +++ b/code/modules/mob/living/say.dm @@ -266,7 +266,7 @@ speech_bubble_recipients.Add(M.client) var/image/I = image('icons/mob/talk.dmi', src, "[bubble_type][say_test(message)]", FLY_LAYER) I.appearance_flags = APPEARANCE_UI_IGNORE_ALPHA - INVOKE_ASYNC(GLOBAL_PROC_REF(flick_overlay), I, speech_bubble_recipients, 30) + INVOKE_ASYNC(GLOBAL_PROC, GLOBAL_PROC_REF(flick_overlay), I, speech_bubble_recipients, 30) /mob/proc/binarycheck() return FALSE From a65255086ddbaba6569415783ccc249d674546a0 Mon Sep 17 00:00:00 2001 From: "Wren \"Ody\" Hallow" Date: Wed, 6 Mar 2024 00:51:14 -0500 Subject: [PATCH 29/52] Oddy made den boo boos I fikked my messies --- .../Nash_and_Texarkana-Upper-2.dmm | 903 ++++++++----- .../coyote_bayou/Nash_and_Texarkana-Upper.dmm | 1189 ++++++++++------- .../coyote_bayou/Nash_and_Texarkana.dmm | 326 +++-- 3 files changed, 1492 insertions(+), 926 deletions(-) diff --git a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm index 70152263188..053d2b7cd5a 100644 --- a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm +++ b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm @@ -430,6 +430,16 @@ /obj/structure/simple_door/room, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) +"bN" = ( +/obj/effect/decal/cleanable/dirt/dust{ + color = "#11ff11" + }, +/obj/effect/turf_decal/weather/splineplain{ + dir = 4 + }, +/obj/structure/flora/ausbushes/fullgrass, +/turf/open/floor/plating/f13/outside/roof, +/area/f13/wasteland) "bP" = ( /obj/effect/turf_decal/weather/dirt{ color = "#a98c5d"; @@ -631,14 +641,13 @@ /turf/open/floor/wood_common, /area/f13/caves) "cx" = ( -/obj/structure/bookcase{ +/obj/structure/table/wood{ density = 0; - pixel_x = -33 + alpha = 1 }, -/obj/structure/chair/bench{ - dir = 4 +/turf/open/floor/wood_worn{ + color = "#FDF2C3" }, -/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "cy" = ( /obj/structure/cave/bigboards/westeast/five, @@ -1143,6 +1152,30 @@ /obj/structure/flora/tree/oak_five, /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) +"en" = ( +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam" + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_x = 19 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 12; + pixel_x = 17 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "ep" = ( /obj/vehicle/ridden/wheelchair{ desc = "A wheelchair, that seems to be wheels, it seems to be moveable by person on the wheelchair and it picks up bitches."; @@ -1586,16 +1619,28 @@ /turf/open/floor/plating/f13/outside/roof, /area/f13/wasteland) "ga" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam" }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/curtain/directional/east{ - color = "#450159" +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 16 }, -/turf/open/floor/wood_common/wood_common_dark, -/area/f13/building) +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_x = 19 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "gb" = ( /turf/open/indestructible/ground/outside/dirt{ color = "#6D6D6D" @@ -2266,10 +2311,12 @@ /area/f13/caves) "iV" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/window/fulltile/ruins, /obj/structure/curtain/directional/south{ color = "#845f58" }, +/obj/structure/window/fulltile/house{ + dir = 2 + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "iX" = ( @@ -2749,9 +2796,10 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "li" = ( -/obj/structure/bookcase{ - density = 0; - pixel_x = -33 +/obj/structure/fireplace{ + dir = 4; + pixel_x = -8; + pixel_y = 6 }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) @@ -2851,8 +2899,9 @@ "lE" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ - icon_state = "tube2"; - dir = 8 + dir = 8; + light_color = "#FF8CC9"; + color = "#FF72D5" }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) @@ -2903,19 +2952,22 @@ }, /area/f13/wasteland) "lM" = ( -/obj/structure/window/fulltile/ruins, /obj/structure/curtain/directional/north{ color = "#845f58" }, +/obj/structure/window/fulltile/house{ + dir = 2 + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "lN" = ( -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/structure/curtain/directional/east{ color = "#845f58" }, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "lO" = ( @@ -2957,7 +3009,7 @@ /area/f13/building/massfusion) "lY" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/simple_door/dirtyglass, +/obj/structure/simple_door/house, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "me" = ( @@ -3159,7 +3211,7 @@ color = "#11ff11" }, /obj/effect/decal/cleanable/dirt, -/obj/structure/flora/ausbushes/sparsegrass, +/obj/structure/flora/ausbushes/fullgrass, /turf/open/floor/plating/f13/outside/roof, /area/f13/wasteland) "mQ" = ( @@ -3233,8 +3285,9 @@ "ng" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ - icon_state = "tube_emergency"; - dir = 4 + dir = 8; + light_color = "#90FF6E"; + color = "lime" }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) @@ -3475,14 +3528,11 @@ /turf/open/floor/plasteel/f13/vault_floor/white, /area/f13/building/hospital) "nZ" = ( -/obj/structure/nightstand/small{ - pixel_x = 6; - pixel_y = 1 +/obj/structure/easel{ + plane = -2 }, -/obj/machinery/light{ - icon_state = "littlelamp-on"; - pixel_x = 6; - pixel_y = 5 +/obj/structure/chair/stool/retro/black{ + pixel_y = 12 }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) @@ -3497,7 +3547,8 @@ "oe" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ - icon_state = "tube_emergency"; + light_color = "#E74AE2"; + color = "#C000FF"; dir = 8 }, /turf/open/floor/wood_common/wood_common_dark, @@ -3740,8 +3791,8 @@ density = 0 }, /obj/machinery/light/floor{ - layer = 4; - icon_state = "markerfuchsia-on" + color = "#C000FF"; + light_color = "#E74AE2" }, /turf/open/floor/wood_worn, /area/f13/building) @@ -3889,14 +3940,15 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "pF" = ( -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, /obj/structure/curtain/directional/east{ color = "#450159" }, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "pG" = ( @@ -3914,23 +3966,8 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "pH" = ( -/obj/structure/chair/sofa/left{ - color = "#4B724F"; - dir = 1; - pixel_x = 7 - }, -/obj/structure/nightstand/small{ - pixel_x = -17 - }, -/obj/structure/rug/big/rug_blue_shag{ - pixel_y = -9; - layer = 1; - color = "#4B724F" - }, -/obj/machinery/light{ - icon_state = "littlelamp-on"; - pixel_x = -17; - pixel_y = 5 +/obj/structure/chair/office/dark{ + dir = 4 }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) @@ -4197,16 +4234,15 @@ /obj/structure/window/fulltile/ruins{ icon_state = "ruinswindowvertical" }, -/obj/structure/barricade/bars{ - color = "#A47449" - }, /obj/structure/railing{ color = "#A47449"; plane = -6; - dir = 4; - pixel_y = -10 + dir = 4 + }, +/obj/structure/barricade/bars{ + color = "#A47449" }, -/obj/structure/curtain/directional/west{ +/obj/structure/curtain/directional/east{ color = "#4B724F" }, /turf/open/indestructible/ground/outside/civ/woodalt, @@ -4437,13 +4473,15 @@ "rI" = ( /obj/structure/table/wood/bar, /obj/item/pickaxe, -/obj/machinery/light{ - icon_state = "lantern-on"; - pixel_x = -5; - pixel_y = 14 - }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) +"rJ" = ( +/obj/machinery/light{ + dir = 8; + light_color = "#e8eaff" + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "rK" = ( /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/wood_common{ @@ -4531,6 +4569,18 @@ icon_state = "darkdirty" }, /area/f13/wasteland) +"sc" = ( +/obj/structure/chair/sofa/right{ + color = "#4B724F"; + dir = 8; + pixel_x = 8 + }, +/obj/machinery/light{ + dir = 4; + pixel_y = -16 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "sd" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ @@ -4582,20 +4632,35 @@ }, /area/f13/wasteland) "sp" = ( -/obj/machinery/light{ - pixel_x = -16 +/obj/structure/curtain{ + color = "#4B724F" }, -/turf/open/floor/plasteel/f13/vault_floor/misc/rarewhite{ +/obj/structure/decoration/vent, +/obj/machinery/shower{ + dir = 1 + }, +/obj/effect/turf_decal/siding/thinplating/end{ + color = "#93BC9E"; + dir = 1 + }, +/obj/machinery/door/window/left{ + dir = 1 + }, +/obj/structure/window{ + dir = 8 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc{ color = "#ADDEBA" }, /area/f13/building) "sq" = ( -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/structure/curtain/directional/east{ color = "#5B8CA4" }, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "ss" = ( @@ -4741,12 +4806,6 @@ /obj/structure/table/wood{ density = 0 }, -/obj/machinery/light{ - icon_state = "lamp"; - pixel_y = 12; - plane = -5; - layer = 2.8 - }, /obj/machinery/computer/terminal{ dir = 4; doc_content_1 = "I'd like to report a crime happening at your house, Officer Mack. Your house is about to burn for the crimes you committed against the People's Republic of China! I hope your sleeping family wakes up in time.. GLORY TO CHINA."; @@ -4819,8 +4878,8 @@ density = 0 }, /obj/machinery/light/floor{ - layer = 4; - icon_state = "markerjade-on" + color = "#FF8CBA"; + light_color = "#FF8CBA" }, /turf/open/floor/wood_worn, /area/f13/building) @@ -4928,8 +4987,13 @@ /turf/closed/indestructible/riveted, /area/f13/tcoms) "tO" = ( -/turf/open/floor/carpet/red, -/area/f13/building) +/obj/effect/decal/cleanable/dirt/dust{ + color = "#11ff11" + }, +/obj/structure/flora/ausbushes/sparsegrass, +/obj/effect/turf_decal/weather/splineplain, +/turf/open/floor/plating/f13/outside/roof, +/area/f13/wasteland) "tR" = ( /turf/closed/wall/f13/ruins, /area/f13/building) @@ -4946,6 +5010,24 @@ color = "#6D6D6D" }, /area/f13/wasteland) +"tV" = ( +/obj/structure/window/fulltile/ruins{ + icon_state = "ruinswindowvertical" + }, +/obj/structure/railing{ + color = "#A47449"; + plane = -6; + dir = 4; + pixel_y = -10 + }, +/obj/structure/barricade/bars{ + color = "#A47449" + }, +/obj/structure/curtain/directional/east{ + color = "#4B724F" + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "tW" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/table/wood{ @@ -5102,34 +5184,14 @@ /turf/open/indestructible/ground/inside/dirt, /area/f13/wasteland) "uB" = ( -/obj/structure/sink/greyscale{ - pixel_y = 20; - pixel_x = -8 - }, -/obj/structure/toilet{ - pixel_y = 14; - pixel_x = 8 - }, -/obj/structure/mirror{ - pixel_x = -8; - pixel_y = 34 - }, -/obj/structure/closet/locker/medcabinet{ - pixel_y = 31; - pixel_x = 8 - }, -/obj/structure/toilet_paper{ - pixel_y = 16; - pixel_x = 24 - }, -/obj/item/soap{ - color = "#5B8CA4"; - pixel_y = 36; - pixel_x = 8 +/obj/item/kirbyplants{ + icon_state = "plant-17"; + pixel_y = 18; + pixel_x = 5 }, -/obj/item/bikehorn/rubberducky{ - pixel_y = 38; - pixel_x = 9 +/obj/structure/mirror/alt{ + pixel_y = 34; + pixel_x = -16 }, /turf/open/floor/plasteel/f13/vault_floor/misc/rarewhite{ color = "#ADDEBA" @@ -5206,7 +5268,7 @@ /area/f13/wasteland) "uK" = ( /obj/structure/closet/crate/large, -/obj/item/toy/plush/deer, +/obj/item/toy/plush/bigdeerplushie, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "uM" = ( @@ -5300,6 +5362,15 @@ /obj/structure/barricade/sandbags, /turf/open/indestructible/ground/outside/roof, /area/f13/building) +"vc" = ( +/obj/structure/rug/big/rug_blue_shag{ + layer = 1; + color = "#4B724F"; + dir = 8; + pixel_y = -6 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "ve" = ( /obj/machinery/power/port_gen/pacman/super, /turf/open/floor/plasteel/f13/vault_floor/white, @@ -5471,31 +5542,18 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "vX" = ( -/obj/structure/closet/crate/footchest{ - pixel_x = 6; - pixel_y = -8 - }, -/obj/item/seeds/harebell{ - pixel_x = 6; - pixel_y = -8 - }, -/obj/item/toy/plush/moffplushie/moonfly{ - pixel_x = 6; - pixel_y = -8 - }, -/obj/structure/dresser{ - pixel_y = 16; - pixel_x = -11 - }, -/obj/structure/mirror/alt{ - pixel_y = 34; - pixel_x = -12 +/obj/structure/closet/cabinet{ + pixel_y = 22; + pixel_x = 4 }, -/obj/item/kirbyplants{ - icon_state = "plant-18"; - pixel_x = 9; +/obj/item/clothing/under/dress/coyote/dinerdressmint{ + pixel_x = 5; pixel_y = 20 }, +/obj/item/clothing/under/dress/coyote/dinerdresspink{ + pixel_y = 20; + pixel_x = 5 + }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "vY" = ( @@ -5517,12 +5575,13 @@ /area/f13/building) "wa" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/structure/curtain/directional/east{ color = "#450159" }, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "we" = ( @@ -5596,28 +5655,17 @@ /turf/open/floor/wood_common, /area/f13/caves) "wv" = ( -/obj/effect/turf_decal/siding/wood{ - color = "#4F3528"; - dir = 5; - plane = -4 - }, -/obj/structure/flora/ausbushes/fullgrass{ - randomize_xy = 0 - }, -/obj/structure/flora/ausbushes/lavendergrass{ - randomize_xy = 0 - }, -/obj/structure/flora/ausbushes/ppflowers, -/obj/structure/flora/ausbushes/grassybush{ - randomize_xy = 0 +/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/weather/splineplain{ + dir = 4 }, -/turf/open/indestructible/ground/outside/dirt/light, +/turf/open/floor/plating/f13/outside/roof, /area/f13/wasteland) "wx" = ( -/obj/structure/chair/sofa/right{ +/obj/structure/chair/sofa/left{ color = "#4B724F"; dir = 8; - pixel_x = 7 + pixel_x = 8 }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) @@ -5771,21 +5819,13 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "wS" = ( -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, -/obj/structure/barricade/bars{ - color = "#A47449" - }, -/obj/structure/railing{ - color = "#A47449"; - plane = -6; - dir = 4 - }, -/obj/structure/curtain/directional/west{ - color = "#4B724F" +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light{ + dir = 1; + light_color = "#FF8CC9"; + color = "#FF72D5" }, -/turf/open/indestructible/ground/outside/civ/woodalt, +/turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "wW" = ( /obj/effect/decal/cleanable/dirt/dust, @@ -6108,13 +6148,24 @@ }, /area/f13/wasteland) "yl" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/light/fo13colored/Aqua{ - dir = 4; - color = "aqua" +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 16 }, -/turf/open/floor/wood_common/wood_common_dark, -/area/f13/building) +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 12; + pixel_x = 17 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "ym" = ( /obj/effect/turf_decal/weather/dirt{ dir = 4 @@ -6131,12 +6182,6 @@ }, /area/f13/wasteland) "yo" = ( -/obj/machinery/light{ - icon_state = "oldlamp"; - pixel_y = 20; - pixel_x = -10; - plane = -5 - }, /obj/structure/nightstand/small{ pixel_x = 6; pixel_y = 18 @@ -6144,7 +6189,8 @@ /obj/item/kirbyplants{ icon_state = "plant-05"; layer = 2.9; - pixel_x = -8 + pixel_x = -8; + pixel_y = 20 }, /obj/item/lock_construct{ pixel_x = 6; @@ -6271,8 +6317,8 @@ dir = 1 }, /obj/machinery/light/floor{ - layer = 4; - icon_state = "markerjade-on" + color = "lime"; + light_color = "#90FF6E" }, /turf/open/floor/wood_worn, /area/f13/building) @@ -6284,8 +6330,8 @@ density = 0 }, /obj/machinery/light/floor{ - layer = 4; - icon_state = "markerfuchsia-on" + color = "aqua"; + light_color = "#00FFFF" }, /turf/open/floor/wood_worn, /area/f13/building) @@ -6511,17 +6557,10 @@ }, /area/f13/wasteland) "zP" = ( -/obj/machinery/smartfridge/bottlerack/alchemy_rack{ +/obj/structure/bookcase{ pixel_y = 32; density = 0 }, -/obj/machinery/chem_master/primitive{ - pixel_y = 14; - density = 0 - }, -/obj/structure/chair/bench{ - pixel_y = -4 - }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "zQ" = ( @@ -6702,13 +6741,23 @@ }, /area/f13/wasteland) "AD" = ( -/obj/effect/turf_decal/weather/splineplain{ - dir = 10 +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 16 }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/plating/f13/outside/roof, -/area/f13/wasteland) +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_x = 19 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "AE" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/sign/poster/prewar/poster81{ @@ -7633,11 +7682,13 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "EF" = ( -/obj/structure/window/fulltile/ruins, /obj/effect/decal/cleanable/dirt/dust, /obj/structure/curtain/directional/north{ color = "#845f58" }, +/obj/structure/window/fulltile/house{ + dir = 2 + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "EG" = ( @@ -7762,11 +7813,13 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/building) "Fb" = ( -/obj/structure/bed/double, -/obj/item/bedsheet/doublesheet{ - color = "#4B724F" +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light{ + light_color = "#E74AE2"; + color = "#C000FF"; + dir = 4 }, -/turf/open/indestructible/ground/outside/civ/woodalt, +/turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "Fe" = ( /obj/effect/turf_decal/siding/wood{ @@ -8055,10 +8108,17 @@ /obj/machinery/light{ dir = 4 }, -/obj/structure/table/wood, -/obj/item/cool_book/druidguide, -/obj/item/pen/charcoal, -/turf/open/indestructible/ground/outside/civ/woodalt, +/obj/structure/bed/double, +/obj/item/bedsheet/doublesheet{ + color = "#4B724F" + }, +/obj/structure/table/wood{ + density = 0; + alpha = 1 + }, +/turf/open/floor/wood_worn{ + color = "#FDF2C3" + }, /area/f13/building) "Gn" = ( /obj/structure/fireplace{ @@ -8235,10 +8295,9 @@ }, /area/f13/wasteland) "GP" = ( -/obj/structure/chair/sofa/corner{ - color = "#4B724F"; - dir = 8; - pixel_x = 7 +/obj/structure/table/wood, +/obj/machinery/computer/terminal{ + dir = 8 }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) @@ -8756,7 +8815,9 @@ /obj/machinery/light/sign{ icon_state = "roulette_act"; name = "billards table"; - desc = "A table for a game of billards" + desc = "A table for a game of billards"; + layer = 2; + plane = -6 }, /obj/structure/table/wood{ layer = 2.5; @@ -8816,14 +8877,22 @@ /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "Jm" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/light{ - icon_state = "oldlamp"; - pixel_y = 10; - pixel_x = -10 +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam" }, -/turf/open/floor/wood_common/wood_common_dark, -/area/f13/building) +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 16 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "Jo" = ( /obj/structure/cable{ icon_state = "1-4" @@ -8951,9 +9020,8 @@ "JL" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ - icon_state = "tube2"; dir = 4; - color = "violet" + color = "red" }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) @@ -9021,8 +9089,23 @@ /obj/structure/destructible/tribal_torch/lit, /turf/open/floor/wood_wide, /area/f13/wasteland) +"JY" = ( +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 12; + pixel_x = 17 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "Ka" = ( -/obj/structure/rug/mat/welcome, +/obj/structure/rug/mat/welcome{ + pixel_y = 6 + }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "Kf" = ( @@ -9122,33 +9205,19 @@ }, /area/f13/wasteland) "Kv" = ( -/obj/structure/closet/cabinet{ - pixel_y = 18; - pixel_x = -5 - }, -/obj/item/storage/belt/utility/gardener{ - pixel_y = 12; - pixel_x = -6 - }, -/obj/item/clothing/gloves/botanic_leather{ - pixel_y = 16; - pixel_x = -6 - }, -/obj/item/clothing/head/sunflowercrown{ - pixel_y = 14; - pixel_x = -4 - }, -/obj/item/reagent_containers/spray/waterflower{ - pixel_y = 10; - pixel_x = -5 +/obj/structure/dresser{ + pixel_y = 20; + pixel_x = 12; + density = 0 }, -/obj/item/toy/plush/beeplushie{ - pixel_y = 10; - pixel_x = -6 +/obj/structure/mirror/alt{ + pixel_y = 34; + pixel_x = 11 }, -/obj/item/clothing/under/kuddles/rattyskirtgreen{ - pixel_y = 14; - pixel_x = -4 +/obj/item/kirbyplants{ + icon_state = "plant-18"; + pixel_x = -8; + pixel_y = 18 }, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) @@ -9408,10 +9477,26 @@ /area/f13/wasteland) "Ly" = ( /obj/structure/towel_rack{ - pixel_x = -32 + pixel_x = -32; + pixel_y = 18 }, -/turf/open/floor/plasteel/f13/vault_floor/misc/rarewhite{ - color = "#ADDEBA" +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam" + }, +/obj/structure/sink/deep_water{ + name = "bath water"; + alpha = 1; + desc = "Nice warm water for bathing." + }, +/obj/effect/turf_decal/siding/thinplating{ + color = "#93BC9E"; + dir = 1 + }, +/turf/open/indestructible/ground/outside/water{ + name = "bath water"; + desc = "Nice warm water for bathing." }, /area/f13/building) "Lz" = ( @@ -9444,7 +9529,7 @@ color = "#A47449"; plane = -6 }, -/obj/structure/curtain/directional/south{ +/obj/structure/curtain/directional/north{ color = "#4B724F" }, /turf/open/indestructible/ground/outside/civ/woodalt, @@ -9812,8 +9897,9 @@ "MQ" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ - icon_state = "tube2"; - dir = 4 + dir = 4; + light_color = "#90FF6E"; + color = "lime" }, /turf/open/floor/f13{ color = "#d9c4b9"; @@ -10535,22 +10621,33 @@ /turf/open/floor/plasteel/f13/vault_floor/plating, /area/f13/building/hospital) "Qa" = ( -/obj/structure/curtain{ - color = "#4B724F" +/obj/structure/sink/cupboard{ + pixel_y = 12; + pixel_x = 16 }, -/obj/machinery/shower{ - pixel_y = 27 +/obj/structure/toilet{ + color = "#D1D1D1"; + pixel_y = 14; + pixel_x = -8 }, -/obj/structure/decoration/vent, -/obj/effect/turf_decal/siding/thinplating{ - color = "#93BC9E"; - dir = 6 +/obj/structure/closet/locker/medcabinet{ + pixel_y = 31; + pixel_x = -8 }, -/obj/effect/turf_decal/siding/thinplating{ - color = "#93BC9E"; - dir = 9 +/obj/item/soap{ + color = "#5B8CA4"; + pixel_y = 36; + pixel_x = -8 }, -/turf/open/floor/plasteel/f13/vault_floor/misc{ +/obj/item/bikehorn/rubberducky{ + pixel_y = 38; + pixel_x = -8 + }, +/obj/structure/toilet_paper{ + pixel_x = -25; + pixel_y = 14 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/rarewhite{ color = "#ADDEBA" }, /area/f13/building) @@ -10737,6 +10834,25 @@ }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) +"QJ" = ( +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_x = 19 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 12; + pixel_x = 17 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "QL" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/blood, @@ -10837,13 +10953,30 @@ /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "QZ" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/window/fulltile/ruins, -/obj/structure/curtain/directional/north{ - color = "#845f58" +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 16 }, -/turf/open/floor/wood_common/wood_common_dark, -/area/f13/building) +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_x = 19 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 12; + pixel_x = 17 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "Rb" = ( /mob/living/simple_animal/hostile/supermutant/rangedmutant{ faction = list("raider") @@ -11336,12 +11469,13 @@ /area/f13/wasteland) "SM" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/structure/curtain/directional/east{ color = "#845f58" }, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "SS" = ( @@ -11538,8 +11672,9 @@ /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "Ty" = ( -/obj/structure/barricade/wooden, -/turf/closed/wall/f13/wood, +/turf/closed/wall/f13/wood{ + color = "#cababa" + }, /area/f13/building) "Tz" = ( /obj/effect/turf_decal/weather/dirt{ @@ -11580,8 +11715,9 @@ "TI" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ - icon_state = "tube2"; - dir = 4 + dir = 4; + light_color = "#FF8CC9"; + color = "#FF72D5" }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) @@ -11821,6 +11957,30 @@ name = "air" }, /area/f13/wasteland) +"UC" = ( +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam" + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 16 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 12; + pixel_x = 17 + }, +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "UD" = ( /obj/structure/table/wood{ density = 0 @@ -12531,17 +12691,19 @@ /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "Xa" = ( -/obj/structure/bookcase{ +/obj/effect/fake_stairs/south{ + color = "#A47449" + }, +/obj/structure/curtain/directional/south{ + color = "#4B724F" + }, +/obj/structure/table/wood{ density = 0; - pixel_x = -33 + alpha = 1 }, -/obj/structure/rug/big/rug_blue_shag{ - layer = 1; - color = "#4B724F"; - dir = 8; - pixel_y = -2 +/turf/open/floor/wood_worn{ + color = "#FDF2C3" }, -/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "Xb" = ( /turf/open/floor/plasteel/f13/vault_floor/misc/bar, @@ -12615,7 +12777,8 @@ "Xu" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/light{ - icon_state = "tube_emergency"; + light_color = "#E74AE2"; + color = "#C000FF"; dir = 1 }, /turf/open/floor/wood_common/wood_common_dark, @@ -12891,6 +13054,16 @@ /obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/carpet/arcade, /area/f13/building) +"Yw" = ( +/obj/effect/turf_decal/weather/splineplain{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust{ + color = "#11ff11" + }, +/obj/structure/flora/ausbushes/fullgrass, +/turf/open/floor/plating/f13/outside/roof, +/area/f13/wasteland) "Yx" = ( /obj/effect/turf_decal/weather/dirt{ color = "#a98c5d" @@ -13047,15 +13220,23 @@ }, /area/f13/building) "YZ" = ( -/obj/effect/turf_decal/weather/splineplain{ - dir = 8 +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam" }, -/obj/effect/decal/cleanable/dirt/dust{ - color = "#11ff11" +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "steam"; + pixel_y = 12; + pixel_x = 17 }, -/obj/structure/flora/ausbushes/sparsegrass, -/turf/open/floor/plating/f13/outside/roof, -/area/f13/wasteland) +/turf/open/indestructible/ground/outside/water{ + name = "hot spring"; + color = "#BBBBBB" + }, +/area/f13/caves) "Za" = ( /obj/structure/chair/sofa/right{ color = "#334E23"; @@ -13120,10 +13301,6 @@ "Zm" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/table/wood/bar, -/obj/machinery/light{ - icon_state = "littlelamp-on"; - color = "#1F1F1F" - }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "Zn" = ( @@ -13136,12 +13313,6 @@ /area/f13/building) "Zq" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/light{ - icon_state = "oldlamp"; - pixel_y = 23; - pixel_x = 4; - plane = -5 - }, /obj/structure/table/wood{ pixel_y = -10; pixel_x = 4 @@ -43171,7 +43342,7 @@ Xr ed ed ed -ed +jk jk hm hm @@ -43427,7 +43598,6 @@ ed ed ed ed -ed jk jk hm @@ -43623,6 +43793,7 @@ hm hm hm hm +hm ed Xr ed @@ -43685,7 +43856,7 @@ ed ed ed jk -jk +hm hm hm hm @@ -45965,16 +46136,16 @@ ed jk Zo ep -yl +NA NO NO TI NO NO -NO ng NO NO +Fb Zo jk ed @@ -46256,7 +46427,7 @@ ed ed jk jk -hm +jk hm hm hm @@ -46513,7 +46684,7 @@ ed ed ed jk -hm +jk hm hm hm @@ -46770,8 +46941,8 @@ ed ed ed jk -hm -hm +jk +jk hm hm hm @@ -47027,8 +47198,8 @@ ed ed jk jk -iA -iA +jk +jk hm hm hm @@ -47283,10 +47454,10 @@ jk jk jk jk -YZ -YZ -AD -La +jk +jk +jk +hm hm hm hm @@ -47499,10 +47670,10 @@ ed jk jk jk -Fs -Fs -Fs -Fs +QZ +ga +QZ +ga jk jk Zo @@ -47542,7 +47713,7 @@ KU KU KU KU -LV +tO La hm hm @@ -47755,12 +47926,12 @@ ed ed jk jk -Fs -Fs -Fs -Fs -Fs -Fs +ga +AD +yl +JY +en +ga jk Zo Zo @@ -48012,12 +48183,12 @@ ed ed jk FS -Fs -Fs -Fs -Fs -Fs -Fs +ga +YZ +QZ +AD +yl +QJ jk jk jk @@ -48031,7 +48202,7 @@ Qo IU uF aJ -tO +BR aJ sd Zo @@ -48269,12 +48440,12 @@ ed ed jk eb -Fs -Fs -Fs -Fs -Fs -Fs +QZ +Jm +AD +Jm +QJ +ga jk jk jk @@ -48308,9 +48479,9 @@ JT yb SY KU -KU az KU +KU pK KU Lm @@ -48526,11 +48697,11 @@ ed ed jk FS -Fs -Fs -Fs -Fs -Fs +ga +UC +UC +AD +en FS FS jk @@ -48547,7 +48718,7 @@ BR uF uF uF -tO +BR Zo Uu Zg @@ -48784,9 +48955,9 @@ ed jk FS Fs +QJ Fs -Fs -Fs +en FS FS FS @@ -48794,7 +48965,7 @@ FS jk jk Zo -NO +wS NO MP MQ @@ -48824,7 +48995,7 @@ JT jr Ka uS -uS +vc pH LD Ng @@ -49080,7 +49251,7 @@ yb JT KU zP -uS +sc wx GP KU @@ -49336,11 +49507,11 @@ jq yb fR KU -KU Ap KU KU KU +KU LV La hm @@ -49594,7 +49765,7 @@ yb ye KU Kv -uS +rJ Xa cx LD @@ -49852,7 +50023,7 @@ ye KU vX nZ -Fb +KU Gl LD nX @@ -50107,9 +50278,9 @@ jq JT SY KU -KU +tV qQ -wS +KU KU KU mM @@ -50364,9 +50535,9 @@ lb JT WG xU -cm +Yw wv -nX +bN yA cm fT @@ -54728,7 +54899,7 @@ sq sq Zo pF -ga +pF wa Zo NO @@ -55233,7 +55404,7 @@ ih GO hm EF -Jm +NO ru Cj Zo @@ -55746,7 +55917,7 @@ Lw rH AQ hm -QZ +EF NO be Zo diff --git a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm index 00878f2fb49..60b92a08667 100644 --- a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm +++ b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm @@ -474,11 +474,13 @@ /turf/open/floor/wood_common, /area/f13/building/abandoned) "apv" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 1; - color = "#413527" +/obj/machinery/light{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13{ + icon_state = "redrustyfull" }, -/turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "apx" = ( /obj/structure/chair/booth, @@ -911,7 +913,12 @@ pixel_x = -12 }, /obj/item/reagent_containers/glass/bucket/wood{ - name = "milk bucket" + name = "milk bucket"; + pixel_y = 12 + }, +/obj/item/storage/bag/easterbasket{ + name = "egg basket"; + desc = "A basket for carrying eggs!" }, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) @@ -952,7 +959,9 @@ /turf/open/floor/carpet, /area/f13/building/abandoned) "aEO" = ( -/obj/structure/cave/stalagmite/four, +/obj/structure/closet/crate/trashcart{ + pixel_y = 12 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "aFq" = ( @@ -1017,10 +1026,19 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "aFK" = ( -/obj/machinery/light{ - dir = 4 +/obj/item/reagent_containers/food/condiment/sugar, +/obj/item/reagent_containers/food/condiment/sugar, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/milk, +/obj/item/reagent_containers/food/condiment/soymilk, +/obj/item/reagent_containers/food/condiment/soymilk, +/obj/item/storage/fancy/egg_box, +/obj/item/storage/fancy/egg_box, +/obj/structure/closet/locker/fridge, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13{ + icon_state = "redrustyfull" }, -/turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "aFS" = ( /turf/closed/wall/f13/supermart, @@ -2006,7 +2024,10 @@ /area/f13/building) "bpz" = ( /obj/item/reagent_containers/food/snacks/donut/jelly/trumpet, -/obj/structure/table/booth, +/obj/structure/table/booth{ + color = "#EFCCC0" + }, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13{ dir = 10; icon_state = "redmark" @@ -2226,11 +2247,15 @@ }, /area/f13/building) "bwk" = ( -/obj/item/reagent_containers/food/snacks/donut/jelly/caramel, -/obj/structure/table/booth, /obj/machinery/chem_dispenser/drinks/fullupgrade{ pixel_y = 30 }, +/obj/structure/table/booth{ + color = "#EFCCC0" + }, +/obj/item/reagent_containers/food/snacks/donut/jelly/apple, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13{ dir = 10; icon_state = "redmark" @@ -2344,7 +2369,16 @@ /turf/open/indestructible/ground/outside/ruins, /area/f13/caves) "bCe" = ( -/obj/structure/fermenting_barrel, +/obj/structure/cave/stalagmite{ + pixel_y = 12; + plane = -4; + anchored = 1 + }, +/obj/structure/cave/stalagmite/three{ + anchored = 1; + pixel_y = -8; + plane = -4 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "bCn" = ( @@ -3220,7 +3254,9 @@ }, /area/f13/building/massfusion) "chh" = ( -/mob/living/simple_animal/cow/brahmin/cow/tan, +/mob/living/simple_animal/cow/brahmin/cow/tan{ + name = "Bonnie" + }, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "chl" = ( @@ -3278,6 +3314,7 @@ /obj/item/kirbyplants{ icon_state = "plant-22" }, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13/wood, /area/f13/building) "cjG" = ( @@ -4924,12 +4961,11 @@ /turf/open/indestructible/ground/inside/mountain, /area/f13/building) "drB" = ( -/obj/structure/table/booth, -/obj/machinery/computer/terminal{ - dir = 8; - pixel_y = 5; - termtag = "Security" +/obj/structure/table/booth{ + color = "#EFCCC0" }, +/obj/item/reagent_containers/food/snacks/donut/jelly/berry, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13{ dir = 10; icon_state = "redmark" @@ -5561,9 +5597,6 @@ }, /area/f13/building/mall) "dIn" = ( -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/structure/curtain/directional/east{ color = "#8A806B" }, @@ -5574,6 +5607,10 @@ /obj/structure/decoration/rag{ layer = 3.4 }, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/plasteel/cult, /area/f13/building) "dIo" = ( @@ -5588,9 +5625,12 @@ /turf/open/floor/plasteel/f13/vault_floor/blue, /area/f13/building/mall) "dIW" = ( -/obj/structure/cave/stalagmite, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/item/pitchfork, +/obj/machinery/light/small{ + pixel_x = 16 + }, +/turf/open/indestructible/ground/outside/savannah, +/area/f13/building) "dIX" = ( /obj/effect/decal/cleanable/blood/drip, /turf/open/floor/wood_common, @@ -6213,7 +6253,8 @@ /turf/open/floor/f13/wood, /area/f13/wasteland) "edZ" = ( -/obj/structure/closet/crate/bin/trashbin, +/obj/machinery/microwave/stove, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13{ icon_state = "redrustyfull" }, @@ -6648,19 +6689,10 @@ }, /area/f13/caves) "etE" = ( -/obj/machinery/reagentgrinder, -/obj/structure/table/wood{ - layer = 2.5; - alpha = 1 - }, -/obj/structure/wood_counter{ - layer = 2; +/turf/open/indestructible/ground/outside/water/running{ dir = 8 }, -/turf/open/floor/f13{ - icon_state = "redrustyfull" - }, -/area/f13/building) +/area/f13/caves) "etK" = ( /obj/effect/decal/cleanable/dirt{ color = "#363636" @@ -6838,6 +6870,13 @@ /obj/structure/flora/ausbushes/lavendergrass, /turf/open/floor/f13/wood, /area/f13/wasteland) +"ezQ" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/fermenting_barrel, +/turf/open/floor/f13{ + icon_state = "redrustyfull" + }, +/area/f13/building) "ezS" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/turf_decal/weather/dirt, @@ -7958,8 +7997,10 @@ pixel_y = -6 }, /mob/living/simple_animal/pet/dog/pug{ - name = "Otto von Dogmark" + name = "Otto von Dogmark"; + wander = 0 }, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "fnp" = ( @@ -8230,12 +8271,10 @@ /turf/open/floor/f13/wood, /area/f13/wasteland) "fwF" = ( -/mob/living/simple_animal/chicken{ - wander = 0; - anchored = 1 - }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/wasteland) +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/chair/sofa/corp/left, +/turf/open/floor/wood_common/wood_common_dark, +/area/f13/building) "fwH" = ( /obj/effect/decal/cleanable/dirt{ color = "#363636" @@ -10153,7 +10192,9 @@ name = "wooden post"; pixel_x = -12 }, -/obj/structure/fermenting_barrel, +/obj/structure/fermenting_barrel{ + pixel_y = 4 + }, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "gyT" = ( @@ -11784,8 +11825,8 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/building) "hzM" = ( -/obj/structure/simple_door/dirtyglass, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/simple_door/house, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "hAf" = ( @@ -12985,8 +13026,11 @@ }, /area/f13/building/mall) "iqt" = ( -/obj/machinery/trading_machine, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/table/wood/bar, +/obj/item/kirbyplants/random{ + pixel_y = 8 + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "iqu" = ( @@ -13816,12 +13860,8 @@ /turf/open/floor/f13/wood, /area/f13/building/mall) "iNJ" = ( -/obj/structure/chair/bench{ - dir = 8 - }, -/obj/structure/chair/bench{ - dir = 8 - }, +/obj/structure/table/wood/bar, +/obj/machinery/recharger, /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust{ color = "#e4e4e4" }, @@ -14240,7 +14280,9 @@ }, /area/f13/wasteland) "jaq" = ( -/obj/structure/closet/crate/wicker, +/obj/structure/cave/stalagmite/one{ + anchored = 1 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "jaz" = ( @@ -14312,9 +14354,9 @@ "jcY" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/simple_door/room, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13{ - dir = 10; - icon_state = "redmark" + icon_state = "redrustyfull" }, /area/f13/building) "jdm" = ( @@ -14872,6 +14914,11 @@ color = "#413527"; dir = 8 }, +/obj/machinery/light/small{ + dir = 1; + light_color = "red"; + pixel_x = 16 + }, /turf/open/water, /area/f13/building) "jtt" = ( @@ -14913,10 +14960,10 @@ }, /area/f13/building) "jux" = ( -/obj/machinery/vending/cigarette, /obj/machinery/light{ dir = 4 }, +/obj/machinery/trading_machine, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "juL" = ( @@ -15059,9 +15106,6 @@ /turf/open/floor/wood_common, /area/f13/building/abandoned) "jyL" = ( -/obj/structure/closet/crate/large, -/obj/item/fishingrod, -/obj/item/fishingrod, /obj/machinery/light/small, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) @@ -15600,24 +15644,8 @@ }, /area/f13/building) "jRu" = ( -/obj/effect/turf_decal/siding/wood{ - dir = 4; - color = "#413527" - }, -/obj/structure/railing/wood{ - dir = 4 - }, -/obj/effect/turf_decal/siding/wood/end{ - color = "#413527" - }, -/obj/structure/flora/ausbushes/fullgrass{ - randomize_xy = 0 - }, -/obj/structure/flora/ausbushes/grassybush{ - layer = 2.1; - randomize_xy = 0 - }, -/turf/open/indestructible/ground/outside/dirt/dark, +/obj/structure/simple_door/room, +/turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "jRW" = ( /obj/effect/decal/cleanable/dirt{ @@ -15667,6 +15695,7 @@ "jSV" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/vending/cola/red, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "jSY" = ( @@ -17037,6 +17066,107 @@ /obj/structure/flora/ausbushes/fullgrass, /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) +"kFd" = ( +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -10; + dir = 8 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -10; + dir = 8; + pixel_y = 16 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -10; + dir = 8; + pixel_y = 10 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 6; + pixel_y = 15 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 2; + pixel_y = 12 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 2; + pixel_y = 4 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 7; + pixel_y = 2 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 7; + pixel_y = 11 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "mist"; + opacity = 1; + layer = 2.7; + pixel_x = -12 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "mist"; + opacity = 1; + layer = 2.7; + pixel_x = -12; + pixel_y = -9 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "mist"; + opacity = 1; + layer = 2.7; + pixel_x = -12; + pixel_y = 9 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 6; + dir = 8 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 6; + dir = 8; + pixel_y = 12 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 6; + dir = 8; + pixel_y = 6 + }, +/turf/open/indestructible/ground/outside/water/running{ + dir = 8 + }, +/area/f13/caves) "kFn" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -17053,13 +17183,10 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "kFo" = ( -/obj/effect/decal/cleanable/dirt{ - color = "#363636" - }, -/turf/open/floor/f13{ - icon_state = "redrustyfull" +/turf/open/indestructible/ground/outside/water/running{ + dir = 4 }, -/area/f13/building) +/area/f13/caves) "kFD" = ( /obj/machinery/door/airlock/hatch, /turf/open/indestructible/ground/outside/roof, @@ -17100,14 +17227,11 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/building) "kHz" = ( -/obj/machinery/light/small{ - dir = 4 - }, /obj/effect/turf_decal/weather/dirt{ color = "#FFE3B0"; - dir = 1 + dir = 8 }, -/turf/open/indestructible/ground/outside/savannah, +/turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "kHO" = ( /obj/structure/table/reinforced{ @@ -17386,7 +17510,7 @@ "kQn" = ( /obj/structure/simple_door/glass, /obj/effect/decal/cleanable/dirt/dust, -/turf/open/indestructible/ground/outside/desert, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "kQo" = ( /obj/effect/turf_decal/weather/dirt{ @@ -18073,11 +18197,14 @@ /area/f13/building) "lnp" = ( /obj/structure/window/fulltile/ruins, -/turf/open/indestructible/ground/outside/desert, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "lnA" = ( -/obj/structure/simple_door/room, -/turf/open/indestructible/ground/inside/mountain, +/obj/machinery/light, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13{ + icon_state = "redrustyfull" + }, /area/f13/building) "lnM" = ( /obj/structure/lattice/catwalk, @@ -18673,6 +18800,8 @@ /area/f13/caves) "lFw" = ( /obj/structure/chair/stool/retro, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "lFB" = ( @@ -19459,9 +19588,11 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "men" = ( -/obj/structure/table/booth, /obj/effect/decal/cleanable/dirt/dust, -/obj/item/reagent_containers/food/snacks/donut/matcha, +/obj/structure/table/booth{ + color = "#EFCCC0" + }, +/obj/item/reagent_containers/food/snacks/donut/caramel, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "meK" = ( @@ -19678,6 +19809,20 @@ pixel_y = 2; pixel_x = -2 }, +/obj/item/toy/plush/bird{ + icon = 'icons/fallout/mobs/animals/farmanimals.dmi'; + icon_state = "chicken_brown"; + anchored = 1; + usesound = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + throwhitsound = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + pokesound = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + sound_dualwield_end = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + sound_dualwield_start = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + hitsound = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + unwieldsound = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + wieldsound = list('sound/creatures/chicken/chicken1.ogg','sound/creatures/chicken/chicken2.ogg','sound/creatures/chicken/chicken3.ogg','sound/creatures/chicken/chicken4.ogg'); + pixel_y = 32 + }, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "mmg" = ( @@ -20373,18 +20518,11 @@ /turf/open/indestructible/ground/inside/mountain, /area/f13/building) "mHN" = ( -/obj/item/reagent_containers/food/condiment/sugar, -/obj/item/reagent_containers/food/condiment/sugar, -/obj/item/reagent_containers/food/condiment/milk, -/obj/item/reagent_containers/food/condiment/milk, -/obj/item/reagent_containers/food/condiment/soymilk, -/obj/item/reagent_containers/food/condiment/soymilk, -/obj/item/storage/fancy/egg_box, -/obj/item/storage/fancy/egg_box, -/obj/structure/closet/locker/fridge, -/turf/open/floor/f13{ - icon_state = "redrustyfull" +/obj/effect/turf_decal/weather/dirt{ + color = "#FFE3B0"; + dir = 4 }, +/turf/open/indestructible/ground/outside/savannah, /area/f13/building) "mIa" = ( /obj/effect/turf_decal/weather/dirt{ @@ -20826,8 +20964,9 @@ }, /area/f13/wasteland) "mSx" = ( +/obj/structure/closet/crate/bin, +/obj/machinery/light, /obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/deepfryer, /turf/open/floor/f13{ icon_state = "redrustyfull" }, @@ -20871,7 +21010,7 @@ }, /area/f13/building) "mTz" = ( -/obj/structure/simple_door/room/dirty, +/obj/structure/simple_door/metal, /turf/open/floor/wood_common{ color = "#779999" }, @@ -22667,12 +22806,10 @@ }, /area/f13/building/mall) "nUs" = ( -/mob/living/simple_animal/cow/brahmin/cow/tan, -/obj/effect/turf_decal/weather/dirt{ - color = "#FFE3B0"; - dir = 1 +/obj/structure/barricade/bars, +/turf/open/indestructible/ground/outside/water/running{ + dir = 8 }, -/turf/open/indestructible/ground/outside/savannah, /area/f13/building) "nUP" = ( /obj/structure/stairs/east{ @@ -22848,10 +22985,6 @@ /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "nZL" = ( -/obj/structure/closet/crate/trashcart{ - opened = 1; - name = "the humpster" - }, /obj/machinery/light/small{ dir = 1 }, @@ -23485,9 +23618,13 @@ /turf/open/floor/plating/f13/outside/roof/metal/corrugated, /area/f13/wasteland) "owp" = ( -/obj/structure/simple_door/room, -/obj/effect/decal/cleanable/dirt/dust, -/turf/open/indestructible/ground/outside/civ/woodalt, +/obj/effect/turf_decal/weather/dirt{ + color = "#FFE3B0" + }, +/mob/living/simple_animal/cow/brahmin/cow{ + name = "Belle" + }, +/turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "owq" = ( /obj/effect/decal/cleanable/blood/drip, @@ -23512,9 +23649,7 @@ /area/f13/building) "owB" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/chair/bench{ - pixel_y = 10 - }, +/obj/structure/chair/sofa/corp/right, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "owR" = ( @@ -24453,6 +24588,15 @@ /obj/structure/flora/ausbushes/fullgrass, /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) +"oZO" = ( +/obj/machinery/light{ + dir = 1; + light_color = "#706891"; + pixel_y = 6 + }, +/obj/structure/table/wood, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "pcn" = ( /obj/machinery/smoke_machine{ name = "HVAC Machine" @@ -24568,9 +24712,12 @@ /turf/open/floor/plasteel/f13/stone/rugged, /area/f13/building) "pgE" = ( -/obj/structure/cave/stalagmite/one, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/structure/simple_door/room, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "pgN" = ( /obj/structure/bed/wooden{ pixel_y = 14 @@ -24782,11 +24929,18 @@ /turf/open/floor/f13/wood, /area/f13/wasteland) "pqY" = ( -/obj/machinery/microwave/stove, -/obj/machinery/light{ - dir = 4; - pixel_y = -16 +/obj/structure/table/wood{ + layer = 2.5; + alpha = 1 }, +/obj/structure/wood_counter{ + layer = 2; + dir = 4 + }, +/obj/structure/window{ + dir = 4 + }, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13{ icon_state = "redrustyfull" }, @@ -24848,10 +25002,11 @@ }, /area/f13/building) "pte" = ( -/obj/structure/lattice/catwalk{ +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust{ + icon = 'icons/obj/smooth_structures/catwalk.dmi'; + icon_state = "catwalk"; color = "#A47449" }, -/turf/open/transparent/openspace, /area/f13/building) "ptQ" = ( /obj/effect/turf_decal/weather/dirt{ @@ -24899,9 +25054,8 @@ /turf/open/floor/f13/wood, /area/f13/wasteland) "puH" = ( -/obj/structure/simple_door/glass, -/turf/open/indestructible/ground/outside/desert, -/area/f13/building) +/turf/open/indestructible/ground/outside/water/running, +/area/f13/caves) "puJ" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/spacevine, @@ -25439,7 +25593,10 @@ /turf/open/floor/wood_common, /area/f13/building/abandoned) "pKF" = ( -/obj/structure/closet/crate/trashcart, +/obj/structure/cave/stalagmite/four{ + anchored = 1; + pixel_y = 14 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "pKI" = ( @@ -25695,6 +25852,13 @@ /obj/structure/flora/tallgrass2, /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) +"pTt" = ( +/obj/structure/chair/stool/retro/black, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13{ + icon_state = "redrustyfull" + }, +/area/f13/building) "pTK" = ( /obj/structure/table, /obj/machinery/computer/security/telescreen/entertainment{ @@ -25839,6 +26003,7 @@ "pXs" = ( /obj/structure/simple_door/room, /obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/white, /area/f13/building) "pYd" = ( @@ -26217,6 +26382,12 @@ /turf/open/floor/wood_wide, /area/f13/wasteland) "qiY" = ( +/obj/machinery/computer/terminal{ + dir = 1 + }, +/obj/structure/table/booth{ + color = "#EFCCC0" + }, /turf/open/floor/f13{ icon_state = "redrustyfull" }, @@ -26379,6 +26550,10 @@ /obj/effect/gibspawner/generic/animal, /turf/open/floor/plasteel/f13/vault_floor/plating, /area/f13/building/mall) +"qob" = ( +/obj/structure/legion_extractor, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "qoB" = ( /obj/structure/table/reinforced, /obj/machinery/computer/terminal{ @@ -26758,7 +26933,6 @@ /turf/open/floor/f13/wood, /area/f13/wasteland) "qAd" = ( -/obj/structure/closet/crate/wicker, /obj/item/reagent_containers/food/snacks/grown/wheat, /obj/item/reagent_containers/food/snacks/grown/wheat, /obj/item/reagent_containers/food/snacks/grown/wheat, @@ -26777,6 +26951,9 @@ /obj/item/reagent_containers/food/snacks/grown/wheat, /obj/item/reagent_containers/food/snacks/grown/wheat, /obj/item/reagent_containers/food/snacks/grown/wheat, +/obj/structure/closet/crate/wicker{ + anchored = 1 + }, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "qAE" = ( @@ -26899,14 +27076,15 @@ }, /area/f13/building) "qHi" = ( -/obj/structure/cargocrate{ - icon_state = "cargocrate3" - }, /obj/structure/railing{ climbable = 0; color = "#A47449"; resistance_flags = 64 }, +/obj/structure/closet/crate/trashcart{ + opened = 1; + name = "the humpster" + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/building) "qHm" = ( @@ -26951,10 +27129,12 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/building) "qJP" = ( -/obj/machinery/light, -/turf/open/floor/f13{ - icon_state = "redrustyfull" +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/table/booth{ + color = "#EFCCC0" }, +/obj/item/reagent_containers/food/snacks/donut/laugh, +/turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "qJQ" = ( /obj/structure/wreck/trash/machinepiletwo, @@ -27070,12 +27250,12 @@ /turf/open/floor/f13/wood, /area/f13/building/mall) "qNW" = ( -/obj/structure/sink/kitchen{ - pixel_y = 19; - layer = 1.9 +/obj/structure/sink/deep_water{ + name = "river water"; + alpha = 1 }, -/turf/open/floor/f13{ - icon_state = "redrustyfull" +/turf/open/indestructible/ground/outside/water/running{ + dir = 8 }, /area/f13/building) "qNX" = ( @@ -27326,7 +27506,6 @@ "qYc" = ( /obj/item/reagent_containers/glass/bucket/wood, /obj/machinery/smartfridge/bottlerack/gardentool, -/obj/item/reagent_containers/glass/bucket/wateringcan, /obj/item/storage/bag/plants, /obj/item/shovel/spade, /obj/item/cultivator, @@ -28605,11 +28784,9 @@ /turf/open/floor/carpet/arcade, /area/f13/building/mall) "rMp" = ( -/obj/structure/table/wood/bar, -/obj/structure/legion_extractor{ - pixel_y = 8 +/turf/closed/wall/f13/wood{ + color = "#cababa" }, -/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "rMQ" = ( /obj/effect/decal/cleanable/dirt/dust{ @@ -29011,12 +29188,10 @@ /turf/open/floor/f13/wood, /area/f13/ruins) "scQ" = ( -/obj/structure/flora/ausbushes/stalkybush{ - randomize_xy = 0 - }, /obj/effect/turf_decal/weather/dirt{ dir = 10 }, +/obj/structure/pondlily_small, /turf/open/indestructible/ground/outside/water, /area/f13/caves) "sdm" = ( @@ -30180,7 +30355,12 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/building) "sWI" = ( -/obj/structure/cave/stalagmite/two, +/obj/structure/cave/stalagmite/two{ + anchored = 1; + pixel_x = 4; + pixel_y = 12; + plane = -2 + }, /turf/open/indestructible/ground/outside/water, /area/f13/caves) "sWJ" = ( @@ -30223,9 +30403,6 @@ /obj/effect/decal/cleanable/dirt{ color = "#363636" }, -/obj/machinery/processor/chopping_block{ - pixel_y = 8 - }, /obj/structure/table/wood{ layer = 2.5; alpha = 1 @@ -30234,6 +30411,10 @@ layer = 2; dir = 4 }, +/obj/machinery/light{ + dir = 8; + pixel_y = -16 + }, /turf/open/floor/f13{ icon_state = "redrustyfull" }, @@ -30324,7 +30505,7 @@ /obj/structure/window/fulltile/ruins{ icon_state = "ruinswindowvertical" }, -/turf/open/indestructible/ground/outside/desert, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "tbw" = ( /obj/machinery/smoke_machine{ @@ -30368,13 +30549,14 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "tcy" = ( -/obj/structure/lattice/catwalk{ - color = "#A47449" - }, /obj/machinery/light/small{ dir = 4 }, -/turf/open/transparent/openspace, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust{ + icon = 'icons/obj/smooth_structures/catwalk.dmi'; + icon_state = "catwalk"; + color = "#A47449" + }, /area/f13/building) "tcD" = ( /obj/effect/decal/cleanable/blood/drip, @@ -30383,15 +30565,12 @@ /area/f13/building/hospital) "tcN" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/sink/greyscale{ - pixel_y = 24 - }, -/obj/structure/wood_counter{ - pixel_y = 4 - }, /obj/structure/mirror/alt{ pixel_y = 34 }, +/obj/structure/sink/cupboard{ + pixel_y = 12 + }, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "tcP" = ( @@ -30896,11 +31075,14 @@ }, /area/f13/building/mall) "tre" = ( -/obj/machinery/light/small{ - dir = 8 +/obj/effect/decal/cleanable/dirt/dust{ + color = "#11ff11" }, -/turf/open/indestructible/ground/outside/savannah, -/area/f13/building) +/obj/effect/decal/cleanable/dirt/dust{ + color = "#11ff11" + }, +/turf/closed/indestructible/rock, +/area/f13/caves) "tsD" = ( /obj/machinery/smoke_machine{ name = "HVAC Machine" @@ -31103,7 +31285,21 @@ /turf/open/floor/plasteel/f13/stone/rugged, /area/f13/building) "tyE" = ( -/obj/structure/reagent_dispensers/cooking_oil, +/obj/structure/table/wood{ + layer = 2.5; + alpha = 1 + }, +/obj/structure/wood_counter{ + layer = 2 + }, +/obj/machinery/processor/chopping_block{ + pixel_y = 8 + }, +/obj/machinery/light{ + dir = 1; + light_color = "#706891" + }, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/f13{ icon_state = "redrustyfull" }, @@ -31445,10 +31641,12 @@ /turf/open/floor/wood_common, /area/f13/building/abandoned) "tJq" = ( -/obj/structure/pondlily_small, /obj/effect/turf_decal/weather/dirt{ dir = 8 }, +/mob/living/simple_animal/axolotl{ + wander = 0 + }, /turf/open/indestructible/ground/outside/water, /area/f13/caves) "tKo" = ( @@ -31901,7 +32099,15 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "tWa" = ( -/obj/structure/chair/bench, +/obj/structure/table/optable/primitive, +/obj/item/chopping_block{ + pixel_x = -1; + pixel_y = 10 + }, +/obj/item/kitchen/knife/butcher/tribal, +/obj/item/kitchen/knife/butcher{ + pixel_y = 8 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "tWj" = ( @@ -32537,9 +32743,11 @@ }, /area/f13/building/abandoned) "urX" = ( -/obj/machinery/light{ - dir = 8 +/obj/effect/turf_decal/siding/wood{ + dir = 1; + color = "#413527" }, +/obj/machinery/hydroponics/soil, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "usf" = ( @@ -32555,6 +32763,7 @@ "usp" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/simple_door/room, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "uss" = ( @@ -32807,10 +33016,11 @@ /turf/open/floor/f13/wood, /area/f13/wasteland) "uAQ" = ( -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "uAT" = ( @@ -33031,24 +33241,6 @@ pixel_x = 7; pixel_y = 11 }, -/obj/structure/flora/rock/pile/largejungle{ - icon = 'icons/obj/stairs.dmi'; - icon_state = "rockpile"; - dir = 1; - color = "grey"; - pixel_x = 17; - pixel_y = 16; - layer = 2.8 - }, -/obj/structure/flora/rock/pile/largejungle{ - icon = 'icons/obj/stairs.dmi'; - icon_state = "rockpile"; - dir = 1; - color = "grey"; - pixel_x = 17; - pixel_y = 0; - layer = 2.8 - }, /obj/structure/spacevine{ icon = 'icons/effects/effects.dmi'; icon_state = "smoke"; @@ -33075,6 +33267,26 @@ pixel_x = -12; pixel_y = 9 }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 6; + dir = 8 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 6; + dir = 8; + pixel_y = 12 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 6; + dir = 8; + pixel_y = 6 + }, /turf/open/indestructible/ground/outside/water, /area/f13/caves) "uJY" = ( @@ -33359,18 +33571,11 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "uSN" = ( -/obj/structure/reagent_dispensers/watertank/high{ - icon = 'icons/fallout/farming/farming_structures.dmi'; - icon_state = "rainwater_tank"; - name = "rainwater tank"; - desc = "A huge metal tank with a tap on the front. Rainwater is collected on larger surfaces then poured into a tank like this for storage." - }, -/obj/machinery/light{ - dir = 1; - light_color = "#706891"; - pixel_y = 6 +/obj/structure/reagent_dispensers/cooking_oil, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13{ + icon_state = "redrustyfull" }, -/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "uSX" = ( /obj/effect/decal/cleanable/dirt/dust, @@ -33712,6 +33917,13 @@ }, /turf/open/floor/f13/wood, /area/f13/building) +"veO" = ( +/obj/machinery/deepfryer, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13{ + icon_state = "redrustyfull" + }, +/area/f13/building) "vfi" = ( /obj/structure/car/rubbish4{ pixel_y = -9 @@ -34134,7 +34346,9 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "vsz" = ( -/obj/structure/cave/stalagmite/three, +/obj/structure/cave/stalagmite/four{ + anchored = 1 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "vsN" = ( @@ -34158,12 +34372,10 @@ /area/f13/caves) "vui" = ( /obj/effect/decal/cleanable/dirt/dust, -/obj/structure/chair/bench{ - pixel_y = 10 - }, /obj/machinery/light{ dir = 1 }, +/obj/structure/chair/sofa/corp, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "vuv" = ( @@ -34357,14 +34569,15 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "vBN" = ( -/obj/structure/deployable_barricade/wooden, -/obj/structure/railing{ - color = "#A47449" +/obj/effect/turf_decal/weather/dirt{ + color = "#FFE3B0"; + dir = 10 }, -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/destructible/tribal_torch/lit, -/turf/open/floor/wood_common, -/area/f13/wasteland) +/obj/effect/turf_decal/weather/dirtcorner{ + color = "#FFE3B0" + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/building) "vBT" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt/dust{ @@ -34928,6 +35141,7 @@ "vTt" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/chair/stool/retro, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "vTC" = ( @@ -34994,9 +35208,22 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "vVt" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/machinery/vending/cola, -/turf/open/floor/wood_common/wood_common_dark, +/obj/structure/table/wood{ + layer = 2.5; + alpha = 1 + }, +/obj/structure/wood_counter{ + layer = 2; + dir = 8 + }, +/obj/machinery/reagentgrinder, +/obj/machinery/light, +/obj/structure/window{ + dir = 4 + }, +/turf/open/floor/f13{ + icon_state = "redrustyfull" + }, /area/f13/building) "vVz" = ( /obj/structure/fluff/paper{ @@ -35305,8 +35532,11 @@ /turf/open/floor/plasteel/f13/vault_floor/blue/side, /area/f13/building/hospital) "whl" = ( -/turf/open/floor/plasteel/f13/vault_floor/misc/bar, -/area/f13/building) +/obj/structure/chair/bench{ + dir = 8 + }, +/turf/open/indestructible/ground/inside/mountain, +/area/f13/caves) "whm" = ( /obj/structure/table/wood, /obj/effect/decal/cleanable/dirt, @@ -35514,8 +35744,7 @@ name = "wooden post"; pixel_x = -12 }, -/obj/structure/closet/crate/large, -/obj/item/pitchfork, +/obj/structure/table/wood, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "wnW" = ( @@ -35527,12 +35756,14 @@ }, /area/f13/building/abandoned) "wnY" = ( -/obj/structure/table/booth, /obj/effect/decal/cleanable/dirt/dust, -/obj/item/storage/fancy/donut_box, /obj/effect/decal/cleanable/dirt{ color = "#363636" }, +/obj/structure/table/booth{ + color = "#EFCCC0" + }, +/obj/item/reagent_containers/food/snacks/donut/matcha, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "wop" = ( @@ -35989,17 +36220,8 @@ /area/f13/building/mall) "wCn" = ( /obj/structure/closet/crate/large, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, -/obj/item/reagent_containers/food/snacks/grown/oat, +/obj/item/fishingrod, +/obj/item/fishingrod, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "wCE" = ( @@ -36177,9 +36399,8 @@ }, /area/f13/building/massfusion) "wLX" = ( -/obj/structure/chair/bench{ - dir = 8 - }, +/obj/structure/table/wood/bar, +/obj/machinery/cell_charger, /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust{ color = "#e4e4e4" }, @@ -36240,6 +36461,17 @@ /obj/structure/flora/tallgrass2, /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) +"wNN" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt{ + color = "#363636" + }, +/obj/structure/table/booth{ + color = "#EFCCC0" + }, +/obj/item/reagent_containers/food/snacks/donut/choco, +/turf/open/floor/plasteel/f13/vault_floor/misc/bar, +/area/f13/building) "wNX" = ( /obj/effect/decal/cleanable/dirt/dust{ color = "#111111" @@ -36475,14 +36707,16 @@ /turf/open/floor/wood_wide, /area/f13/building) "wUY" = ( -/obj/machinery/light{ - dir = 8; - pixel_y = -16 +/obj/effect/turf_decal/weather/dirt{ + dir = 1 }, -/turf/open/floor/f13{ - icon_state = "redrustyfull" +/obj/structure/cave/stalagmite{ + pixel_y = 12; + plane = -4; + anchored = 1 }, -/area/f13/building) +/turf/open/indestructible/ground/inside/mountain, +/area/f13/caves) "wVc" = ( /obj/machinery/mineral/wasteland_vendor/attachments{ icon_state = "weapon_idle" @@ -36743,6 +36977,9 @@ /area/f13/building) "xdp" = ( /obj/structure/pondlily_big, +/mob/living/simple_animal/hostile/retaliate/frog{ + wander = 0 + }, /turf/open/indestructible/ground/outside/water, /area/f13/caves) "xdJ" = ( @@ -36886,6 +37123,7 @@ /area/f13/wasteland) "xku" = ( /obj/structure/rug/mat/welcome, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/building) "xkN" = ( @@ -37667,18 +37905,16 @@ /turf/open/floor/plasteel/f13/vault_floor/white, /area/f13/building/hospital) "xJi" = ( -/obj/structure/table/optable/primitive, -/obj/machinery/light/small, -/obj/item/chopping_block{ - pixel_x = -1; - pixel_y = 10 +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/destructible/tribal_torch/wall/lit{ + dir = 1; + pixel_y = 12; + pixel_x = 1 }, -/obj/item/kitchen/knife/butcher/tribal, -/obj/item/kitchen/knife/butcher{ - pixel_y = 8 +/turf/open/floor/wood_common{ + icon_state = "common-broken3" }, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/area/f13/wasteland) "xJu" = ( /obj/structure/closet/fridge, /obj/effect/spawner/lootdrop/f13/foodspawner, @@ -37745,22 +37981,30 @@ }, /area/f13/building) "xLx" = ( -/obj/effect/decal/cleanable/dirt/dust, -/obj/structure/table/wood{ - layer = 2.5; - alpha = 1 +/obj/structure/barricade/wooden/planks{ + density = 0; + pixel_y = -2 }, -/obj/structure/wood_counter{ - layer = 2; - dir = 4 +/obj/structure/barricade/wooden/planks{ + density = 0; + pixel_y = -7 }, -/obj/machinery/light{ - dir = 8; - pixel_y = -16 +/obj/structure/barricade/wooden/planks{ + density = 0; + pixel_y = 3 }, -/turf/open/floor/f13{ - icon_state = "redrustyfull" +/obj/structure/barricade/wooden/planks{ + density = 0; + pixel_y = -12 + }, +/obj/structure/barricade/wooden/planks{ + density = 0; + pixel_y = 9 }, +/obj/machinery/light/floor{ + plane = -6 + }, +/turf/open/floor/wood_wide/wood_wide_light, /area/f13/building) "xLy" = ( /obj/structure/chair/bench{ @@ -38112,12 +38356,10 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "xWH" = ( -/mob/living/simple_animal/chicken, -/obj/effect/turf_decal/weather/dirt{ - color = "#FFE3B0"; - dir = 10 +/obj/structure/simple_door/room, +/turf/open/floor/f13{ + icon_state = "redrustyfull" }, -/turf/open/indestructible/ground/outside/dirt/light, /area/f13/building) "xWX" = ( /obj/effect/decal/cleanable/dirt, @@ -38182,11 +38424,12 @@ /turf/open/floor/plasteel/f13/vault_floor/purple, /area/f13/building/mall) "yaq" = ( -/obj/structure/window/fulltile/ruins{ - icon_state = "ruinswindowvertical" - }, /obj/structure/curtain/directional/east, /obj/effect/decal/cleanable/dirt/dust, +/obj/structure/window/fulltile/house{ + dir = 2; + icon_state = "housewindowvertical" + }, /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "yaA" = ( @@ -38358,12 +38601,12 @@ /turf/open/floor/wood_common, /area/f13/building/abandoned) "ygu" = ( -/obj/machinery/smartfridge/bottlerack/seedbin, /obj/machinery/light{ dir = 1; light_color = "#706891"; pixel_y = 6 }, +/obj/machinery/smartfridge/bottlerack/seedbin, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "ygx" = ( @@ -38484,7 +38727,7 @@ /area/f13/building/abandoned) "yiT" = ( /obj/effect/decal/cleanable/dirt/dust, -/turf/open/floor/carpet, +/turf/open/floor/carpet/black, /area/f13/building) "ykd" = ( /obj/effect/decal/cleanable/dirt/dust{ @@ -63525,7 +63768,7 @@ oez oez oez oez -vje +iRb kRU tRd oez @@ -63782,7 +64025,7 @@ oez oez oez oez -vje +iRb hFx hFx oez @@ -64039,7 +64282,7 @@ oez oez oez oez -vje +iRb vje hFx oez @@ -64295,7 +64538,7 @@ oez oez oez oez -vje +iRb vje vje hFx @@ -64551,7 +64794,7 @@ oez oez oez oez -vje +iRb vje vje vje @@ -64808,7 +65051,7 @@ oez oez oez oez -vje +iRb vje vje vje @@ -65065,7 +65308,7 @@ oez oez oez oez -vje +iRb vje hFx hFx @@ -65322,7 +65565,7 @@ oez oez oez oez -vje +iRb lEN lEN eAP @@ -65579,7 +65822,7 @@ oez oez oez oez -vje +iRb hFx nbO hFx @@ -65836,7 +66079,7 @@ oez oez oez oez -vje +iRb hFx oOE lEN @@ -66093,7 +66336,7 @@ oez oez oez oez -vje +iRb iGR eAP hFx @@ -66350,8 +66593,8 @@ oez oez oez oez -vje -gnu +iRb +gIf lEN qsW hFx @@ -66607,17 +66850,17 @@ oez oez oez oez -vje -vje -vje -vje -vje -vje -vje -vje +iRb +iRb +iRb +iRb +iRb +iRb +iRb +iRb +hFx hFx hFx -vje vje oez oez @@ -66865,15 +67108,15 @@ oez oez oez oez +iRb +iRb vje vje vje vje -vje -vje -vje -hFx -hFx +iRb +iRb +iRb hFx hFx pIT @@ -67122,17 +67365,17 @@ oez oez oez oez +iRb vje vje vje vje vje vje -vje -vje -vje -vje -vje +iRb +iRb +iRb +iRb ezo sII rQP @@ -67379,17 +67622,17 @@ oez oez oez oez +iRb vje vje vje vje vje vje -vje -vje -vje -vje -vje +iRb +iRb +iRb +iRb pIT sII rQP @@ -67636,17 +67879,17 @@ oez oez oez oez +iRb vje vje vje vje vje vje -vje -vje -vje -vje -vje +iRb +iRb +iRb +iRb pIT dEn rQP @@ -67893,17 +68136,17 @@ oez oez oez oez +iRb vje vje vje vje vje vje -vje -vje -vje -vje -vje +iRb +iRb +iRb +iRb pIT vTj lMQ @@ -68150,17 +68393,17 @@ oez oez oez oez +iRb +iRb vje vje vje vje -vje -vje -vje -vje -vje -vje -vje +iRb +iRb +iRb +iRb +iRb pIT rjU dmd @@ -68412,12 +68655,12 @@ iRb iRb iRb vje -vje -vje -vje -vje -vje iRb +iRb +iRb +puH +puH +kFo ezo dvV dLu @@ -68668,12 +68911,11 @@ gDZ gDZ gDZ iRb +vje iRb iRb -iRb -iRb -iRb -iRb +puH +etE iRb oez oez @@ -68683,6 +68925,7 @@ oez oez oez oez +oez tRd oez oez @@ -68919,18 +69162,18 @@ qAd klY lSW klY -dks +owp jhe -tre +ohN sxH gDZ gDZ gDZ gDZ gDZ +nUs gDZ gDZ -iRb oez oez oez @@ -69173,18 +69416,19 @@ enE iRb gDZ jts -klY +lSW klY klY dks -nUs -ohN +txV ohN +dIW gDZ -kVE +iBy +gyT gyT icJ -urX +qNW oNd uBg oez @@ -69196,7 +69440,6 @@ oez oez oez oez -oez tRd oez oez @@ -69433,15 +69676,16 @@ eLR klY klY chh -dks +dDR +vBN txV -ohN -ohN +mHN gDZ -rMp +rGz +gyT gyT icJ -klY +qNW oNd uBg oez @@ -69453,7 +69697,6 @@ oez oez oez oez -oez tRd oez oez @@ -69687,18 +69930,19 @@ enE iRb gDZ gej -bNE klY klY +klY +bNE dDR -xWH kHz -ohN +kHz gDZ ygu gyT -icJ -klY +gyT +urX +xLx oNd uBg oez @@ -69710,7 +69954,6 @@ oez oez oez oez -oez tRd oez oez @@ -69944,18 +70187,19 @@ enE iRb gDZ gDZ -gDZ -lnA -gDZ iMG +iMG +iMG +gDZ jRu gDZ gDZ gDZ -rGz +qob +gyT gyT icJ -klY +qNW oNd uBg oez @@ -69963,7 +70207,6 @@ oez oez oez oez -oez hLy hLy hLy @@ -70201,18 +70444,19 @@ nSB iRb bCe wCn -gJP -gJP +whl +whl +whl yaA gJP -gJP jaq vsz gDZ -iBy +kVE gyT -apv -klY +gyT +urX +qNW oNd uBg oez @@ -70220,7 +70464,6 @@ oez oez oez oez -oez hLy hxN xTM @@ -70456,7 +70699,7 @@ tmP cys enE iRb -pgE +jaq gJP rXM rXM @@ -70468,8 +70711,9 @@ gJP xma gyT gyT +gyT icJ -klY +qNW oNd uBg oez @@ -70477,7 +70721,6 @@ oez oez oez oez -oez hLy vPp cSI @@ -70723,10 +70966,11 @@ gJP gJP jyL gDZ -uSN +vYo gyT -icJ -klY +gyT +urX +xLx oNd uBg oez @@ -70734,7 +70978,6 @@ oez oez oez oez -oez hLy hxN loy @@ -70978,12 +71221,13 @@ beR dMW tke gJP -tWa +gDs gDZ -vYo +oZO +gyT gyT icJ -klY +qNW oNd uBg oez @@ -70991,7 +71235,6 @@ oez oez oez oez -oez hLy hLy hLy @@ -71226,21 +71469,22 @@ iRb iRb iRb iRb -gJP +pKF mkp usw sWI beR rmt mSQ -tke +wUY gJP tWa gDZ qYc gyT +gyT icJ -aFK +qNW oNd uBg oez @@ -71248,7 +71492,6 @@ oez oez oez oez -oez wss nzp xSO @@ -71492,16 +71735,16 @@ iRb iRb aEO gJP -gJP gDZ gDZ gDZ gDZ gDZ gDZ +nUs gDZ -iRb -wYG +gDZ +tre wYG pZq wYG @@ -71749,17 +71992,17 @@ iRb iRb iRb gJP -gJP -gDs -xJi gDZ qls -jUW kcn +jUW gDZ iRb -tcm -xVO +kFd +iRb +iRb +gIf +dST xVO xVO tcm @@ -72006,17 +72249,17 @@ gIL gIL iRb gJP -gJP -gJP -gJP +xWH +bNL +bNL lnA -qiY -qiY -qJP gDZ iRb -tcm -dST +iRb +iRb +iRb +gIf +tre xVO xVO tcm @@ -72263,17 +72506,17 @@ qNn gIL iRb gJP -gJP -gJP -pKF gDZ -tyE +ezQ +bNL hnO -qiY +gDZ +gDZ +gDZ gDZ iRb -tcm -xVO +gIf +tre xVO tcm tcm @@ -72520,13 +72763,13 @@ aFC cqv iRb gJP -dIW gDZ gDZ +xWH gDZ gDZ -ipP -xma +veO +uSN gDZ gDZ gDZ @@ -72777,13 +73020,13 @@ qNn gIL iRb gJP -iRb gDZ -edZ +aFK +bNL sXS -xLx -etE -qiY +hya +bNL +bNL nnV pwl lxD @@ -73034,13 +73277,13 @@ gIL gIL iRb gJP -iRb gDZ -qNW +tyE +bNL +bNL +bNL bNL bNL -kFo -qiY gDZ xhv dze @@ -73291,12 +73534,12 @@ oxM gIL iRb gJP -iRb gDZ -qiY -mHN -pqY -hya +edZ +bNL +bNL +bNL +bNL mSx gDZ gDZ @@ -73548,13 +73791,13 @@ oxM gIL iRb rXM -iRb -gDZ -qiY -gDZ -gDZ gDZ gDZ +bNL +pqY +pqY +pqY +vVt gDZ ejb wBC @@ -73807,10 +74050,10 @@ bkG dik bkG gDZ -qiY -qiY -wUY -qiY +bNL +apv +bNL +pTt qiY gDZ tcN @@ -74327,8 +74570,8 @@ lFw vTt nvg aht -whl -whl +cLD +cLD orb tcm tcm @@ -74577,14 +74820,14 @@ qAP mgO mgO mgO -puH +wOx xku cLD -whl -whl cLD -xDk +dCf cLD +xDk +dCf jSV orb kTF @@ -74837,8 +75080,8 @@ gpQ gDZ bTS dCf -whl -whl +cLD +cLD dCf xDk igv @@ -75093,12 +75336,12 @@ wCP jsq gol djD -whl +cLD lnR men pEx lnR -men +qJP pEx orb kTF @@ -75352,7 +75595,7 @@ gol aOb fmD evM -wnY +wNN amX evM wnY @@ -76643,7 +76886,7 @@ gDZ gDZ oQZ kTF -ujb +kTF oez oez wss @@ -76900,7 +77143,7 @@ bew gDZ kTF kTF -ujb +kTF oez oez wss @@ -77155,15 +77398,15 @@ iMa nZK kDC gDZ -bLP +xJi +kTF kTF -vBN oez oez -tcm -tcm -tcm -tcm +oez +oez +oez +oez wss aFJ fpN @@ -77668,7 +77911,7 @@ gGq xfr gGq gGq -ocf +pgE gGq nHf tNT @@ -78436,10 +78679,10 @@ gDZ dMq xAb xAb -owp +pXs gGq gGq -owp +ocf gGq gGq sYr @@ -79456,7 +79699,7 @@ iCH iCH iCH iCH -fwF +iCH mlH qUc mgO @@ -81000,7 +81243,7 @@ fgm gIL gIL gIL -owB +fwF fgm fgm gIL @@ -82289,10 +82532,10 @@ fgm fgm fgm jux -vVt hto qZD fIs +iqt gIL omG hqQ @@ -84869,10 +85112,10 @@ amL cQl iRb bEN -nMh +rMp wuQ pzY -nMh +rMp chl spB spB diff --git a/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm b/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm index 7e41234d4c5..df31ec95740 100644 --- a/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm +++ b/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm @@ -25773,10 +25773,14 @@ }, /area/f13/wasteland) "dhl" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/cave/minecart_fallen, -/turf/open/indestructible/ground/outside/sidewalk{ - icon_state = "outermaincornerouter - S" +/obj/effect/turf_decal/weather/dirtcorner{ + dir = 8 + }, +/obj/effect/turf_decal/weather/dirt{ + dir = 9 + }, +/turf/open/indestructible/ground/outside/water{ + name = "water" }, /area/f13/wasteland/city) "dhm" = ( @@ -26066,7 +26070,7 @@ }, /obj/structure/barricade/wooden/planks/pregame, /turf/open/floor/f13/wood, -/area/f13/caves) +/area/f13/store) "dlW" = ( /obj/effect/decal/cleanable/blood/drip, /obj/structure/spacevine, @@ -27102,6 +27106,10 @@ /obj/effect/decal/cleanable/dirt, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) +"dBl" = ( +/obj/machinery/light/small, +/turf/open/floor/plating/dirt, +/area/f13/ruins) "dBu" = ( /obj/structure/chair/stool, /obj/effect/decal/cleanable/dirt, @@ -29313,6 +29321,14 @@ /obj/structure/flora/ausbushes/grassybush, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland/coyote/nash/southeastcornercamp) +"ehS" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 9 + }, +/turf/open/indestructible/ground/outside/ruins{ + icon_state = "rubbleslab" + }, +/area/f13/caves) "ehY" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/chair/wood{ @@ -37908,6 +37924,12 @@ }, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) +"gxy" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 6 + }, +/turf/open/indestructible/ground/inside/mountain, +/area/f13/caves) "gxz" = ( /obj/structure/flora/ausbushes/ppflowers, /obj/structure/spacevine, @@ -38839,9 +38861,7 @@ dir = 1 }, /obj/structure/reagent_dispensers/water_cooler, -/turf/open/floor/f13{ - icon_state = "floorrusty" - }, +/turf/open/indestructible/ground/outside/ruins, /area/f13/ruins) "gIt" = ( /obj/structure/table/wood/bar, @@ -43482,6 +43502,10 @@ /obj/structure/table, /turf/open/floor/plasteel/f13/vault_floor/neutral/neutralchess, /area/f13/building/abandoned) +"hXI" = ( +/obj/effect/decal/cleanable/dirt, +/turf/open/indestructible/ground/outside/ruins, +/area/f13/ruins) "hXJ" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -46035,7 +46059,6 @@ }, /area/f13/wasteland) "iDk" = ( -/mob/living/simple_animal/hostile/ghoul, /turf/open/indestructible/ground/outside/dirt/dirtgrassline{ dir = 4 }, @@ -47899,6 +47922,14 @@ /obj/effect/decal/cleanable/dirt, /turf/open/indestructible/ground/outside/gravel, /area/f13/wasteland/coyote/nash/southeastcornercamp) +"jaP" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "outerbordercorner - S" + }, +/area/f13/wasteland/city) "jaV" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/rack, @@ -49196,9 +49227,11 @@ /turf/closed/wall, /area/f13/building/abandoned) "jxR" = ( -/obj/effect/decal/cleanable/dirt, +/obj/effect/turf_decal/weather/dirt{ + dir = 9 + }, /turf/open/indestructible/ground/outside/sidewalk{ - icon_state = "outermaincornerinner - E" + icon_state = "verticaloutermaintop" }, /area/f13/wasteland/city) "jyb" = ( @@ -57977,6 +58010,11 @@ icon_state = "horizontaloutermain2" }, /area/f13/wasteland/city) +"lNv" = ( +/obj/structure/barricade/wooden, +/obj/structure/barricade/wooden/planks/pregame, +/turf/open/indestructible/ground/outside/ruins, +/area/f13/ruins) "lNB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -58260,6 +58298,15 @@ }, /turf/open/indestructible/ground/outside/dirthole, /area/f13/wasteland/city/nash/theloop) +"lRo" = ( +/obj/effect/turf_decal/weather/dirt, +/obj/effect/turf_decal/weather/dirt{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/water{ + name = "water" + }, +/area/f13/wasteland/city) "lRp" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/structure/closet/crate/bin/trashbin{ @@ -58424,6 +58471,13 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/vault, /area/f13/ruins) +"lTP" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 8 + }, +/obj/structure/cave/minecart_fallen, +/turf/open/indestructible/ground/outside/desert, +/area/f13/wasteland/city) "lTR" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/turf_decal/weather/dirt{ @@ -61264,7 +61318,6 @@ }, /area/f13/wasteland) "mDA" = ( -/obj/structure/barricade/wooden, /turf/closed/wall/f13/wood{ color = "#cababa" }, @@ -61321,6 +61374,13 @@ icon_state = "horizontaloutermain2" }, /area/f13/wasteland/city) +"mDX" = ( +/obj/machinery/light/small{ + dir = 1; + light_color = "red" + }, +/turf/open/indestructible/ground/outside/dirt, +/area/f13/wasteland/city) "mEg" = ( /obj/structure/window/fulltile/house{ icon_state = "housewindowvertical" @@ -63845,6 +63905,14 @@ /obj/effect/decal/cleanable/generic, /turf/open/floor/f13/wood, /area/f13/building/abandoned) +"nnl" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/ruins{ + icon_state = "rubbleplate" + }, +/area/f13/caves) "nnn" = ( /obj/structure/chair/wood, /obj/item/restraints/handcuffs, @@ -75788,6 +75856,17 @@ /obj/structure/flora/grass/coyote/one, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) +"qvk" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 6 + }, +/obj/effect/turf_decal/weather/dirtcorner{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/water{ + name = "water" + }, +/area/f13/wasteland/city) "qvl" = ( /obj/effect/decal/cleanable/cobweb/cobweb2, /obj/effect/decal/cleanable/dirt, @@ -79782,6 +79861,47 @@ icon_state = "innerpavement" }, /area/f13/wasteland/city/nash/suburbs) +"rAF" = ( +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -11; + pixel_y = 4 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -10; + pixel_y = 12 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -6; + pixel_y = 5 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -6; + pixel_y = 19 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -6; + pixel_y = 3 + }, +/obj/effect/turf_decal/weather/dirt{ + dir = 9 + }, +/obj/effect/turf_decal/weather/dirt{ + dir = 10 + }, +/turf/open/indestructible/ground/outside/water{ + name = "water" + }, +/area/f13/wasteland/city) "rAL" = ( /turf/open/indestructible/ground/outside/road{ icon_state = "verticalleftborderright0" @@ -81638,9 +81758,7 @@ /obj/structure/simple_door/metal/store{ icon_state = "brokenstore" }, -/turf/open/floor/f13{ - icon_state = "floorrusty" - }, +/turf/open/indestructible/ground/outside/ruins, /area/f13/ruins) "sdl" = ( /obj/effect/decal/cleanable/dirt, @@ -84555,13 +84673,8 @@ /area/f13/wasteland) "sRu" = ( /obj/item/stack/sheet/metal/five, -/obj/structure/sign/poster/contraband/donut_corp{ - pixel_y = 32 - }, /obj/item/clothing/under/f13/police/trooper, -/turf/open/floor/f13{ - icon_state = "floorrusty" - }, +/turf/open/indestructible/ground/outside/ruins, /area/f13/ruins) "sRF" = ( /obj/structure/rack, @@ -85704,6 +85817,12 @@ /obj/machinery/light, /turf/open/floor/plasteel/vault, /area/f13/ruins) +"tgm" = ( +/obj/effect/turf_decal/weather/dirtcorner{ + dir = 8 + }, +/turf/open/indestructible/ground/inside/mountain, +/area/f13/caves) "tgn" = ( /turf/open/indestructible/ground/outside/roaddirt{ dir = 1; @@ -88448,6 +88567,14 @@ }, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) +"tNf" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/ruins{ + icon_state = "rubblepillar" + }, +/area/f13/caves) "tNg" = ( /obj/machinery/light/small/broken{ dir = 4 @@ -89794,7 +89921,6 @@ /area/f13/wasteland) "ufw" = ( /obj/structure/flora/stump, -/mob/living/simple_animal/hostile/ghoul, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building/abandoned) "ufB" = ( @@ -90516,9 +90642,7 @@ }, /obj/effect/validball_spawner, /obj/effect/spawner/lootdrop/f13/uncommon, -/turf/open/floor/f13{ - icon_state = "floorrusty" - }, +/turf/open/indestructible/ground/outside/ruins, /area/f13/ruins) "urY" = ( /obj/effect/decal/cleanable/blood/drip, @@ -94264,6 +94388,14 @@ /obj/structure/spacevine, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) +"vuK" = ( +/obj/effect/turf_decal/weather/dirtcorner{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "verticaloutermaintop" + }, +/area/f13/wasteland/city) "vuL" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -99481,9 +99613,7 @@ "wPh" = ( /obj/item/clothing/glasses/sunglasses, /obj/effect/decal/cleanable/dirt, -/turf/open/floor/f13{ - icon_state = "floorrusty" - }, +/turf/open/indestructible/ground/outside/ruins, /area/f13/ruins) "wPl" = ( /obj/structure/table/reinforced, @@ -102253,6 +102383,11 @@ icon_state = "floorrusty" }, /area/f13/ruins) +"xAR" = ( +/obj/structure/barricade/sandbags, +/obj/effect/turf_decal/weather/dirt, +/turf/open/indestructible/ground/inside/mountain, +/area/f13/caves) "xAV" = ( /obj/structure/flora/rock/pile/largejungle, /turf/open/indestructible/ground/outside/gravel, @@ -102834,7 +102969,6 @@ /obj/structure/flora/grass/wasteland{ icon_state = "tall_grass_3" }, -/mob/living/simple_animal/hostile/ghoul, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building/abandoned) "xJT" = ( @@ -102853,7 +102987,6 @@ }, /area/f13/building/coyote/nash/massfus/workshop) "xKb" = ( -/mob/living/simple_animal/hostile/ghoul, /turf/open/indestructible/ground/outside/dirt/light, /area/f13/building/abandoned) "xKc" = ( @@ -104037,9 +104170,14 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/building/coyote/nash/museum/groundfloor) "xZq" = ( -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible/ground/outside/sidewalk{ - icon_state = "outermaincornerouter - W" +/obj/effect/turf_decal/weather/dirt{ + dir = 6 + }, +/obj/effect/turf_decal/weather/dirt{ + dir = 5 + }, +/turf/open/indestructible/ground/outside/water{ + name = "water" }, /area/f13/wasteland/city) "xZu" = ( @@ -104088,6 +104226,15 @@ /obj/structure/obstacle/old_locked_door, /turf/open/floor/f13/wood, /area/f13/building/abandoned) +"yaG" = ( +/obj/structure/spacevine, +/obj/effect/turf_decal/weather/dirtcorner{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "horizontaltopbordertop0" + }, +/area/f13/wasteland/city) "yaO" = ( /obj/effect/decal/cleanable/dirt{ color = "#363636" @@ -104597,8 +104744,13 @@ }, /area/f13/building/abandoned) "ygU" = ( -/turf/closed/wall/f13/wood/house, -/area/f13/caves) +/obj/effect/turf_decal/weather/dirt{ + dir = 1 + }, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "horizontaltopbordertop0" + }, +/area/f13/wasteland/city) "ygV" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -135104,10 +135256,10 @@ aae aae aaB aaB -aaB +tgm asS -aae -eWm +rAF +jaP dRX orp dRX @@ -135362,9 +135514,9 @@ aaB aaB aaB aaB -hWr -awI -vnq +gxy +lRo +ygU kZH sxj sxj @@ -135620,8 +135772,8 @@ aaB aae aae dhl -iXF -vnq +qvk +ygU kTu uXF sxj @@ -135878,7 +136030,7 @@ asS asS xZq jxR -hIB +yaG kTu kqQ kqQ @@ -136133,8 +136285,8 @@ aae aae asS asS -tFt -awI +lTP +vuK vnq kTu kqQ @@ -141022,7 +141174,7 @@ mDA aaH aaH mDA -fit +mDX fit fit fit @@ -142562,7 +142714,7 @@ aaB aae jOV lzz -rYN +dBl mDA iLS vJP @@ -143075,7 +143227,7 @@ aak aaB aae aae -aae +aaB aae aae iLS @@ -143331,9 +143483,9 @@ aak aae aaB aaB -aaB -aaB -aaB +abV +ulY +aae aae iLS iLS @@ -143588,14 +143740,14 @@ aae aae aae aak -aak -aae -aaB aaB aae aae aae aae +aae +aae +aae iLS iLS iLS @@ -143845,12 +143997,12 @@ aae aae aae aae -aak -aae -aaB -aaB aaB -abV +aae +aae +aae +aae +aae aae aae drf @@ -144102,14 +144254,14 @@ aae aae aak aae -aae -aaB -aaB -aaB -aaB -abV -abV aaB +aae +aae +aae +aae +aae +aae +aae fit drf drf @@ -144360,7 +144512,7 @@ aae aae aae tKu -aaB +aae xfv xfv xfv @@ -144874,7 +145026,7 @@ adg adg anH aaB -aaB +mgs xfv hWL oVt @@ -145130,8 +145282,8 @@ hWr udd abV abV -neO -aaB +xAR +ehS xfv gIs qVS @@ -145387,9 +145539,9 @@ aaB udd abV abV -neO -aaB -xfv +xAR +nnl +lNv sRu wPh fcC @@ -145644,11 +145796,11 @@ aaB adg adg apb -aaB -aaB +iAa +tNf xfv urM -exw +hXI noZ bHk dnK @@ -149242,7 +149394,7 @@ aae aae aae asS -ygU +hmN hmN atq hmN @@ -149499,7 +149651,7 @@ aak aae aae asS -ygU +hmN xyC gkM jGA @@ -150270,7 +150422,7 @@ aae aae aae aae -ygU +hmN asI tDX vpi @@ -150527,7 +150679,7 @@ aaa aae aae aae -ygU +hmN hmN atq eHn @@ -150785,12 +150937,12 @@ aaa aaa aae aae -mSr +lgt ufw xKb xKb xJK -mSr +lgt hmN dOC iKn @@ -151299,12 +151451,12 @@ wNV aaa aae aae -mSr +lgt iDk -mSr -mSr +lgt +lgt lCJ -mSr +lgt hmN hmN hmN From 738a63fe14eaf1ebbfbcace34320cdb686a68bd8 Mon Sep 17 00:00:00 2001 From: "Wren \"Ody\" Hallow" Date: Wed, 6 Mar 2024 18:05:39 -0500 Subject: [PATCH 30/52] Ody has a mapping addiction This PR has some mapping bug fixes as well as a redo of a house on the New Boston z. --- .../Nash_and_Texarkana-Upper-2.dmm | 41 +- .../coyote_bayou/Nash_and_Texarkana-Upper.dmm | 108 +- .../coyote_bayou/Nash_and_Texarkana.dmm | 536 +- .../coyote_bayou/Newboston-Upper.dmm | 426 +- _maps/map_files/coyote_bayou/Newboston.dmm | 4859 +++++++++-------- 5 files changed, 3213 insertions(+), 2757 deletions(-) diff --git a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm index 053d2b7cd5a..f0a12444621 100644 --- a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm +++ b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper-2.dmm @@ -3529,7 +3529,8 @@ /area/f13/building/hospital) "nZ" = ( /obj/structure/easel{ - plane = -2 + plane = -2; + density = 0 }, /obj/structure/chair/stool/retro/black{ pixel_y = 12 @@ -3927,6 +3928,10 @@ /obj/machinery/light/floor{ plane = -6 }, +/obj/structure/railing{ + color = "#A47449"; + dir = 5 + }, /turf/open/floor/wood_worn{ color = "#6F4F40" }, @@ -4473,6 +4478,14 @@ "rI" = ( /obj/structure/table/wood/bar, /obj/item/pickaxe, +/obj/item/flashlight/lantern{ + icon_state = "lantern-on"; + layer = 2.8; + light_on = 1; + on = 1; + pixel_x = -5; + pixel_y = 15 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "rJ" = ( @@ -5193,6 +5206,10 @@ pixel_y = 34; pixel_x = -16 }, +/obj/structure/towel_rack{ + pixel_y = 31; + pixel_x = 8 + }, /turf/open/floor/plasteel/f13/vault_floor/misc/rarewhite{ color = "#ADDEBA" }, @@ -5642,6 +5659,10 @@ /obj/machinery/light/floor{ plane = -6 }, +/obj/structure/railing{ + color = "#A47449"; + dir = 8 + }, /turf/open/floor/wood_worn{ color = "#6F4F40" }, @@ -6219,6 +6240,10 @@ /obj/machinery/light/floor{ plane = -6 }, +/obj/structure/railing{ + color = "#A47449"; + dir = 9 + }, /turf/open/floor/wood_worn{ color = "#6F4F40" }, @@ -9476,10 +9501,6 @@ }, /area/f13/wasteland) "Ly" = ( -/obj/structure/towel_rack{ - pixel_x = -32; - pixel_y = 18 - }, /obj/structure/spacevine{ icon = 'icons/effects/effects.dmi'; icon_state = "smoke"; @@ -10647,6 +10668,10 @@ pixel_x = -25; pixel_y = 14 }, +/obj/machinery/light{ + dir = 8; + pixel_y = -16 + }, /turf/open/floor/plasteel/f13/vault_floor/misc/rarewhite{ color = "#ADDEBA" }, @@ -12697,10 +12722,6 @@ /obj/structure/curtain/directional/south{ color = "#4B724F" }, -/obj/structure/table/wood{ - density = 0; - alpha = 1 - }, /turf/open/floor/wood_worn{ color = "#FDF2C3" }, @@ -46672,7 +46693,7 @@ ed jk Qi FS -jk +FS FS FS ed diff --git a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm index 60b92a08667..0a48bb90ed6 100644 --- a/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm +++ b/_maps/map_files/coyote_bayou/Nash_and_Texarkana-Upper.dmm @@ -962,6 +962,9 @@ /obj/structure/closet/crate/trashcart{ pixel_y = 12 }, +/obj/machinery/light/small{ + dir = 1 + }, /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "aFq" = ( @@ -6688,11 +6691,6 @@ color = "#a1a1a1" }, /area/f13/caves) -"etE" = ( -/turf/open/indestructible/ground/outside/water/running{ - dir = 8 - }, -/area/f13/caves) "etK" = ( /obj/effect/decal/cleanable/dirt{ color = "#363636" @@ -17183,10 +17181,9 @@ /turf/open/indestructible/ground/outside/roof, /area/f13/wasteland) "kFo" = ( -/turf/open/indestructible/ground/outside/water/running{ - dir = 4 - }, -/area/f13/caves) +/obj/structure/table/wood, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "kFD" = ( /obj/machinery/door/airlock/hatch, /turf/open/indestructible/ground/outside/roof, @@ -17747,10 +17744,6 @@ /obj/effect/spawner/lootdrop/f13/uncommon, /turf/open/floor/wood_common, /area/f13/caves) -"kVE" = ( -/obj/machinery/smartfridge/drying_rack, -/turf/open/indestructible/ground/outside/civ/woodalt, -/area/f13/building) "kWS" = ( /obj/structure/closet/crate/large, /obj/item/stack/sheet/metal/fifty, @@ -27504,15 +27497,8 @@ /turf/open/floor/f13/wood, /area/f13/building) "qYc" = ( -/obj/item/reagent_containers/glass/bucket/wood, -/obj/machinery/smartfridge/bottlerack/gardentool, -/obj/item/storage/bag/plants, -/obj/item/shovel/spade, -/obj/item/cultivator, -/obj/item/cultivator/rake, -/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust{ - color = "#d7d7d7" - }, +/obj/machinery/smartfridge/bottlerack/seedbin, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "qYp" = ( /obj/effect/decal/cleanable/dirt{ @@ -28606,10 +28592,6 @@ /obj/effect/spawner/lootdrop/grille_or_trash, /turf/open/floor/f13/wood, /area/f13/wasteland) -"rGz" = ( -/obj/machinery/smartfridge/bottlerack/grownbin, -/turf/open/indestructible/ground/outside/civ/woodalt, -/area/f13/building) "rGR" = ( /obj/machinery/light/small{ dir = 8 @@ -30996,13 +30978,26 @@ /turf/open/floor/plating/dirt, /area/f13/wasteland) "tpg" = ( -/obj/structure/railing{ - color = "#A47449"; - density = 0; - dir = 1 +/obj/machinery/smartfridge/bottlerack/gardentool{ + pixel_x = 32 }, -/turf/open/transparent/openspace, -/area/f13/wasteland) +/obj/item/cultivator/rake{ + pixel_x = 32 + }, +/obj/item/cultivator{ + pixel_x = 32 + }, +/obj/item/shovel/spade{ + pixel_x = 32 + }, +/obj/item/storage/bag/plants{ + pixel_x = 32 + }, +/obj/item/reagent_containers/glass/bucket/wood{ + pixel_x = 32 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "tpK" = ( /turf/closed/wall/f13/store, /area/f13/building) @@ -33333,6 +33328,9 @@ "uLi" = ( /obj/machinery/washing_machine, /obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light{ + dir = 4 + }, /turf/open/floor/plasteel/f13/vault_floor/dark{ icon_state = "darkrusty" }, @@ -38606,7 +38604,7 @@ light_color = "#706891"; pixel_y = 6 }, -/obj/machinery/smartfridge/bottlerack/seedbin, +/obj/machinery/smartfridge/bottlerack/grownbin, /turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "ygx" = ( @@ -66602,7 +66600,7 @@ hFx hFx lEN hFx -vje +hFx vje vje oez @@ -66858,7 +66856,7 @@ iRb iRb iRb iRb -hFx +iRb hFx hFx vje @@ -67110,13 +67108,13 @@ oez oez iRb iRb +iRb vje vje vje vje iRb iRb -iRb hFx hFx pIT @@ -67366,6 +67364,7 @@ oez oez oez iRb +iRb vje vje vje @@ -67375,7 +67374,6 @@ vje iRb iRb iRb -iRb ezo sII rQP @@ -67623,6 +67621,7 @@ oez oez oez iRb +iRb vje vje vje @@ -67632,7 +67631,6 @@ vje iRb iRb iRb -iRb pIT sII rQP @@ -67880,6 +67878,7 @@ oez oez oez iRb +iRb vje vje vje @@ -67889,7 +67888,6 @@ vje iRb iRb iRb -iRb pIT dEn rQP @@ -68137,6 +68135,7 @@ oez oez oez iRb +iRb vje vje vje @@ -68146,7 +68145,6 @@ vje iRb iRb iRb -iRb pIT vTj lMQ @@ -68395,6 +68393,7 @@ oez oez iRb iRb +iRb vje vje vje @@ -68403,7 +68402,6 @@ iRb iRb iRb iRb -iRb pIT rjU dmd @@ -68655,12 +68653,12 @@ iRb iRb iRb vje +vje +iRb +iRb iRb iRb iRb -puH -puH -kFo ezo dvV dLu @@ -68912,11 +68910,11 @@ gDZ gDZ iRb vje -iRb +vje iRb puH -etE -iRb +puH +puH oez oez oez @@ -69424,7 +69422,7 @@ txV ohN dIW gDZ -iBy +kFo gyT gyT icJ @@ -69681,7 +69679,7 @@ vBN txV mHN gDZ -rGz +iBy gyT gyT icJ @@ -70195,7 +70193,7 @@ jRu gDZ gDZ gDZ -qob +qYc gyT gyT icJ @@ -70452,7 +70450,7 @@ gJP jaq vsz gDZ -kVE +qob gyT gyT urX @@ -70966,7 +70964,7 @@ gJP gJP jyL gDZ -vYo +kFo gyT gyT urX @@ -71480,8 +71478,8 @@ wUY gJP tWa gDZ -qYc -gyT +vYo +tpg gyT icJ qNW @@ -82799,7 +82797,7 @@ hqQ kES tcy pte -tpg +odJ oez oez oez diff --git a/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm b/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm index df31ec95740..6be2b2eafcc 100644 --- a/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm +++ b/_maps/map_files/coyote_bayou/Nash_and_Texarkana.dmm @@ -5471,6 +5471,16 @@ }, /turf/open/floor/f13/wood, /area/f13/store) +"avC" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small/broken{ + dir = 4 + }, +/obj/structure/chair/office/dark, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, +/area/f13/ruins) "avD" = ( /obj/structure/window/fulltile/house{ icon_state = "housewindowbroken" @@ -6419,16 +6429,20 @@ }, /area/f13/wasteland/city) "azi" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalleftborderright0" }, /area/f13/ruins) "azk" = ( -/obj/effect/turf_decal/weather/dirt, -/turf/open/indestructible/ground/outside/road{ - icon_state = "verticalrightborderleft0" +/obj/structure/rack, +/obj/item/weldingtool, +/obj/item/stack/cable_coil, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small, +/obj/effect/spawner/lootdrop/f13/uncommon, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "horizontaloutermain0" }, /area/f13/ruins) "azl" = ( @@ -6502,41 +6516,49 @@ /turf/open/floor/plasteel/vault, /area/f13/ruins) "azz" = ( -/obj/structure/reagent_dispensers/barrel/explosive, +/obj/machinery/button/door{ + id = "wshop"; + pixel_x = 8; + pixel_y = 32 + }, /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "verticalleftborderleft2bottom" }, /area/f13/ruins) "azA" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalleftborderright2bottom" }, /area/f13/ruins) "azC" = ( /obj/structure/table/wood, -/obj/item/flashlight{ - icon_state = "seclite" +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/recharger, +/obj/item/stock_parts/cell{ + icon_state = "hpcell" + }, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" }, -/turf/open/floor/f13/wood, /area/f13/ruins) "azG" = ( -/obj/structure/table/wood, -/obj/item/paper, -/obj/item/pen, -/obj/item/flashlight{ - icon_state = "seclite" +/obj/structure/closet/cabinet/anchored{ + pixel_y = 10 + }, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" }, -/turf/open/floor/f13/wood, /area/f13/ruins) "azH" = ( -/obj/structure/table/wood, -/obj/machinery/computer/terminal{ - pixel_y = 3; - termtag = "Business" +/obj/structure/dresser{ + pixel_y = 10 + }, +/obj/structure/mirror{ + pixel_y = 32 + }, +/turf/open/floor/f13/wood{ + icon_state = "housewood1-broken" }, -/turf/open/floor/f13/wood, /area/f13/ruins) "azI" = ( /obj/item/trash/f13/borscht, @@ -6609,7 +6631,6 @@ }, /area/f13/wasteland/city) "azU" = ( -/obj/structure/reagent_dispensers/barrel/explosive, /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "verticalleftborderleft0" }, @@ -6619,10 +6640,11 @@ /obj/item/clothing/glasses/f13/biker{ pixel_y = 7 }, -/obj/item/am_containment/loot, -/obj/effect/turf_decal/weather/dirt{ - dir = 8 - }, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/spawner/lootdrop/f13/uncommon, +/obj/effect/spawner/lootdrop/f13/uncommon, +/obj/effect/spawner/lootdrop/f13/uncommon, /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "verticalrightborderright0" }, @@ -6634,18 +6656,16 @@ /obj/structure/chair{ dir = 4 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/f13/wood, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "azX" = ( /obj/structure/table/wood, -/obj/item/stack/sheet/metal{ - amount = 50 +/turf/open/floor/f13/wood{ + icon_state = "housewood2" }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/turf/open/floor/f13/wood, /area/f13/ruins) "azY" = ( /mob/living/simple_animal/hostile/radroach, @@ -6750,14 +6770,6 @@ }, /area/f13/wasteland/city/nash/downtown) "aAw" = ( -/obj/structure/table, -/obj/item/stock_parts/cell{ - icon_state = "hpcell" - }, -/obj/item/flashlight{ - icon_state = "seclite" - }, -/obj/machinery/recharger, /obj/machinery/light/small/broken{ dir = 8 }, @@ -6771,10 +6783,10 @@ icon_state = "red_phone"; pixel_x = -4 }, -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/spawner/lootdrop/f13/uncommon, -/turf/open/floor/f13/wood, +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "aAy" = ( /obj/effect/decal/cleanable/dirt, @@ -6888,15 +6900,18 @@ /area/f13/ruins) "aAQ" = ( /obj/structure/table, -/obj/machinery/cell_charger, -/obj/effect/spawner/lootdrop/f13/uncommon, +/obj/item/flashlight{ + icon_state = "seclite" + }, /turf/open/indestructible/ground/outside/sidewalk{ - icon_state = "outerbordercorner - E" + icon_state = "horizontaloutermain0" }, /area/f13/ruins) "aAS" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/indestructible/ground/outside/sidewalk{ - icon_state = "outerbordercorner - N" + icon_state = "horizontaloutermain0" }, /area/f13/ruins) "aAT" = ( @@ -7037,23 +7052,16 @@ }, /area/f13/ruins) "aBs" = ( -/obj/structure/rack, -/obj/item/wrench, -/obj/item/screwdriver, -/obj/effect/spawner/lootdrop/f13/uncommon, -/turf/open/indestructible/ground/outside/sidewalk{ - icon_state = "horizontaloutermain0" +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" }, /area/f13/ruins) "aBt" = ( -/obj/structure/rack, -/obj/item/weldingtool, -/obj/item/crowbar, -/obj/item/wirecutters{ - icon_state = "cutters" +/obj/structure/wreck/trash/engine, +/obj/effect/decal/cleanable/oil{ + icon_state = "floor2" }, -/obj/item/stack/cable_coil, -/obj/effect/spawner/lootdrop/f13/uncommon, /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "horizontaloutermain0" }, @@ -7062,10 +7070,6 @@ /obj/structure/rack, /obj/item/stack/sheet/metal/fifty, /obj/item/stack/sheet/metal/fifty, -/turf/open/floor/f13/wood, -/area/f13/ruins) -"aBv" = ( -/obj/structure/rack, /obj/item/stack/sheet/glass{ amount = 50 }, @@ -7075,31 +7079,41 @@ /obj/item/stack/sheet/glass{ amount = 50 }, -/obj/machinery/light/small/broken, -/obj/effect/spawner/lootdrop/f13/uncommon, -/turf/open/floor/f13/wood, +/obj/machinery/light/small, +/obj/item/stack/sheet/mineral/wood/fifty, +/obj/item/stack/sheet/metal{ + amount = 50 + }, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, +/area/f13/ruins) +"aBv" = ( +/obj/machinery/autolathe/constructionlathe, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "aBw" = ( -/obj/structure/rack, -/obj/item/storage/belt/fannypack, -/obj/item/storage/belt/fannypack, -/obj/effect/spawner/lootdrop/f13/uncommon, -/turf/open/floor/f13/wood, +/obj/machinery/workbench, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "aBx" = ( -/obj/structure/rack, -/obj/item/stack/sheet/mineral/wood/fifty, -/obj/item/stack/sheet/mineral/wood/fifty, -/obj/effect/spawner/lootdrop/f13/uncommon, -/turf/open/floor/f13/wood, +/obj/machinery/autolathe/ammo, +/obj/machinery/light/small/broken, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "aBy" = ( -/obj/structure/rack, -/obj/item/stack/sheet/glass{ - amount = 50 +/obj/structure/table/wood, +/obj/item/paper, +/obj/item/pen, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" }, -/obj/machinery/light/small/broken, -/turf/open/floor/f13/wood, /area/f13/ruins) "aBz" = ( /obj/structure/table, @@ -14839,14 +14853,15 @@ }, /area/f13/ruins) "beh" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, /obj/structure/nest/randomized{ randomizer_difficulty = 1; randomizer_kind = "low level mobs"; randomizer_tag = "Downtown Detractors" }, -/turf/open/floor/f13/wood, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "bei" = ( /obj/effect/spawner/lootdrop/trash, @@ -22261,6 +22276,15 @@ }, /turf/open/floor/f13/wood, /area/f13/ruins) +"cpL" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small{ + dir = 4 + }, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, +/area/f13/ruins) "cpM" = ( /obj/structure/fence/corner, /turf/open/indestructible/ground/outside/sidewalk, @@ -27046,7 +27070,10 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland/city/nash/theloop) "dAe" = ( -/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/poddoor/shutters{ + id = "wshop"; + tgui_id = "wshop" + }, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalrightborderleft0" }, @@ -28037,6 +28064,13 @@ /obj/effect/decal/cleanable/dirt, /turf/open/floor/plasteel/f13/vault_floor/green, /area/f13/building/abandoned) +"dOa" = ( +/obj/machinery/light/small, +/obj/structure/reagent_dispensers/fueltank, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "horizontaloutermain0" + }, +/area/f13/ruins) "dOd" = ( /obj/structure/table/reinforced{ color = "#c1b6a5" @@ -36327,7 +36361,10 @@ }, /area/f13/building) "fYE" = ( -/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/poddoor/shutters{ + id = "wshop"; + tgui_id = "wshop" + }, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalinnermain0" }, @@ -36908,11 +36945,7 @@ }, /area/f13/ruins) "ghB" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/weather/dirt{ - dir = 1 - }, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalrightborderleft0" }, @@ -40298,6 +40331,10 @@ /obj/structure/spacevine, /turf/open/indestructible/ground/outside/desert, /area/f13/wasteland/city) +"hcH" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/closed/wall/f13/store, +/area/f13/ruins) "hcI" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/spawner/lootdrop/f13/uncommon, @@ -47785,9 +47822,10 @@ "iYX" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/f13/uncommon, -/obj/effect/spawner/lootdrop/f13/uncommon_parts, -/obj/effect/spawner/lootdrop/f13/rare_parts, -/turf/open/floor/f13/wood, +/obj/effect/spawner/lootdrop/f13/uncommon, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "iYZ" = ( /obj/effect/decal/cleanable/dirt, @@ -54663,8 +54701,7 @@ /turf/open/indestructible/ground/inside/dirt, /area/f13/underground/cave/coyote/antmound) "kUt" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalinnermain0" }, @@ -59382,6 +59419,14 @@ /turf/open/floor/f13/wood, /area/f13/building/abandoned) "meV" = ( +/obj/structure/rack, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/light/small{ + dir = 4 + }, +/obj/item/storage/toolbox/mechanical/old, +/obj/item/storage/belt, +/obj/effect/spawner/lootdrop/f13/uncommon, /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "verticalrightborderright0" }, @@ -61073,9 +61118,20 @@ icon_state = "horizontalinnermain0" }, /area/f13/building/abandoned) +"mzn" = ( +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, +/area/f13/ruins) "mzq" = ( -/mob/living/simple_animal/hostile/radroach, -/turf/open/floor/f13/wood, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/bed/double, +/obj/item/bedsheet/doublesheet{ + color = "#1F1F1F" + }, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, /area/f13/ruins) "mzt" = ( /mob/living/simple_animal/hostile/ghoul/reaver, @@ -62504,6 +62560,14 @@ icon_state = "horizontaloutermain0" }, /area/f13/wasteland/city/nash/redriverdepotroad) +"mUs" = ( +/obj/structure/wreck/car/bike{ + dir = 8 + }, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "horizontaloutermain0" + }, +/area/f13/ruins) "mUt" = ( /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "verticalleftborderleft1" @@ -67414,7 +67478,10 @@ }, /area/f13/building/coyote/nash/mall/groundfloor) "oic" = ( -/obj/effect/decal/cleanable/dirt, +/obj/machinery/door/poddoor/shutters{ + id = "wshop"; + tgui_id = "wshop" + }, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalleftborderright0" }, @@ -69514,20 +69581,14 @@ /turf/open/floor/f13/wood, /area/f13/building/abandoned) "oKG" = ( -/obj/effect/turf_decal/weather/dirt{ - dir = 1 - }, -/obj/effect/turf_decal/weather/dirt{ - dir = 4 - }, -/obj/effect/turf_decal/weather/dirt{ - dir = 8 +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/oil{ + icon_state = "floor6"; + pixel_x = -28 }, -/obj/effect/turf_decal/weather/dirt, -/turf/open/indestructible/ground/outside/water{ - light_color = null; - color = "#FFBB77"; - name = "the watering hole" +/turf/open/indestructible/ground/outside/road{ + icon_state = "verticalrightborderleft0" }, /area/f13/ruins) "oKN" = ( @@ -75323,6 +75384,13 @@ }, /turf/open/floor/plasteel/f13/vault_floor/dark, /area/f13/building/hospital) +"qnf" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/oil, +/turf/open/indestructible/ground/outside/road{ + icon_state = "verticalleftborderright0" + }, +/area/f13/ruins) "qnl" = ( /obj/structure/table/wood, /obj/effect/decal/cleanable/dirt/dust, @@ -77211,6 +77279,11 @@ icon_state = "floorrusty" }, /area/f13/building/coyote/nash/mall/groundfloor) +"qOe" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/closed/wall/f13/store, +/area/f13/ruins) "qOf" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/flora/grass/wasteland{ @@ -78682,6 +78755,20 @@ name = "the watering hole" }, /area/f13/wasteland) +"rhR" = ( +/obj/structure/rack, +/obj/effect/decal/cleanable/dirt/dust, +/obj/item/clothing/head/helmet/f13/motorcycle, +/obj/machinery/light/small{ + dir = 1 + }, +/obj/effect/spawner/lootdrop/f13/uncommon, +/obj/effect/spawner/lootdrop/f13/uncommon, +/obj/effect/spawner/lootdrop/f13/uncommon, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, +/area/f13/ruins) "rhV" = ( /obj/structure/flora/rock/pile/largejungle, /obj/structure/flora/grass/wasteland{ @@ -79862,11 +79949,17 @@ }, /area/f13/wasteland/city/nash/suburbs) "rAF" = ( +/obj/effect/turf_decal/weather/dirt{ + dir = 10 + }, +/obj/effect/turf_decal/weather/dirt{ + dir = 9 + }, /obj/structure/sink{ icon_state = "water"; name = "water"; - pixel_x = -11; - pixel_y = 4 + pixel_x = 14; + pixel_y = 15 }, /obj/structure/sink{ icon_state = "water"; @@ -79877,8 +79970,14 @@ /obj/structure/sink{ icon_state = "water"; name = "water"; - pixel_x = -6; - pixel_y = 5 + pixel_x = 6; + pixel_y = 15 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 2; + pixel_y = 12 }, /obj/structure/sink{ icon_state = "water"; @@ -79889,14 +79988,47 @@ /obj/structure/sink{ icon_state = "water"; name = "water"; - pixel_x = -6; - pixel_y = 3 + pixel_x = -1; + pixel_y = 12 }, -/obj/effect/turf_decal/weather/dirt{ - dir = 9 +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 7; + pixel_y = 20 }, -/obj/effect/turf_decal/weather/dirt{ - dir = 10 +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = 7; + pixel_y = 11 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_x = -4; + pixel_y = 12 + }, +/obj/structure/sink{ + icon_state = "water"; + name = "water"; + pixel_y = 19 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "mist"; + opacity = 1; + layer = 2.7; + pixel_x = -12 + }, +/obj/structure/spacevine{ + icon = 'icons/effects/effects.dmi'; + icon_state = "smoke"; + name = "mist"; + opacity = 1; + layer = 2.7; + pixel_x = 9 }, /turf/open/indestructible/ground/outside/water{ name = "water" @@ -82130,6 +82262,12 @@ /obj/structure/flora/burnedtree4, /turf/open/indestructible/ground/outside/desert, /area/debug_mussy) +"shC" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13/wood{ + icon_state = "housewood1-broken" + }, +/area/f13/ruins) "shI" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/camera/autoname{ @@ -90451,6 +90589,7 @@ }, /area/f13/building/abandoned) "uoY" = ( +/obj/effect/decal/cleanable/dirt/dust, /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "horizontalbottomborderbottom0" }, @@ -92203,6 +92342,16 @@ }, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland/coyote/nash/southeastcornercamp) +"uNM" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/oil{ + icon_state = "floor5" + }, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "horizontalbottomborderbottom0" + }, +/area/f13/ruins) "uNV" = ( /obj/structure/flora/grass/coyote/six, /turf/open/indestructible/ground/outside/desert, @@ -97452,10 +97601,12 @@ /turf/open/indestructible/ground/outside/dirthole, /area/f13/wasteland/city/nash/downtown) "wml" = ( -/obj/effect/decal/cleanable/dirt, -/obj/effect/decal/cleanable/dirt, -/obj/effect/turf_decal/weather/dirt{ - dir = 4 +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/nest/randomized{ + randomizer_difficulty = 1; + randomizer_kind = "low level mobs"; + randomizer_tag = "Downtown Detractors" }, /turf/open/indestructible/ground/outside/road{ icon_state = "verticalinnermain0" @@ -100468,6 +100619,16 @@ name = "dirty floor" }, /area/f13/building/abandoned) +"xbM" = ( +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/obj/structure/rack, +/obj/item/clothing/head/welding/weldingjapan, +/obj/effect/spawner/lootdrop/f13/uncommon, +/turf/open/indestructible/ground/outside/sidewalk{ + icon_state = "verticalrightborderright0" + }, +/area/f13/ruins) "xbV" = ( /obj/effect/decal/cleanable/oil{ icon_state = "floor6"; @@ -103078,7 +103239,8 @@ }, /area/f13/wasteland/city) "xLa" = ( -/obj/effect/decal/cleanable/dirt, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "horizontalbottomborderbottom0" }, @@ -103235,6 +103397,12 @@ icon_state = "innerpavement" }, /area/f13/wasteland/city/nash/theloop) +"xML" = ( +/obj/effect/decal/cleanable/dirt/dust, +/turf/open/floor/f13/wood{ + icon_state = "housewood2-broken" + }, +/area/f13/ruins) "xMQ" = ( /obj/effect/decal/marking, /obj/structure/wreck/car/bike, @@ -104069,6 +104237,17 @@ /obj/structure/spacevine, /turf/open/indestructible/ground/outside/sidewalk, /area/f13/wasteland/city) +"xXN" = ( +/obj/structure/table/wood, +/obj/effect/decal/cleanable/dirt/dust, +/obj/machinery/computer/terminal{ + dir = 1; + termtag = "Business" + }, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, +/area/f13/ruins) "xXQ" = ( /mob/living/simple_animal/hostile/ghoul, /obj/effect/decal/cleanable/dirt/dust, @@ -104516,6 +104695,13 @@ /obj/effect/turf_decal/weather/dirt, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland/city) +"ydZ" = ( +/obj/structure/table/wood, +/obj/machinery/cell_charger, +/turf/open/floor/f13/wood{ + icon_state = "housewood2" + }, +/area/f13/ruins) "yea" = ( /obj/structure/closet/fridge, /obj/effect/spawner/lootdrop/f13/foodspawner, @@ -142988,11 +143174,11 @@ gQR dpt bLR lox -ckx xfv -ckx -ckx -ckx +xfv +xfv +xfv +xfv xfv xfv tkp @@ -143250,7 +143436,7 @@ azz azU aAw aAQ -aBr +dOa xfv tkp ckx @@ -143505,9 +143691,9 @@ biY oic azA azi -oic +qnf uoY -aBr +mUs xfv gVf xfv @@ -143764,8 +143950,8 @@ kUt wml kUt xLa -aBs -ckx +aBr +xfv tkp xfv aDm @@ -144017,12 +144203,12 @@ kcz iVC nAN dAe -azk +ghB oKG ghB -xLa +uNM aBt -ckx +xfv tkp xfv dnK @@ -144274,12 +144460,12 @@ fVh wsS wUx xfv -meV +xbM azV meV aAS -aBr -ckx +azk +xfv iPy ckx aDn @@ -144531,12 +144717,12 @@ qhP wsS lox xfv +hcH +qOe +hcH +mce xfv xfv -dnK -mAm -hwt -xfv tkp ckx aDU @@ -144790,8 +144976,8 @@ hrI azl azC azW -aQy -gCB +shC +aBs aBu xfv rfn @@ -145045,10 +145231,10 @@ bto wsS tfD xfv -aCw +ydZ azX aAx -aQy +xML aBv xfv tkp @@ -145302,10 +145488,10 @@ ayi bto lox mAm -gCB -gCB +aBs +mzn beh -aQy +aBs aBw xfv tkp @@ -145558,13 +145744,13 @@ rjg lHx wXx lox -ckx -iYX +xfv +rhR iYX -wsB -wsB +aBs +mzn aBx -ckx +xfv tkp xfv iEU @@ -145815,9 +146001,9 @@ mfD nOy chZ lox -ckx xfv -hwt +xfv +xfv mAm xfv xfv @@ -146072,11 +146258,11 @@ gQR oFo wsS lox -ckx +xfv azG -aQy -aQy -aQy +aBs +lrL +jRm aBy xfv rfn @@ -146331,10 +146517,10 @@ wUx lox xfv azH -gZk +cpL mzq -aQy -des +avC +xXN xfv tkp ckx @@ -146589,9 +146775,9 @@ lox xfv xfv xfv -ckx -ckx -ckx +xfv +xfv +xfv xfv tkp xfv diff --git a/_maps/map_files/coyote_bayou/Newboston-Upper.dmm b/_maps/map_files/coyote_bayou/Newboston-Upper.dmm index da514cb3e33..367f89dd873 100644 --- a/_maps/map_files/coyote_bayou/Newboston-Upper.dmm +++ b/_maps/map_files/coyote_bayou/Newboston-Upper.dmm @@ -20477,6 +20477,9 @@ /obj/effect/turf_decal/siding/wood, /turf/open/floor/wood_mosaic/wood_mosaic_light, /area/f13/wasteland/city/newboston/house/cabin_two) +"Ul" = ( +/turf/open/transparent/glass/reinforced, +/area/f13/wasteland) "Um" = ( /obj/structure/bookshelf, /turf/open/floor/wood_common{ @@ -21882,6 +21885,11 @@ }, /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) +"Xx" = ( +/turf/open/floor/plating/f13/outside/roof/metal{ + color = "grey" + }, +/area/f13/wasteland) "Xy" = ( /obj/structure/flora/ausbushes/sunnybush, /turf/open/indestructible/ground/outside/civ/grass3{ @@ -57992,23 +58000,23 @@ OT ma tN tN +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -58249,23 +58257,23 @@ OT ma tN tN +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -58506,23 +58514,23 @@ OT ma tN tN +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -58763,23 +58771,23 @@ OT ma tN tN +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -59020,23 +59028,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -59277,23 +59285,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -59534,23 +59542,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN GZ GZ GZ GZ -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -59791,23 +59799,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN GZ GZ GZ GZ -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -60048,23 +60056,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN GZ GZ GZ GZ -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -60305,23 +60313,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN GZ GZ GZ GZ -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -60562,23 +60570,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN GZ GZ GZ GZ -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -60819,23 +60827,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN GZ GZ GZ GZ -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -61076,23 +61084,23 @@ OT ma tN tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN -tN +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ +GZ tN tN tN @@ -61343,13 +61351,13 @@ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN +Xx +Xx +Xx +Xx +Xx +Xx +Xx tN tN tN @@ -61600,13 +61608,13 @@ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN +Xx +Ul +Ul +Ul +Ul +Ul +Xx tN tN tN @@ -61857,13 +61865,13 @@ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN +Xx +Ul +Ul +Ul +Ul +Ul +Xx tN tN tN @@ -62114,13 +62122,13 @@ tN tN tN tN -tN -tN -tN -tN -tN -tN -tN +Xx +Xx +Xx +Xx +Xx +Xx +Xx tN tN tN diff --git a/_maps/map_files/coyote_bayou/Newboston.dmm b/_maps/map_files/coyote_bayou/Newboston.dmm index 2d49bddfe0c..da70a007dfd 100644 --- a/_maps/map_files/coyote_bayou/Newboston.dmm +++ b/_maps/map_files/coyote_bayou/Newboston.dmm @@ -729,12 +729,10 @@ }, /area/f13/wasteland/city/newboston/sauna) "ati" = ( -/obj/structure/simple_door/metal/fence{ - door_type = "fence_wood"; - icon_state = "fence_wood" - }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/table/wood, +/obj/machinery/processor/chopping_block, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, +/area/f13/building) "atz" = ( /obj/effect/spawner/lootdrop/f13/common, /turf/open/indestructible/ground/inside/mountain, @@ -795,7 +793,17 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "auL" = ( -/turf/open/floor/wood_common, +/obj/item/toy/plush/blackcat{ + pixel_y = 15; + pixel_x = 6 + }, +/obj/effect/turf_decal/siding/wood{ + dir = 8; + color = "#3B2C25" + }, +/turf/open/floor/wood_common{ + color = "#888888" + }, /area/f13/wasteland/city/newboston/library) "auS" = ( /obj/structure/simple_door/interior, @@ -1402,14 +1410,14 @@ /obj/effect/turf_decal/siding/wideplating/dark{ dir = 6 }, -/obj/structure/wood_counter{ - layer = 2; - dir = 1 - }, /obj/structure/table/wood{ layer = 2.5; alpha = 1 }, +/obj/structure/wood_counter/bend{ + layer = 2; + dir = 8 + }, /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/wasteland/city/newboston/bar) "aLV" = ( @@ -1564,12 +1572,9 @@ }, /area/f13/building) "aPT" = ( -/obj/structure/fence{ - dir = 4; - icon_state = "post_wood" - }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/machinery/light, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "aQl" = ( /obj/structure/chair/pew/right{ dir = 1 @@ -2557,9 +2562,13 @@ /turf/open/floor/f13/wood, /area/f13/building/abandoned) "bvg" = ( -/obj/structure/destructible/tribal_torch, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/machinery/hydroponics/soil, +/obj/effect/turf_decal/siding/wood{ + dir = 1; + color = "#413527" + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/building) "bvn" = ( /obj/structure/spacevine{ name = "vines" @@ -2793,10 +2802,12 @@ /turf/open/floor/f13/wood, /area/f13/building) "bCc" = ( -/mob/living/simple_animal/hostile/renegade/guardian, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/nest/randomized{ + randomizer_difficulty = 1; + randomizer_kind = "trash mobs"; + randomizer_tag = "Newb Oston Gaming 7" }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "bCw" = ( /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust{ @@ -3379,13 +3390,9 @@ }, /area/f13/building) "bRX" = ( -/obj/structure/flora/tree/cherryblossom3{ - pixel_x = -7; - pixel_y = 27; - density = 0 - }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/wasteland) +/obj/structure/window/fulltile/ruins, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "bSa" = ( /obj/structure/chair/office{ dir = 8 @@ -3416,11 +3423,8 @@ }, /area/f13/building) "bSU" = ( -/obj/structure/bed/mattress, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, -/area/f13/building) +/turf/open/floor/plasteel/f13/stone/rugged, +/area/f13/wasteland) "bTh" = ( /obj/effect/turf_decal/weather/dirt{ dir = 4 @@ -3829,14 +3833,12 @@ /turf/open/indestructible/ground/inside/dirt, /area/f13/wasteland) "cgU" = ( -/obj/effect/turf_decal/weather/dirt{ - dir = 1 - }, -/obj/effect/turf_decal/weather/dirt{ - dir = 8 +/obj/machinery/smartfridge/bottlerack/grownbin{ + pixel_y = 6; + density = 0 }, -/turf/open/indestructible/ground/outside/water, -/area/f13/wasteland) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "cgZ" = ( /obj/effect/landmark/start/f13/farmer, /turf/open/indestructible/ground/outside/sidewalk, @@ -4137,13 +4139,18 @@ }, /obj/item/flashlight/littlelamp{ pixel_y = 23; - pixel_x = 9 + pixel_x = 9; + color = "grey" }, -/obj/item/kirbyplants/random{ - pixel_y = 24; - pixel_x = -8 +/obj/item/kirbyplants{ + icon_state = "plant-17"; + layer = 2.9; + pixel_y = 22; + pixel_x = -4 + }, +/turf/open/floor/wood_common{ + color = "#888888" }, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "cpx" = ( /obj/effect/decal/cleanable/ash, @@ -4437,13 +4444,28 @@ /turf/open/floor/wood_fancy, /area/f13/wasteland/city/newboston/sauna) "cwJ" = ( -/obj/machinery/hydroponics/soil{ - name = "riverbed soil"; - yieldmod = 1.3 +/obj/structure/sink{ + pixel_x = -8; + pixel_y = 24 }, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/toilet{ + pixel_x = 7; + pixel_y = 14 + }, +/obj/structure/mirror{ + pixel_y = 34; + pixel_x = -8 + }, +/obj/structure/toilet_paper{ + pixel_x = 24; + pixel_y = 16 + }, +/obj/structure/closet/locker/medcabinet{ + pixel_y = 31; + pixel_x = 7 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/cmo, +/area/f13/building) "cwT" = ( /obj/structure/simple_door/interior, /turf/open/floor/f13/wood, @@ -4592,9 +4614,12 @@ }, /area/f13/tunnel) "cAk" = ( -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/indestructible/ground/inside/dirt, +/obj/structure/fermenting_barrel{ + anchored = 1 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/caves) "cAt" = ( /obj/structure/stairs/south, @@ -4668,17 +4693,10 @@ }, /area/f13/building) "cCk" = ( -/obj/structure/rack, -/obj/item/ammo_box/magazine/greasegun, -/obj/item/ammo_box/magazine/greasegun, -/obj/item/ammo_box/magazine/greasegun, -/obj/item/ammo_box/magazine/greasegun, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/structure/table/wood, +/obj/item/paper_bin, +/obj/item/pen/fountain, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "cCu" = ( /obj/structure/flora/wasteplant/wild_punga, @@ -4911,7 +4929,9 @@ /obj/machinery/computer/libraryconsole/bookmanagement{ pixel_y = 5 }, -/turf/open/floor/wood_common, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/wasteland/city/newboston/library) "cIq" = ( /obj/effect/decal/cleanable/dirt, @@ -4992,8 +5012,11 @@ /turf/open/floor/plasteel/f13/vault_floor/purple, /area/f13/building) "cKD" = ( -/obj/machinery/biogenerator, -/turf/open/indestructible/ground/outside/dirt, +/turf/open/indestructible/ground/outside/gravel{ + color = "#B7ABAB"; + footstep = "dirt"; + name = "rocky dirt" + }, /area/f13/caves) "cKK" = ( /obj/structure/destructible/tribal_torch/wall/lit{ @@ -5243,9 +5266,9 @@ /turf/open/floor/f13/wood, /area/f13/building) "cRP" = ( -/obj/structure/pondlily_small, -/turf/open/indestructible/ground/outside/water, -/area/f13/wasteland) +/obj/machinery/hydroponics/soil, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/building) "cSl" = ( /obj/structure/simple_door/wood, /obj/structure/barricade/wooden/planks/pregame, @@ -5439,11 +5462,22 @@ }, /area/f13/building) "cVQ" = ( -/obj/structure/simple_door/tent, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/effect/turf_decal/siding/wood{ + dir = 6; + color = "#3B2C25"; + plane = -4 }, -/area/f13/building) +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/ppflowers{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "cVW" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/nest/randomized{ @@ -5822,11 +5856,9 @@ }, /area/f13/building/abandoned) "dio" = ( -/obj/structure/flora/grass/wasteland{ - icon_state = "tall_grass_2" - }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/simple_door/room, +/turf/open/floor/plasteel/f13/vault_floor/misc/cmo, +/area/f13/building) "dis" = ( /obj/effect/decal/cleanable/generic, /obj/effect/spawner/lootdrop/f13/common, @@ -6112,8 +6144,12 @@ }, /area/f13/building) "dqy" = ( -/obj/structure/nest/raider/melee, -/turf/open/indestructible/ground/outside/dirt, +/obj/structure/chair/bench{ + pixel_y = -10 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/caves) "dqD" = ( /obj/item/storage/trash_stack, @@ -6140,12 +6176,12 @@ /turf/open/floor/plating/dirt, /area/f13/building) "drk" = ( -/obj/structure/flora/grass/wasteland{ - icon_state = "tall_grass_3" - }, -/obj/effect/decal/cleanable/cobweb, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/closet, +/obj/effect/spawner/lootdrop/f13/common, +/obj/effect/spawner/lootdrop/f13/common, +/obj/effect/spawner/lootdrop/f13/common, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "drw" = ( /obj/structure/chair/right{ dir = 4 @@ -6716,13 +6752,14 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/building) "dIo" = ( -/obj/structure/barricade/wooden, -/obj/structure/decoration/rag{ - icon_state = "skin" +/obj/structure/destructible/tribal_torch/wall/lit{ + dir = 8; + light_color = "#f4e3b0" }, -/obj/structure/decoration/rag, -/turf/closed/wall/f13/coyote/oldwood, -/area/f13/building) +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "dIv" = ( /obj/structure/flora/grass/wasteland{ icon_state = "tall_grass_3" @@ -7078,17 +7115,21 @@ }, /area/f13/building) "dPG" = ( -/obj/structure/fence/wooden{ - density = 0; - pixel_y = 25; - pixel_x = 13 +/obj/effect/turf_decal/siding/wood{ + dir = 9; + color = "#3B2C25"; + plane = -4 }, -/obj/structure/fence/wooden{ - density = 0; - pixel_y = -12; - pixel_x = 12 +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 }, -/turf/open/indestructible/ground/outside/gravel, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/ppflowers{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, /area/f13/wasteland) "dPS" = ( /obj/structure/urinal{ @@ -7406,18 +7447,17 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "dYk" = ( -/obj/item/paper_bin{ - pixel_y = 7; - pixel_x = -5 - }, -/obj/item/pen, -/obj/structure/table/wood, /obj/machinery/light{ dir = 4; pixel_x = 7; pixel_y = 2 }, -/turf/open/floor/wood_common, +/obj/machinery/bookbinder{ + pixel_x = 4 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/wasteland/city/newboston/library) "dYF" = ( /obj/effect/decal/cleanable/dirt, @@ -7747,11 +7787,11 @@ /turf/closed/wall/r_wall, /area/f13/building) "ehf" = ( -/obj/structure/chair/wood, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/bookshelf, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/area/f13/building) +/area/f13/caves) "ehp" = ( /obj/structure/table/wood/settler, /obj/effect/decal/cleanable/dirt, @@ -8038,8 +8078,34 @@ }, /area/f13/building/hospital/clinic/nash) "eqf" = ( -/mob/living/simple_animal/chicken, -/turf/open/indestructible/ground/outside/dirt, +/obj/structure/rack/shelf_wood{ + density = 0; + pixel_y = 24 + }, +/obj/item/clothing/suit/armor/heavy/riot/knight/red{ + pixel_y = 22 + }, +/obj/item/clothing/suit/armor/heavy/riot/knight/red{ + pixel_y = 22 + }, +/obj/item/clothing/suit/armor/heavy/riot/knight/red{ + pixel_y = 22 + }, +/obj/item/clothing/suit/armor/heavy/riot/knight/red{ + pixel_y = 22 + }, +/obj/item/clothing/head/helmet/knight/greyscale{ + pixel_y = 20 + }, +/obj/item/clothing/head/helmet/knight/greyscale{ + pixel_y = 20 + }, +/obj/item/clothing/head/helmet/knight/f13/metal/reinforced{ + pixel_y = 20 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/caves) "eqk" = ( /obj/effect/spawner/lootdrop/f13/common, @@ -8347,10 +8413,16 @@ /turf/open/floor/f13/wood, /area/f13/building) "eAL" = ( -/obj/structure/chair/office{ - dir = 1 +/obj/structure/fermenting_barrel{ + anchored = 1 + }, +/obj/structure/destructible/tribal_torch/wall/lit{ + dir = 8; + light_color = "#f4e3b0" + }, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/turf/open/indestructible/ground/outside/dirt, /area/f13/caves) "eAP" = ( /obj/effect/landmark/start/f13/farmer, @@ -8809,20 +8881,10 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/building) "eKD" = ( -/obj/item/trash/candle{ - pixel_x = 3; - pixel_y = 19 - }, -/obj/item/candle/infinite{ - pixel_x = -9; - pixel_y = 19 - }, -/obj/item/clothing/head/helmet/skull{ - pixel_x = 7; - pixel_y = 16 +/obj/structure/bookshelf, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/obj/structure/bookcase, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "eKF" = ( /obj/structure/table/wood/fancy/black, @@ -9259,12 +9321,21 @@ }, /area/f13/building) "eWR" = ( -/obj/machinery/photocopier, /obj/machinery/light{ dir = 1; pixel_y = 11 }, -/turf/open/floor/wood_common, +/obj/structure/table/wood, +/obj/item/paper_bin{ + pixel_y = 7; + pixel_x = -5 + }, +/obj/item/pen{ + pixel_y = 9 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/wasteland/city/newboston/library) "eXd" = ( /obj/effect/decal/cleanable/blood/gibs/human/core, @@ -9327,9 +9398,19 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "eYm" = ( -/obj/structure/barricade/wooden, -/turf/closed/wall/f13/coyote/oldwood, -/area/f13/caves) +/obj/effect/turf_decal/siding/wideplating/dark{ + dir = 4 + }, +/obj/structure/table/wood{ + layer = 2.5; + alpha = 1 + }, +/obj/structure/wood_counter{ + layer = 2; + dir = 4 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/bar, +/area/f13/wasteland/city/newboston/bar) "eYt" = ( /obj/machinery/smartfridge/food, /turf/closed/wall/rust, @@ -9605,9 +9686,12 @@ /turf/open/floor/carpet/black, /area/f13/building) "feY" = ( -/obj/structure/chair/stool/retro/black, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/table/wood, +/obj/item/kirbyplants/random{ + pixel_y = 8 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "fff" = ( /obj/structure/filingcabinet, /obj/effect/decal/cleanable/cobweb/cobweb2, @@ -10818,19 +10902,7 @@ }, /area/f13/wasteland) "fHM" = ( -/obj/structure/fence/wooden{ - density = 0; - pixel_y = 5; - pixel_x = -11 - }, -/obj/structure/fence/wooden{ - dir = 4; - icon_state = "post_wood"; - pixel_y = 3; - density = 0; - pixel_x = 7 - }, -/turf/open/floor/f13/wood, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "fHV" = ( /obj/effect/decal/cleanable/blood/drip, @@ -11060,9 +11132,10 @@ }, /area/f13/brotherhood) "fQq" = ( -/obj/structure/destructible/tribal_torch, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/caves) +/obj/structure/table/wood, +/obj/item/flashlight/littlelamp, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "fQr" = ( /obj/structure/decoration/clock/old/active, /turf/closed/wall/f13/wood/interior, @@ -11277,10 +11350,9 @@ /turf/open/floor/f13/wood, /area/f13/building) "fVx" = ( -/obj/structure/rug/big/rug_red{ - pixel_x = 19 +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "fVX" = ( /obj/structure/fence/corner{ @@ -11621,10 +11693,11 @@ /turf/open/floor/f13/wood, /area/f13/building) "ggD" = ( -/obj/structure/bonfire/dense, -/obj/item/stack/rods, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/bookshelf{ + pixel_y = 31 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "ggI" = ( /obj/structure/nest/randomized{ randomizer_difficulty = 1; @@ -11635,11 +11708,11 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "ggO" = ( -/mob/living/simple_animal/raccoon/darkbrown{ - name = "Rakhan" +/obj/structure/legion_extractor{ + pixel_y = 4 }, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/caves) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "ghk" = ( /obj/structure/toilet{ dir = 8 @@ -11865,11 +11938,22 @@ /turf/open/floor/f13/wood, /area/f13/building) "gnK" = ( -/obj/structure/fence/corner/wooden{ - dir = 1 +/obj/effect/turf_decal/siding/wood{ + dir = 4; + color = "#3B2C25"; + plane = -4 }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/pointybush{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "gnZ" = ( /obj/effect/turf_decal/weather/dirt, /obj/effect/decal/cleanable/dirt, @@ -12276,12 +12360,22 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "gzO" = ( -/obj/structure/simple_door/interior, -/obj/structure/decoration/rag, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/effect/turf_decal/siding/wood{ + dir = 5; + color = "#3B2C25"; + plane = -4 }, -/area/f13/building) +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/pointybush{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "gAt" = ( /turf/closed/indestructible/rock, /area/f13/building/tribal/cave) @@ -12458,16 +12552,11 @@ /turf/open/floor/plasteel/f13/vault_floor/dark/darksolid, /area/f13/building) "gGp" = ( -/obj/structure/closet/fridge, -/obj/item/locked_box/misc/food, -/obj/item/locked_box/misc/food, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/chair/bench, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/area/f13/building) +/area/f13/caves) "gGq" = ( /obj/structure/simple_door/room, /turf/open/floor/f13/wood, @@ -13303,12 +13392,8 @@ }, /area/f13/building) "hdr" = ( -/obj/structure/table/wood, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/plasteel/f13{ - icon_state = "floorgrime" - }, +/obj/structure/simple_door/room, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "hdy" = ( /obj/effect/turf_decal/siding/wideplating/dark{ @@ -14131,11 +14216,8 @@ /turf/open/floor/wood_common/wood_common_dark, /area/f13/building) "hAM" = ( -/obj/effect/spawner/lootdrop/f13/common, -/obj/structure/table/wood, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/item/kirbyplants/random, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "hAU" = ( /obj/effect/landmark/observer_start, @@ -14195,8 +14277,11 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "hBX" = ( -/turf/open/indestructible/ground/inside/dirt, -/area/f13/building) +/obj/machinery/door/unpowered/securedoor, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "hCd" = ( /obj/structure/nest/randomized{ randomizer_difficulty = 1; @@ -14327,9 +14412,8 @@ }, /area/f13/building/tribal) "hFk" = ( -/obj/structure/decoration/rag, -/obj/structure/decoration/rag, -/turf/closed/wall/f13/coyote/oldwood, +/obj/structure/bed/dogbed, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "hFm" = ( /obj/structure/fence, @@ -14705,21 +14789,13 @@ /turf/open/floor/f13/wood, /area/f13/building) "hPn" = ( -/obj/structure/fence/wooden{ - dir = 4; - icon_state = "post_wood"; - pixel_y = 27; - density = 0 - }, -/obj/structure/fence/wooden{ - dir = 4; - icon_state = "post_wood"; - pixel_y = -12; - density = 0; - pixel_x = -1 +/obj/structure/window/fulltile/ruins, +/obj/structure/curtain/directional/south{ + color = "#77A09F"; + alpha = 200 }, -/turf/open/floor/f13/wood, -/area/f13/wasteland) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "hPG" = ( /obj/effect/spawner/lootdrop/f13/rare, /turf/open/indestructible/ground/outside/gravel, @@ -14944,18 +15020,10 @@ /turf/open/indestructible/ground/inside/mountain, /area/f13/building/tribal/cave) "hUa" = ( -/obj/structure/closet/crate/large, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/turf/closed/wall/f13/coyote/fortress_brick{ + color = "#AB8A82" }, -/area/f13/building) +/area/f13/caves) "hUb" = ( /obj/structure/obstacle/barbedwire/end, /turf/open/indestructible/ground/outside/dirt, @@ -15019,8 +15087,21 @@ /turf/open/floor/f13, /area/f13/brotherhood) "hWC" = ( -/obj/structure/nest/raider/melee, -/turf/open/indestructible/ground/outside/dirt, +/obj/effect/turf_decal/siding/wood{ + dir = 8; + color = "#3B2C25"; + plane = -4 + }, +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/ppflowers{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, /area/f13/wasteland) "hWW" = ( /obj/structure/table, @@ -15098,13 +15179,11 @@ }, /area/f13/building/abandoned) "hZR" = ( -/obj/structure/bed/mattress{ - icon_state = "mattress5" - }, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/effect/turf_decal/weather/dirt{ + dir = 1 }, -/area/f13/building) +/turf/open/floor/plasteel/f13/stone/rugged, +/area/f13/wasteland) "iam" = ( /obj/machinery/hydroponics/soil, /obj/effect/decal/cleanable/dirt, @@ -15581,9 +15660,45 @@ }, /area/f13/building/abandoned) "ioE" = ( -/mob/living/simple_animal/cow/brahmin/cow/tan, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/rack/large/shelf_rust{ + density = 0; + pixel_y = 18; + pixel_x = -10 + }, +/obj/item/reagent_containers/food/condiment/flour{ + pixel_y = 20; + pixel_x = -2 + }, +/obj/item/reagent_containers/food/condiment/flour{ + pixel_y = 20; + pixel_x = -2 + }, +/obj/effect/spawner/lootdrop/f13/foodspawner{ + pixel_y = 20; + pixel_x = 16 + }, +/obj/effect/spawner/lootdrop/f13/foodspawner{ + pixel_y = 20; + pixel_x = 16 + }, +/obj/effect/spawner/lootdrop/f13/foodspawner{ + pixel_y = 20; + pixel_x = 16 + }, +/obj/effect/spawner/lootdrop/f13/foodspawner{ + pixel_y = 20; + pixel_x = 16 + }, +/obj/effect/spawner/lootdrop/f13/foodspawner{ + pixel_y = 20; + pixel_x = 16 + }, +/obj/item/reagent_containers/food/condiment/yeast{ + pixel_x = -2; + pixel_y = 20 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, +/area/f13/building) "ioQ" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/effect/decal/cleanable/dirt/dust, @@ -16256,12 +16371,11 @@ }, /area/f13/building) "iFO" = ( -/obj/structure/flora/grass/wasteland{ - icon_state = "tall_grass_3" +/obj/structure/wreck/car{ + dir = 1 }, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "iGm" = ( /obj/structure/barricade/sandbags{ pixel_y = -9; @@ -16383,17 +16497,13 @@ }, /area/f13/building) "iKE" = ( -/obj/structure/destructible/tribal_torch{ - layer = 4.5; - pixel_x = 1; - pixel_y = 20 - }, -/obj/structure/fence{ - dir = 4; - icon_state = "post_wood" +/obj/machinery/hydroponics/soil, +/obj/machinery/light{ + dir = 8; + light_color = "#e8eaff" }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/building) "iKV" = ( /obj/structure/car/rubbish4, /turf/open/indestructible/ground/outside/ruins, @@ -16767,16 +16877,22 @@ }, /area/f13/wasteland) "iTf" = ( -/obj/structure/rack, -/obj/item/cultivator, -/obj/item/cultivator, -/obj/item/reagent_containers/glass/bucket, -/obj/item/reagent_containers/glass/bucket, -/obj/item/reagent_containers/spray/pestspray, -/obj/item/shovel/spade, -/obj/item/shovel/spade, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/effect/turf_decal/siding/wood{ + dir = 10; + color = "#3B2C25"; + plane = -4 + }, +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/ppflowers{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "iTg" = ( /obj/structure/window/fulltile/house{ icon_state = "housewindowvertical" @@ -17036,14 +17152,21 @@ }, /area/f13/building/abandoned) "iZd" = ( -/obj/effect/turf_decal/weather/dirt{ - dir = 8 +/obj/effect/turf_decal/siding/wood{ + dir = 4; + color = "#3B2C25"; + plane = -4 }, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 1; - color = "#121212" +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 }, -/turf/open/indestructible/ground/outside/water, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/grassybush{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, /area/f13/wasteland) "iZi" = ( /mob/living/simple_animal/hostile/raider/baseball, @@ -18351,9 +18474,12 @@ /turf/open/floor/plasteel/f13/vault_floor/green/white, /area/f13/building) "jIx" = ( -/obj/structure/flora/wasteplant/wild_fungus, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/structure/window/fulltile/ruins, +/obj/structure/curtain/directional/south{ + color = "#77A09F" + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "jIC" = ( /obj/machinery/light/floor, /turf/open/floor/wood_common, @@ -18407,12 +18533,10 @@ /turf/open/indestructible/ground/outside/sidewalk, /area/f13/wasteland) "jKt" = ( -/obj/machinery/door/airlock/engineering/glass{ - color = "#ff6433"; - req_one_access_txt = "138" - }, -/turf/open/floor/wood_common, -/area/f13/wasteland/city/newboston/bar) +/obj/structure/table/wood, +/obj/machinery/reagentgrinder, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, +/area/f13/building) "jKC" = ( /obj/effect/decal/cleanable/dirt, /obj/machinery/hydroponics/constructable, @@ -18689,14 +18813,11 @@ }, /area/f13/building) "jTQ" = ( -/obj/item/reagent_containers/glass/bucket, -/obj/structure/fence/wooden{ - dir = 4; - icon_state = "post_wood"; - pixel_y = 22; - density = 0 +/obj/structure/chair/sofa/right{ + color = "#77A09F"; + dir = 8 }, -/turf/open/floor/f13/wood, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "jTW" = ( /obj/structure/rack, @@ -19627,12 +19748,15 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/caves) "ksk" = ( -/obj/structure/table, -/obj/structure/table, -/obj/machinery/processor/chopping_block, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/machinery/computer/security/wooden_tv{ + desc = ""; + name = "TV"; + pixel_x = 15; + pixel_y = 8; + plane = -2 }, +/obj/structure/table/wood, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "ksp" = ( /obj/effect/decal/cleanable/dirt, @@ -19840,15 +19964,9 @@ /turf/closed/wall/r_wall/rust, /area/f13/building) "kyM" = ( -/obj/effect/turf_decal/weather/dirt{ - dir = 4 - }, -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 1; - color = "#121212" - }, -/turf/open/indestructible/ground/outside/water, -/area/f13/wasteland) +/obj/structure/bookshelf, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "kze" = ( /obj/structure/lamp_post/doubles/bent{ density = 0; @@ -20338,11 +20456,9 @@ /turf/closed/wall/f13/coyote/oldwood, /area/f13/brotherhood) "kMI" = ( -/obj/structure/bed/mattress, -/obj/item/clothing/glasses/f13/biker, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/structure/table/wood, +/obj/effect/spawner/lootdrop/f13/foodspawner, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "kMK" = ( /obj/effect/decal/cleanable/dirt, @@ -20800,9 +20916,16 @@ }, /area/f13/building/tribal/cave) "kYc" = ( -/obj/item/reagent_containers/glass/bucket, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/effect/turf_decal/siding/wood/end{ + color = "#3B2C25"; + dir = 4 + }, +/obj/structure/fluff/hedge{ + pixel_y = 8; + plane = -2 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "kYm" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/table/reinforced, @@ -20993,11 +21116,8 @@ }, /area/f13/wasteland) "ldM" = ( -/obj/machinery/workbench, -/obj/item/book/granter/crafting_recipe/gunsmith_two, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/item/kirbyplants/random, +/turf/open/floor/plasteel/f13/vault_floor/misc/cmo, /area/f13/building) "ldV" = ( /obj/structure/nest/randomized{ @@ -21548,9 +21668,12 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "lsT" = ( -/mob/living/simple_animal/cow/brahmin/cow, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/machinery/light{ + dir = 8; + pixel_y = -16 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/cmo, +/area/f13/building) "lsV" = ( /obj/structure/closet/cabinet, /obj/effect/spawner/lootdrop/f13/armor/clothes, @@ -21605,18 +21728,21 @@ /area/f13/building/workshop/nash) "lvH" = ( /obj/structure/chair/sofa/corner{ - dir = 8 + dir = 8; + color = "#333333" + }, +/turf/open/floor/wood_common{ + color = "#888888" }, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "lwh" = ( -/obj/structure/rack, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/stairs/north{ + color = "#A47449" }, -/area/f13/building) +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "lwu" = ( /obj/item/trash/f13/tin, /obj/item/kirbyplants/dead{ @@ -21837,9 +21963,8 @@ }, /area/f13/wasteland) "lBf" = ( -/obj/structure/simple_door/tent, -/obj/structure/decoration/rag, -/turf/open/indestructible/ground/outside/dirt, +/obj/machinery/smartfridge/bottlerack/gardentool/primitive, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "lBk" = ( /obj/structure/rack{ @@ -21901,14 +22026,26 @@ /turf/open/indestructible/ground/inside/dirt, /area/f13/wasteland) "lCP" = ( -/obj/structure/sink{ - dir = 8; - pixel_x = -12 +/obj/machinery/photocopier{ + pixel_x = 12; + pixel_y = -4 }, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/machinery/libraryscanner{ + pixel_x = -14; + density = 0; + pixel_y = -2 }, -/area/f13/building) +/obj/structure/rug/big/rug_fancy{ + color = "grey"; + dir = 1; + pixel_x = -26; + layer = 2.7; + pixel_y = 10 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/wasteland/city/newboston/library) "lCU" = ( /obj/structure/barricade/sandbags, /obj/structure/obstacle/barbedwire/end{ @@ -22124,17 +22261,17 @@ /turf/open/floor/f13/wood, /area/f13/building) "lJp" = ( -/obj/structure/closet/crate/wicker, -/obj/item/locked_box/misc/money/legion/low, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/indestructible/ground/outside/dirt, +/obj/structure/rug/big/rug_fancy{ + dir = 8 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "lJu" = ( /obj/structure/toilet{ dir = 1 }, /turf/open/floor/f13/wood, -/area/f13/wasteland) +/area/f13/building) "lJC" = ( /obj/structure/noticeboard, /turf/closed/wall/f13/coyote/oldwood, @@ -22364,10 +22501,10 @@ }, /area/f13/building) "lRl" = ( -/obj/machinery/workbench/advanced, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/structure/closet/fridge, +/obj/item/storage/fancy/egg_box, +/obj/item/storage/fancy/egg_box, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "lRq" = ( /obj/structure/chair/comfy{ @@ -22546,9 +22683,13 @@ /turf/open/indestructible/ground/outside/water, /area/f13/wasteland/city/newboston/outdoors) "lYl" = ( -/mob/living/simple_animal/hostile/mirelurk/hunter, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/structure/nest/randomized{ + randomizer_difficulty = 1; + randomizer_kind = "trash mobs"; + randomizer_tag = "Newb Oston Gaming 7" + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "lYr" = ( /obj/effect/decal/cleanable/dirt, /turf/open/indestructible/ground/outside/sidewalk{ @@ -22740,26 +22881,17 @@ }, /area/f13/wasteland/city/newboston/outdoors) "mdm" = ( -/obj/structure/nest/raider/melee, -/turf/open/floor/plasteel/f13{ - icon_state = "floorgrime" - }, +/obj/item/clothing/under/f13/bluedress, +/obj/structure/closet/cabinet/anchored, +/obj/item/clothing/under/half_skirt, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "mdr" = ( -/obj/structure/rack, -/obj/item/ammo_box/m44, -/obj/item/ammo_box/m44, -/obj/item/ammo_box/m44, -/obj/item/ammo_box/m44, -/obj/item/ammo_box/tube/m44, -/obj/item/ammo_box/tube/m44, -/obj/item/ammo_box/magazine/m9mm, -/obj/item/ammo_box/magazine/m9mm, -/obj/item/ammo_box/magazine/m9mm, -/obj/item/ammo_box/magazine/m9mm, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/chair/sofa/left{ + color = "#77A09F"; + dir = 1 }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "mdx" = ( /obj/structure/chair/pew, @@ -24418,9 +24550,9 @@ /turf/open/indestructible/ground/inside/mountain, /area/f13/caves) "mYL" = ( -/mob/living/simple_animal/hostile/mirelurk, -/turf/open/indestructible/ground/outside/water, -/area/f13/caves) +/obj/structure/simple_door/glass, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, +/area/f13/building) "mZr" = ( /obj/structure/window/fulltile/wood, /obj/effect/decal/cleanable/dirt, @@ -25380,7 +25512,9 @@ /obj/item/lock_bolt{ dir = 1 }, -/turf/open/floor/wood_common, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/wasteland/city/newboston/library) "nBx" = ( /obj/effect/decal/marking{ @@ -26445,9 +26579,15 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/bar, /area/f13/caves) "ogt" = ( -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/curtain{ + color = "#77A09F" + }, +/obj/structure/decoration/vent, +/obj/machinery/shower{ + dir = 1 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/cmo, +/area/f13/building) "ogw" = ( /obj/structure/barricade/bars, /turf/open/floor/plasteel/f13{ @@ -26658,10 +26798,12 @@ /turf/open/floor/f13/wood, /area/f13/building) "ons" = ( -/obj/structure/decoration/rag, -/obj/structure/barricade/wooden, -/turf/closed/wall/f13/coyote/oldwood, -/area/f13/building) +/obj/structure/closet/crate/wooden, +/obj/structure/destructible/tribal_torch/wall/lit, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "onB" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -26669,11 +26811,13 @@ /turf/open/indestructible/ground/outside/sidewalk, /area/f13/wasteland/city/newboston/outdoors) "onN" = ( -/obj/structure/closet/crate/large, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/mineral/wood/fifty, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/building) +/obj/effect/turf_decal/weather/dirt, +/turf/open/indestructible/ground/outside/gravel{ + color = "#B7ABAB"; + footstep = "dirt"; + name = "rocky dirt" + }, +/area/f13/wasteland) "onX" = ( /obj/item/storage/trash_stack, /obj/effect/decal/cleanable/dirt, @@ -26902,15 +27046,9 @@ }, /area/f13/building) "ouT" = ( -/obj/structure/closet/crate/large, -/obj/item/stack/sheet/mineral/wood/fifty, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, +/obj/structure/table/wood, /obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/building) "ouU" = ( /obj/structure/flora/rock/pile/largejungle, @@ -26918,9 +27056,11 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "ovk" = ( -/obj/structure/reagent_dispensers/compostbin, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/window/fulltile/ruins{ + icon_state = "ruinswindowvertical" + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "ovp" = ( /turf/closed/wall/r_wall/f13/vault, /area/f13/building) @@ -27236,18 +27376,13 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "oHk" = ( -/obj/structure/fence/wooden{ - density = 0; - pixel_y = 26; - pixel_x = -14 - }, -/obj/structure/fence/wooden{ - density = 0; - pixel_y = -13; - pixel_x = -15 +/obj/structure/chair/wood{ + icon = 'icons/obj/objects2.dmi'; + icon_state = "wooden_chair"; + dir = 1 }, -/turf/open/indestructible/ground/outside/gravel, -/area/f13/wasteland) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "oHt" = ( /obj/structure/junk/cabinet, /turf/open/indestructible/ground/outside/dirt{ @@ -27511,12 +27646,12 @@ /turf/open/floor/f13, /area/f13/building) "oQi" = ( -/obj/structure/fence{ - dir = 1; - icon_state = "post_wood" +/obj/machinery/light{ + dir = 8; + pixel_y = -16 }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "oQk" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/f13/common, @@ -27557,12 +27692,28 @@ /turf/open/floor/plasteel/f13/vault_floor/blue/white/whitebluechess, /area/f13/building/abandoned) "oRi" = ( -/obj/structure/closet/crate/wicker, -/obj/item/locked_box/misc/money/legion/low, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/chair/comfy/throne{ + pixel_y = 16; + name = "throne" }, -/area/f13/building) +/obj/structure/table/wood{ + density = 0; + alpha = 1 + }, +/obj/item/clothing/suit/hooded/cloak/drake{ + plane = -2 + }, +/obj/item/clothing/head/hooded/cloakhood/drake{ + plane = -2 + }, +/obj/effect/turf_decal/siding/wood{ + color = "#4F3528"; + plane = -4 + }, +/turf/open/floor/wood_worn{ + color = "#E2E2E2" + }, +/area/f13/caves) "oRo" = ( /obj/effect/turf_decal/weather/dirt{ dir = 5 @@ -27701,9 +27852,13 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/caves) "oVe" = ( -/mob/living/simple_animal/hostile/renegade/grunt, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/caves) +/obj/structure/closet/crate/bin{ + pixel_x = -7 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/wasteland/city/newboston/library) "oVf" = ( /turf/closed/wall/f13/vault, /area/f13/brotherhood) @@ -27743,9 +27898,12 @@ /turf/open/floor/plasteel/f13/vault_floor/dark/darksolid, /area/f13/building) "oVF" = ( -/obj/structure/mirelurkegg, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/structure/chair/wood{ + icon = 'icons/obj/objects2.dmi'; + icon_state = "wooden_chair" + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "oVI" = ( /obj/structure/campfire, /turf/open/indestructible/ground/outside/gravel, @@ -27809,9 +27967,10 @@ /turf/closed/wall/f13/coyote/oldwood, /area/f13/village) "oXT" = ( -/mob/living/simple_animal/hostile/mirelurk/baby, -/turf/open/indestructible/ground/outside/water, -/area/f13/caves) +/turf/open/floor/wood_common{ + color = "#888888" + }, +/area/f13/wasteland/city/newboston/library) "oYb" = ( /obj/effect/decal/cleanable/dirt/dust, /obj/machinery/conveyor{ @@ -28069,15 +28228,17 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/cmo, /area/f13/wasteland/city/newboston/sauna) "pfZ" = ( -/obj/structure/nest/raider/melee, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/caves) +/obj/structure/table/wood, +/obj/item/flashlight/lamp, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "pgp" = ( -/obj/structure/chair/wood{ - dir = 4 +/obj/machinery/door/poddoor/shutters{ + id = "garage"; + name = "garage shutters" }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "pgw" = ( /obj/machinery/vending/cola/starkist{ pixel_x = -4 @@ -28152,9 +28313,12 @@ /turf/open/floor/carpet/blue, /area/f13/building) "piv" = ( -/obj/structure/flora/grass/wasteland, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/turf/open/indestructible/ground/outside/gravel{ + color = "#B7ABAB"; + footstep = "dirt"; + name = "rocky dirt" + }, +/area/f13/wasteland) "pix" = ( /obj/effect/decal/cleanable/dirt, /turf/open/indestructible/ground/outside/sidewalk{ @@ -28606,19 +28770,12 @@ /turf/open/floor/plasteel/f13/vault_floor/white, /area/f13/building/hospital/clinic/nash) "put" = ( -/obj/structure/fence/wooden{ - density = 0; - pixel_y = 23; - pixel_x = -11 - }, -/obj/structure/fence/wooden{ - dir = 4; - icon_state = "post_wood"; - pixel_y = 22; - density = 0; - pixel_x = 8 +/obj/structure/wreck/car{ + dir = 8; + icon_state = "bike_rust_med"; + layer = 2 }, -/turf/open/floor/f13/wood, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/building) "puv" = ( /mob/living/simple_animal/hostile/ghoul/reaver, @@ -28652,11 +28809,8 @@ /turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/caves) "pvz" = ( -/obj/structure/window/fulltile/wood, -/obj/structure/decoration/rag, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/structure/simple_door/glass, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "pvN" = ( /obj/structure/chair/stool/bar, @@ -29200,14 +29354,11 @@ }, /area/f13/building/abandoned) "pLg" = ( -/obj/structure/fence/post{ - desc = "A wooden post."; - icon_state = "end_wood"; - name = "pole" - }, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/closet/crate/bin/trashbin{ + pixel_x = 5; + pixel_y = 5 }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "pLv" = ( /obj/structure/reagent_dispensers/barrel/three, @@ -29227,14 +29378,13 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "pLP" = ( -/obj/machinery/light/small{ - color = "#FF0000"; +/obj/structure/fireplace{ dir = 4; - light_color = "#FF0000" + pixel_x = -8; + pixel_y = -10 }, -/obj/effect/decal/cleanable/dirt, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/wasteland) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "pMf" = ( /obj/structure/table/booth, /obj/effect/decal/cleanable/dirt, @@ -29844,11 +29994,18 @@ /turf/open/floor/f13/wood, /area/f13/building) "qho" = ( -/obj/structure/flora/grass/wasteland{ - icon_state = "tall_grass_6" +/obj/structure/table/wood, +/obj/item/kirbyplants{ + icon = 'modular_coyote/icons/objects/miscellaneous.dmi'; + icon_state = "pot_2"; + pixel_y = 6 }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "qhp" = ( /obj/structure/window/fulltile/wood{ max_integrity = 140 @@ -30051,13 +30208,16 @@ /area/f13/caves) "qnB" = ( /obj/structure/chair/sofa/corner{ - dir = 1 + dir = 1; + color = "#333333" }, -/obj/structure/rug/carpet3{ - pixel_y = 13; - pixel_x = 14 +/obj/effect/turf_decal/siding/wood{ + dir = 8; + color = "#3B2C25" + }, +/turf/open/floor/wood_common{ + color = "#888888" }, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "qnG" = ( /obj/structure/filingcabinet, @@ -30111,11 +30271,8 @@ }, /area/f13/building) "qol" = ( -/obj/structure/table, -/obj/machinery/reagentgrinder, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/machinery/smartfridge/bottlerack, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "qoq" = ( /obj/structure/table/wood, @@ -30499,12 +30656,20 @@ /turf/open/floor/f13/wood, /area/f13/village) "qyc" = ( -/obj/structure/closet/crate, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/closet{ + pixel_y = 22; + pixel_x = 7 + }, +/obj/item/mop{ + pixel_x = 6; + pixel_y = 20 }, +/obj/item/reagent_containers/glass/bucket{ + pixel_y = 20; + pixel_x = 6 + }, +/obj/machinery/light, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "qye" = ( /obj/structure/chair/comfy/black{ @@ -30870,17 +31035,9 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "qEO" = ( -/obj/structure/closet/crate, -/obj/item/locked_box/weapon/range/tier2, -/obj/effect/decal/cleanable/cobweb/cobweb2, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, +/obj/structure/table/wood, /obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "qFg" = ( /obj/structure/simple_door/metal, @@ -31245,11 +31402,22 @@ /turf/open/floor/f13, /area/f13/brotherhood) "qPU" = ( -/obj/structure/chair/f13foldupchair{ - dir = 4 +/obj/effect/turf_decal/siding/wood{ + dir = 5; + color = "#3B2C25"; + plane = -4 }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/ppflowers{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "qQj" = ( /obj/structure/closet/cabinet/anchored, /obj/effect/spawner/lootdrop/clothing_low, @@ -31616,22 +31784,9 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "raI" = ( -/obj/item/trash/candle{ - pixel_x = -2; - pixel_y = 16 - }, -/obj/item/candle/infinite{ - pixel_x = 10; - pixel_y = 17 - }, -/obj/item/trash/plate{ - layer = 2.9; - pixel_x = 13; - pixel_y = 13 - }, -/obj/structure/bookcase, -/turf/open/floor/wood_common, -/area/f13/wasteland/city/newboston/library) +/obj/structure/table/wood, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, +/area/f13/building) "rbN" = ( /obj/effect/turf_decal/weather/dirt{ dir = 8 @@ -31909,9 +32064,11 @@ }, /area/f13/building) "rjZ" = ( -/obj/machinery/door/unpowered/securedoor, -/turf/open/floor/f13/wood, -/area/f13/wasteland) +/obj/structure/rug/mat/welcome{ + dir = 8 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "rki" = ( /obj/structure/table/wood, /obj/structure/barricade/bars{ @@ -31965,12 +32122,14 @@ /turf/open/floor/f13/wood, /area/f13/building) "rkR" = ( -/obj/effect/turf_decal/weather/dirt, -/obj/effect/turf_decal/weather/dirt{ - dir = 8 +/obj/structure/table/wood, +/obj/item/export/bottle/wine, +/obj/item/export/bottle/wine, +/obj/item/export/bottle/wine, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/turf/open/indestructible/ground/outside/water, -/area/f13/wasteland) +/area/f13/caves) "rkU" = ( /obj/structure/table, /obj/machinery/light/broken{ @@ -33002,9 +33161,32 @@ }, /area/f13/building) "rLa" = ( -/obj/structure/decoration/rag, -/turf/closed/wall/f13/tentwall, -/area/f13/building) +/obj/structure/rack/shelf_wood{ + density = 0; + pixel_y = 24 + }, +/obj/item/clothing/head/hooded/cloakhood/outcast{ + pixel_y = 18 + }, +/obj/item/clothing/suit/armor/heavy/riot/knight/tabard{ + pixel_y = 24 + }, +/obj/item/clothing/suit/armor/heavy/riot/knight/tabard{ + pixel_y = 24 + }, +/obj/item/clothing/suit/armor/heavy/riot/knight/tabard{ + pixel_y = 24 + }, +/obj/item/clothing/head/hooded/cloakhood/outcast{ + pixel_y = 18 + }, +/obj/item/clothing/head/hooded/cloakhood/outcast{ + pixel_y = 18 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "rLg" = ( /obj/structure/simple_door/house{ icon_state = "room" @@ -33226,12 +33408,12 @@ /turf/open/floor/f13/wood, /area/f13/building) "rPR" = ( -/obj/structure/fence{ +/obj/machinery/light{ dir = 1; - icon_state = "post_wood" + pixel_x = 16 }, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/caves) +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "rQn" = ( /obj/machinery/light{ dir = 8 @@ -33795,22 +33977,24 @@ }, /area/f13/building/tribal/cave) "seq" = ( -/obj/item/trash/plate{ - layer = 2.9; - pixel_x = 7; - pixel_y = 16 +/obj/structure/table/wood{ + density = 0; + alpha = 1 }, -/obj/item/candle/infinite{ - pixel_x = 2; - pixel_y = 18 +/obj/effect/turf_decal/siding/wood{ + color = "#4F3528"; + dir = 10; + plane = -4 }, -/obj/item/trash/candle{ - pixel_x = -7; - pixel_y = 15 +/obj/structure/destructible/tribal_torch/wall/lit{ + dir = 1; + pixel_y = 12; + pixel_x = 1 }, -/obj/structure/bookcase, -/turf/open/floor/wood_common, -/area/f13/wasteland/city/newboston/library) +/turf/open/floor/wood_worn{ + color = "#E2E2E2" + }, +/area/f13/caves) "ser" = ( /obj/structure/flora/wasteplant/wild_xander, /turf/open/indestructible/ground/outside/dirt, @@ -34036,13 +34220,14 @@ }, /area/f13/wasteland) "siF" = ( -/obj/structure/fence/wooden{ +/obj/structure/table/wood, +/obj/effect/spawner/lootdrop/f13/common, +/obj/machinery/light{ dir = 4; - pixel_y = -10; - density = 0 + pixel_y = 16 }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/wasteland) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "siM" = ( /obj/machinery/computer/terminal{ dir = 8 @@ -34402,10 +34587,12 @@ /turf/open/floor/f13/wood, /area/f13/building) "svu" = ( -/obj/structure/window/fulltile/wood, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/machinery/microwave/stove, +/obj/machinery/light{ + light_color = "#e8eaff"; + dir = 1 }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "svy" = ( /obj/machinery/mineral/wasteland_vendor/crafting{ @@ -34417,11 +34604,9 @@ /area/f13/building) "svz" = ( /obj/machinery/light/small{ - color = "#FF0000"; - dir = 4; - light_color = "#FF0000" + dir = 4 }, -/turf/open/indestructible/ground/outside/dirt, +/turf/open/floor/plasteel/f13/stone/rugged, /area/f13/wasteland) "svN" = ( /obj/effect/decal/cleanable/dirt/dust, @@ -34429,11 +34614,22 @@ /turf/open/floor/plasteel/f13/vault_floor/dark/darksolid, /area/f13/building) "svS" = ( -/obj/machinery/microwave/stove, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/effect/turf_decal/siding/wood{ + dir = 6; + color = "#3B2C25"; + plane = -4 }, -/area/f13/building) +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/pointybush{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "svU" = ( /obj/structure/chair/stool/retro, /turf/open/floor/f13{ @@ -34491,13 +34687,12 @@ }, /area/f13/building) "swY" = ( -/obj/structure/closet/crate, -/obj/item/ammo_box/magazine/greasegun, -/obj/item/ammo_box/magazine/greasegun, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/bed/old, +/obj/item/bedsheet/cult, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/area/f13/building) +/area/f13/caves) "sxh" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/wreck/trash/four_barrels, @@ -34950,7 +35145,9 @@ /obj/structure/chair/office/dark{ dir = 1 }, -/turf/open/floor/wood_common, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/wasteland/city/newboston/library) "sIE" = ( /obj/structure/table/wood, @@ -35747,12 +35944,7 @@ /area/f13/wasteland) "tev" = ( /obj/structure/table/wood, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "teT" = ( /obj/structure/window/fulltile/house{ @@ -35783,9 +35975,11 @@ /turf/open/indestructible/ground/outside/sidewalk, /area/f13/wasteland) "tfC" = ( -/mob/living/simple_animal/hostile/mirelurk/baby, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/structure/chair/office/dark{ + dir = 8 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "tfL" = ( /obj/effect/decal/cleanable/dirt, /turf/open/floor/carpet/blue, @@ -36821,11 +37015,26 @@ }, /area/f13/building/tribal) "tEI" = ( -/obj/structure/barricade/wooden, -/obj/structure/decoration/rag{ - icon_state = "skulls" +/obj/structure/flora/tree/cherryblossom3{ + pixel_x = -7; + pixel_y = 27; + density = 0 }, -/turf/closed/wall/f13/coyote/oldwood, +/obj/effect/turf_decal/siding/wood{ + dir = 10; + color = "#3B2C25"; + plane = -4 + }, +/obj/structure/flora/ausbushes/fullgrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/lavendergrass{ + randomize_xy = 0 + }, +/obj/structure/flora/ausbushes/ppflowers{ + randomize_xy = 0 + }, +/turf/open/indestructible/ground/outside/dirt/light, /area/f13/wasteland) "tET" = ( /obj/structure/table/wood, @@ -36873,10 +37082,15 @@ /turf/open/floor/f13/wood, /area/f13/building) "tFZ" = ( -/obj/machinery/bookbinder{ - pixel_x = 8 +/obj/structure/table/wood, +/obj/item/toy/plush/bird{ + icon = 'modular_coyote/icons/mob/bird.dmi'; + icon_state = "hooty"; + pixel_y = 16 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "tGJ" = ( /obj/effect/decal/cleanable/blood/drip, @@ -37257,8 +37471,13 @@ /turf/closed/wall/f13/wood/house, /area/f13/store) "tQk" = ( -/turf/open/indestructible/ground/inside/dirt, -/area/f13/caves) +/obj/machinery/button/door{ + pixel_y = 30; + id = "garage"; + name = "garage shutters" + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "tQn" = ( /obj/structure/sign/warning/nosmoking/circle{ pixel_x = 16; @@ -37684,13 +37903,10 @@ /turf/open/floor/f13, /area/f13/brotherhood) "uen" = ( -/obj/structure/table/wood, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/plasteel/f13{ - icon_state = "floorgrime" +/obj/machinery/light{ + pixel_x = -16 }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, /area/f13/building) "ueB" = ( /obj/structure/bed/mattress{ @@ -38157,9 +38373,12 @@ /turf/open/floor/f13/wood, /area/f13/building) "uqu" = ( -/obj/structure/chair/bench, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/sink/kitchen{ + dir = 4; + pixel_x = -12 + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, +/area/f13/building) "uqv" = ( /obj/machinery/vending/boozeomat, /turf/open/floor/plasteel/f13/vault_floor/dark/darksolid, @@ -38477,11 +38696,9 @@ }, /area/f13/building) "uBb" = ( -/obj/structure/chair/wood{ - dir = 8 - }, -/obj/item/fishingrod, -/turf/open/floor/f13/wood, +/obj/effect/decal/cleanable/dirt/dust, +/obj/effect/decal/cleanable/dirt/dust, +/turf/closed/wall/f13/coyote/oldwood, /area/f13/building) "uBi" = ( /obj/effect/decal/cleanable/blood/old, @@ -38650,9 +38867,11 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "uGb" = ( -/obj/structure/legion_extractor, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/machinery/smartfridge/bottlerack/seedbin{ + pixel_y = 6 + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "uGh" = ( /turf/open/indestructible/ground/outside/sidewalk{ icon_state = "horizontaltopbordertopright" @@ -38978,11 +39197,20 @@ /area/f13/wasteland) "uPd" = ( /obj/effect/decal/cleanable/dirt, -/obj/machinery/libraryscanner{ - pixel_x = 14; - density = 0 +/obj/structure/bookshelf, +/obj/item/toy/plush/bird{ + icon = 'modular_coyote/icons/mob/bird.dmi'; + icon_state = "crow"; + pixel_y = 29; + pixel_x = -8 + }, +/obj/item/clothing/head/helmet/skull{ + pixel_x = 7; + pixel_y = 16 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "uPk" = ( /obj/structure/sink{ @@ -39037,9 +39265,14 @@ /turf/open/floor/f13/wood, /area/f13/building) "uRs" = ( -/obj/item/storage/trash_stack, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/structure/table/wood, +/obj/machinery/computer/terminal{ + dir = 4; + doc_content_1 = "I'd like to report a crime happening at your house, Officer Mack. Your house is about to burn for the crimes you committed against the People's Republic of China! I hope your sleeping family wakes up in time.. GLORY TO CHINA."; + doc_title_1 = "Crime Report." + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "uRD" = ( /obj/effect/decal/cleanable/dirt, /obj/structure/nest/randomized{ @@ -39129,10 +39362,16 @@ }, /area/f13/building) "uUT" = ( -/obj/structure/barricade/wooden, -/obj/structure/decoration/rag, -/turf/closed/wall/f13/coyote/oldwood, -/area/f13/building) +/obj/effect/turf_decal/siding/wood/end{ + color = "#3B2C25"; + dir = 8 + }, +/obj/structure/fluff/hedge{ + pixel_y = 8; + plane = -2 + }, +/turf/open/indestructible/ground/outside/dirt/light, +/area/f13/wasteland) "uUW" = ( /turf/open/indestructible/ground/inside/mountain, /area/f13/wasteland/city/newboston/outdoors) @@ -39376,9 +39615,15 @@ /turf/open/indestructible/ground/outside/sidewalk, /area/f13/wasteland) "vbz" = ( -/obj/structure/sink/puddle, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/table/wood, +/obj/item/kitchen/rollingpin, +/obj/item/reagent_containers/spray/cleaner, +/obj/machinery/light{ + dir = 4; + light_color = "#c1caff" + }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, +/area/f13/building) "vbE" = ( /obj/structure/table/glass, /obj/item/radio/intercom, @@ -39535,12 +39780,11 @@ }, /area/f13/wasteland) "vfB" = ( -/obj/machinery/hydroponics/soil{ - name = "riverbed soil"; - yieldmod = 1.3 +/obj/structure/dresser{ + density = 0 }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "vfL" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/cleanable/dirt, @@ -39671,13 +39915,9 @@ /turf/open/indestructible/ground/inside/mountain, /area/f13/wasteland) "vkM" = ( -/obj/structure/table, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, -/area/f13/building) +/obj/structure/campfire/stumpfire, +/turf/open/indestructible/ground/outside/dirt, +/area/f13/wasteland) "vkN" = ( /obj/structure/window/fulltile/wood, /turf/open/floor/f13/wood, @@ -39892,10 +40132,11 @@ /turf/open/indestructible/ground/outside/gravel, /area/f13/wasteland) "vpp" = ( -/obj/machinery/chem_master/advanced, -/turf/open/floor/plasteel/f13{ - icon_state = "floorgrime" +/obj/structure/chair/sofa/right{ + color = "#77A09F"; + dir = 1 }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "vpt" = ( /obj/structure/nest/randomized{ @@ -39933,16 +40174,17 @@ /turf/open/floor/f13/wood, /area/f13/building/abandoned) "vpU" = ( -/obj/structure/rack, -/obj/item/locked_box/misc/crafting, -/obj/item/locked_box/misc/crafting, -/obj/item/stack/sheet/metal/fifty, -/obj/item/stack/sheet/glass/fifty, -/obj/item/storage/toolbox/mechanical/old, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/table/wood, +/obj/item/reagent_containers/food/snacks/meatsalted, +/obj/item/reagent_containers/food/snacks/meatsalted, +/obj/item/reagent_containers/food/snacks/meatsalted, +/obj/structure/destructible/tribal_torch/wall/lit{ + dir = 4 }, -/area/f13/building) +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "vpX" = ( /obj/structure/rack, /obj/effect/spawner/lootdrop/f13/common, @@ -40442,11 +40684,11 @@ /turf/open/indestructible/ground/inside/mountain, /area/f13/building/tribal/cave) "vBT" = ( -/obj/structure/table/wood, -/obj/item/locked_box/weapon/melee/tier3, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/window/fulltile/ruins, +/obj/structure/curtain/directional/south{ + color = "#77A09F" }, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "vCa" = ( /obj/structure/table/reinforced, @@ -40594,9 +40836,9 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland/city/newboston/outdoors) "vJt" = ( -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/caves) +/obj/machinery/workbench, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "vJx" = ( /obj/structure/table, /obj/effect/spawner/lootdrop/ammo/fiftypercent, @@ -40875,7 +41117,9 @@ /obj/item/cool_book/warandpeace{ pixel_x = 7 }, -/turf/open/floor/wood_common, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, /area/f13/wasteland/city/newboston/library) "vRd" = ( /obj/effect/landmark/start/f13/barkeep, @@ -40960,11 +41204,8 @@ /turf/open/floor/f13/wood, /area/f13/building) "vTu" = ( -/obj/structure/barricade/wooden, -/obj/structure/decoration/rag{ - icon_state = "skin" - }, -/turf/closed/wall/f13/coyote/oldwood, +/obj/machinery/door/unpowered/secure_legion, +/turf/open/floor/plasteel/f13/stone/rugged, /area/f13/caves) "vTD" = ( /obj/effect/decal/cleanable/dirt, @@ -40975,12 +41216,14 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "vTF" = ( -/obj/effect/turf_decal/siding/thinplating/dark{ - dir = 1; - color = "#121212" +/obj/structure/window/fulltile/ruins{ + icon_state = "ruinswindowvertical" }, -/turf/open/indestructible/ground/outside/water, -/area/f13/wasteland) +/obj/structure/curtain/directional/east{ + color = "#77A09F" + }, +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "vTX" = ( /obj/structure/reagent_dispensers/water_cooler, /turf/open/floor/f13{ @@ -41135,14 +41378,8 @@ }, /area/f13/wasteland/city) "vZV" = ( -/obj/structure/fence/wooden{ - dir = 4; - icon_state = "post_wood"; - pixel_y = 3; - density = 0; - pixel_x = 7 - }, -/turf/open/floor/f13/wood, +/obj/structure/simple_door/room, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) "vZX" = ( /obj/machinery/smartfridge/chemistry/preloaded, @@ -41580,13 +41817,11 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland/city/newboston/outdoors) "wmo" = ( -/obj/structure/table/wood, -/obj/item/storage/box/beakers, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/turf/open/floor/plasteel/f13{ - icon_state = "floorgrime" +/obj/structure/bed/double, +/obj/item/bedsheet/doublesheet{ + color = "#77A09F" }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "wmw" = ( /obj/item/chair/wood, @@ -42090,9 +42325,18 @@ "wzP" = ( /obj/structure/chair/sofa/left{ dir = 1; - icon_state = "sofamiddle" + icon_state = "sofamiddle"; + color = "#333333" + }, +/obj/structure/rug/big/rug_fancy{ + color = "grey"; + dir = 1; + pixel_x = -16; + layer = 2.7 + }, +/turf/open/floor/wood_common{ + color = "#888888" }, -/turf/open/floor/wood_common, /area/f13/wasteland/city/newboston/library) "wAc" = ( /obj/effect/decal/cleanable/dirt, @@ -42168,26 +42412,23 @@ /turf/open/floor/f13/wood, /area/f13/building) "wBT" = ( -/obj/machinery/smartfridge/bottlerack/seedbin, -/obj/item/seeds/agave, -/obj/item/seeds/agave, -/obj/item/seeds/xander, -/obj/item/seeds/xander, -/obj/item/seeds/poppy/broc, -/obj/item/seeds/poppy/broc, -/obj/item/seeds/mutfruit, -/obj/item/seeds/mutfruit, -/obj/item/seeds/feracactus, -/obj/item/seeds/feracactus, -/obj/item/seeds/wheat, -/obj/item/seeds/wheat, -/obj/item/seeds/pumpkin, -/obj/item/seeds/cannabis, -/obj/item/seeds/cannabis, -/obj/item/seeds/cotton, -/obj/item/storage/bag/plants, -/obj/item/storage/bag/plants, -/turf/open/indestructible/ground/outside/dirt, +/obj/structure/table/wood{ + density = 0; + alpha = 1 + }, +/obj/effect/turf_decal/siding/wood{ + color = "#4F3528"; + dir = 6; + plane = -4 + }, +/obj/structure/destructible/tribal_torch/wall/lit{ + dir = 1; + pixel_y = 12; + pixel_x = 1 + }, +/turf/open/floor/wood_worn{ + color = "#E2E2E2" + }, /area/f13/caves) "wBY" = ( /obj/structure/wreck/trash/machinepiletwo, @@ -42992,10 +43233,13 @@ /turf/open/indestructible/ground/inside/subway, /area/f13/caves) "wXQ" = ( -/mob/living/simple_animal/cow/brahmin/cow{ - name = "Big Bess" +/obj/structure/table/wood, +/obj/item/reagent_containers/food/snacks/breadhard, +/obj/item/reagent_containers/food/snacks/breadhard, +/obj/item/reagent_containers/food/snacks/breadhard, +/turf/open/floor/wood_common{ + color = "#CECECE" }, -/turf/open/indestructible/ground/outside/dirt, /area/f13/caves) "wXV" = ( /turf/open/floor/plasteel/f13{ @@ -43214,10 +43458,10 @@ }, /area/f13/building) "xey" = ( -/obj/structure/simple_door/tent, -/obj/structure/decoration/rag, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/building) +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "xeK" = ( /obj/effect/decal/cleanable/dirt, /turf/open/indestructible/ground/outside/sidewalk{ @@ -43620,10 +43864,11 @@ }, /area/f13/wasteland) "xpB" = ( -/obj/structure/nest/raider/melee, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" - }, +/obj/structure/table/wood, +/obj/item/newspaper, +/obj/item/stack/f13Cash/random/low, +/obj/item/stack/f13Cash/random/low, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "xpD" = ( /obj/structure/chair/wood{ @@ -44040,15 +44285,11 @@ /turf/open/floor/carpet/black, /area/f13/building) "xAM" = ( -/obj/structure/closet/crate, -/obj/item/locked_box/weapon/range/tier2, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, +/obj/structure/table/wood, /obj/effect/spawner/lootdrop/f13/common, /obj/effect/spawner/lootdrop/f13/common, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/turf/open/indestructible/ground/outside/civ/woodalt, +/area/f13/building) "xAR" = ( /obj/effect/spawner/lootdrop/f13/common, /obj/effect/spawner/lootdrop/f13/common, @@ -44303,9 +44544,14 @@ }, /area/f13/building) "xGp" = ( -/mob/living/simple_animal/hostile/mirelurk, -/turf/open/indestructible/ground/inside/mountain, -/area/f13/caves) +/obj/machinery/door/airlock/engineering/glass{ + color = "#ff6433"; + req_one_access_txt = "138" + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/wasteland/city/newboston/library) "xGw" = ( /obj/effect/decal/cleanable/dirt, /obj/effect/decal/marking{ @@ -44627,12 +44873,11 @@ /turf/open/indestructible/ground/inside/dirt, /area/f13/wasteland) "xQo" = ( -/obj/effect/spawner/lootdrop/f13/common, -/obj/effect/spawner/lootdrop/f13/common, -/obj/structure/table/wood, -/turf/open/floor/f13/wood{ - icon_state = "housewood2" +/obj/structure/chair/sofa/left{ + color = "#77A09F"; + dir = 8 }, +/turf/open/indestructible/ground/outside/civ/woodalt, /area/f13/building) "xQr" = ( /obj/structure/barricade/wooden, @@ -44770,11 +45015,11 @@ /turf/closed/wall/f13/wood, /area/f13/caves) "xSK" = ( -/obj/structure/chair/f13chair1{ - dir = 8 - }, -/turf/open/indestructible/ground/outside/dirt, -/area/f13/caves) +/obj/structure/table/wood, +/obj/effect/spawner/lootdrop/f13/common, +/obj/effect/spawner/lootdrop/f13/common, +/turf/open/floor/plasteel/f13/vault_floor/misc/vaultrust, +/area/f13/building) "xSV" = ( /obj/machinery/smartfridge/bottlerack/lootshelf/diy, /obj/effect/decal/cleanable/dirt, @@ -44996,9 +45241,13 @@ /turf/open/indestructible/ground/outside/dirt, /area/f13/wasteland) "xXv" = ( -/obj/machinery/door/unpowered/securedoor, -/turf/open/indestructible/ground/inside/dirt, -/area/f13/wasteland) +/obj/structure/destructible/tribal_torch/wall/lit{ + dir = 4 + }, +/turf/open/floor/wood_common{ + color = "#CECECE" + }, +/area/f13/caves) "xXE" = ( /turf/open/indestructible, /area/f13/tcoms) @@ -45597,13 +45846,7 @@ }, /area/f13/wasteland) "yma" = ( -/obj/effect/decal/cleanable/dirt, -/obj/structure/fence/wooden{ - dir = 4; - pixel_y = 3; - density = 0 - }, -/turf/closed/wall/f13/coyote/oldwood, +/turf/open/floor/plasteel/f13/vault_floor/misc/vault1, /area/f13/building) (1,1,1) = {" @@ -77241,7 +77484,7 @@ uIt uIt pZk bEN -lzk +eYm aLL vOY sPL @@ -77343,7 +77586,7 @@ sdt sSx jhV jgL -jgL +qSS aZE uWd top @@ -77498,7 +77741,7 @@ kVi qCp vOY vOY -jKt +vOY vOY vOY vOY @@ -77600,7 +77843,7 @@ sdt sSx mec vzy -vzy +lWa aZE uWd top @@ -77753,12 +77996,12 @@ iLF iLF iLF iLF -vSN -auL -auL +xGp +fVx +fVx vQW -raI -seq +eKD +eKD eKD vSN xyl @@ -77857,7 +78100,7 @@ jgL jgL vWX vzy -vzy +lWa aZE uWd top @@ -78012,11 +78255,11 @@ iLF iLF vSN uPd -auL fVx -auL -auL -auL +fVx +fVx +fVx +fVx nBt ius jqA @@ -78269,9 +78512,9 @@ iLF iLF vSN tFZ -auL -auL -auL +fVx +oVe +iqa auL qnB krF @@ -78526,10 +78769,10 @@ iLF iLF vSN eWR -auL -auL +fVx +lCP fUC -auL +oXT wzP krF ptA @@ -79581,7 +79824,7 @@ avK jgL jgL jgL -fCP +jgL jgL jgL jgL @@ -80095,27 +80338,27 @@ kJF tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ +uUT +piv +piv +piv +piv +onN +hZR +bSU +bSU +bSU dPG +hWC +hWC +hWC +hWC +hWC +iTf tPQ tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -mQz -tPQ vzy upt pOC @@ -80352,23 +80595,23 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -fmT -pKJ -pKJ -pKJ -hPn +kYc +piv +piv +piv +piv +onN +hZR +bSU +bSU +bSU +gzO iZd -dpT -tPQ -tPQ -tPQ -tPQ +iZd +gnK +iZd +iZd +svS tPQ tPQ tPQ @@ -80609,26 +80852,26 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -ucj -ucj -hPn +yde +pgp +pgp +pgp +pgp +yde +bSU +bSU +bSU +bSU +yde vTF -ucj -dpT -tPQ -tPQ +yde +yde +yde +vTF +yde tPQ tPQ tPQ -mQz tPQ vzy upt @@ -80866,23 +81109,23 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -fmT -ucj -ucj -ucj -ucj -hPn -vTF -ucj -ucj -dpT -tPQ -tPQ +yde +tQk +vMp +vMp +vMp +yde +bSU +dPG +tEI +bSU +uBb +feY +fHM +pLP +fHM +hFk +yde tPQ tPQ tPQ @@ -81123,23 +81366,23 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -ucj -ucj -ucj +yde +put +vMp +iFO +vMp +yde +bSU +qPU +cVQ +bSU hPn -vTF -cRP -ucj -ucj -dpT -tPQ +ksk +fHM +fHM +lJp +mdr +jIx tPQ tPQ tPQ @@ -81380,27 +81623,27 @@ hRg tPQ tPQ tPQ +yde +rPR +lYl +vMp +vMp +yde +svz +bSU +bSU +svz +sZG +tev +fHM +bCc +fHM +vpp +yde tPQ tPQ tPQ tPQ -fmT -ucj -ucj -cRP -ucj -ucj -hPn -vTF -ucj -ucj -ucj -ucj -dpT -tPQ -tPQ -mQz -tPQ vzy yde mKq @@ -81637,23 +81880,23 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -irX -cRP -ucj -ucj -nGS -nGS -hPn +yde +vMp +vMp +vMp +uen +yde +yde +pvz +pvz +yde +uBb kyM -nGS -nGS -ucj -cRP -mYs +fHM +jTQ +xQo +fQq +yde tPQ tPQ tPQ @@ -81894,27 +82137,27 @@ hRg tPQ tPQ tPQ +yde +vJt +vMp +vMp +vMp +hdr +fHM +rjZ +rjZ +oQi +fHM +fHM +fHM +fHM +fHM +fHM +jIx tPQ tPQ tPQ tPQ -irX -ucj -ucj -mYs -tPQ -tPQ -oHk -tPQ -tPQ -tPQ -irX -ucj -mYs -tPQ -tPQ -mQz -tPQ vzy upt kwB @@ -82151,26 +82394,26 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -ucj -mYs -tPQ -put -aMU -aMU +yde +ouT +xSK +ouT +drk +yde +ggD +bCc +fHM +fHM +fHM fHM +fHM +oVF +qho +oHk +yde tPQ -irX -ucj -mYs tPQ tPQ -mQz tPQ vzy yde @@ -82408,23 +82651,23 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -ucj -mYs -tPQ -jTQ -aMU +yde +yde +yde +yde +yde +yde +ggD +fHM +fHM +fHM +sZG uBb vZV -tPQ -irX -ucj -mYs +yde +yde +yde +yde tPQ tPQ tPQ @@ -82665,26 +82908,26 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -ucj -mYs -siF yde -mKq +pfZ +uRs +cCk +fHM +hdr +fHM +xAM +siF +hAM yde +lRl yma +uqu +raI +jKt +yde tPQ -irX -ucj -mYs tPQ tPQ -mQz vzy vzy vzy @@ -82919,26 +83162,26 @@ tiJ mYB kXC hRg -mQz -tPQ -tPQ -tPQ tPQ tPQ tPQ -irX -ucj -ucj -mYs -tPQ -upt -aMU -tMo +hPn +xpB +tfC +fHM +aPT +sZG yde -tPQ -irX -ucj -mYs +yde +yde +yde +yde +svu +yma +yma +yma +kMI +vBT tPQ tPQ tPQ @@ -83179,26 +83422,26 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -ucj -mYs -tPQ -upt -kwB -jgh +hPn +vfB +fHM +fHM +fHM +dio +lsT +ldM yde +ioE +vZV +yma +yma +yma +yma +kMI +vBT tPQ -irX -ucj -mYs tPQ tPQ -mQz vzy yde eDu @@ -83436,23 +83679,23 @@ hRg tPQ tPQ tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -ucj -mYs -tPQ yde -pOC +mdm +fHM +wmo +qEO +sZG +cwJ +ogt +yde +qyc +yde +qol +yma +pLg +vbz +ati yde -upt -tPQ -irX -ucj -mYs tPQ tPQ tPQ @@ -83693,26 +83936,26 @@ hRg tPQ tPQ tPQ +yde +yde +vTF +vTF +yde +yde +yde +yde +yde +yde +yde +sZG +mYL +yde +yde +sZG +yde tPQ tPQ tPQ -tPQ -irX -ucj -ucj -mYs -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -irX -ucj -mYs -tPQ -tPQ -mQz vzy yde iAI @@ -83954,22 +84197,22 @@ tPQ tPQ tPQ tPQ -irX -cRP -ucj -mYs +tPQ +tPQ +tPQ +tPQ tPQ tPQ bRX +lBf +fHM +bvg +iKE +cRP +bRX tPQ -cgU -pKJ -ucj -ucj -mYs tPQ tPQ -mQz vzy yde nQx @@ -84211,19 +84454,19 @@ tPQ tPQ tPQ tPQ -bcw -ucj -ucj -ucj -rkR tPQ tPQ +tPQ +tPQ +tPQ +tPQ +bRX cgU -ucj -ucj -ucj -ucj -sIp +fHM +bvg +cRP +cRP +bRX tPQ tPQ tPQ @@ -84469,21 +84712,21 @@ tPQ tPQ tPQ tPQ -irX -ucj -ucj -ucj -pKJ -pKJ -ucj -ucj -ucj +tPQ +tPQ +tPQ +tPQ +tPQ +bRX +ggO +uGb +bvg cRP -mYs +cRP +bRX tPQ tPQ tPQ -mQz vzy kdk peN @@ -84726,21 +84969,21 @@ tPQ tPQ tPQ tPQ -bcw -ucj -ucj -ucj -ucj -ucj -ucj -ucj -ucj -ucj -sIp tPQ tPQ tPQ tPQ +tPQ +yde +ovk +ovk +ovk +ovk +ovk +yde +tPQ +tPQ +tPQ vzy dyy eDu @@ -84984,20 +85227,20 @@ tPQ tPQ tPQ tPQ -bcw -ucj -ucj -ucj -ucj -cRP -ucj -ucj -sIp tPQ tPQ tPQ tPQ -mQz +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ vzy yde eDu @@ -85242,13 +85485,13 @@ tPQ tPQ tPQ tPQ -bcw -nGS -nGS -ucj -ucj -ucj -sIp +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ tPQ tPQ tPQ @@ -85502,16 +85745,16 @@ tPQ tPQ tPQ tPQ -bcw -nGS -sIp tPQ tPQ tPQ tPQ tPQ tPQ -mQz +tPQ +tPQ +tPQ +tPQ vzy yde dpp @@ -86003,7 +86246,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -86271,7 +86514,7 @@ tPQ tPQ tPQ tPQ -dVq +tPQ tPQ tPQ tPQ @@ -86796,7 +87039,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ vzy upt yde @@ -87043,7 +87286,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -87310,7 +87553,7 @@ tPQ tPQ tPQ tPQ -tPQ +mQz vzy yde yde @@ -87557,7 +87800,6 @@ tPQ tPQ tPQ tPQ -mQz tPQ tPQ tPQ @@ -87567,7 +87809,8 @@ tPQ tPQ tPQ tPQ -mQz +tPQ +tPQ vzy upt nVP @@ -88081,7 +88324,7 @@ tPQ tPQ tPQ tPQ -tPQ +mQz vzy gSz yhl @@ -88336,7 +88579,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ mQz vzy @@ -88595,7 +88838,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ vzy yde yde @@ -88850,9 +89093,9 @@ tPQ tPQ tPQ tPQ -mQz tPQ -mQz +tPQ +tPQ vzy vzy brd @@ -89099,7 +89342,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -89359,7 +89602,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -89613,9 +89856,9 @@ tPQ tPQ tPQ tPQ -mQz tPQ -mQz +tPQ +tPQ tPQ tPQ tPQ @@ -89873,7 +90116,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -90129,7 +90372,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -90384,7 +90627,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -90644,7 +90887,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -90900,7 +91143,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -91136,7 +91379,7 @@ tPQ tPQ tPQ tPQ -mQz +tPQ tPQ tPQ tPQ @@ -91393,9 +91636,9 @@ tPQ tPQ tPQ tPQ -mQz -dVq -dVq +tPQ +tPQ +tPQ tPQ tPQ tPQ @@ -91648,11 +91891,8 @@ tPQ tPQ tPQ tPQ -pLG tPQ tPQ -mQz -mql tPQ tPQ tPQ @@ -91674,7 +91914,10 @@ tPQ tPQ tPQ tPQ -mQz +tPQ +tPQ +tPQ +tPQ tPQ yde yde @@ -91906,10 +92149,10 @@ tPQ tPQ tPQ tPQ -mQz tPQ tPQ -dVq +tPQ +tPQ tPQ tPQ tPQ @@ -95850,7 +96093,7 @@ ylG ylG ixV tPQ -gIL +tPQ tPQ tPQ tPQ @@ -96106,9 +96349,9 @@ ixV mQz tPQ tPQ -gIL -gIL -gIL +tPQ +tPQ +tPQ tPQ tPQ tPQ @@ -96363,9 +96606,9 @@ mQz tPQ mQz mQz -gIL -gIL -gIL +tPQ +tPQ +tPQ mQz tPQ tPQ @@ -96620,8 +96863,8 @@ mQz mQz tPQ dVq -mlN -gIL +mQz +tPQ tPQ mQz tPQ @@ -96877,8 +97120,8 @@ tPQ tPQ tPQ mQz -gIL -gIL +tPQ +tPQ tPQ tPQ tPQ @@ -97134,8 +97377,8 @@ tPQ mQz dVq mQz -gIL -gIL +tPQ +tPQ tPQ dVq tPQ @@ -97391,8 +97634,8 @@ ppv ppv dVq mGJ -dHd -mlN +dVq +mQz ppv tPQ tPQ @@ -97648,8 +97891,8 @@ tPQ mQz tPQ dVq -gIL -mlN +tPQ +mQz tPQ tPQ tPQ @@ -97905,8 +98148,8 @@ tPQ mQz mQz mQz -gIL -dHd +tPQ +dVq tPQ tPQ tPQ @@ -98161,8 +98404,8 @@ tPQ mQz mQz tPQ -gIL -gIL +tPQ +tPQ mQz tPQ tPQ @@ -98418,8 +98661,8 @@ tPQ tPQ mQz mQz -gIL -gIL +tPQ +tPQ tPQ tPQ tPQ @@ -98642,9 +98885,9 @@ tPQ tPQ tPQ tPQ -igt -igt -igt +yde +yde +yde tPQ tPQ tPQ @@ -98673,13 +98916,13 @@ tPQ tPQ tPQ tPQ -pLP mQz -gIL -gIL +mQz +tPQ +tPQ +tPQ tPQ tPQ -svz tPQ tPQ tPQ @@ -98899,9 +99142,9 @@ vBi tPQ tPQ tPQ -rjZ +pAf lJu -igt +yde tPQ tPQ tPQ @@ -98928,25 +99171,25 @@ tPQ tPQ gcG gcG -tPQ -tPQ gcG -mQz -mlN -gIL -tPQ -tPQ +gcG +gcG fRl +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ tPQ +mQz tPQ tPQ tPQ tPQ tPQ -mQz tPQ tPQ tPQ @@ -99156,9 +99399,9 @@ hbT dpT tPQ tPQ -igt -igt -igt +yde +yde +yde tPQ mQz tPQ @@ -99180,29 +99423,29 @@ tPQ tPQ tPQ tPQ -tPQ -tPQ +gcG +gcG fRl gcG gcG gcG gcG gcG -hWC -gIL -dHd -mQz -hWC +gcG +gcG +gcG +gcG +gcG gcG tPQ tPQ tPQ +mQz tPQ tPQ tPQ tPQ tPQ -mQz tPQ tPQ mQz @@ -99413,9 +99656,9 @@ ucj mYs tPQ tPQ -rjZ +pAf lJu -igt +yde tPQ mQz tPQ @@ -99436,7 +99679,7 @@ tPQ tPQ gcG gcG -mBr +gcG gcG gcG gcG @@ -99445,19 +99688,19 @@ gcG gcG gcG fRl -tPQ -gIL -mlN -tPQ -mQz gcG +fRl +gcG +gcG +gcG +gcG +fRl mQz tPQ tPQ tPQ tPQ -mQz -mQz +tPQ tPQ tPQ tPQ @@ -99670,9 +99913,9 @@ ucj ucj vBi tPQ -igt -igt -igt +yde +yde +yde dVq tPQ tPQ @@ -99702,23 +99945,23 @@ gcG gcG hRl gcG -tPQ -gIL -gIL -tPQ -oxd +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG tPQ tPQ +mQz tPQ tPQ tPQ tPQ tPQ -tPQ -tPQ -tPQ -mQz bNZ tPQ uAO @@ -99959,21 +100202,21 @@ gcG hRl gcG hRl -tPQ -gIL -tPQ -tPQ -tPQ gcG fRl +gcG +gcG +gcG +gcG +gcG +fRl +gcG +dVq tPQ tPQ tPQ tPQ tPQ -mQz -tPQ -dVq tPQ tPQ mQz @@ -100212,27 +100455,27 @@ gcG gcG gcG gcG -hRl gcG gcG gcG -igt -xXv -tEI -igt gcG gcG gcG +gcG +gcG +gcG +gcG +gcG +gcG +fRl +fRl +gcG tPQ tPQ tPQ tPQ tPQ tPQ -mQz -mQz -tPQ -tPQ tPQ tPQ tPQ @@ -100468,31 +100711,31 @@ gcG gcG gcG gcG -hRl gcG gcG gcG gcG -mBr -tQk -mBr -mBr -hRl gcG gcG gcG +gcG +gcG +gcG +gcG +gcG +gcG +fRl +fRl +gcG +tPQ tPQ tPQ tPQ tPQ tPQ -mQz -mQz tPQ tPQ tPQ -dVq -mQz lAa hFF dBd @@ -100726,16 +100969,19 @@ gcG gcG gcG gcG -csb -yde -hFk -csb -mBr -tQk -mBr -mBr gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -100746,10 +100992,7 @@ tPQ tPQ tPQ tPQ -mQz tPQ -mQz -mQz skN nfx hFF @@ -100969,30 +101212,35 @@ mQz gcG gcG gcG -hRl -hRl gcG gcG gcG gcG -hRl -hRl gcG gcG gcG gcG gcG -hjY -hjY -hdr -uen -csb -hFk -tQk -dqy -mBr gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -101002,11 +101250,6 @@ tPQ tPQ tPQ tPQ -ppv -tPQ -tPQ -tPQ -mQz skN cFy hFF @@ -101226,30 +101469,37 @@ tPQ gcG gcG gcG -hRl -hRl gcG gcG gcG gcG -hRl -hRl -hRl gcG gcG -hRl -hRl -hjY -tPi -hCn -hCn -hCn -rLa -tQk -mBr -mBr gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -101257,13 +101507,6 @@ gcG tPQ tPQ tPQ -tPQ -tPQ -ppv -mQz -tPQ -iSv -mQz rsJ hFF dBd @@ -101482,42 +101725,42 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG -xAM -uRs gcG gcG -hRl -hRl gcG gcG -hRl gcG -hjY -vpp -enn -mdm -hCn -lBf -tQk -tQk -mBr gcG gcG -hRl -hRl gcG gcG gcG -tPQ -tPQ -tPQ -mQz -ppv -mQz +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +fRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -101739,42 +101982,42 @@ gcG gcG gcG gcG -hRl gcG gcG -uRs -lYl -lQh gcG gcG -hRl -hRl gcG -hRl gcG gcG -hjY -wrJ -hCn -enn -hCn -rLa -tQk -tQk -tQk -ogt gcG gcG gcG -hRl gcG gcG -tPQ -tPQ -tPQ -tPQ -mQz -mQz +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +fRl +fRl +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -101995,44 +102238,44 @@ gcG gcG gcG hRl -hRl -hRl gcG gcG -atz -oVF -atz -xAM gcG gcG -hRl -hRl gcG gcG gcG -hjY -hjY -kAg -wmo -csb -aZO -tQk -bvg -tQk -mBr -mBr -mBr gcG -hRl gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -ppv +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ skN @@ -102252,44 +102495,44 @@ gcG gcG hRl hRl -hRl gcG gcG -nPS -nPS -mYL -lQh -oVF gcG gcG -hRl -hRl gcG gcG gcG gcG -hjY -hjY -hjY -yde -iFO -tQk -tQk -tQk -mBr -ogt -mBr gcG gcG -hRl gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ skN @@ -102512,43 +102755,43 @@ hRl gcG gcG gcG -lQh -lQh -nPS -nPS -lYl gcG gcG -hRl -hRl gcG gcG gcG gcG -csb -yde -yde -csb -mBr -tQk -tQk -ggO -mBr -mBr -mBr -mBr gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG tPQ tPQ -tPQ -tPQ -tPQ -ppv -tPQ skN hep tqT @@ -102768,44 +103011,44 @@ hRl hRl gcG gcG -lQh -tfC -lQh -oVF -nPS -nPS gcG gcG gcG -hRl gcG gcG gcG -hjY -hjY -lCP -svS -csb -dIo -tQk -tQk -tQk -tQk -mBr -mBr -mBr gcG gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG tPQ tPQ -tPQ -tPQ -tPQ -tPQ -mQz skN skN sFr @@ -103007,7 +103250,7 @@ sIp oPH tPQ tPQ -tPQ +vkM tPQ mQz tPQ @@ -103025,50 +103268,50 @@ hRl gcG gcG gcG -jIx -lQh gcG -uRs -lQh gcG gcG gcG gcG -hRl gcG gcG gcG -yde -qol -nuC -lez -lez -hFk -feY -tQk -tQk -tQk -mBr -mBr -mBr -mBr gcG gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG tPQ tPQ tPQ tPQ -mQz -ppv tPQ tPQ tPQ tPQ -wxC -mQz tPQ cCu tPQ @@ -103282,8 +103525,6 @@ hRl gcG gcG gcG -lQh -atz gcG gcG gcG @@ -103291,27 +103532,33 @@ gcG gcG gcG gcG -hRl gcG gcG gcG -csb -ksk -lez -nuC -inV -rLa -tQk -mBr -mBr -pgp -qPU -mBr -mBr -mBr -ogt gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG tPQ @@ -103324,10 +103571,6 @@ tPQ tPQ tPQ tPQ -mQz -tPQ -tPQ -tPQ tPQ tPQ tPQ @@ -103539,8 +103782,6 @@ hRl gcG gcG gcG -lQh -jIx gcG gcG gcG @@ -103548,27 +103789,33 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG -svu -vkM -lez -xpB -inV -lBf -tQk -mBr -ogt -ogt -mBr -mBr -mBr -mBr -mBr gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -103580,10 +103827,6 @@ tPQ tPQ tPQ tPQ -mQz -tPQ -tPQ -tPQ tPQ tPQ hrn @@ -103796,8 +104039,6 @@ hRl gcG gcG gcG -atz -lQh gcG gcG gcG @@ -103805,27 +104046,32 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG -hjY -gGp -lez -lez -lJp -rLa -uqu -mBr -dqy -ggD -mBr -eAL -mBr -mBr -mBr gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -103836,9 +104082,6 @@ tPQ tPQ tPQ tPQ -mQz -tPQ -tPQ tPQ tPQ tPQ @@ -104053,8 +104296,6 @@ hRl gcG gcG gcG -lQh -lQh gcG gcG gcG @@ -104063,33 +104304,35 @@ gcG gcG gcG gcG -hRl gcG gcG -hjY -yde -lez -lez -csb -aZO -uqu -mBr -mBr -mBr -mBr -mBr -mBr -mBr -mBr gcG -hRl -hRl gcG gcG gcG -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -104299,20 +104542,14 @@ tPQ gcG gcG gcG -hRl -hRl gcG gcG gcG gcG -hRl -hRl gcG gcG gcG gcG -lQh -lQh gcG gcG gcG @@ -104320,27 +104557,36 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG -csb -hjY -yde -yde -drk -tQk -qho -tQk -xSK -xSK -bvg -mBr -tQk -tQk gcG gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -104353,9 +104599,6 @@ tPQ tPQ tPQ tPQ -bNZ -tPQ -tPQ tPQ mec ndt @@ -104556,20 +104799,16 @@ gcG gcG gcG hRl -hRl gcG gcG gcG gcG gcG -hRl -hRl gcG gcG gcG gcG gcG -lQh gcG gcG gcG @@ -104577,33 +104816,37 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG gcG gcG gcG -vTu -oQi -rPR -rPR -gnK -tQk -tQk -tQk -tQk -tQk -tQk gcG gcG -hRl -hRl gcG gcG gcG -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -104813,21 +105056,13 @@ gcG gcG gcG hRl -hRl gcG -nPS -tfC -uRs gcG -hRl -hRl gcG gcG gcG gcG gcG -lQh -lQh gcG gcG gcG @@ -104835,32 +105070,40 @@ gcG gcG gcG gcG -hRl gcG gcG gcG -eYm -mBr -vfB -vfB -tQk -tQk -aPT -tQk -tQk -tQk -tQk -tQk -tQk gcG gcG gcG -hRl -hRl gcG gcG gcG -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -105072,19 +105315,12 @@ hRl hRl gcG gcG -atz -lQh -lQh gcG gcG -hRl -hRl gcG gcG gcG gcG -lQh -atz gcG gcG gcG @@ -105092,32 +105328,39 @@ gcG gcG gcG gcG -hRl gcG gcG gcG gcG -vfB -eqf -vbz -tQk -tQk -vTu -tQk -tQk -bvg -csb -yde -csb -csb -yde -yde -hRl gcG gcG gcG gcG -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -105322,26 +105565,19 @@ tPQ tPQ tPQ tPQ -lQh +gcG gcG gcG hRl gcG gcG gcG -atz -xGp -lQh gcG gcG gcG -hRl gcG gcG gcG -lQh -lQh -lYl gcG gcG gcG @@ -105349,33 +105585,40 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG gcG -vfB -mBr -vfB -vJt -tQk -aPT -tQk -tQk -tQk -pvz -vpU -lez -ehf -vBT -uUT -hRl -hRl gcG gcG gcG gcG -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -105578,27 +105821,16 @@ tPQ tPQ tPQ tPQ -lQh -lQh gcG gcG gcG gcG gcG gcG -lQh -jIx -atz gcG gcG gcG -hRl gcG -lQh -lQh -lQh -lQh -lQh gcG gcG gcG @@ -105606,28 +105838,39 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG -alu -ovk -vfB -ogt -tQk -tQk -ati -tQk -tQk -tQk -aZO -ldM -lez -xpB -cCk -uUT gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -105834,29 +106077,18 @@ tPQ tPQ tPQ tPQ -lQh -lQh -lQh gcG gcG gcG gcG gcG gcG -lQh -lQh gcG gcG gcG gcG -lQh -lQh -lQh gcG gcG -lQh -lQh -lQh gcG gcG gcG @@ -105864,34 +106096,45 @@ gcG gcG gcG gcG -hRl gcG gcG -alu -mBr -cwJ -vfB -oVe -tQk -iKE -tQk -tQk -tQk -gzO -lez -lez -lez -lwh -aZO gcG -hRl -hRl gcG gcG gcG gcG gcG gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +tPQ +tPQ tPQ tPQ tPQ @@ -106090,30 +106333,17 @@ tPQ tPQ tPQ tPQ -lQh -lQh -lQh -lQh -lQh gcG gcG gcG gcG gcG -jIx -lQh gcG gcG gcG -lQh -lQh -atz gcG gcG gcG -lQh -atz -lQh gcG gcG gcG @@ -106121,29 +106351,9 @@ gcG gcG gcG gcG -hRl -hRl gcG -alu -mBr -vbz -piv -tQk -mBr -aPT -tQk -tQk -tQk -uUT -ouT -lez -qyc -mdr -yde gcG gcG -hRl -hRl gcG gcG gcG @@ -106151,6 +106361,39 @@ gcG gcG gcG gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +tPQ +tPQ +tPQ +tPQ tPQ tPQ tPQ @@ -106350,57 +106593,26 @@ gcG gcG gcG gcG -lQh -lQh -lQh -lQh gcG gcG -lQh -lQh gcG gcG gcG gcG -lQh -lQh -hRl gcG gcG gcG gcG -lQh -jIx -lQh gcG gcG gcG gcG gcG gcG -hRl -hRl gcG -alu -vfB -ioE -vfB -lsT -mBr -aPT -tQk -tQk -tQk -uUT -csb -csb -csb -csb -csb gcG gcG gcG -hRl gcG gcG gcG @@ -106409,6 +106621,37 @@ gcG gcG gcG gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +tPQ +tPQ +tPQ +tPQ +tPQ tPQ tPQ tPQ @@ -106608,27 +106851,14 @@ gcG gcG gcG gcG -lQh -lQh -lQh -lQh -lQh -tfC gcG gcG gcG gcG -lQh -atz gcG -hRl -hRl gcG gcG gcG -lQh -tfC -lQh gcG gcG gcG @@ -106636,29 +106866,33 @@ gcG gcG gcG gcG -hRl gcG gcG -ogt -dio -dqy -tQk -tQk -vTu -tQk -tQk -tQk -tQk gcG gcG gcG gcG hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +gcG gcG gcG gcG -hRl -hRl gcG gcG gcG @@ -106668,6 +106902,15 @@ gcG gcG gcG gcG +gcG +gcG +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ tPQ tPQ mec @@ -106862,62 +107105,47 @@ tPQ gcG gcG gcG -hRl gcG gcG gcG -lQh -tfC -lQh -lQh -lQh gcG -lQh -lQh -lQh -lQh gcG gcG -hRl -hRl gcG gcG gcG gcG -lQh -lQh -atz gcG gcG gcG gcG gcG gcG -hRl -hRl -vTu -mBr -mBr -mBr -kYc -wXQ -eYm -tQk -tQk -tQk -tQk -tQk gcG gcG gcG -hRl -hRl +gcG +gcG gcG gcG gcG hRl +hUa +hUa +hUa +hUa +hUa +hUa +vTu +vTu +vTu +hUa +hUa +hUa +hUa +hUa +hUa hRl -hRl gcG gcG gcG @@ -106925,6 +107153,21 @@ gcG gcG gcG gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ +tPQ tPQ tPQ mec @@ -107119,52 +107362,50 @@ gcG gcG gcG gcG -hRl gcG gcG gcG -lQh -lQh -jIx -lQh -lQh -lQh -lQh -lQh gcG gcG gcG gcG gcG -hRl gcG gcG gcG gcG -lQh -jIx -lQh -lQh +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG gcG gcG hRl -hRl -alu +hUa cKD -iTf -wBT -uGb -cAk -alu -tQk -tQk -tQk -tQk -fQq -tQk +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +hUa +hRl +gcG +gcG +gcG gcG gcG gcG @@ -107173,9 +107414,6 @@ gcG gcG gcG gcG -hRl -hRl -hRl gcG gcG gcG @@ -107184,6 +107422,11 @@ tPQ tPQ tPQ tPQ +tPQ +tPQ +tPQ +tPQ +tPQ mec lWa uwh @@ -107376,16 +107619,10 @@ gcG gcG gcG hRl -hRl gcG gcG gcG -lQh -lQh gcG -lQh -lQh -jIx gcG gcG gcG @@ -107393,36 +107630,37 @@ gcG gcG gcG gcG -hRl gcG gcG gcG gcG -lQh -lQh -jIx -lQh -lQh -oVF +gcG +gcG +gcG +gcG +gcG gcG gcG gcG gcG hRl -alu -alu -alu -alu -eYm -alu -alu -tQk -tQk -pfZ -tQk -tQk -tQk -tQk +hUa +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +hUa +hRl +gcG gcG gcG gcG @@ -107430,11 +107668,16 @@ gcG gcG gcG gcG -hRl gcG gcG gcG gcG +gcG +gcG +gcG +tPQ +tPQ +tPQ tPQ tPQ tPQ @@ -107637,12 +107880,8 @@ gcG gcG gcG gcG -lQh -lQh gcG gcG -lQh -lQh gcG gcG gcG @@ -107650,46 +107889,50 @@ gcG gcG gcG gcG -hRl -hRl gcG gcG gcG -lQh -atz -lQh -oVF -nPS -lQh +gcG +gcG +gcG +gcG gcG gcG gcG gcG hRl +hUa +cKD +cKD +cKD +hUa +hUa +hUa +hBX +hUa +hUa +hUa +cKD +cKD +cKD +hUa hRl gcG gcG gcG -tQk -tQk -fQq -tQk -tQk -tQk -tQk -tQk -tQk -tQk -tQk gcG gcG gcG gcG gcG gcG -hRl gcG gcG +gcG +gcG +gcG +gcG +tPQ tPQ tPQ tPQ @@ -107893,60 +108136,60 @@ gcG gcG gcG gcG -lQh -lQh gcG gcG gcG gcG -lQh -lQh gcG gcG gcG gcG gcG gcG -hRl -hRl gcG gcG -uRs -lQh -xGp -lQh -nPS -nPS -lQh +gcG +gcG +gcG +gcG +gcG gcG gcG gcG gcG hRl +hUa +cKD +cKD +hUa +hUa +cAk +eAL +xey +hUa +dIo +hUa +hUa +cKD +cKD +hUa hRl gcG gcG gcG -tQk -tQk -tQk -tQk -tQk -tQk -tQk -tQk -tQk -tQk -tQk -tQk -tQk gcG gcG gcG gcG -hRl -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -108148,62 +108391,62 @@ hRl gcG gcG gcG -lQh -atz -lQh gcG gcG gcG gcG gcG -lQh -lQh -lQh -lQh -lQh gcG gcG gcG gcG -hRl gcG gcG -atz -lQh -lQh -nPS -nPS -lQh -oVF -xAM gcG gcG gcG gcG -hRl gcG gcG gcG gcG -tQk -fQq -tQk -tQk -tQk -tQk -fQq -tQk -tQk -tQk -tQk -tQk gcG gcG gcG gcG hRl -tPQ -tPQ +hUa +cKD +cKD +hUa +ehf +xey +xey +xey +hBX +xey +swY +hUa +cKD +cKD +hUa +hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -108404,63 +108647,63 @@ hRl hRl gcG gcG -uRs -lQh -xGp -jIx -lQh gcG gcG gcG gcG -lQh -tfC -lQh -lQh -lQh -uRs gcG gcG gcG -hRl -hRl gcG -oVF -nPS -nPS -nPS -lYl -lQh -atz -xAM gcG gcG gcG gcG -hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG hRl +hUa +cKD +cKD +hUa +seq +dqy +gGp +hUa +hUa +rLa +ons +hUa +cKD +cKD +hUa hRl gcG -csb -hjY -hjY -xey -hjY -yde -mBr -tQk -tQk -tQk -fQq gcG gcG gcG gcG -hRl -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -108661,52 +108904,55 @@ hRl hRl gcG gcG -nPS -lQh -atz -lQh -lQh gcG gcG gcG -lQh -atz -lQh -nPS -nPS -lQh -atz -lQh gcG gcG gcG -hRl -hRl gcG -lYl -nPS -nPS -nPS -atz -lQh -uRs +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG gcG hRl -hRl -hRl -csb -yde -csb -csb +hUa +cKD +cKD +hUa oRi -hBX -hBX -onN -csb -uUT +dqy +gGp +hUa +lwh +xey +swY +hUa +cKD +cKD +hUa +hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -108715,9 +108961,6 @@ gcG gcG gcG gcG -hRl -tPQ -tPQ tPQ tPQ tPQ @@ -108918,64 +109161,64 @@ hRl hRl gcG gcG -oXT -nPS -lQh -tfC -lQh gcG gcG gcG -lQh -lQh -lQh -nPS -nPS -oXT -lQh -lQh gcG gcG gcG -hRl -hRl gcG -lQh -oVF -lQh -nPS -oVF -lQh +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG gcG gcG hRl -hRl -ons -csb -lez -hjY -veE -hAM -lez -lez -lez -hjY +hUa +cKD +cKD +hUa +wBT +dqy +gGp +hUa +hUa +eqf ons -hjY -hjY +hUa +cKD +cKD +hUa +hRl +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG gcG gcG gcG -hRl gcG -tPQ -tPQ tPQ tPQ tPQ @@ -109176,32 +109419,23 @@ hRl gcG gcG gcG -nPS -nPS -atz gcG gcG gcG gcG -lQh -jIx -lQh -xGp -nPS -nPS -lQh -lQh gcG gcG gcG -hRl -hRl -hRl gcG -uRs -lQh -nPS -oVF +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG @@ -109209,32 +109443,41 @@ gcG gcG gcG hRl -hRl -aZO -bSU -nuC -hjY -lez -lez -lez -pLg -lez -lez -hjY -tev -csb -eYm -hRl -hRl -hRl +hUa +cKD +cKD +hUa +ehf +xey +xey +xey +hBX +xey +swY +hUa +cKD +cKD +hUa hRl gcG -hRl gcG -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -109441,20 +109684,11 @@ gcG gcG gcG gcG -uRs -lQh -jIx -lQh -atz -lQh gcG gcG gcG -hRl -hRl -hRl -hRl -hRl +gcG +gcG gcG gcG gcG @@ -109466,35 +109700,44 @@ gcG gcG gcG hRl -hRl -aZO -tev -lez -hjY -lez -xpB -lez -lez -xpB -hAM -hjY -hZR -swY -uUT -hRl -hRl -hRl -hRl +hUa +cKD +cKD +hUa +hUa +wXQ +vpU +rkR +hUa +xXv +hUa +hUa +cKD +cKD +hUa hRl gcG gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -109699,19 +109942,10 @@ gcG gcG gcG gcG -lQh -lQh -lQh -lQh gcG gcG gcG gcG -hRl -hRl -hRl -hRl -hRl gcG gcG gcG @@ -109723,35 +109957,44 @@ gcG gcG gcG hRl -hRl -aZO -kMI -nuC -cVQ -lez -lez -lez -nuC -lez -lez -cVQ -lez -lez -uUT -hRl -hRl -hRl -hRl +hUa +cKD +cKD +cKD +hUa +hUa +hUa +hUa +hUa +hUa +hUa +cKD +cKD +cKD +hUa hRl gcG gcG gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -109963,13 +110206,29 @@ gcG gcG gcG gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG hRl -hRl -hRl -hRl -hRl -hRl -hRl +hUa +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +hUa hRl gcG gcG @@ -109979,40 +110238,24 @@ gcG gcG gcG gcG -hRl -hRl -ons -csb -hjY -hjY -nuC -lez -bCc -lez -lez -hAM -hjY -lez -hZR -uUT -hRl -hRl -hRl -hRl -hRl gcG gcG gcG gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -110220,16 +110463,7 @@ gcG gcG gcG gcG -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl +gcG gcG gcG gcG @@ -110237,26 +110471,21 @@ gcG gcG gcG hRl -hRl -hRl -csb -csb -lez -lez -lez -lez -lez -lez -hZR -hjY -tev -csb -csb -hRl -hRl -hRl -hRl -hRl +hUa +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +cKD +hUa hRl gcG gcG @@ -110264,14 +110493,28 @@ gcG gcG gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -110476,44 +110719,30 @@ gcG gcG gcG gcG -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl -hRl +gcG +gcG +gcG +gcG gcG gcG gcG gcG hRl -hRl -hRl -hRl -csb -qEO hUa -xQo -hAM -lRl -swY -tev -yde -yde -yde -hRl -hRl -hRl -hRl -hRl -hRl +hUa +hUa +hUa +hUa +hUa +hUa +hUa +hUa +hUa +hUa +hUa +hUa +hUa +hUa hRl gcG gcG @@ -110523,17 +110752,31 @@ gcG gcG gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG +gcG tPQ tPQ tPQ @@ -110754,15 +110997,15 @@ hRl hRl hRl hRl -csb -yde -csb -uUT -csb -yde -yde -yde -yde +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl +hRl hRl hRl hRl @@ -110785,12 +111028,12 @@ gcG gcG gcG gcG -tPQ -tPQ -tPQ -tPQ -tPQ -tPQ +gcG +gcG +gcG +gcG +gcG +gcG gcG gcG gcG From b62756e3c5cb0d7783e6e7021e281aab46838bc0 Mon Sep 17 00:00:00 2001 From: Stellar <52103820+PrettyPsychoForAWolf@users.noreply.github.com> Date: Wed, 6 Mar 2024 19:30:23 -0500 Subject: [PATCH 31/52] it turned me german in anger --- code/modules/jobs/job_types/oasis.dm | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/code/modules/jobs/job_types/oasis.dm b/code/modules/jobs/job_types/oasis.dm index 73c7cc296c1..24be423e3b0 100644 --- a/code/modules/jobs/job_types/oasis.dm +++ b/code/modules/jobs/job_types/oasis.dm @@ -1799,8 +1799,8 @@ Mayor /obj/item/storage/box/guild/uniform/PopulateContents() new /obj/item/clothing/under/dress/skirt/red(src) - new /datum/gear/uniform/medievalgarnment3(src) - new /datum/gear/shoes/cowboy/alt(src) - new /datum/gear/belt/fannypack(src) - new /datum/gear/gloves/modifpatrol(src) - new /datum/gear/head/britishtricornetwo(src) + new /obj/item/clothing/under/f13/medievalgerman3(src) + new /obj/item/clothing/shoes/cowboy/alt(src) + new /obj/item/storage/belt/fannypack(src) + new /obj/item/clothing/gloves/modif_patrol(src) + new /obj/item/clothing/head/coyote/britishtricornetwo(src) From 5969dc88794a4685353376ea3f56848ccb3627da Mon Sep 17 00:00:00 2001 From: Varoxus <46449731+Varoxus@users.noreply.github.com> Date: Wed, 6 Mar 2024 19:06:53 -0600 Subject: [PATCH 32/52] Bazonger sprites and size increases changes what it says on the tin --- code/modules/arousal/organs/breasts.dm | 17 ++++++++++------- config/game_options.txt | 4 ++++ icons/obj/genitals/breasts_onmob.dmi | Bin 27095 -> 43669 bytes 3 files changed, 14 insertions(+), 7 deletions(-) diff --git a/code/modules/arousal/organs/breasts.dm b/code/modules/arousal/organs/breasts.dm index 6f884c89a2b..57f2d679d33 100644 --- a/code/modules/arousal/organs/breasts.dm +++ b/code/modules/arousal/organs/breasts.dm @@ -1,5 +1,5 @@ #define BREASTS_ICON_MIN_SIZE 1 -#define BREASTS_ICON_MAX_SIZE 6 +#define BREASTS_ICON_MAX_SIZE 20 /obj/item/organ/genital/breasts name = "breasts" @@ -40,6 +40,9 @@ GLOBAL_LIST_INIT(breast_values, list( "n" = 14, "o" = 15, "huge" = 16, + "massive" = 17, + "giga" = 18, + "impossible" = 19, "flat" = 0)) GLOBAL_LIST_INIT(massive_breast_descriptors, list( @@ -97,7 +100,7 @@ GLOBAL_LIST_INIT(massive_breast_descriptors, list( desc = "You see a set of crotch milkers, they are udderly fantastic!" else desc = "You see some breasts, they seem to be quite exotic." - if(size == "huge") + if(size == "impossible") desc = "You see [pick(GLOB.massive_breast_descriptors)]. Their volume is way beyond cupsize now, measuring in about [round(cached_size * 2)]cm in diameter." else if (size == "flat") @@ -146,7 +149,7 @@ GLOBAL_LIST_INIT(massive_breast_descriptors, list( return if(new_value == cached_size) return - new_value = clamp(new_value, 0, 16) + new_value = clamp(new_value, 0, 20) prev_size = cached_size cached_size = new_value update() @@ -162,12 +165,12 @@ GLOBAL_LIST_INIT(massive_breast_descriptors, list( switch(rounded_cached) if(0) //flatchested size = "flat" - if(1 to 15) //on the charts + if(1 to 19) //on the charts size = GLOB.breast_values[rounded_cached] - if(16 to INFINITY) //off the charts - size = "huge" + if(19 to INFINITY) //off the charts + size = "impossible" - if(rounded_cached < 16 && owner)//Because byond doesn't count from 0, I have to do this. + if(rounded_cached < 19 && owner)//Because byond doesn't count from 0, I have to do this. var/mob/living/carbon/human/H = owner var/r_prev_size = round(prev_size) if (rounded_cached > r_prev_size) diff --git a/config/game_options.txt b/config/game_options.txt index 2bcaa40ea6c..0c8f23249b9 100644 --- a/config/game_options.txt +++ b/config/game_options.txt @@ -675,6 +675,10 @@ BREASTS_CUPS_PREFS l BREASTS_CUPS_PREFS m BREASTS_CUPS_PREFS n BREASTS_CUPS_PREFS o +BREASTS_CUPS_PREFS huge +BREASTS_CUPS_PREFS massive +BREASTS_CUPS_PREFS giga +BREASTS_CUPS_PREFS impossible ## Minimum and maximum limits for penis length from the character creation menu. PENIS_MIN_INCHES_PREFS 1 diff --git a/icons/obj/genitals/breasts_onmob.dmi b/icons/obj/genitals/breasts_onmob.dmi index a46ccf882145d4233eda53a83d66a5276725f7d2..02854d93ff6f6614cb6e7f3737f701d2edce88e3 100644 GIT binary patch literal 43669 zcmb@t1z1#3+b&G#fJj<&N(s`XATiRNN=Zm}htv!*2!aAbH-j`PjUYLKDBYc-NDZk& z&M@(h@B7t%{&TMLpYwimT?6adv-Y#rUhAoK-_K4kGSH-5(1)na@52`t7e_}&i;Iih-Q7Qa{Ag%sn3$MAqtW~O`&cY?YHDhs zyY~=@?C9ut|NebzYin+9u9t^LR8$mkxRqBu(!|k8gG>xeNmRBLT!{0^3^%g~QgaS; z3~=`ga`*KiA$d_yQ=lKXBu*bU{#!U_V+qOYUDxH5*77iREGXQS&CBbhautpC<F_|yX4zYlnbyVI#CaKBXZMAJ zS=QNNs3E_D^Zb`Jd$vRy_0VX}3iZ&Yo@ji))pX(F0>=Q_q0!tGwjq(66|$jBz1rA- z+vy*QpN(#K2+oVQ#T|A8(~dW&bo00Si?~1KC$yACzHl#anlj!d>$!K;ly#thI%A}M zD+y~rTxWO}5^UhpbV4Y}Ebdj*9D+TH!z3;SwA_6^nWvBn9=KKJ9%FEfasm zCqL+$qE`4a2k(IcU0OvQg*N9bq>NRlDX~N_?e5S=9%xy(4#0EcZEPVy>#Zr?TuR!27KgQ@8@oX3Ot~ssNRZ zU{LWy)Z^`IHUdEf6W)(26U3teb@XyM8)JEAEwm#}HJghus{&OZ3aa$+-q zv*^|H94CIo>tDsSnIi7QJx}vLyHEX~a&!6!erjs^HkM^DD$+-NjUQ8!P@XM}^H-FKvUlZJAt~^G$>wi60{V@xdnHk}vI{DPUpABnyHCl~LFJpMEkl|$v}ce(O1Bk;^Jx<>6sAz4Qb zzhJQAz60^DIr^VphoK!+iF3V{Y3jd{3|CRGOa^?Nx5*LxZ67x|UI^%)5Mn8seDMw zr({8c83CkCxz2dsez=t8E&sag2-ejj5JG7Uaz7py1$SP(g__x{>oWowT-~?Cn>^)* z+#cr?HJM;HE2DWIaJz3LIzuM7+JH5K60-uxn=*8=zlrM&k>Vl$bP$1_ev6|CfS|6= zkCxmv>gdi^#weFzzwvLTJd8b#znP6-aY8YzDBP4cl_@4$B5vslzgMXiUR5(xn$}pVz#{zk1m~x_iT& zopjsw+Vzh3UJKsf(FMn$;@#r$Ar<4v+is$TFACdbLu{Bx&qP+FbLY;lm*VT(zz$v+ZiA<0J2p}D)!4}(mon_lMTP4ioRM&#%oMkdy$s< zd#o6{oB{LN-1fomS%Ag){OaCPg$G{iV|m^2I}3&yBMSGF5K=CUzd(rze_`a@baf8U z>;|Gg3`~Z^QVA{G<~6y^%XB*yC6*$4_m*-7%$W2EY~mycCVF>IkbrWNY7vI(W!fED z;#X-NFC;dIu|alN2e8;d)`1V%@IwWS0i~~8Y9EWct*#8gVBZvn5scPx;R8pcQJ1hR zY0%l5dz#4=gyK9-FKwFyc$wht;{mwZw;V@Id$Oj{$8Sl6!@fhS*|5yd z=tt6ZzuhH81f6eZY_}gq+Up5^n~iJbf(f9tM(KXN{bTgS;_(l_cTlv`#jn6DM3xmT zdF;lF3KQ2BAncHo>`@xA`|c!34;%MxPETICAi-VY*ZPa-A8+Y>1anfZPNtKP{Ju4l zP8!qt{i*pdLvNA79}?344*iK{+-k|b8))8-uK1xC66j~puF&)Z{VKx@J$hTC_tM00 zXuOKVnAw4GAAOt!?zpu3CR{8Zh6d(Y<={Q#>mzO#&^p|JD&G+)!*Fj_(>Ro(I@WdD z?!%SAb5!ErIJ1@EWW5J=S%eLm;yVF?@QpPB=NsY=%ArIN@ zm~{I~wcoVPRK5kfPtX=F76aMg_o-e?p?pCE*W2Q^2p>0<$vw_M{Bg7`whCx^J9AFl*9rOFa7_p^VJuo3cCF@LgSb7UOZLWwlmAd=D*dJp`I- zGAs9q^H)<8c|zUTYHq+kB^Y5}pda3@uLKUMqosuH&G5!#r;EezMG}8uLe;;?Dyho| zQ2r>*J8l1K#^jcR8`oKmH#8tJ1ajujoE5x2PGYfd51m9c$q#@w5ns9bug#2`fFv4+ zK4xfa!pr@H@!G@S8&Nfv*^!?Cx<+r-yO>yBKO8G^Fz1m@h4;G>Xh$KA(1^xG5{X;N zR`{l;UyQK!Q1oqaA;JQep)I~=Rs)cG{$TSdz6w~>jI~c{_fu56^$9FRv8a7*Jcvf9 zz$pssrrE;Eg<0<(22WA#yg{&DDJ6?T5!hHa#sjnMPRP{+;kYDkXe)yQ6Q@1Y@Qs9q zs_{Gy2+}FvyS91a^&o5v->^x-kjN=UuoULH1s7AUB*UNx1(DsM15H^(vwB5nnZHBc zR|W9-^;MgKvfjWZ{)mE(;%&xzkJM!$&vx zOYP!4tT*kL1c4FJ*9=U4I&XW7uW)DpnhjQL?-nD6W^IJ!=M9+Tz93B*%&fpkIGU+U zyLz(M8m#ee1?+j6zdsu@2nR!?_3iS{#wE2lUo!xnrzzC{7uMrZfz&AX;UgoVuE$lF z>?mnsS{U_H#Oz*;JFf538yPvpPL6kAahv&^cffq}WYSRnm;64^txgwS#TCXinv&_G z49QLNL@AXehF%M`8Lp))DW!cI(BJS1-&ChGw8m$1&vseb5VTK@7oDQTX|?(6MLSi{ ztnYJL9FoKFFX+Mrl|TGlO_E2kakk{31bnL1dYF?^^7`yB-M_9ge9P4+e8J#h0?!3g}H zwy*~^BHL5kR$%;VHpQ$XYmi-ZmNj(=xBwpSWdWMvGI$0G6IK?^m$W7Az7R9Tx2e7W ztDr3{S8hJM2fh!(>%7>cN(K0@u`D%X%YX$f*muuQd>4_i4nr>C?Wtl<@$T1+Zfq(C zqgC5Be|KLn4n5n|YgqBr)k`~~r&7K8oPKgPL18kr^uUN4p_IRm8W-kjhE8YMoi1i| zQmLRXMeoQ^W)KQC%~fmpo{%2GnswsOpOv?G{sM+q!43;<&(P6VU`I$x-lWj)ZfqX) zYmTyU!`iU+1%P*h57&jQmR(7E$2D@R-#Dif&v*^PD39I=12M^tv z5A(DXrS&Txo;FE+XI`Gm=xjPFpz;%OvV}7?_y(M2o1-WV@6Vp(dx3ySyPr#qD z&H2$6(PlKIWY5sq!|#7V$^#deKhox{E7_4g0r)|!buf&q(I3L?ak<}*E*s9 z^^k)&_RXanBtkd~afk2}ba9tNN|ueQD2-7JUX($&D*P`hpGrp7LRYFhVfDo+F;{f6 zTKxX;OF@R%Px`+~NTM%HqZ{vrL*ETJv9RsL!fWH)B&;Jg=Sz=|-K;h(Y=3XV!Q>>u zTFilzM|36}>6HqUi{16d==Dv)rV^-YY}~Hyu-Ba?-~%dtd|bq&+LmNrH#MrEpz8>- zpW93?Q?T~r5lksUL=Gkh-#$M%IWiZ9?|*mgXhMJ?^v4j2U!L*Snv&0B)P;}%6NqW< zWhJvjR<)quLxUhrpEJg{_8vg^jqHv_-BB0~S%+Jw`*@`t<~={j;AM_CV#itPHNd>=W(I0Av(L0A{sRj zc`X-R5E?}|%99+}BN$lXdpLbJ$AbrI4Y@s_?@N_h$JPL03}8IAEr;_dNv^Na_jj=p zf<4ETI$Dy1Efb*wNj2!DK?CdRi#HZ5YRh@VS$HZcFCIU&(qX{UJdN*&K0u?PJLXK z_zOzB1!TPf2!Qg(V$(4j;@`Fh@+l=5dMZjyjT21D6oal?)#Uq3c8=VuF}$QU6efri z7=+?gHsv;5Md9u2PL-#B+%FWBFPDoHtCjQq{FGIRy_;)8+TJump%seSz<;K>c2f^i z8YR!WLKpwO_$GacmLZ~0Nf)oQ9vHpq0${a|i@N!f89eiyo2Ih??>_9CsK~YeLIMvNU(9kF41Es|tsF0ATkg)>*xIFSJ|DtjHy?x*C-b%jxA+;^9 zsJ89Ycyw9lQ?X%2LBgc;B4fwmWhwG8!Ev`WL04=7UuGgqP)VbGGGKP~$&`(3-4oln z!%5ebcR~Tpe3_J+j0Gq9417PK(M+Kbv| zHOEUkhvk!YgA-t2HUH|dNp`P=DxaD*AwM|rz2IwFuey!PU*yy#uh&f|dn5;j8o21*PfqT6^q`BExRk2tJiUzfqEF$5p*S+DN?@t z89H;_sTi3T_qy23QFN=a6AoN@FBRO^Mp_Ze;||R(F{mM}5S1sdc_5LTE-2JUc>0~k zGT}(~ULwYXu~TNDQS{B{uTM+F8JX{$zeFnprsnXfK|7^Q@OhnX+h=3NmKdJfgbdC7(KFs9Eoly!zW^fsyfbnyFXO`F^rAggo?GySw=u*MTZvH%%)PKlCC$ zfd@(XTl9TekwbQ+tX3=KpmhxOoBA0RUe{}9vQ0|Cd=;>g3gv3zX@M<|U*?<5H9DfX zt%=6)S6m=TOZ+h-f^~OcH}0+N_8cy#55%=zaToS?PAtUdjq2=vXU#p^xrs()n%Xly z*WJ3|<-m~DcIA@n^G+sfZ^fhE+~eD(7*Ebmrh2s?;)Ci(n9KkAaYi72CcgG7F$7VLP#;=T^u^Z~)`f3U=*J_?0DDKZ?#LjeOVPiFXLD^A3gr0FIn zwp_o@hlWWgpU_9r{S%_vU2V4e8&2e8j}2@h48sligi4KV?;|v<%z_`otdvN-gcJh|9tB$`B9ax+B-7^P}d<76H3jOSKS{`y*$EOKT zuc@d-%4P-$oG6c$qcxkTr~caIM-p#bgYHGg#qsv|H*7uGKqN#`v2R3Fw+AJ_8V^M? zB7c-oGf?-#_T(oiM$7Yp#&r)8eS}})<@RnpF{XdjY>vYHAqCtUS+JsfN=}~{Jm5x_ zdD_3*32=81yQz=|bINJb$d-MbaUS%TDXQoC4|#6wH||c72cl~A_rbCW6BzG+-^Ti` zN<}(~YEblI$HJYw-`SF@N^eU1lpo>DpgD75`uopN>)X1^3X_8pdJ#*EUrsd->&tZM0;E1}$5bg`1d!8rwHCLE>8CE82a_pcG*mR;k6w@xc z_&HyLIeQ)X!HjYtXyar#>gmu7*~_0PGF2ZVlcu=HwWgc#Wl9hA{yaqS$LOimBY*TQ zm<}dL-2aE2#@K>BUpx%?R`9b!V*pwOZm~%746O1D z2yiRMbbh8xyN4*_Nc*T3Z@sgv3FZ2Ob!z(hq+SMZ4dJh4Mai~B5 z6k#Uvz2n{OZ}5KI#6bDR7}%xSY?KrXp&K)ql*5#wAq!}9AegY*3sMt4&O_cJ>)nayH)y2{`DgE*NiT_SpmoYdDOw-G_)ys!u2P%NKQ*8v(d3J6iAj_Jm6SI~ z`~-c7;fD7V8kc`o>vaRj63^Rx&0`$aLDawKvb{Xrb#81_RdV={N198D(!Z{gk7Cz{ z8OPq)jjsi6y5oWXv~zWPXduVqNF3Ekl1JBrp&7;}`;mMcrQi@JOOxy&lM1DKWnK53 z8<}hNbhS^uJ|4;d$?Rwz9UWpmHLJ_zLJQ8GD~pvd3$Bz;@6J0+Fcwg2@sJxR850od zu#cOcb~%xOl0OpBj+3w6a|Zb0{-%e^OtCe9Uhd(b>kXJGP*DwMXw_r>Q(=jnKuKtg zUB_^3m_OTY(ol3ZSm6UmL<94dcK0-!`8R69aCrFlI7*8CWSbU=^S8s{Xc_|m#{O6! zrQ{WV1|6QE5X?7zj1z_a4l88;l$m*8j!vY^K9oLnm&>6B!ch*lq^QBfI-pJ#E~8GI zb?k0nx;j7dNs;$(xza9P-gSoN?+{hESC59uB3yjIYQ}!Sbs2svkV|R|@i7a?-#KXVQq>fmGoVH3;b>k~_{xsc< zdN@5^8*QtNXM!Ez{J}W(>JKGVV!_5{1tXck+G10AZ|EjdSk0{9Ewq-)pXhrARcgCa z3A*x-EO3LQQNQYfL-}%U3JvC?di|rQqw${N2egHr(Ei=|=K<{0R$lf-rjTbcf)182>N@ngP0PFH_BeW(dJ?PDs50ruY= zP`hH?$p``FJGOLVBO=dy+e+ZMKxNVsX;BGy9R4XlpH{*X=~E7Ko$!gIB)<|!%k9AY z8pe)fEG3QknG%M1`h*rB^6()gKv8bsHbk@lcr_{z>xLVpW{GY}cbzyLD9)v|>8GA6 zc+}9%%=jHJ>hI?IEl@1Es9@)k@1k9KAgj(4LnrP=^5wj=h)LQvsk}Ce)_a`K+(LG` zj);-nxNrf`kdPpfXecQEb&Kg%2th3D%$;O*JqCF-KVkBn7dK`u!2qlXl9S`v=a^J# zGhqxP?g&n>z~juNHo!LQ!`JaxF^wq_64CEhMXtwJVZ(;FJ-A~#_HADcv zJyhVN4!5}sbODsTE%WOt)Q>d#8$-rzgnE-Qo8 zkknEU_t<9qtj-+eWQ)_)ob}dt1*ak)HC}KJ&ox~lN#ik~GMWxY8cO=5r|co9_d`bz z-Mw|MRg{o8Pd!Uq3!6<5I3udk?k>D;*z=){bs3OUDl|*7JuKwf6=l=c@r9E+v!{nbab~ z0_xQt%CGOH+^CvAk(1iV#|x6np+DmXzW4xgkjQIEK$po+K?)x(zHponJt3*`U=+ z$mZRf{Rdu<@ke`&Z0?t}$_@-#nvg9)-WcBJRy;qj3-`l>(E}(u( zV**-`;`}A04KaHU9@H#Xf^~jQ!k3rdG)gSOFBxJ$->j=ltcYl|C!?oN_zT6y1pD?{ z2~~(}9UJ+f9-00M*J#+NR`_SJkE~`1YutDa7{242VyIY+TLa(@9+s&Bg1w-^7|4et zYDqC@J5rNIvV!msRhIx98h=ZzcQEl_qkl@W2lU$P{IDH2A3BZc7?xW2cc8bR7<=a5 z?AQ)ifF&*4iX@&pI2moVuBd+j61Eq(z!j(Jz7s$M{=4izzA7DFk7?tRJB#nz`IO&> zV@}K)3v`SCG%Mg*_d}YlzQCFDo8M>3LrVg}+m&^hoPN^i+zNgnr}+p6OCLX{)kac4 zWC6R>KGz`}n?JV38_bl;B~&|Fyx?ocKjDYJ#y6NYcw@2kfQJuL%>_xmXv~}%e(j~i zS`Gy}xU9eX_ga9rVpea3*ODzT$JDXuYVUiBUrD+3NbdA-moj+WH+F>1r@R7!o(0mN z&JR932GO9-6v(tliqe*(9y*i<&kruo9#G4_`12?xsja171A4f8?K`KkvQnWcM#>Tp z7C7Kp|8Qs;HM@!-_+J|g?Q;RO7InuN9>$G z;bK_nJ7)|ITDb=)vOo%)0tv|@8qTvLtw_N2z&l}^M9`8X@-9C&$GYPGt@HWvby9!Y ziY46jT){2VF{}sXJN^OA%!pa^lGBhl+T(A@kk9N@9sg?5{XENk4@FJ#E^zEY$`|GAHAg#3W5`f8ut(GtU1qhCS*Cvr*{uvA6Ro5VOkt8$&3Hco`tQE; z*BjP#-C#d4rd_-NI2DYSw*sGI;OOarVoCP*>7{+xYU4b~rPGu-I+%2*nfq)b+2=Wm zm{?$LnJHj#FOXW&9KoD1z0GXK$mRj!zA!a`r)$96Cu~;U&E_dV#{FRh_{J`aSf73E zX*=7;MA@8Z)9EDepthHnQFmrC?w*H{<{m{*Wk$DKx%`-FiAKJJw2zU?i`k&uW^XGE zM2oNnAmH>9`1LGY;7{aWBEb#-0ww}e0>`Ilc`&xXES{C*B_x49>-6qy6$_(+t$ zR}XN*4rYzZXDFmwD;=;ST{Lk=YB8F7-=3U}#Gd3-*SY^P3qVD7K|J5#d{6hKx`8!Ljm>27 zm=5Y&Gu9a2f`4=ZZ^MgqymK_G_+$<`s6hzzqhgd(xYylNyGc7jMkFNRkgbwef^BKP zTQJ8QyO-Mur<-c9)R&C&|H(g)xkIgy|3*Lj=rDD%`}Y#3zSFNs-fic`fIK9!LfJ6N z#}ikrE*utsD;ADFr`Q|L1+}Oas1yFu67kvKM)y#G`RUsZMA$a+kjeSHnpdx0i_eA@ zb3Z;K2$1MB`5p*QeD(x4z__Fxbo&qOl9E|YN-?*M$2(9U?gfS7hi(=nzA)y28P3S( zevNwZO3w%^N`_2Mk!M|ncyGbitWN7KS>=)0jK`)Z>c3WYy%*(TA}QJN`*KY zmTN`q2)#r?1n&V2>(u-@L?w}jz^2XrjCq7BY|;flAi_v z?X#=Adg90w(U^8#m#R?X+tv4cQj5A3qOv**O9Uz|26tBaTA#wGUVd^uA#M~p==~fI zi{tfncZ;(xQ%8D}9jYfaSbbRT%epgPq2#N9q-z-#&*P6-tvSsganlXEKZ_e}9Ge+*SU9DUHAz1Uv;f4G&{ zh?{yiS%2i!C74-ad)W;0kQg5l`YPis+f!mLUL8AJm=TlSeXoRPUZjgpNaR zx#cj^T+^H9T)+3xTVJ@?*H1RW5;TAuD_&xwTy z%+j~9V-i~2dT3|%4zv90e*vP1Z1|qls_lqj|9)}VbzV`+sA?OW=iua#ldg|d&9d24 z;RHcCdy8{)x47c%HJsU1rYJj5GH6-Ggn@ZNN7iPSwrp{gYuN}iM#9aqOencs>`m}Q zUE1AzI8sZ&bS8oI$++ya9{G40G!U|8C!6AZr9zWhtd76rM3BC!x=~VF4h)3{xc@C< z+y>;_pjzT0R^zou4wUd*`a0iFOFtXS_eUTL#&V1 zd9yf?xC8z;t$)1*yNf8hyWq6!^XW6?7Rh8n21q_eCU8Ga?rZmFm5c(1<4)JmGG?~V zx)b{ORuDY|;kIn}YxB<OE%+0o&EJ)^0di#Fo!-J=Cpl%{{FamcZST!D*LgT>hMp zuD*Au^J3@35*5NAE%D8ejy`GHRU?cYouT#TDP2gv=wsPVJ}v8nf5WeebcrO0Ubx+^ z3FRfBs%w>|jdJ)|Ocd#}lOdYtrW_a0?c;m6PbncQ=w-eqFZUOFx`V#=91wEJ)l^4r z?xO?EzaXpkmT>igLLO}5jP_6xqac?ct^4oR;&-bgzVnV2a{SAN^dAE3c-uY&qZ}Sa zfThd*d}FF%f{xr_+REgOynA)`?TWFQs$Sty{oj1fK(etpoR669ZT=q8;+y9h0>U

yW~W zewLIl=Z8+qLSy|mbN-y#*pARCUO_-^1yS5~hlI-=nEz)OOJ6fh7!u5GTo0M}2a8!X z+q&tBWSnz(P4%L6E&c7gbRvWK6CXGv7F&E6T@%&AggqAp&wpy~%7G=j)0bW6`!6Q< zq1v-upKtXV&M?p&KY1S_?aX`H_F5T?e>OrV96cf@IIT(~^={nUV?hUk0z zux+(Bqb8oc*FNu@soiP0u>)>0Fur}&SSx}L!AUGu>wR1E%3g-V*fRbtzmX;Q6s_I1AY{|a6|`K@S$VT}=ejM){59=3XwpASFKct0KNUyzn;zIWMgOGNZYb#T z{{P6?|7R%s2W`1SRVC!IdH6piEy)R&wr^&*V>ZfDQS%$>3az1l(J992i`Kogqz?BP zb&1m_t=nYZI6aM4qz6c*q-&I`4QWjylRFc*ZZdeuKae;x3vi%*lMuagucbJfQxueJ zBjI`>N?%&BF!CcZv@C!94`8S9FK0Putr!mL@=cLoT*EF^q~<)|{ZGRyi}+;q>`Gwt zP9Mm0U!O|It_{cTNDbe1n5xxc8=XVEoxXhO*Q6sw4nwrpjrjyoWu2v$avC>=ofk)<> zZ336gmHz2%HRxPH8-NHRw^E|C2Z-c~Xv{{n9F2F(mWh1(vI-bMiBd3{H1xPRE+$Jv zmt8hXt(i{v{sU%Say>P>qOF9WSWZQKiI4nx6HnQFFW9Do^Ul?WkEhK4!?^x$8(&)A zxm#Ti^=!*pGH*&ndaDy~=bXcE0_p@j=!xxpf|vht=yMccbwmw#lP7jpj(B1O6*}J zA2euFi9T_!D>NhQVBi9a*V@nupSpD_mWh0do?;_gqrNxwnE!w%5qd84o1Jd?$j~dR z*2|sQ^<67mIg;SNx*L*_o#B;zZ{-HxAtCsJqO?>GXE%JyCjl>C`FEP%dy6={Qd6ep z2b~n&=@T+d0;x+5SgNJD>zt-Hvpqv0UaIJap%eN~%9Gf5;@ZM0l~fk^w@^kKG1XXj0N9 z{rFxosf^9E5yO8J1pJt)NBg*ioq%{p@Eyq=~^x+_@vJo1(C7Kqt~p-nnsJ=Hs89 z*olgaNh{gv(6=NQ$r*Onj09eVL*@6Tog7R0H=(1=;P=kIa+n5A12KEqr-VyInX$>2lb~5@kMD=3%*-PQJ-AFEX)wE4!jYqg_Ax?f3lQA=ck%P=r;5*x z#_48#p9*#U-wE`3ipHp?k1sY4Svd(Ne zZW*P|)NyjUPAj+L=U?1|JWJq`%XLupzp}_o(MoW2o>GSzU-$gXupyd58}6OAwRB!Q z(be1b_PzK$dPTEuR^PWR5D&EKv;7YD0Kw?bCbZ6?_pwMnT6Rm`pD4MCezJT4ueUPf!(^CFg zEXoPjq?J)>$J=72fBr*z>YSlm+Ve8meX19iM(n2m~NH_zGW`O&h!Q%pqXKNNnZSPxGtGtj>W zVbqkvg=e$KSMAP!$$QJODG(-0lWiZWkZkZ*7xW z@z9Onu`RU1Q{{cB036(N0n97+&JF;7KFAvuI%KO*4O-Y%`y{jvPW#~7QIAk{PU}=~ zCi*-u&E~51C;Y)rexkj&92|edG@ZbUy7;VJ|ES=WH4aNlJIgleoT*yXz=Ni{h%;>t zcIVyJzuv87d&W+cX1U;PG75E`fnjYK58Sn5M1uLyRf>ueJm+)pCzuPs#%c@!G#Ezp zi+8h*FjlF&rU42lc!&5DP}J*`jakqL)ZDA{mnv@nDvp&T&mkJ4icASvyGL(l1d2`~ z=;Gy{f*rV~?YfH=!0^rcue1|U=TpVWb1^(87Xpac$#}zpe_L)FANbZ%;Ti zQBHGIkqJ0s=cukyiDpTuZdqZb0b@#@i#yw#!CxxsK0n+0hZvTD{Z_HPP@L>o6xH;V z{J#zf{=F}4Y0=ki3^D)E3cP$4rhzlgn;+jZHznw?m~D+A?d*MVh7W5{$T~X%gipXD zZQrwHhtP}C(@KWZW)1GUi6zIPRXS?M=5i79h-rJgqdr_qJTlsUxbs3IfqM{$XP zOB1jNq;rg{{yrpcwa<9>0|5O3x0unKJE{eL?@Qys@-@lrDGllm##4`GXyeET64{CW zesCO%fuTHD;tbC*3~Q^oY!K{&1unUH*lM)lAF zs9#i&6XdXetas&a`~YlN3l>t9qs(55NIK0#MtgjOO_I9DCt{{2iSr}AT70Aed87h% zFls$(dq-SB-@94}7d;fG?HAafxK{R;mw>h|d}XKlLMua=@;N=^kr|wIPq-Wcd=*G1 zF`)W)iWy1^T%5JaQdKELmq>?85ocjlkif4KF?7q2tcyxhK(HMP+u2+zAoxvvT~}9Z z;6s4=!wh{zAE@ST=-sGI`C=C2Hq)(5qdC|*Agm0}vf2lGhNqPpxO*Zn{=)a*m>#mC zOSp?Ye+8=mN5(RltR0BJZh|p64`%SEO&$13HuZ()RATXg56RLg27i@q-rcyl6Dk*V zTfVp*xgGRn5VEm6@AX=9fT*pL`q;tkBQD4zHL#P>ud}dN;9(_!VdNWOU1aNU!E-|k z#+iyZcX5r93a4f`qknhiX&=V$o-Q0Bfa9S36%1gAL0G5**Kc52Omh`>0V27|!GcvCycCz;(@5JI`RUV?WKymAWhE=nm=>9cy(bE@$aBh{5Hk!s}%69p^qPGI4lU;AF%TFwW~by>vA zzwWd2^hnEV5387or#(2XKI!R~=EW`WJZ2ZD&svzogmayFa{Rh7cSFI7(B0fJijYDc zO)A0u|GUoU!i!D9+yoKnB_DJ`}jDbW&}nFM|R@;QDSKO(Ku65X5t*8jD^%UH;ua z#)!d3mb@v!f#00L|!PnQzY+6Dt!oM0MKP zky3|7*@wlhv-4dIS}uSXeCM_5GYJf^Xr|JaWQow~M)-hDBZmaU*R&?_EIZ@`$$!y%0z53DQI+q8=oM*z-Lw^29gig2W7w0yH-c z2<>gPA}?`DdhR+=ofqSbXLWJ6>Gv)tTC?dg!zDA-As7$9dHj25{I=Fjd~t4=JDyl2?koBz-2JF%j|^Sa2tAStXe$dfF^X z%9(Ye>`g6tnijx3Yskd=&qpWnl81S%%_D+3o~?Ur5##f6NzoUb`VT(ofR|~KXH{&j zCk-^$Mx~K|_J+NC*=SWY_k4I9iL7T3Tm;Ha`%Yuj+S{M_M3^H~M*TysKY54fPTENo_9?4}WquR@^n}iZZc@YU=B6BG*catj^LKp7LGFPa)0(@l_{dxqqSMrQ}_& ze6mkk29xH{wLAK)35OjWh;Rm6)8xBJ zED~J;3|T|`fok`S8mj9)jf>2w1TiLYdtL6Q(KH8&{q)aa1cjP>QuL-Pza)R-~Y3s5av6pQcZYzukfQM zOg6@7<&FoN(7IYkc>YjN9ESKxbo2NhmSTl5TZk9VF|7@V(d5lILX$jh!Fjd-_kKfN z+@U{DY86wiE)irg=f8gzgDG@Rs$K@DzP2FqtoEto%+}%Gn;8wnE3F44jpOE9S*1zsb zO7er_#OaEwXpH&|3+*SD-wa(RurhICniC`>eh#wIZvTgQ=IvOs2a@x62nu)z*$%z|6o(H~H;lktU5}_OKrol+mUMitpmcpZpFsbcr-3Fwt5 z=<*T(T{uHq;3i0{U5-0~yx-#lTDolCAu_BFHtEG|@F1xlKa>-2BIcB5>97661@c(U zFwet-YX7|!Ah1jM43G?T03N3-XRXe*a=T7*kS;x-WboEfLcerHHt$P#J@+dz^!pEb)%iO z?X|e%RkmrP0>KMQ+{E{WAh;E*z;ra=lG{^!p6hFkG0xk8b;C)rZFf)frqzcx>qqyN zG_tw&Tiyw~`=-8p7B#KjUVjwWFCoZ&`0MeSIYIk0_%*xL(JgO0NmTxIks0Q0DW=%9 zK`y%vtQ>@m-MKudiBst1+(C4=-{Z}36Lz!K_oiPdU6PMA>uWhb^0!fKx5om7Zl9QQ zwA4Bi>-D$6)rLN4{|{;J8P!zRwF`@40HveS4cHKo-fIX&P-%(^(m{HQbfhFmsDcm$ zL7Mcc^xhKbU3xE3dhem6o_OEqeaHLb8{at3IT?feSZinP#oBvZb6#`Jd9C**1d$dW z{eVYX9sut2#XPDARZN;6J7ZWX(d`m-ZXPRj%nki6$~-?Yhl z*rmng$!@*PqMddr%2nqxmB}^4HyE$8&v0^W&8E}NoA-sEukd;BQ9*4Qq$3hOf#e9R zLNH)D2GA2RgzZvvQH|*^ZF--QwGm@>he49DNDPJl2PczQLgEUioZ}=lNiLCf;Nrmd zR&lh;n~iQAl8A)st@UP%ggWoQwH&ORXX8F1dX#AL{D{)IV)waiMFT?y7Cwg`-ax%Q z4-Amv;5oc4QJm6QW6=u~Ziq8wjkJvBPZ5bRxpeqm^}YgMSQ$t86;HmGhfVhSP zx~0X#z`{~vlJg+BMB~nyf<~-jTl6=)O7a7R+@V0)a*S$nq7cfJa5jWvcoSkjhs{p1 zEtSBm_q>?eK>h53X|iy+%Lcaqfs~S;debcwmCYM3bZL}*t_1iTG{0l#*_XqV9oH;z zEN>;4eb!p_+t=igTIsu;KpGpH)F6`3{iIXhVhsrqqFCh2A z1-s52|2WdYtofh$wY>w^FUVP@Ti%w{c$Ftd4{|LEj6VpQ%Y;M8IuKv-F{A7Bvn@cQrK>+Vx@x_dPiD z_b*F9+64wo?Rr~mxd;+$%SLt_d#2E3S36Solwlg@0?*hXpDL`_io5mqVm75zcAb`5Z@AHZd}((Owx?d>XQLp*JE zi_@@eC-eu4E0b_g|LyPcAk==B3%C1z7bAF8etCeVOLX0IrBuLpZ&l|-^bG44kNdZR zMHdo9$b?aw!L8C5*D6}@pq(cw`h3)yO7<1%l2{3lJ8zezs={~8LB95pPA{qBBMicPIK4vh3Y_X2*cwv+6ZQcxZK!}~PF z1<|Y;BkpT({{2>T#^o(unw_`5E;!InFo*|8ciB}TXE;0qJ~+`O>zwNa+6{`aRV^EO zimdxmeqrNz^}HIs(9PpJ_{?ep<$dn86v%fv9WI3&jiDVO))azkiu7;8B~U9$xf{UK zs(~qcJIb+AK`gEx?i%u@Ze1RZoh;c) zeSxB%FQGOSmA|C^Y$oSJl6vAvYIA&&^E{Ov0qpwsRt@-0-iMuvVxSTnyEm-tK;PM^ z;TJGGyFcEU-SnB=MW1-I&%;%YjFdO+DBDV@HklVFp>3|dDv*5JqS{-P1e@(6uV)GE ztcaM&(}VAHrr~fc!c6DSarfxTwax9AW>eyc4oS8Tf(ILGaeY}q7&*i;+?pS*VX{tl zoCVtGl)KObKC@%G^Br#Z#ZeF$15%I;hYHS*4QP~|h>*U2 zRSJDazr9GYw1FowIG8o!SzYoHUAct@f!;99r5iG{Wq=K658;;e(gaZ3G9S<*Kzgdj z!1VC@LH$eYS8(xPlr)b*HNhqpEJ%wA8a{)!R{>1&=b;i&`|(-ygZHIK$%9UbXf-|e zgXKj5An@CWef1!RHS0ICt$m5cJ~R07;G1QIVCyfy01C%jUqCH>LC~FxT)>tmzc}VP zPFGj1#Z4B5=hkvh@{k|n?)MRwUGd~$j%AxtNlm9l-awMfeR+PnPe<%>mH6LRhs?$0 z%8}+X9Kg3?j8PUz?+?QMu`&-y9mOr8pk3xVZkL{f4Gj=VBk%uK&SVNPi{@V=bh!Vc zQu5AycFC)z7rn5t_mYU?^#Pbnd)9qxUh5sj_RvOerswMJ6>FQzz9)wtjj5R+uti?1 z%9AH(6U#dR(v4N58JGKzD;7_A)u7kw2L_=J1+$8vb%Y_YxZ*Zjg~T$x!POLIZgc2t zP(SB5ayN9Lam-aS@yudA5d`z7j}nFj_-v@$=`&}*q@!^8>dfRM#mGb850E2FtRjD$ zFy+}EYlFl6F*@1Bmc&07!Vu2wTu6C-0XTI1GW-z+OonAJPMnF=VL^!lAh$r`h4a)3VMF&$4@s45tRJ zy`@#jp;g&-Wqg^gr}d3qhkjyj#h*~j?KqGwHA>3cA>(jnuse4a2iI!X{r6;ffTjvz zf}3%;g6jGA*16_eO|}lkA;5@8fK{?t*88sv9D(whBD58yLFea^@XgYzIy>fAWozE$ z(cH#`7Od(et{HPzKp5ccO+XC<*0>cr1JfeCo+SBkNV*^!`{ljOu0NJmhVia_D8vfsfs&51=NTfOmp z&2|p*y`Qm7+I4q0yE~!`l&+p*Ri-d=5nB9ncc0H!4Gt;4rr%k1xhAG)dR8e}Xs&g9 zWNeT&!8cN@eqct<>4~Z2Zn)yab+~shJw$AuT>vOLl9&kjE+hhBgD%)D9NWdcNX}k{ zhEYg}kI!6QkcL;GTpSU6_hFV-@3%UAtBFgrdELocIB;1`qNs~5z8dhF(VRsz|EfFP zNGB=0(VhgI><#EPnL8!S%W4d0jA}xcaXbF$@_VLcfp5^>W

  • C0Tnw%R1s@VEoW`hwhr*^I4*V;z}E2D=Sc|J@UF z9Dh&`n(S=0qEah9S(f84K{s0^n(ut6?_^fVAn>>J})em9Fkfn4dwfHpCi zAeU|HBn>@cPJMFRrXZ~2ZIufpd3`3Kjz%6NRbKrMXQ9UhR%@)SQhEyKM-)zX!i?@En16 zpr?<-SmT(%x`-No%C|L>|B>fPiRx_9@kr!ck6H!iCTl#jHNDFzXjjIcuHx9~w+Ed3 zHO3s9Zt>()lCwwD{`Ova=fk|IKgTuVD8a|oqy}FGT?p9-oGSV=wSr<1N7PS*zL^Bv z9sa|wt*DSaEfuWbb8i0LZ%jF<`kJ~3 z#0cT2Ti7K8l(%p~U_TTP&T-#`*)S$K_h{qRNr?3$KI z)4Jnwy>YRoF-w4~wFWqF7)nQz*y%aaZFBb*`I$mySlV)#ltEhV8|^%ZD$ zwDjx0L0{$1v#v=0?afA=vMwf0`JCO4f@g-Vho%Lq?-&bJuobsKMv=YMs1G)JF9OOq zcwe}Ncw2JuU5Y0hD7;8}G7?T^R_Z25a*YC_jH|BPZ9>C4ZtQ)dkpB zAvY+X#-^Nib{r7R;Qql<_7{J{!~c}7jplwQS`Zo_sAjN@U50QFUQ}roH@b_32bh37 zuvN!hU2@AKKxuEy`AJ;}LQMQTg+=GyXl>>2%3}@FP?wJazb?i?NaVcx6J5@n*R7=KyTaBuL+nqTw*7L{4_p!=%+_pyy}b8&m{^<_?v8=~PSb{lsQ za%yKvor9C5BiMNG^@(^j5qpo+wEr&?vl_}rT%Du+>=T8I`7bU}Oy&}m3sVgpnjWc* zfI=_Muf<>hb1a&i)_{Yks`)2r!W3IQn|g~WUZwJTlWgMapjNi)GsUAm0}`N1-`O8J z>&H-!)tJT&G}I8yjA8Cn=dwRKQXcc=L71VpN4>CLMoSH`|HJIu&^ym%dvsb_G?M&h zwm-A2=WJ?$vuc^s(=>5`W)1ttIS+h7zmcz85`5EbgI>4MwurJ!{ zxO(t?f%||E^rCcX{??sSNhs6RGD<1N{?@xq;JY zS~*a+^ga8L*K$?z|HBk@UW9QZV0WEOS0#x=CxjQM3%bwBiz@|hLSvdSth{NLYK2r> zWDg2y6umqtex{EXhD+GGn}$yYm^_Wqcq=e4Bcc58<&!aL>wz zR-dGXi=>U=5|;y`WUDZ1wIN`G4)b3v^-hS+%01QKZjQ`&M;Qu0S)PBdcEtepNKJDp6{nx>aSw@c5fHmECd zQLAt636Jk5>uR&pzRN@jIZ7*w=RsI&sU4Dywm-PUFEcMMP4J|#{rTN9Xz29Ti6^-6 zij`eOA9d$9tvijGQ1AvH{#_GbJ*IM!=PBu{wJU>t<`GnW`p{;&Sr*u!y zWNi_6e;$3Nn|5fo`IF6GagF496V1P&c6DHj`^^!`@Km%FY>8!X-5=@ar{$jRD9QZ zICsbBY&aSov73~DbiYE#B&M5!kZ$gGZ)QPQc#b2vxBQLx2ezylzY44F&OL!_H1OAB zUGupbW$E?5P3YSGbUj@JtW-~Tg1KplopYJgO7 zxiIP@G9%#UYh4xeV^*k-dI>Q$RQ)CBX7-+d-e0B^qFR&*uZZq<-BhQ}Y1W_v1V$iF zX2a?Y!c?az7ccAWxR+LFY*H%y^9|+z& zZQupY9S(9=U_S}LL|_;!|7YEx^yxij`O9+diG6!zw(F0!0#Jp)8)u{ zCu5mF%hUN^6AYJf+zJk+7t#wTDh$~?ZKO_8J0R5SC7m zQ><^G%O!hMu}jy~SdH}kED|3bSpn=P&&Gu%L5cG7^C99oMV0q#Gpp-W-%jQidB}N& zfT`2-wDKK~8nDhW&=nCX{wRNs!5xERbmkB^al89ksBy1`8r!EW1Cn1pC6dqks4zNC*-8DPYkmJsL$K0VL64IW1n=X8UlYh z&R|t9?5Uh_A5#Tz3M8^VLE{Ss$GrzvjIQl|EZ=d@L(cBKzV_ujeJg*O%*?I+h=hWS zY=ci}e=)en)&-9x`*86Eg z4kCwiqxD?rM$|=`BsJgYJh(|Qa}*hVZ6UQvy3qL@ir>WqRBu`Ao%oWJkVdiO>K5*i zzi}NPJXbV-?7v_lz$XVB2r!UX~u~i z3t$K1RGJPMdO4Jy&VaS1+~UW}bPO@jJ2gQ+e}DT~YTfTSi7OCvO^dv}u{wW=vMT;Q42P&T2 z&xcI%7*9M9DMY_9HezxzFIgF;E4{z4(_dGk|L63W^2H2P$Z~eP00gC#xH# z`8-N`bTpChGcDlu$H_2}gqdcsTLseD<{cP;Y+X=JMFlj->I>@r6N6##aG`k@{vJ-J zReCGKOA=k@m(*Swi3g-?;o@Gp2TlFVZ~`$4Jt`nN-?Eg{Dwk!-F;+vpMqW6yP}*3zlj9+axvBL3f_eGV0V$t|{Dc#~wck z+qtB6RN?k4D_kqzxBmPHdm#KEAM@SH5H3&@KqwMgC5f;z1$Mw#HKMtElo9==HZHdj=QQ1c0~C3&D0U z1~TVkUr`9&9vs!>7gpNW3cz#pPbz7gm7j5g1uQ_Y?-T6 zpn*Lf>}i5-qC(x7)T-Dg3aMKa+v%BT*F?Q}N3hoRWx3#4huy_s*?J{q>e?HAsmLU& zL(E3$>ur$o3_mggzg8q9#u~{_?9UJvx3HTcI`mt8;MUnA0sZ1mDput=**%}?9|`~I4R5>7w|^#nQ$lDy!k7+EX-$#%vR((aujW zrtBJ$-k8F4PN`PZib*O%tcJX%<(KDp{9$+AOhGPfFgPrgMIl^2^ce*oJAG{Duonxi z$*d$Lvp{IX&hPiCNSAuHeJ9Mk888m^jAdGqvUn4s1}O4jKVI=)>~q{=zrXnOqqm!w zta8&Ve~p)~xXRn*t4!Pg=hnjHYICAE()N37?%uag9l*~W(H=Pvs(b#pI~r(N2~p)7 z{B+01-6)I8YbkY|7q+?+*;*&rHd*((oLl=7#9O%U9_0$`7I7fef8uW5--tB!-^grGxw>AG5V}a!b;FPsyT~`W@uUcuT!-F z*uC?gK#B`p%>VRhFg+9w5o8@K6Fhl{XZlYZ3=2>g>h`-KV0;Mi>DJaKC1TcwKo(iY zp6@)rvn^(EW2bHJ{et+z`jn{ytjo~a_G8a0fsT`P;p?-M)Pynb6ifYrt3LV#QS%s? z5{Tx@pfAX&`M%Gjb^30znn80cS_`%g)B2l#MWHwc`=+|O*$8-o4p`G&ZGhQW4+kpM z?748xYVF}RYU3H|O45gXMtXZHF|daZlnK7k$kLxHon5`@`C=KVpyW-T(vS{xG3m|p z^?2;35!5k22a9WN_X+gA=&<(;4hCkGYV4$s;v;rzS3%)h;WwU)H}7)RSj&Yx@j>jB zqVtY>YD)d*5e%;9WWkr6_d+NdDi*Q;?Z0OPB!21@j%?6TX^01B^$j=s4G3N2+?LBqjmXF zXe51G200IlElKA)I@x<;HNiD(W~EdW15kYVA)R~cyH5Sjo|?BF{S%3xPCI{C#_@P- zhB$7W2RO+mmI2A^W9(k84*EpAPtlyUM;b0GzVCE-tQypsp;bKs*!Us)mvHa;2+m)y zRJE@G3wG94Z%Ru;|N0WBA3y-3Hb;Dl#TjicX^%8mn&}MZ+VF{1FVhM~BhEG)S>8dn1p-)gmIDQBhRn?U2?6j|U>NUj zOwVC>LawT~6MpFgZk7tY9&0@&Z|Z!VHm!|3=F-EeITh^cZlO` ze*hAFT0vMa%{p$|{7x@W{*VyS78+MYd;}==4^Q1XC9>%n3Ip!fsOmDa>D>GLvh7+5 z3%Ncp>+JsTR|w|x<4cr#yq^R?mhjz+E{Gz|o1ZS_5VgEeWUURQf8{Q>=Z_+FGJ3>wsa>E)NlU z;S+>+hi|-@gnqO~?^mlaj%+->fX5$&1eSi;Iw2m^P_DC5un@DyHPep}-KW1-La&n= z>mZ-+_!n^G$wbpO>^>I!+#vJ>I;4I!({Yx1R|ZARHm)0{hs1w)4b2UpZHUeY2zs)4 z>V!%@XVVYgST+G^$@he-iNkH#tRx;caq+D_(!Q2Dosjy1wtywtg+e zC~fw}h}lGd-EFw*#$S4ku?||)DlgolSRbQ(u#VfatU$JZp3sFxwNNE_0>S~kr5QFE zzX$I<=vIVcq$93deLvIOASAj5n4!@;2}l?-r@v;r(WU0PpN+A<4V{$DKw=%*^ck~k zRX4fBZnVh3?%d#&#@zsOdaN&`Cy|o&^pzKyk6o&x5J;lzQv~uhlT${Iw~MMBaDG35 zr$^(N1F7-Yygf_UM@*q3j@yYT#L&?*Dz0$b%lm^1>2=?*&m)a>zC8qCH_aGcf$n*; zUfXW|)X>;S9J6N|o(HeoO!tjm+ZM(snx^cP0lL{*+tj4;fcH=bv4u%svQVGgb#VR! zk9pc#55uFx<+V}%@DANwj{6wNv6m#{f!}wnwJP5P$h9}~`EPTojqN)QKyr2amq*YQ zQ_n%0LjuG(koumvER)Ht;QWyt6g9i8NOY;_F}6=~C|*hC8=MXs`mdF~w#3UGA%C0< z+WMuW_MG)}#w~3BO#H^;@!M$~9wSz8RsUX++83+X8j1_Tnsb?x_}8(I-kvbt95qk3 zyd1b{P#vjBaqu5$fBr<$!ge+?KsZW5;>6@_!fi3VNz5X3(EEL#7Y3v<%!A`!Z+jG% zVkRMQrK7zkz*5~Ej#I|KQ&!XxwotLWHBXOqm;7g?5w$Np+7mmjLe1aNfuwGEtNHI1 zEg0r10Qde^jY`Agi7=|u=Z#=Y8Z&Q2x9t|VOf zClVlnEOxb;RK6~CJ>GJ%W!qGd+&7iL40?_YJ<{OM@xPwcJ+_*5MRf;#(%k|MO!t-I!UU7(Ge@{X=3X7ouGjJh`WeidNiV~V$ zHs3=hcQlYRd6osCVU&9MJUZ$e9}#Nu+DJd)-bIsP@Lgpu>Upv`91SQS*j2tG_yvE< z;#Z_Q>(XWE57mPTH&xxUTz-GS>>1jcLi;o87rim z5xTCVexrA%+9sJb$8^ipV4UEyEzU} zBtiLNwUYQI%NT!IJt6rd?E)t4MBo+ISan(edyKt!mBiIypiWS4m3jZdHwmHzZSW>z zO&}k|Y(NGfyxSfjoRPjq0m z(i08JDBv$<%~Dvd$x`GK>aSa85H@*UA=KU2o`f2LZx*n;7#sqb!twfpgXc7kw$*PK ztGZ}xM3;tQKpJe;kIa-|fj2z#fBNXt0O5eweJ3ls-~>POzXnf=3-8T!--)pg08-tIN2SOR1GVt`j*%d<@z> z2vaWJ`h{r%yPGc$mI&mlIikj5{Xe9afQj*5>d!9Iy8A@}T^J`aKZ3{vU%C`!Yqis@ z<9_`yOtZDtpu{e$wt&`LX1vJKfmu}GKJrQuBwbjyl_Ao%a*=tDE7x2wxa;Cs6DuTi z#=yti$%{{_h`=7M|K-mK3%h4AxBDFOr0e`AW|{K(&X8G<-*9?|!5(GXmFKLHI|g0p zp!zoA@x>PvyK8PrKalM}+80`Hv3HTaH-*c|YKNC+@mKHy>#V0dNk}S9VFJ@)z9ju;OmQkxOS;>r zxHW$#s#XOhC1!s(84#}uDB;;8zqrUo{XU$+amtY03IcjDPi()1UOfKxy@Cgfv!vHA zL9)oUij!E75?)vLL_Pc&+ zcUz-x$qdR?ovi)-nQ)c$2oZ)1dN%lG%J*{HJzdwIPHv7J?aM6Hx#oX*l9Z&89Rod~ zZZOC5yHX^(wXY|k!w<8@%TxU)+r>@0x1mP0;aGIOrBtA>=O1_A@ zup3*Cyck3luNati|Eew(g08`KB*g5oS1Qbmz*KwSn~xYA)&;ts7%rbNo0>F`TY?RK z-`UBg$BV{?(+mXrUuD5S$1bm?^urc-*0$nmfpwo7adsa*SA({OeDJS9>XV>1uijo2 zIMXvBsB3y%W;u`q%oC4qu0O|N`QJCS$M`)GF)^VMJ}3*O>%6a!cUg3KI{HO6M2EDy1Ux}LGo?`K5@%&6;qTqizQ!#w}BP! z{LcM)vIeAb#_`hpCrthCwPg`=K#8*4mJKy@siZ#+gTtApo}PY1dHZfqj!Ih-?%wjW z^)5v@w43j^B(o6)Z<0JuN=WotyUEA*d~}nYv8N)Nr(LFZPLk>Nj85?p2KN_;h`OS8L(wkKM= z)uY>{B*m|bKdzR)H{6=2+18okt3_|ry71NnN~?73R>8tu>8*l~=(bH@*`t-0t?qmu zE0566As%tHQ`(&i9w&Zp7LM0GPF$%& z&^Ed{{krYtR9LM#!2ZHs9=TStr}cYx^`_p84_z>(DbL4=8sO%k*aFJ9BV)6N<%ZcC zodz-YOH#{*nZh#I)VBPBVaku+_AX#RLFKuX`nNhq=q2Ciwd_1epCJyM;}zf*@ignR zEx#EFV`3AZW_eCZ&}k#zz=#BSNlvQ$hw%L%nOZP;Rd0{sr&(BA6U!>pK4k@0r+z|7 zW{F)pD%?REPD*@~2rDrt%?h(-ECFiKE^?5Qr0C&uwZw^G^w`Jj^naU!D>CcXXuSUE z&?w*}cp?*Gm#FeTOmjeOqn0{c63H|ANCyW)`@mYtqIzm{4i_7q7JTCjF#uDqbF>$u z?n;wa9a2oR6^ZEFFJ*#JJaWg7L2AK z(FkNVNBcPR<)a07Wmo*=vEL${*IeP?Dfl;L7xJ>yzCuY-KT{Q_cA|D?)O|1ksLB&D zxm10^)AZZ0gS={A)#V=+rDSTGo^{rw&ncOMC9O;fu76h@UpNBs)HOWFXbhMIiCJ!S+W&Agjic%(NgpP%k18` zB3q@(vr~%#ma@bfmN0Xfb_<5~AVr_cp~hO)jE$4#0t7f{pQf8zWlWFCQjohv$0AUR z*08T}^H8WkUrX}wNeOT++kk|M8LT%e&SaYg`YMCZe7$6rXqxr&)}&)l9)#)!q;m&N z!%KrCrXxte=U9ae&TvM{5nS5>2JU~nt0?F-C@_zY%Abtx?OEJ2ffeuWbzgdyX!rD} zv}7mri?PlP*c!G)v57x1fasFmymgv4N56(%!2Czd;J-12bCEz0{)O{5`FeG06}>)n z_rX4{ajIBI3Ke>Wn?OrgN!R5?UiGkje}PV3# z0jUP*D=!5KU2ch6+#5bR%3NiQK{*jVlDmJL*xgE@Om9{B!3tKh!8b>g-5kST zB)`H}qe&9yOeuC8`D#}?ghr{Q)d?x21acxrjO=jcv z1q=j=&+ij1c_&R_bOp#N74tjHI*~yI%1eDd(21@mcJ>Skuvk^w{nKIBYI{_9f*87W zQUW_#0$D<@DNsyCBE159DSRn~6&g$Scm`QYHn^?!u+21c4OEoj_RSX*f?2;+Z_%|L zh1_da-8Mx@D-+R*hr6$j0XoG!_w5=#+nymt(DhIlK9<&=aJE<4w?rZz41sAs zFXk%;H(_pv@8j$U&?8}6gm6BH+%isX$x5HtlO|aK&fT#ZOC%0iVm(+Wnq&x%{smD~ zy=Xcrk@h?zzqaW1ogpfJd*3(JplG_RK?_9V1iAqm&i*5h+@N64VY=gw@D^GhgyfD7b4fI}JzvL9w3+jxA6QC=8hxSkgZMMfwP z?IHA{_GBML*1Zfio{E^yLAAZ!Pq!u~A!zd9coS$jtZplhP7IVh0N0{geJlP3e6Er> ze0|Kt!$1!jk^;mxzCs+5nD%KV(K$*lHJ&KzSTU70nzTLOn#hzi2>Y3u$-;Y39Ly9VboJIVt+1rP}kTq=HT&X@{{TKD-SS& zdCw?8XVPrTDafM4qtZ!w-lB*dWBv6scAY~i7>&*0)0&`QVvVRkY75YDhtVow=*E4q z_Q#h!88pw|5%v7(nNUG9%}~;nCkw5X&kXb;A)@by_J_Dfa8KL0;&j=29q~7K<<$}+ zTillu<%t3tz`@_^>^orv7{3oU2iz#Xq{F!Seqq+?f;Z!%yf$yJMAdbSHPSmB>A&Q^ z_mgn#I9~r~;N~L<^wqqT;=dzY-H?vrl0oU)vU>&}L@JG7&bs}~*sNY(x75t1m?Bh-^Kou1|j#PQ(o`=b5h@ehQLaUKp z6D9v_a8@X}0u-1q2EL6bdCcUy!uLX#4hPTu{-|Gv?MByL8;%x0^N^pCCA4xX@IxB2;5B*O+fx~K$;7y6+jf33 zn#Gbl2_rx@`EJ$N< zMYfrQkGFi8UNruot2nbuQzWdKTGgedw0vi??B=OZcQ$= z*8X;G8aSY{Cv?sRP~8+>ShvSa*hC(s{4Vu<1Za6R`+8pLo9Y>0SmL{eroWj;H>G?V zL`CvOf!l+917n^lFNa-p%sA2db!Wwa##Uo3D z)7lft@+dK6VEw~e7a3PZB1dm#q*OOA>IdNb4&kx@{pLY2IZTp8x2WsH2-|EJ;8^y+ zOyX0h0`AZP3ZFzHH+=fo&z){RFdqVT0X(B5GoaHv273|-awyT;aQoYIi^XPA5#y@X z)(96{ct8xXNCqDZLJ0!kzgYrgvXpY!F5ZV4!Ot8Xyg^!ijkVh<z^<-J6{@Ho$MfhA0_~Aiy7H|T{={wtb+uGwywD-3W*I>tVBdhtER)|+52a$-l@97rGmf;y^*$~7n z)G~nlLd~&W*=5j)e1g%}oBuw`tUD>}`cY!1tXKcC`w@y$TIsF4WF8fjJ|JgP$_^0- zfLCF4+wOMujH6`XKg8LVZyXyim#WzaDSHm}E11FrMN5@i=qk2WzV3!l&`>@1x(26} zy%T%Wj=Z7snC|%&hz2eri{%F}xl`{lxB&_epSmK9Cm4R}GYM$Q=E&P9bBlXjyL5Qd zx-l0MTZUGEdmcS?L_8rqW^eD=%x6QK@=QVpLVf>?_z~|PJw*o3l|e6jdxGA;Y0vq& z613$IKW>{aqk5v8|5(kjl;&yH|GaTdJ|g%~|78wdVKZ)Gu=qVX=LS9RmQD`4sZ-aV zZ$rtqRxYNjtzol!2VZo^|C+#D+JE6kFsbvP)ijv52fW*nm|T#bdIY_>nnL31;_xN(_U7Y4_ z-O8z^Jfi!sL&kLIbHW9M#03!_HWm+~g(pyf!>KGG1f`{&xREA+$sdmyGapWZgiu zIQ?(Vh?>jGJ2ys3EX(+X<9g2GFfZUkDTZHF9P_8^iLMgFp0+LbPvSp)9@lqVfW>kc z>@B)agia|Fp*r5U^K*1XWA|4TXPhgg9jEZ~q5qcy!#SGBLYE)JCURfS|n@W&ZK@XMwd@Jb*++7e|^4r zz=V!XmTGG8EAa_3!=!WSx}N-yz8pf>RT?l$V%%zDCp{no^zjNjK5OUYY@!;$FE;-j zTw!3BWmB^Z0QRKj3yS%DGW3P9;_6@SIMoQXOL4Xn8s*CJYJU*^*6Q;~p&}LStt8cL zW0al6?tX565QFfA*x#Xc2Fc)=f50$D)0?$P7M_Y;?fEn`KX>T~&Wx%@5z<6&1Uy*% zZw@I>9ID!-xck+K(Ve!Ds4N;WfuSS?ef}LExOGa~&q<1BC%db3<(%BibR$!X)BK-q zy$(+m?S4l-8eTp^j3Q9}cjG-B!8hFXbYv%Zo_~j((xG0z((S^a7&SwL2j?;p)0hpj zLTuUn)Yvm#JS)g&w;o6jJcwC-YX3URGxy4b`y=8^MDO%h>1J_7gQ4#R&s4>zCmHSm zz|%$(MfY4|E|v*f+@dk#lQIM|cW&V!9{ zWIPcH*^XVfseePy8|_klbTV-B&WwTg9@h9fnj@qjlRZR|vU%^Mz{&;vB%XYl@xQqM z%1&3>B=wvam|b2rLI~2fgA6g?BCu=rJ7f<15vsIn^wO~aU`YpNSbW^E8Po}^1Aom{^RPx^ zA^oO6&zbob+&lN;mJqIya>ToS!e>?fzd&lG6Qj1FS+AyE$Tn9|<8ZCKVY|G5?RtUx zb5^(DQ_V!94Iuu#uCkJ-8l4y8#0b+i0I!WKqGQ?k)$xUp zW$l!9ai44d533S`1doV9M7&0A>VneJ!v-Lt`A^v6g?M=9i#%_5l{Uza7?D7zZ|31xkWSM-Cv z#z;Hz;bHT)A3qMp<7h0u#RVgGv&0fef)1mq6Ok`X!LYKdd)ozI&E`Sf#vA zBACw4vI;Nu|4WU1@OJCz)!`vGEIGYcGQ5VnLOmB*So+>#bjr_Sf91Ck z6IXxU_WkqMUsTYwACV_ha{o(XAVc88t~1>v@_(*7v?rYGYU&vNmn@$Qb&c;KTs`ZM zaQCg#d;5io_2FCGS(r;@ou}cWe(-%(ZI?sIu?0*lpa51SXB2jjE`gdmK$(+VhIu07 zedOoxHv-|--p`dk^zav;J5jzf*g$ zq+v=E5b^xp;M2cMS>R{;UjjqGn)madv7c12gi7f5ZdUQ`TEAsRv*S@LVU^rtu0yiN zo8RsNNk@bp0G$|z|NV_d%#fW(cZox?4*$?e-X`?{&Vu3KcycZAHEe4WXj_)NP!uCV z5l&4J&bDB{YhmsJ+YOG@%4pe+z>FZ2vlCU{bsNh~lMzUWQ;6fl|f%P8R{m@7k zOg+QWszjk@g$2y~_k!Zh%?MuEnDl6HY85d|Bzr~uUM%m$ni{RTpIpI$9F+VZ5E&iF z(|HmY<#4Tq0ofwZ4Vi=;;WJOUZXsd50iz8cON$~7iuq4s+CJe$QN&lpZaJW_8Q%8$ znSy%O5ph@6Zz2xK*Pn3Rf>Kob6NuO2n?l>NN-~(yR)_eO<-{=_b7RyJbuDyNCV}f< zyy2O5gb)jSWdiiAWmtTM?%5XRnqu-2^#c$|CLwKW(CzYg;p@3VW37jaH}v=9q6c(e zx*T0OOu?k6#~ohs|Jn)^`(Le{cU%)&o5w>7y$K4Dl7JxnQX&#T4I!X#1(7CR0qLSx zKoC*T1PRiGfOtVsLQyGFMFms{NDG4WcCmyKqzggP{i#PXphu+0}_CKt?*Z(+o?%6D8$<^P2*2kJ@ARpABj2dHE2JpIkYiWbD#M6a_KV## zE$<~W`FG8(fLd6~p-5?`Jf%2L}K6)fa(bo)OajE_eO z-S-UHHpuS2B6$Vt$JD}=mVoXhCn+7x15fP(c^_pJ7uZ6UG3A_xqSMmfvrRB|xDHpM z*)W;0&U0OxVM7g?!jj9}=A>SHx6JBWRdoVieiAb*t0k9p5FL&yVcYK1B0I2eEl?x2 zAP4WCM%NrVAY<<8@cY3)VfFJDmZN?rJtpl%yI6GwDdI<1HD3=ydaT567;`TG#NCdO z7G)z&&Uni9y-)w?&x`5al@-()Rq<)KD>j}uyyNPF-FjH?rbf>AIiW&}#Y5u^4GaIY zsdVPHd;Py`i2ubliy z_Vn}w(pN)H{}vMbS4ZczfG;;lK$11z%ne->>aTuYbKdq%t+|QZ-aeS4Tc0ldjm+#{ zo{3Q@!PV^czJ>5m-Iin0e{iGQ_>x39B9*?CKuY_ig#cS1-g|B>RqS!5#hm`+d)k0! z@)@$iGgHmWF$N_VMY}BriPrbRio2fPf5tKL+>*ZK)}4`_?iXFTGSiM8*E92L8u0zW zLf+!mY2D>!{kZQ0q}|6x`#(azt5SXBRdw;i)7e}Kzx;EHAeT<4OVPS7I``?i+z#u0 z?rq6xbKafsNcz2VmkG8;n8bXcTfFZ!;%Ykb$X0-gBN{CTTD*<<-BJ%2nRoi&eLOG* zIiZiS3mIdX>`yo)a`W&j{6u1LjXyz=?pno4%Eb!dN52b4cgnE} zOc4cK6I|*MAh-HlW%%bBT}G-9R6(eI=Szt@!4(3ckul9)X?YvaNOz;6UthuRH|B|j zkFN~JE?c-XYq-|CG{?yf@U&}RO`M*gYWoCdzal_{ar3V7OxETXXT7 zuCv&sZkPG@Ux}?l< zpN(Fen9Z1E1!BsV44JU9XkjoG3^tF=?mD(uH={oKmMiBq1KrtNZGWN%%GxM{N3j<< z`~sW{)PFfg{uhn!_Qmln)l=_KPoaHFuj_24)@nALK^g4YX^I3x(PtoY`^PKp#0FL= z*sID{2bn+@G(OT(HuD~RdN1D6(z}z-uNkTKn9G!qS~V#JKF+3!ujaEvpP~bIU;!zw zGkE&w>1SdYPAX_Jc9Rd6e36ePrCF%@lv@WeTD`_7Jcyz7lClW}Xx19~I2Co-oy?9( zq)g~DdctxSsgI!N<1VFrL?mJTBzLy1@@rA$2samb|*$QBF2s z`HHEMZ~^Rq-ilQ-{(gMc2!}nOE0x#?o6PdS`zyZC)Coa)m*ndvV#73JT_e~NnS2@| zf1uUt;PPbI9*n1D{(T9hE9AS&|Ba)fWLYeh-bf_ zV9wh-Ld5Q<=Xr|HuTCE9S#xSFV(*&#Bw%65o?4x;m$>=TiU`El_>Y}eK3gC#O8h99D; z=fY1CVRXqEl6P7tN0W(0UHi3)9=KU zQ~h80d%LLjJLzAIg&CPh@eZZlWAbwUx77OvG^#dQ(r1)#>DnrB3W@y zj}+Jo^FfF^E^kvEZL)e9l~Ki-aqZ0>1`z(g&!8)?J2)<0iU*f{ZwcYf%F~aM5Fv9t zx1v$XsTOGb-Q;~{@sk(Zmxgrt5=gMPmd*l{eVdhO_aQ?3;>iH#%Mp(m5KQVHam-(e zKHm^r#B!g{+lL9f+WG-f_5VMc*Rife8}9hu(MFly{%dV4;tXVdN}c@_@+>1mO(y0J z7}4?s{h=b7qntECnp^9!J5O&{C9&m&y z13%leKe4sS^`u3FgR``-GnRNq#?nE+Y^Kaqo728RuItG=sL0D)3s-GBjw5Ksm7B>r zXvAA|RsR8bnib);pMt^fd`=cJjag}5%0blL%tM#(?V@X#f36p%zP}M~MW~-@@Gr(& z8jPCHmgRRP;BumhDbA))wnY{jD}aFbS26SztAF&#g3 z=Xe#H?Peu*d7z?d&pz`VoIs`h8z&bhb*s67*7fpqN%S65FARRiht29{pQy+_nU`eQ ziOVaS>q*W1!aj2!_bs(E04JM}Xn92=S+DC;zx7a+RTFSHoDj^9)@pNBy8yknqY_ss zer6;WC-Xk(N&LdXi1$inuio#Yp*_c>hDp%@6`d0Jfy=e@LxS@Df{}M`L#TJ178eVd;yPS z`4Zk0aV_RjjSOeuyj=@qv)7XmMcV>eZ5D$bZ>Q`xm$)6G?Kn>oMeGT3#ea~ol;G4I zK(PwYz!d%NR2!pHvM64W>j=0De&Bla>&qY{8~V9t|C5O3Eucpm?y~rsLB-45kCeeM z`MyNHSkO=A$`dGsR2TrGKW9taro+F5p@Ds(F{;6_sIOox0MlDvW+d@j#!h33Bm1Y2 z$~)@L{)qFGc%f8Np--XOE*ec zJ)2vw#ym=sljw1^pX4{pm=)LL$UOFcg3BRkADOO^qW&VKItkB215X>{nv_$ev2P!0 zJ*8boog8v=5w9?GNVzF}04eb+E&_EV=5Tk$4#)d(&ECCecCsmtFlQj4QRDbvSNTPX ztp=sQ6r)%mhRVhT2t2?5!Ccs`194LZX{inYh+=%8R2oZXW=yADBrkm?w&36~%Q;B} zni9v~WxDFM-CuG#{fyzdI#uk0e(D|DB_3nWnDRS}Sw%JnbCtVO*$1UDdpY+XhhAX{ zykBEOeTz1ab(!wH$5lZ)rF81cl4&zXzKX{godnn-rkx+aH)U5J1a2s$&sOkGA(|_X z3!{-4le)?e0`_w1?4{bL9A;-K($dZfIy_pct$*l`_<@`vUcVtb(@|^PUKb!Gd3E7< zmxg92oF(V{{T<)B3gE&hd=t$oYe%0X_L2i~@l@8|w7LG30FT$Se*Xrms|awAUE4Y= z8PwA9(N>!y;H$!EHj}=+=6Hj($23<{@Y~mM#-}04MpYNXE~+u$URBL5x2K-uV{mipdaxQf?Dw%cnW&vpo z47sRNjkak@FJAFpvoU^va3<(7+_xr%=b481@b66&5Fb+;2%_~Yq|QY>f_Cg>B`A&0 zhVwdW(Ww)tm!*kVWV`#vC=bV~$rD+^?>qaT9iPW!*P1_%Jj6q#te}KPLvVj0lRjf$ zZDM}k0#MSPk@gz2qg&xPtetQIeb*TN>^8>?Cv%+RlgjdJmA(D*o>54bmq>vTv~2hl zH8YGnvzk>i#&e{>$T~t0#R36iC}*h8km9?Sz-BOe0v5$MjGf7qE8xBYw}voX#K{vK znR(`yNN7pDHcy6@i+{OHr0(2tsngtd+`HGJey^anUybSm28<~rYA%&|+41wn;CuGk z^32Q(8L({KWH6ZwV_WM-9qbj$t%-k|L^)@6?O!0id!ZrB%o$NQh?aTyvy>i9Fj zNi*|~5tgs1`2sM?7z!u&sMjnBPIb|!r~ zQ>uAjAi}}JlE2%I^Aj+rPl*rt2LO3FnOkchx4$4~pbEuUUd|WwU2}^khjDCHMTvo2 z@=hy5Bu9`>{%d@~mY;Tm3QFfIO|(9)Wf|Bsd`)@5{(;?J>F_3{aAdp4g=O>nBBwlV zlwxqIps4V8+MitHk3$^VN@mg`4^`dLxs6&dGlTu8uZUk@4bbHBwMCFXQarOl%*!Wj z`gI}T@dRyjji^skW)Za5zodU@X70hfn47yA@!CAOWz;sNd$_+pn~*hr@#g+M`z6S= z2S+L~`n>>+&HLmbFa~LpC>BS|(DlJTNH3>Zd)ElI4N?Eg3$A=07RLDG9e!6S>Kd-g zPHN2R_bHJPF^P#M?eC0KhT{r6t%9*HIt5k8QZekaQ$Ze}3CydO4YWacMV|-}-kAZ& z-7$0U0nDJXww>B~vt>~!x|^DFU6*dFCEi_B4Yg6kABQM4DGj>*8o@)b-G_N6y!gz1 z?)G2BtPuvZPk>Q42hnf3oWVIAG7CDy5aiOO+wvXqjgmDd70g@c_(nwM6%|;D-mWW$ zX!1|)p7`U9JfZ6;6?XN@$3waNYkRGGE<}J&#HL;k)%yumwvj?=D6mbitd$2+Slgu4 z^)*S?850?*eJ}d7k{*Hkgeg#T>WUQ7)z;-q%6{wRv(e>AMwFY}aJfAn46VmFgD)y2 z4)_vp3%c7+e@j92AT*)0PZQ%r5V&;xmN|s*V8{^MseJJIAmOP3Tp1==@ygBG{p9mE z?UyN0!wVpT#j3aTC$%QcimqTnslm~R4QTpv2EGDwZN!@M z86ih+-wl!pJS7B!s6Pck!o`{$Nh~p%-@@9rJTezyzC=&T=5G~l(*x}D+9sn|ll@uV z14S_1xSCQGadfzF2Pbz!Ta#HA+e=L!BVYBj8u=rKG5ov|Qz{%7U?Byx~l(5K3z^p3` zA(m{;9FN$jh+HH-v7cE=$HF(W@|C4U}a0$Z6tqe^6YN}1e= zxAs3E+_*5=5XE(--5|Wp*Gu!|$U1M#zvlJC?0>H^C}OvX#d=^)#|>6v%+x-@+_H$66N3UETJE z6$KHwda;(!2iFB24b$7qdy8 zcm~tQ0+%K}`ELCyj}}>-ki1Nw>C6t+$RCkrj~iI8DA7Y!J0_lgXFdfh9Q20{2LxE< zzt8h75%UvKK7>)zIdEQ<(4%t)^i~x2-<=%zDJVViuQtNp^(f-1#j-i(D0# zaM`GZ>SawL-Thvk`%(Sf8BEalE-Z@;f#}G4zAS8rPgM`XeK+2k-H|howh1!yqky5Y za!dJ%A@!SV5#wpSSVbleq>(`9roXhWvaq|Jr1CfLE{N&1p3>Sc)tlv&)1MX8@fxbZ zXSD6{mV&a=jh_|X;ohAen>uR6IO)|QvtGm_{C1N7{!HIa zR-A;_5p)uVjkh)RB9bq00ySQfhqxDMs7z7GVAxUlQink&JqtkG-6=OfK5=m~^Ot|sKjRj9P4BLN?k{cqi*Wh7M zX=De^H90va#1Ws1d!wuG?$WCV3)kIk0WzFH39roa{0j6JcAO1EsDrvuyqL_BM_TId zDJHC9rIm*)0qGbQg?&Np;}LoeR*o;EeFT()1vkGoFu%?tQ7!Jy=Uld4q+-HfNCY{C9obS3MtMCEEt zG4;XwVMKz&9DlF0dt9yK_RGdp2`geYNQJRMD(r18H|Q!w3_7Rx49rqN zH0y{2;VPeVMLs#WG+nl%FKEvxX7=E+?Zh_k9(@C9rZ@-xGK2A)>#`qZ#b@ECkGO^**NGtg&x- zH?57K;2J8HzK&|0CmB=p=E(x$(LUx4N~<2Cg}>Jsfi%`!2}z#DQr?`sbxaY?xF8-v zi=S$K#dIi6Yz8FGMvM8cdPHzhr^cy-fmeo}h>p15E5udv`I5QYk5PSo&9xvQGH^KA zOT=|C?`}y2W3aHd`#{>;GxdqP(=l&wC`0QH!{s>|^x`FzDog`N)+#cm0y%Dm6hf9t zYhJoO_V(^M&Bx=Q^EY;BcTD;>3ZM^x@X>87G0qhXFd`cU2DWZ35#5F=dQ$JOU%MvC z#0>DQvnyL=TJDOU9o-iQ?VQuQU_H>|VG)9!trz(fSFS>@X;}~U{r;CO*WQU^SGiT- zX`n7|UV?V$`HY`%d1IdH%u&o@HWRxxdzPzzRQ|k~nc+VY{nIe(A_q_tTgl z2f&L6;`I~|uYXc6s=>*v0qOcDUp7uJ-n>;UXtN$x{~xMMBZ8`22P4P=w=BCnokn+p zk(sSv7nl1w(s)AH;<0F(&TL(E+x~GK$`Mq|={#Zlxgs6w1!6?~6Q%TTsm;q5?$rtt z_8qlZum1);-y`|>nu*KNw;kiCCvK{9)MQMw$2~T`A*eK){C&?CY^p7sT(g|{=AT-P zQRO5KjPe{c;?79bgasXX)?0RS{qCD?T_@AZ9ClUz(1}qI|Nir zDDV>%RY>UMfJr(1i|*TP3>AiK?ytpMtKUaCE>8>wmqs_F5V5PXSD|O7cC-|s;7xpNl$-LvG?C|q zw2$Y|`XLnx1=dSZM?}TrZy@dc>E~_D^0$;#(pR)v?7nBC3k@pZTl00{zqo5!$e17Bl}wI^o_Rj6dSAKmgN>+(fr4VJUh>wp_p?a>lN-R+}-~Fs! znZJ3GOfW{zWhZZLx_NWy5~=SCU$9c~+C2a4{j2%BUV8%7f;3YoYAr{TLo1$5TfQYe z&%0ZZG9B=Cv!QU>+;?w>x0Oc**Uw0F=)K+j+%=>kX8PpY#OJQ*t``-ty)T10C+ zN=I?ixKK6EwRny=mgw0$7WG+P+g+=T*{u)KXhATXzTNKC?(kZBZDk7C?j|?2;rX@6 zW_<$hQbdJL#kZ|zH>@1^nil*jPKW6#dzW_j!iE)kI`7PJ z^v<7Tcg44a`fF$L=8b8=C!Xjq^X!bfzPyi-F*vJS^Uqk%v*}H!i1MQD_WhkRudLH9 z=Ey%-_u3MhyA8I_WNBxaVI0>R6x04bbT+%Q+wt}~l9IHd%EoUr(k`K$d%5hH()%@K zy4>!ZKTJHXll5#RG3{a#&FE}4`yZW!!9q`OTHtvMir*2qn0U(29^=3woR%35<@8SE z5j`sv>_{A?ud8$MR?_U?Ig{NMDf0-%$L;Z{pLc4IuVTKul4)z%+|%Dy-`i_pbmr1wC2ZU29acvk&`wlHrtMTOu*MyC zicDDcmrJ^EU^l09*|%CUy&%2Le(ZwQB*QqFkR>}RqOcCETsxHiK{eazQBO{=w^955 z{(n4JJuaQtxy3#&KR4C#mqq^A&C8g}$8|KPdh2yGkG$wdH{Mz<(b#wLXP1(DmWTq; zi5UI}cUAT7L!4LCscM_!!v4t(+i|)pMb=H9MT&}x<9hrEeSHR1dEH%IhG-JLq~uLL ze^s2W*v5XX5emk}W-f;rA0O|Ch=_@j@^4g;N-Mt5x&6s&H>Y&R69SVnw(S z%Bq{RU!A8sR5kPL{(COfH8pY)5=0{Ls@VQ*n`UU*-s|R97sh&;itM>`9`-qVznn7FyAX>uuCGFd_*^5lsi0$PcM zCB&b66;n57wW*hG;c)%>$%kLkZ>7kjOg8rPTyma>jEuZLu`NO`At51VmiaDwVaI2C zA#CfCu5R5@Rm*)2d-!_T=~IGR8$`A;4KF`COqWPnl9TA&J~XA9->rN&J=WcCz-XM# z|H`n*SWOs>@iy*%qYwA(`t|F&y0&QX{_Xhc>gtz2OOxH@G%Y;gzxTns5?9f|3>C^P z-kIA4;avj*R_Q{uHwxQwn3bhY!!G{U-Q47Z_WBu~j13k*giCGb0^@+=%qFC z^;Rz4n<`c0L%9Ep|7`x7he^93t(Lwwk4h(`D9qSHo8Q9)8Al*#d*71c>(F`C zer;m)0p5mZcO!0ioS?_Fi+^>)FjaS5NR1Cy87U+t>a8d0*6v5W&dM>IMWqu7&dO)n z@9S=Vwz)xu*@ia>Ao!eOoVYz_S4pf8{K+|1F<0OcP98X-XM1E$LHrSOuRT8hU@U4m z@X9$ql)>rz08(eKX(!GcC9Q>8?g=G6Top_CepYb()_a}+HwNiw-f z!~9)!INvVaEv{+8uHUNL6#GCnPa(}=mcKSmALXvPZPR+5JK7qpvFEcSQzrGda-HA5 z?LoCu_~tv>cf_Z9o{gh^%UCZF(3ozFb-O&UJmjX=i*# zI}*S%b9;J)$*s8|>DU_oo#9VRrhyd7!JcxBwcvPc*ZD&`?7>;SO%y&gkg^CU9EagR ze3RnQqx-(tp4$~!|K3kY!S~bAM>;>AWjVI%G5A9xnNt=aHyD?}-?Qscqv)L_NU~Bd zoTlw3^5nd1+$TM)MDIRT?Q$!=(%$Y@cAtD4g!L-6cowrV8WC|@!a4U10-O-1_|==* zW2GkFk#>!PdrQa07)tMxa5K3bkaCUez-`IzyS76+`$V8;0aj>?In^qQ~_V*~ZU;2rdUxvR!T%>4Y^Py!}H6p^ZHu?b+t*9vN@G z^1Bf`J3B>H)dLd3sn7k2!cP`kZfSMjBEiyUdk9J|@2BSPH*ydD%}xSSRFQFOIy&^s zAlX-rz2%lp zY&K9%j4NwE?WUJh>3lEU^P2R)Ytzha59?B|%Ue&kx{T$;j@N84jYchMm=scrICDAS zRK3oW)y+{;Sx&s><{0vJWQMkHfnTa(5;eGxKi4DgIWdM9Byp&?nZ=Dyi)^VnOzs)S z=w?{SiS_@g$fMC(ufuWf3f;xl)-LA*cO1F1+Tb(l;{T?5-Ie3rK2mSF!)^Gy zcG?$NSYR%TT@r=Z*sudJm*ChMlakPNe<*Y_&z-a}w_IZy>+TD#B;R>+Q)(UZV|k`Q zXY1*5tGQloB_mWAvf9gY15LJHr*;X9*nz|S2hY5{?|I%|p5?c{;N;@f&3h+3qy$62 z2X(e4l~-*0$tlEj`>Da}3}2)5my!E_zZ~Rq<7d4-e;|oV7t?(a`C{v_pL4`#W})-W=?aCI&HMX=4G z9j#S)ih*e24I)l|9*fZ(GTPvbb3V39VlmI8?`{nizo8DtaK_C{u8LvNaxGo2C;dfN zEal=~_d5F?Lao+_$*sHLc(-E|cm4XWPpRmmM}?dim~bv_T}kSZ?(TRJ6+1cd;qv;(&ssUhdgOqL)kC+v_jf5Y4_%1Xg43L=m% zq2{spF&`JWMJxUJ$0+!+wHo9U%lw@;eTE$-H#Mz4s;a6wUm?Z8cJgiIit#A+yD}9)_O`abziSx2Q+2rY z*5#D)ya^6e2=R-;CyjNJ^Ch1Fn9Y?DxmIe+^7@0D1stAND)Y9H-H79AaopbGtZ1GY zom*RtBv`Sso5NNt_~sYN9i1g_{Mdr6svyJkL}vO{pQ&$b5@)95g?;l z^4wcDfphB9e=mk1djsllRzB{|>!kl?>=S@MQ`kG(OJ1tFEk>6s-n$^LxT;%g%-|M9 ztk&JDxpjGH;jW2rw~rqE^?^L1fm-t38=6TfYutiY=WC3J#Ygqzc7E_DDIZ?VsGnA>S=XW$Mmu`jb(av|F$TX-OD1k+E@E? zW{F?nx|Z8RJK%2Jm=4sR@|!>#bnF?<5ZQB4G|3FP8-|=oMM0!V^j148k=%`5vBh+I zqaI%Vz)l}8p#0!L<2gZR&43iYcdw2oHb+f@tAoFy{RY9; zk~%hgQtA14oO;BMlwbU)9!cm{SNog6fA$!~#p;w#1CAP~^xE&@7jU>{>piWQ|Nt`)LqiZjs>)aGKET^d}2-drvMCJz+xVLu`N^C%B8bv zW90I~Dg7F8G~Kz{4_88=X@+a^U3ISzMg@o>CIR^yWL8?e)vzxWuDH3G7+272&o1Dk zf;XQ9=e?$wP$R7g&$^z9-JY{gzhK2p{uDp~TjJ`6?g!&rs=N82O9p1&^SJxF{6<7-s%Xuq*>CD zo`y4wlu1ai!4d>jC7-4RoQiX`d5)=oKmoJgnBl^3P~2I-EV^{)Vc1vLJ6j=5ou#+o z=mzhGny*(N*-4^AwA2d<({E$@oKSfsbE`X4HCdII?sPbbvcSW!ZdCvHnT~P7H*{-a zurTTvrMk>p9u*b_sm5-hRbseuRXE%Y($j(oyX+0Iqgf2w3C!P=_$M?89_L^e$0EG{ zu9&oZ_$~Lz^yoYnD5yUVHC){|qmxe1oL)o;j3SbC=#ZQ+E);g5L}RSNb@JpsQ9!}l z-I^}=T=|VJ%&od3nYGSnw55%eJ;%8^oLe3G!;QH;NqvNt0MYnXNQy0iXWM+YK1}?L z+yk8hw{kU<03tA5A!u?4hG!zZt+S>>0O9$C7jTNBVwSV6LGreBx8xT`cGgZU4Mvhf zt3ppKQf3_ldCq!G*4}fl=Kg54*wEGWjAvy@$j!yYWrZ5NH&aV(27jj72ECx9w31p& zMdxmLz+&13Z$&<1w;~Q2VMveI2$eiJ_<}aHbuUuA^r`?CpxI4XB`1p!zAz#t3%Wmc zMND4xzx#IS40gj6tV^}mMB~?K3zPAcKauLDS^B8^J67c?1P>?68GN_w+poiBf16lh zHFIZ)cUHynibnBPa;d8?o*m_=!&Rx#uB0yHzb0?_JXcRGtX!zh&`R*t)jgkTsP3C+ z)*R2>9^^0HD<7X!*7Pm7e7t9I!^n9VR1MjW&oe5?=3`9vU2zqkI}eLYb2^3i6@BTB z`Q|yDJrq*m{v8oAHNI_}ZI0YX(YG4Ds1>|dJ^lepI3CIva5f|$p)nnujI0ATpYZK$9 zRUJ@vH!>KE0+RB_&L4Oew7MH(Z1mfNr%0=>RE7Fl>4N;?+?$K^qr2FZdca`X!FJ<& zfb8V9Arj=7p-p$RVFC|Vqf_i>WLTuYotz;>)-zn%8Ao}h9K;XD8H}`ksdP|Vt&xw7 zjeTP9`cvog8+YvcPiAQ9CnhBDV7euMRDoLMO<>_1z2;DG&FT=-ePQX#k@7Iv9TCE` zft*j2{DJ}nfoXXbDI=@x#*qzHXN!7yg?>!QmXhfWqv(o_S8yjgM1Gu6ORjNO%&`CK zb^P4e8Dmce7VqW|Z6v8^F6Xvu8_)Bvl^1AjA3OQl2g#5?Pr0cXy*~e>I#u*5m0F@9 zWZm{n^LtjdIqxZ!zm}oag{+HZ)fZ(&BM?LBj)lE0vF~ld1In#x=0$+bc%#k(K(bTh zO0*91PykH+&n8Z! zApKG=o`oAg{e5B%vfj|Zi^RD1%=`MN zCk1f*=h3B^oA(LXi8kQ+#V(+6X|fzS&aR1R=bxpW-w|`GA!M$nbmFFk`*f*stjY$A z3|0n}W%4HZR}*LBp+g2aU5}5ioDdN3zkq&fmit%2eLcq-jmJM_I*gqI19_DE_zbsl zNk}}gxb&!6o&h%8rruJi95_?wy}JNU=G>qx&~caS2xP0TUR$=uUK9V z`>|hQo;xXn<|F=^@^KmVc@K{uJ=Lx0=lO1mh*#gj>r`r5N4XFRl|1`VA?u^c^rE|3 zpV+SVs2_<&>)w^kh+DS4kVeAz*|cD7V79aC?m#oi7SGw8@malrhAfY(;KSg>5)Aa8 z@t@6q=ish)%#ZK;dnyOYeI*&qal}o`!R3N)XtNK5m&D zJLESgwGFvC;1|C|GR@TGIk?FD+Sj_C@cst{xD!I*AL|-Wqhi88{nq^;)(+(q<-9<7 zuNRLES%oKv#kK|$LRqBzcQ3$!8cL`$#L{2aR~~Wje8J_HxpnRWPupPq^R@R7E8`6! zl~L~XL!qs7=qG=)3pm{c>;tt%1?`BXuFPL7Kby%Kt{X_DsUz$KX}@we;mp#+?GHD% z^dhcGQOwGp0iyR3xP~hNO#680R(_1qn_K)%`}R=eq-7gd$#Ukp7d!p%2b*Th(n9Mf zI?WBKX2n+nu!v4Hhl~*moF|1fME*PT$@(^(X>|^jcdY&S28oIa*i$eYd%v;3MzBdX zu5z0RWq%5OGVz{fmqZWD>fxL}vOy;@Hl)amYQc>DKX^m9QqxEd{RX^|${hm>M%=mJl-_BE&e|8>!@JhWL7=ubo<=m5p2>6gta?j0dyBJ?h>QeG=W)WxKX=q4@>HFyV z{E9sQ8|T?*y9Yy9AmK%IW_ljg z+{_5Q(o3fQ@Xg~wRqM%ULj-D2M%_&1LdBmuzra7d7%r`I+|@Yj>#)o(pU*Dn_( zNqV{}M#27-IKAojbga_5R!Em5Jrur4SS!89wrH%~8sjENN75xDt4)cjav@ zqyl}cqUH}Zfc(#Y4o;8BtE6Yaa62Z zACmmCC2Ce#Q9(NQ=84W3Z@*+-HA=3HU9AO)BWa?V%yFZ0mnhE3r=2SHQ`^1oBgS-) z8klXckTq2Xq++h+3GjzNijI*GFyg_!>-t&)i;c9$uG0zrJ5XaUxG>ufp?J-1_1d8Y zE4D3FOdaItfuL_${9qPWDw}J$Ph*wr8YE`CEH=O2x)5U*NizxMTngQ0kS7#WkZ`tJ@UVqzr z-e3I(0asD;Io3lsa9{b~0f}wzyTJ_qXaW8kRGtJmmvjmet%L;lc8?1uq4HpQxz`o8 z+hdW8CeFX>5C!&s(A`;w#ASC8t4A?Tsgf)YQ`JdTSAfz-6%{CR{<(j(u~{sjyEz9x zpOLea0UtXl-Czstig@lzz$oMqAGC(!V&>{(TAt7D#p&tR30SX0zWgU%6cMP4+E5V_ zr(-oo!3x}meIO_t5sQl6v=FT`Lucdq;nk0s5yXmg7kf2J89=M;*~+#S$!-vE=6KkC z&wEF6Y+EveYCDGM7ul+$sIa3+q^EUtbKOWrBQB>)rR1=WpXJ~l@tfCdoris{5HU`S z)KWPmDt>9^Acu-0>J~ftL~>j)1alHyMg2HRH~%D!W>y`~<1#$hPo-Hfg&Z4@G&*8m zf(*_SxOf<$Xb0$O60FcnLL9Q+$SWk)*8QxHyCu^p44J1>1G63qyvjnXeD{<`@O85-SEF{H3q@r)&$d1JP}ENUhSnWNskaTgr@MCAs*=k_x9p>T|@4g$Jhr)L0K;nwMPGDxZLUTY#p?Iu}!54~%;EqRzq#rq%M z7s$736$uae0+0q|Jzn3;) zpUS9q*-d|e&40slDSuV0PUOcyiV|ScwF!%g$xH?EXk0ghqZONR^&yem0qCaG{efH( z?KR#GXYrfffxpjA?C^G$%vG<^Gmb{)x{G@-7D{kYyvHbq)i=N+%hG4PVn;}m)ES77 z(VB01&z!@lscHD~&P;0V>H)@+yqd4TA}zcotdgnKDw7Bs4J}VO+>X}M9-jFJ4o%bl zpd|N|7ea9qQp3v20$GtTcB~9$Gd|qM5{!#q# zQL$anr3ecv8=DJf=B84IH$@ol5cOyo$h$8v=Fje+3$4xlX~byHROBB;$%ryY9P+Xd zu;6Sr%`#^{s?f+PHF)NCn+a>b$y^fv-8^+jV;JtnFuewNDcd@YK-%|vu{B?p<~937 z6d>a2zvBwLoC2Nxm|$~P?rYF_4-3->q`a&CtDV(GqF^oAoR6+#V)M76%vM`ut~Eu= z$%M7f9uuZIwm?uvzldcN(~#8FJ{*~GqlGr>v~YTup4zqH1j154tJMUe(Jyn6FAQ;3 z>#eOw0s0e}&|0aqQhiTsC18*-|CxV8Y~RWBR^m!UMF8lj_)aWLcVrgekW7=*2NQ?o zPTDaoKtDrz_>%FO?Oa*9=S1fNs>CD_?{#$0nJ!j2?8OH!Jp1FspguR^2wca436>3L`(viQ$8dK zx~~+Vqm5cO<5}co|;?k!_csEOwL#VKNw;M}eiMJCOAOKDHrV z_yiavYUQI>-S3G;sbGQ@?gR5GApxqWd>qp$E*2L_<$=v&ByK4m_Id;)QWKk?G!Uf;?g6|Vw0D5=30*Rb>}mKVf-0>{o-VrcKe9S?eB!z zE>L3rO|S@ySMHY)bN-S>ze;pH&hO53+%K$*n|Y%n+d$k$R>^Tejt_Bx&!($3qtK$( zNKI(dzDAz4BhtvT>bCwAtb2p?DN-|`y=K+{C~4?|NjO{^@aR6UBLdoI#~+`GV$Hof z&J|ZUP^S79P;*=OrvM}y4E8@}V{^cqy1H5wZ7FY!p)yU4;xjd>eRG|xN)cG@6*m}?Lg)(ss%+ecN*Dg%fo$mXf-c+C4W8YaFiIPg_U~>s(jIg%rdILkBn|v zd{-RqV3rdywx9eR;jT5VJrroEq*m6aQ$fe}Z5aOc%lA?OT!Cm0`2-tNO+DOky!0=g zp@^!Tty)`S{CH}@zC!<^VHBr9PaD(hlfD|)OtPaILM6gCE=_IYO3Z*zrEiB!7K~O>9mu!7rIjq5wbkY4Yxij8nopAbDR*VsfJDBDmO*_-qC| zb~d)Q;{R8$Rg(s&uI{d8J)4HklA03N|0I&}Yz^CB_2JeqfnuL6RGW>a&_%m_TSqmvO)AaN-x+b zST3#wsfhfRWh#oHgZDg(Z=JML?OATWajcGtO-M~8pXQpa!vzQ11pQx1N;6Y~cU|^R z4W>C>GA_9E6!bQYL#^52$9W0n7_8Lq-n)dvsDBEGFEH4Z&c{?|m4Ec5M?h#c@5$zg z3+*{QDy!$emMa}UsPp;|@Ku6P$V!N|x-~bmDdOy?Q{dGjj3ywRZEQX~y3tE+QYA}x zE^l*~yV^1x9NZ>aaTD$^2=)>Z6VEs+DnC-poqBiy=Cii8Hm~G2VA{))kbn-oghYW% zt?zv&(D~`!<3ff1>397X%^&FRng<4wGCCZgT{fry9m+wtX9KhZ_=Q;aeTX`cs|z*1g-bDx#(6o4bfuItTMi)qyrI-7y%XE)+cBM}iV zVCsOilG+-hCrlkL=<2e`5${DicB1sf0%nyeq`9pfT(1g6`sw6Ubq)yT4SBS_D~YM8 z=H;}5?J1~=yn}f}XvR}ZWOB6$5 zd+62`WX|8dP^f)>GYT-%AYd>@u-)_L3^ifv+mgUPE24Lh7r^j&I-Il_u46G%K!8D1Gc^x z)Kj-gx@{iVA|z-lYFeD{mWP-FH}HP^1c^lY;>mM%d8r(txgHx%(*&&tOQdP=M-#D+l;eubL6ae*6jSbMrcyw6C zQhB}xG5|Cco4?jQUp=^fXM#vz_u8X-{Uo|=PwSbct_bzG9b`Q%3VE*j>ux{U!%*>` zfXr-yNM&7=O$xgR43%u0AZ*7i=UHuPyE_7jw;*2l@V;ruw6%||SCdYSVRY;0(N)LL ztE!EIJ1Zcj!s(2FB!e>sdD|W9Qed;{>|S9^xB`!?J-fTGpoOYFkH)#rETC74@-}Y* z^|kEfenBpsG9X6Op8ehfqPXrI@yFi)X0zk?w4aB)i1|q?d+e!Mu;3P!U(OR&Xv5V> zA%Oyp$MCKY8O&xk1nNpk<1cRIQUpR4LSsR^QVRA*3QBiFvLySzdt7fpaM`BH$T4gl z^3u&XBsb)W*}r2|wX3 z?2EN)iA)soT&|Fg%XL|so;u6!z?Ce*t07>br!ZwUu>fCDR8)NPfoz|428x6Wr@26X;@ZT?dj*&(eWaY;GgIV0R#(^BLY% zZtdY3JYV#IwP6ih1&X>!xt`miX7>Kix=wf8_#_8`8~Op zg|tPU1Ku{97@d3bm7T!Xt}kf~_JK*oV~@hV=9XJ1+2v{eO76ltV}7de`(q~697>^e z2n7UC5(V99r&66N8K*L;H@UOh%FWIH#I;_$3%To>fv&D)Y*rL2&4_fRG&xKvh^Ggx z4k(f_xxCMS*9zh}%JU9NK;V9eKmYg_H#+AL!lob+9~l`E!kL2Nm-%9Gk|fHfeKKI| za8B@z?J*R|pUDPiX68P8V~Je+#^z$7ogFj4ns{|d8k*JYE^)N$qX!f0eskLSz1|A( zX870uX=KtXk82o?HEC3heL**>uAbSA&GSHQjXAP4wuI&)t)_)}Lz&k7Pj+z@M;D9i4di)jqzyHXIxBZUP&~#j zKBcE&-;xZG4TVjoru77(Vk?k|!b0lp@YC<8cl3w>B2?T6 z?H^vGZ6zX*je93fvv)x0{kw*c&5I=(uU>v%DPFnI1hlx73rOsw-*RjAtAJ$8i!QS> z8WLe$SYO2kx$XO|V_h_37UT~(oLz9E1^p!YT*&Wk)+2l#+k{T1_2x}nebfspuVyPj zu_a~G4K@FpR0`(u<&JLdA%k@OdoHQ&ba{DsY9|Zmfe*Mx(NPrhV?&hw{EHMk*IxLH zR6clM0h8ao@&y;K5{+w!`p6lE)U<-gSsvCOh$ygm3}m^V_mdVs;Z>vnl=!iAvaour z*nGs9DN}d7v^7Q3$t~;y&bzY2v=*dNVPV&bEc_|U7PACqZ-)bbZ{MfM_x=llCOIQ= z+cpVu-M*O9nc+L_8CG{S>*B-evM5Ety`1SJf+$kLR03t(g-dcG^y)GAtiY|`R>Wc5 z%WjJXoDl?CSOg+M1>^$QjeBqG+N6JM)5K65vt%H)HN~9(=%7rFa8DP* zrZipyY4)Vmwa~m>>O5Z7<~1xDv8RbnBj$hc83cL90nZ3);j|lrp zqgDI?v2m~<#RnLR5!8IAIp&MaGsqo{UH=7d3zify17T$apk{zpogZ+Z#u{H*b3YQy zSoN5-*9vB+9Fk9MZSZ_Q{krW22+lXf z2`qmxK{Jn)ENU^AJKiVR7VJNI^eBjvOoiM;v;rAa4HI2mjn>W4$gb@XdIHlLd!r*G zw^SufIrJ4e_X>|B1qw8V`BP>S7?e`{c8@xcGAF>&C^!rVkiw0EyP>2iwv1a_^Y>^N z)FoTjn+Sjk#0CYpgbaVZ!>X@6F9pT}bG; zH`}c}K#>I(BUbaw8&kzQyINXWDkHHF&7n+zb!fV}lg}eYF8!96{oh0Go-bq&zyFq? zjn+2Y{R$_LrQKT0_Aq6Q#?Nq?6eio~7 zjMsw&JmhF0$JWrX-{3m>Fg3j;6{Rv7wD3h(v^#`J>&Bb;uSHKF!-;6d2!D7SH5ARz zVTdtaawQTg7C|57HiF$a*jik;vh}$7Lg`(dcJM`5WC`NP`KRv1meupkr_JL^C+;7= zgN4P51@Tl^(0GrElEiYp)!cHpeU5y8;!c4F8ja5PTzAD@ai@M}$KoU!Q7utqF(%Pa z|2#947P`E%R(}?&-9|@|KE;>NaqnQ+B4u4qzsHZIs!O9sp5SJ?v?Fg#@di2vY$BsS< z6p-8O0^jWGW}Rw<8S;O(uiJ^T@`FWBPa3a%S`U&_VYwiC#e_?)!PT>%ZH!9h2-~NH zCB)AiMNw*AMW`S~wWtU6pqf8_d`~(K9OFq9&#mVXaunxi=-aj7_?>WaoPm^mS&1Rx zSjoeG>W{KdE^fNT2-HHbs3nUS4>u${uO3wEw=sOxz=@pCy0{wT=H@1Dhx)xt(Rh1x z%^+(>+SJm>Y^S@P@Wd#iv&!S?KkI-OZK%H!T-l3%ONJX>2fW+K6A1wRGoSf)5zG31 zBWeDC5|6X|kA6|yOm~N4sQ|Fq>8&1gj%o7Hy7TJFcm*{6%uUnX^{nY)YobnLvVn}+ zU-?kL_{k<;^pI#zVMJ-3|rS4&Q{8RCU*h0^~v8}Z;kv6!fQKudCQaScG^pKQ$GWZ ziVq8;iupSR&wD+oJn9WZ0lQ%bR3?-fYg6?%-r0o!@u^jzAPaR3uq03;+#JQCx|?97 zK*|{1iNYulErT$4>Gfvp!jJ9P2j3V7Nr!J10hk)li5aqEsIhXaFZV$6wkXz z7axrO^mY8X*VwOn>|1T`beUahsPh9kRt2xIPzk&)EItfng(rOFkzrI8uu3UjrY#b= zu7EpP?>f&jgO%!3^r5$A175gS#=1@yxt&nyRYZWt0y&F&LZ)b*)3}J1+gp7 z7xMhqK-AI!%_hISLDISSs`Igsrl{2>t*FUG9Yr;;S@4Wj6t7b; z>GQ%lwo*o8qYt|KD@aWaj(HU2kUm>_O!8`H&X?}%+!bC7>V?Nwne|dY6~K`VoC>k~ zZaFDR!TW3%91%1#AOW(g76|eiqrcyCWozEWbs zFk3j27cAp1bmQy+{)rcX{j9d5s2Ba1j-4nu4z-;QDEIBw32YL+>=6V;>Bhv6Q2)=x zOoVUNXqZCy+?U!^D~;A4+h?+PB z1VEccsv+qs*ap0R?fKTZ&2ecfID5~x-)?#x^0ubPe zfVuDlV@nBlG+(cb*<1IF3pgIbnK|#tlTX-*Ea`K(9ESmuar+;d=lFt>?MdnSI?RE4 zjkk9I%>-Np&mHlBXBFy)Axh&cI#oeXDjJKxqEiSQI+`N4EaK1EdsXI>L3#)W{Gdja z(*DC-KchM4PLxtI)i7qIAfzA{Xh|$)y>Nd(45Z|cwZHN9FE7;Wvi^Z&y zY_H+H0ctRYxA%T_Sc1v374AS%JcdHt0QidT33Pi6W7^d5Xpk$>_D4JiD6}8t`VrX; zsn?gfEg%8(X!*4VI%AU9!boE{@=!y0UN1X9gZy>}7$L-Oy$nqrpUn0r73#UJix7kV z*W#a)7=f-(*!7I9ald2W|Kp35CDV8&fgv+SL}OiMQ?HVn>>pp#w0fYH$y9G+RluKh zCk1W3jxC4&pG)_zz)w`PxC8a0^Loz^_v1QE2=Sn3^Gn+DW4OLKd~Zn0g#vKH>%}!@}&{+wn(Ju;LW+NPxBQEC%mU-*sZmkTGfl!g#et zB_N;&|GiL#K_}znag0`Uw#LSuyCZdV_hx5jzmi!ieg&PM*~4`Qhf~th(hq!xU$Zaz z0~+Rofvfgg2Mx^|w>AuCzB*ChfC2?l^;C_Oesv4#XLaQ5_zP5JUHVQGF9FSJ#d%A+ z4n4KZ9i-kYeqlIJbpTmKBj@ZFx95fq4qC4@qY>$nfK?dkdj|(e`;R()z{&KbQc7_h zESl8{WsPOkEH!0+*F~Pn`K{BcL1E{s!Fx=!Iu9 zwrF?NEsKKDZYD}aojC{n&-*@Dc$7eUZLsG05sxe_BWjhEl@bz#m6ZpP$!WxNC$-Cs zwRYUN{h+qTGp`+ec%gqD+cf34#;y6`g}u?ZwRoJu=b_N1#nXjya%ZYB&zNPr{Cybe zT}n5zESrSO`}4yXwVl3mfndVm9@hV+@brH=7jiNx2uwDTdGxDjMfQ_-p-pEe*-sC1 z{6GFmbNX21xZmG0$~B9{Gf8geb2{bpLifDMN0y6wdwcaW_C7g8{D4hk5?(SLaeWwh zc=(yjm5Og9+#J_%G_rPTiHt|8!@`d3+9DwE+j?26skn>1JkCc94Gq7xv_vuHFgW4M zn(V>B*Vp%&t*z~i+o$M$=}boi=^kRfQ_jo4?!j@9-w2-^R2`1oU3ES-?!|!i*aQC& zUirDfgfmlK+b3lo?0jDS=y|-~6~0U38}1b=?%>^4xBH`{T-Dd>X+wGyd)7<@)k`G% zTdDi_627LK&dWZPotlv`jiaTqGLdN<*0>t+<3pj5g~{R1Cg?^c6DB=CAT))h20uwf zR=wVnTawZ})dz-#zELrF^DaIDj=2}M5>1nZnTsxYx*v>Iw_ju}__|MChM6&@eLa4n4ubT|liaVGuz$ zJS-(4k#ZSp`M7fltST}-n19AN#ME_C>CZVck(G3qJq?o|JBKT6SnPMhmt$GTAid0Kfgheudvw`aNv>>-X^g{%$Gu4qc=rwJ84ICv8=%4^#1IJmN7r z?oo)L4T*Hj?^Uh~FFHzG)VJ|ReUm9KI!gb^3Y1{aX4qn3QssTux6aPEOHO*a84N5# zm2cP3m%g>iy;nuP-O|Vl3LIOw^y!FIA4Tg9=X!PlnUv-HR8_#@#jKlUrk=mx-WqqhNrZG z4?C@BXtkE(3upPOw0LQsHnNJxl_8?M<7e_qFZsnvE~1$=3`Rq0=WA`;k!=DC7(7C& ze&V}IC$Q!~@e#Bt&LWDj=={YczvsxdW*X)m9K02ec-Z*XaLzA@;rO%|%dt`%89)X8Id6d{c ziQtUSB)fPVA_X6!d+=^%<_Eq+eB_t$b9#12Q4;GDo~-~x?f-=5;$@HjAKU4F;}v}3 zspH04jvqG0HCyOMn*v5>KR;>iXn{LFm8{;J)PP>ue#>+U{AaZFL+ss7o;VYd%M%+&$ z=4FRg@abcuk}-pc)f~r!=IioZpzP@ArX0-HKys7sZtp~&QEKY)Lj_eBJsCfs`m~0& zVwu10VF6O5sCMN13XT+nKdq5b7{QC8#Wzcb8IAD0g-H)SJ zg8cn0)|7$B7w+H9yP^1=u|UjPkX-$9VIo0f-_lxD)S&97w#@xg-fBCAQx%r$c=NIqutx?}qE@`3X{ReD81KU$ZpbafXsFf~Wg3}3vFkT~;K+Cw|-H3yo@ znhU4f_Spb|HWRf#OyI{e#AEso!inB$5)yH#kD1%?)82ij1L-^t$Yt~`2n=hIeynUp zygWuSNX)EngYWfZeoOe3w_;;d(^b0*NPb>7Sc$7zvRqAmg>=))R8&X>ZytAE=gn|* zYh;7nG>*s(cW_Bq>rF@2_en3)h7br=c8|O(t*3n}B^Ff_(90g;JEiB~HtOm=QW!1G znz%z$_A(?b{V45GgMlQA3(3SL8>e1$vq5Slx`=v_8DS|eCiJrliEhQ5vi=ntw4@+%>u&P8+Vi*R z9G7;5$?~Jn4;3D!TN;0d2YhauK*iadYtP@A(3&u*frRo`te3Sj<(j-F3XT#X)m%2G zwVa7jjWwGrAC>xc3r~3hqf-(A`i03XH9*0doIxpX8TfJG!XK9gSqzW z3l?-4q)aOAjh1Tlg11j3x6clF6m>l;_I0#Q<_|9ZWq4Tto@ivfbjol z?n;B2%GT`xRJ27Ap#?!mi!`7#(6O08f(i=S1P~cSlu1;GAtEvl!KRfN1R78of;fO8 ziBTYo2{u9mg&6X z1wHD9M{^0WFf7432rz{;lc2?%5Ajc<#Uc^n>It62Hp)d))m&q&-KFmRgdT)Ghi<#B zY{SIlaOrydmG7r^-`hfuY0Oz?aNnRNb>&x!bMe6@v z5Vm3H*vbE-em){9jmnh`jW|=dS{{5i$P(auISg>YvbM5spOJ#MUksf1P$fyF@B9Sf7>?IXA~F}!8b}c zj2pG7gSw_~b1`9b`QyCf+u7LoymPV^Y36n+03Q+4>(kHjFvIS@p(lIVUTkl;9-3GF z%71YEXM0_-b?9C3m3DekjLprCNUyP$ zg`94Cs0Ur{M&$3dNW1iC${l?-`7j%n8L~JFIis@4zRLqFM3>6YlMKr93dV|KX2nV7j4TtIBVGm{_ zncm|w5tGfvf<2jdi@5c@E^LH?H-6AB@!iTY!;d5xCO)2vjuijF+8%5P33}nVz!3CE zMr>72IA)ZWl5q4~&wAhXBzWSk(Q_!tAjp|l)#CzhvYbWPv@T+O9+0`N-b)9+D@&#r z$$6QN`WzmjG9yf7(~95|He5bW-d51P$ebu=z2{9nXmab0I6odr?!tr1ZfI!e*bI4n z7*USSG7WjgH_mJOjG%N*6yvdolnM?neJ)aNt)k;Ff2G_3`T|PfBFD9fIX^<-lcI*) zGzd5vE0JCnhoBw}El_%8rmyIp1mBHK=`JI}u>I`@e73F3?b`5FWJ2LCuMc0()G^ry zuBJc8)n^~p;g=@Mn!zkTQjJ_J@B||?|DoA77u1vf=~Fd>j{2N1JYRA?vHoL`Wh8Ib zC?9k$@*2-6+VRJ~aT}Pvg)T;)4${zQ6P9HOY1b~l>qnf8Y|C6U=a(t+ZDlDoY>E-6 z;QiwPn03=@v{V#L?zN+!gn*h7V<3Ut5~mp9B&37={U5$U2OHvjO;3;;bHt#m?!CWn zy-+{@?2*>9$RPtefr0KfLzbp5*lR1qeo?IO{XZ>og_i*8s`ye~>*$^!W&DE-EHR%vrul-S1*-F1i^?47- z*ssmwN{`QspjsP(`I77GA@$%WxjR6?-1exP57cbIF-TV5$Lt4!sl4vJK%uw~wOmT% zJNUoic+vtUGvf-2SGJkSSOlVx=1OW<|9$UI^I%kB+pan0A|1YEPX^@yN^`HORtl49 zNWH_CY_J_M$hvf|cuG*6B67MM8x4OM2)$FQ3P=CB_m0N_C)E@yxjP*IAALJPm7fmE z*@lq!PLlE;N%vT|DS9XpljIX3sj$FIxq3k@y72;Co)do|T_siH6wmDWL;b;|$@bm^Xf zpsK`l%O5DlY9pDITPj)~;IuEH(D}U6YWLlzX!#`%xl=M0;)Z)KKl)%{SLVM!crp}J zJ?7AvDVGcev3qG|Nl8g#uLc$d6!x89Vh|sHQtnQs}f%gx6OwlI15h}ra5S56pGRp77(y_cKw#gO27|^UVpZ>TIbbtR=!!T-?2rE z2-Jk5mbSJAV|;9E%riXZO+i-sLFL0ZTBF>eCr`oak|~Z(G(NeXE3-Kdd9p(%(}V`p zh!0pvfhKhOYF1=?6%g^J7U7DR82Y%wC-s0qzhJbeZ)s+s`lZfHA5^KF*V$Z&d=yM7 z%>+CkTfq7=J4^2($_+d6X_V^T)1hZQ_poB1BB#fPxa2&#{xXZkc&m2=F)G#(SZjKQiWUKZSOav7P zva^l)hvoWm`B>Mi@e@~STf1-b-7tyv1LGyZ&^KNI;{*v9xU3&76&j(`D|cYfJ4 zA7^5^TPF`WHZpQ73I4pJfO1B2Vd;I9Rr*xk)(nr4u)6#>lOqd{CfF4)EV#2JB^scg zu$%`?FsL93Bq@Q6WFOBQ0|bG;(+v2OpPSwZ6^aRRAsG&ApBfLt8v-W=gwGIfH{bvT zv@twBej*7DY}#mO)ZPB0b%eSfXaUWyeocbk2ncv|c|m(YhhGs%?pnQ7G4G_0)i^We z7U}%aTtR1WW=ZhsuYPvCHLsm$M(_lqf20ZspGD>zv7bh(uGBlabr!anBe~*GLFj-; z{j)wJA+10Lku`$T^}a)4vcn{}htdlZCdu3cQ}{m-nV*w2(Hx@PB2xqE~9K ziW@DD7UjO;x_~2&u%oqj7WeWwbBdTFt~^nsQ^RBy9If0}kb-BrAc7 zLH@&aJFDFJRKI>)<9Xc11s=B$Pp6AA}yyHCFuh16&%Gd~4&@VXJ zkN;2@x09$|Qc`)#esU#;D0#?x=0M{%^ws`zzaxC5IUP%JQO zRy5yd#`%~94xQ@@(|lz&4#xCsiEqpe$^nPf-*e6@+~RZ8m?nuwXMNgM?2i_SZj{nTeHxL{-P-UIxG81;pT zh%ewcMX_{`krpQ>UF))FufUdN8>l|#FR5QX!4t8Cv0?3rT!f_BqA_HkMgDS-uNG($ z(-MF;*wQ61V#8d3;ztts+n^9>#4f}AN1id=--*alqq%M;zv|_|gFT2;NC=38>;Kq_ zTZobWCrY3jR*Qm)Z4$qRT2tnd7;r|Gj=PX)XIsK98#E4XKUlZ;-E1H#ihKDnUc6mTb z3LwpLN}l>qZH=Sg#iGACV#gmzI;f*OMA*zCj4e0U(d_2XZ!bvx^tTZ>7@Zd;Y~rhB zo+!ysG=8mRZGWG}3Y>oM9T1!#_EKqPK3+UIpGsvm9xd45hM4$;Wur2lPBa}ex#WrU zTfjY?cvIp3VPmcTDZd=ZYg+*=9M3O#O60rc*p6l7atZYf4Kbh`^o@X!r*q=wgjNA| zkm43&PY`5mg#eMeo8lc-3IKd@Ph6!-}(Ev>UAm}x3QZ<*k;(S7i5!!SF^ zAb=FiSM|xoS(J9~SwWA>ePmI%U}NHD^-4e_Z8Y_s}fvn?mesp)Y0fJdt3J8W9{{H)wmFHP&1!^o|NS_8~?HX@o$7``i zsFhAi;o5aiE%aJ||GyA{Niyt(7qs9a4}sE2Y6Xj`B6~jruMdQZECXR;@{`umH<-87 z1kdgvtS5?DPoeCQ zK7YY#2E5t=!=e0>JTU`{Thb{9df%jqc$H=XV(z^k=pkoH-ecK5ir4j+SWE;JVs~W1 zA)nZB~!Y$DsNiN41(BmvieE`?vWV7jcjh zbyO2<-}lB&nvIRg1jXW%olIsIwr236FGlJipD24L)z3uqcc-z8fztd9{cR1lQy-pF zjwt@OA%E4Hfh|zws4$-M%jv))d{gN(Bwxf`QcVil*mN^z^{~j1pRi-0oy|q+3FY9@ zfoS$s747Luo@5%BS}KfY3^e-Jc2>}=L16LJSX069AzyN;s>UXV?PfoncnyCPD`E21 z0)p}N6|v6*JBqRHDA2T$l9KtT{|!OM`o<)m*UJDNcEsG?bhx$xc^dZEhdUJ?@|Vr- zak1*WIg7(ifx^=_T@iQ9O)wp_UJ&fAqd~%cddgkZDW|~4KXI|EGlQQIf-0Ox>GxhA zz^7i#WD5OQeJWiy8Q~5S_UG12IqNiUQhsMr;5_<1i*u%CkHvmTNy*brBFXS{7NA-tL4D2^bc^?hJ>=g~%mwWCDWWD6x9SnzBo-}Jbf*J!-j$Hn z$I-l(1Ct|%`X_*w8ggO*u`8scic$<6t$GCDRldLY6q(0ks)Kuz2%n*Pb976={)b31 z2>RTy+th*dXP`g!RtO0ut<-c?Yj!hsvt>=jHmII>`c8ZamzZl*A@X8DT7zKnCTv1i zll|g!iim-XXtduZs5Tz4&Hu3I61X{?C!zLaA?gYwM9fGTfV6}^tRE1*|NBVfU=x*3 VasGT!Z6o};l?Boqf6V>2{{m;Bbl?C0 From 8d067d2fd831c7f4f05b0363d974b0c3471bb92e Mon Sep 17 00:00:00 2001 From: Varoxus <46449731+Varoxus@users.noreply.github.com> Date: Wed, 6 Mar 2024 19:13:13 -0600 Subject: [PATCH 33/52] Update breasts.dm probably should be set to the actual max value rather than higher than the max --- code/modules/arousal/organs/breasts.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/arousal/organs/breasts.dm b/code/modules/arousal/organs/breasts.dm index 57f2d679d33..8a296ac4b41 100644 --- a/code/modules/arousal/organs/breasts.dm +++ b/code/modules/arousal/organs/breasts.dm @@ -149,7 +149,7 @@ GLOBAL_LIST_INIT(massive_breast_descriptors, list( return if(new_value == cached_size) return - new_value = clamp(new_value, 0, 20) + new_value = clamp(new_value, 0, 19) prev_size = cached_size cached_size = new_value update() From e6e1d016788d495041f77b4c01d5760ec67f88c8 Mon Sep 17 00:00:00 2001 From: FluffyTox Date: Wed, 6 Mar 2024 19:45:05 -0600 Subject: [PATCH 34/52] (MERGE SMELLEH) Shotgun class fix Fixes the shotgun class cause it smelly --- code/modules/projectiles/guns/ballistic/shotgun.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm index 1ad0fad60f4..dbc9f1562aa 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/ballistic/shotgun.dm @@ -684,7 +684,7 @@ icon_state = "needlesg" item_state = "needlesg" mag_type = /obj/item/ammo_box/magazine/internal/shot/needler - weapon_class = WEAPON_CLASS_NORMAL + weapon_class = WEAPON_CLASS_RIFLE weapon_weight = GUN_TWO_HAND_ONLY init_firemodes = list( /datum/firemode/semi_auto/slow From a9e305681f2d54097dd7cbd3c15fc54f5afe7a5e Mon Sep 17 00:00:00 2001 From: Dameon Owen Date: Wed, 6 Mar 2024 21:08:36 -0500 Subject: [PATCH 35/52] Update the forbidden javascript --- tgui/public/tgui-common.bundle.js | 1 + tgui/public/tgui.bundle.css | 12 ++++++++++++ tgui/public/tgui.bundle.js | 1 + 3 files changed, 14 insertions(+) create mode 100644 tgui/public/tgui-common.bundle.js create mode 100644 tgui/public/tgui.bundle.css create mode 100644 tgui/public/tgui.bundle.js diff --git a/tgui/public/tgui-common.bundle.js b/tgui/public/tgui-common.bundle.js new file mode 100644 index 00000000000..14254837b6a --- /dev/null +++ b/tgui/public/tgui-common.bundle.js @@ -0,0 +1 @@ +(self.webpackChunktgui_workspace=self.webpackChunktgui_workspace||[]).push([["tgui-common"],{46877:function(e,t,n){"use strict";t.__esModule=!0,t.createPopper=void 0,t.popperGenerator=v;var r=d(n(86310)),o=d(n(99470)),i=d(n(24403)),a=d(n(84416)),u=(d(n(59493)),d(n(3738))),s=d(n(82053)),c=(d(n(53131)),d(n(13611)),d(n(63992)),d(n(76197))),l=d(n(76316));t.detectOverflow=l["default"];var f=n(50695);n(63570);function d(e){return e&&e.__esModule?e:{"default":e}}var p={placement:"bottom",modifiers:[],strategy:"absolute"};function h(){for(var e=arguments.length,t=new Array(e),n=0;n0&&(0,o.round)(u.width)/e.offsetWidth||1,c=e.offsetHeight>0&&(0,o.round)(u.height)/e.offsetHeight||1);var l=((0,r.isElement)(e)?(0,i["default"])(e):window).visualViewport,f=!(0,a["default"])()&&n,d=(u.left+(f&&l?l.offsetLeft:0))/s,p=(u.top+(f&&l?l.offsetTop:0))/c,h=u.width/s,v=u.height/c;return{width:h,height:v,top:p,right:d+h,bottom:p+v,left:d,x:d,y:p}};var r=n(50695),o=n(49055),i=u(n(34510)),a=u(n(55812));function u(e){return e&&e.__esModule?e:{"default":e}}},96087:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t,n,r){var o="clippingParents"===t?function(e){var t=(0,a["default"])((0,d["default"])(e)),n=["absolute","fixed"].indexOf((0,c["default"])(e).position)>=0,r=n&&(0,l.isHTMLElement)(e)?(0,u["default"])(e):e;if(!(0,l.isElement)(r))return[];return t.filter((function(e){return(0,l.isElement)(e)&&(0,p["default"])(e,r)&&"body"!==(0,h["default"])(e)}))}(e):[].concat(t),i=[].concat(o,[n]),s=i[0],f=i.reduce((function(t,n){var o=y(e,n,r);return t.top=(0,m.max)(o.top,t.top),t.right=(0,m.min)(o.right,t.right),t.bottom=(0,m.min)(o.bottom,t.bottom),t.left=(0,m.max)(o.left,t.left),t}),y(e,s,r));return f.width=f.right-f.left,f.height=f.bottom-f.top,f.x=f.left,f.y=f.top,f};var r=n(63570),o=g(n(93596)),i=g(n(48532)),a=g(n(24403)),u=g(n(84416)),s=g(n(45385)),c=g(n(59493)),l=n(50695),f=g(n(41012)),d=g(n(1534)),p=g(n(1676)),h=g(n(72417)),v=g(n(1656)),m=n(49055);function g(e){return e&&e.__esModule?e:{"default":e}}function y(e,t,n){return t===r.viewport?(0,v["default"])((0,o["default"])(e,n)):(0,l.isElement)(t)?function(e,t){var n=(0,f["default"])(e,!1,"fixed"===t);return n.top=n.top+e.clientTop,n.left=n.left+e.clientLeft,n.bottom=n.top+e.clientHeight,n.right=n.left+e.clientWidth,n.width=e.clientWidth,n.height=e.clientHeight,n.x=n.left,n.y=n.top,n}(t,n):(0,v["default"])((0,i["default"])((0,s["default"])(e)))}},86310:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t,n){void 0===n&&(n=!1);var f=(0,a.isHTMLElement)(t),d=(0,a.isHTMLElement)(t)&&function(e){var t=e.getBoundingClientRect(),n=(0,l.round)(t.width)/e.offsetWidth||1,r=(0,l.round)(t.height)/e.offsetHeight||1;return 1!==n||1!==r}(t),p=(0,s["default"])(t),h=(0,r["default"])(e,d,n),v={scrollLeft:0,scrollTop:0},m={x:0,y:0};(f||!f&&!n)&&(("body"!==(0,i["default"])(t)||(0,c["default"])(p))&&(v=(0,o["default"])(t)),(0,a.isHTMLElement)(t)?((m=(0,r["default"])(t,!0)).x+=t.clientLeft,m.y+=t.clientTop):p&&(m.x=(0,u["default"])(p)));return{x:h.left+v.scrollLeft-m.x,y:h.top+v.scrollTop-m.y,width:h.width,height:h.height}};var r=f(n(41012)),o=f(n(29806)),i=f(n(72417)),a=n(50695),u=f(n(47948)),s=f(n(45385)),c=f(n(63937)),l=n(49055);function f(e){return e&&e.__esModule?e:{"default":e}}},59493:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(0,o["default"])(e).getComputedStyle(e)};var r,o=(r=n(34510))&&r.__esModule?r:{"default":r}},45385:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(((0,r.isElement)(e)?e.ownerDocument:e.document)||window.document).documentElement};var r=n(50695)},48532:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t,n=(0,r["default"])(e),s=(0,a["default"])(e),c=null==(t=e.ownerDocument)?void 0:t.body,l=(0,u.max)(n.scrollWidth,n.clientWidth,c?c.scrollWidth:0,c?c.clientWidth:0),f=(0,u.max)(n.scrollHeight,n.clientHeight,c?c.scrollHeight:0,c?c.clientHeight:0),d=-s.scrollLeft+(0,i["default"])(e),p=-s.scrollTop;"rtl"===(0,o["default"])(c||n).direction&&(d+=(0,u.max)(n.clientWidth,c?c.clientWidth:0)-l);return{width:l,height:f,x:d,y:p}};var r=s(n(45385)),o=s(n(59493)),i=s(n(47948)),a=s(n(63365)),u=n(49055);function s(e){return e&&e.__esModule?e:{"default":e}}},15346:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return{scrollLeft:e.scrollLeft,scrollTop:e.scrollTop}}},99470:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=e.offsetWidth,r=e.offsetHeight;Math.abs(t.width-n)<=1&&(n=t.width);Math.abs(t.height-r)<=1&&(r=t.height);return{x:e.offsetLeft,y:e.offsetTop,width:n,height:r}};var r,o=(r=n(41012))&&r.__esModule?r:{"default":r}},72417:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e?(e.nodeName||"").toLowerCase():null}},29806:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return e!==(0,o["default"])(e)&&(0,i.isHTMLElement)(e)?(0,a["default"])(e):(0,r["default"])(e)};var r=u(n(63365)),o=u(n(34510)),i=n(50695),a=u(n(15346));function u(e){return e&&e.__esModule?e:{"default":e}}},84416:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,r["default"])(e),n=f(e);for(;n&&(0,u["default"])(n)&&"static"===(0,i["default"])(n).position;)n=f(n);if(n&&("html"===(0,o["default"])(n)||"body"===(0,o["default"])(n)&&"static"===(0,i["default"])(n).position))return t;return n||function(e){var t=/firefox/i.test((0,c["default"])());if(/Trident/i.test((0,c["default"])())&&(0,a.isHTMLElement)(e)){if("fixed"===(0,i["default"])(e).position)return null}var n=(0,s["default"])(e);(0,a.isShadowRoot)(n)&&(n=n.host);for(;(0,a.isHTMLElement)(n)&&["html","body"].indexOf((0,o["default"])(n))<0;){var r=(0,i["default"])(n);if("none"!==r.transform||"none"!==r.perspective||"paint"===r.contain||-1!==["transform","perspective"].indexOf(r.willChange)||t&&"filter"===r.willChange||t&&r.filter&&"none"!==r.filter)return n;n=n.parentNode}return null}(e)||t};var r=l(n(34510)),o=l(n(72417)),i=l(n(59493)),a=n(50695),u=l(n(91285)),s=l(n(1534)),c=l(n(77708));function l(e){return e&&e.__esModule?e:{"default":e}}function f(e){return(0,a.isHTMLElement)(e)&&"fixed"!==(0,i["default"])(e).position?e.offsetParent:null}},1534:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){if("html"===(0,r["default"])(e))return e;return e.assignedSlot||e.parentNode||((0,i.isShadowRoot)(e)?e.host:null)||(0,o["default"])(e)};var r=a(n(72417)),o=a(n(45385)),i=n(50695);function a(e){return e&&e.__esModule?e:{"default":e}}},6072:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function s(e){if(["html","body","#document"].indexOf((0,i["default"])(e))>=0)return e.ownerDocument.body;if((0,a.isHTMLElement)(e)&&(0,o["default"])(e))return e;return s((0,r["default"])(e))};var r=u(n(1534)),o=u(n(63937)),i=u(n(72417)),a=n(50695);function u(e){return e&&e.__esModule?e:{"default":e}}},93596:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t){var n=(0,r["default"])(e),u=(0,o["default"])(e),s=n.visualViewport,c=u.clientWidth,l=u.clientHeight,f=0,d=0;if(s){c=s.width,l=s.height;var p=(0,a["default"])();(p||!p&&"fixed"===t)&&(f=s.offsetLeft,d=s.offsetTop)}return{width:c,height:l,x:f+(0,i["default"])(e),y:d}};var r=u(n(34510)),o=u(n(45385)),i=u(n(47948)),a=u(n(55812));function u(e){return e&&e.__esModule?e:{"default":e}}},34510:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){if(null==e)return window;if("[object Window]"!==e.toString()){var t=e.ownerDocument;return t&&t.defaultView||window}return e}},63365:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=t.pageXOffset,r=t.pageYOffset;return{scrollLeft:n,scrollTop:r}};var r,o=(r=n(34510))&&r.__esModule?r:{"default":r}},47948:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return(0,r["default"])((0,o["default"])(e)).left+(0,i["default"])(e).scrollLeft};var r=a(n(41012)),o=a(n(45385)),i=a(n(63365));function a(e){return e&&e.__esModule?e:{"default":e}}},50695:function(e,t,n){"use strict";t.__esModule=!0,t.isElement=function(e){var t=(0,o["default"])(e).Element;return e instanceof t||e instanceof Element},t.isHTMLElement=function(e){var t=(0,o["default"])(e).HTMLElement;return e instanceof t||e instanceof HTMLElement},t.isShadowRoot=function(e){if("undefined"==typeof ShadowRoot)return!1;var t=(0,o["default"])(e).ShadowRoot;return e instanceof t||e instanceof ShadowRoot};var r,o=(r=n(34510))&&r.__esModule?r:{"default":r}},55812:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(){return!/^((?!chrome|android).)*safari/i.test((0,o["default"])())};var r,o=(r=n(77708))&&r.__esModule?r:{"default":r}},63937:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=(0,o["default"])(e),n=t.overflow,r=t.overflowX,i=t.overflowY;return/auto|scroll|overlay|hidden/.test(n+i+r)};var r,o=(r=n(59493))&&r.__esModule?r:{"default":r}},91285:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return["table","td","th"].indexOf((0,o["default"])(e))>=0};var r,o=(r=n(72417))&&r.__esModule?r:{"default":r}},24403:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function s(e,t){var n;void 0===t&&(t=[]);var u=(0,r["default"])(e),c=u===(null==(n=e.ownerDocument)?void 0:n.body),l=(0,i["default"])(u),f=c?[l].concat(l.visualViewport||[],(0,a["default"])(u)?u:[]):u,d=t.concat(f);return c?d:d.concat(s((0,o["default"])(f)))};var r=u(n(6072)),o=u(n(1534)),i=u(n(34510)),a=u(n(63937));function u(e){return e&&e.__esModule?e:{"default":e}}},63570:function(e,t){"use strict";t.__esModule=!0,t.write=t.viewport=t.variationPlacements=t.top=t.start=t.right=t.reference=t.read=t.popper=t.placements=t.modifierPhases=t.main=t.left=t.end=t.clippingParents=t.bottom=t.beforeWrite=t.beforeRead=t.beforeMain=t.basePlacements=t.auto=t.afterWrite=t.afterRead=t.afterMain=void 0;t.top="top";var n="bottom";t.bottom=n;var r="right";t.right=r;var o="left";t.left=o;var i="auto";t.auto=i;var a=["top",n,r,o];t.basePlacements=a;var u="start";t.start=u;var s="end";t.end=s;t.clippingParents="clippingParents";t.viewport="viewport";t.popper="popper";t.reference="reference";var c=a.reduce((function(e,t){return e.concat([t+"-"+u,t+"-"+s])}),[]);t.variationPlacements=c;var l=[].concat(a,[i]).reduce((function(e,t){return e.concat([t,t+"-"+u,t+"-"+s])}),[]);t.placements=l;var f="beforeRead";t.beforeRead=f;var d="read";t.read=d;var p="afterRead";t.afterRead=p;var h="beforeMain";t.beforeMain=h;var v="main";t.main=v;var m="afterMain";t.afterMain=m;var g="beforeWrite";t.beforeWrite=g;var y="write";t.write=y;var b="afterWrite";t.afterWrite=b;var x=[f,d,p,h,v,m,g,y,b];t.modifierPhases=x},42346:function(e,t,n){"use strict";t.__esModule=!0;var r={popperGenerator:!0,detectOverflow:!0,createPopperBase:!0,createPopper:!0,createPopperLite:!0};t.popperGenerator=t.detectOverflow=t.createPopperLite=t.createPopperBase=t.createPopper=void 0;var o=n(63570);Object.keys(o).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===o[e]||(t[e]=o[e]))}));var i=n(73694);Object.keys(i).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===i[e]||(t[e]=i[e]))}));var a=n(46877);t.popperGenerator=a.popperGenerator,t.detectOverflow=a.detectOverflow,t.createPopperBase=a.createPopper;var u=n(28153);t.createPopper=u.createPopper;var s=n(3922);t.createPopperLite=s.createPopper},43154:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=(r=n(72417))&&r.__esModule?r:{"default":r},i=n(50695);var a={name:"applyStyles",enabled:!0,phase:"write",fn:function(e){var t=e.state;Object.keys(t.elements).forEach((function(e){var n=t.styles[e]||{},r=t.attributes[e]||{},a=t.elements[e];(0,i.isHTMLElement)(a)&&(0,o["default"])(a)&&(Object.assign(a.style,n),Object.keys(r).forEach((function(e){var t=r[e];!1===t?a.removeAttribute(e):a.setAttribute(e,!0===t?"":t)})))}))},effect:function(e){var t=e.state,n={popper:{position:t.options.strategy,left:"0",top:"0",margin:"0"},arrow:{position:"absolute"},reference:{}};return Object.assign(t.elements.popper.style,n.popper),t.styles=n,t.elements.arrow&&Object.assign(t.elements.arrow.style,n.arrow),function(){Object.keys(t.elements).forEach((function(e){var r=t.elements[e],a=t.attributes[e]||{},u=Object.keys(t.styles.hasOwnProperty(e)?t.styles[e]:n[e]).reduce((function(e,t){return e[t]="",e}),{});(0,i.isHTMLElement)(r)&&(0,o["default"])(r)&&(Object.assign(r.style,u),Object.keys(a).forEach((function(e){r.removeAttribute(e)})))}))}},requires:["computeStyles"]};t["default"]=a},82562:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r=d(n(63992)),o=d(n(99470)),i=d(n(1676)),a=d(n(84416)),u=d(n(63185)),s=n(54155),c=d(n(45499)),l=d(n(92806)),f=n(63570);n(50695);function d(e){return e&&e.__esModule?e:{"default":e}}var p=function(e,t){return e="function"==typeof e?e(Object.assign({},t.rects,{placement:t.placement})):e,(0,c["default"])("number"!=typeof e?e:(0,l["default"])(e,f.basePlacements))};var h={name:"arrow",enabled:!0,phase:"main",fn:function(e){var t,n=e.state,i=e.name,c=e.options,l=n.elements.arrow,d=n.modifiersData.popperOffsets,h=(0,r["default"])(n.placement),v=(0,u["default"])(h),m=[f.left,f.right].indexOf(h)>=0?"height":"width";if(l&&d){var g=p(c.padding,n),y=(0,o["default"])(l),b="y"===v?f.top:f.left,x="y"===v?f.bottom:f.right,w=n.rects.reference[m]+n.rects.reference[v]-d[v]-n.rects.popper[m],E=d[v]-n.rects.reference[v],_=(0,a["default"])(l),D=_?"y"===v?_.clientHeight||0:_.clientWidth||0:0,C=w/2-E/2,k=g[b],A=D-y[m]-g[x],S=D/2-y[m]/2+C,N=(0,s.within)(k,S,A),O=v;n.modifiersData[i]=((t={})[O]=N,t.centerOffset=N-S,t)}},effect:function(e){var t=e.state,n=e.options.element,r=void 0===n?"[data-popper-arrow]":n;null!=r&&("string"!=typeof r||(r=t.elements.popper.querySelector(r)))&&(0,i["default"])(t.elements.popper,r)&&(t.elements.arrow=r)},requires:["popperOffsets"],requiresIfExists:["preventOverflow"]};t["default"]=h},94698:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0,t.mapToStyles=p;var r=n(63570),o=f(n(84416)),i=f(n(34510)),a=f(n(45385)),u=f(n(59493)),s=f(n(63992)),c=f(n(4529)),l=n(49055);function f(e){return e&&e.__esModule?e:{"default":e}}var d={top:"auto",right:"auto",bottom:"auto",left:"auto"};function p(e){var t,n=e.popper,s=e.popperRect,c=e.placement,f=e.variation,p=e.offsets,h=e.position,v=e.gpuAcceleration,m=e.adaptive,g=e.roundOffsets,y=e.isFixed,b=p.x,x=void 0===b?0:b,w=p.y,E=void 0===w?0:w,_="function"==typeof g?g({x:x,y:E}):{x:x,y:E};x=_.x,E=_.y;var D=p.hasOwnProperty("x"),C=p.hasOwnProperty("y"),k=r.left,A=r.top,S=window;if(m){var N=(0,o["default"])(n),O="clientHeight",F="clientWidth";if(N===(0,i["default"])(n)&&(N=(0,a["default"])(n),"static"!==(0,u["default"])(N).position&&"absolute"===h&&(O="scrollHeight",F="scrollWidth")),c===r.top||(c===r.left||c===r.right)&&f===r.end)A=r.bottom,E-=(y&&N===S&&S.visualViewport?S.visualViewport.height:N[O])-s.height,E*=v?1:-1;if(c===r.left||(c===r.top||c===r.bottom)&&f===r.end)k=r.right,x-=(y&&N===S&&S.visualViewport?S.visualViewport.width:N[F])-s.width,x*=v?1:-1}var M,T=Object.assign({position:h},m&&d),I=!0===g?function(e){var t=e.x,n=e.y,r=window.devicePixelRatio||1;return{x:(0,l.round)(t*r)/r||0,y:(0,l.round)(n*r)/r||0}}({x:x,y:E}):{x:x,y:E};return x=I.x,E=I.y,v?Object.assign({},T,((M={})[A]=C?"0":"",M[k]=D?"0":"",M.transform=(S.devicePixelRatio||1)<=1?"translate("+x+"px, "+E+"px)":"translate3d("+x+"px, "+E+"px, 0)",M)):Object.assign({},T,((t={})[A]=C?E+"px":"",t[k]=D?x+"px":"",t.transform="",t))}var h={name:"computeStyles",enabled:!0,phase:"beforeWrite",fn:function(e){var t=e.state,n=e.options,r=n.gpuAcceleration,o=void 0===r||r,i=n.adaptive,a=void 0===i||i,u=n.roundOffsets,l=void 0===u||u,f={placement:(0,s["default"])(t.placement),variation:(0,c["default"])(t.placement),popper:t.elements.popper,popperRect:t.rects.popper,gpuAcceleration:o,isFixed:"fixed"===t.options.strategy};null!=t.modifiersData.popperOffsets&&(t.styles.popper=Object.assign({},t.styles.popper,p(Object.assign({},f,{offsets:t.modifiersData.popperOffsets,position:t.options.strategy,adaptive:a,roundOffsets:l})))),null!=t.modifiersData.arrow&&(t.styles.arrow=Object.assign({},t.styles.arrow,p(Object.assign({},f,{offsets:t.modifiersData.arrow,position:"absolute",adaptive:!1,roundOffsets:l})))),t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-placement":t.placement})},data:{}};t["default"]=h},84841:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=(r=n(34510))&&r.__esModule?r:{"default":r};var i={passive:!0};var a={name:"eventListeners",enabled:!0,phase:"write",fn:function(){},effect:function(e){var t=e.state,n=e.instance,r=e.options,a=r.scroll,u=void 0===a||a,s=r.resize,c=void 0===s||s,l=(0,o["default"])(t.elements.popper),f=[].concat(t.scrollParents.reference,t.scrollParents.popper);return u&&f.forEach((function(e){e.addEventListener("scroll",n.update,i)})),c&&l.addEventListener("resize",n.update,i),function(){u&&f.forEach((function(e){e.removeEventListener("scroll",n.update,i)})),c&&l.removeEventListener("resize",n.update,i)}},data:{}};t["default"]=a},69161:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r=l(n(37436)),o=l(n(63992)),i=l(n(45979)),a=l(n(76316)),u=l(n(93004)),s=n(63570),c=l(n(4529));function l(e){return e&&e.__esModule?e:{"default":e}}var f={name:"flip",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,l=e.name;if(!t.modifiersData[l]._skip){for(var f=n.mainAxis,d=void 0===f||f,p=n.altAxis,h=void 0===p||p,v=n.fallbackPlacements,m=n.padding,g=n.boundary,y=n.rootBoundary,b=n.altBoundary,x=n.flipVariations,w=void 0===x||x,E=n.allowedAutoPlacements,_=t.options.placement,D=(0,o["default"])(_),C=v||(D===_||!w?[(0,r["default"])(_)]:function(e){if((0,o["default"])(e)===s.auto)return[];var t=(0,r["default"])(e);return[(0,i["default"])(e),t,(0,i["default"])(t)]}(_)),k=[_].concat(C).reduce((function(e,n){return e.concat((0,o["default"])(n)===s.auto?(0,u["default"])(t,{placement:n,boundary:g,rootBoundary:y,padding:m,flipVariations:w,allowedAutoPlacements:E}):n)}),[]),A=t.rects.reference,S=t.rects.popper,N=new Map,O=!0,F=k[0],M=0;M=0,P=L?"width":"height",j=(0,a["default"])(t,{placement:T,boundary:g,rootBoundary:y,altBoundary:b,padding:m}),V=L?B?s.right:s.left:B?s.bottom:s.top;A[P]>S[P]&&(V=(0,r["default"])(V));var R=(0,r["default"])(V),z=[];if(d&&z.push(j[I]<=0),h&&z.push(j[V]<=0,j[R]<=0),z.every((function(e){return e}))){F=T,O=!1;break}N.set(T,z)}if(O)for(var K=function(e){var t=k.find((function(t){var n=N.get(t);if(n)return n.slice(0,e).every((function(e){return e}))}));if(t)return F=t,"break"},U=w?3:1;U>0;U--){if("break"===K(U))break}t.placement!==F&&(t.modifiersData[l]._skip=!0,t.placement=F,t.reset=!0)}},requiresIfExists:["offset"],data:{_skip:!1}};t["default"]=f},96965:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=n(63570),i=(r=n(76316))&&r.__esModule?r:{"default":r};function a(e,t,n){return void 0===n&&(n={x:0,y:0}),{top:e.top-t.height-n.y,right:e.right-t.width+n.x,bottom:e.bottom-t.height+n.y,left:e.left-t.width-n.x}}function u(e){return[o.top,o.right,o.bottom,o.left].some((function(t){return e[t]>=0}))}var s={name:"hide",enabled:!0,phase:"main",requiresIfExists:["preventOverflow"],fn:function(e){var t=e.state,n=e.name,r=t.rects.reference,o=t.rects.popper,s=t.modifiersData.preventOverflow,c=(0,i["default"])(t,{elementContext:"reference"}),l=(0,i["default"])(t,{altBoundary:!0}),f=a(c,r),d=a(l,o,s),p=u(f),h=u(d);t.modifiersData[n]={referenceClippingOffsets:f,popperEscapeOffsets:d,isReferenceHidden:p,hasPopperEscaped:h},t.attributes.popper=Object.assign({},t.attributes.popper,{"data-popper-reference-hidden":p,"data-popper-escaped":h})}};t["default"]=s},73694:function(e,t,n){"use strict";t.__esModule=!0,t.preventOverflow=t.popperOffsets=t.offset=t.hide=t.flip=t.eventListeners=t.computeStyles=t.arrow=t.applyStyles=void 0;var r=d(n(43154));t.applyStyles=r["default"];var o=d(n(82562));t.arrow=o["default"];var i=d(n(94698));t.computeStyles=i["default"];var a=d(n(84841));t.eventListeners=a["default"];var u=d(n(69161));t.flip=u["default"];var s=d(n(96965));t.hide=s["default"];var c=d(n(71832));t.offset=c["default"];var l=d(n(87883));t.popperOffsets=l["default"];var f=d(n(77600));function d(e){return e&&e.__esModule?e:{"default":e}}t.preventOverflow=f["default"]},71832:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0,t.distanceAndSkiddingToXY=a;var r,o=(r=n(63992))&&r.__esModule?r:{"default":r},i=n(63570);function a(e,t,n){var r=(0,o["default"])(e),a=[i.left,i.top].indexOf(r)>=0?-1:1,u="function"==typeof n?n(Object.assign({},t,{placement:e})):n,s=u[0],c=u[1];return s=s||0,c=(c||0)*a,[i.left,i.right].indexOf(r)>=0?{x:c,y:s}:{x:s,y:c}}var u={name:"offset",enabled:!0,phase:"main",requires:["popperOffsets"],fn:function(e){var t=e.state,n=e.options,r=e.name,o=n.offset,u=void 0===o?[0,0]:o,s=i.placements.reduce((function(e,n){return e[n]=a(n,t.rects,u),e}),{}),c=s[t.placement],l=c.x,f=c.y;null!=t.modifiersData.popperOffsets&&(t.modifiersData.popperOffsets.x+=l,t.modifiersData.popperOffsets.y+=f),t.modifiersData[r]=s}};t["default"]=u},87883:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r,o=(r=n(4320))&&r.__esModule?r:{"default":r};var i={name:"popperOffsets",enabled:!0,phase:"read",fn:function(e){var t=e.state,n=e.name;t.modifiersData[n]=(0,o["default"])({reference:t.rects.reference,element:t.rects.popper,strategy:"absolute",placement:t.placement})},data:{}};t["default"]=i},77600:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=void 0;var r=n(63570),o=h(n(63992)),i=h(n(63185)),a=h(n(1072)),u=n(54155),s=h(n(99470)),c=h(n(84416)),l=h(n(76316)),f=h(n(4529)),d=h(n(40321)),p=n(49055);function h(e){return e&&e.__esModule?e:{"default":e}}var v={name:"preventOverflow",enabled:!0,phase:"main",fn:function(e){var t=e.state,n=e.options,h=e.name,v=n.mainAxis,m=void 0===v||v,g=n.altAxis,y=void 0!==g&&g,b=n.boundary,x=n.rootBoundary,w=n.altBoundary,E=n.padding,_=n.tether,D=void 0===_||_,C=n.tetherOffset,k=void 0===C?0:C,A=(0,l["default"])(t,{boundary:b,rootBoundary:x,padding:E,altBoundary:w}),S=(0,o["default"])(t.placement),N=(0,f["default"])(t.placement),O=!N,F=(0,i["default"])(S),M=(0,a["default"])(F),T=t.modifiersData.popperOffsets,I=t.rects.reference,B=t.rects.popper,L="function"==typeof k?k(Object.assign({},t.rects,{placement:t.placement})):k,P="number"==typeof L?{mainAxis:L,altAxis:L}:Object.assign({mainAxis:0,altAxis:0},L),j=t.modifiersData.offset?t.modifiersData.offset[t.placement]:null,V={x:0,y:0};if(T){if(m){var R,z="y"===F?r.top:r.left,K="y"===F?r.bottom:r.right,U="y"===F?"height":"width",Y=T[F],H=Y+A[z],W=Y-A[K],$=D?-B[U]/2:0,G=N===r.start?I[U]:B[U],q=N===r.start?-B[U]:-I[U],Z=t.elements.arrow,X=D&&Z?(0,s["default"])(Z):{width:0,height:0},Q=t.modifiersData["arrow#persistent"]?t.modifiersData["arrow#persistent"].padding:(0,d["default"])(),J=Q[z],ee=Q[K],te=(0,u.within)(0,I[U],X[U]),ne=O?I[U]/2-$-te-J-P.mainAxis:G-te-J-P.mainAxis,re=O?-I[U]/2+$+te+ee+P.mainAxis:q+te+ee+P.mainAxis,oe=t.elements.arrow&&(0,c["default"])(t.elements.arrow),ie=oe?"y"===F?oe.clientTop||0:oe.clientLeft||0:0,ae=null!=(R=null==j?void 0:j[F])?R:0,ue=Y+ne-ae-ie,se=Y+re-ae,ce=(0,u.within)(D?(0,p.min)(H,ue):H,Y,D?(0,p.max)(W,se):W);T[F]=ce,V[F]=ce-Y}if(y){var le,fe="x"===F?r.top:r.left,de="x"===F?r.bottom:r.right,pe=T[M],he="y"===M?"height":"width",ve=pe+A[fe],me=pe-A[de],ge=-1!==[r.top,r.left].indexOf(S),ye=null!=(le=null==j?void 0:j[M])?le:0,be=ge?ve:pe-I[he]-B[he]-ye+P.altAxis,xe=ge?pe+I[he]+B[he]-ye-P.altAxis:me,we=D&&ge?(0,u.withinMaxClamp)(be,pe,xe):(0,u.within)(D?be:ve,pe,D?xe:me);T[M]=we,V[M]=we-pe}t.modifiersData[h]=V}},requiresIfExists:["offset"]};t["default"]=v},3922:function(e,t,n){"use strict";t.__esModule=!0,t.defaultModifiers=t.createPopper=void 0;var r=n(46877);t.popperGenerator=r.popperGenerator,t.detectOverflow=r.detectOverflow;var o=s(n(84841)),i=s(n(87883)),a=s(n(94698)),u=s(n(43154));function s(e){return e&&e.__esModule?e:{"default":e}}var c=[o["default"],i["default"],a["default"],u["default"]];t.defaultModifiers=c;var l=(0,r.popperGenerator)({defaultModifiers:c});t.createPopper=l},28153:function(e,t,n){"use strict";t.__esModule=!0;var r={createPopper:!0,createPopperLite:!0,defaultModifiers:!0,popperGenerator:!0,detectOverflow:!0};t.defaultModifiers=t.createPopperLite=t.createPopper=void 0;var o=n(46877);t.popperGenerator=o.popperGenerator,t.detectOverflow=o.detectOverflow;var i=m(n(84841)),a=m(n(87883)),u=m(n(94698)),s=m(n(43154)),c=m(n(71832)),l=m(n(69161)),f=m(n(77600)),d=m(n(82562)),p=m(n(96965)),h=n(3922);t.createPopperLite=h.createPopper;var v=n(73694);function m(e){return e&&e.__esModule?e:{"default":e}}Object.keys(v).forEach((function(e){"default"!==e&&"__esModule"!==e&&(Object.prototype.hasOwnProperty.call(r,e)||e in t&&t[e]===v[e]||(t[e]=v[e]))}));var g=[i["default"],a["default"],u["default"],s["default"],c["default"],l["default"],f["default"],d["default"],p["default"]];t.defaultModifiers=g;var y=(0,o.popperGenerator)({defaultModifiers:g});t.createPopperLite=t.createPopper=y},93004:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t){void 0===t&&(t={});var n=t,u=n.placement,s=n.boundary,c=n.rootBoundary,l=n.padding,f=n.flipVariations,d=n.allowedAutoPlacements,p=void 0===d?o.placements:d,h=(0,r["default"])(u),v=h?f?o.variationPlacements:o.variationPlacements.filter((function(e){return(0,r["default"])(e)===h})):o.basePlacements,m=v.filter((function(e){return p.indexOf(e)>=0}));0===m.length&&(m=v);var g=m.reduce((function(t,n){return t[n]=(0,i["default"])(e,{placement:n,boundary:s,rootBoundary:c,padding:l})[(0,a["default"])(n)],t}),{});return Object.keys(g).sort((function(e,t){return g[e]-g[t]}))};var r=u(n(4529)),o=n(63570),i=u(n(76316)),a=u(n(63992));function u(e){return e&&e.__esModule?e:{"default":e}}},4320:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t,n=e.reference,u=e.element,s=e.placement,c=s?(0,r["default"])(s):null,l=s?(0,o["default"])(s):null,f=n.x+n.width/2-u.width/2,d=n.y+n.height/2-u.height/2;switch(c){case a.top:t={x:f,y:n.y-u.height};break;case a.bottom:t={x:f,y:n.y+n.height};break;case a.right:t={x:n.x+n.width,y:d};break;case a.left:t={x:n.x-u.width,y:d};break;default:t={x:n.x,y:n.y}}var p=c?(0,i["default"])(c):null;if(null!=p){var h="y"===p?"height":"width";switch(l){case a.start:t[p]=t[p]-(n[h]/2-u[h]/2);break;case a.end:t[p]=t[p]+(n[h]/2-u[h]/2)}}return t};var r=u(n(63992)),o=u(n(4529)),i=u(n(63185)),a=n(63570);function u(e){return e&&e.__esModule?e:{"default":e}}},82053:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){var t;return function(){return t||(t=new Promise((function(n){Promise.resolve().then((function(){t=undefined,n(e())}))}))),t}}},76316:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e,t){void 0===t&&(t={});var n=t,d=n.placement,p=void 0===d?e.placement:d,h=n.strategy,v=void 0===h?e.strategy:h,m=n.boundary,g=void 0===m?s.clippingParents:m,y=n.rootBoundary,b=void 0===y?s.viewport:y,x=n.elementContext,w=void 0===x?s.popper:x,E=n.altBoundary,_=void 0!==E&&E,D=n.padding,C=void 0===D?0:D,k=(0,l["default"])("number"!=typeof C?C:(0,f["default"])(C,s.basePlacements)),A=w===s.popper?s.reference:s.popper,S=e.rects.popper,N=e.elements[_?A:w],O=(0,r["default"])((0,c.isElement)(N)?N:N.contextElement||(0,o["default"])(e.elements.popper),g,b,v),F=(0,i["default"])(e.elements.reference),M=(0,a["default"])({reference:F,element:S,strategy:"absolute",placement:p}),T=(0,u["default"])(Object.assign({},S,M)),I=w===s.popper?T:F,B={top:O.top-I.top+k.top,bottom:I.bottom-O.bottom+k.bottom,left:O.left-I.left+k.left,right:I.right-O.right+k.right},L=e.modifiersData.offset;if(w===s.popper&&L){var P=L[p];Object.keys(B).forEach((function(e){var t=[s.right,s.bottom].indexOf(e)>=0?1:-1,n=[s.top,s.bottom].indexOf(e)>=0?"y":"x";B[e]+=P[n]*t}))}return B};var r=d(n(96087)),o=d(n(45385)),i=d(n(41012)),a=d(n(4320)),u=d(n(1656)),s=n(63570),c=n(50695),l=d(n(45499)),f=d(n(92806));function d(e){return e&&e.__esModule?e:{"default":e}}},92806:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e,t){return t.reduce((function(t,n){return t[n]=e,t}),{})}},23387:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){for(var t=arguments.length,n=new Array(t>1?t-1:0),r=1;r=0?"x":"y"}},37436:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.replace(/left|right|bottom|top/g,(function(e){return n[e]}))};var n={left:"right",right:"left",bottom:"top",top:"bottom"}},45979:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.replace(/start|end/g,(function(e){return n[e]}))};var n={start:"end",end:"start"}},4529:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return e.split("-")[1]}},49055:function(e,t){"use strict";t.__esModule=!0,t.round=t.min=t.max=void 0;var n=Math.max;t.max=n;var r=Math.min;t.min=r;var o=Math.round;t.round=o},76197:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){var t=e.reduce((function(e,t){var n=e[t.name];return e[t.name]=n?Object.assign({},n,t,{options:Object.assign({},n.options,t.options),data:Object.assign({},n.data,t.data)}):t,e}),{});return Object.keys(t).map((function(e){return t[e]}))}},45499:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){return Object.assign({},(0,o["default"])(),e)};var r,o=(r=n(40321))&&r.__esModule?r:{"default":r}},3738:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){var t=function(e){var t=new Map,n=new Set,r=[];function o(e){n.add(e.name),[].concat(e.requires||[],e.requiresIfExists||[]).forEach((function(e){if(!n.has(e)){var r=t.get(e);r&&o(r)}})),r.push(e)}return e.forEach((function(e){t.set(e.name,e)})),e.forEach((function(e){n.has(e.name)||o(e)})),r}(e);return r.modifierPhases.reduce((function(e,n){return e.concat(t.filter((function(e){return e.phase===n})))}),[])};var r=n(63570)},1656:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e){return Object.assign({},e,{left:e.x,top:e.y,right:e.x+e.width,bottom:e.y+e.height})}},13611:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(e,t){var n=new Set;return e.filter((function(e){var r=t(e);if(!n.has(r))return n.add(r),!0}))}},77708:function(e,t){"use strict";t.__esModule=!0,t["default"]=function(){var e=navigator.userAgentData;if(null!=e&&e.brands)return e.brands.map((function(e){return e.brand+"/"+e.version})).join(" ");return navigator.userAgent}},53131:function(e,t,n){"use strict";t.__esModule=!0,t["default"]=function(e){e.forEach((function(t){[].concat(Object.keys(t),i).filter((function(e,t,n){return n.indexOf(e)===t})).forEach((function(n){switch(n){case"name":t.name;break;case"enabled":t.enabled;break;case"phase":o.modifierPhases.indexOf(t.phase);break;case"fn":t.fn;break;case"effect":null!=t.effect&&t.effect;break;case"requires":null!=t.requires&&Array.isArray(t.requires);break;case"requiresIfExists":Array.isArray(t.requiresIfExists)}t.requires&&t.requires.forEach((function(t){e.find((function(e){return e.name===t}))}))}))}))};(r=n(23387))&&r.__esModule;var r,o=n(63570);var i=["name","enabled","phase","fn","effect","requires","options"]},54155:function(e,t,n){"use strict";t.__esModule=!0,t.within=o,t.withinMaxClamp=function(e,t,n){var r=o(e,t,n);return r>n?n:r};var r=n(49055);function o(e,t,n){return(0,r.max)(e,(0,r.min)(t,n))}},79030:function(e,t,n){"use strict";var r=n(48609),o=n(29141),i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not a function")}},82269:function(e,t,n){"use strict";var r=n(99418),o=n(29141),i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not a constructor")}},1198:function(e,t,n){"use strict";var r=n(48609),o=String,i=TypeError;e.exports=function(e){if("object"==typeof e||r(e))return e;throw i("Can't set "+o(e)+" as a prototype")}},21650:function(e,t,n){"use strict";var r=n(42847),o=n(8356),i=n(92867).f,a=r("unscopables"),u=Array.prototype;u[a]==undefined&&i(u,a,{configurable:!0,value:o(null)}),e.exports=function(e){u[a][e]=!0}},1491:function(e,t,n){"use strict";var r=n(59524).charAt;e.exports=function(e,t,n){return t+(n?r(e,t).length:1)}},99078:function(e,t,n){"use strict";var r=n(52625),o=TypeError;e.exports=function(e,t){if(r(t,e))return e;throw o("Incorrect invocation")}},8782:function(e,t,n){"use strict";var r=n(46840),o=String,i=TypeError;e.exports=function(e){if(r(e))return e;throw i(o(e)+" is not an object")}},13338:function(e){"use strict";e.exports="undefined"!=typeof ArrayBuffer&&"undefined"!=typeof DataView},29613:function(e,t,n){"use strict";var r=n(3440);e.exports=r((function(){if("function"==typeof ArrayBuffer){var e=new ArrayBuffer(8);Object.isExtensible(e)&&Object.defineProperty(e,"a",{value:8})}}))},89746:function(e,t,n){"use strict";var r,o,i,a=n(13338),u=n(4098),s=n(25511),c=n(48609),l=n(46840),f=n(35821),d=n(13149),p=n(29141),h=n(90460),v=n(83972),m=n(92867).f,g=n(52625),y=n(45526),b=n(97916),x=n(42847),w=n(93054),E=n(29017),_=E.enforce,D=E.get,C=s.Int8Array,k=C&&C.prototype,A=s.Uint8ClampedArray,S=A&&A.prototype,N=C&&y(C),O=k&&y(k),F=Object.prototype,M=s.TypeError,T=x("toStringTag"),I=w("TYPED_ARRAY_TAG"),B="TypedArrayConstructor",L=a&&!!b&&"Opera"!==d(s.opera),P=!1,j={Int8Array:1,Uint8Array:1,Uint8ClampedArray:1,Int16Array:2,Uint16Array:2,Int32Array:4,Uint32Array:4,Float32Array:4,Float64Array:8},V={BigInt64Array:8,BigUint64Array:8},R=function(e){if(!l(e))return!1;var t=d(e);return"DataView"===t||f(j,t)||f(V,t)},z=function(e){if(!l(e))return!1;var t=d(e);return f(j,t)||f(V,t)};for(r in j)(i=(o=s[r])&&o.prototype)?_(i)[B]=o:L=!1;for(r in V)(i=(o=s[r])&&o.prototype)&&(_(i)[B]=o);if((!L||!c(N)||N===Function.prototype)&&(N=function(){throw M("Incorrect invocation")},L))for(r in j)s[r]&&b(s[r],N);if((!L||!O||O===F)&&(O=N.prototype,L))for(r in j)s[r]&&b(s[r].prototype,O);if(L&&y(S)!==O&&b(S,O),u&&!f(O,T))for(r in P=!0,m(O,T,{get:function(){return l(this)?this[I]:undefined}}),j)s[r]&&h(s[r],I,r);e.exports={NATIVE_ARRAY_BUFFER_VIEWS:L,TYPED_ARRAY_TAG:P&&I,aTypedArray:function(e){if(z(e))return e;throw M("Target is not a typed array")},aTypedArrayConstructor:function(e){if(c(e)&&(!b||g(N,e)))return e;throw M(p(e)+" is not a typed array constructor")},exportTypedArrayMethod:function(e,t,n,r){if(u){if(n)for(var o in j){var i=s[o];if(i&&f(i.prototype,e))try{delete i.prototype[e]}catch(a){try{i.prototype[e]=t}catch(c){}}}O[e]&&!n||v(O,e,n?t:L&&k[e]||t,r)}},exportTypedArrayStaticMethod:function(e,t,n){var r,o;if(u){if(b){if(n)for(r in j)if((o=s[r])&&f(o,e))try{delete o[e]}catch(i){}if(N[e]&&!n)return;try{return v(N,e,n?t:L&&N[e]||t)}catch(i){}}for(r in j)!(o=s[r])||o[e]&&!n||v(o,e,t)}},getTypedArrayConstructor:function K(e){var t=y(e);if(l(t)){var n=D(t);return n&&f(n,B)?n[B]:K(t)}},isView:R,isTypedArray:z,TypedArray:N,TypedArrayPrototype:O}},78463:function(e,t,n){"use strict";var r=n(25511),o=n(38457),i=n(4098),a=n(13338),u=n(2142),s=n(90460),c=n(83856),l=n(3440),f=n(99078),d=n(53893),p=n(60780),h=n(93614),v=n(65359),m=n(45526),g=n(97916),y=n(86658).f,b=n(92867).f,x=n(7381),w=n(51450),E=n(13453),_=n(29017),D=u.PROPER,C=u.CONFIGURABLE,k=_.get,A=_.set,S="ArrayBuffer",N="DataView",O="prototype",F="Wrong index",M=r[S],T=M,I=T&&T[O],B=r[N],L=B&&B[O],P=Object.prototype,j=r.Array,V=r.RangeError,R=o(x),z=o([].reverse),K=v.pack,U=v.unpack,Y=function(e){return[255&e]},H=function(e){return[255&e,e>>8&255]},W=function(e){return[255&e,e>>8&255,e>>16&255,e>>24&255]},$=function(e){return e[3]<<24|e[2]<<16|e[1]<<8|e[0]},G=function(e){return K(e,23,4)},q=function(e){return K(e,52,8)},Z=function(e,t){b(e[O],t,{get:function(){return k(this)[t]}})},X=function(e,t,n,r){var o=h(n),i=k(e);if(o+t>i.byteLength)throw V(F);var a=k(i.buffer).bytes,u=o+i.byteOffset,s=w(a,u,u+t);return r?s:z(s)},Q=function(e,t,n,r,o,i){var a=h(n),u=k(e);if(a+t>u.byteLength)throw V(F);for(var s=k(u.buffer).bytes,c=a+u.byteOffset,l=r(+o),f=0;fne;)(ee=te[ne++])in T||s(T,ee,M[ee]);I.constructor=T}g&&m(L)!==P&&g(L,P);var re=new B(new T(2)),oe=o(L.setInt8);re.setInt8(0,2147483648),re.setInt8(1,2147483649),!re.getInt8(0)&&re.getInt8(1)||c(L,{setInt8:function(e,t){oe(this,e,t<<24>>24)},setUint8:function(e,t){oe(this,e,t<<24>>24)}},{unsafe:!0})}else I=(T=function(e){f(this,I);var t=h(e);A(this,{bytes:R(j(t),0),byteLength:t}),i||(this.byteLength=t)})[O],L=(B=function(e,t,n){f(this,L),f(e,I);var r=k(e).byteLength,o=d(t);if(o<0||o>r)throw V("Wrong offset");if(o+(n=n===undefined?r-o:p(n))>r)throw V("Wrong length");A(this,{buffer:e,byteLength:n,byteOffset:o}),i||(this.buffer=e,this.byteLength=n,this.byteOffset=o)})[O],i&&(Z(T,"byteLength"),Z(B,"buffer"),Z(B,"byteLength"),Z(B,"byteOffset")),c(L,{getInt8:function(e){return X(this,1,e)[0]<<24>>24},getUint8:function(e){return X(this,1,e)[0]},getInt16:function(e){var t=X(this,2,e,arguments.length>1?arguments[1]:undefined);return(t[1]<<8|t[0])<<16>>16},getUint16:function(e){var t=X(this,2,e,arguments.length>1?arguments[1]:undefined);return t[1]<<8|t[0]},getInt32:function(e){return $(X(this,4,e,arguments.length>1?arguments[1]:undefined))},getUint32:function(e){return $(X(this,4,e,arguments.length>1?arguments[1]:undefined))>>>0},getFloat32:function(e){return U(X(this,4,e,arguments.length>1?arguments[1]:undefined),23)},getFloat64:function(e){return U(X(this,8,e,arguments.length>1?arguments[1]:undefined),52)},setInt8:function(e,t){Q(this,1,e,Y,t)},setUint8:function(e,t){Q(this,1,e,Y,t)},setInt16:function(e,t){Q(this,2,e,H,t,arguments.length>2?arguments[2]:undefined)},setUint16:function(e,t){Q(this,2,e,H,t,arguments.length>2?arguments[2]:undefined)},setInt32:function(e,t){Q(this,4,e,W,t,arguments.length>2?arguments[2]:undefined)},setUint32:function(e,t){Q(this,4,e,W,t,arguments.length>2?arguments[2]:undefined)},setFloat32:function(e,t){Q(this,4,e,G,t,arguments.length>2?arguments[2]:undefined)},setFloat64:function(e,t){Q(this,8,e,q,t,arguments.length>2?arguments[2]:undefined)}});E(T,S),E(B,N),e.exports={ArrayBuffer:T,DataView:B}},96833:function(e,t,n){"use strict";var r=n(39134),o=n(46085),i=n(83440),a=n(80323),u=Math.min;e.exports=[].copyWithin||function(e,t){var n=r(this),s=i(n),c=o(e,s),l=o(t,s),f=arguments.length>2?arguments[2]:undefined,d=u((f===undefined?s:o(f,s))-l,s-c),p=1;for(l0;)l in n?n[c]=n[l]:a(n,c),c+=p,l+=p;return n}},7381:function(e,t,n){"use strict";var r=n(39134),o=n(46085),i=n(83440);e.exports=function(e){for(var t=r(this),n=i(t),a=arguments.length,u=o(a>1?arguments[1]:undefined,n),s=a>2?arguments[2]:undefined,c=s===undefined?n:o(s,n);c>u;)t[u++]=e;return t}},11421:function(e,t,n){"use strict";var r=n(40975).forEach,o=n(38575)("forEach");e.exports=o?[].forEach:function(e){return r(this,e,arguments.length>1?arguments[1]:undefined)}},13093:function(e,t,n){"use strict";var r=n(83440);e.exports=function(e,t){for(var n=0,o=r(t),i=new e(o);o>n;)i[n]=t[n++];return i}},58578:function(e,t,n){"use strict";var r=n(66343),o=n(68609),i=n(39134),a=n(6350),u=n(92443),s=n(99418),c=n(83440),l=n(15072),f=n(49267),d=n(26405),p=Array;e.exports=function(e){var t=i(e),n=s(this),h=arguments.length,v=h>1?arguments[1]:undefined,m=v!==undefined;m&&(v=r(v,h>2?arguments[2]:undefined));var g,y,b,x,w,E,_=d(t),D=0;if(!_||this===p&&u(_))for(g=c(t),y=n?new this(g):p(g);g>D;D++)E=m?v(t[D],D):t[D],l(y,D,E);else for(w=(x=f(t,_)).next,y=n?new this:[];!(b=o(w,x)).done;D++)E=m?a(x,v,[b.value,D],!0):b.value,l(y,D,E);return y.length=D,y}},16077:function(e,t,n){"use strict";var r=n(19091),o=n(46085),i=n(83440),a=function(e){return function(t,n,a){var u,s=r(t),c=i(s),l=o(a,c);if(e&&n!=n){for(;c>l;)if((u=s[l++])!=u)return!0}else for(;c>l;l++)if((e||l in s)&&s[l]===n)return e||l||0;return!e&&-1}};e.exports={includes:a(!0),indexOf:a(!1)}},40975:function(e,t,n){"use strict";var r=n(66343),o=n(38457),i=n(89753),a=n(39134),u=n(83440),s=n(56940),c=o([].push),l=function(e){var t=1==e,n=2==e,o=3==e,l=4==e,f=6==e,d=7==e,p=5==e||f;return function(h,v,m,g){for(var y,b,x=a(h),w=i(x),E=r(v,m),_=u(w),D=0,C=g||s,k=t?C(h,_):n||d?C(h,0):undefined;_>D;D++)if((p||D in w)&&(b=E(y=w[D],D,x),e))if(t)k[D]=b;else if(b)switch(e){case 3:return!0;case 5:return y;case 6:return D;case 2:c(k,y)}else switch(e){case 4:return!1;case 7:c(k,y)}return f?-1:o||l?l:k}};e.exports={forEach:l(0),map:l(1),filter:l(2),some:l(3),every:l(4),find:l(5),findIndex:l(6),filterReject:l(7)}},10303:function(e,t,n){"use strict";var r=n(42177),o=n(19091),i=n(53893),a=n(83440),u=n(38575),s=Math.min,c=[].lastIndexOf,l=!!c&&1/[1].lastIndexOf(1,-0)<0,f=u("lastIndexOf"),d=l||!f;e.exports=d?function(e){if(l)return r(c,this,arguments)||0;var t=o(this),n=a(t),u=n-1;for(arguments.length>1&&(u=s(u,i(arguments[1]))),u<0&&(u=n+u);u>=0;u--)if(u in t&&t[u]===e)return u||0;return-1}:c},731:function(e,t,n){"use strict";var r=n(3440),o=n(42847),i=n(88088),a=o("species");e.exports=function(e){return i>=51||!r((function(){var t=[];return(t.constructor={})[a]=function(){return{foo:1}},1!==t[e](Boolean).foo}))}},38575:function(e,t,n){"use strict";var r=n(3440);e.exports=function(e,t){var n=[][e];return!!n&&r((function(){n.call(null,t||function(){return 1},1)}))}},55202:function(e,t,n){"use strict";var r=n(79030),o=n(39134),i=n(89753),a=n(83440),u=TypeError,s=function(e){return function(t,n,s,c){r(n);var l=o(t),f=i(l),d=a(l),p=e?d-1:0,h=e?-1:1;if(s<2)for(;;){if(p in f){c=f[p],p+=h;break}if(p+=h,e?p<0:d<=p)throw u("Reduce of empty array with no initial value")}for(;e?p>=0:d>p;p+=h)p in f&&(c=n(c,f[p],p,l));return c}};e.exports={left:s(!1),right:s(!0)}},76628:function(e,t,n){"use strict";var r=n(4098),o=n(64739),i=TypeError,a=Object.getOwnPropertyDescriptor,u=r&&!function(){if(this!==undefined)return!0;try{Object.defineProperty([],"length",{writable:!1}).length=1}catch(e){return e instanceof TypeError}}();e.exports=u?function(e,t){if(o(e)&&!a(e,"length").writable)throw i("Cannot set read only .length");return e.length=t}:function(e,t){return e.length=t}},51450:function(e,t,n){"use strict";var r=n(46085),o=n(83440),i=n(15072),a=Array,u=Math.max;e.exports=function(e,t,n){for(var s=o(e),c=r(t,s),l=r(n===undefined?s:n,s),f=a(u(l-c,0)),d=0;c0;)e[r]=e[--r];r!==i++&&(e[r]=n)}return e},a=function(e,t,n,r){for(var o=t.length,i=n.length,a=0,u=0;a1?arguments[1]:undefined);t=t?t.next:n.first;)for(r(t.value,t.key,this);t&&t.removed;)t=t.previous},has:function(e){return!!b(this,e)}}),i(d,n?{get:function(e){var t=b(this,e);return t&&t.value},set:function(e,t){return y(this,0===e?0:e,t)}}:{add:function(e){return y(this,e=0===e?0:e,e)}}),p&&r(d,"size",{get:function(){return v(this).size}}),f},setStrong:function(e,t,n){var r=t+" Iterator",o=g(t),i=g(r);l(e,t,(function(e,t){m(this,{type:r,target:e,state:o(e),kind:t,last:undefined})}),(function(){for(var e=i(this),t=e.kind,n=e.last;n&&n.removed;)n=n.previous;return e.target&&(e.last=n=n?n.next:e.state.first)?f("keys"==t?n.key:"values"==t?n.value:[n.key,n.value],!1):(e.target=undefined,f(undefined,!0))}),n?"entries":"values",!n,!0),d(t)}}},94034:function(e,t,n){"use strict";var r=n(38457),o=n(83856),i=n(94986).getWeakData,a=n(99078),u=n(8782),s=n(92625),c=n(46840),l=n(6111),f=n(40975),d=n(35821),p=n(29017),h=p.set,v=p.getterFor,m=f.find,g=f.findIndex,y=r([].splice),b=0,x=function(e){return e.frozen||(e.frozen=new w)},w=function(){this.entries=[]},E=function(e,t){return m(e.entries,(function(e){return e[0]===t}))};w.prototype={get:function(e){var t=E(this,e);if(t)return t[1]},has:function(e){return!!E(this,e)},set:function(e,t){var n=E(this,e);n?n[1]=t:this.entries.push([e,t])},"delete":function(e){var t=g(this.entries,(function(t){return t[0]===e}));return~t&&y(this.entries,t,1),!!~t}},e.exports={getConstructor:function(e,t,n,r){var f=e((function(e,o){a(e,p),h(e,{type:t,id:b++,frozen:undefined}),s(o)||l(o,e[r],{that:e,AS_ENTRIES:n})})),p=f.prototype,m=v(t),g=function(e,t,n){var r=m(e),o=i(u(t),!0);return!0===o?x(r).set(t,n):o[r.id]=n,e};return o(p,{"delete":function(e){var t=m(this);if(!c(e))return!1;var n=i(e);return!0===n?x(t)["delete"](e):n&&d(n,t.id)&&delete n[t.id]},has:function(e){var t=m(this);if(!c(e))return!1;var n=i(e);return!0===n?x(t).has(e):n&&d(n,t.id)}}),o(p,n?{get:function(e){var t=m(this);if(c(e)){var n=i(e);return!0===n?x(t).get(e):n?n[t.id]:undefined}},set:function(e,t){return g(this,e,t)}}:{add:function(e){return g(this,e,!0)}}),f}}},18207:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(38457),a=n(50330),u=n(83972),s=n(94986),c=n(6111),l=n(99078),f=n(48609),d=n(92625),p=n(46840),h=n(3440),v=n(32938),m=n(13453),g=n(5283);e.exports=function(e,t,n){var y=-1!==e.indexOf("Map"),b=-1!==e.indexOf("Weak"),x=y?"set":"add",w=o[e],E=w&&w.prototype,_=w,D={},C=function(e){var t=i(E[e]);u(E,e,"add"==e?function(e){return t(this,0===e?0:e),this}:"delete"==e?function(e){return!(b&&!p(e))&&t(this,0===e?0:e)}:"get"==e?function(e){return b&&!p(e)?undefined:t(this,0===e?0:e)}:"has"==e?function(e){return!(b&&!p(e))&&t(this,0===e?0:e)}:function(e,n){return t(this,0===e?0:e,n),this})};if(a(e,!f(w)||!(b||E.forEach&&!h((function(){(new w).entries().next()})))))_=n.getConstructor(t,e,y,x),s.enable();else if(a(e,!0)){var k=new _,A=k[x](b?{}:-0,1)!=k,S=h((function(){k.has(1)})),N=v((function(e){new w(e)})),O=!b&&h((function(){for(var e=new w,t=5;t--;)e[x](t,t);return!e.has(-0)}));N||((_=t((function(e,t){l(e,E);var n=g(new w,e,_);return d(t)||c(t,n[x],{that:n,AS_ENTRIES:y}),n}))).prototype=E,E.constructor=_),(S||O)&&(C("delete"),C("has"),y&&C("get")),(O||A)&&C(x),b&&E.clear&&delete E.clear}return D[e]=_,r({global:!0,constructor:!0,forced:_!=w},D),m(_,e),b||n.setStrong(_,e,y),_}},25361:function(e,t,n){"use strict";var r=n(35821),o=n(32884),i=n(18593),a=n(92867);e.exports=function(e,t,n){for(var u=o(t),s=a.f,c=i.f,l=0;l"+s+""}},49764:function(e){"use strict";e.exports=function(e,t){return{value:e,done:t}}},90460:function(e,t,n){"use strict";var r=n(4098),o=n(92867),i=n(12311);e.exports=r?function(e,t,n){return o.f(e,t,i(1,n))}:function(e,t,n){return e[t]=n,e}},12311:function(e){"use strict";e.exports=function(e,t){return{enumerable:!(1&e),configurable:!(2&e),writable:!(4&e),value:t}}},15072:function(e,t,n){"use strict";var r=n(21266),o=n(92867),i=n(12311);e.exports=function(e,t,n){var a=r(t);a in e?o.f(e,a,i(0,n)):e[a]=n}},39901:function(e,t,n){"use strict";var r=n(38457),o=n(3440),i=n(99335).start,a=RangeError,u=isFinite,s=Math.abs,c=Date.prototype,l=c.toISOString,f=r(c.getTime),d=r(c.getUTCDate),p=r(c.getUTCFullYear),h=r(c.getUTCHours),v=r(c.getUTCMilliseconds),m=r(c.getUTCMinutes),g=r(c.getUTCMonth),y=r(c.getUTCSeconds);e.exports=o((function(){return"0385-07-25T07:06:39.999Z"!=l.call(new Date(-50000000000001))}))||!o((function(){l.call(new Date(NaN))}))?function(){if(!u(f(this)))throw a("Invalid time value");var e=this,t=p(e),n=v(e),r=t<0?"-":t>9999?"+":"";return r+i(s(t),r?6:4,0)+"-"+i(g(e)+1,2,0)+"-"+i(d(e),2,0)+"T"+i(h(e),2,0)+":"+i(m(e),2,0)+":"+i(y(e),2,0)+"."+i(n,3,0)+"Z"}:l},52653:function(e,t,n){"use strict";var r=n(8782),o=n(79910),i=TypeError;e.exports=function(e){if(r(this),"string"===e||"default"===e)e="string";else if("number"!==e)throw i("Incorrect hint");return o(this,e)}},39836:function(e,t,n){"use strict";var r=n(1402),o=n(92867);e.exports=function(e,t,n){return n.get&&r(n.get,t,{getter:!0}),n.set&&r(n.set,t,{setter:!0}),o.f(e,t,n)}},83972:function(e,t,n){"use strict";var r=n(48609),o=n(92867),i=n(1402),a=n(60095);e.exports=function(e,t,n,u){u||(u={});var s=u.enumerable,c=u.name!==undefined?u.name:t;if(r(n)&&i(n,c,u),u.global)s?e[t]=n:a(t,n);else{try{u.unsafe?e[t]&&(s=!0):delete e[t]}catch(l){}s?e[t]=n:o.f(e,t,{value:n,enumerable:!1,configurable:!u.nonConfigurable,writable:!u.nonWritable})}return e}},83856:function(e,t,n){"use strict";var r=n(83972);e.exports=function(e,t,n){for(var o in t)r(e,o,t[o],n);return e}},60095:function(e,t,n){"use strict";var r=n(25511),o=Object.defineProperty;e.exports=function(e,t){try{o(r,e,{value:t,configurable:!0,writable:!0})}catch(n){r[e]=t}return t}},80323:function(e,t,n){"use strict";var r=n(29141),o=TypeError;e.exports=function(e,t){if(!delete e[t])throw o("Cannot delete property "+r(t)+" of "+r(e))}},4098:function(e,t,n){"use strict";var r=n(3440);e.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},4246:function(e){"use strict";var t="object"==typeof document&&document.all,n=void 0===t&&t!==undefined;e.exports={all:t,IS_HTMLDDA:n}},9639:function(e,t,n){"use strict";var r=n(25511),o=n(46840),i=r.document,a=o(i)&&o(i.createElement);e.exports=function(e){return a?i.createElement(e):{}}},30684:function(e){"use strict";var t=TypeError;e.exports=function(e){if(e>9007199254740991)throw t("Maximum allowed index exceeded");return e}},98861:function(e,t,n){"use strict";var r=n(46032).match(/firefox\/(\d+)/i);e.exports=!!r&&+r[1]},87789:function(e,t,n){"use strict";var r=n(79346),o=n(68173);e.exports=!r&&!o&&"object"==typeof window&&"object"==typeof document},40073:function(e){"use strict";e.exports="function"==typeof Bun&&Bun&&"string"==typeof Bun.version},79346:function(e){"use strict";e.exports="object"==typeof Deno&&Deno&&"object"==typeof Deno.version},79920:function(e,t,n){"use strict";var r=n(46032);e.exports=/MSIE|Trident/.test(r)},50988:function(e,t,n){"use strict";var r=n(46032),o=n(25511);e.exports=/ipad|iphone|ipod/i.test(r)&&o.Pebble!==undefined},39050:function(e,t,n){"use strict";var r=n(46032);e.exports=/(?:ipad|iphone|ipod).*applewebkit/i.test(r)},68173:function(e,t,n){"use strict";var r=n(86790),o=n(25511);e.exports="process"==r(o.process)},63938:function(e,t,n){"use strict";var r=n(46032);e.exports=/web0s(?!.*chrome)/i.test(r)},46032:function(e,t,n){"use strict";var r=n(53242);e.exports=r("navigator","userAgent")||""},88088:function(e,t,n){"use strict";var r,o,i=n(25511),a=n(46032),u=i.process,s=i.Deno,c=u&&u.versions||s&&s.version,l=c&&c.v8;l&&(o=(r=l.split("."))[0]>0&&r[0]<4?1:+(r[0]+r[1])),!o&&a&&(!(r=a.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=a.match(/Chrome\/(\d+)/))&&(o=+r[1]),e.exports=o},51737:function(e,t,n){"use strict";var r=n(46032).match(/AppleWebKit\/(\d+)\./);e.exports=!!r&&+r[1]},51264:function(e){"use strict";e.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},579:function(e,t,n){"use strict";var r=n(38457),o=Error,i=r("".replace),a=String(o("zxcasd").stack),u=/\n\s*at [^:]*:[^\n]*/,s=u.test(a);e.exports=function(e,t){if(s&&"string"==typeof e&&!o.prepareStackTrace)for(;t--;)e=i(e,u,"");return e}},77385:function(e,t,n){"use strict";var r=n(3440),o=n(12311);e.exports=!r((function(){var e=Error("a");return!("stack"in e)||(Object.defineProperty(e,"stack",o(1,7)),7!==e.stack)}))},65439:function(e,t,n){"use strict";var r=n(25511),o=n(18593).f,i=n(90460),a=n(83972),u=n(60095),s=n(25361),c=n(50330);e.exports=function(e,t){var n,l,f,d,p,h=e.target,v=e.global,m=e.stat;if(n=v?r:m?r[h]||u(h,{}):(r[h]||{}).prototype)for(l in t){if(d=t[l],f=e.dontCallGetSet?(p=o(n,l))&&p.value:n[l],!c(v?l:h+(m?".":"#")+l,e.forced)&&f!==undefined){if(typeof d==typeof f)continue;s(d,f)}(e.sham||f&&f.sham)&&i(d,"sham",!0),a(n,l,d,e)}}},3440:function(e){"use strict";e.exports=function(e){try{return!!e()}catch(t){return!0}}},3306:function(e,t,n){"use strict";n(34067);var r=n(42481),o=n(83972),i=n(34062),a=n(3440),u=n(42847),s=n(90460),c=u("species"),l=RegExp.prototype;e.exports=function(e,t,n,f){var d=u(e),p=!a((function(){var t={};return t[d]=function(){return 7},7!=""[e](t)})),h=p&&!a((function(){var t=!1,n=/a/;return"split"===e&&((n={}).constructor={},n.constructor[c]=function(){return n},n.flags="",n[d]=/./[d]),n.exec=function(){return t=!0,null},n[d](""),!t}));if(!p||!h||n){var v=r(/./[d]),m=t(d,""[e],(function(e,t,n,o,a){var u=r(e),s=t.exec;return s===i||s===l.exec?p&&!a?{done:!0,value:v(t,n,o)}:{done:!0,value:u(n,t,o)}:{done:!1}}));o(String.prototype,e,m[0]),o(l,d,m[1])}f&&s(l[d],"sham",!0)}},44094:function(e,t,n){"use strict";var r=n(64739),o=n(83440),i=n(30684),a=n(66343);e.exports=function u(e,t,n,s,c,l,f,d){for(var p,h=c,v=0,m=!!f&&a(f,d);v0&&r(p)?h=u(e,t,p,o(p),h,l-1)-1:(i(h+1),e[h]=p),h++),v++;return h}},14097:function(e,t,n){"use strict";var r=n(3440);e.exports=!r((function(){return Object.isExtensible(Object.preventExtensions({}))}))},42177:function(e,t,n){"use strict";var r=n(61120),o=Function.prototype,i=o.apply,a=o.call;e.exports="object"==typeof Reflect&&Reflect.apply||(r?a.bind(i):function(){return a.apply(i,arguments)})},66343:function(e,t,n){"use strict";var r=n(42481),o=n(79030),i=n(61120),a=r(r.bind);e.exports=function(e,t){return o(e),t===undefined?e:i?a(e,t):function(){return e.apply(t,arguments)}}},61120:function(e,t,n){"use strict";var r=n(3440);e.exports=!r((function(){var e=function(){}.bind();return"function"!=typeof e||e.hasOwnProperty("prototype")}))},87637:function(e,t,n){"use strict";var r=n(38457),o=n(79030),i=n(46840),a=n(35821),u=n(92098),s=n(61120),c=Function,l=r([].concat),f=r([].join),d={},p=function(e,t,n){if(!a(d,t)){for(var r=[],o=0;o]*>)/g,l=/\$([$&'`]|\d{1,2})/g;e.exports=function(e,t,n,r,f,d){var p=n+e.length,h=r.length,v=l;return f!==undefined&&(f=o(f),v=c),u(d,v,(function(o,u){var c;switch(a(u,0)){case"$":return"$";case"&":return e;case"`":return s(t,0,n);case"'":return s(t,p);case"<":c=f[s(u,1,-1)];break;default:var l=+u;if(0===l)return o;if(l>h){var d=i(l/10);return 0===d?o:d<=h?r[d-1]===undefined?a(u,1):r[d-1]+a(u,1):o}c=r[l-1]}return c===undefined?"":c}))}},25511:function(e,t,n){"use strict";var r=function(e){return e&&e.Math==Math&&e};e.exports=r("object"==typeof globalThis&&globalThis)||r("object"==typeof window&&window)||r("object"==typeof self&&self)||r("object"==typeof n.g&&n.g)||function(){return this}()||Function("return this")()},35821:function(e,t,n){"use strict";var r=n(38457),o=n(39134),i=r({}.hasOwnProperty);e.exports=Object.hasOwn||function(e,t){return i(o(e),t)}},94083:function(e){"use strict";e.exports={}},74394:function(e,t,n){"use strict";var r=n(25511);e.exports=function(e,t){var n=r.console;n&&n.error&&(1==arguments.length?n.error(e):n.error(e,t))}},44648:function(e,t,n){"use strict";var r=n(53242);e.exports=r("document","documentElement")},46999:function(e,t,n){"use strict";var r=n(4098),o=n(3440),i=n(9639);e.exports=!r&&!o((function(){return 7!=Object.defineProperty(i("div"),"a",{get:function(){return 7}}).a}))},65359:function(e){"use strict";var t=Array,n=Math.abs,r=Math.pow,o=Math.floor,i=Math.log,a=Math.LN2;e.exports={pack:function(e,u,s){var c,l,f,d=t(s),p=8*s-u-1,h=(1<>1,m=23===u?r(2,-24)-r(2,-77):0,g=e<0||0===e&&1/e<0?1:0,y=0;for((e=n(e))!=e||e===Infinity?(l=e!=e?1:0,c=h):(c=o(i(e)/a),e*(f=r(2,-c))<1&&(c--,f*=2),(e+=c+v>=1?m/f:m*r(2,1-v))*f>=2&&(c++,f/=2),c+v>=h?(l=0,c=h):c+v>=1?(l=(e*f-1)*r(2,u),c+=v):(l=e*r(2,v-1)*r(2,u),c=0));u>=8;)d[y++]=255&l,l/=256,u-=8;for(c=c<0;)d[y++]=255&c,c/=256,p-=8;return d[--y]|=128*g,d},unpack:function(e,t){var n,o=e.length,i=8*o-t-1,a=(1<>1,s=i-7,c=o-1,l=e[c--],f=127&l;for(l>>=7;s>0;)f=256*f+e[c--],s-=8;for(n=f&(1<<-s)-1,f>>=-s,s+=t;s>0;)n=256*n+e[c--],s-=8;if(0===f)f=1-u;else{if(f===a)return n?NaN:l?-Infinity:Infinity;n+=r(2,t),f-=u}return(l?-1:1)*n*r(2,f-t)}}},89753:function(e,t,n){"use strict";var r=n(38457),o=n(3440),i=n(86790),a=Object,u=r("".split);e.exports=o((function(){return!a("z").propertyIsEnumerable(0)}))?function(e){return"String"==i(e)?u(e,""):a(e)}:a},5283:function(e,t,n){"use strict";var r=n(48609),o=n(46840),i=n(97916);e.exports=function(e,t,n){var a,u;return i&&r(a=t.constructor)&&a!==n&&o(u=a.prototype)&&u!==n.prototype&&i(e,u),e}},91634:function(e,t,n){"use strict";var r=n(38457),o=n(48609),i=n(45065),a=r(Function.toString);o(i.inspectSource)||(i.inspectSource=function(e){return a(e)}),e.exports=i.inspectSource},31738:function(e,t,n){"use strict";var r=n(46840),o=n(90460);e.exports=function(e,t){r(t)&&"cause"in t&&o(e,"cause",t.cause)}},94986:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(94083),a=n(46840),u=n(35821),s=n(92867).f,c=n(86658),l=n(26661),f=n(77311),d=n(93054),p=n(14097),h=!1,v=d("meta"),m=0,g=function(e){s(e,v,{value:{objectID:"O"+m++,weakData:{}}})},y=e.exports={enable:function(){y.enable=function(){},h=!0;var e=c.f,t=o([].splice),n={};n[v]=1,e(n).length&&(c.f=function(n){for(var r=e(n),o=0,i=r.length;oy;y++)if((x=O(e[y]))&&c(v,x))return x;return new h(!1)}m=l(e,g)}for(w=C?e.next:m.next;!(E=o(w,m)).done;){try{x=O(E.value)}catch(F){d(m,"throw",F)}if("object"==typeof x&&x&&c(v,x))return x}return new h(!1)}},94648:function(e,t,n){"use strict";var r=n(68609),o=n(8782),i=n(87869);e.exports=function(e,t,n){var a,u;o(e);try{if(!(a=i(e,"return"))){if("throw"===t)throw n;return n}a=r(a,e)}catch(s){u=!0,a=s}if("throw"===t)throw n;if(u)throw a;return o(a),n}},40897:function(e,t,n){"use strict";var r=n(98852).IteratorPrototype,o=n(8356),i=n(12311),a=n(13453),u=n(87804),s=function(){return this};e.exports=function(e,t,n,c){var l=t+" Iterator";return e.prototype=o(r,{next:i(+!c,n)}),a(e,l,!1,!0),u[l]=s,e}},63424:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(65787),a=n(2142),u=n(48609),s=n(40897),c=n(45526),l=n(97916),f=n(13453),d=n(90460),p=n(83972),h=n(42847),v=n(87804),m=n(98852),g=a.PROPER,y=a.CONFIGURABLE,b=m.IteratorPrototype,x=m.BUGGY_SAFARI_ITERATORS,w=h("iterator"),E="keys",_="values",D="entries",C=function(){return this};e.exports=function(e,t,n,a,h,m,k){s(n,t,a);var A,S,N,O=function(e){if(e===h&&B)return B;if(!x&&e in T)return T[e];switch(e){case E:case _:case D:return function(){return new n(this,e)}}return function(){return new n(this)}},F=t+" Iterator",M=!1,T=e.prototype,I=T[w]||T["@@iterator"]||h&&T[h],B=!x&&I||O(h),L="Array"==t&&T.entries||I;if(L&&(A=c(L.call(new e)))!==Object.prototype&&A.next&&(i||c(A)===b||(l?l(A,b):u(A[w])||p(A,w,C)),f(A,F,!0,!0),i&&(v[F]=C)),g&&h==_&&I&&I.name!==_&&(!i&&y?d(T,"name",_):(M=!0,B=function(){return o(I,this)})),h)if(S={values:O(_),keys:m?B:O(E),entries:O(D)},k)for(N in S)(x||M||!(N in T))&&p(T,N,S[N]);else r({target:t,proto:!0,forced:x||M},S);return i&&!k||T[w]===B||p(T,w,B,{name:h}),v[t]=B,S}},98852:function(e,t,n){"use strict";var r,o,i,a=n(3440),u=n(48609),s=n(46840),c=n(8356),l=n(45526),f=n(83972),d=n(42847),p=n(65787),h=d("iterator"),v=!1;[].keys&&("next"in(i=[].keys())?(o=l(l(i)))!==Object.prototype&&(r=o):v=!0),!s(r)||a((function(){var e={};return r[h].call(e)!==e}))?r={}:p&&(r=c(r)),u(r[h])||f(r,h,(function(){return this})),e.exports={IteratorPrototype:r,BUGGY_SAFARI_ITERATORS:v}},87804:function(e){"use strict";e.exports={}},83440:function(e,t,n){"use strict";var r=n(60780);e.exports=function(e){return r(e.length)}},1402:function(e,t,n){"use strict";var r=n(3440),o=n(48609),i=n(35821),a=n(4098),u=n(2142).CONFIGURABLE,s=n(91634),c=n(29017),l=c.enforce,f=c.get,d=Object.defineProperty,p=a&&!r((function(){return 8!==d((function(){}),"length",{value:8}).length})),h=String(String).split("String"),v=e.exports=function(e,t,n){"Symbol("===String(t).slice(0,7)&&(t="["+String(t).replace(/^Symbol\(([^)]*)\)/,"$1")+"]"),n&&n.getter&&(t="get "+t),n&&n.setter&&(t="set "+t),(!i(e,"name")||u&&e.name!==t)&&(a?d(e,"name",{value:t,configurable:!0}):e.name=t),p&&n&&i(n,"arity")&&e.length!==n.arity&&d(e,"length",{value:n.arity});try{n&&i(n,"constructor")&&n.constructor?a&&d(e,"prototype",{writable:!1}):e.prototype&&(e.prototype=undefined)}catch(o){}var r=l(e);return i(r,"source")||(r.source=h.join("string"==typeof t?t:"")),e};Function.prototype.toString=v((function(){return o(this)&&f(this).source||s(this)}),"toString")},48277:function(e){"use strict";var t=Math.expm1,n=Math.exp;e.exports=!t||t(10)>22025.465794806718||t(10)<22025.465794806718||-2e-17!=t(-2e-17)?function(e){var t=+e;return 0==t?t:t>-1e-6&&t<1e-6?t+t*t/2:n(t)-1}:t},36344:function(e,t,n){"use strict";var r=n(54768),o=Math.abs,i=Math.pow,a=i(2,-52),u=i(2,-23),s=i(2,127)*(2-u),c=i(2,-126);e.exports=Math.fround||function(e){var t,n,i=+e,l=o(i),f=r(i);return ls||n!=n?f*Infinity:f*n}},84234:function(e){"use strict";var t=Math.log,n=Math.LOG10E;e.exports=Math.log10||function(e){return t(e)*n}},77477:function(e){"use strict";var t=Math.log;e.exports=Math.log1p||function(e){var n=+e;return n>-1e-8&&n<1e-8?n-n*n/2:t(1+n)}},54768:function(e){"use strict";e.exports=Math.sign||function(e){var t=+e;return 0==t||t!=t?t:t<0?-1:1}},6730:function(e){"use strict";var t=Math.ceil,n=Math.floor;e.exports=Math.trunc||function(e){var r=+e;return(r>0?n:t)(r)}},5934:function(e,t,n){"use strict";var r,o,i,a,u,s,c,l,f=n(25511),d=n(66343),p=n(18593).f,h=n(3017).set,v=n(39050),m=n(50988),g=n(63938),y=n(68173),b=f.MutationObserver||f.WebKitMutationObserver,x=f.document,w=f.process,E=f.Promise,_=p(f,"queueMicrotask"),D=_&&_.value;D||(r=function(){var e,t;for(y&&(e=w.domain)&&e.exit();o;){t=o.fn,o=o.next;try{t()}catch(n){throw o?a():i=undefined,n}}i=undefined,e&&e.enter()},v||y||g||!b||!x?!m&&E&&E.resolve?((c=E.resolve(undefined)).constructor=E,l=d(c.then,c),a=function(){l(r)}):y?a=function(){w.nextTick(r)}:(h=d(h,f),a=function(){h(r)}):(u=!0,s=x.createTextNode(""),new b(r).observe(s,{characterData:!0}),a=function(){s.data=u=!u})),e.exports=D||function(e){var t={fn:e,next:undefined};i&&(i.next=t),o||(o=t,a()),i=t}},26149:function(e,t,n){"use strict";var r=n(79030),o=TypeError,i=function(e){var t,n;this.promise=new e((function(e,r){if(t!==undefined||n!==undefined)throw o("Bad Promise constructor");t=e,n=r})),this.resolve=r(t),this.reject=r(n)};e.exports.f=function(e){return new i(e)}},88124:function(e,t,n){"use strict";var r=n(39599);e.exports=function(e,t){return e===undefined?arguments.length<2?"":t:r(e)}},96215:function(e,t,n){"use strict";var r=n(23939),o=TypeError;e.exports=function(e){if(r(e))throw o("The method doesn't accept regular expressions");return e}},90059:function(e,t,n){"use strict";var r=n(25511).isFinite;e.exports=Number.isFinite||function(e){return"number"==typeof e&&r(e)}},39302:function(e,t,n){"use strict";var r=n(25511),o=n(3440),i=n(38457),a=n(39599),u=n(93842).trim,s=n(87780),c=i("".charAt),l=r.parseFloat,f=r.Symbol,d=f&&f.iterator,p=1/l(s+"-0")!=-Infinity||d&&!o((function(){l(Object(d))}));e.exports=p?function(e){var t=u(a(e)),n=l(t);return 0===n&&"-"==c(t,0)?-0:n}:l},89466:function(e,t,n){"use strict";var r=n(25511),o=n(3440),i=n(38457),a=n(39599),u=n(93842).trim,s=n(87780),c=r.parseInt,l=r.Symbol,f=l&&l.iterator,d=/^[+-]?0x/i,p=i(d.exec),h=8!==c(s+"08")||22!==c(s+"0x16")||f&&!o((function(){c(Object(f))}));e.exports=h?function(e,t){var n=u(a(e));return c(n,t>>>0||(p(d,n)?16:10))}:c},24293:function(e,t,n){"use strict";var r=n(4098),o=n(38457),i=n(68609),a=n(3440),u=n(27911),s=n(13963),c=n(70704),l=n(39134),f=n(89753),d=Object.assign,p=Object.defineProperty,h=o([].concat);e.exports=!d||a((function(){if(r&&1!==d({b:1},d(p({},"a",{enumerable:!0,get:function(){p(this,"b",{value:3,enumerable:!1})}}),{b:2})).b)return!0;var e={},t={},n=Symbol(),o="abcdefghijklmnopqrst";return e[n]=7,o.split("").forEach((function(e){t[e]=e})),7!=d({},e)[n]||u(d({},t)).join("")!=o}))?function(e,t){for(var n=l(e),o=arguments.length,a=1,d=s.f,p=c.f;o>a;)for(var v,m=f(arguments[a++]),g=d?h(u(m),d(m)):u(m),y=g.length,b=0;y>b;)v=g[b++],r&&!i(p,m,v)||(n[v]=m[v]);return n}:d},8356:function(e,t,n){"use strict";var r,o=n(8782),i=n(9672),a=n(51264),u=n(94083),s=n(44648),c=n(9639),l=n(50331),f="prototype",d="script",p=l("IE_PROTO"),h=function(){},v=function(e){return"<"+d+">"+e+""},m=function(e){e.write(v("")),e.close();var t=e.parentWindow.Object;return e=null,t},g=function(){try{r=new ActiveXObject("htmlfile")}catch(i){}var e,t,n;g="undefined"!=typeof document?document.domain&&r?m(r):(t=c("iframe"),n="java"+d+":",t.style.display="none",s.appendChild(t),t.src=String(n),(e=t.contentWindow.document).open(),e.write(v("document.F=Object")),e.close(),e.F):m(r);for(var o=a.length;o--;)delete g[f][a[o]];return g()};u[p]=!0,e.exports=Object.create||function(e,t){var n;return null!==e?(h[f]=o(e),n=new h,h[f]=null,n[p]=e):n=g(),t===undefined?n:i.f(n,t)}},9672:function(e,t,n){"use strict";var r=n(4098),o=n(78590),i=n(92867),a=n(8782),u=n(19091),s=n(27911);t.f=r&&!o?Object.defineProperties:function(e,t){a(e);for(var n,r=u(t),o=s(t),c=o.length,l=0;c>l;)i.f(e,n=o[l++],r[n]);return e}},92867:function(e,t,n){"use strict";var r=n(4098),o=n(46999),i=n(78590),a=n(8782),u=n(21266),s=TypeError,c=Object.defineProperty,l=Object.getOwnPropertyDescriptor,f="enumerable",d="configurable",p="writable";t.f=r?i?function(e,t,n){if(a(e),t=u(t),a(n),"function"==typeof e&&"prototype"===t&&"value"in n&&p in n&&!n[p]){var r=l(e,t);r&&r[p]&&(e[t]=n.value,n={configurable:d in n?n[d]:r[d],enumerable:f in n?n[f]:r[f],writable:!1})}return c(e,t,n)}:c:function(e,t,n){if(a(e),t=u(t),a(n),o)try{return c(e,t,n)}catch(r){}if("get"in n||"set"in n)throw s("Accessors not supported");return"value"in n&&(e[t]=n.value),e}},18593:function(e,t,n){"use strict";var r=n(4098),o=n(68609),i=n(70704),a=n(12311),u=n(19091),s=n(21266),c=n(35821),l=n(46999),f=Object.getOwnPropertyDescriptor;t.f=r?f:function(e,t){if(e=u(e),t=s(t),l)try{return f(e,t)}catch(n){}if(c(e,t))return a(!o(i.f,e,t),e[t])}},26661:function(e,t,n){"use strict";var r=n(86790),o=n(19091),i=n(86658).f,a=n(51450),u="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[];e.exports.f=function(e){return u&&"Window"==r(e)?function(e){try{return i(e)}catch(t){return a(u)}}(e):i(o(e))}},86658:function(e,t,n){"use strict";var r=n(61698),o=n(51264).concat("length","prototype");t.f=Object.getOwnPropertyNames||function(e){return r(e,o)}},13963:function(e,t){"use strict";t.f=Object.getOwnPropertySymbols},45526:function(e,t,n){"use strict";var r=n(35821),o=n(48609),i=n(39134),a=n(50331),u=n(16308),s=a("IE_PROTO"),c=Object,l=c.prototype;e.exports=u?c.getPrototypeOf:function(e){var t=i(e);if(r(t,s))return t[s];var n=t.constructor;return o(n)&&t instanceof n?n.prototype:t instanceof c?l:null}},77311:function(e,t,n){"use strict";var r=n(3440),o=n(46840),i=n(86790),a=n(29613),u=Object.isExtensible,s=r((function(){u(1)}));e.exports=s||a?function(e){return!!o(e)&&(!a||"ArrayBuffer"!=i(e))&&(!u||u(e))}:u},52625:function(e,t,n){"use strict";var r=n(38457);e.exports=r({}.isPrototypeOf)},61698:function(e,t,n){"use strict";var r=n(38457),o=n(35821),i=n(19091),a=n(16077).indexOf,u=n(94083),s=r([].push);e.exports=function(e,t){var n,r=i(e),c=0,l=[];for(n in r)!o(u,n)&&o(r,n)&&s(l,n);for(;t.length>c;)o(r,n=t[c++])&&(~a(l,n)||s(l,n));return l}},27911:function(e,t,n){"use strict";var r=n(61698),o=n(51264);e.exports=Object.keys||function(e){return r(e,o)}},70704:function(e,t){"use strict";var n={}.propertyIsEnumerable,r=Object.getOwnPropertyDescriptor,o=r&&!n.call({1:2},1);t.f=o?function(e){var t=r(this,e);return!!t&&t.enumerable}:n},17446:function(e,t,n){"use strict";var r=n(65787),o=n(25511),i=n(3440),a=n(51737);e.exports=r||!i((function(){if(!(a&&a<535)){var e=Math.random();__defineSetter__.call(null,e,(function(){})),delete o[e]}}))},97916:function(e,t,n){"use strict";var r=n(38457),o=n(8782),i=n(1198);e.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var e,t=!1,n={};try{(e=r(Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set))(n,[]),t=n instanceof Array}catch(a){}return function(n,r){return o(n),i(r),t?e(n,r):n.__proto__=r,n}}():undefined)},33903:function(e,t,n){"use strict";var r=n(4098),o=n(38457),i=n(27911),a=n(19091),u=o(n(70704).f),s=o([].push),c=function(e){return function(t){for(var n,o=a(t),c=i(o),l=c.length,f=0,d=[];l>f;)n=c[f++],r&&!u(o,n)||s(d,e?[n,o[n]]:o[n]);return d}};e.exports={entries:c(!0),values:c(!1)}},28006:function(e,t,n){"use strict";var r=n(23371),o=n(13149);e.exports=r?{}.toString:function(){return"[object "+o(this)+"]"}},79910:function(e,t,n){"use strict";var r=n(68609),o=n(48609),i=n(46840),a=TypeError;e.exports=function(e,t){var n,u;if("string"===t&&o(n=e.toString)&&!i(u=r(n,e)))return u;if(o(n=e.valueOf)&&!i(u=r(n,e)))return u;if("string"!==t&&o(n=e.toString)&&!i(u=r(n,e)))return u;throw a("Can't convert object to primitive value")}},32884:function(e,t,n){"use strict";var r=n(53242),o=n(38457),i=n(86658),a=n(13963),u=n(8782),s=o([].concat);e.exports=r("Reflect","ownKeys")||function(e){var t=i.f(u(e)),n=a.f;return n?s(t,n(e)):t}},18524:function(e,t,n){"use strict";var r=n(25511);e.exports=r},15058:function(e){"use strict";e.exports=function(e){try{return{error:!1,value:e()}}catch(t){return{error:!0,value:t}}}},9325:function(e,t,n){"use strict";var r=n(25511),o=n(46795),i=n(48609),a=n(50330),u=n(91634),s=n(42847),c=n(87789),l=n(79346),f=n(65787),d=n(88088),p=o&&o.prototype,h=s("species"),v=!1,m=i(r.PromiseRejectionEvent),g=a("Promise",(function(){var e=u(o),t=e!==String(o);if(!t&&66===d)return!0;if(f&&(!p["catch"]||!p["finally"]))return!0;if(!d||d<51||!/native code/.test(e)){var n=new o((function(e){e(1)})),r=function(e){e((function(){}),(function(){}))};if((n.constructor={})[h]=r,!(v=n.then((function(){}))instanceof r))return!0}return!t&&(c||l)&&!m}));e.exports={CONSTRUCTOR:g,REJECTION_EVENT:m,SUBCLASSING:v}},46795:function(e,t,n){"use strict";var r=n(25511);e.exports=r.Promise},77125:function(e,t,n){"use strict";var r=n(8782),o=n(46840),i=n(26149);e.exports=function(e,t){if(r(e),o(t)&&t.constructor===e)return t;var n=i.f(e);return(0,n.resolve)(t),n.promise}},40554:function(e,t,n){"use strict";var r=n(46795),o=n(32938),i=n(9325).CONSTRUCTOR;e.exports=i||!o((function(e){r.all(e).then(undefined,(function(){}))}))},64692:function(e,t,n){"use strict";var r=n(92867).f;e.exports=function(e,t,n){n in e||r(e,n,{configurable:!0,get:function(){return t[n]},set:function(e){t[n]=e}})}},65921:function(e){"use strict";var t=function(){this.head=null,this.tail=null};t.prototype={add:function(e){var t={item:e,next:null};this.head?this.tail.next=t:this.head=t,this.tail=t},get:function(){var e=this.head;if(e)return this.head=e.next,this.tail===e&&(this.tail=null),e.item}},e.exports=t},84639:function(e,t,n){"use strict";var r=n(68609),o=n(8782),i=n(48609),a=n(86790),u=n(34062),s=TypeError;e.exports=function(e,t){var n=e.exec;if(i(n)){var c=r(n,e,t);return null!==c&&o(c),c}if("RegExp"===a(e))return r(u,e,t);throw s("RegExp#exec called on incompatible receiver")}},34062:function(e,t,n){"use strict";var r,o,i=n(68609),a=n(38457),u=n(39599),s=n(52673),c=n(86325),l=n(71928),f=n(8356),d=n(29017).get,p=n(62986),h=n(74842),v=l("native-string-replace",String.prototype.replace),m=RegExp.prototype.exec,g=m,y=a("".charAt),b=a("".indexOf),x=a("".replace),w=a("".slice),E=(o=/b*/g,i(m,r=/a/,"a"),i(m,o,"a"),0!==r.lastIndex||0!==o.lastIndex),_=c.BROKEN_CARET,D=/()??/.exec("")[1]!==undefined;(E||D||_||p||h)&&(g=function(e){var t,n,r,o,a,c,l,p=this,h=d(p),C=u(e),k=h.raw;if(k)return k.lastIndex=p.lastIndex,t=i(g,k,C),p.lastIndex=k.lastIndex,t;var A=h.groups,S=_&&p.sticky,N=i(s,p),O=p.source,F=0,M=C;if(S&&(N=x(N,"y",""),-1===b(N,"g")&&(N+="g"),M=w(C,p.lastIndex),p.lastIndex>0&&(!p.multiline||p.multiline&&"\n"!==y(C,p.lastIndex-1))&&(O="(?: "+O+")",M=" "+M,F++),n=new RegExp("^(?:"+O+")",N)),D&&(n=new RegExp("^"+O+"$(?!\\s)",N)),E&&(r=p.lastIndex),o=i(m,S?n:p,M),S?o?(o.input=w(o.input,F),o[0]=w(o[0],F),o.index=p.lastIndex,p.lastIndex+=o[0].length):p.lastIndex=0:E&&o&&(p.lastIndex=p.global?o.index+o[0].length:r),D&&o&&o.length>1&&i(v,o[0],n,(function(){for(a=1;ab)","g");return"b"!==e.exec("b").groups.a||"bc"!=="b".replace(e,"$c")}))},49290:function(e,t,n){"use strict";var r=n(92625),o=TypeError;e.exports=function(e){if(r(e))throw o("Can't call method on "+e);return e}},87091:function(e){"use strict";e.exports=Object.is||function(e,t){return e===t?0!==e||1/e==1/t:e!=e&&t!=t}},23852:function(e,t,n){"use strict";var r,o=n(25511),i=n(42177),a=n(48609),u=n(40073),s=n(46032),c=n(92098),l=n(44020),f=o.Function,d=/MSIE .\./.test(s)||u&&((r=o.Bun.version.split(".")).length<3||0==r[0]&&(r[1]<3||3==r[1]&&0==r[2]));e.exports=function(e,t){var n=t?2:1;return d?function(r,o){var u=l(arguments.length,1)>n,s=a(r)?r:f(r),d=u?c(arguments,n):[],p=u?function(){i(s,this,d)}:s;return t?e(p,o):e(p)}:e}},97194:function(e,t,n){"use strict";var r=n(53242),o=n(92867),i=n(42847),a=n(4098),u=i("species");e.exports=function(e){var t=r(e),n=o.f;a&&t&&!t[u]&&n(t,u,{configurable:!0,get:function(){return this}})}},13453:function(e,t,n){"use strict";var r=n(92867).f,o=n(35821),i=n(42847)("toStringTag");e.exports=function(e,t,n){e&&!n&&(e=e.prototype),e&&!o(e,i)&&r(e,i,{configurable:!0,value:t})}},50331:function(e,t,n){"use strict";var r=n(71928),o=n(93054),i=r("keys");e.exports=function(e){return i[e]||(i[e]=o(e))}},45065:function(e,t,n){"use strict";var r=n(25511),o=n(60095),i="__core-js_shared__",a=r[i]||o(i,{});e.exports=a},71928:function(e,t,n){"use strict";var r=n(65787),o=n(45065);(e.exports=function(e,t){return o[e]||(o[e]=t!==undefined?t:{})})("versions",[]).push({version:"3.27.1",mode:r?"pure":"global",copyright:"\xa9 2014-2022 Denis Pushkarev (zloirock.ru)",license:"https://github.com/zloirock/core-js/blob/v3.27.1/LICENSE",source:"https://github.com/zloirock/core-js"})},75693:function(e,t,n){"use strict";var r=n(8782),o=n(82269),i=n(92625),a=n(42847)("species");e.exports=function(e,t){var n,u=r(e).constructor;return u===undefined||i(n=r(u)[a])?t:o(n)}},86651:function(e,t,n){"use strict";var r=n(3440);e.exports=function(e){return r((function(){var t=""[e]('"');return t!==t.toLowerCase()||t.split('"').length>3}))}},59524:function(e,t,n){"use strict";var r=n(38457),o=n(53893),i=n(39599),a=n(49290),u=r("".charAt),s=r("".charCodeAt),c=r("".slice),l=function(e){return function(t,n){var r,l,f=i(a(t)),d=o(n),p=f.length;return d<0||d>=p?e?"":undefined:(r=s(f,d))<55296||r>56319||d+1===p||(l=s(f,d+1))<56320||l>57343?e?u(f,d):r:e?c(f,d,d+2):l-56320+(r-55296<<10)+65536}};e.exports={codeAt:l(!1),charAt:l(!0)}},8751:function(e,t,n){"use strict";var r=n(46032);e.exports=/Version\/10(?:\.\d+){1,2}(?: [\w./]+)?(?: Mobile\/\w+)? Safari\//.test(r)},99335:function(e,t,n){"use strict";var r=n(38457),o=n(60780),i=n(39599),a=n(82341),u=n(49290),s=r(a),c=r("".slice),l=Math.ceil,f=function(e){return function(t,n,r){var a,f,d=i(u(t)),p=o(n),h=d.length,v=r===undefined?" ":i(r);return p<=h||""==v?d:((f=s(v,l((a=p-h)/v.length))).length>a&&(f=c(f,0,a)),e?d+f:f+d)}};e.exports={start:f(!1),end:f(!0)}},82341:function(e,t,n){"use strict";var r=n(53893),o=n(39599),i=n(49290),a=RangeError;e.exports=function(e){var t=o(i(this)),n="",u=r(e);if(u<0||u==Infinity)throw a("Wrong number of repetitions");for(;u>0;(u>>>=1)&&(t+=t))1&u&&(n+=t);return n}},91898:function(e,t,n){"use strict";var r=n(93842).end,o=n(44082);e.exports=o("trimEnd")?function(){return r(this)}:"".trimEnd},44082:function(e,t,n){"use strict";var r=n(2142).PROPER,o=n(3440),i=n(87780);e.exports=function(e){return o((function(){return!!i[e]()||"\u200b\x85\u180e"!=="\u200b\x85\u180e"[e]()||r&&i[e].name!==e}))}},92368:function(e,t,n){"use strict";var r=n(93842).start,o=n(44082);e.exports=o("trimStart")?function(){return r(this)}:"".trimStart},93842:function(e,t,n){"use strict";var r=n(38457),o=n(49290),i=n(39599),a=n(87780),u=r("".replace),s="["+a+"]",c=RegExp("^"+s+s+"*"),l=RegExp(s+s+"*$"),f=function(e){return function(t){var n=i(o(t));return 1&e&&(n=u(n,c,"")),2&e&&(n=u(n,l,"")),n}};e.exports={start:f(1),end:f(2),trim:f(3)}},60265:function(e,t,n){"use strict";var r=n(88088),o=n(3440);e.exports=!!Object.getOwnPropertySymbols&&!o((function(){var e=Symbol();return!String(e)||!(Object(e)instanceof Symbol)||!Symbol.sham&&r&&r<41}))},31572:function(e,t,n){"use strict";var r=n(68609),o=n(53242),i=n(42847),a=n(83972);e.exports=function(){var e=o("Symbol"),t=e&&e.prototype,n=t&&t.valueOf,u=i("toPrimitive");t&&!t[u]&&a(t,u,(function(e){return r(n,this)}),{arity:1})}},47862:function(e,t,n){"use strict";var r=n(60265);e.exports=r&&!!Symbol["for"]&&!!Symbol.keyFor},3017:function(e,t,n){"use strict";var r,o,i,a,u=n(25511),s=n(42177),c=n(66343),l=n(48609),f=n(35821),d=n(3440),p=n(44648),h=n(92098),v=n(9639),m=n(44020),g=n(39050),y=n(68173),b=u.setImmediate,x=u.clearImmediate,w=u.process,E=u.Dispatch,_=u.Function,D=u.MessageChannel,C=u.String,k=0,A={},S="onreadystatechange";try{r=u.location}catch(T){}var N=function(e){if(f(A,e)){var t=A[e];delete A[e],t()}},O=function(e){return function(){N(e)}},F=function(e){N(e.data)},M=function(e){u.postMessage(C(e),r.protocol+"//"+r.host)};b&&x||(b=function(e){m(arguments.length,1);var t=l(e)?e:_(e),n=h(arguments,1);return A[++k]=function(){s(t,undefined,n)},o(k),k},x=function(e){delete A[e]},y?o=function(e){w.nextTick(O(e))}:E&&E.now?o=function(e){E.now(O(e))}:D&&!g?(a=(i=new D).port2,i.port1.onmessage=F,o=c(a.postMessage,a)):u.addEventListener&&l(u.postMessage)&&!u.importScripts&&r&&"file:"!==r.protocol&&!d(M)?(o=M,u.addEventListener("message",F,!1)):o=S in v("script")?function(e){p.appendChild(v("script"))[S]=function(){p.removeChild(this),N(e)}}:function(e){setTimeout(O(e),0)}),e.exports={set:b,clear:x}},43270:function(e,t,n){"use strict";var r=n(38457);e.exports=r(1..valueOf)},46085:function(e,t,n){"use strict";var r=n(53893),o=Math.max,i=Math.min;e.exports=function(e,t){var n=r(e);return n<0?o(n+t,0):i(n,t)}},3114:function(e,t,n){"use strict";var r=n(73716),o=TypeError;e.exports=function(e){var t=r(e,"number");if("number"==typeof t)throw o("Can't convert number to bigint");return BigInt(t)}},93614:function(e,t,n){"use strict";var r=n(53893),o=n(60780),i=RangeError;e.exports=function(e){if(e===undefined)return 0;var t=r(e),n=o(t);if(t!==n)throw i("Wrong length or index");return n}},19091:function(e,t,n){"use strict";var r=n(89753),o=n(49290);e.exports=function(e){return r(o(e))}},53893:function(e,t,n){"use strict";var r=n(6730);e.exports=function(e){var t=+e;return t!=t||0===t?0:r(t)}},60780:function(e,t,n){"use strict";var r=n(53893),o=Math.min;e.exports=function(e){return e>0?o(r(e),9007199254740991):0}},39134:function(e,t,n){"use strict";var r=n(49290),o=Object;e.exports=function(e){return o(r(e))}},13129:function(e,t,n){"use strict";var r=n(91459),o=RangeError;e.exports=function(e,t){var n=r(e);if(n%t)throw o("Wrong offset");return n}},91459:function(e,t,n){"use strict";var r=n(53893),o=RangeError;e.exports=function(e){var t=r(e);if(t<0)throw o("The argument can't be less than 0");return t}},73716:function(e,t,n){"use strict";var r=n(68609),o=n(46840),i=n(32437),a=n(87869),u=n(79910),s=n(42847),c=TypeError,l=s("toPrimitive");e.exports=function(e,t){if(!o(e)||i(e))return e;var n,s=a(e,l);if(s){if(t===undefined&&(t="default"),n=r(s,e,t),!o(n)||i(n))return n;throw c("Can't convert object to primitive value")}return t===undefined&&(t="number"),u(e,t)}},21266:function(e,t,n){"use strict";var r=n(73716),o=n(32437);e.exports=function(e){var t=r(e,"string");return o(t)?t:t+""}},23371:function(e,t,n){"use strict";var r={};r[n(42847)("toStringTag")]="z",e.exports="[object z]"===String(r)},39599:function(e,t,n){"use strict";var r=n(13149),o=String;e.exports=function(e){if("Symbol"===r(e))throw TypeError("Cannot convert a Symbol value to a string");return o(e)}},29141:function(e){"use strict";var t=String;e.exports=function(e){try{return t(e)}catch(n){return"Object"}}},63541:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(68609),a=n(4098),u=n(1187),s=n(89746),c=n(78463),l=n(99078),f=n(12311),d=n(90460),p=n(22796),h=n(60780),v=n(93614),m=n(13129),g=n(21266),y=n(35821),b=n(13149),x=n(46840),w=n(32437),E=n(8356),_=n(52625),D=n(97916),C=n(86658).f,k=n(68071),A=n(40975).forEach,S=n(97194),N=n(92867),O=n(18593),F=n(29017),M=n(5283),T=F.get,I=F.set,B=F.enforce,L=N.f,P=O.f,j=Math.round,V=o.RangeError,R=c.ArrayBuffer,z=R.prototype,K=c.DataView,U=s.NATIVE_ARRAY_BUFFER_VIEWS,Y=s.TYPED_ARRAY_TAG,H=s.TypedArray,W=s.TypedArrayPrototype,$=s.aTypedArrayConstructor,G=s.isTypedArray,q="BYTES_PER_ELEMENT",Z="Wrong length",X=function(e,t){$(e);for(var n=0,r=t.length,o=new e(r);r>n;)o[n]=t[n++];return o},Q=function(e,t){L(e,t,{get:function(){return T(this)[t]}})},J=function(e){var t;return _(z,e)||"ArrayBuffer"==(t=b(e))||"SharedArrayBuffer"==t},ee=function(e,t){return G(e)&&!w(t)&&t in e&&p(+t)&&t>=0},te=function(e,t){return t=g(t),ee(e,t)?f(2,e[t]):P(e,t)},ne=function(e,t,n){return t=g(t),!(ee(e,t)&&x(n)&&y(n,"value"))||y(n,"get")||y(n,"set")||n.configurable||y(n,"writable")&&!n.writable||y(n,"enumerable")&&!n.enumerable?L(e,t,n):(e[t]=n.value,e)};a?(U||(O.f=te,N.f=ne,Q(W,"buffer"),Q(W,"byteOffset"),Q(W,"byteLength"),Q(W,"length")),r({target:"Object",stat:!0,forced:!U},{getOwnPropertyDescriptor:te,defineProperty:ne}),e.exports=function(e,t,n){var a=e.match(/\d+$/)[0]/8,s=e+(n?"Clamped":"")+"Array",c="get"+e,f="set"+e,p=o[s],g=p,y=g&&g.prototype,b={},w=function(e,t){L(e,t,{get:function(){return function(e,t){var n=T(e);return n.view[c](t*a+n.byteOffset,!0)}(this,t)},set:function(e){return function(e,t,r){var o=T(e);n&&(r=(r=j(r))<0?0:r>255?255:255&r),o.view[f](t*a+o.byteOffset,r,!0)}(this,t,e)},enumerable:!0})};U?u&&(g=t((function(e,t,n,r){return l(e,y),M(x(t)?J(t)?r!==undefined?new p(t,m(n,a),r):n!==undefined?new p(t,m(n,a)):new p(t):G(t)?X(g,t):i(k,g,t):new p(v(t)),e,g)})),D&&D(g,H),A(C(p),(function(e){e in g||d(g,e,p[e])})),g.prototype=y):(g=t((function(e,t,n,r){l(e,y);var o,u,s,c=0,f=0;if(x(t)){if(!J(t))return G(t)?X(g,t):i(k,g,t);o=t,f=m(n,a);var d=t.byteLength;if(r===undefined){if(d%a)throw V(Z);if((u=d-f)<0)throw V(Z)}else if((u=h(r)*a)+f>d)throw V(Z);s=u/a}else s=v(t),o=new R(u=s*a);for(I(e,{buffer:o,byteOffset:f,byteLength:u,length:s,view:new K(o)});c1?arguments[1]:undefined,D=_!==undefined,C=c(w);if(C&&!l(C))for(b=(y=s(w,C)).next,w=[];!(g=o(b,y)).done;)w.push(g.value);for(D&&E>2&&(_=r(_,arguments[2])),n=u(w),h=new(d(x))(n),v=f(h),t=0;n>t;t++)m=D?_(w[t],t):w[t],h[t]=v?p(m):+m;return h}},35927:function(e,t,n){"use strict";var r=n(89746),o=n(75693),i=r.aTypedArrayConstructor,a=r.getTypedArrayConstructor;e.exports=function(e){return i(o(e,a(e)))}},93054:function(e,t,n){"use strict";var r=n(38457),o=0,i=Math.random(),a=r(1..toString);e.exports=function(e){return"Symbol("+(e===undefined?"":e)+")_"+a(++o+i,36)}},79415:function(e,t,n){"use strict";var r=n(60265);e.exports=r&&!Symbol.sham&&"symbol"==typeof Symbol.iterator},78590:function(e,t,n){"use strict";var r=n(4098),o=n(3440);e.exports=r&&o((function(){return 42!=Object.defineProperty((function(){}),"prototype",{value:42,writable:!1}).prototype}))},44020:function(e){"use strict";var t=TypeError;e.exports=function(e,n){if(e2?arguments[2]:undefined,u=o(w,this);a?n=a(y(),u?i(this):w):(n=u?this:s(w),c(n,g,"Error")),t!==undefined&&c(n,"message",h(t)),m&&c(n,"stack",f(n.stack,1)),d(n,r);var l=[];return p(e,b,{that:l}),c(n,"errors",l),n};a?a(x,y):u(x,y,{name:!0});var w=x.prototype=s(y.prototype,{constructor:l(1,x),message:l(1,""),name:l(1,"AggregateError")});r({global:!0,constructor:!0,arity:2},{AggregateError:x})},89150:function(e,t,n){"use strict";n(86265)},72674:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(78463),a=n(97194),u="ArrayBuffer",s=i[u];r({global:!0,constructor:!0,forced:o[u]!==s},{ArrayBuffer:s}),a(u)},64432:function(e,t,n){"use strict";var r=n(65439),o=n(89746);r({target:"ArrayBuffer",stat:!0,forced:!o.NATIVE_ARRAY_BUFFER_VIEWS},{isView:o.isView})},97750:function(e,t,n){"use strict";var r=n(65439),o=n(42481),i=n(3440),a=n(78463),u=n(8782),s=n(46085),c=n(60780),l=n(75693),f=a.ArrayBuffer,d=a.DataView,p=d.prototype,h=o(f.prototype.slice),v=o(p.getUint8),m=o(p.setUint8);r({target:"ArrayBuffer",proto:!0,unsafe:!0,forced:i((function(){return!new f(2).slice(1,undefined).byteLength}))},{slice:function(e,t){if(h&&t===undefined)return h(u(this),e);for(var n=u(this).byteLength,r=s(e,n),o=s(t===undefined?n:t,n),i=new(l(this,f))(c(o-r)),a=new d(this),p=new d(i),g=0;r=51||!o((function(){var e=[];return e[v]=!1,e.concat()[0]!==e})),g=d("concat"),y=function(e){if(!a(e))return!1;var t=e[v];return t!==undefined?!!t:i(e)};r({target:"Array",proto:!0,arity:1,forced:!m||!g},{concat:function(e){var t,n,r,o,i,a=u(this),d=f(a,0),p=0;for(t=-1,r=arguments.length;t1?arguments[1]:undefined)}})},47676:function(e,t,n){"use strict";var r=n(65439),o=n(7381),i=n(21650);r({target:"Array",proto:!0},{fill:o}),i("fill")},84836:function(e,t,n){"use strict";var r=n(65439),o=n(40975).filter;r({target:"Array",proto:!0,forced:!n(731)("filter")},{filter:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}})},98452:function(e,t,n){"use strict";var r=n(65439),o=n(40975).findIndex,i=n(21650),a="findIndex",u=!0;a in[]&&Array(1)[a]((function(){u=!1})),r({target:"Array",proto:!0,forced:u},{findIndex:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}}),i(a)},13307:function(e,t,n){"use strict";var r=n(65439),o=n(40975).find,i=n(21650),a="find",u=!0;a in[]&&Array(1)[a]((function(){u=!1})),r({target:"Array",proto:!0,forced:u},{find:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}}),i(a)},73790:function(e,t,n){"use strict";var r=n(65439),o=n(44094),i=n(79030),a=n(39134),u=n(83440),s=n(56940);r({target:"Array",proto:!0},{flatMap:function(e){var t,n=a(this),r=u(n);return i(e),(t=s(n,0)).length=o(t,n,n,r,0,1,e,arguments.length>1?arguments[1]:undefined),t}})},66108:function(e,t,n){"use strict";var r=n(65439),o=n(44094),i=n(39134),a=n(83440),u=n(53893),s=n(56940);r({target:"Array",proto:!0},{flat:function(){var e=arguments.length?arguments[0]:undefined,t=i(this),n=a(t),r=s(t,0);return r.length=o(r,t,t,n,0,e===undefined?1:u(e)),r}})},40324:function(e,t,n){"use strict";var r=n(65439),o=n(11421);r({target:"Array",proto:!0,forced:[].forEach!=o},{forEach:o})},52650:function(e,t,n){"use strict";var r=n(65439),o=n(58578);r({target:"Array",stat:!0,forced:!n(32938)((function(e){Array.from(e)}))},{from:o})},40873:function(e,t,n){"use strict";var r=n(65439),o=n(16077).includes,i=n(3440),a=n(21650);r({target:"Array",proto:!0,forced:i((function(){return!Array(1).includes()}))},{includes:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}}),a("includes")},83754:function(e,t,n){"use strict";var r=n(65439),o=n(42481),i=n(16077).indexOf,a=n(38575),u=o([].indexOf),s=!!u&&1/u([1],1,-0)<0,c=a("indexOf");r({target:"Array",proto:!0,forced:s||!c},{indexOf:function(e){var t=arguments.length>1?arguments[1]:undefined;return s?u(this,e,t)||0:i(this,e,t)}})},21361:function(e,t,n){"use strict";n(65439)({target:"Array",stat:!0},{isArray:n(64739)})},20452:function(e,t,n){"use strict";var r=n(19091),o=n(21650),i=n(87804),a=n(29017),u=n(92867).f,s=n(63424),c=n(49764),l=n(65787),f=n(4098),d="Array Iterator",p=a.set,h=a.getterFor(d);e.exports=s(Array,"Array",(function(e,t){p(this,{type:d,target:r(e),index:0,kind:t})}),(function(){var e=h(this),t=e.target,n=e.kind,r=e.index++;return!t||r>=t.length?(e.target=undefined,c(undefined,!0)):c("keys"==n?r:"values"==n?t[r]:[r,t[r]],!1)}),"values");var v=i.Arguments=i.Array;if(o("keys"),o("values"),o("entries"),!l&&f&&"values"!==v.name)try{u(v,"name",{value:"values"})}catch(m){}},19037:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(89753),a=n(19091),u=n(38575),s=o([].join),c=i!=Object,l=u("join",",");r({target:"Array",proto:!0,forced:c||!l},{join:function(e){return s(a(this),e===undefined?",":e)}})},96967:function(e,t,n){"use strict";var r=n(65439),o=n(10303);r({target:"Array",proto:!0,forced:o!==[].lastIndexOf},{lastIndexOf:o})},93340:function(e,t,n){"use strict";var r=n(65439),o=n(40975).map;r({target:"Array",proto:!0,forced:!n(731)("map")},{map:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}})},35391:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=n(99418),a=n(15072),u=Array;r({target:"Array",stat:!0,forced:o((function(){function e(){}return!(u.of.call(e)instanceof e)}))},{of:function(){for(var e=0,t=arguments.length,n=new(i(this)?this:u)(t);t>e;)a(n,e,arguments[e++]);return n.length=t,n}})},36147:function(e,t,n){"use strict";var r=n(65439),o=n(55202).right,i=n(38575),a=n(88088),u=n(68173);r({target:"Array",proto:!0,forced:!i("reduceRight")||!u&&a>79&&a<83},{reduceRight:function(e){return o(this,e,arguments.length,arguments.length>1?arguments[1]:undefined)}})},15490:function(e,t,n){"use strict";var r=n(65439),o=n(55202).left,i=n(38575),a=n(88088),u=n(68173);r({target:"Array",proto:!0,forced:!i("reduce")||!u&&a>79&&a<83},{reduce:function(e){var t=arguments.length;return o(this,e,t,t>1?arguments[1]:undefined)}})},23128:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(64739),a=o([].reverse),u=[1,2];r({target:"Array",proto:!0,forced:String(u)===String(u.reverse())},{reverse:function(){return i(this)&&(this.length=this.length),a(this)}})},49866:function(e,t,n){"use strict";var r=n(65439),o=n(64739),i=n(99418),a=n(46840),u=n(46085),s=n(83440),c=n(19091),l=n(15072),f=n(42847),d=n(731),p=n(92098),h=d("slice"),v=f("species"),m=Array,g=Math.max;r({target:"Array",proto:!0,forced:!h},{slice:function(e,t){var n,r,f,d=c(this),h=s(d),y=u(e,h),b=u(t===undefined?h:t,h);if(o(d)&&(n=d.constructor,(i(n)&&(n===m||o(n.prototype))||a(n)&&null===(n=n[v]))&&(n=undefined),n===m||n===undefined))return p(d,y,b);for(r=new(n===undefined?m:n)(g(b-y,0)),f=0;y1?arguments[1]:undefined)}})},53260:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(79030),a=n(39134),u=n(83440),s=n(80323),c=n(39599),l=n(3440),f=n(89497),d=n(38575),p=n(98861),h=n(79920),v=n(88088),m=n(51737),g=[],y=o(g.sort),b=o(g.push),x=l((function(){g.sort(undefined)})),w=l((function(){g.sort(null)})),E=d("sort"),_=!l((function(){if(v)return v<70;if(!(p&&p>3)){if(h)return!0;if(m)return m<603;var e,t,n,r,o="";for(e=65;e<76;e++){switch(t=String.fromCharCode(e),e){case 66:case 69:case 70:case 72:n=3;break;case 68:case 71:n=4;break;default:n=2}for(r=0;r<47;r++)g.push({k:t+r,v:n})}for(g.sort((function(e,t){return t.v-e.v})),r=0;rc(n)?1:-1}}(e)),n=u(o),r=0;rx-r+n;m--)d(b,m-1)}else if(n>r)for(m=x-r;m>w;m--)y=m+n-1,(g=m+r-1)in b?b[y]=b[g]:d(b,y);for(m=0;m94906265.62425156?a(t)+s:o(t-1+u(t-1)*u(t+1))}})},86628:function(e,t,n){"use strict";var r=n(65439),o=Math.asinh,i=Math.log,a=Math.sqrt;r({target:"Math",stat:!0,forced:!(o&&1/o(0)>0)},{asinh:function u(e){var t=+e;return isFinite(t)&&0!=t?t<0?-u(-t):i(t+a(t*t+1)):t}})},48432:function(e,t,n){"use strict";var r=n(65439),o=Math.atanh,i=Math.log;r({target:"Math",stat:!0,forced:!(o&&1/o(-0)<0)},{atanh:function(e){var t=+e;return 0==t?t:i((1+t)/(1-t))/2}})},39081:function(e,t,n){"use strict";var r=n(65439),o=n(54768),i=Math.abs,a=Math.pow;r({target:"Math",stat:!0},{cbrt:function(e){var t=+e;return o(t)*a(i(t),1/3)}})},84666:function(e,t,n){"use strict";var r=n(65439),o=Math.floor,i=Math.log,a=Math.LOG2E;r({target:"Math",stat:!0},{clz32:function(e){var t=e>>>0;return t?31-o(i(t+.5)*a):32}})},12687:function(e,t,n){"use strict";var r=n(65439),o=n(48277),i=Math.cosh,a=Math.abs,u=Math.E;r({target:"Math",stat:!0,forced:!i||i(710)===Infinity},{cosh:function(e){var t=o(a(e)-1)+1;return(t+1/(t*u*u))*(u/2)}})},97015:function(e,t,n){"use strict";var r=n(65439),o=n(48277);r({target:"Math",stat:!0,forced:o!=Math.expm1},{expm1:o})},73838:function(e,t,n){"use strict";n(65439)({target:"Math",stat:!0},{fround:n(36344)})},35559:function(e,t,n){"use strict";var r=n(65439),o=Math.hypot,i=Math.abs,a=Math.sqrt;r({target:"Math",stat:!0,arity:2,forced:!!o&&o(Infinity,NaN)!==Infinity},{hypot:function(e,t){for(var n,r,o=0,u=0,s=arguments.length,c=0;u0?(r=n/c)*r:n;return c===Infinity?Infinity:c*a(o)}})},86378:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=Math.imul;r({target:"Math",stat:!0,forced:o((function(){return-5!=i(4294967295,5)||2!=i.length}))},{imul:function(e,t){var n=65535,r=+e,o=+t,i=n&r,a=n&o;return 0|i*a+((n&r>>>16)*a+i*(n&o>>>16)<<16>>>0)}})},93550:function(e,t,n){"use strict";n(65439)({target:"Math",stat:!0},{log10:n(84234)})},98102:function(e,t,n){"use strict";n(65439)({target:"Math",stat:!0},{log1p:n(77477)})},30584:function(e,t,n){"use strict";var r=n(65439),o=Math.log,i=Math.LN2;r({target:"Math",stat:!0},{log2:function(e){return o(e)/i}})},95379:function(e,t,n){"use strict";n(65439)({target:"Math",stat:!0},{sign:n(54768)})},92091:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=n(48277),a=Math.abs,u=Math.exp,s=Math.E;r({target:"Math",stat:!0,forced:o((function(){return-2e-17!=Math.sinh(-2e-17)}))},{sinh:function(e){var t=+e;return a(t)<1?(i(t)-i(-t))/2:(u(t-1)-u(-t-1))*(s/2)}})},73398:function(e,t,n){"use strict";var r=n(65439),o=n(48277),i=Math.exp;r({target:"Math",stat:!0},{tanh:function(e){var t=+e,n=o(t),r=o(-t);return n==Infinity?1:r==Infinity?-1:(n-r)/(i(t)+i(-t))}})},77545:function(e,t,n){"use strict";n(13453)(Math,"Math",!0)},72430:function(e,t,n){"use strict";n(65439)({target:"Math",stat:!0},{trunc:n(6730)})},23794:function(e,t,n){"use strict";var r=n(65439),o=n(65787),i=n(4098),a=n(25511),u=n(18524),s=n(38457),c=n(50330),l=n(35821),f=n(5283),d=n(52625),p=n(32437),h=n(73716),v=n(3440),m=n(86658).f,g=n(18593).f,y=n(92867).f,b=n(43270),x=n(93842).trim,w="Number",E=a[w],_=u[w],D=E.prototype,C=a.TypeError,k=s("".slice),A=s("".charCodeAt),S=function(e){var t=h(e,"number");return"bigint"==typeof t?t:N(t)},N=function(e){var t,n,r,o,i,a,u,s,c=h(e,"number");if(p(c))throw C("Cannot convert a Symbol value to a number");if("string"==typeof c&&c.length>2)if(c=x(c),43===(t=A(c,0))||45===t){if(88===(n=A(c,2))||120===n)return NaN}else if(48===t){switch(A(c,1)){case 66:case 98:r=2,o=49;break;case 79:case 111:r=8,o=55;break;default:return+c}for(a=(i=k(c,2)).length,u=0;uo)return NaN;return parseInt(i,r)}return+c},O=c(w,!E(" 0o1")||!E("0b1")||E("+0x1")),F=function(e){return d(D,e)&&v((function(){b(e)}))},M=function(e){var t=arguments.length<1?0:E(S(e));return F(this)?f(Object(t),this,M):t};M.prototype=D,O&&!o&&(D.constructor=M),r({global:!0,constructor:!0,wrap:!0,forced:O},{Number:M});var T=function(e,t){for(var n,r=i?m(t):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,isFinite,isInteger,isNaN,isSafeInteger,parseFloat,parseInt,fromString,range".split(","),o=0;r.length>o;o++)l(t,n=r[o])&&!l(e,n)&&y(e,n,g(t,n))};o&&_&&T(u[w],_),(O||o)&&T(u[w],E)},55349:function(e,t,n){"use strict";n(65439)({target:"Number",stat:!0,nonConfigurable:!0,nonWritable:!0},{EPSILON:Math.pow(2,-52)})},27495:function(e,t,n){"use strict";n(65439)({target:"Number",stat:!0},{isFinite:n(90059)})},59798:function(e,t,n){"use strict";n(65439)({target:"Number",stat:!0},{isInteger:n(22796)})},33089:function(e,t,n){"use strict";n(65439)({target:"Number",stat:!0},{isNaN:function(e){return e!=e}})},37881:function(e,t,n){"use strict";var r=n(65439),o=n(22796),i=Math.abs;r({target:"Number",stat:!0},{isSafeInteger:function(e){return o(e)&&i(e)<=9007199254740991}})},78876:function(e,t,n){"use strict";n(65439)({target:"Number",stat:!0,nonConfigurable:!0,nonWritable:!0},{MAX_SAFE_INTEGER:9007199254740991})},9344:function(e,t,n){"use strict";n(65439)({target:"Number",stat:!0,nonConfigurable:!0,nonWritable:!0},{MIN_SAFE_INTEGER:-9007199254740991})},86071:function(e,t,n){"use strict";var r=n(65439),o=n(39302);r({target:"Number",stat:!0,forced:Number.parseFloat!=o},{parseFloat:o})},84717:function(e,t,n){"use strict";var r=n(65439),o=n(89466);r({target:"Number",stat:!0,forced:Number.parseInt!=o},{parseInt:o})},86649:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(53893),a=n(43270),u=n(82341),s=n(3440),c=RangeError,l=String,f=Math.floor,d=o(u),p=o("".slice),h=o(1..toFixed),v=function b(e,t,n){return 0===t?n:t%2==1?b(e,t-1,n*e):b(e*e,t/2,n)},m=function(e,t,n){for(var r=-1,o=n;++r<6;)o+=t*e[r],e[r]=o%1e7,o=f(o/1e7)},g=function(e,t){for(var n=6,r=0;--n>=0;)r+=e[n],e[n]=f(r/t),r=r%t*1e7},y=function(e){for(var t=6,n="";--t>=0;)if(""!==n||0===t||0!==e[t]){var r=l(e[t]);n=""===n?r:n+d("0",7-r.length)+r}return n};r({target:"Number",proto:!0,forced:s((function(){return"0.000"!==h(8e-5,3)||"1"!==h(.9,0)||"1.25"!==h(1.255,2)||"1000000000000000128"!==h(0xde0b6b3a7640080,0)}))||!s((function(){h({})}))},{toFixed:function(e){var t,n,r,o,u=a(this),s=i(e),f=[0,0,0,0,0,0],h="",b="0";if(s<0||s>20)throw c("Incorrect fraction digits");if(u!=u)return"NaN";if(u<=-1e21||u>=1e21)return l(u);if(u<0&&(h="-",u=-u),u>1e-21)if(n=(t=function(e){for(var t=0,n=e;n>=4096;)t+=12,n/=4096;for(;n>=2;)t+=1,n/=2;return t}(u*v(2,69,1))-69)<0?u*v(2,-t,1):u/v(2,t,1),n*=4503599627370496,(t=52-t)>0){for(m(f,0,n),r=s;r>=7;)m(f,1e7,0),r-=7;for(m(f,v(10,r,1),0),r=t-1;r>=23;)g(f,1<<23),r-=23;g(f,1<0?h+((o=b.length)<=s?"0."+d("0",s-o)+b:p(b,0,o-s)+"."+p(b,o-s)):h+b}})},424:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(3440),a=n(43270),u=o(1..toPrecision);r({target:"Number",proto:!0,forced:i((function(){return"1"!==u(1,undefined)}))||!i((function(){u({})}))},{toPrecision:function(e){return e===undefined?u(a(this)):u(a(this),e)}})},51829:function(e,t,n){"use strict";var r=n(65439),o=n(24293);r({target:"Object",stat:!0,arity:2,forced:Object.assign!==o},{assign:o})},93543:function(e,t,n){"use strict";n(65439)({target:"Object",stat:!0,sham:!n(4098)},{create:n(8356)})},51647:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(17446),a=n(79030),u=n(39134),s=n(92867);o&&r({target:"Object",proto:!0,forced:i},{__defineGetter__:function(e,t){s.f(u(this),e,{get:a(t),enumerable:!0,configurable:!0})}})},44589:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(9672).f;r({target:"Object",stat:!0,forced:Object.defineProperties!==i,sham:!o},{defineProperties:i})},9024:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(92867).f;r({target:"Object",stat:!0,forced:Object.defineProperty!==i,sham:!o},{defineProperty:i})},60291:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(17446),a=n(79030),u=n(39134),s=n(92867);o&&r({target:"Object",proto:!0,forced:i},{__defineSetter__:function(e,t){s.f(u(this),e,{set:a(t),enumerable:!0,configurable:!0})}})},62412:function(e,t,n){"use strict";var r=n(65439),o=n(33903).entries;r({target:"Object",stat:!0},{entries:function(e){return o(e)}})},96064:function(e,t,n){"use strict";var r=n(65439),o=n(14097),i=n(3440),a=n(46840),u=n(94986).onFreeze,s=Object.freeze;r({target:"Object",stat:!0,forced:i((function(){s(1)})),sham:!o},{freeze:function(e){return s&&a(e)?s(u(e)):e}})},61640:function(e,t,n){"use strict";var r=n(65439),o=n(6111),i=n(15072);r({target:"Object",stat:!0},{fromEntries:function(e){var t={};return o(e,(function(e,n){i(t,e,n)}),{AS_ENTRIES:!0}),t}})},62506:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=n(19091),a=n(18593).f,u=n(4098),s=o((function(){a(1)}));r({target:"Object",stat:!0,forced:!u||s,sham:!u},{getOwnPropertyDescriptor:function(e,t){return a(i(e),t)}})},10828:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(32884),a=n(19091),u=n(18593),s=n(15072);r({target:"Object",stat:!0,sham:!o},{getOwnPropertyDescriptors:function(e){for(var t,n,r=a(e),o=u.f,c=i(r),l={},f=0;c.length>f;)(n=o(r,t=c[f++]))!==undefined&&s(l,t,n);return l}})},69270:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=n(26661).f;r({target:"Object",stat:!0,forced:o((function(){return!Object.getOwnPropertyNames(1)}))},{getOwnPropertyNames:i})},31656:function(e,t,n){"use strict";var r=n(65439),o=n(60265),i=n(3440),a=n(13963),u=n(39134);r({target:"Object",stat:!0,forced:!o||i((function(){a.f(1)}))},{getOwnPropertySymbols:function(e){var t=a.f;return t?t(u(e)):[]}})},50077:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=n(39134),a=n(45526),u=n(16308);r({target:"Object",stat:!0,forced:o((function(){a(1)})),sham:!u},{getPrototypeOf:function(e){return a(i(e))}})},32961:function(e,t,n){"use strict";var r=n(65439),o=n(77311);r({target:"Object",stat:!0,forced:Object.isExtensible!==o},{isExtensible:o})},86181:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=n(46840),a=n(86790),u=n(29613),s=Object.isFrozen;r({target:"Object",stat:!0,forced:o((function(){s(1)}))||u},{isFrozen:function(e){return!i(e)||!(!u||"ArrayBuffer"!=a(e))||!!s&&s(e)}})},58055:function(e,t,n){"use strict";var r=n(65439),o=n(3440),i=n(46840),a=n(86790),u=n(29613),s=Object.isSealed;r({target:"Object",stat:!0,forced:o((function(){s(1)}))||u},{isSealed:function(e){return!i(e)||!(!u||"ArrayBuffer"!=a(e))||!!s&&s(e)}})},81011:function(e,t,n){"use strict";n(65439)({target:"Object",stat:!0},{is:n(87091)})},94625:function(e,t,n){"use strict";var r=n(65439),o=n(39134),i=n(27911);r({target:"Object",stat:!0,forced:n(3440)((function(){i(1)}))},{keys:function(e){return i(o(e))}})},66807:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(17446),a=n(39134),u=n(21266),s=n(45526),c=n(18593).f;o&&r({target:"Object",proto:!0,forced:i},{__lookupGetter__:function(e){var t,n=a(this),r=u(e);do{if(t=c(n,r))return t.get}while(n=s(n))}})},90146:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(17446),a=n(39134),u=n(21266),s=n(45526),c=n(18593).f;o&&r({target:"Object",proto:!0,forced:i},{__lookupSetter__:function(e){var t,n=a(this),r=u(e);do{if(t=c(n,r))return t.set}while(n=s(n))}})},43015:function(e,t,n){"use strict";var r=n(65439),o=n(46840),i=n(94986).onFreeze,a=n(14097),u=n(3440),s=Object.preventExtensions;r({target:"Object",stat:!0,forced:u((function(){s(1)})),sham:!a},{preventExtensions:function(e){return s&&o(e)?s(i(e)):e}})},82034:function(e,t,n){"use strict";var r=n(65439),o=n(46840),i=n(94986).onFreeze,a=n(14097),u=n(3440),s=Object.seal;r({target:"Object",stat:!0,forced:u((function(){s(1)})),sham:!a},{seal:function(e){return s&&o(e)?s(i(e)):e}})},84641:function(e,t,n){"use strict";n(65439)({target:"Object",stat:!0},{setPrototypeOf:n(97916)})},84005:function(e,t,n){"use strict";var r=n(23371),o=n(83972),i=n(28006);r||o(Object.prototype,"toString",i,{unsafe:!0})},58928:function(e,t,n){"use strict";var r=n(65439),o=n(33903).values;r({target:"Object",stat:!0},{values:function(e){return o(e)}})},60586:function(e,t,n){"use strict";var r=n(65439),o=n(39302);r({global:!0,forced:parseFloat!=o},{parseFloat:o})},16664:function(e,t,n){"use strict";var r=n(65439),o=n(89466);r({global:!0,forced:parseInt!=o},{parseInt:o})},95938:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(79030),a=n(26149),u=n(15058),s=n(6111);r({target:"Promise",stat:!0},{allSettled:function(e){var t=this,n=a.f(t),r=n.resolve,c=n.reject,l=u((function(){var n=i(t.resolve),a=[],u=0,c=1;s(e,(function(e){var i=u++,s=!1;c++,o(n,t,e).then((function(e){s||(s=!0,a[i]={status:"fulfilled",value:e},--c||r(a))}),(function(e){s||(s=!0,a[i]={status:"rejected",reason:e},--c||r(a))}))})),--c||r(a)}));return l.error&&c(l.value),n.promise}})},38977:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(79030),a=n(26149),u=n(15058),s=n(6111);r({target:"Promise",stat:!0,forced:n(40554)},{all:function(e){var t=this,n=a.f(t),r=n.resolve,c=n.reject,l=u((function(){var n=i(t.resolve),a=[],u=0,l=1;s(e,(function(e){var i=u++,s=!1;l++,o(n,t,e).then((function(e){s||(s=!0,a[i]=e,--l||r(a))}),c)})),--l||r(a)}));return l.error&&c(l.value),n.promise}})},24875:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(79030),a=n(53242),u=n(26149),s=n(15058),c=n(6111),l="No one promise resolved";r({target:"Promise",stat:!0},{any:function(e){var t=this,n=a("AggregateError"),r=u.f(t),f=r.resolve,d=r.reject,p=s((function(){var r=i(t.resolve),a=[],u=0,s=1,p=!1;c(e,(function(e){var i=u++,c=!1;s++,o(r,t,e).then((function(e){c||p||(p=!0,f(e))}),(function(e){c||p||(c=!0,a[i]=e,--s||d(new n(a,l)))}))})),--s||d(new n(a,l))}));return p.error&&d(p.value),r.promise}})},49361:function(e,t,n){"use strict";var r=n(65439),o=n(65787),i=n(9325).CONSTRUCTOR,a=n(46795),u=n(53242),s=n(48609),c=n(83972),l=a&&a.prototype;if(r({target:"Promise",proto:!0,forced:i,real:!0},{"catch":function(e){return this.then(undefined,e)}}),!o&&s(a)){var f=u("Promise").prototype["catch"];l["catch"]!==f&&c(l,"catch",f,{unsafe:!0})}},54064:function(e,t,n){"use strict";var r,o,i,a=n(65439),u=n(65787),s=n(68173),c=n(25511),l=n(68609),f=n(83972),d=n(97916),p=n(13453),h=n(97194),v=n(79030),m=n(48609),g=n(46840),y=n(99078),b=n(75693),x=n(3017).set,w=n(5934),E=n(74394),_=n(15058),D=n(65921),C=n(29017),k=n(46795),A=n(9325),S=n(26149),N="Promise",O=A.CONSTRUCTOR,F=A.REJECTION_EVENT,M=A.SUBCLASSING,T=C.getterFor(N),I=C.set,B=k&&k.prototype,L=k,P=B,j=c.TypeError,V=c.document,R=c.process,z=S.f,K=z,U=!!(V&&V.createEvent&&c.dispatchEvent),Y="unhandledrejection",H=function(e){var t;return!(!g(e)||!m(t=e.then))&&t},W=function(e,t){var n,r,o,i=t.value,a=1==t.state,u=a?e.ok:e.fail,s=e.resolve,c=e.reject,f=e.domain;try{u?(a||(2===t.rejection&&X(t),t.rejection=1),!0===u?n=i:(f&&f.enter(),n=u(i),f&&(f.exit(),o=!0)),n===e.promise?c(j("Promise-chain cycle")):(r=H(n))?l(r,n,s,c):s(n)):c(i)}catch(d){f&&!o&&f.exit(),c(d)}},$=function(e,t){e.notified||(e.notified=!0,w((function(){for(var n,r=e.reactions;n=r.get();)W(n,e);e.notified=!1,t&&!e.rejection&&q(e)})))},G=function(e,t,n){var r,o;U?((r=V.createEvent("Event")).promise=t,r.reason=n,r.initEvent(e,!1,!0),c.dispatchEvent(r)):r={promise:t,reason:n},!F&&(o=c["on"+e])?o(r):e===Y&&E("Unhandled promise rejection",n)},q=function(e){l(x,c,(function(){var t,n=e.facade,r=e.value;if(Z(e)&&(t=_((function(){s?R.emit("unhandledRejection",r,n):G(Y,n,r)})),e.rejection=s||Z(e)?2:1,t.error))throw t.value}))},Z=function(e){return 1!==e.rejection&&!e.parent},X=function(e){l(x,c,(function(){var t=e.facade;s?R.emit("rejectionHandled",t):G("rejectionhandled",t,e.value)}))},Q=function(e,t,n){return function(r){e(t,r,n)}},J=function(e,t,n){e.done||(e.done=!0,n&&(e=n),e.value=t,e.state=2,$(e,!0))},ee=function ne(e,t,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===t)throw j("Promise can't be resolved itself");var r=H(t);r?w((function(){var n={done:!1};try{l(r,t,Q(ne,n,e),Q(J,n,e))}catch(o){J(n,o,e)}})):(e.value=t,e.state=1,$(e,!1))}catch(o){J({done:!1},o,e)}}};if(O&&(L=function(e){y(this,P),v(e),l(r,this);var t=T(this);try{e(Q(ee,t),Q(J,t))}catch(n){J(t,n)}},P=L.prototype,(r=function(e){I(this,{type:N,done:!1,notified:!1,parent:!1,reactions:new D,rejection:!1,state:0,value:undefined})}).prototype=f(P,"then",(function(e,t){var n=T(this),r=z(b(this,L));return n.parent=!0,r.ok=!m(e)||e,r.fail=m(t)&&t,r.domain=s?R.domain:undefined,0==n.state?n.reactions.add(r):w((function(){W(r,n)})),r.promise})),o=function(){var e=new r,t=T(e);this.promise=e,this.resolve=Q(ee,t),this.reject=Q(J,t)},S.f=z=function(e){return e===L||undefined===e?new o(e):K(e)},!u&&m(k)&&B!==Object.prototype)){i=B.then,M||f(B,"then",(function(e,t){var n=this;return new L((function(e,t){l(i,n,e,t)})).then(e,t)}),{unsafe:!0});try{delete B.constructor}catch(te){}d&&d(B,P)}a({global:!0,constructor:!0,wrap:!0,forced:O},{Promise:L}),p(L,N,!1,!0),h(N)},31625:function(e,t,n){"use strict";var r=n(65439),o=n(65787),i=n(46795),a=n(3440),u=n(53242),s=n(48609),c=n(75693),l=n(77125),f=n(83972),d=i&&i.prototype;if(r({target:"Promise",proto:!0,real:!0,forced:!!i&&a((function(){d["finally"].call({then:function(){}},(function(){}))}))},{"finally":function(e){var t=c(this,u("Promise")),n=s(e);return this.then(n?function(n){return l(t,e()).then((function(){return n}))}:e,n?function(n){return l(t,e()).then((function(){throw n}))}:e)}}),!o&&s(i)){var p=u("Promise").prototype["finally"];d["finally"]!==p&&f(d,"finally",p,{unsafe:!0})}},37759:function(e,t,n){"use strict";n(54064),n(38977),n(49361),n(79024),n(91525),n(15078)},79024:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(79030),a=n(26149),u=n(15058),s=n(6111);r({target:"Promise",stat:!0,forced:n(40554)},{race:function(e){var t=this,n=a.f(t),r=n.reject,c=u((function(){var a=i(t.resolve);s(e,(function(e){o(a,t,e).then(n.resolve,r)}))}));return c.error&&r(c.value),n.promise}})},91525:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(26149);r({target:"Promise",stat:!0,forced:n(9325).CONSTRUCTOR},{reject:function(e){var t=i.f(this);return o(t.reject,undefined,e),t.promise}})},15078:function(e,t,n){"use strict";var r=n(65439),o=n(53242),i=n(65787),a=n(46795),u=n(9325).CONSTRUCTOR,s=n(77125),c=o("Promise"),l=i&&!u;r({target:"Promise",stat:!0,forced:i||u},{resolve:function(e){return s(l&&this===c?a:this,e)}})},96161:function(e,t,n){"use strict";var r=n(65439),o=n(42177),i=n(79030),a=n(8782);r({target:"Reflect",stat:!0,forced:!n(3440)((function(){Reflect.apply((function(){}))}))},{apply:function(e,t,n){return o(i(e),t,a(n))}})},12977:function(e,t,n){"use strict";var r=n(65439),o=n(53242),i=n(42177),a=n(87637),u=n(82269),s=n(8782),c=n(46840),l=n(8356),f=n(3440),d=o("Reflect","construct"),p=Object.prototype,h=[].push,v=f((function(){function e(){}return!(d((function(){}),[],e)instanceof e)})),m=!f((function(){d((function(){}))})),g=v||m;r({target:"Reflect",stat:!0,forced:g,sham:g},{construct:function(e,t){u(e),s(t);var n=arguments.length<3?e:u(arguments[2]);if(m&&!v)return d(e,t,n);if(e==n){switch(t.length){case 0:return new e;case 1:return new e(t[0]);case 2:return new e(t[0],t[1]);case 3:return new e(t[0],t[1],t[2]);case 4:return new e(t[0],t[1],t[2],t[3])}var r=[null];return i(h,r,t),new(i(a,e,r))}var o=n.prototype,f=l(c(o)?o:p),g=i(e,f,t);return c(g)?g:f}})},30687:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(8782),a=n(21266),u=n(92867);r({target:"Reflect",stat:!0,forced:n(3440)((function(){Reflect.defineProperty(u.f({},1,{value:1}),1,{value:2})})),sham:!o},{defineProperty:function(e,t,n){i(e);var r=a(t);i(n);try{return u.f(e,r,n),!0}catch(o){return!1}}})},68136:function(e,t,n){"use strict";var r=n(65439),o=n(8782),i=n(18593).f;r({target:"Reflect",stat:!0},{deleteProperty:function(e,t){var n=i(o(e),t);return!(n&&!n.configurable)&&delete e[t]}})},64434:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(8782),a=n(18593);r({target:"Reflect",stat:!0,sham:!o},{getOwnPropertyDescriptor:function(e,t){return a.f(i(e),t)}})},24010:function(e,t,n){"use strict";var r=n(65439),o=n(8782),i=n(45526);r({target:"Reflect",stat:!0,sham:!n(16308)},{getPrototypeOf:function(e){return i(o(e))}})},43207:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(46840),a=n(8782),u=n(72040),s=n(18593),c=n(45526);r({target:"Reflect",stat:!0},{get:function l(e,t){var n,r,f=arguments.length<3?e:arguments[2];return a(e)===f?e[t]:(n=s.f(e,t))?u(n)?n.value:n.get===undefined?undefined:o(n.get,f):i(r=c(e))?l(r,t,f):void 0}})},73055:function(e,t,n){"use strict";n(65439)({target:"Reflect",stat:!0},{has:function(e,t){return t in e}})},17847:function(e,t,n){"use strict";var r=n(65439),o=n(8782),i=n(77311);r({target:"Reflect",stat:!0},{isExtensible:function(e){return o(e),i(e)}})},36825:function(e,t,n){"use strict";n(65439)({target:"Reflect",stat:!0},{ownKeys:n(32884)})},51301:function(e,t,n){"use strict";var r=n(65439),o=n(53242),i=n(8782);r({target:"Reflect",stat:!0,sham:!n(14097)},{preventExtensions:function(e){i(e);try{var t=o("Object","preventExtensions");return t&&t(e),!0}catch(n){return!1}}})},51517:function(e,t,n){"use strict";var r=n(65439),o=n(8782),i=n(1198),a=n(97916);a&&r({target:"Reflect",stat:!0},{setPrototypeOf:function(e,t){o(e),i(t);try{return a(e,t),!0}catch(n){return!1}}})},68527:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(8782),a=n(46840),u=n(72040),s=n(3440),c=n(92867),l=n(18593),f=n(45526),d=n(12311);r({target:"Reflect",stat:!0,forced:s((function(){var e=function(){},t=c.f(new e,"a",{configurable:!0});return!1!==Reflect.set(e.prototype,"a",1,t)}))},{set:function p(e,t,n){var r,s,h,v=arguments.length<4?e:arguments[3],m=l.f(i(e),t);if(!m){if(a(s=f(e)))return p(s,t,n,v);m=d(0)}if(u(m)){if(!1===m.writable||!a(v))return!1;if(r=l.f(v,t)){if(r.get||r.set||!1===r.writable)return!1;r.value=n,c.f(v,t,r)}else c.f(v,t,d(0,n))}else{if((h=m.set)===undefined)return!1;o(h,v,n)}return!0}})},64028:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(13453);r({global:!0},{Reflect:{}}),i(o.Reflect,"Reflect",!0)},52634:function(e,t,n){"use strict";var r=n(4098),o=n(25511),i=n(38457),a=n(50330),u=n(5283),s=n(90460),c=n(86658).f,l=n(52625),f=n(23939),d=n(39599),p=n(83904),h=n(86325),v=n(64692),m=n(83972),g=n(3440),y=n(35821),b=n(29017).enforce,x=n(97194),w=n(42847),E=n(62986),_=n(74842),D=w("match"),C=o.RegExp,k=C.prototype,A=o.SyntaxError,S=i(k.exec),N=i("".charAt),O=i("".replace),F=i("".indexOf),M=i("".slice),T=/^\?<[^\s\d!#%&*+<=>@^][^\s!#%&*+<=>@^]*>/,I=/a/g,B=/a/g,L=new C(I)!==I,P=h.MISSED_STICKY,j=h.UNSUPPORTED_Y,V=r&&(!L||P||E||_||g((function(){return B[D]=!1,C(I)!=I||C(B)==B||"/a/i"!=C(I,"i")})));if(a("RegExp",V)){for(var R=function(e,t){var n,r,o,i,a,c,h=l(k,this),v=f(e),m=t===undefined,g=[],x=e;if(!h&&v&&m&&e.constructor===R)return e;if((v||l(k,e))&&(e=e.source,m&&(t=p(x))),e=e===undefined?"":d(e),t=t===undefined?"":d(t),x=e,E&&"dotAll"in I&&(r=!!t&&F(t,"s")>-1)&&(t=O(t,/s/g,"")),n=t,P&&"sticky"in I&&(o=!!t&&F(t,"y")>-1)&&j&&(t=O(t,/y/g,"")),_&&(i=function(e){for(var t,n=e.length,r=0,o="",i=[],a={},u=!1,s=!1,c=0,l="";r<=n;r++){if("\\"===(t=N(e,r)))t+=N(e,++r);else if("]"===t)u=!1;else if(!u)switch(!0){case"["===t:u=!0;break;case"("===t:S(T,M(e,r+1))&&(r+=2,s=!0),o+=t,c++;continue;case">"===t&&s:if(""===l||y(a,l))throw new A("Invalid capture group name");a[l]=!0,i[i.length]=[l,c],s=!1,l="";continue}s?l+=t:o+=t}return[o,i]}(e),e=i[0],g=i[1]),a=u(C(e,t),h?this:k,R),(r||o||g.length)&&(c=b(a),r&&(c.dotAll=!0,c.raw=R(function(e){for(var t,n=e.length,r=0,o="",i=!1;r<=n;r++)"\\"!==(t=N(e,r))?i||"."!==t?("["===t?i=!0:"]"===t&&(i=!1),o+=t):o+="[\\s\\S]":o+=t+N(e,++r);return o}(e),n)),o&&(c.sticky=!0),g.length&&(c.groups=g)),e!==x)try{s(a,"source",""===x?"(?:)":x)}catch(w){}return a},z=c(C),K=0;z.length>K;)v(R,C,z[K++]);k.constructor=R,R.prototype=k,m(o,"RegExp",R,{constructor:!0})}x("RegExp")},34067:function(e,t,n){"use strict";var r=n(65439),o=n(34062);r({target:"RegExp",proto:!0,forced:/./.exec!==o},{exec:o})},58023:function(e,t,n){"use strict";var r=n(25511),o=n(4098),i=n(39836),a=n(52673),u=n(3440),s=r.RegExp,c=s.prototype;o&&u((function(){var e=!0;try{s(".","d")}catch(u){e=!1}var t={},n="",r=e?"dgimsy":"gimsy",o=function(e,r){Object.defineProperty(t,e,{get:function(){return n+=r,!0}})},i={dotAll:"s",global:"g",ignoreCase:"i",multiline:"m",sticky:"y"};for(var a in e&&(i.hasIndices="d"),i)o(a,i[a]);return Object.getOwnPropertyDescriptor(c,"flags").get.call(t)!==r||n!==r}))&&i(c,"flags",{configurable:!0,get:a})},85574:function(e,t,n){"use strict";var r=n(4098),o=n(86325).MISSED_STICKY,i=n(86790),a=n(39836),u=n(29017).get,s=RegExp.prototype,c=TypeError;r&&o&&a(s,"sticky",{configurable:!0,get:function(){if(this===s)return undefined;if("RegExp"===i(this))return!!u(this).sticky;throw c("Incompatible receiver, RegExp required")}})},78607:function(e,t,n){"use strict";n(34067);var r,o,i=n(65439),a=n(68609),u=n(48609),s=n(8782),c=n(39599),l=(r=!1,(o=/[ac]/).exec=function(){return r=!0,/./.exec.apply(this,arguments)},!0===o.test("abc")&&r),f=/./.test;i({target:"RegExp",proto:!0,forced:!l},{test:function(e){var t=s(this),n=c(e),r=t.exec;if(!u(r))return a(f,t,n);var o=a(r,t,n);return null!==o&&(s(o),!0)}})},21313:function(e,t,n){"use strict";var r=n(2142).PROPER,o=n(83972),i=n(8782),a=n(39599),u=n(3440),s=n(83904),c="toString",l=RegExp.prototype[c],f=u((function(){return"/a/b"!=l.call({source:"a",flags:"b"})})),d=r&&l.name!=c;(f||d)&&o(RegExp.prototype,c,(function(){var e=i(this);return"/"+a(e.source)+"/"+a(s(e))}),{unsafe:!0})},46177:function(e,t,n){"use strict";n(18207)("Set",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(88511))},42255:function(e,t,n){"use strict";n(46177)},47763:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("anchor")},{anchor:function(e){return o(this,"a","name",e)}})},14330:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("big")},{big:function(){return o(this,"big","","")}})},44245:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("blink")},{blink:function(){return o(this,"blink","","")}})},12870:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("bold")},{bold:function(){return o(this,"b","","")}})},42200:function(e,t,n){"use strict";var r=n(65439),o=n(59524).codeAt;r({target:"String",proto:!0},{codePointAt:function(e){return o(this,e)}})},41707:function(e,t,n){"use strict";var r,o=n(65439),i=n(42481),a=n(18593).f,u=n(60780),s=n(39599),c=n(96215),l=n(49290),f=n(83196),d=n(65787),p=i("".endsWith),h=i("".slice),v=Math.min,m=f("endsWith");o({target:"String",proto:!0,forced:!!(d||m||(r=a(String.prototype,"endsWith"),!r||r.writable))&&!m},{endsWith:function(e){var t=s(l(this));c(e);var n=arguments.length>1?arguments[1]:undefined,r=t.length,o=n===undefined?r:v(u(n),r),i=s(e);return p?p(t,i,o):h(t,o-i.length,o)===i}})},2896:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("fixed")},{fixed:function(){return o(this,"tt","","")}})},68134:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("fontcolor")},{fontcolor:function(e){return o(this,"font","color",e)}})},26269:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("fontsize")},{fontsize:function(e){return o(this,"font","size",e)}})},5923:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(46085),a=RangeError,u=String.fromCharCode,s=String.fromCodePoint,c=o([].join);r({target:"String",stat:!0,arity:1,forced:!!s&&1!=s.length},{fromCodePoint:function(e){for(var t,n=[],r=arguments.length,o=0;r>o;){if(t=+arguments[o++],i(t,1114111)!==t)throw a(t+" is not a valid code point");n[o]=t<65536?u(t):u(55296+((t-=65536)>>10),t%1024+56320)}return c(n,"")}})},47543:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(96215),a=n(49290),u=n(39599),s=n(83196),c=o("".indexOf);r({target:"String",proto:!0,forced:!s("includes")},{includes:function(e){return!!~c(u(a(this)),u(i(e)),arguments.length>1?arguments[1]:undefined)}})},10073:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("italics")},{italics:function(){return o(this,"i","","")}})},20861:function(e,t,n){"use strict";var r=n(59524).charAt,o=n(39599),i=n(29017),a=n(63424),u=n(49764),s="String Iterator",c=i.set,l=i.getterFor(s);a(String,"String",(function(e){c(this,{type:s,string:o(e),index:0})}),(function(){var e,t=l(this),n=t.string,o=t.index;return o>=n.length?u(undefined,!0):(e=r(n,o),t.index+=e.length,u(e,!1))}))},25767:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("link")},{link:function(e){return o(this,"a","href",e)}})},64622:function(e,t,n){"use strict";var r=n(65439),o=n(68609),i=n(42481),a=n(40897),u=n(49764),s=n(49290),c=n(60780),l=n(39599),f=n(8782),d=n(92625),p=n(86790),h=n(23939),v=n(83904),m=n(87869),g=n(83972),y=n(3440),b=n(42847),x=n(75693),w=n(1491),E=n(84639),_=n(29017),D=n(65787),C=b("matchAll"),k="RegExp String",A=k+" Iterator",S=_.set,N=_.getterFor(A),O=RegExp.prototype,F=TypeError,M=i("".indexOf),T=i("".matchAll),I=!!T&&!y((function(){T("a",/./)})),B=a((function(e,t,n,r){S(this,{type:A,regexp:e,string:t,global:n,unicode:r,done:!1})}),k,(function(){var e=N(this);if(e.done)return u(undefined,!0);var t=e.regexp,n=e.string,r=E(t,n);return null===r?(e.done=!0,u(undefined,!0)):e.global?(""===l(r[0])&&(t.lastIndex=w(n,c(t.lastIndex),e.unicode)),u(r,!1)):(e.done=!0,u(r,!1))})),L=function(e){var t,n,r,o=f(this),i=l(e),a=x(o,RegExp),u=l(v(o));return t=new a(a===RegExp?o.source:o,u),n=!!~M(u,"g"),r=!!~M(u,"u"),t.lastIndex=c(o.lastIndex),new B(t,i,n,r)};r({target:"String",proto:!0,forced:I},{matchAll:function(e){var t,n,r,i,a=s(this);if(d(e)){if(I)return T(a,e)}else{if(h(e)&&(t=l(s(v(e))),!~M(t,"g")))throw F("`.matchAll` does not allow non-global regexes");if(I)return T(a,e);if((r=m(e,C))===undefined&&D&&"RegExp"==p(e)&&(r=L),r)return o(r,e,a)}return n=l(a),i=new RegExp(e,"g"),D?o(L,i,n):i[C](n)}}),D||C in O||g(O,C,L)},38947:function(e,t,n){"use strict";var r=n(68609),o=n(3306),i=n(8782),a=n(92625),u=n(60780),s=n(39599),c=n(49290),l=n(87869),f=n(1491),d=n(84639);o("match",(function(e,t,n){return[function(t){var n=c(this),o=a(t)?undefined:l(t,e);return o?r(o,t,n):new RegExp(t)[e](s(n))},function(e){var r=i(this),o=s(e),a=n(t,r,o);if(a.done)return a.value;if(!r.global)return d(r,o);var c=r.unicode;r.lastIndex=0;for(var l,p=[],h=0;null!==(l=d(r,o));){var v=s(l[0]);p[h]=v,""===v&&(r.lastIndex=f(o,u(r.lastIndex),c)),h++}return 0===h?null:p}]}))},9436:function(e,t,n){"use strict";var r=n(65439),o=n(99335).end;r({target:"String",proto:!0,forced:n(8751)},{padEnd:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}})},3741:function(e,t,n){"use strict";var r=n(65439),o=n(99335).start;r({target:"String",proto:!0,forced:n(8751)},{padStart:function(e){return o(this,e,arguments.length>1?arguments[1]:undefined)}})},94095:function(e,t,n){"use strict";var r=n(65439),o=n(38457),i=n(19091),a=n(39134),u=n(39599),s=n(83440),c=o([].push),l=o([].join);r({target:"String",stat:!0},{raw:function(e){for(var t=i(a(e).raw),n=s(t),r=arguments.length,o=[],f=0;n>f;){if(c(o,u(t[f++])),f===n)return l(o,"");fe.length?-1:""===t?n:y(e,t,n)};r({target:"String",proto:!0},{replaceAll:function(e,t){var n,r,i,h,_,D,C,k,A,S=a(this),N=0,O=0,F="";if(!s(e)){if((n=c(e))&&(r=l(a(d(e))),!~y(r,"g")))throw g("`.replaceAll` does not allow non-global regexes");if(i=f(e,m))return o(i,e,S,t);if(v&&n)return b(l(S),e,t)}for(h=l(S),_=l(e),(D=u(t))||(t=l(t)),C=_.length,k=w(1,C),N=E(h,_,0);-1!==N;)A=D?l(t(_,N,h)):p(_,h,N,[],undefined,t),F+=x(h,O,N)+A,O=N+C,N=E(h,_,N+k);return O=O&&(N+=C(u,O,T)+j,O=T+M.length)}return N+C(u,O)}]}),!!u((function(){var e=/./;return e.exec=function(){var e=[];return e.groups={a:"7"},e},"7"!=="".replace(e,"$")}))||!k||A)},39704:function(e,t,n){"use strict";var r=n(68609),o=n(3306),i=n(8782),a=n(92625),u=n(49290),s=n(87091),c=n(39599),l=n(87869),f=n(84639);o("search",(function(e,t,n){return[function(t){var n=u(this),o=a(t)?undefined:l(t,e);return o?r(o,t,n):new RegExp(t)[e](c(n))},function(e){var r=i(this),o=c(e),a=n(t,r,o);if(a.done)return a.value;var u=r.lastIndex;s(u,0)||(r.lastIndex=0);var l=f(r,o);return s(r.lastIndex,u)||(r.lastIndex=u),null===l?-1:l.index}]}))},59732:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("small")},{small:function(){return o(this,"small","","")}})},36240:function(e,t,n){"use strict";var r=n(42177),o=n(68609),i=n(38457),a=n(3306),u=n(8782),s=n(92625),c=n(23939),l=n(49290),f=n(75693),d=n(1491),p=n(60780),h=n(39599),v=n(87869),m=n(51450),g=n(84639),y=n(34062),b=n(86325),x=n(3440),w=b.UNSUPPORTED_Y,E=4294967295,_=Math.min,D=[].push,C=i(/./.exec),k=i(D),A=i("".slice),S=!x((function(){var e=/(?:)/,t=e.exec;e.exec=function(){return t.apply(this,arguments)};var n="ab".split(e);return 2!==n.length||"a"!==n[0]||"b"!==n[1]}));a("split",(function(e,t,n){var i;return i="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(e,n){var i=h(l(this)),a=n===undefined?E:n>>>0;if(0===a)return[];if(e===undefined)return[i];if(!c(e))return o(t,i,e,a);for(var u,s,f,d=[],p=(e.ignoreCase?"i":"")+(e.multiline?"m":"")+(e.unicode?"u":"")+(e.sticky?"y":""),v=0,g=new RegExp(e.source,p+"g");(u=o(y,g,i))&&!((s=g.lastIndex)>v&&(k(d,A(i,v,u.index)),u.length>1&&u.index=a));)g.lastIndex===u.index&&g.lastIndex++;return v===i.length?!f&&C(g,"")||k(d,""):k(d,A(i,v)),d.length>a?m(d,0,a):d}:"0".split(undefined,0).length?function(e,n){return e===undefined&&0===n?[]:o(t,this,e,n)}:t,[function(t,n){var r=l(this),a=s(t)?undefined:v(t,e);return a?o(a,t,r,n):o(i,h(r),t,n)},function(e,r){var o=u(this),a=h(e),s=n(i,o,a,r,i!==t);if(s.done)return s.value;var c=f(o,RegExp),l=o.unicode,v=(o.ignoreCase?"i":"")+(o.multiline?"m":"")+(o.unicode?"u":"")+(w?"g":"y"),m=new c(w?"^(?:"+o.source+")":o,v),y=r===undefined?E:r>>>0;if(0===y)return[];if(0===a.length)return null===g(m,a)?[a]:[];for(var b=0,x=0,D=[];x1?arguments[1]:undefined,t.length)),r=s(e);return p?p(t,r,n):h(t,n,n+r.length)===r}})},70796:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("strike")},{strike:function(){return o(this,"strike","","")}})},78800:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("sub")},{sub:function(){return o(this,"sub","","")}})},92421:function(e,t,n){"use strict";var r=n(65439),o=n(10782);r({target:"String",proto:!0,forced:n(86651)("sup")},{sup:function(){return o(this,"sup","","")}})},69534:function(e,t,n){"use strict";n(20640);var r=n(65439),o=n(91898);r({target:"String",proto:!0,name:"trimEnd",forced:"".trimEnd!==o},{trimEnd:o})},3716:function(e,t,n){"use strict";var r=n(65439),o=n(92368);r({target:"String",proto:!0,name:"trimStart",forced:"".trimLeft!==o},{trimLeft:o})},20640:function(e,t,n){"use strict";var r=n(65439),o=n(91898);r({target:"String",proto:!0,name:"trimEnd",forced:"".trimRight!==o},{trimRight:o})},73702:function(e,t,n){"use strict";n(3716);var r=n(65439),o=n(92368);r({target:"String",proto:!0,name:"trimStart",forced:"".trimStart!==o},{trimStart:o})},97713:function(e,t,n){"use strict";var r=n(65439),o=n(93842).trim;r({target:"String",proto:!0,forced:n(44082)("trim")},{trim:function(){return o(this)}})},45465:function(e,t,n){"use strict";n(68666)("asyncIterator")},73245:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(68609),a=n(38457),u=n(65787),s=n(4098),c=n(60265),l=n(3440),f=n(35821),d=n(52625),p=n(8782),h=n(19091),v=n(21266),m=n(39599),g=n(12311),y=n(8356),b=n(27911),x=n(86658),w=n(26661),E=n(13963),_=n(18593),D=n(92867),C=n(9672),k=n(70704),A=n(83972),S=n(71928),N=n(50331),O=n(94083),F=n(93054),M=n(42847),T=n(39479),I=n(68666),B=n(31572),L=n(13453),P=n(29017),j=n(40975).forEach,V=N("hidden"),R="Symbol",z="prototype",K=P.set,U=P.getterFor(R),Y=Object[z],H=o.Symbol,W=H&&H[z],$=o.TypeError,G=o.QObject,q=_.f,Z=D.f,X=w.f,Q=k.f,J=a([].push),ee=S("symbols"),te=S("op-symbols"),ne=S("wks"),re=!G||!G[z]||!G[z].findChild,oe=s&&l((function(){return 7!=y(Z({},"a",{get:function(){return Z(this,"a",{value:7}).a}})).a}))?function(e,t,n){var r=q(Y,t);r&&delete Y[t],Z(e,t,n),r&&e!==Y&&Z(Y,t,r)}:Z,ie=function(e,t){var n=ee[e]=y(W);return K(n,{type:R,tag:e,description:t}),s||(n.description=t),n},ae=function(e,t,n){e===Y&&ae(te,t,n),p(e);var r=v(t);return p(n),f(ee,r)?(n.enumerable?(f(e,V)&&e[V][r]&&(e[V][r]=!1),n=y(n,{enumerable:g(0,!1)})):(f(e,V)||Z(e,V,g(1,{})),e[V][r]=!0),oe(e,r,n)):Z(e,r,n)},ue=function(e,t){p(e);var n=h(t),r=b(n).concat(de(n));return j(r,(function(t){s&&!i(ce,n,t)||ae(e,t,n[t])})),e},se=function(e,t){return t===undefined?y(e):ue(y(e),t)},ce=function(e){var t=v(e),n=i(Q,this,t);return!(this===Y&&f(ee,t)&&!f(te,t))&&(!(n||!f(this,t)||!f(ee,t)||f(this,V)&&this[V][t])||n)},le=function(e,t){var n=h(e),r=v(t);if(n!==Y||!f(ee,r)||f(te,r)){var o=q(n,r);return!o||!f(ee,r)||f(n,V)&&n[V][r]||(o.enumerable=!0),o}},fe=function(e){var t=X(h(e)),n=[];return j(t,(function(e){f(ee,e)||f(O,e)||J(n,e)})),n},de=function(e){var t=e===Y,n=X(t?te:h(e)),r=[];return j(n,(function(e){!f(ee,e)||t&&!f(Y,e)||J(r,ee[e])})),r};c||(H=function(){if(d(W,this))throw $("Symbol is not a constructor");var e=arguments.length&&arguments[0]!==undefined?m(arguments[0]):undefined,t=F(e),n=function r(e){this===Y&&i(r,te,e),f(this,V)&&f(this[V],t)&&(this[V][t]=!1),oe(this,t,g(1,e))};return s&&re&&oe(Y,t,{configurable:!0,set:n}),ie(t,e)},A(W=H[z],"toString",(function(){return U(this).tag})),A(H,"withoutSetter",(function(e){return ie(F(e),e)})),k.f=ce,D.f=ae,C.f=ue,_.f=le,x.f=w.f=fe,E.f=de,T.f=function(e){return ie(M(e),e)},s&&(Z(W,"description",{configurable:!0,get:function(){return U(this).description}}),u||A(Y,"propertyIsEnumerable",ce,{unsafe:!0}))),r({global:!0,constructor:!0,wrap:!0,forced:!c,sham:!c},{Symbol:H}),j(b(ne),(function(e){I(e)})),r({target:R,stat:!0,forced:!c},{useSetter:function(){re=!0},useSimple:function(){re=!1}}),r({target:"Object",stat:!0,forced:!c,sham:!s},{create:se,defineProperty:ae,defineProperties:ue,getOwnPropertyDescriptor:le}),r({target:"Object",stat:!0,forced:!c},{getOwnPropertyNames:fe}),B(),L(H,R),O[V]=!0},12231:function(e,t,n){"use strict";var r=n(65439),o=n(4098),i=n(25511),a=n(38457),u=n(35821),s=n(48609),c=n(52625),l=n(39599),f=n(92867).f,d=n(25361),p=i.Symbol,h=p&&p.prototype;if(o&&s(p)&&(!("description"in h)||p().description!==undefined)){var v={},m=function(){var e=arguments.length<1||arguments[0]===undefined?undefined:l(arguments[0]),t=c(h,this)?new p(e):e===undefined?p():p(e);return""===e&&(v[t]=!0),t};d(m,p),m.prototype=h,h.constructor=m;var g="Symbol(test)"==String(p("test")),y=a(h.valueOf),b=a(h.toString),x=/^Symbol\((.*)\)[^)]+$/,w=a("".replace),E=a("".slice);f(h,"description",{configurable:!0,get:function(){var e=y(this);if(u(v,e))return"";var t=b(e),n=g?E(t,7,-1):w(t,x,"$1");return""===n?undefined:n}}),r({global:!0,constructor:!0,forced:!0},{Symbol:m})}},11418:function(e,t,n){"use strict";var r=n(65439),o=n(53242),i=n(35821),a=n(39599),u=n(71928),s=n(47862),c=u("string-to-symbol-registry"),l=u("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!s},{"for":function(e){var t=a(e);if(i(c,t))return c[t];var n=o("Symbol")(t);return c[t]=n,l[n]=t,n}})},80407:function(e,t,n){"use strict";n(68666)("hasInstance")},30414:function(e,t,n){"use strict";n(68666)("isConcatSpreadable")},70890:function(e,t,n){"use strict";n(68666)("iterator")},92414:function(e,t,n){"use strict";n(73245),n(11418),n(49590),n(282),n(31656)},49590:function(e,t,n){"use strict";var r=n(65439),o=n(35821),i=n(32437),a=n(29141),u=n(71928),s=n(47862),c=u("symbol-to-string-registry");r({target:"Symbol",stat:!0,forced:!s},{keyFor:function(e){if(!i(e))throw TypeError(a(e)+" is not a symbol");if(o(c,e))return c[e]}})},75712:function(e,t,n){"use strict";n(68666)("matchAll")},20926:function(e,t,n){"use strict";n(68666)("match")},93604:function(e,t,n){"use strict";n(68666)("replace")},62278:function(e,t,n){"use strict";n(68666)("search")},76494:function(e,t,n){"use strict";n(68666)("species")},76685:function(e,t,n){"use strict";n(68666)("split")},24200:function(e,t,n){"use strict";var r=n(68666),o=n(31572);r("toPrimitive"),o()},75914:function(e,t,n){"use strict";var r=n(53242),o=n(68666),i=n(13453);o("toStringTag"),i(r("Symbol"),"Symbol")},14965:function(e,t,n){"use strict";n(68666)("unscopables")},37313:function(e,t,n){"use strict";var r=n(38457),o=n(89746),i=r(n(96833)),a=o.aTypedArray;(0,o.exportTypedArrayMethod)("copyWithin",(function(e,t){return i(a(this),e,t,arguments.length>2?arguments[2]:undefined)}))},93349:function(e,t,n){"use strict";var r=n(89746),o=n(40975).every,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("every",(function(e){return o(i(this),e,arguments.length>1?arguments[1]:undefined)}))},13317:function(e,t,n){"use strict";var r=n(89746),o=n(7381),i=n(3114),a=n(13149),u=n(68609),s=n(38457),c=n(3440),l=r.aTypedArray,f=r.exportTypedArrayMethod,d=s("".slice);f("fill",(function(e){var t=arguments.length;l(this);var n="Big"===d(a(this),0,3)?i(e):+e;return u(o,this,n,t>1?arguments[1]:undefined,t>2?arguments[2]:undefined)}),c((function(){var e=0;return new Int8Array(2).fill({valueOf:function(){return e++}}),1!==e})))},23238:function(e,t,n){"use strict";var r=n(89746),o=n(40975).filter,i=n(43657),a=r.aTypedArray;(0,r.exportTypedArrayMethod)("filter",(function(e){var t=o(a(this),e,arguments.length>1?arguments[1]:undefined);return i(this,t)}))},92404:function(e,t,n){"use strict";var r=n(89746),o=n(40975).findIndex,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("findIndex",(function(e){return o(i(this),e,arguments.length>1?arguments[1]:undefined)}))},84904:function(e,t,n){"use strict";var r=n(89746),o=n(40975).find,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("find",(function(e){return o(i(this),e,arguments.length>1?arguments[1]:undefined)}))},24953:function(e,t,n){"use strict";n(63541)("Float32",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},80733:function(e,t,n){"use strict";n(63541)("Float64",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},97248:function(e,t,n){"use strict";var r=n(89746),o=n(40975).forEach,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("forEach",(function(e){o(i(this),e,arguments.length>1?arguments[1]:undefined)}))},54272:function(e,t,n){"use strict";var r=n(1187);(0,n(89746).exportTypedArrayStaticMethod)("from",n(68071),r)},49836:function(e,t,n){"use strict";var r=n(89746),o=n(16077).includes,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("includes",(function(e){return o(i(this),e,arguments.length>1?arguments[1]:undefined)}))},83200:function(e,t,n){"use strict";var r=n(89746),o=n(16077).indexOf,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("indexOf",(function(e){return o(i(this),e,arguments.length>1?arguments[1]:undefined)}))},64249:function(e,t,n){"use strict";n(63541)("Int16",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},27744:function(e,t,n){"use strict";n(63541)("Int32",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},72781:function(e,t,n){"use strict";n(63541)("Int8",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},95012:function(e,t,n){"use strict";var r=n(25511),o=n(3440),i=n(38457),a=n(89746),u=n(20452),s=n(42847)("iterator"),c=r.Uint8Array,l=i(u.values),f=i(u.keys),d=i(u.entries),p=a.aTypedArray,h=a.exportTypedArrayMethod,v=c&&c.prototype,m=!o((function(){v[s].call([1])})),g=!!v&&v.values&&v[s]===v.values&&"values"===v.values.name,y=function(){return l(p(this))};h("entries",(function(){return d(p(this))}),m),h("keys",(function(){return f(p(this))}),m),h("values",y,m||!g,{name:"values"}),h(s,y,m||!g,{name:"values"})},55430:function(e,t,n){"use strict";var r=n(89746),o=n(38457),i=r.aTypedArray,a=r.exportTypedArrayMethod,u=o([].join);a("join",(function(e){return u(i(this),e)}))},32194:function(e,t,n){"use strict";var r=n(89746),o=n(42177),i=n(10303),a=r.aTypedArray;(0,r.exportTypedArrayMethod)("lastIndexOf",(function(e){var t=arguments.length;return o(i,a(this),t>1?[e,arguments[1]]:[e])}))},24793:function(e,t,n){"use strict";var r=n(89746),o=n(40975).map,i=n(35927),a=r.aTypedArray;(0,r.exportTypedArrayMethod)("map",(function(e){return o(a(this),e,arguments.length>1?arguments[1]:undefined,(function(e,t){return new(i(e))(t)}))}))},94098:function(e,t,n){"use strict";var r=n(89746),o=n(1187),i=r.aTypedArrayConstructor;(0,r.exportTypedArrayStaticMethod)("of",(function(){for(var e=0,t=arguments.length,n=new(i(this))(t);t>e;)n[e]=arguments[e++];return n}),o)},13917:function(e,t,n){"use strict";var r=n(89746),o=n(55202).right,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("reduceRight",(function(e){var t=arguments.length;return o(i(this),e,t,t>1?arguments[1]:undefined)}))},15882:function(e,t,n){"use strict";var r=n(89746),o=n(55202).left,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("reduce",(function(e){var t=arguments.length;return o(i(this),e,t,t>1?arguments[1]:undefined)}))},15883:function(e,t,n){"use strict";var r=n(89746),o=r.aTypedArray,i=r.exportTypedArrayMethod,a=Math.floor;i("reverse",(function(){for(var e,t=this,n=o(t).length,r=a(n/2),i=0;i1?arguments[1]:undefined,1),n=s(e);if(m)return o(p,this,n,t);var r=this.length,i=a(n),c=0;if(i+t>r)throw l("Wrong length");for(;ci;)c[i]=n[i++];return c}),i((function(){new Int8Array(1).slice()})))},21040:function(e,t,n){"use strict";var r=n(89746),o=n(40975).some,i=r.aTypedArray;(0,r.exportTypedArrayMethod)("some",(function(e){return o(i(this),e,arguments.length>1?arguments[1]:undefined)}))},48106:function(e,t,n){"use strict";var r=n(25511),o=n(42481),i=n(3440),a=n(79030),u=n(89497),s=n(89746),c=n(98861),l=n(79920),f=n(88088),d=n(51737),p=s.aTypedArray,h=s.exportTypedArrayMethod,v=r.Uint16Array,m=v&&o(v.prototype.sort),g=!(!m||i((function(){m(new v(2),null)}))&&i((function(){m(new v(2),{})}))),y=!!m&&!i((function(){if(f)return f<74;if(c)return c<67;if(l)return!0;if(d)return d<602;var e,t,n=new v(516),r=Array(516);for(e=0;e<516;e++)t=e%4,n[e]=515-e,r[e]=e-2*t+3;for(m(n,(function(e,t){return(e/4|0)-(t/4|0)})),e=0;e<516;e++)if(n[e]!==r[e])return!0}));h("sort",(function(e){return e!==undefined&&a(e),y?m(this,e):u(p(this),function(e){return function(t,n){return e!==undefined?+e(t,n)||0:n!=n?-1:t!=t?1:0===t&&0===n?1/t>0&&1/n<0?1:-1:t>n}}(e))}),!y||g)},50140:function(e,t,n){"use strict";var r=n(89746),o=n(60780),i=n(46085),a=n(35927),u=r.aTypedArray;(0,r.exportTypedArrayMethod)("subarray",(function(e,t){var n=u(this),r=n.length,s=i(e,r);return new(a(n))(n.buffer,n.byteOffset+s*n.BYTES_PER_ELEMENT,o((t===undefined?r:i(t,r))-s))}))},95577:function(e,t,n){"use strict";var r=n(25511),o=n(42177),i=n(89746),a=n(3440),u=n(92098),s=r.Int8Array,c=i.aTypedArray,l=i.exportTypedArrayMethod,f=[].toLocaleString,d=!!s&&a((function(){f.call(new s(1))}));l("toLocaleString",(function(){return o(f,d?u(c(this)):c(this),u(arguments))}),a((function(){return[1,2].toLocaleString()!=new s([1,2]).toLocaleString()}))||!a((function(){s.prototype.toLocaleString.call([1,2])})))},66325:function(e,t,n){"use strict";var r=n(89746).exportTypedArrayMethod,o=n(3440),i=n(25511),a=n(38457),u=i.Uint8Array,s=u&&u.prototype||{},c=[].toString,l=a([].join);o((function(){c.call({})}))&&(c=function(){return l(this)});var f=s.toString!=c;r("toString",c,f)},5546:function(e,t,n){"use strict";n(63541)("Uint16",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},31233:function(e,t,n){"use strict";n(63541)("Uint32",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},85862:function(e,t,n){"use strict";n(63541)("Uint8",(function(e){return function(t,n,r){return e(this,t,n,r)}}))},13802:function(e,t,n){"use strict";n(63541)("Uint8",(function(e){return function(t,n,r){return e(this,t,n,r)}}),!0)},86023:function(e,t,n){"use strict";var r,o=n(14097),i=n(25511),a=n(38457),u=n(83856),s=n(94986),c=n(18207),l=n(94034),f=n(46840),d=n(29017).enforce,p=n(3440),h=n(26942),v=Object,m=Array.isArray,g=v.isExtensible,y=v.isFrozen,b=v.isSealed,x=v.freeze,w=v.seal,E={},_={},D=!i.ActiveXObject&&"ActiveXObject"in i,C=function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}},k=c("WeakMap",C,l),A=k.prototype,S=a(A.set);if(h)if(D){r=l.getConstructor(C,"WeakMap",!0),s.enable();var N=a(A["delete"]),O=a(A.has),F=a(A.get);u(A,{"delete":function(e){if(f(e)&&!g(e)){var t=d(this);return t.frozen||(t.frozen=new r),N(this,e)||t.frozen["delete"](e)}return N(this,e)},has:function(e){if(f(e)&&!g(e)){var t=d(this);return t.frozen||(t.frozen=new r),O(this,e)||t.frozen.has(e)}return O(this,e)},get:function(e){if(f(e)&&!g(e)){var t=d(this);return t.frozen||(t.frozen=new r),O(this,e)?F(this,e):t.frozen.get(e)}return F(this,e)},set:function(e,t){if(f(e)&&!g(e)){var n=d(this);n.frozen||(n.frozen=new r),O(this,e)?S(this,e,t):n.frozen.set(e,t)}else S(this,e,t);return this}})}else o&&p((function(){var e=x([]);return S(new k,e,1),!y(e)}))&&u(A,{set:function(e,t){var n;return m(e)&&(y(e)?n=E:b(e)&&(n=_)),S(this,e,t),n==E&&x(e),n==_&&w(e),this}})},13989:function(e,t,n){"use strict";n(86023)},48989:function(e,t,n){"use strict";n(18207)("WeakSet",(function(e){return function(){return e(this,arguments.length?arguments[0]:undefined)}}),n(94034))},89330:function(e,t,n){"use strict";n(48989)},24053:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(3017).clear;r({global:!0,bind:!0,enumerable:!0,forced:o.clearImmediate!==i},{clearImmediate:i})},69207:function(e,t,n){"use strict";n(24053),n(72357)},24288:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(5934),a=n(79030),u=n(44020),s=n(68173),c=o.process;r({global:!0,enumerable:!0,dontCallGetSet:!0},{queueMicrotask:function(e){u(arguments.length,1),a(e);var t=s&&c.domain;i(t?t.bind(e):e)}})},72357:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(3017).set,a=n(23852),u=o.setImmediate?a(i,!1):i;r({global:!0,bind:!0,enumerable:!0,forced:o.setImmediate!==u},{setImmediate:u})},39514:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(23852)(o.setInterval,!0);r({global:!0,bind:!0,forced:o.setInterval!==i},{setInterval:i})},78402:function(e,t,n){"use strict";var r=n(65439),o=n(25511),i=n(23852)(o.setTimeout,!0);r({global:!0,bind:!0,forced:o.setTimeout!==i},{setTimeout:i})},50010:function(e,t,n){"use strict";n(39514),n(78402)},90928:function(e,t,n){"use strict";var r;function o(e){return o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},o(e)}!function(i){var a,u,s,c=arguments,l=(a=/d{1,4}|D{3,4}|m{1,4}|yy(?:yy)?|([HhMsTt])\1?|W{1,2}|[LlopSZN]|"[^"]*"|'[^']*'/g,u=/\b(?:[PMCEA][SDP]T|(?:Pacific|Mountain|Central|Eastern|Atlantic) (?:Standard|Daylight|Prevailing) Time|(?:GMT|UTC)(?:[-+]\d{4})?)\b/g,s=/[^-+\dA-Z]/g,function(e,t,n,r){if(1!==c.length||"string"!==v(e)||/\d/.test(e)||(t=e,e=undefined),(e=e||0===e?e:new Date)instanceof Date||(e=new Date(e)),isNaN(e))throw TypeError("Invalid date");var o=(t=String(l.masks[t]||t||l.masks["default"])).slice(0,4);"UTC:"!==o&&"GMT:"!==o||(t=t.slice(4),n=!0,"GMT:"===o&&(r=!0));var i=function(){return n?"getUTC":"get"},m=function(){return e[i()+"Date"]()},g=function(){return e[i()+"Day"]()},y=function(){return e[i()+"Month"]()},b=function(){return e[i()+"FullYear"]()},x=function(){return e[i()+"Hours"]()},w=function(){return e[i()+"Minutes"]()},E=function(){return e[i()+"Seconds"]()},_=function(){return e[i()+"Milliseconds"]()},D=function(){return n?0:e.getTimezoneOffset()},C=function(){return p(e)},k=function(){return h(e)},A={d:function(){return m()},dd:function(){return f(m())},ddd:function(){return l.i18n.dayNames[g()]},DDD:function(){return d({y:b(),m:y(),d:m(),_:i(),dayName:l.i18n.dayNames[g()],short:!0})},dddd:function(){return l.i18n.dayNames[g()+7]},DDDD:function(){return d({y:b(),m:y(),d:m(),_:i(),dayName:l.i18n.dayNames[g()+7]})},m:function(){return y()+1},mm:function(){return f(y()+1)},mmm:function(){return l.i18n.monthNames[y()]},mmmm:function(){return l.i18n.monthNames[y()+12]},yy:function(){return String(b()).slice(2)},yyyy:function(){return f(b(),4)},h:function(){return x()%12||12},hh:function(){return f(x()%12||12)},H:function(){return x()},HH:function(){return f(x())},M:function(){return w()},MM:function(){return f(w())},s:function(){return E()},ss:function(){return f(E())},l:function(){return f(_(),3)},L:function(){return f(Math.floor(_()/10))},t:function(){return x()<12?l.i18n.timeNames[0]:l.i18n.timeNames[1]},tt:function(){return x()<12?l.i18n.timeNames[2]:l.i18n.timeNames[3]},T:function(){return x()<12?l.i18n.timeNames[4]:l.i18n.timeNames[5]},TT:function(){return x()<12?l.i18n.timeNames[6]:l.i18n.timeNames[7]},Z:function(){return r?"GMT":n?"UTC":(String(e).match(u)||[""]).pop().replace(s,"").replace(/GMT\+0000/g,"UTC")},o:function(){return(D()>0?"-":"+")+f(100*Math.floor(Math.abs(D())/60)+Math.abs(D())%60,4)},p:function(){return(D()>0?"-":"+")+f(Math.floor(Math.abs(D())/60),2)+":"+f(Math.floor(Math.abs(D())%60),2)},S:function(){return["th","st","nd","rd"][m()%10>3?0:(m()%100-m()%10!=10)*m()%10]},W:function(){return C()},WW:function(){return f(C())},N:function(){return k()}};return t.replace(a,(function(e){return e in A?A[e]():e.slice(1,e.length-1)}))});l.masks={"default":"ddd mmm dd yyyy HH:MM:ss",shortDate:"m/d/yy",paddedShortDate:"mm/dd/yyyy",mediumDate:"mmm d, yyyy",longDate:"mmmm d, yyyy",fullDate:"dddd, mmmm d, yyyy",shortTime:"h:MM TT",mediumTime:"h:MM:ss TT",longTime:"h:MM:ss TT Z",isoDate:"yyyy-mm-dd",isoTime:"HH:MM:ss",isoDateTime:"yyyy-mm-dd'T'HH:MM:sso",isoUtcDateTime:"UTC:yyyy-mm-dd'T'HH:MM:ss'Z'",expiresHeaderFormat:"ddd, dd mmm yyyy HH:MM:ss Z"},l.i18n={dayNames:["Sun","Mon","Tue","Wed","Thu","Fri","Sat","Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],monthNames:["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec","January","February","March","April","May","June","July","August","September","October","November","December"],timeNames:["a","p","am","pm","A","P","AM","PM"]};var f=function(e,t){for(e=String(e),t=t||2;e.lengthe.length)&&(t=e.length);for(var n=0,r=new Array(t);n1?n-1:0),o=1;o/gm),Z=m(/\${[\w\W]*}/gm),X=m(/^data-[\-\w.\u00B7-\uFFFF]/),Q=m(/^aria-[\-\w]+$/),J=m(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|cid|xmpp):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ee=m(/^(?:\w+script|data):/i),te=m(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),ne=m(/^html$/i),re=function(){function e(){return"undefined"==typeof window?null:window}return e}(),oe=function(){function t(t,n){if("object"!==e(t)||"function"!=typeof t.createPolicy)return null;var r=null,o="data-tt-policy-suffix";n.currentScript&&n.currentScript.hasAttribute(o)&&(r=n.currentScript.getAttribute(o));var i="dompurify"+(r?"#"+r:"");try{return t.createPolicy(i,{createHTML:function(){function e(e){return e}return e}(),createScriptURL:function(){function e(e){return e}return e}()})}catch(a){return null}}return t}();function ie(){var t=arguments.length>0&&arguments[0]!==undefined?arguments[0]:re(),n=function(){function e(e){return ie(e)}return e}();if(n.version="2.4.3",n.removed=[],!t||!t.document||9!==t.document.nodeType)return n.isSupported=!1,n;var r=t.document,i=t.document,a=t.DocumentFragment,u=t.HTMLTemplateElement,s=t.Node,c=t.Element,l=t.NodeFilter,f=t.NamedNodeMap,d=void 0===f?t.NamedNodeMap||t.MozNamedAttrMap:f,p=t.HTMLFormElement,h=t.DOMParser,m=t.trustedTypes,g=c.prototype,y=L(g,"cloneNode"),b=L(g,"nextSibling"),x=L(g,"childNodes"),M=L(g,"parentNode");if("function"==typeof u){var T=i.createElement("template");T.content&&T.content.ownerDocument&&(i=T.content.ownerDocument)}var ae=oe(m,r),ue=ae?ae.createHTML(""):"",se=i,ce=se.implementation,le=se.createNodeIterator,fe=se.createDocumentFragment,de=se.getElementsByTagName,pe=r.importNode,he={};try{he=B(i).documentMode?i.documentMode:{}}catch(Mt){}var ve={};n.isSupported="function"==typeof M&&ce&&"undefined"!=typeof ce.createHTMLDocument&&9!==he;var me,ge,ye=G,be=q,xe=Z,we=X,Ee=Q,_e=ee,De=te,Ce=J,ke=null,Ae=I({},[].concat(o(P),o(j),o(V),o(z),o(U))),Se=null,Ne=I({},[].concat(o(Y),o(H),o(W),o($))),Oe=Object.seal(Object.create(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),Fe=null,Me=null,Te=!0,Ie=!0,Be=!1,Le=!1,Pe=!1,je=!1,Ve=!1,Re=!1,ze=!1,Ke=!1,Ue=!0,Ye=!1,He="user-content-",We=!0,$e=!1,Ge={},qe=null,Ze=I({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),Xe=null,Qe=I({},["audio","video","img","source","image","track"]),Je=null,et=I({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),tt="http://www.w3.org/1998/Math/MathML",nt="http://www.w3.org/2000/svg",rt="http://www.w3.org/1999/xhtml",ot=rt,it=!1,at=null,ut=I({},[tt,nt,rt],C),st=["application/xhtml+xml","text/html"],ct="text/html",lt=null,ft=i.createElement("form"),dt=function(){function e(e){return e instanceof RegExp||e instanceof Function}return e}(),pt=function(){function t(t){lt&<===t||(t&&"object"===e(t)||(t={}),t=B(t),me=me=-1===st.indexOf(t.PARSER_MEDIA_TYPE)?ct:t.PARSER_MEDIA_TYPE,ge="application/xhtml+xml"===me?C:D,ke="ALLOWED_TAGS"in t?I({},t.ALLOWED_TAGS,ge):Ae,Se="ALLOWED_ATTR"in t?I({},t.ALLOWED_ATTR,ge):Ne,at="ALLOWED_NAMESPACES"in t?I({},t.ALLOWED_NAMESPACES,C):ut,Je="ADD_URI_SAFE_ATTR"in t?I(B(et),t.ADD_URI_SAFE_ATTR,ge):et,Xe="ADD_DATA_URI_TAGS"in t?I(B(Qe),t.ADD_DATA_URI_TAGS,ge):Qe,qe="FORBID_CONTENTS"in t?I({},t.FORBID_CONTENTS,ge):Ze,Fe="FORBID_TAGS"in t?I({},t.FORBID_TAGS,ge):{},Me="FORBID_ATTR"in t?I({},t.FORBID_ATTR,ge):{},Ge="USE_PROFILES"in t&&t.USE_PROFILES,Te=!1!==t.ALLOW_ARIA_ATTR,Ie=!1!==t.ALLOW_DATA_ATTR,Be=t.ALLOW_UNKNOWN_PROTOCOLS||!1,Le=t.SAFE_FOR_TEMPLATES||!1,Pe=t.WHOLE_DOCUMENT||!1,Re=t.RETURN_DOM||!1,ze=t.RETURN_DOM_FRAGMENT||!1,Ke=t.RETURN_TRUSTED_TYPE||!1,Ve=t.FORCE_BODY||!1,Ue=!1!==t.SANITIZE_DOM,Ye=t.SANITIZE_NAMED_PROPS||!1,We=!1!==t.KEEP_CONTENT,$e=t.IN_PLACE||!1,Ce=t.ALLOWED_URI_REGEXP||Ce,ot=t.NAMESPACE||rt,t.CUSTOM_ELEMENT_HANDLING&&dt(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(Oe.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck),t.CUSTOM_ELEMENT_HANDLING&&dt(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(Oe.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),t.CUSTOM_ELEMENT_HANDLING&&"boolean"==typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements&&(Oe.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),Le&&(Ie=!1),ze&&(Re=!0),Ge&&(ke=I({},o(U)),Se=[],!0===Ge.html&&(I(ke,P),I(Se,Y)),!0===Ge.svg&&(I(ke,j),I(Se,H),I(Se,$)),!0===Ge.svgFilters&&(I(ke,V),I(Se,H),I(Se,$)),!0===Ge.mathMl&&(I(ke,z),I(Se,W),I(Se,$))),t.ADD_TAGS&&(ke===Ae&&(ke=B(ke)),I(ke,t.ADD_TAGS,ge)),t.ADD_ATTR&&(Se===Ne&&(Se=B(Se)),I(Se,t.ADD_ATTR,ge)),t.ADD_URI_SAFE_ATTR&&I(Je,t.ADD_URI_SAFE_ATTR,ge),t.FORBID_CONTENTS&&(qe===Ze&&(qe=B(qe)),I(qe,t.FORBID_CONTENTS,ge)),We&&(ke["#text"]=!0),Pe&&I(ke,["html","head","body"]),ke.table&&(I(ke,["tbody"]),delete Fe.tbody),v&&v(t),lt=t)}return t}(),ht=I({},["mi","mo","mn","ms","mtext"]),vt=I({},["foreignobject","desc","title","annotation-xml"]),mt=I({},["title","style","font","a","script"]),gt=I({},j);I(gt,V),I(gt,R);var yt=I({},z);I(yt,K);var bt=function(){function e(e){var t=M(e);t&&t.tagName||(t={namespaceURI:ot,tagName:"template"});var n=D(e.tagName),r=D(t.tagName);return!!at[e.namespaceURI]&&(e.namespaceURI===nt?t.namespaceURI===rt?"svg"===n:t.namespaceURI===tt?"svg"===n&&("annotation-xml"===r||ht[r]):Boolean(gt[n]):e.namespaceURI===tt?t.namespaceURI===rt?"math"===n:t.namespaceURI===nt?"math"===n&&vt[r]:Boolean(yt[n]):e.namespaceURI===rt?!(t.namespaceURI===nt&&!vt[r])&&!(t.namespaceURI===tt&&!ht[r])&&!yt[n]&&(mt[n]||!gt[n]):!("application/xhtml+xml"!==me||!at[e.namespaceURI]))}return e}(),xt=function(){function e(e){_(n.removed,{element:e});try{e.parentNode.removeChild(e)}catch(Mt){try{e.outerHTML=ue}catch(Mt){e.remove()}}}return e}(),wt=function(){function e(e,t){try{_(n.removed,{attribute:t.getAttributeNode(e),from:t})}catch(Mt){_(n.removed,{attribute:null,from:t})}if(t.removeAttribute(e),"is"===e&&!Se[e])if(Re||ze)try{xt(t)}catch(Mt){}else try{t.setAttribute(e,"")}catch(Mt){}}return e}(),Et=function(){function e(e){var t,n;if(Ve)e=""+e;else{var r=k(e,/^[\r\n\t ]+/);n=r&&r[0]}"application/xhtml+xml"===me&&ot===rt&&(e=''+e+"");var o=ae?ae.createHTML(e):e;if(ot===rt)try{t=(new h).parseFromString(o,me)}catch(Mt){}if(!t||!t.documentElement){t=ce.createDocument(ot,"template",null);try{t.documentElement.innerHTML=it?ue:o}catch(Mt){}}var a=t.body||t.documentElement;return e&&n&&a.insertBefore(i.createTextNode(n),a.childNodes[0]||null),ot===rt?de.call(t,Pe?"html":"body")[0]:Pe?t.documentElement:a}return e}(),_t=function(){function e(e){return le.call(e.ownerDocument||e,e,l.SHOW_ELEMENT|l.SHOW_COMMENT|l.SHOW_TEXT,null,!1)}return e}(),Dt=function(){function e(e){return e instanceof p&&("string"!=typeof e.nodeName||"string"!=typeof e.textContent||"function"!=typeof e.removeChild||!(e.attributes instanceof d)||"function"!=typeof e.removeAttribute||"function"!=typeof e.setAttribute||"string"!=typeof e.namespaceURI||"function"!=typeof e.insertBefore||"function"!=typeof e.hasChildNodes)}return e}(),Ct=function(){function t(t){return"object"===e(s)?t instanceof s:t&&"object"===e(t)&&"number"==typeof t.nodeType&&"string"==typeof t.nodeName}return t}(),kt=function(){function e(e,t,r){ve[e]&&w(ve[e],(function(e){e.call(n,t,r,lt)}))}return e}(),At=function(){function e(e){var t;if(kt("beforeSanitizeElements",e,null),Dt(e))return xt(e),!0;if(O(/[\u0080-\uFFFF]/,e.nodeName))return xt(e),!0;var r=ge(e.nodeName);if(kt("uponSanitizeElement",e,{tagName:r,allowedTags:ke}),e.hasChildNodes()&&!Ct(e.firstElementChild)&&(!Ct(e.content)||!Ct(e.content.firstElementChild))&&O(/<[/\w]/g,e.innerHTML)&&O(/<[/\w]/g,e.textContent))return xt(e),!0;if("select"===r&&O(/