diff --git a/code/__DEFINES/misc.dm b/code/__DEFINES/misc.dm index e057b3a93b1..e20b4b1533d 100644 --- a/code/__DEFINES/misc.dm +++ b/code/__DEFINES/misc.dm @@ -585,3 +585,8 @@ var/global/list/ghost_others_options = list(GHOST_OTHERS_SIMPLE, GHOST_OTHERS_DE #define CLOCK_SUMMON 21 #define CLOCK_SILICONS 22 #define CLOCK_PROSELYTIZATION 23 + +//For SSTimer + +#define TIMER_NORMAL "normal" +#define TIMER_UNIQUE "unique" diff --git a/code/controllers/subsystem/augury.dm b/code/controllers/subsystem/augury.dm index 1aed514f37e..eba214fdf78 100644 --- a/code/controllers/subsystem/augury.dm +++ b/code/controllers/subsystem/augury.dm @@ -46,7 +46,7 @@ var/datum/subsystem/augury/SSaugury if(O.orbiting) continue else if(biggest_doom) - addtimer(O, "orbit", 0, FALSE, biggest_doom) + addtimer(O, "orbit", 0, TIMER_NORMAL, biggest_doom) /datum/action/innate/augury name = "Auto Follow Debris" diff --git a/code/controllers/subsystem/timer.dm b/code/controllers/subsystem/timer.dm index 9b154a56bd2..5885fc6d5d8 100644 --- a/code/controllers/subsystem/timer.dm +++ b/code/controllers/subsystem/timer.dm @@ -62,7 +62,7 @@ var/datum/subsystem/timer/SStimer SStimer.hashes -= hash return QDEL_HINT_IWILLGC -/proc/addtimer(thingToCall, procToCall, wait, unique = FALSE, ...) +/proc/addtimer(thingToCall, procToCall, wait, unique = TIMER_NORMAL, ...) if (!thingToCall || !procToCall) return if (!SStimer.can_fire) @@ -76,11 +76,17 @@ var/datum/subsystem/timer/SStimer hashlist[1] = "[thingToCall](\ref[thingToCall])" event.hash = jointext(args, null) - if(args.len > 4) - event.argList = args.Copy(5) + + var/bad_args = unique != TIMER_NORMAL && unique != TIMER_UNIQUE + if(args.len > 4 || bad_args) + if(bad_args) + stack_trace("Invalid arguments in call to addtimer!") + event.argList = args.Copy(4) + else + event.argList = args.Copy(5) // Check for dupes if unique = 1. - if(unique) + if(!bad_args && unique != TIMER_NORMAL) //faster than checking if(unique == TIMER_UNIQUE) var/datum/timedevent/hash_event = SStimer.hashes[event.hash] if(hash_event) return hash_event.id diff --git a/code/controllers/subsystem/weather.dm b/code/controllers/subsystem/weather.dm index fa0bc3a51f6..83d4bd0b9f1 100644 --- a/code/controllers/subsystem/weather.dm +++ b/code/controllers/subsystem/weather.dm @@ -29,7 +29,7 @@ var/datum/subsystem/weather/SSweather var/datum/weather/W = pickweight(possible_weather_for_this_z) run_weather(W.name, Z) eligible_zlevels -= Z - addtimer(src, "make_z_eligible", rand(3000, 6000) + W.weather_duration_upper, TRUE, Z) //Around 5-10 minutes between weathers + addtimer(src, "make_z_eligible", rand(3000, 6000) + W.weather_duration_upper, TIMER_UNIQUE, Z) //Around 5-10 minutes between weathers /datum/subsystem/weather/Initialize(start_timeofday) ..() diff --git a/code/datums/antagonists/datum_clockcult.dm b/code/datums/antagonists/datum_clockcult.dm index 6e99d82f97c..b2e182ab490 100644 --- a/code/datums/antagonists/datum_clockcult.dm +++ b/code/datums/antagonists/datum_clockcult.dm @@ -40,7 +40,7 @@ ticker.mode.servants_of_ratvar += owner.mind ticker.mode.update_servant_icons_added(owner.mind) if(jobban_isbanned(owner, ROLE_SERVANT_OF_RATVAR)) - addtimer(ticker.mode, "replace_jobbaned_player", 0, FALSE, owner, ROLE_SERVANT_OF_RATVAR, ROLE_SERVANT_OF_RATVAR) + addtimer(ticker.mode, "replace_jobbaned_player", 0, TIMER_NORMAL, owner, ROLE_SERVANT_OF_RATVAR, ROLE_SERVANT_OF_RATVAR) if(owner.mind) owner.mind.special_role = "Servant of Ratvar" owner.attack_log += "\[[time_stamp()]\] Has been converted to the cult of Ratvar!" diff --git a/code/datums/antagonists/datum_cult.dm b/code/datums/antagonists/datum_cult.dm index 60dd293581b..1788dd7d12b 100644 --- a/code/datums/antagonists/datum_cult.dm +++ b/code/datums/antagonists/datum_cult.dm @@ -20,7 +20,7 @@ var/datum/game_mode/cult/C = ticker.mode C.memorize_cult_objectives(owner.mind) if(jobban_isbanned(owner, ROLE_CULTIST)) - addtimer(ticker.mode, "replace_jobbaned_player", 0, FALSE, owner, ROLE_CULTIST, ROLE_CULTIST) + addtimer(ticker.mode, "replace_jobbaned_player", 0, TIMER_NORMAL, owner, ROLE_CULTIST, ROLE_CULTIST) if(owner.mind) owner.mind.special_role = "Cultist" owner.attack_log += "\[[time_stamp()]\] Has been converted to the cult of Nar'Sie!" diff --git a/code/datums/helper_datums/teleport.dm b/code/datums/helper_datums/teleport.dm index a36f4f5172b..96df9406fb8 100644 --- a/code/datums/helper_datums/teleport.dm +++ b/code/datums/helper_datums/teleport.dm @@ -82,9 +82,9 @@ /datum/teleport/proc/playSpecials(atom/location,datum/effect_system/effect,sound) if(location) if(effect) - addtimer(src, "do_effect", 0, FALSE, location, effect) + addtimer(src, "do_effect", 0, TIMER_NORMAL, location, effect) if(sound) - addtimer(src, "do_sound", 0, FALSE, location, sound) + addtimer(src, "do_sound", 0, TIMER_NORMAL, location, sound) /datum/teleport/proc/do_effect(atom/location, datum/effect_system/effect) src = null diff --git a/code/datums/martial.dm b/code/datums/martial.dm index 203af9d71f2..79d24e4cf47 100644 --- a/code/datums/martial.dm +++ b/code/datums/martial.dm @@ -471,7 +471,7 @@ D.adjustStaminaLoss(20) D.Stun(5) restraining = 1 - addtimer(src, "drop_restraining", 50, TRUE) + addtimer(src, "drop_restraining", 50, TIMER_UNIQUE) return 1 /datum/martial_art/cqc/proc/Consecutive(mob/living/carbon/human/A, mob/living/carbon/human/D) diff --git a/code/datums/mutations.dm b/code/datums/mutations.dm index 8e17dc87617..d8eda098861 100644 --- a/code/datums/mutations.dm +++ b/code/datums/mutations.dm @@ -237,7 +237,7 @@ owner.visible_message("[owner] starts having a seizure!", "You have a seizure!") owner.Paralyse(10) owner.Jitter(1000) - addtimer(src, "jitter_less", 90, FALSE, owner) + addtimer(src, "jitter_less", 90, TIMER_NORMAL, owner) /datum/mutation/human/epilepsy/proc/jitter_less(mob/living/carbon/human/owner) if(owner) diff --git a/code/datums/wires/airalarm.dm b/code/datums/wires/airalarm.dm index 073b4610d11..1588710ebd6 100644 --- a/code/datums/wires/airalarm.dm +++ b/code/datums/wires/airalarm.dm @@ -31,13 +31,13 @@ if(!A.shorted) A.shorted = TRUE A.update_icon() - addtimer(A, "reset", 1200, FALSE, wire) + addtimer(A, "reset", 1200, TIMER_NORMAL, wire) 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(A, "reset", 100, FALSE, wire) + addtimer(A, "reset", 100, TIMER_NORMAL, wire) if(WIRE_PANIC) // Toggle panic siphon. if(!A.shorted) if(A.mode == 1) // AALARM_MODE_SCRUB diff --git a/code/datums/wires/apc.dm b/code/datums/wires/apc.dm index 8ef49216487..a3b874cd087 100644 --- a/code/datums/wires/apc.dm +++ b/code/datums/wires/apc.dm @@ -29,14 +29,14 @@ if(WIRE_POWER1, WIRE_POWER2) // Short for a long while. if(!A.shorted) A.shorted = TRUE - addtimer(A, "reset", 1200, FALSE, wire) + addtimer(A, "reset", 1200, TIMER_NORMAL, wire) if(WIRE_IDSCAN) // Unlock for a little while. A.locked = FALSE addtimer(A, "reset", 300, FALSE, wire) if(WIRE_AI) // Disable AI control for a very short time. if(!A.aidisabled) A.aidisabled = TRUE - addtimer(A, "reset", 10, FALSE, wire) + addtimer(A, "reset", 10, TIMER_NORMAL, wire) /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 7deba0a4ed1..fa72cea7ab0 100644 --- a/code/datums/wires/autolathe.dm +++ b/code/datums/wires/autolathe.dm @@ -27,13 +27,13 @@ switch(wire) if(WIRE_HACK) A.adjust_hacked(!A.hacked) - addtimer(A, "reset", 60, FALSE, wire) + addtimer(A, "reset", 60, TIMER_NORMAL, wire) if(WIRE_SHOCK) A.shocked = !A.shocked - addtimer(A, "reset", 60, FALSE, wire) + addtimer(A, "reset", 60, TIMER_NORMAL, wire) if(WIRE_DISABLE) A.disabled = !A.disabled - addtimer(A, "reset", 60, FALSE, wire) + addtimer(A, "reset", 60, TIMER_NORMAL, wire) /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 21f1e80a2b4..b2757d2dd80 100644 --- a/code/game/area/areas.dm +++ b/code/game/area/areas.dm @@ -255,7 +255,7 @@ var/list/teleportlocs = list() for (var/mob/living/silicon/SILICON in player_list) if(SILICON.triggerAlarm("Burglar", src, cameras, trigger)) //Cancel silicon alert after 1 minute - addtimer(SILICON, "cancelAlarm", 600, FALSE,"Burglar",src,trigger) + addtimer(SILICON, "cancelAlarm", 600, TIMER_NORMAL,"Burglar",src,trigger) /area/proc/set_fire_alarm_effect() fire = 1 diff --git a/code/game/gamemodes/changeling/powers/biodegrade.dm b/code/game/gamemodes/changeling/powers/biodegrade.dm index 24e2cda5ba0..84153f8825c 100644 --- a/code/game/gamemodes/changeling/powers/biodegrade.dm +++ b/code/game/gamemodes/changeling/powers/biodegrade.dm @@ -25,7 +25,7 @@ "We vomit acidic ooze onto our \ restraints!") - addtimer(src, "dissolve_handcuffs", 30, FALSE, user, O) + addtimer(src, "dissolve_handcuffs", 30, TIMER_NORMAL, user, O) used = TRUE if(user.wear_suit && user.wear_suit.breakouttime && !used) @@ -36,7 +36,7 @@ of acid across the front of \his [S]!", \ "We vomit acidic ooze onto our straight \ jacket!") - addtimer(src, "dissolve_straightjacket", 30, FALSE, user, S) + addtimer(src, "dissolve_straightjacket", 30, TIMER_NORMAL, user, S) used = TRUE @@ -48,7 +48,7 @@ begin to melt and run!") user << "We vomit acidic goop onto the \ interior of [C]!" - addtimer(src, "open_closet", 70, FALSE, user, C) + addtimer(src, "open_closet", 70, TIMER_NORMAL, user, C) used = TRUE if(istype(user.loc, /obj/structure/spider/cocoon) && !used) @@ -57,7 +57,7 @@ return 0 C.visible_message("[src] shifts and starts to fall apart!") user << "We secrete acidic enzymes from our skin and begin melting our cocoon..." - addtimer(src, "dissolve_cocoon", 25, FALSE, user, C) //Very short because it's just webs + addtimer(src, "dissolve_cocoon", 25, TIMER_NORMAL, user, C) //Very short because it's just webs used = TRUE if(used) diff --git a/code/game/gamemodes/changeling/powers/fakedeath.dm b/code/game/gamemodes/changeling/powers/fakedeath.dm index 4b371a28d33..916daf74879 100644 --- a/code/game/gamemodes/changeling/powers/fakedeath.dm +++ b/code/game/gamemodes/changeling/powers/fakedeath.dm @@ -18,7 +18,7 @@ user.update_stat() user.update_canmove() - addtimer(src, "ready_to_regenerate", LING_FAKEDEATH_TIME, FALSE, user) + addtimer(src, "ready_to_regenerate", LING_FAKEDEATH_TIME, TIMER_NORMAL, user) feedback_add_details("changeling_powers","FD") return 1 diff --git a/code/game/gamemodes/changeling/powers/fleshmend.dm b/code/game/gamemodes/changeling/powers/fleshmend.dm index 2aeff87ffb2..a8c077cbb81 100644 --- a/code/game/gamemodes/changeling/powers/fleshmend.dm +++ b/code/game/gamemodes/changeling/powers/fleshmend.dm @@ -36,7 +36,7 @@ by quick repeated use!" recent_uses++ - addtimer(src, "fleshmend", 0, FALSE, user) + addtimer(src, "fleshmend", 0, TIMER_NORMAL, user) feedback_add_details("changeling_powers","RR") return 1 diff --git a/code/game/gamemodes/changeling/powers/tiny_prick.dm b/code/game/gamemodes/changeling/powers/tiny_prick.dm index 9f3df575613..1a28baaf4af 100644 --- a/code/game/gamemodes/changeling/powers/tiny_prick.dm +++ b/code/game/gamemodes/changeling/powers/tiny_prick.dm @@ -149,7 +149,7 @@ target.visible_message("A grotesque blade forms around [target.name]\'s arm!", "Your arm twists and mutates, transforming into a horrific monstrosity!", "You hear organic matter ripping and tearing!") playsound(target, 'sound/effects/blobattack.ogg', 30, 1) - addtimer(src, "remove_fake", 600, target, blade) + addtimer(src, "remove_fake", 600, TIMER_NORMAL, target, blade) feedback_add_details("changeling_powers","AS") return 1 @@ -224,7 +224,7 @@ /obj/effect/proc_holder/changeling/sting/LSD/sting_action(mob/user, mob/living/carbon/target) add_logs(user, target, "stung", "LSD sting") - addtimer(src, "hallucination_time", rand(300,600), target) + addtimer(src, "hallucination_time", rand(300,600), TIMER_NORMAL, target) feedback_add_details("changeling_powers","HS") return 1 diff --git a/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm b/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm index 9115b57885d..9098eb8e1de 100644 --- a/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm +++ b/code/game/gamemodes/clock_cult/clock_effects/clock_overlay.dm @@ -30,7 +30,7 @@ /obj/effect/clockwork/overlay/wall/New() ..() queue_smooth_neighbors(src) - addtimer(GLOBAL_PROC, "queue_smooth", 1, FALSE, src) + addtimer(GLOBAL_PROC, "queue_smooth", 1, TIMER_NORMAL, src) /obj/effect/clockwork/overlay/wall/Destroy() queue_smooth_neighbors(src) diff --git a/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm b/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm index de54f1882de..9f864a8a44d 100644 --- a/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm +++ b/code/game/gamemodes/clock_cult/clock_helpers/proselytizer_helpers.dm @@ -142,7 +142,7 @@ if(reinf) prosel_cost -= REPLICANT_ROD for(var/obj/structure/grille/G in get_turf(src)) - addtimer(proselytizer, "proselytize", 0, FALSE, G, user) + addtimer(proselytizer, "proselytize", 0, TIMER_NORMAL, G, user) return list("operation_time" = prosel_time, "new_obj_type" = windowtype, "alloy_cost" = prosel_cost, "spawn_dir" = dir, "dir_in_new" = new_dir) /obj/structure/window/reinforced/clockwork/proselytize_vals(mob/living/user, obj/item/clockwork/clockwork_proselytizer/proselytizer) diff --git a/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm b/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm index 041b68bf398..45c69af7eca 100644 --- a/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm +++ b/code/game/gamemodes/clock_cult/clock_helpers/slab_abilities.dm @@ -47,7 +47,7 @@ clockwork_say(ranged_ability_user, text2ratvar("Be bound, heathen!")) remove_mousepointer(ranged_ability_user.client) ranged_ability_user.notransform = TRUE - addtimer(src, "reset_user_notransform", 5, FALSE, ranged_ability_user) //stop us moving for a little bit so we don't break the scripture following this + addtimer(src, "reset_user_notransform", 5, TIMER_NORMAL, ranged_ability_user) //stop us moving for a little bit so we don't break the scripture following this slab.busy = null var/datum/clockwork_scripture/geis/conversion = new conversion.slab = slab diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm index 7c69b1eb554..f209f02893e 100644 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm +++ b/code/game/gamemodes/clock_cult/clock_items/clockwork_armor.dm @@ -31,7 +31,7 @@ user.emote("scream") user.apply_damage(30, BRUTE, "head") user.adjustBrainLoss(30) - addtimer(user, "unEquip", 1, FALSE, src, 1) //equipped happens before putting stuff on(but not before picking items up). thus, we need to wait for it to be on before forcing it off. + addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) //equipped happens before putting stuff on(but not before picking items up). 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)) @@ -78,7 +78,7 @@ user.apply_damage(15, BURN, "chest") user.adjust_fire_stacks(2) user.IgniteMob() - addtimer(user, "unEquip", 1, FALSE, src, 1) + addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) /obj/item/clothing/gloves/clockwork name = "clockwork gauntlets" @@ -123,7 +123,7 @@ user.emote("scream") user.apply_damage(7, BRUTE, "l_arm") user.apply_damage(7, BRUTE, "r_arm") - addtimer(user, "unEquip", 1, FALSE, src, 1) + addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) /obj/item/clothing/shoes/clockwork name = "clockwork treads" @@ -163,4 +163,4 @@ user.emote("scream") user.apply_damage(7, BURN, "l_leg") user.apply_damage(7, BURN, "r_leg") - addtimer(user, "unEquip", 1, FALSE, src, 1) + addtimer(user, "unEquip", 1, TIMER_NORMAL, src, 1) diff --git a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm b/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm index 0221bb650fa..8540a29b911 100644 --- a/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm +++ b/code/game/gamemodes/clock_cult/clock_items/clockwork_slab.dm @@ -92,7 +92,7 @@ /obj/item/clockwork/slab/dropped(mob/user) . = ..() - addtimer(src, "check_on_mob", 1, FALSE, user) //dropped is called before the item is out of the slot, so we need to check slightly later + addtimer(src, "check_on_mob", 1, TIMER_NORMAL, user) //dropped is called before the item is out of the slot, so we need to check slightly later /obj/item/clockwork/slab/proc/check_on_mob(mob/user) if(user && !(src in user.held_items) && slab_ability && slab_ability.ranged_ability_user) //if we happen to check and we AREN'T in user's hands, remove whatever ability we have @@ -424,7 +424,7 @@ if(href_list["Recite"]) href_list["Recite"] = text2path(href_list["Recite"]) - addtimer(src, "recite_scripture", 0, FALSE, href_list["Recite"], usr, FALSE) + addtimer(src, "recite_scripture", 0, TIMER_NORMAL, href_list["Recite"], usr, FALSE) return if(href_list["Quickbindone"]) diff --git a/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm b/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm index 9fedea3bb41..549e683a0d9 100644 --- a/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm +++ b/code/game/gamemodes/clock_cult/clock_items/judicial_visor.dm @@ -52,7 +52,7 @@ /obj/item/clothing/glasses/judicial_visor/dropped(mob/user) . = ..() - addtimer(src, "check_on_mob", 1, FALSE, user) //dropped is called before the item is out of the slot, so we need to check slightly later + addtimer(src, "check_on_mob", 1, TIMER_NORMAL, user) //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 @@ -131,7 +131,7 @@ continue V.recharging = TRUE //To prevent exploiting multiple visors to bypass the cooldown V.update_status() - addtimer(V, "recharge_visor", (ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown) * 2, FALSE, ranged_ability_user) + addtimer(V, "recharge_visor", (ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown) * 2, TIMER_NORMAL, ranged_ability_user) clockwork_say(ranged_ability_user, text2ratvar("Kneel, heathens!")) ranged_ability_user.visible_message("[ranged_ability_user]'s judicial visor fires a stream of energy at [target], creating a strange mark!", "You direct [visor]'s power to [target]. You must wait for some time before doing this again.") var/turf/targetturf = get_turf(target) @@ -139,7 +139,7 @@ add_logs(ranged_ability_user, targetturf, "created a judicial marker") ranged_ability_user.update_action_buttons_icon() ranged_ability_user.update_inv_glasses() - addtimer(visor, "recharge_visor", ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown, FALSE, ranged_ability_user)//Cooldown is reduced by 10x if Ratvar is up + addtimer(visor, "recharge_visor", ratvar_awakens ? visor.recharge_cooldown*0.1 : visor.recharge_cooldown, TIMER_NORMAL, ranged_ability_user)//Cooldown is reduced by 10x if Ratvar is up remove_ranged_ability() return TRUE @@ -161,12 +161,12 @@ user = caster playsound(src, 'sound/magic/MAGIC_MISSILE.ogg', 50, 1, 1, 1) flick("judicial_marker", src) - addtimer(src, "burstanim", 16, FALSE) + addtimer(src, "burstanim", 16, TIMER_NORMAL) /obj/effect/clockwork/judicial_marker/proc/burstanim() layer = ABOVE_ALL_MOB_LAYER flick("judicial_explosion", src) - addtimer(src, "judicialblast", 13, FALSE) + addtimer(src, "judicialblast", 13, TIMER_NORMAL) /obj/effect/clockwork/judicial_marker/proc/judicialblast() var/targetsjudged = 0 diff --git a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm index df0251fac1c..45d0ea30d6d 100644 --- a/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm +++ b/code/game/gamemodes/clock_cult/clock_scriptures/scripture_scripts.dm @@ -214,10 +214,10 @@ if(!ratvar_awakens) R.clockwork_desc = "A powerful spear of Ratvarian making. It's more effective against enemy cultists and silicons, though it won't last for long." owner << "Your spear begins to break down in this plane of existence. You can't use it for long!" - addtimer(R, "break_spear", base_cooldown, FALSE) + addtimer(R, "break_spear", base_cooldown, TIMER_NORMAL) cooldown = base_cooldown + world.time owner.update_action_buttons_icon() - addtimer(src, "update_actions", base_cooldown, FALSE) + addtimer(src, "update_actions", base_cooldown, TIMER_NORMAL) return TRUE /datum/action/innate/function_call/proc/update_actions() diff --git a/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm b/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm index e862700a3a3..7fcf551161b 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/ark_of_the_clockwork_justicar.dm @@ -194,7 +194,7 @@ sleep(3) new/obj/structure/destructible/clockwork/massive/ratvar(startpoint) else - addtimer(SSshuttle.emergency, "request", 0, FALSE, null, 0) //call the shuttle immediately + addtimer(SSshuttle.emergency, "request", 0, TIMER_NORMAL, null, 0) //call the shuttle immediately sleep(3) send_to_playing_players("\"[text2ratvar("Behold")]!\"\n\"[text2ratvar("See Engine's mercy")]!\"\n\ \"[text2ratvar("Observe Engine's design skills")]!\"\n\"[text2ratvar("Behold Engine's light")]!!\"\n\ diff --git a/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm b/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm index 6f0ec64bac3..fe32214cda1 100644 --- a/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm +++ b/code/game/gamemodes/clock_cult/clock_structures/ratvar_the_clockwork_justicar.dm @@ -24,7 +24,7 @@ var/image/alert_overlay = image('icons/effects/clockwork_effects.dmi', "ratvar_alert") var/area/A = get_area(src) notify_ghosts("The Justiciar's light calls to you! Reach out to Ratvar in [A.name] to be granted a shell to spread his glory!", null, source = src, alert_overlay = alert_overlay) - addtimer(SSshuttle.emergency, "request", 50, FALSE, null, 0.1) + addtimer(SSshuttle.emergency, "request", 50, TIMER_NORMAL, null, 0.1) /obj/structure/destructible/clockwork/massive/ratvar/Destroy() ratvar_awakens-- diff --git a/code/game/gamemodes/gang/gang.dm b/code/game/gamemodes/gang/gang.dm index 32693863017..53e6c69768d 100644 --- a/code/game/gamemodes/gang/gang.dm +++ b/code/game/gamemodes/gang/gang.dm @@ -179,7 +179,7 @@ var/list/gang_colors_pool = list("red","orange","yellow","green","blue","purple" G.add_gang_hud(gangster_mind) if(jobban_isbanned(gangster_mind.current, ROLE_GANG)) - addtimer(src, "replace_jobbaned_player", 0, FALSE, gangster_mind.current, ROLE_GANG, ROLE_GANG) + addtimer(src, "replace_jobbaned_player", 0, TIMER_NORMAL, gangster_mind.current, ROLE_GANG, ROLE_GANG) return 2 //////////////////////////////////////////////////////////////////// //Deals with players reverting to neutral (Not a gangster anymore)// diff --git a/code/game/gamemodes/malfunction/Malf_Modules.dm b/code/game/gamemodes/malfunction/Malf_Modules.dm index 534c12c23cc..cdb45b7f346 100644 --- a/code/game/gamemodes/malfunction/Malf_Modules.dm +++ b/code/game/gamemodes/malfunction/Malf_Modules.dm @@ -162,7 +162,7 @@ for(var/obj/machinery/door/D in airlocks) if(D.z != ZLEVEL_STATION) continue - addtimer(D, "hostile_lockdown", 0, FALSE, src) + addtimer(D, "hostile_lockdown", 0, TIMER_NORMAL, src) addtimer(D, "disable_lockdown", 900) var/obj/machinery/computer/communications/C = locate() in machines @@ -172,7 +172,7 @@ verbs -= /mob/living/silicon/ai/proc/lockdown minor_announce("Hostile runtime detected in door controllers. Isolation Lockdown protocols are now in effect. Please remain calm.","Network Alert:", 1) src << "Lockdown Initiated. Network reset in 90 seconds." - addtimer(GLOBAL_PROC, "minor_announce", 900, FALSE, + addtimer(GLOBAL_PROC, "minor_announce", 900, TIMER_NORMAL, "Automatic system reboot complete. Have a secure day.", "Network reset:") diff --git a/code/game/gamemodes/miniantags/borer/borer.dm b/code/game/gamemodes/miniantags/borer/borer.dm index 4922074064d..049a43240a6 100644 --- a/code/game/gamemodes/miniantags/borer/borer.dm +++ b/code/game/gamemodes/miniantags/borer/borer.dm @@ -41,7 +41,7 @@ B.victim << "You feel the captive mind of [src] begin to resist your control." var/delay = rand(150,250) + B.victim.brainloss - addtimer(src, "return_control", delay, FALSE, src.loc) + addtimer(src, "return_control", delay, TIMER_NORMAL, src.loc) /mob/living/captive_brain/proc/return_control(mob/living/simple_animal/borer/B) if(!B || !B.controlling) @@ -272,7 +272,7 @@ var/total_borer_hosts_needed = 10 else src << "You start shaking off your lethargy as the sugar leaves your host's blood. This will take about 10 seconds..." - waketimerid = addtimer(src,"wakeup",10,FALSE) + waketimerid = addtimer(src,"wakeup",10,TIMER_NORMAL) if(controlling) if(docile) @@ -514,7 +514,7 @@ var/total_borer_hosts_needed = 10 leaving = TRUE - addtimer(src, "release_host", 100, FALSE) + addtimer(src, "release_host", 100, TIMER_NORMAL) /mob/living/simple_animal/borer/proc/release_host() if(!victim || !src || qdeleted(victim) || qdeleted(src)) @@ -638,7 +638,7 @@ var/total_borer_hosts_needed = 10 bonding = TRUE var/delay = 200+(victim.brainloss*5) - addtimer(src, "assume_control", delay, FALSE) + addtimer(src, "assume_control", delay, TIMER_NORMAL) /mob/living/simple_animal/borer/proc/assume_control() if(!victim || !src || controlling || victim.stat == DEAD) diff --git a/code/game/gamemodes/miniantags/revenant/revenant.dm b/code/game/gamemodes/miniantags/revenant/revenant.dm index 831a1ee14ad..725f4823662 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant.dm @@ -186,7 +186,7 @@ adjustBruteLoss(25) //hella effective inhibited = 1 update_action_buttons_icon() - addtimer(src, "reset_inhibit", 30, FALSE) + addtimer(src, "reset_inhibit", 30, TIMER_NORMAL) /mob/living/simple_animal/revenant/proc/reset_inhibit() if(src) @@ -331,7 +331,7 @@ /obj/item/weapon/ectoplasm/revenant/New() ..() - addtimer(src, "try_reform", 600, FALSE) + addtimer(src, "try_reform", 600, TIMER_NORMAL) /obj/item/weapon/ectoplasm/revenant/proc/try_reform() if(src) diff --git a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm index 61a4ef94011..ef726faa6c6 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_abilities.dm @@ -202,7 +202,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) - addtimer(src, "overload", 0, FALSE, T, user) + addtimer(src, "overload", 0, TIMER_NORMAL, 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) @@ -242,7 +242,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) - addtimer(src, "defile", 0, FALSE, T) + addtimer(src, "defile", 0, TIMER_NORMAL, T) /obj/effect/proc_holder/spell/aoe_turf/revenant/defile/proc/defile(turf/T) if(T.flags & NOJAUNT) @@ -289,7 +289,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) - addtimer(src, "malfunction", 0, FALSE, T, user) + addtimer(src, "malfunction", 0, TIMER_NORMAL, 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) @@ -333,7 +333,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) - addtimer(src, "blight", 0, FALSE, T, user) + addtimer(src, "blight", 0, TIMER_NORMAL, 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/game/gamemodes/miniantags/revenant/revenant_blight.dm b/code/game/gamemodes/miniantags/revenant/revenant_blight.dm index 7940bbfeae7..83d256f7fc5 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant_blight.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant_blight.dm @@ -62,6 +62,6 @@ affected_mob.dna.species.handle_hair(affected_mob,"#1d2953") affected_mob.visible_message("[affected_mob] looks terrifyingly gaunt...", "You suddenly feel like your skin is wrong...") affected_mob.add_atom_colour("#1d2953", TEMPORARY_COLOUR_PRIORITY) - addtimer(src, "cure", 100, FALSE) + addtimer(src, "cure", 100, TIMER_NORMAL) else return diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm index d865627bf3e..ae9885c2424 100644 --- a/code/game/gamemodes/nuclear/pinpointer.dm +++ b/code/game/gamemodes/nuclear/pinpointer.dm @@ -76,7 +76,7 @@ scan_for_target() point_to_target() my_god_jc_a_bomb() - addtimer(src, "refresh_target", 50, TRUE) + addtimer(src, "refresh_target", 50, TIMER_UNIQUE) /obj/item/weapon/pinpointer/proc/scan_for_target() //Looks for whatever it's tracking if(target) diff --git a/code/game/gamemodes/revolution/revolution.dm b/code/game/gamemodes/revolution/revolution.dm index d8f2eedf8a2..b6ba41f1b2e 100644 --- a/code/game/gamemodes/revolution/revolution.dm +++ b/code/game/gamemodes/revolution/revolution.dm @@ -275,7 +275,7 @@ rev_mind.special_role = "Revolutionary" update_rev_icons_added(rev_mind) if(jobban_isbanned(rev_mind.current, ROLE_REV)) - addtimer(src, "replace_jobbaned_player", 0, FALSE, rev_mind.current, ROLE_REV, ROLE_REV) + addtimer(src, "replace_jobbaned_player", 0, TIMER_NORMAL, rev_mind.current, ROLE_REV, ROLE_REV) return 1 ////////////////////////////////////////////////////////////////////////////// //Deals with players being converted from the revolution (Not a rev anymore)// // Modified to handle borged MMIs. Accepts another var if the target is being borged at the time -- Polymorph. diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 31cc15284b6..0442fc28b76 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -134,7 +134,7 @@ if(!G) return FALSE if(clonemind.damnation_type) //Can't clone the damned. - addtimer(0, "horrifyingsound", src) + addtimer(src, "horrifyingsound", 0) mess = 1 icon_state = "pod_g" update_icon() diff --git a/code/game/machinery/computer/camera.dm b/code/game/machinery/computer/camera.dm index 0b2c22320eb..4819fcfc390 100644 --- a/code/game/machinery/computer/camera.dm +++ b/code/game/machinery/computer/camera.dm @@ -114,7 +114,7 @@ user.clear_fullscreen("flash", 5) watchers[user] = C use_power(50) - addtimer(src, "use_camera_console", 5, FALSE, user) + addtimer(src, "use_camera_console", 5, TIMER_NORMAL, user) else user.unset_machine() diff --git a/code/game/machinery/computer/crew.dm b/code/game/machinery/computer/crew.dm index 0ade3fe48b5..18203ed27cb 100644 --- a/code/game/machinery/computer/crew.dm +++ b/code/game/machinery/computer/crew.dm @@ -260,7 +260,7 @@ var/global/datum/crewmonitor/crewmonitor = new return ..() /datum/crewmonitor/proc/queueUpdate(z) - addtimer(crewmonitor, "update", 5, TRUE, z) + addtimer(crewmonitor, "update", 5, TIMER_UNIQUE, z) /datum/crewmonitor/proc/sendResources(var/client/client) send_asset(client, "crewmonitor.js") diff --git a/code/game/machinery/computer/gulag_teleporter.dm b/code/game/machinery/computer/gulag_teleporter.dm index 6f2e6b0d56b..0735ad0b8e1 100644 --- a/code/game/machinery/computer/gulag_teleporter.dm +++ b/code/game/machinery/computer/gulag_teleporter.dm @@ -124,7 +124,7 @@ if("teleport") if(!teleporter || !beacon) return - addtimer(src, "teleport", 5, FALSE, usr) + addtimer(src, "teleport", 5, TIMER_NORMAL, usr) /obj/machinery/computer/gulag_teleporter_computer/proc/scan_machinery() teleporter = findteleporter() diff --git a/code/game/machinery/doors/poddoor.dm b/code/game/machinery/doors/poddoor.dm index feafda2abfe..a6c655d4535 100644 --- a/code/game/machinery/doors/poddoor.dm +++ b/code/game/machinery/doors/poddoor.dm @@ -29,9 +29,9 @@ /obj/machinery/door/poddoor/shuttledock/proc/check() var/turf/T = get_step(src, checkdir) if(!isspaceturf(T)) - addtimer(src, "open", 0, TRUE) + addtimer(src, "open", 0, TIMER_UNIQUE) else - addtimer(src, "close", 0, TRUE) + addtimer(src, "close", 0, TIMER_UNIQUE) /obj/machinery/door/poddoor/Bumped(atom/AM) if(density) diff --git a/code/game/machinery/firealarm.dm b/code/game/machinery/firealarm.dm index 6384a693eb3..2cbef557f58 100644 --- a/code/game/machinery/firealarm.dm +++ b/code/game/machinery/firealarm.dm @@ -93,7 +93,7 @@ playsound(src.loc, 'sound/ambience/signal.ogg', 75, 0) /obj/machinery/firealarm/proc/alarm_in(time) - addtimer(src, "alarm", time, FALSE) + addtimer(src, "alarm", time, TIMER_NORMAL) /obj/machinery/firealarm/proc/reset() if(!is_operational()) @@ -102,7 +102,7 @@ A.firereset(src) /obj/machinery/firealarm/proc/reset_in(time) - addtimer(src, "reset", time, FALSE) + addtimer(src, "reset", time, TIMER_NORMAL) /obj/machinery/firealarm/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, \ datum/tgui/master_ui = null, datum/ui_state/state = default_state) diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index f489ba77993..ad4fc4a59c5 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -217,7 +217,7 @@ occupant.adjustFireLoss(rand(10, 16)) if(iscarbon(occupant)) occupant.emote("scream") - addtimer(src, "cook", 50, FALSE) + addtimer(src, "cook", 50, TIMER_NORMAL) else uv_cycles = initial(uv_cycles) uv = FALSE @@ -263,7 +263,7 @@ add_fingerprint(user) if(locked) visible_message("You see [user] kicking against the doors of [src]!", "You start kicking against the doors...") - addtimer(src, "resist_open", 300, FALSE, user) + addtimer(src, "resist_open", 300, TIMER_NORMAL, user) else open_machine() dump_contents() diff --git a/code/game/machinery/transformer.dm b/code/game/machinery/transformer.dm index 74c8430c810..b5365aebe14 100644 --- a/code/game/machinery/transformer.dm +++ b/code/game/machinery/transformer.dm @@ -103,7 +103,7 @@ // So he can't jump out the gate right away. R.SetLockdown() - addtimer(src, "unlock_new_robot", 50, FALSE, R) + addtimer(src, "unlock_new_robot", 50, TIMER_NORMAL, R) /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/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm index fd138afa2f2..41271bdf4a6 100644 --- a/code/game/mecha/equipment/mecha_equipment.dm +++ b/code/game/mecha/equipment/mecha_equipment.dm @@ -87,7 +87,7 @@ /obj/item/mecha_parts/mecha_equipment/proc/start_cooldown() set_ready_state(0) chassis.use_power(energy_drain) - addtimer(src, "set_ready_state", equip_cooldown, FALSE, 1) + addtimer(src, "set_ready_state", equip_cooldown, TIMER_NORMAL, 1) /obj/item/mecha_parts/mecha_equipment/proc/do_after_cooldown(atom/target) if(!chassis) diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index 760329a67a9..4a3e14cd5d6 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -68,7 +68,7 @@ /obj/item/mecha_parts/mecha_equipment/weapon/energy/start_cooldown() set_ready_state(0) chassis.use_power(energy_drain*get_shot_amount()) - addtimer(src, "set_ready_state", equip_cooldown, FALSE, 1) + addtimer(src, "set_ready_state", equip_cooldown, TIMER_NORMAL, 1) /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser equip_cooldown = 8