This commit is contained in:
kyunkyunkyun
2024-12-17 21:17:37 +05:00
committed by GitHub
parent 8ff638b519
commit f7199ccf80
4 changed files with 24 additions and 18 deletions
+4 -2
View File
@@ -374,12 +374,14 @@
if(S)
qdel(S)
shield_list = list()
for(var/obj/machinery/door/airlock/hatch/syndicate/vault/A in src)
A.unlock()
/area/syndicate_depot/core/proc/unlock_lockers() // used on QM's death
for(var/obj/structure/closet/secure_closet/depot/armory/L in src)
if(L.locked)
L.locked = !L.locked
L.update_icon()
for(var/obj/machinery/door/airlock/hatch/syndicate/vault/A in src)
A.unlock()
/area/syndicate_depot/core/proc/despawn_guards()
for(var/mob/thismob in list_getmobs(guard_list))
@@ -3,7 +3,7 @@
desc = "A red and black lootbox full of things the Head of Security is going to flip their shit over."
locked = FALSE
anchored = TRUE
req_access = list()
req_access = list(ACCESS_SYNDICATE)
icon_state = "tac"
layer = 2.9 // ensures the loot they drop always appears on top of them.
var/is_armory = FALSE
@@ -57,6 +57,6 @@
ignore_use = FALSE
/obj/structure/closet/secure_closet/depot/armory
req_access = list(ACCESS_SYNDICATE)
req_access = list(ACCESS_SYNDICATE_COMMAND) // can't open without killing QM/breaking a closet
is_armory = TRUE
icon_state = "armory"
@@ -87,7 +87,6 @@
if(!depotarea.used_self_destruct)
depotarea.used_self_destruct = TRUE // Silences all further alerts from this point onwards.
depotarea.update_state()
depotarea.shields_down()
else
log_debug("[src] at [x],[y],[z] failed depotarea istype check during Initialize()! Either it was spawned outside the depot area (bad idea), or a bug is happening.")
@@ -109,6 +108,7 @@
for(var/obj/O in L)
qdel(O)
L.open()
depotarea.shields_down()
for(var/mob/living/M in range(30, T))
M.gib()
for(var/obj/mecha/E in range(30, T))
@@ -48,8 +48,8 @@
///////////////Sword and shield////////////
/mob/living/simple_animal/hostile/syndicate/melee
melee_damage_lower = 30
melee_damage_upper = 25
melee_damage_lower = 25
melee_damage_upper = 30
icon_state = "syndicate_sword"
icon_living = "syndicate_sword"
attacktext = "slashes"
@@ -257,15 +257,12 @@
. = ..()
if(prob(50))
// 50% chance of switching to ranged variant.
melee_damage_lower = 30
melee_damage_upper = 25
attacktext = "punches"
attack_sound = 'sound/weapons/cqchit1.ogg'
ranged = TRUE
rapid = 3
retreat_distance = 5
minimum_distance = 3
melee_block_chance = 0
ranged_block_chance = 0
icon_state = "syndicate_pistol"
icon_living = "syndicate_pistol"
@@ -277,26 +274,27 @@
icon_state = "syndicate_stormtrooper_sword"
icon_living = "syndicate_stormtrooper_sword"
atmos_requirements = list("min_oxy" = 0, "max_oxy" = 0, "min_tox" = 0, "max_tox" = 0, "min_co2" = 0, "max_co2" = 0, "min_n2" = 0, "max_n2" = 0)
armour_penetration_percentage = 50 // same as e-sword
minbodytemp = 0
maxHealth = 200
health = 200
maxHealth = 250
health = 250
melee_block_chance = 40
ranged_block_chance = 35 // same as officer's
alert_on_shield_breach = TRUE
death_sound = 'sound/mecha/mechmove03.ogg'
loot = list(/obj/effect/mob_spawn/human/corpse/syndicatequartermaster, /obj/effect/decal/cleanable/blood/innards, /obj/effect/decal/cleanable/blood, /obj/effect/gibspawner/generic, /obj/effect/gibspawner/generic)
/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/armory/Process_Spacemove(movement_dir = 0)
return TRUE // he should be able to chase us in space
/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/armory/Initialize(mapload)
. = ..()
if(prob(50))
// 50% chance of switching to extremely dangerous ranged variant
melee_damage_lower = 10
melee_damage_upper = 10
attacktext = "punches"
attack_sound = 'sound/weapons/punch1.ogg'
attack_sound = 'sound/weapons/cqchit1.ogg'
ranged = TRUE
retreat_distance = 2
minimum_distance = 2
melee_block_chance = 0
ranged_block_chance = 0
icon_state = "syndicate_stormtrooper_shotgun"
icon_living = "syndicate_stormtrooper_shotgun"
@@ -316,6 +314,13 @@
O.shield_key = TRUE
depotarea.shields_up()
/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/armory/death() // i hope it's all right
if(!istype(depotarea))
return ..()
if(!length(depotarea.shield_list)) // not opening lockers without getting shields down
depotarea.unlock_lockers()
return ..()
/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/space
name = "Syndicate Backup"
@@ -327,7 +332,6 @@
wander = FALSE
alert_on_spacing = FALSE // So it chasing players in space doesn't make depot explode.
alert_on_timeout = FALSE // So random fauna doesn't make depot explode.
death_sound = 'sound/mecha/mechmove03.ogg'
loot = list() // Explodes, doesn't drop loot.
/mob/living/simple_animal/hostile/syndicate/melee/autogib/depot/space/Process_Spacemove(movement_dir = 0)