missed proc refs

This commit is contained in:
SandPoot
2024-03-12 22:17:30 -03:00
parent 83102c5cf4
commit 676cb864b1
292 changed files with 505 additions and 505 deletions
@@ -49,7 +49,7 @@
else //Maybe uses plasma in the future, although that wouldn't make any sense...
leaping = 1
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
@@ -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)
+1 -1
View File
@@ -266,7 +266,7 @@
MarkResistTime()
visible_message("<span class='warning'>[src] attempts to unbuckle [p_them()]self!</span>", \
"<span class='notice'>You attempt to unbuckle yourself... (This will take around [round(buckle_cd/600,1)] minute\s, and you need to stay still.)</span>")
if(do_after(src, buckle_cd, src, timed_action_flags = IGNORE_HELD_ITEM | IGNORE_INCAPACITATED, extra_checks = CALLBACK(src, .proc/cuff_resist_check)))
if(do_after(src, buckle_cd, src, timed_action_flags = IGNORE_HELD_ITEM | IGNORE_INCAPACITATED, extra_checks = CALLBACK(src, PROC_REF(cuff_resist_check))))
if(!buckled)
return
buckled.user_unbuckle_mob(src, src)
@@ -50,7 +50,7 @@ GLOBAL_LIST_EMPTY(dead_players_during_shift)
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)
@@ -198,7 +198,7 @@
//rock paper scissors emote handling
/mob/living/carbon/human/proc/beginRockPaperScissors(var/chosen_move)
GLOB.rockpaperscissors_players[src] = list(chosen_move, ROCKPAPERSCISSORS_NOT_DECIDED)
do_after(src, ROCKPAPERSCISSORS_TIME_LIMIT, src, extra_checks = CALLBACK(src, .proc/rockpaperscissors_tick))
do_after(src, ROCKPAPERSCISSORS_TIME_LIMIT, src, extra_checks = 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.")
@@ -30,7 +30,7 @@
if(CONFIG_GET(flag/disable_stambuffer))
enable_intentional_sprint_mode()
RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, /atom.proc/clean_blood)
RegisterSignal(src, COMSIG_COMPONENT_CLEAN_ACT, TYPE_PROC_REF(/atom, clean_blood))
GLOB.human_list += src
/mob/living/carbon/human/proc/setup_human_dna()
@@ -47,7 +47,7 @@
AddElement(/datum/element/flavor_text/carbon, _name = "Flavor Text", _save_key = "flavor_text")
AddElement(/datum/element/flavor_text/carbon/temporary, "", "Set Pose (Temporary Flavor Text)", "This should be used only for things pertaining to the current round!", _save_key = null)
AddElement(/datum/element/flavor_text, _name = "OOC Notes", _addendum = "Put information on ERP/vore/lewd-related preferences here. THIS SHOULD NOT CONTAIN REGULAR FLAVORTEXT!!", _always_show = TRUE, _save_key = "ooc_notes", _examine_no_preview = TRUE)
AddElement(/datum/element/strippable, GLOB.strippable_human_items, /mob/living/carbon/human/.proc/should_strip)
AddElement(/datum/element/strippable, GLOB.strippable_human_items, TYPE_PROC_REF(/mob/living/carbon/human/, should_strip))
/mob/living/carbon/human/Destroy()
QDEL_NULL(physiology)
@@ -50,7 +50,7 @@ There are several things that need to be remembered:
/mob/living/carbon/human/ComponentInitialize()
. = ..()
RegisterSignal(src, SIGNAL_TRAIT(TRAIT_HUMAN_NO_RENDER), /mob.proc/regenerate_icons)
RegisterSignal(src, SIGNAL_TRAIT(TRAIT_HUMAN_NO_RENDER), TYPE_PROC_REF(/mob, regenerate_icons))
//HAIR OVERLAY
/mob/living/carbon/human/update_hair()
@@ -482,7 +482,7 @@
last_teleport = world.time
UpdateButtons() //action icon looks unavailable
//action icon looks available again
addtimer(CALLBACK(src, .proc/UpdateButtons), cooldown + 5)
addtimer(CALLBACK(src, PROC_REF(UpdateButtons)), cooldown + 5)
//honk
@@ -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,7 +265,7 @@
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
@@ -185,4 +185,4 @@ GLOBAL_LIST_INIT(strippable_monkey_items, create_strippable_list(list(
if(prob(10))
var/obj/item/clothing/head/helmet/justice/escape/helmet = new(src)
equip_to_slot_or_del(helmet,ITEM_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
+1 -1
View File
@@ -129,7 +129,7 @@
H.CloseWings()
else
H.OpenWings()
addtimer(CALLBACK(H, open ? /mob/living/carbon/human.proc/OpenWings : /mob/living/carbon/human.proc/CloseWings), wing_time)
addtimer(CALLBACK(H, open ? TYPE_PROC_REF(/mob/living/carbon/human, OpenWings) : TYPE_PROC_REF(/mob/living/carbon/human, CloseWings)), wing_time)
/datum/emote/living/flap/aflap
key = "aflap"
+3 -3
View File
@@ -24,7 +24,7 @@
break
var/msg = "[key_name_admin(src)] [ADMIN_JMP(src)] was found to have no .loc with an attached client, if the cause is unknown it would be wise to ask how this was accomplished."
message_admins(msg)
INVOKE_ASYNC(GLOBAL_PROC, .proc/send2tgs_adminless_only, "Mob", msg, R_ADMIN)
INVOKE_ASYNC(GLOBAL_PROC, GLOBAL_PROC_REF(send2tgs_adminless_only), "Mob", msg, R_ADMIN)
log_game("[key_name(src)] was found to have no .loc with an attached client.")
// This is a temporary error tracker to make sure we've caught everything
@@ -83,7 +83,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
@@ -201,7 +201,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)
+1 -1
View File
@@ -909,7 +909,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)
@@ -102,7 +102,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(src, delay, src, (IGNORE_USER_LOC_CHANGE|IGNORE_TARGET_LOC_CHANGE), extra_checks = CALLBACK(src, .proc/continue_starting_active_block)))
if(!do_after(src, delay, src, (IGNORE_USER_LOC_CHANGE|IGNORE_TARGET_LOC_CHANGE), extra_checks = CALLBACK(src, PROC_REF(continue_starting_active_block))))
to_chat(src, "<span class='warning'>You fail to raise [I].</span>")
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)
@@ -486,7 +486,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)
+1 -1
View File
@@ -308,7 +308,7 @@ GLOBAL_LIST_INIT(department_radio_keys, list(
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, PROC_REF(flick_overlay), I, speech_bubble_recipients, 30)
//Listening gets trimmed here if a vocal bark's present. If anyone ever makes this proc return listening, make sure to instead initialize a copy of listening in here to avoid wonkiness
if(SEND_SIGNAL(src, COMSIG_MOVABLE_QUEUE_BARK, listening, args) || vocal_bark || vocal_bark_id)
+1 -1
View File
@@ -4,7 +4,7 @@
if(!gibbed)
// Will update all AI status displays with a blue screen of death
INVOKE_ASYNC(src, .proc/emote, "bsod")
INVOKE_ASYNC(src, PROC_REF(emote), "bsod")
. = ..()
@@ -82,7 +82,7 @@
mmi.brainmob.container = mmi
mmi.update_appearance()
INVOKE_ASYNC(src, .proc/updatename)
INVOKE_ASYNC(src, PROC_REF(updatename))
aicamera = new/obj/item/camera/siliconcam/robot_camera(src)
toner = tonermax
@@ -1006,7 +1006,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)
@@ -215,7 +215,7 @@ GLOBAL_LIST_INIT(blacklisted_borg_hats, typecacheof(list( //Hats that don't real
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)
@@ -198,7 +198,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))
if(RM.dogborg || R.dogborg)
RM.dogborg_equip()
R.typing_indicator_state = /obj/effect/overlay/typing_indicator/machine/dogborg
@@ -33,7 +33,7 @@
/mob/living/simple_animal/bot/secbot/grievous/Initialize(mapload)
. = ..()
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)
@@ -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("<b>[src]</b> 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
@@ -561,7 +561,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 class='notice'><span class='big'>Priority waypoint set by [icon2html(calling_ai, src)] <b>[caller]</b>. Proceed to <b>[end_area]</b>.</span><br>[path.len-1] meters to destination. You have been granted additional door access for 60 seconds.</span>")
if(message)
to_chat(calling_ai, "<span class='notice'>[icon2html(src, calling_ai)] [name] called to [end_area]. [path.len-1] meters to destination.</span>")
@@ -152,7 +152,7 @@
/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
@@ -204,7 +204,7 @@
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
@@ -217,7 +217,7 @@
if(targets.len>0)
var/mob/living/carbon/t = pick(targets)
if((t.stat!=2) && (t.lying != 1) && (!t.handcuffed)) //we don't shoot people who are dead, cuffed or lying down.
INVOKE_ASYNC(src, .proc/shootAt, t)
INVOKE_ASYNC(src, PROC_REF(shootAt), t)
switch(mode)
if(BOT_IDLE) // idle
@@ -235,7 +235,7 @@
if(target) // make sure target exists
if(Adjacent(target) && isturf(target.loc)) // if right next to perp
INVOKE_ASYNC(src, .proc/stun_attack, target)
INVOKE_ASYNC(src, PROC_REF(stun_attack), target)
mode = BOT_PREP_ARREST
anchored = TRUE
@@ -306,13 +306,13 @@
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
@@ -329,7 +329,7 @@
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
@@ -527,7 +527,7 @@
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)
@@ -263,13 +263,13 @@
target = null
last_found = world.time
frustration = 0
INVOKE_ASYNC(src, .proc/handle_automated_action) //responds quickly
INVOKE_ASYNC(src, PROC_REF(handle_automated_action)) //responds quickly
/mob/living/simple_animal/bot/honkbot/proc/back_to_hunt()
anchored = FALSE
frustration = 0
mode = BOT_HUNT
INVOKE_ASYNC(src, .proc/handle_automated_action) // responds quickly
INVOKE_ASYNC(src, PROC_REF(handle_automated_action)) // responds quickly
/mob/living/simple_animal/bot/honkbot/proc/look_for_perp()
anchored = FALSE
@@ -299,7 +299,7 @@
speak("Honk!")
visible_message("<b>[src]</b> starts chasing [C.name]!")
mode = BOT_HUNT
INVOKE_ASYNC(src, .proc/handle_automated_action)
INVOKE_ASYNC(src, PROC_REF(handle_automated_action))
break
else
continue
@@ -506,7 +506,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)
@@ -555,7 +555,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()
@@ -240,7 +240,7 @@
/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
@@ -393,12 +393,12 @@
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)
@@ -500,13 +500,13 @@
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()
@@ -519,7 +519,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
@@ -531,7 +531,7 @@
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
@@ -494,7 +494,7 @@ GLOBAL_LIST_INIT(strippable_corgi_items, create_strippable_list(list(
/mob/living/simple_animal/pet/dog/corgi/Ian/BiologicalLife()
if(!(. = ..()))
return
INVOKE_ASYNC(src, .proc/corgi_ai_behavior)
INVOKE_ASYNC(src, PROC_REF(corgi_ai_behavior))
/mob/living/simple_animal/pet/dog/corgi/Ian/proc/corgi_ai_behavior()
//Feeding, chasing food, FOOOOODDDD
@@ -106,7 +106,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', ITEM_SLOT_HEAD, /datum/element/mob_holder.proc/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', ITEM_SLOT_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]
@@ -34,7 +34,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
@@ -37,7 +37,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_REF(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 = "<span class='holoparasite'>It glows with a strange <font color=\"[guardiancolor]\">light</font>!</span>")
QDEL_IN(K, 1 MINUTES)
to_chat(src, "<span class='danger'><B>Success! Bomb armed!</span></B>")
@@ -94,7 +94,7 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
Acquire_Victim()
if(stage && !manifested)
INVOKE_ASYNC(src, .proc/On_Stage)
INVOKE_ASYNC(src, PROC_REF(On_Stage))
if(stage == STAGE_ATTACK)
playsound(src, 'sound/misc/cluwne_breathing.ogg', 75, 1)
@@ -335,7 +335,7 @@ GLOBAL_VAR_INIT(floor_cluwnes, 0)
forceMove(H.loc)
to_chat(H, "<span class='userdanger'>You feel the floor closing in on your feet!</span>")
H.Paralyze(300)
INVOKE_ASYNC(H, /mob.proc/emote, "scream")
INVOKE_ASYNC(H, TYPE_PROC_REF(/mob, emote), "scream")
H.adjustBruteLoss(10)
manifested = TRUE
Manifest()
@@ -434,7 +434,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
@@ -103,7 +103,7 @@
/mob/living/simple_animal/hostile/handle_automated_movement()
. = ..()
if(dodging && target && in_melee && isturf(loc) && isturf(target.loc))
var/datum/cb = CALLBACK(src,.proc/sidestep)
var/datum/cb = CALLBACK(src,PROC_REF(sidestep))
if(sidestep_per_cycle > 1) //For more than one just spread them equally - this could changed to some sensible distribution later
var/sidestep_delay = SSnpcpool.wait / sidestep_per_cycle
for(var/i in 1 to sidestep_per_cycle)
@@ -278,7 +278,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)
@@ -632,7 +632,7 @@
*/
/mob/living/simple_animal/hostile/proc/handle_charge_target(var/atom/target)
charge_state = TRUE
throw_at(target, charge_distance, 1, src, FALSE, TRUE, callback = CALLBACK(src, .proc/charge_end))
throw_at(target, charge_distance, 1, src, FALSE, TRUE, callback = CALLBACK(src, PROC_REF(charge_end)))
COOLDOWN_START(src, charge_cooldown, charge_frequency)
return TRUE
@@ -80,7 +80,7 @@
/obj/structure/leaper_bubble/Initialize(mapload)
. = ..()
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()
@@ -205,7 +205,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
@@ -226,7 +226,7 @@
/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
@@ -113,7 +113,7 @@
playsound(src, 'sound/weapons/thudswoosh.ogg', 25, 1)
playsound(src, 'sound/voice/mook_leap_yell.ogg', 100, 1)
var/target_turf = get_turf(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()
@@ -171,7 +171,7 @@
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_REF(AttackRecovery)), 14)
@@ -65,7 +65,7 @@
if(spawn_mecha_type)
var/obj/vehicle/sealed/mecha/M = new spawn_mecha_type (get_turf(src))
if(istype(M))
INVOKE_ASYNC(src, .proc/enter_mecha, M)
INVOKE_ASYNC(src, PROC_REF(enter_mecha), M)
/mob/living/simple_animal/hostile/syndicate/mecha_pilot/proc/enter_mecha(obj/vehicle/sealed/mecha/M)
@@ -233,7 +233,7 @@
if(LAZYACCESSASSOC(mecha.occupant_actions, src, /datum/action/vehicle/sealed/mecha/mech_defense_mode) && !mecha.defense_mode)
var/datum/action/action = mecha.occupant_actions[src][/datum/action/vehicle/sealed/mecha/mech_defense_mode]
action.Trigger(TRUE)
addtimer(CALLBACK(action, /datum/action/vehicle/sealed/mecha/mech_defense_mode.proc/Trigger, FALSE), 100) //10 seconds of defense, then toggle off
addtimer(CALLBACK(action, TYPE_PROC_REF(/datum/action/vehicle/sealed/mecha/mech_defense_mode, Trigger), FALSE), 100) //10 seconds of defense, then toggle off
else if(prob(retreat_chance))
//Speed boost if possible
@@ -241,7 +241,7 @@
var/datum/action/action = mecha.occupant_actions[src][/datum/action/vehicle/sealed/mecha/mech_overload_mode]
mecha.leg_overload_mode = FALSE
action.Trigger(TRUE)
addtimer(CALLBACK(action, /datum/action/vehicle/sealed/mecha/mech_overload_mode.proc/Trigger, FALSE), 100) //10 seconds of speeeeed, then toggle off
addtimer(CALLBACK(action, TYPE_PROC_REF(/datum/action/vehicle/sealed/mecha/mech_overload_mode, Trigger), FALSE), 100) //10 seconds of speeeeed, then toggle off
retreat_distance = 50
addtimer(VARSET_CALLBACK(src, retreat_distance, 0), 10 SECONDS)
@@ -177,7 +177,7 @@ Difficulty: Medium
wander = TRUE
/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/proc/dash_attack()
INVOKE_ASYNC(src, .proc/dash, target)
INVOKE_ASYNC(src, PROC_REF(dash), target)
shoot_ka()
/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/proc/shoot_ka()
@@ -259,7 +259,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
@@ -286,7 +286,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))
/mob/living/simple_animal/hostile/megafauna/blood_drunk_miner/doom
name = "hostile-environment miner"
@@ -117,7 +117,7 @@ Difficulty: Hard
SetRecoveryTime(15)
else
for(var/i = 1 to 5)
INVOKE_ASYNC(src, .proc/hallucination_charge_around, 2, 10, 2, 0)
INVOKE_ASYNC(src, PROC_REF(hallucination_charge_around), 2, 10, 2, 0)
sleep(5)
SetRecoveryTime(10)
@@ -254,7 +254,7 @@ Difficulty: Hard
/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/try_bloodattack()
var/list/targets = get_mobs_on_blood()
if(targets.len)
INVOKE_ASYNC(src, .proc/bloodattack, targets, prob(50))
INVOKE_ASYNC(src, PROC_REF(bloodattack), targets, prob(50))
return TRUE
return FALSE
@@ -394,7 +394,7 @@ Difficulty: Hard
change_move_delay(3.75)
var/newcolor = rgb(149, 10, 10)
add_atom_colour(newcolor, TEMPORARY_COLOUR_PRIORITY)
var/datum/callback/cb = CALLBACK(src, .proc/blood_enrage_end)
var/datum/callback/cb = CALLBACK(src, PROC_REF(blood_enrage_end))
addtimer(cb, boost_time)
/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/blood_enrage_end(var/newcolor = rgb(149, 10, 10))
@@ -441,7 +441,7 @@ Difficulty: Hard
continue
var/mob/living/simple_animal/hostile/megafauna/bubblegum/hallucination/B = new /mob/living/simple_animal/hostile/megafauna/bubblegum/hallucination(src.loc)
B.forceMove(place)
INVOKE_ASYNC(B, .proc/charge, chargeat, delay, chargepast)
INVOKE_ASYNC(B, PROC_REF(charge), chargeat, delay, chargepast)
if(useoriginal)
charge(chargeat, delay, chargepast)
@@ -82,7 +82,7 @@ Difficulty: Very Hard
double_spiral()
else
visible_message("<span class='colossus'>\"<b>Judgement.</b>\"</span>")
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
@@ -93,7 +93,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(mapload)
@@ -147,8 +147,8 @@ Difficulty: Very Hard
visible_message("<span class='colossus'>\"<b>Die.</b>\"</span>")
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))
@@ -104,7 +104,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)
@@ -131,7 +131,7 @@ Difficulty: Medium
fire_cone()
else
if(prob(50) && !client)
INVOKE_ASYNC(src, .proc/lava_pools, 10, 2)
INVOKE_ASYNC(src, PROC_REF(lava_pools), 10, 2)
fire_cone()
/mob/living/simple_animal/hostile/megafauna/dragon/proc/lava_pools(var/amount, var/delay = 0.8)
@@ -147,7 +147,7 @@ Difficulty: Medium
sleep(delay)
/mob/living/simple_animal/hostile/megafauna/dragon/proc/lava_swoop(var/amount = 30)
INVOKE_ASYNC(src, .proc/lava_pools, amount)
INVOKE_ASYNC(src, PROC_REF(lava_pools), amount)
swoop_attack(FALSE, target, 1000) // longer cooldown until it gets reset below
fire_cone()
if(health < maxHealth*0.5)
@@ -164,7 +164,7 @@ Difficulty: Medium
var/increment = 360 / spiral_count
for(var/j = 1 to spiral_count)
var/list/turfs = line_target(j * increment + i * increment / 2, range, src)
INVOKE_ASYNC(src, .proc/fire_line, turfs)
INVOKE_ASYNC(src, PROC_REF(fire_line), turfs)
sleep(25)
SetRecoveryTime(30)
@@ -233,11 +233,11 @@ Difficulty: Medium
var/range = 15
var/list/turfs = list()
turfs = line_target(-40, range, at)
INVOKE_ASYNC(src, .proc/fire_line, turfs)
INVOKE_ASYNC(src, PROC_REF(fire_line), turfs)
turfs = line_target(0, range, at)
INVOKE_ASYNC(src, .proc/fire_line, turfs)
INVOKE_ASYNC(src, PROC_REF(fire_line), turfs)
turfs = line_target(40, range, at)
INVOKE_ASYNC(src, .proc/fire_line, turfs)
INVOKE_ASYNC(src, PROC_REF(fire_line), turfs)
/mob/living/simple_animal/hostile/megafauna/dragon/proc/line_target(var/offset, var/range, var/atom/at = target)
if(!at)
@@ -394,7 +394,7 @@ Difficulty: Medium
/obj/effect/temp_visual/lava_warning/Initialize(mapload, var/reset_time = 10)
. = ..()
INVOKE_ASYNC(src, .proc/fall, reset_time)
INVOKE_ASYNC(src, PROC_REF(fall), reset_time)
src.alpha = 63.75
animate(src, alpha = 255, time = duration)
@@ -462,7 +462,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)
@@ -160,10 +160,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()
else
@@ -262,9 +262,9 @@ Difficulty: Normal
while(health && !QDELETED(target) && cross_counter)
cross_counter--
if(prob(60))
INVOKE_ASYNC(src, .proc/cardinal_blasts, target)
INVOKE_ASYNC(src, PROC_REF(cardinal_blasts), target)
else
INVOKE_ASYNC(src, .proc/diagonal_blasts, target)
INVOKE_ASYNC(src, PROC_REF(diagonal_blasts), target)
sleep(6 + target_slowness)
animate(src, color = oldcolor, time = 8)
addtimer(CALLBACK(src, TYPE_PROC_REF(/atom, 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, target)
INVOKE_ASYNC(src, PROC_REF(alldir_blasts), target)
else if(prob(60))
INVOKE_ASYNC(src, .proc/cardinal_blasts, target)
INVOKE_ASYNC(src, PROC_REF(cardinal_blasts), target)
else
INVOKE_ASYNC(src, .proc/diagonal_blasts, target)
INVOKE_ASYNC(src, PROC_REF(diagonal_blasts), 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 target
var/turf/previousturf = T
@@ -615,7 +615,7 @@ 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))
/obj/effect/temp_visual/hierophant/blast/proc/blast()
var/turf/T = get_turf(src)
@@ -689,7 +689,7 @@ Difficulty: Normal
if(H.beacon == src)
to_chat(user, "<span class='notice'>You start removing your hierophant beacon...</span>")
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)
@@ -699,7 +699,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 class='hierophant_warning'>You touch the beacon with the club, but nothing happens.</span>")
else
@@ -114,7 +114,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)
@@ -189,7 +189,7 @@ While using this makes the system rely on OnFire, it still gives options for tim
mychild.playsound_local(get_turf(mychild), 'sound/effects/magic.ogg', 40, 0)
to_chat(mychild, "<b>Someone has activated your tumor. You will be returned to fight shortly, get ready!</b>")
addtimer(CALLBACK(src, PROC_REF(return_elite)), 30)
INVOKE_ASYNC(src, .proc/arena_checks)
INVOKE_ASYNC(src, PROC_REF(arena_checks))
if(TUMOR_INACTIVE)
activity = TUMOR_ACTIVE
var/mob/elitemind = null
@@ -227,7 +227,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)
@@ -274,9 +274,9 @@ 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_REF(arena_checks)), 50)
@@ -220,7 +220,7 @@
/obj/effect/temp_visual/goliath_tentacle/broodmother/patch/Initialize(mapload, new_spawner)
. = ..()
INVOKE_ASYNC(src, .proc/createpatch)
INVOKE_ASYNC(src, PROC_REF(createpatch))
/obj/effect/temp_visual/goliath_tentacle/broodmother/patch/proc/createpatch()
var/tentacle_locs = spiral_range_turfs(1, get_turf(src))
@@ -36,7 +36,7 @@
riot = new /datum/action/cooldown/riot
riot.Grant(src)
AddElement(/datum/element/ventcrawling, given_tier = VENTCRAWLER_ALWAYS)
INVOKE_ASYNC(src, .proc/poll_for_player)
INVOKE_ASYNC(src, PROC_REF(poll_for_player))
/mob/living/simple_animal/hostile/regalrat/proc/poll_for_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)
@@ -62,7 +62,7 @@
/mob/living/simple_animal/hostile/wizard/handle_automated_action()
. = ..()
INVOKE_ASYNC(src, .proc/AutomatedCast)
INVOKE_ASYNC(src, PROC_REF(AutomatedCast))
/mob/living/simple_animal/hostile/wizard/proc/AutomatedCast()
if(target && next_cast < world.time)
@@ -455,7 +455,7 @@ GLOBAL_LIST_INIT(strippable_parrot_items, create_strippable_list(list(
newspeak.Add(possible_phrase)
speak = newspeak
INVOKE_ASYNC(src, .proc/attempt_item_theft)
INVOKE_ASYNC(src, PROC_REF(attempt_item_theft))
return
//-----WANDERING - This is basically a 'I dont know what to do yet' state
@@ -391,7 +391,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()