mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2025-12-09 16:05:07 +00:00
[MIRROR] Fixes some alien actions not working. [MDB IGNORE] (#15223)
Fixes some alien actions not working. Co-authored-by: MrMelbert <51863163+MrMelbert@users.noreply.github.com> Co-authored-by: GoldenAlpharex <jerego1234@hotmail.com>
This commit is contained in:
@@ -174,7 +174,8 @@
|
||||
/datum/action/cooldown/proc/PreActivate(atom/target)
|
||||
if(SEND_SIGNAL(owner, COMSIG_MOB_ABILITY_STARTED, src) & COMPONENT_BLOCK_ABILITY_START)
|
||||
return
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
// Note, that PreActivate handles no cooldowns at all by default.
|
||||
// Be sure to call StartCooldown() in Activate() where necessary.
|
||||
. = Activate(target)
|
||||
// There is a possibility our action (or owner) is qdeleted in Activate().
|
||||
if(!QDELETED(src) && !QDELETED(owner))
|
||||
|
||||
@@ -22,6 +22,7 @@
|
||||
var/list/charging = list()
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/charge/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
charge_sequence(owner, target_atom, charge_delay, charge_past)
|
||||
StartCooldown()
|
||||
|
||||
|
||||
@@ -10,6 +10,7 @@
|
||||
var/pick_range = 5
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/dash/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
dash_to(target_atom)
|
||||
StartCooldown()
|
||||
|
||||
|
||||
@@ -12,6 +12,7 @@
|
||||
var/ice_breath = FALSE
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/fire_breath/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
attack_sequence(target_atom)
|
||||
StartCooldown()
|
||||
|
||||
@@ -59,4 +60,3 @@
|
||||
for(var/j = 1 to spiral_count)
|
||||
INVOKE_ASYNC(src, .proc/fire_line, target, j * increment + i * increment / 2)
|
||||
SLEEP_CHECK_DEATH(delay_time, owner)
|
||||
|
||||
|
||||
@@ -23,6 +23,7 @@
|
||||
REMOVE_TRAIT(M, TRAIT_NOFIRE, REF(src))
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/lava_swoop/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
attack_sequence(target_atom)
|
||||
StartCooldown()
|
||||
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
cooldown_time = 3 SECONDS
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/meteors/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
create_meteors(target_atom)
|
||||
StartCooldown()
|
||||
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
var/projectile_speed_multiplier = 1
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/projectile_attack/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
attack_sequence(owner, target_atom)
|
||||
StartCooldown()
|
||||
|
||||
@@ -285,6 +286,7 @@
|
||||
cooldown_time = 2.5 SECONDS
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/projectile_attack/colossus_final/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
attack_sequence(owner, target_atom)
|
||||
StartCooldown()
|
||||
Remove(owner)
|
||||
|
||||
@@ -9,6 +9,7 @@
|
||||
var/max_cooldown_time = 10 SECONDS
|
||||
|
||||
/datum/action/cooldown/mob_cooldown/transform_weapon/Activate(atom/target_atom)
|
||||
StartCooldown(360 SECONDS, 360 SECONDS)
|
||||
do_transform(target_atom)
|
||||
StartCooldown(rand(cooldown_time, max_cooldown_time), 0)
|
||||
|
||||
|
||||
@@ -83,10 +83,7 @@
|
||||
caste_options["Drone"] = drone
|
||||
|
||||
var/alien_caste = show_radial_menu(owner, owner, caste_options, radius = 38, require_near = TRUE, tooltips = TRUE)
|
||||
if(QDELETED(src) || QDELETED(owner) || !IsAvailable() || !alien_caste)
|
||||
return
|
||||
|
||||
if(alien_caste == null)
|
||||
if(QDELETED(src) || QDELETED(owner) || !IsAvailable() || isnull(alien_caste))
|
||||
return
|
||||
|
||||
var/mob/living/carbon/alien/humanoid/new_xeno
|
||||
|
||||
Reference in New Issue
Block a user