Moves fauna made armor into the same file as the basic explorer armor. (#66638)

This commit is contained in:
GuillaumePrata
2022-05-02 20:35:00 -07:00
committed by GitHub
parent 1395e53bec
commit f80e7ba62d
2 changed files with 142 additions and 107 deletions
+142 -1
View File
@@ -11,7 +11,16 @@
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
hoodtype = /obj/item/clothing/head/hooded/explorer
armor = list(MELEE = 30, BULLET = 10, LASER = 10, ENERGY = 20, BOMB = 50, BIO = 100, FIRE = 50, ACID = 50)
allowed = list(/obj/item/flashlight, /obj/item/tank/internals, /obj/item/resonator, /obj/item/mining_scanner, /obj/item/t_scanner/adv_mining_scanner, /obj/item/gun/energy/recharge/kinetic_accelerator, /obj/item/pickaxe, /obj/item/storage/bag/ore)
allowed = list(
/obj/item/flashlight,
/obj/item/gun/energy/recharge/kinetic_accelerator,
/obj/item/mining_scanner,
/obj/item/pickaxe,
/obj/item/resonator,
/obj/item/storage/bag/ore,
/obj/item/t_scanner/adv_mining_scanner,
/obj/item/tank/internals,
)
resistance_flags = FIRE_PROOF
/obj/item/clothing/head/hooded/explorer
@@ -58,3 +67,135 @@
/obj/item/clothing/mask/gas/explorer/folded/Initialize(mapload)
. = ..()
adjustmask()
/obj/item/clothing/suit/hooded/cloak/goliath
name = "goliath cloak"
icon_state = "goliath_cloak"
desc = "A staunch, practical cape made out of numerous monster materials, it is coveted amongst exiles & hermits."
allowed = list(
/obj/item/flashlight,
/obj/item/knife/combat/bone,
/obj/item/knife/combat/survival,
/obj/item/organ/regenerative_core/legion,
/obj/item/pickaxe,
/obj/item/spear,
/obj/item/tank/internals,
)
armor = list(MELEE = 35, BULLET = 10, LASER = 25, ENERGY = 35, BOMB = 25, BIO = 0, FIRE = 60, ACID = 60) //a fair alternative to bone armor, requiring alternative materials and gaining a suit slot
hoodtype = /obj/item/clothing/head/hooded/cloakhood/goliath
body_parts_covered = CHEST|GROIN|ARMS
/obj/item/clothing/head/hooded/cloakhood/goliath
name = "goliath cloak hood"
icon_state = "golhood"
desc = "A protective & concealing hood."
armor = list(MELEE = 35, BULLET = 10, LASER = 25, ENERGY = 35, BOMB = 25, BIO = 0, FIRE = 60, ACID = 60)
clothing_flags = SNUG_FIT
flags_inv = HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR
transparent_protection = HIDEMASK
/obj/item/clothing/suit/hooded/cloak/drake
name = "drake armour"
icon_state = "dragon"
desc = "A suit of armour fashioned from the remains of an ash drake."
allowed = list(
/obj/item/flashlight,
/obj/item/gun/energy/recharge/kinetic_accelerator,
/obj/item/mining_scanner,
/obj/item/pickaxe,
/obj/item/resonator,
/obj/item/spear,
/obj/item/t_scanner/adv_mining_scanner,
/obj/item/tank/internals,
)
armor = list(MELEE = 65, BULLET = 15, LASER = 40, ENERGY = 40, BOMB = 70, BIO = 60, FIRE = 100, ACID = 100)
hoodtype = /obj/item/clothing/head/hooded/cloakhood/drake
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
resistance_flags = FIRE_PROOF | ACID_PROOF
transparent_protection = HIDEGLOVES|HIDESUITSTORAGE|HIDEJUMPSUIT|HIDESHOES
/obj/item/clothing/head/hooded/cloakhood/drake
name = "drake helm"
icon_state = "dragon"
desc = "The skull of a dragon."
armor = list(MELEE = 65, BULLET = 15, LASER = 40, ENERGY = 40, BOMB = 70, BIO = 60, FIRE = 100, ACID = 100)
clothing_flags = SNUG_FIT
cold_protection = HEAD
min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT
heat_protection = HEAD
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
resistance_flags = FIRE_PROOF | ACID_PROOF
/obj/item/clothing/suit/hooded/cloak/godslayer
name = "godslayer armour"
icon_state = "godslayer"
desc = "A suit of armour fashioned from the remnants of a knight's armor, and parts of a wendigo."
allowed = list(
/obj/item/flashlight,
/obj/item/gun/energy/recharge/kinetic_accelerator,
/obj/item/mining_scanner,
/obj/item/pickaxe,
/obj/item/resonator,
/obj/item/spear,
/obj/item/t_scanner/adv_mining_scanner,
/obj/item/tank/internals,
)
armor = list(MELEE = 50, BULLET = 25, LASER = 25, ENERGY = 25, BOMB = 50, BIO = 50, FIRE = 100, ACID = 100)
clothing_flags = STOPSPRESSUREDAMAGE | THICKMATERIAL
hoodtype = /obj/item/clothing/head/hooded/cloakhood/godslayer
cold_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
heat_protection = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
body_parts_covered = CHEST|GROIN|LEGS|FEET|ARMS|HANDS
resistance_flags = FIRE_PROOF | ACID_PROOF | FREEZE_PROOF
transparent_protection = HIDEGLOVES|HIDESUITSTORAGE|HIDEJUMPSUIT|HIDESHOES
/// Amount to heal when the effect is triggered
var/heal_amount = 500
/// Time until the effect can take place again
var/effect_cooldown_time = 10 MINUTES
/// Current cooldown for the effect
COOLDOWN_DECLARE(effect_cooldown)
var/static/list/damage_heal_order = list(BRUTE, BURN, OXY)
/obj/item/clothing/head/hooded/cloakhood/godslayer
name = "godslayer helm"
icon_state = "godslayer"
desc = "The horns and skull of a wendigo, held together by the remaining icey energy of a demonic miner."
armor = list(MELEE = 50, BULLET = 25, LASER = 25, ENERGY = 25, BOMB = 50, BIO = 50, FIRE = 100, ACID = 100)
clothing_flags = STOPSPRESSUREDAMAGE | THICKMATERIAL | SNUG_FIT
cold_protection = HEAD
min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT
heat_protection = HEAD
max_heat_protection_temperature = FIRE_IMMUNITY_MAX_TEMP_PROTECT
flash_protect = FLASH_PROTECTION_WELDER
flags_cover = HEADCOVERSEYES | HEADCOVERSMOUTH | PEPPERPROOF
resistance_flags = FIRE_PROOF | ACID_PROOF | FREEZE_PROOF
/obj/item/clothing/suit/hooded/cloak/godslayer/examine(mob/user)
. = ..()
if(loc == user && !COOLDOWN_FINISHED(src, effect_cooldown))
. += "You feel like the revival effect will be able to occur again in [COOLDOWN_TIMELEFT(src, effect_cooldown) / 10] seconds."
/obj/item/clothing/suit/hooded/cloak/godslayer/equipped(mob/user, slot)
. = ..()
if(slot & ITEM_SLOT_OCLOTHING)
RegisterSignal(user, COMSIG_MOB_STATCHANGE, .proc/resurrect)
return
UnregisterSignal(user, COMSIG_MOB_STATCHANGE)
/obj/item/clothing/suit/hooded/cloak/godslayer/dropped(mob/user)
..()
UnregisterSignal(user, COMSIG_MOB_STATCHANGE)
/obj/item/clothing/suit/hooded/cloak/godslayer/proc/resurrect(mob/living/carbon/user, new_stat)
SIGNAL_HANDLER
if(new_stat > CONSCIOUS && new_stat < DEAD && COOLDOWN_FINISHED(src, effect_cooldown))
COOLDOWN_START(src, effect_cooldown, effect_cooldown_time) //This needs to happen first, otherwise there's an infinite loop
user.heal_ordered_damage(heal_amount, damage_heal_order)
user.visible_message(span_notice("[user] suddenly revives, as their armor swirls with demonic energy!"), span_notice("You suddenly feel invigorated!"))
playsound(user.loc, 'sound/magic/clockwork/ratvar_attack.ogg', 50)