mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-25 04:57:12 +01:00
Cooldowns fix (#29280)
Co-authored-by: warriorstar-orion <orion@snowfrost.garden>
This commit is contained in:
co-authored by
warriorstar-orion
parent
d1fb42adb4
commit
1a2461b2b1
@@ -318,7 +318,9 @@
|
||||
camera_beam(target, "rped_upgrade", 'icons/effects/effects.dmi', 5)
|
||||
|
||||
/datum/spell/ai_spell/ranged/rgb_lighting/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = base_cooldown - (spell_level * 5)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (spell_level * 5 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
/// Power Shunt - Recharges things from your SMES
|
||||
/datum/ai_program/power_shunt
|
||||
@@ -391,7 +393,9 @@
|
||||
|
||||
/datum/spell/ai_spell/ranged/power_shunt/on_purchase_upgrade()
|
||||
power_sent = min(10000, 2500 + (spell_level * 2500))
|
||||
cooldown_handler.recharge_duration = max(min(base_cooldown, base_cooldown - (max(spell_level - 3, 0) * 30)), cooldown_min)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (max(spell_level - 3, 0) * 30 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
/// Repair Nanites - Uses large numbers of nanites to repair things
|
||||
/datum/ai_program/repair_nanites
|
||||
@@ -450,7 +454,9 @@
|
||||
camera_beam(target, "medbeam", 'icons/effects/beam.dmi', 10)
|
||||
|
||||
/datum/spell/ai_spell/ranged/repair_nanites/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = max(min(base_cooldown, base_cooldown - (max(spell_level - 3, 0) * 30)), cooldown_min)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (max(spell_level - 3, 0) * 30 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
/// Universal Adapter - Unlocks usage of repair nanites and power shunt for IPCs
|
||||
/datum/ai_program/universal_adapter
|
||||
@@ -590,7 +596,9 @@
|
||||
addtimer(CALLBACK(nanofrost, TYPE_PROC_REF(/obj/effect/nanofrost_container, Smoke)), 5 SECONDS)
|
||||
|
||||
/datum/spell/ai_spell/ranged/extinguishing_system/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = max(min(base_cooldown, base_cooldown - (spell_level * 15)), 30 SECONDS)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (spell_level * 15 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
/// Bluespace Miner Subsystem - Makes money for science, at the cost of extra power drain
|
||||
/datum/ai_program/bluespace_miner
|
||||
@@ -699,7 +707,9 @@
|
||||
camera_beam(target, "rped_upgrade", 'icons/effects/effects.dmi', 5)
|
||||
|
||||
/datum/spell/ai_spell/ranged/light_repair/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = base_cooldown - (spell_level * 5)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (spell_level * 5 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
/// Nanosurgeon Deployment - Uses large numbers of nanites to heal things
|
||||
/datum/ai_program/nanosurgeon_deployment
|
||||
@@ -754,7 +764,9 @@
|
||||
revert_cast()
|
||||
|
||||
/datum/spell/ai_spell/ranged/nanosurgeon_deployment/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = max(min(base_cooldown, base_cooldown - (max(spell_level - 3, 0) * 30)), cooldown_min)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (max(spell_level - 3, 0) * 30 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
/// Enhanced Door Controls - Reduces delay in bolting and shocking doors
|
||||
/datum/ai_program/enhanced_doors
|
||||
@@ -854,7 +866,9 @@
|
||||
upgraded = TRUE
|
||||
|
||||
/datum/spell/ai_spell/research_subsystem/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = max(min(base_cooldown, base_cooldown - (spell_level * 30)), cooldown_min)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (max(spell_level - 3, 0) * 30 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
// Emergency Sealant - Patches holes with metal foam
|
||||
/datum/ai_program/emergency_sealant
|
||||
@@ -901,6 +915,9 @@
|
||||
|
||||
/datum/spell/ai_spell/ranged/emergency_sealant/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = max(min(base_cooldown, base_cooldown - (spell_level * 30)), 30 SECONDS)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (spell_level * 30 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
// Holosign Deployment - Deploys a holosign on the selected turf
|
||||
/datum/ai_program/holosign_displayer
|
||||
@@ -984,7 +1001,7 @@
|
||||
ranged_mousepointer = 'icons/mecha/mecha_mouse.dmi'
|
||||
auto_use_uses = FALSE
|
||||
base_cooldown = 30 SECONDS
|
||||
cooldown_min = 5 SECONDS
|
||||
cooldown_min = 15 SECONDS
|
||||
level_max = 10
|
||||
selection_activated_message = "<span class='notice'>You prepare to honk...</span>"
|
||||
selection_deactivated_message = "<span class='notice'>You reduce the amount of humor in your subsystems.</span>"
|
||||
@@ -1008,7 +1025,9 @@
|
||||
AI.play_sound_remote(target, 'sound/items/bikehorn.ogg', 50)
|
||||
|
||||
/datum/spell/ai_spell/ranged/honk_subsystem/on_purchase_upgrade()
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (spell_level * 15) SECONDS, 15 SECONDS)
|
||||
cooldown_handler.recharge_duration = max(base_cooldown - (spell_level * 15 SECONDS), cooldown_min)
|
||||
if(cooldown_handler.is_on_cooldown())
|
||||
cooldown_handler.start_recharge()
|
||||
|
||||
// Enhanced Tracking System - Select a target. Get alerted after a delay whenever that target enters camera sight
|
||||
/datum/ai_program/enhanced_tracker
|
||||
|
||||
Reference in New Issue
Block a user