mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-08-31 00:58:26 +01:00
Merge pull request #21786 from optimumtact/litanyoffailures
Fixes all remaining addtimers missed
This commit is contained in:
@@ -100,7 +100,7 @@
|
||||
|
||||
//remove our adminhelp verb temporarily to prevent spamming of admins.
|
||||
src.verbs -= /client/verb/adminhelp
|
||||
adminhelptimerid = addtimer(src, "giveadminhelpverb", 1200, FALSE) //2 minute cooldown of admin helps
|
||||
adminhelptimerid = addtimer(src, "giveadminhelpverb", 1200, TIMER_NORMAL) //2 minute cooldown of admin helps
|
||||
|
||||
msg = keywords_lookup(msg)
|
||||
|
||||
|
||||
@@ -18,7 +18,7 @@ var/highlander = FALSE
|
||||
|
||||
message_admins("<span class='adminnotice'>[key_name_admin(usr)] used THERE CAN BE ONLY ONE!</span>")
|
||||
log_admin("[key_name(usr)] used THERE CAN BE ONLY ONE.")
|
||||
addtimer(SSshuttle.emergency, "request", 50, FALSE, null, 1)
|
||||
addtimer(SSshuttle.emergency, "request", 50, TIMER_NORMAL, null, 1)
|
||||
|
||||
/mob/living/carbon/human/proc/make_scottish()
|
||||
ticker.mode.traitors += mind
|
||||
|
||||
@@ -71,7 +71,7 @@
|
||||
D.safe = !D.safe
|
||||
|
||||
for(var/D in open_or_close)
|
||||
addtimer(D, doors_need_closing ? "close" : "open",0,FALSE)
|
||||
addtimer(D, doors_need_closing ? "close" : "open",0, TIMER_NORMAL)
|
||||
|
||||
sleep(10)
|
||||
cooldown = 0
|
||||
|
||||
@@ -226,7 +226,7 @@
|
||||
var/turf/T = get_turf(body)
|
||||
new /obj/effect/ctf/ammo(T)
|
||||
recently_dead_ckeys += body.ckey
|
||||
addtimer(src, "clear_cooldown", respawn_cooldown, TRUE, body.ckey)
|
||||
addtimer(src, "clear_cooldown", respawn_cooldown, TIMER_UNIQUE, body.ckey)
|
||||
body.dust()
|
||||
|
||||
/obj/machinery/capture_the_flag/proc/clear_cooldown(var/ckey)
|
||||
|
||||
@@ -147,12 +147,12 @@
|
||||
user.Stun(INFINITY)
|
||||
|
||||
animate(user, color = "#00ccee", time = 3)
|
||||
phase_timer_id = addtimer(src, "phase_2", 3, FALSE, user, to_turf, phase_in_ds)
|
||||
phase_timer_id = addtimer(src, "phase_2", 3, TIMER_NORMAL, user, to_turf, phase_in_ds)
|
||||
|
||||
/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(src, "phase_3", 2, FALSE, user, to_turf, phase_in_ds)
|
||||
phase_timer_id = addtimer(src, "phase_3", 2, TIMER_NORMAL, user, to_turf, phase_in_ds)
|
||||
else
|
||||
finish_chronowalk(user, to_turf)
|
||||
|
||||
@@ -160,14 +160,14 @@
|
||||
if(teleporting && activated && user)
|
||||
user.forceMove(to_turf)
|
||||
animate(user, alpha = 255, time = phase_in_ds)
|
||||
phase_timer_id = addtimer(src, "phase_4", phase_in_ds, FALSE, user, to_turf)
|
||||
phase_timer_id = addtimer(src, "phase_4", phase_in_ds, TIMER_NORMAL, user, to_turf)
|
||||
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(src, "finish_chronowalk", 3, FALSE, user, to_turf)
|
||||
phase_timer_id = addtimer(src, "finish_chronowalk", 3, TIMER_NORMAL, user, to_turf)
|
||||
else
|
||||
finish_chronowalk(user, to_turf)
|
||||
|
||||
|
||||
@@ -77,7 +77,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(reagents, "add_reagent", 600, FALSE, refill, trans)
|
||||
addtimer(reagents, "add_reagent", 600, TIMER_NORMAL, refill, trans)
|
||||
|
||||
/obj/item/weapon/reagent_containers/food/drinks/attackby(obj/item/I, mob/user, params)
|
||||
if(I.is_hot())
|
||||
|
||||
@@ -236,7 +236,7 @@
|
||||
if(pressure < 50)
|
||||
name = "strong resonance field"
|
||||
resonance_damage = 60
|
||||
addtimer(src, "burst", timetoburst, FALSE, proj_turf)
|
||||
addtimer(src, "burst", timetoburst, TIMER_NORMAL, proj_turf)
|
||||
|
||||
/obj/effect/resonance/Destroy()
|
||||
if(res)
|
||||
|
||||
@@ -787,11 +787,11 @@
|
||||
return
|
||||
timer = world.time + CLICK_CD_MELEE //by default, melee attacks only cause melee blasts, and have an accordingly short cooldown
|
||||
if(proximity_flag)
|
||||
addtimer(src, "aoe_burst", 0, FALSE, T, user)
|
||||
addtimer(src, "aoe_burst", 0, TIMER_NORMAL, T, user)
|
||||
add_logs(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)
|
||||
addtimer(src, "cardinal_blasts", 0, FALSE, T, user)
|
||||
addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, 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
|
||||
@@ -800,7 +800,7 @@
|
||||
PoolOrNew(/obj/effect/overlay/temp/hierophant/chaser, list(get_turf(user), user, target, 1.5, friendly_fire_check))
|
||||
add_logs(user, target, "fired a chaser at", src)
|
||||
else
|
||||
addtimer(src, "cardinal_blasts", 0, FALSE, T, user) //otherwise, just do cardinal blast
|
||||
addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, T, user) //otherwise, just do cardinal blast
|
||||
add_logs(user, target, "fired cardinal blast at", src)
|
||||
else
|
||||
user << "<span class='warning'>That target is out of range!</span>" //too far away
|
||||
@@ -877,7 +877,7 @@
|
||||
var/obj/effect/overlay/temp/hierophant/blast/B = PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(t, user, TRUE)) //but absolutely will hurt enemies
|
||||
B.damage = 30
|
||||
for(var/mob/living/L in range(1, source))
|
||||
addtimer(src, "teleport_mob", 0, FALSE, source, L, T, user) //regardless, take all mobs near us along
|
||||
addtimer(src, "teleport_mob", 0, TIMER_NORMAL, source, L, T, user) //regardless, take all mobs near us along
|
||||
sleep(6) //at this point the blasts detonate
|
||||
else
|
||||
timer = world.time
|
||||
@@ -918,7 +918,7 @@
|
||||
sleep(2)
|
||||
PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, user, friendly_fire_check))
|
||||
for(var/d in cardinal)
|
||||
addtimer(src, "blast_wall", 0, FALSE, T, d, user)
|
||||
addtimer(src, "blast_wall", 0, TIMER_NORMAL, T, d, user)
|
||||
|
||||
/obj/item/weapon/hierophant_staff/proc/blast_wall(turf/T, dir, mob/living/user) //make a wall of blasts blast_range tiles long
|
||||
if(!T)
|
||||
|
||||
@@ -39,7 +39,7 @@ var/global/posibrain_notif_cooldown = 0
|
||||
notify_ghosts("[name] [msg] in [get_area(src)]!", ghost_sound = !newlymade ? 'sound/effects/ghost2.ogg':null, enter_link = "<a href=?src=\ref[src];activate=1>(Click to enter)</a>", source = src, action = NOTIFY_ATTACK)
|
||||
if(!newlymade)
|
||||
posibrain_notif_cooldown = 1
|
||||
addtimer(src, "reset_posibrain_cooldown", askDelay, FALSE)
|
||||
addtimer(src, "reset_posibrain_cooldown", askDelay, TIMER_NORMAL)
|
||||
|
||||
/obj/item/device/mmi/posibrain/proc/reset_posibrain_cooldown()
|
||||
posibrain_notif_cooldown = 0
|
||||
|
||||
@@ -36,7 +36,7 @@
|
||||
ticker.mode.check_win() //Calls the rounds wincheck, mainly for wizard, malf, and changeling now
|
||||
. = ..(gibbed)
|
||||
if(mind && mind.devilinfo)
|
||||
addtimer(mind.devilinfo, "beginResurrectionCheck", 0, FALSE, src)
|
||||
addtimer(mind.devilinfo, "beginResurrectionCheck", 0, TIMER_NORMAL, src)
|
||||
|
||||
/mob/living/carbon/human/proc/makeSkeleton()
|
||||
status_flags |= DISFIGURED
|
||||
|
||||
@@ -729,7 +729,7 @@
|
||||
var/static/image/electrocution_skeleton_anim = image(icon = icon, icon_state = "electrocuted_base")
|
||||
electrocution_skeleton_anim.appearance_flags = RESET_COLOR
|
||||
add_overlay(electrocution_skeleton_anim)
|
||||
addtimer(src, "end_electrocution_animation", anim_duration, FALSE, electrocution_skeleton_anim)
|
||||
addtimer(src, "end_electrocution_animation", anim_duration, TIMER_NORMAL, electrocution_skeleton_anim)
|
||||
|
||||
else //or just do a generic animation
|
||||
var/list/viewing = list()
|
||||
|
||||
@@ -842,7 +842,7 @@
|
||||
if(!( H.hair_style == "Shaved") || !(H.hair_style == "Bald") || (HAIR in specflags))
|
||||
H << "<span class='danger'>Your hair starts to \
|
||||
fall out in clumps...<span>"
|
||||
addtimer(src, "go_bald", 50, TRUE, H)
|
||||
addtimer(src, "go_bald", 50, TIMER_UNIQUE, H)
|
||||
|
||||
if(75 to 100)
|
||||
if(prob(1))
|
||||
|
||||
@@ -338,7 +338,7 @@
|
||||
/mob/living/proc/flash_act(intensity = 1, override_blindness_check = 0, affect_silicon = 0, visual = 0, type = /obj/screen/fullscreen/flash)
|
||||
if(get_eye_protection() < intensity && (override_blindness_check || !(disabilities & BLIND)))
|
||||
overlay_fullscreen("flash", type)
|
||||
addtimer(src, "clear_fullscreen", 25, FALSE, "flash", 25)
|
||||
addtimer(src, "clear_fullscreen", 25, TIMER_NORMAL, "flash", 25)
|
||||
return 1
|
||||
|
||||
//called when the mob receives a loud bang
|
||||
|
||||
@@ -61,7 +61,7 @@
|
||||
anchored = A.anchored
|
||||
density = A.density
|
||||
appearance = A.appearance
|
||||
addtimer(src, "disable", 600, FALSE)
|
||||
addtimer(src, "disable", 600, TIMER_NORMAL)
|
||||
|
||||
/obj/guardian_bomb/proc/disable()
|
||||
stored_obj.forceMove(get_turf(src))
|
||||
|
||||
@@ -231,13 +231,13 @@
|
||||
if(mecha.defense_action && mecha.defense_action.owner && !mecha.defence_mode)
|
||||
mecha.leg_overload_mode = 0
|
||||
mecha.defense_action.Activate(TRUE)
|
||||
addtimer(mecha.defense_action, "Activate", 100, FALSE, FALSE) //10 seconds of defence, then toggle off
|
||||
addtimer(mecha.defense_action, "Activate", 100, TIMER_NORMAL, FALSE) //10 seconds of defence, then toggle off
|
||||
|
||||
else if(prob(retreat_chance))
|
||||
//Speed boost if possible
|
||||
if(mecha.overload_action && mecha.overload_action.owner && !mecha.leg_overload_mode)
|
||||
mecha.overload_action.Activate(TRUE)
|
||||
addtimer(mecha.overload_action, "Activate", 100, FALSE, FALSE) //10 seconds of speeeeed, then toggle off
|
||||
addtimer(mecha.overload_action, "Activate", 100, TIMER_NORMAL, FALSE) //10 seconds of speeeeed, then toggle off
|
||||
|
||||
retreat_distance = 50
|
||||
spawn(100)
|
||||
|
||||
@@ -200,7 +200,7 @@ Difficulty: Hard
|
||||
/mob/living/simple_animal/hostile/megafauna/bubblegum/proc/try_bloodattack()
|
||||
var/list/targets = get_mobs_on_blood()
|
||||
if(targets.len)
|
||||
addtimer(src, "bloodattack", 0, FALSE, targets, prob(50))
|
||||
addtimer(src, "bloodattack", 0, TIMER_NORMAL, targets, prob(50))
|
||||
|
||||
return TRUE
|
||||
return FALSE
|
||||
@@ -267,7 +267,7 @@ Difficulty: Hard
|
||||
L.forceMove(targetturf)
|
||||
playsound(targetturf, 'sound/magic/exit_blood.ogg', 100, 1, -1)
|
||||
if(L.stat != CONSCIOUS)
|
||||
addtimer(src, "devour", 2, FALSE, L)
|
||||
addtimer(src, "devour", 2, TIMER_NORMAL, L)
|
||||
sleep(1)
|
||||
|
||||
/obj/effect/overlay/temp/bubblegum_hands
|
||||
|
||||
@@ -77,7 +77,7 @@ Difficulty: Very Hard
|
||||
double_spiral()
|
||||
else
|
||||
visible_message("<span class='colossus'>\"<b>Judgement.</b>\"</span>")
|
||||
addtimer(src, "spiral_shoot", 0, FALSE, rand(0, 1))
|
||||
addtimer(src, "spiral_shoot", 0, TIMER_NORMAL, rand(0, 1))
|
||||
|
||||
else if(prob(20))
|
||||
ranged_cooldown = world.time + 30
|
||||
@@ -108,7 +108,7 @@ Difficulty: Very Hard
|
||||
/obj/effect/overlay/temp/at_shield/New(new_loc, new_target)
|
||||
..()
|
||||
target = new_target
|
||||
addtimer(src, "orbit", 0, FALSE, target, 0, FALSE, 0, 0, FALSE, TRUE)
|
||||
addtimer(src, "orbit", 0, TIMER_NORMAL, target, 0, FALSE, 0, 0, FALSE, TRUE)
|
||||
|
||||
/mob/living/simple_animal/hostile/megafauna/colossus/bullet_act(obj/item/projectile/P)
|
||||
if(!stat)
|
||||
@@ -140,7 +140,7 @@ Difficulty: Very Hard
|
||||
|
||||
sleep(10)
|
||||
addtimer(src, "spiral_shoot", 0)
|
||||
addtimer(src, "spiral_shoot", 0, FALSE, 1)
|
||||
addtimer(src, "spiral_shoot", 0, TIMER_NORMAL, 1)
|
||||
|
||||
/mob/living/simple_animal/hostile/megafauna/colossus/proc/spiral_shoot(negative = 0, counter_start = 1)
|
||||
var/counter = counter_start
|
||||
|
||||
@@ -141,7 +141,7 @@ Difficulty: Medium
|
||||
|
||||
if(prob(15 + anger_modifier) && !client)
|
||||
if(health < maxHealth/2)
|
||||
addtimer(src, "swoop_attack", 0, FALSE, 1)
|
||||
addtimer(src, "swoop_attack", 0, TIMER_NORMAL, 1)
|
||||
else
|
||||
fire_rain()
|
||||
|
||||
@@ -163,7 +163,7 @@ Difficulty: Medium
|
||||
playsound(get_turf(src),'sound/magic/Fireball.ogg', 200, 1)
|
||||
|
||||
for(var/d in cardinal)
|
||||
addtimer(src, "fire_wall", 0, FALSE, d)
|
||||
addtimer(src, "fire_wall", 0, TIMER_NORMAL, d)
|
||||
|
||||
/mob/living/simple_animal/hostile/megafauna/dragon/proc/fire_wall(dir)
|
||||
var/list/hit_things = list(src)
|
||||
|
||||
@@ -140,7 +140,7 @@ Difficulty: Hard
|
||||
/mob/living/simple_animal/hostile/megafauna/hierophant/AttackingTarget()
|
||||
if(!blinking)
|
||||
if(target && isliving(target))
|
||||
addtimer(src, "melee_blast", 0, FALSE, get_turf(target)) //melee attacks on living mobs produce a 3x3 blast
|
||||
addtimer(src, "melee_blast", 0, TIMER_NORMAL, get_turf(target)) //melee attacks on living mobs produce a 3x3 blast
|
||||
..()
|
||||
|
||||
/mob/living/simple_animal/hostile/megafauna/hierophant/DestroySurroundings()
|
||||
@@ -223,9 +223,9 @@ Difficulty: Hard
|
||||
cross_counter--
|
||||
var/delay = 6
|
||||
if(prob(60))
|
||||
addtimer(src, "cardinal_blasts", 0, FALSE, target)
|
||||
addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, target)
|
||||
else
|
||||
addtimer(src, "diagonal_blasts", 0, FALSE, target)
|
||||
addtimer(src, "diagonal_blasts", 0, TIMER_NORMAL, target)
|
||||
delay = 5 //this one isn't so mean, so do the next one faster(if there is one)
|
||||
sleep(delay)
|
||||
animate(src, color = oldcolor, time = 8)
|
||||
@@ -262,18 +262,18 @@ Difficulty: Hard
|
||||
else if(prob(70 - anger_modifier)) //a cross blast of some type
|
||||
if(prob(anger_modifier)) //at us?
|
||||
if(prob(anger_modifier * 2) && health < maxHealth * 0.5) //we're super angry do it at all dirs
|
||||
addtimer(src, "alldir_blasts", 0, FALSE, src)
|
||||
addtimer(src, "alldir_blasts", 0, TIMER_NORMAL, src)
|
||||
else if(prob(60))
|
||||
addtimer(src, "cardinal_blasts", 0, FALSE, src)
|
||||
addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, src)
|
||||
else
|
||||
addtimer(src, "diagonal_blasts", 0, FALSE, src)
|
||||
addtimer(src, "diagonal_blasts", 0, TIMER_NORMAL, src)
|
||||
else //at them?
|
||||
if(prob(anger_modifier * 2) && health < maxHealth * 0.5 && !target_is_slow) //we're super angry do it at all dirs
|
||||
addtimer(src, "alldir_blasts", 0, FALSE, target)
|
||||
addtimer(src, "alldir_blasts", 0, TIMER_NORMAL, target)
|
||||
else if(prob(60))
|
||||
addtimer(src, "cardinal_blasts", 0, FALSE, target)
|
||||
addtimer(src, "cardinal_blasts", 0, TIMER_NORMAL, target)
|
||||
else
|
||||
addtimer(src, "diagonal_blasts", 0, FALSE, target)
|
||||
addtimer(src, "diagonal_blasts", 0, TIMER_NORMAL, target)
|
||||
else if(chaser_cooldown < world.time) //if chasers are off cooldown, fire some!
|
||||
var/obj/effect/overlay/temp/hierophant/chaser/C = PoolOrNew(/obj/effect/overlay/temp/hierophant/chaser, list(loc, src, target, chaser_speed, FALSE))
|
||||
chaser_cooldown = world.time + initial(chaser_cooldown)
|
||||
@@ -282,7 +282,7 @@ Difficulty: Hard
|
||||
OC.moving = 4
|
||||
OC.moving_dir = pick(cardinal - C.moving_dir)
|
||||
else //just release a burst of power
|
||||
addtimer(src, "burst", 0, FALSE, get_turf(src))
|
||||
addtimer(src, "burst", 0, TIMER_NORMAL, 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)
|
||||
@@ -294,7 +294,7 @@ Difficulty: Hard
|
||||
sleep(2)
|
||||
PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, src, FALSE))
|
||||
for(var/d in diagonals)
|
||||
addtimer(src, "blast_wall", 0, FALSE, T, d)
|
||||
addtimer(src, "blast_wall", 0, TIMER_NORMAL, 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)
|
||||
@@ -306,7 +306,7 @@ Difficulty: Hard
|
||||
sleep(2)
|
||||
PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, src, FALSE))
|
||||
for(var/d in cardinal)
|
||||
addtimer(src, "blast_wall", 0, FALSE, T, d)
|
||||
addtimer(src, "blast_wall", 0, TIMER_NORMAL, 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)
|
||||
@@ -318,7 +318,7 @@ Difficulty: Hard
|
||||
sleep(2)
|
||||
PoolOrNew(/obj/effect/overlay/temp/hierophant/blast, list(T, src, FALSE))
|
||||
for(var/d in alldirs)
|
||||
addtimer(src, "blast_wall", 0, FALSE, T, d)
|
||||
addtimer(src, "blast_wall", 0, TIMER_NORMAL, T, d)
|
||||
|
||||
/mob/living/simple_animal/hostile/megafauna/hierophant/proc/blast_wall(turf/T, dir) //make a wall of blasts beam_range tiles long
|
||||
var/range = beam_range
|
||||
|
||||
@@ -224,8 +224,8 @@
|
||||
user.visible_message("<span class='notice'>With a sudden blaze, [H] stands back up.</span>")
|
||||
H.fakefire()
|
||||
FulfillContract(H, 1)//Revival contracts are always signed in blood
|
||||
addtimer(H, "fakefireextinguish",5,TRUE)
|
||||
addtimer(src,"resetcooldown",300,TRUE)
|
||||
addtimer(H, "fakefireextinguish",5, TIMER_UNIQUE)
|
||||
addtimer(src,"resetcooldown",300, TIMER_UNIQUE)
|
||||
else
|
||||
..()
|
||||
|
||||
|
||||
@@ -854,7 +854,7 @@
|
||||
return
|
||||
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(malf, "malfhacked", 600, FALSE, src)
|
||||
malf.malfhacking = addtimer(malf, "malfhacked", 600, TIMER_NORMAL, src)
|
||||
|
||||
var/obj/screen/alert/hackingapc/A
|
||||
A = malf.throw_alert("hackingapc", /obj/screen/alert/hackingapc)
|
||||
@@ -1180,7 +1180,7 @@
|
||||
environ = 0
|
||||
update_icon()
|
||||
update()
|
||||
addtimer(src, "reset", 600, FALSE, APC_RESET_EMP)
|
||||
addtimer(src, "reset", 600, TIMER_NORMAL, APC_RESET_EMP)
|
||||
..()
|
||||
|
||||
/obj/machinery/power/apc/blob_act(obj/structure/blob/B)
|
||||
|
||||
@@ -124,7 +124,7 @@
|
||||
"<span class='italics'>You hear a loud electrical crack!</span>")
|
||||
playsound(src.loc, 'sound/magic/LightningShock.ogg', 100, 1, extrarange = 5)
|
||||
tesla_zap(src, 5, power_gen * 0.05)
|
||||
addtimer(GLOBAL_PROC, "explosion", 100, FALSE, get_turf(src), 2, 3, 4, 8) // Not a normal explosion.
|
||||
addtimer(GLOBAL_PROC, "explosion", 100, TIMER_NORMAL, get_turf(src), 2, 3, 4, 8) // Not a normal explosion.
|
||||
|
||||
/obj/machinery/power/rtg/abductor/bullet_act(obj/item/projectile/Proj)
|
||||
..()
|
||||
|
||||
@@ -29,7 +29,7 @@
|
||||
if(C.dna && C.dna.check_mutation(HULK))
|
||||
C.say(pick(";RAAAAAAAARGH!", ";HNNNNNNNNNGGGGGGH!", ";GWAAAAAAAARRRHHH!", "NNNNNNNNGGGGGGGGHH!", ";AAAAAAARRRGH!" ))
|
||||
else if(C.status_flags & CANWEAKEN)
|
||||
addtimer(C, "do_jitter_animation", 5, FALSE, jitter)
|
||||
addtimer(C, "do_jitter_animation", 5, TIMER_NORMAL, jitter)
|
||||
|
||||
/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
|
||||
var/datum/effect_system/spark_spread/sparks = new /datum/effect_system/spark_spread
|
||||
|
||||
@@ -118,7 +118,7 @@
|
||||
feedback_add_details("slime_cores_used","[type]")
|
||||
var/turf/T = get_turf(holder.my_atom)
|
||||
T.visible_message("<span class='danger'>The slime extract begins to vibrate violently !</span>")
|
||||
addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 5, "Gold Slime")
|
||||
addtimer(src, "chemical_mob_spawn", 50, TIMER_NORMAL, holder, 5, "Gold Slime")
|
||||
spawn(60)
|
||||
..()
|
||||
|
||||
@@ -133,7 +133,7 @@
|
||||
feedback_add_details("slime_cores_used","[type]")
|
||||
var/turf/T = get_turf(holder.my_atom)
|
||||
T.visible_message("<span class='danger'>The slime extract begins to vibrate violently !</span>")
|
||||
addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 3, "Lesser Gold Slime", "neutral")
|
||||
addtimer(src, "chemical_mob_spawn", 50, TIMER_NORMAL, holder, 3, "Lesser Gold Slime", "neutral")
|
||||
spawn(60)
|
||||
..()
|
||||
|
||||
@@ -148,7 +148,7 @@
|
||||
feedback_add_details("slime_cores_used","[type]")
|
||||
var/turf/T = get_turf(holder.my_atom)
|
||||
T.visible_message("<span class='danger'>The slime extract begins to vibrate adorably !</span>")
|
||||
addtimer(src, "chemical_mob_spawn", 50, FALSE, holder, 1, "Friendly Gold Slime", "neutral")
|
||||
addtimer(src, "chemical_mob_spawn", 50, TIMER_NORMAL, holder, 1, "Friendly Gold Slime", "neutral")
|
||||
spawn(60)
|
||||
..()
|
||||
|
||||
@@ -283,7 +283,7 @@
|
||||
feedback_add_details("slime_cores_used","[type]")
|
||||
var/turf/T = get_turf(holder.my_atom)
|
||||
T.visible_message("<span class='danger'>The slime extract begins to vibrate adorably!</span>")
|
||||
addtimer(src, "freeze", 50, FALSE, holder)
|
||||
addtimer(src, "freeze", 50, TIMER_NORMAL, holder)
|
||||
spawn(60)
|
||||
..()
|
||||
|
||||
@@ -332,7 +332,7 @@
|
||||
feedback_add_details("slime_cores_used","[type]")
|
||||
var/turf/TU = get_turf(holder.my_atom)
|
||||
TU.visible_message("<span class='danger'>The slime extract begins to vibrate adorably!</span>")
|
||||
addtimer(src, "slime_burn", 50, FALSE, holder)
|
||||
addtimer(src, "slime_burn", 50, TIMER_NORMAL, holder)
|
||||
spawn(60)
|
||||
..()
|
||||
|
||||
@@ -543,7 +543,7 @@
|
||||
message_admins("Slime Explosion reaction started at <a href='?_src_=holder;adminplayerobservecoodjump=1;X=[T.x];Y=[T.y];Z=[T.z]'>[T.loc.name] (JMP)</a>. Last Fingerprint: [touch_msg]")
|
||||
log_game("Slime Explosion reaction started at [T.loc.name] ([T.x],[T.y],[T.z]). Last Fingerprint: [lastkey ? lastkey : "N/A"].")
|
||||
T.visible_message("<span class='danger'>The slime extract begins to vibrate violently !</span>")
|
||||
addtimer(src, "boom", 50, FALSE, holder)
|
||||
addtimer(src, "boom", 50, TIMER_NORMAL, holder)
|
||||
spawn(60)
|
||||
..()
|
||||
|
||||
|
||||
@@ -99,7 +99,7 @@
|
||||
L.visible_message("<span class='revennotice'>A strange purple glow wraps itself around [L] as [L.p_they()] suddenly fall[L.p_s()] unconscious.</span>",
|
||||
"<span class='revendanger'>[desc]</span>")
|
||||
// Don't let them sit suround unconscious forever
|
||||
addtimer(src, "sleeper_dreams", 100, FALSE, L)
|
||||
addtimer(src, "sleeper_dreams", 100, TIMER_NORMAL, L)
|
||||
|
||||
// Existing sleepers
|
||||
for(var/i in found)
|
||||
|
||||
@@ -160,7 +160,7 @@
|
||||
src.client.eye = src
|
||||
src.visible_message("<span class='warning'><B>[src] appears in a firey blaze!</B>")
|
||||
playsound(get_turf(src), 'sound/magic/exit_blood.ogg', 100, 1, -1)
|
||||
addtimer(src, "fakefireextinguish", 15,TRUE)
|
||||
addtimer(src, "fakefireextinguish", 15, TIMER_UNIQUE)
|
||||
|
||||
/obj/effect/proc_holder/spell/targeted/sintouch
|
||||
name = "Sin Touch"
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/cast(list/targets,mob/user = usr) //magnets, so mostly hardcoded
|
||||
playsound(get_turf(user), 'sound/magic/Ethereal_Enter.ogg', 50, 1, -1)
|
||||
for(var/mob/living/target in targets)
|
||||
addtimer(src, "do_jaunt", 0, FALSE, target)
|
||||
addtimer(src, "do_jaunt", 0, TIMER_NORMAL, target)
|
||||
|
||||
/obj/effect/proc_holder/spell/targeted/ethereal_jaunt/proc/do_jaunt(mob/living/target)
|
||||
target.notransform = 1
|
||||
|
||||
@@ -16,9 +16,9 @@
|
||||
user << sound("sound/magic/Knock.ogg")
|
||||
for(var/turf/T in targets)
|
||||
for(var/obj/machinery/door/door in T.contents)
|
||||
addtimer(src, "open_door", 0, FALSE, door)
|
||||
addtimer(src, "open_door", 0, TIMER_NORMAL, door)
|
||||
for(var/obj/structure/closet/C in T.contents)
|
||||
addtimer(src, "open_closet", 0, FALSE, C)
|
||||
addtimer(src, "open_closet", 0, TIMER_NORMAL, C)
|
||||
|
||||
/obj/effect/proc_holder/spell/aoe_turf/knock/proc/open_door(var/obj/machinery/door/door)
|
||||
if(istype(door, /obj/machinery/door/airlock))
|
||||
|
||||
@@ -67,7 +67,7 @@
|
||||
playsound(src.loc, 'sound/machines/airlock_alien_prying.ogg', 100, 1)
|
||||
A.audible_message("<span class='italics'>You hear a loud metallic grinding sound.</span>")
|
||||
|
||||
addtimer(src, "growl", 20, FALSE, user)
|
||||
addtimer(src, "growl", 20, TIMER_NORMAL, user)
|
||||
|
||||
if(do_after(user, delay=160, needhand=FALSE, target=A, progress=TRUE))
|
||||
playsound(src.loc, 'sound/hallucinations/far_noise.ogg', 50, 1)
|
||||
|
||||
Reference in New Issue
Block a user