mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-06-07 23:31:38 +01:00
c88d6b2666
Next part of my pass on space loot. This touches a few of the higher powered ones I found with the help of Donglesplonge. The main goal here was to replace a few significantly powerful items with less powerful or harder to carry variants while retaining most of their value as well as removing a few blatant antag-only items. The affected ruins and what was changed: Caravan Ambush - Replaced a mini energy gun with a survival knife. There's apparently a chameleon kit here but I'm actually okay with these staying - their relative impact on the round is low and they can be used for creative drip reasons by crewmembers. Old Infiltrator - Replaced the black-and-red softsuit with the Contractor suit. It's in one of the suit storage units, which you'll need a crowbar to open up. Waystation - Removed a magazine from the WT-550 Autorifle crate. There's still a Syndicate combat medkit and a set of night-vision goggles here but they're behind multiple pod turrets. I want to get input on how hard these are to get, but it seems relatively difficult, and I'm okay with "a better medkit and night visions" as space loot. You outright can't get the M1911 in antag stuff (as far as I can tell) so it stays. The Faceoff - Replacing the syndie spacesuit/gear in the mining lockers up north with unique Syndicate variants of the mining gear. Thanks to necromanceranne for the sprites.
357 lines
12 KiB
Plaintext
357 lines
12 KiB
Plaintext
/****************Explorer's Suit and Mask****************/
|
|
/obj/item/clothing/suit/hooded/explorer
|
|
name = "explorer suit"
|
|
desc = "An armoured suit for exploring harsh environments."
|
|
icon_state = "explorer"
|
|
icon = 'icons/obj/clothing/suits/utility.dmi'
|
|
worn_icon = 'icons/mob/clothing/suits/utility.dmi'
|
|
inhand_icon_state = null
|
|
body_parts_covered = CHEST|GROIN|LEGS|ARMS
|
|
cold_protection = CHEST|GROIN|LEGS|ARMS
|
|
min_cold_protection_temperature = FIRE_SUIT_MIN_TEMP_PROTECT
|
|
heat_protection = CHEST|GROIN|LEGS|ARMS
|
|
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
|
|
hoodtype = /obj/item/clothing/head/hooded/explorer
|
|
armor_type = /datum/armor/hooded_explorer
|
|
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
|
|
|
|
/datum/armor/hooded_explorer
|
|
melee = 30
|
|
bullet = 10
|
|
laser = 10
|
|
energy = 20
|
|
bomb = 50
|
|
fire = 50
|
|
acid = 50
|
|
|
|
/obj/item/clothing/head/hooded/explorer
|
|
name = "explorer hood"
|
|
desc = "An armoured hood for exploring harsh environments."
|
|
icon = 'icons/obj/clothing/head/utility.dmi'
|
|
worn_icon = 'icons/mob/clothing/head/utility.dmi'
|
|
icon_state = "explorer"
|
|
body_parts_covered = HEAD
|
|
flags_inv = HIDEHAIR|HIDEFACE|HIDEEARS
|
|
cold_protection = HEAD
|
|
min_cold_protection_temperature = FIRE_HELM_MIN_TEMP_PROTECT
|
|
heat_protection = HEAD
|
|
max_heat_protection_temperature = SPACE_SUIT_MAX_TEMP_PROTECT
|
|
armor_type = /datum/armor/hooded_explorer
|
|
resistance_flags = FIRE_PROOF
|
|
|
|
/obj/item/clothing/suit/hooded/explorer/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/armor_plate)
|
|
|
|
/obj/item/clothing/head/hooded/explorer/Initialize(mapload)
|
|
. = ..()
|
|
AddComponent(/datum/component/armor_plate)
|
|
|
|
/obj/item/clothing/mask/gas/explorer
|
|
name = "explorer gas mask"
|
|
desc = "A military-grade gas mask that can be connected to an air supply."
|
|
icon_state = "gas_mining"
|
|
inhand_icon_state = "explorer_gasmask"
|
|
flags_cover = MASKCOVERSEYES | MASKCOVERSMOUTH
|
|
visor_flags = BLOCK_GAS_SMOKE_EFFECT | MASKINTERNALS
|
|
visor_flags_inv = HIDEFACIALHAIR
|
|
visor_flags_cover = MASKCOVERSMOUTH
|
|
actions_types = list(/datum/action/item_action/adjust)
|
|
armor_type = /datum/armor/gas_explorer
|
|
resistance_flags = FIRE_PROOF
|
|
has_fov = FALSE
|
|
|
|
/datum/armor/gas_explorer
|
|
melee = 10
|
|
bullet = 5
|
|
laser = 5
|
|
energy = 5
|
|
bio = 50
|
|
fire = 20
|
|
acid = 40
|
|
wound = 5
|
|
|
|
/obj/item/clothing/mask/gas/explorer/plasmaman
|
|
starting_filter_type = /obj/item/gas_filter/plasmaman
|
|
|
|
/obj/item/clothing/mask/gas/explorer/attack_self(mob/user)
|
|
adjustmask(user)
|
|
|
|
/obj/item/clothing/mask/gas/explorer/adjustmask(mob/user)
|
|
. = ..()
|
|
// adjusted = out of the way = smaller = can fit in boxes
|
|
w_class = mask_adjusted ? WEIGHT_CLASS_SMALL : WEIGHT_CLASS_NORMAL
|
|
inhand_icon_state = mask_adjusted ? "[initial(inhand_icon_state)]_up" : initial(inhand_icon_state)
|
|
if(user)
|
|
user.update_held_items()
|
|
|
|
|
|
/obj/item/clothing/mask/gas/explorer/examine(mob/user)
|
|
. = ..()
|
|
if(mask_adjusted || w_class == WEIGHT_CLASS_SMALL)
|
|
return
|
|
. += span_notice("You could fit this into a box if you adjusted it.")
|
|
|
|
/obj/item/clothing/mask/gas/explorer/folded
|
|
w_class = WEIGHT_CLASS_SMALL
|
|
|
|
/obj/item/clothing/mask/gas/explorer/folded/Initialize(mapload)
|
|
. = ..()
|
|
adjustmask()
|
|
|
|
/obj/item/clothing/suit/hooded/cloak
|
|
icon = 'icons/obj/clothing/suits/armor.dmi'
|
|
worn_icon = 'icons/mob/clothing/suits/armor.dmi'
|
|
|
|
/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/internal/monster_core,
|
|
/obj/item/pickaxe,
|
|
/obj/item/spear,
|
|
/obj/item/tank/internals,
|
|
)
|
|
resistance_flags = FIRE_PROOF
|
|
armor_type = /datum/armor/cloak_goliath
|
|
hoodtype = /obj/item/clothing/head/hooded/cloakhood/goliath
|
|
body_parts_covered = CHEST|GROIN|ARMS
|
|
|
|
/obj/item/clothing/suit/hooded/cloak/goliath/AltClick(mob/user)
|
|
. = ..()
|
|
if(iscarbon(user))
|
|
var/mob/living/carbon/char = user
|
|
if((char.get_item_by_slot(ITEM_SLOT_NECK) == src) || (char.get_item_by_slot(ITEM_SLOT_OCLOTHING) == src))
|
|
to_chat(user, span_warning("You can't adjust [src] while wearing it!"))
|
|
return
|
|
if(!user.is_holding(src))
|
|
to_chat(user, span_warning("You must be holding [src] in order to adjust it!"))
|
|
return
|
|
if(slot_flags & ITEM_SLOT_OCLOTHING)
|
|
slot_flags = ITEM_SLOT_NECK
|
|
set_armor(/datum/armor/none)
|
|
user.visible_message(span_notice("[user] adjusts their [src] for ceremonial use."), span_notice("You adjust your [src] for ceremonial use."))
|
|
else
|
|
slot_flags = initial(slot_flags)
|
|
set_armor(initial(armor_type))
|
|
user.visible_message(span_notice("[user] adjusts their [src] for defensive use."), span_notice("You adjust your [src] for defensive use."))
|
|
|
|
/datum/armor/cloak_goliath
|
|
melee = 35
|
|
bullet = 10
|
|
laser = 25
|
|
energy = 35
|
|
bomb = 25
|
|
fire = 60
|
|
acid = 60
|
|
|
|
/obj/item/clothing/head/hooded/cloakhood/goliath
|
|
name = "goliath cloak hood"
|
|
icon = 'icons/obj/clothing/head/helmet.dmi'
|
|
worn_icon = 'icons/mob/clothing/head/helmet.dmi'
|
|
icon_state = "golhood"
|
|
desc = "A protective & concealing hood."
|
|
armor_type = /datum/armor/cloakhood_goliath
|
|
clothing_flags = SNUG_FIT
|
|
flags_inv = HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR
|
|
transparent_protection = HIDEMASK
|
|
resistance_flags = FIRE_PROOF
|
|
|
|
/datum/armor/cloakhood_goliath
|
|
melee = 35
|
|
bullet = 10
|
|
laser = 25
|
|
energy = 35
|
|
bomb = 25
|
|
fire = 60
|
|
acid = 60
|
|
|
|
/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_type = /datum/armor/cloak_drake
|
|
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
|
|
|
|
/datum/armor/cloak_drake
|
|
melee = 65
|
|
bullet = 15
|
|
laser = 40
|
|
energy = 40
|
|
bomb = 70
|
|
bio = 60
|
|
fire = 100
|
|
acid = 100
|
|
|
|
/obj/item/clothing/head/hooded/cloakhood/drake
|
|
name = "drake helm"
|
|
icon = 'icons/obj/clothing/head/helmet.dmi'
|
|
worn_icon = 'icons/mob/clothing/head/helmet.dmi'
|
|
icon_state = "dragon"
|
|
desc = "The skull of a dragon."
|
|
armor_type = /datum/armor/cloakhood_drake
|
|
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
|
|
|
|
/datum/armor/cloakhood_drake
|
|
melee = 65
|
|
bullet = 15
|
|
laser = 40
|
|
energy = 40
|
|
bomb = 70
|
|
bio = 60
|
|
fire = 100
|
|
acid = 100
|
|
|
|
/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_type = /datum/armor/cloak_godslayer
|
|
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)
|
|
|
|
/datum/armor/cloak_godslayer
|
|
melee = 50
|
|
bullet = 25
|
|
laser = 25
|
|
energy = 25
|
|
bomb = 50
|
|
bio = 50
|
|
fire = 100
|
|
acid = 100
|
|
|
|
/obj/item/clothing/head/hooded/cloakhood/godslayer
|
|
name = "godslayer helm"
|
|
icon = 'icons/obj/clothing/head/helmet.dmi'
|
|
worn_icon = 'icons/mob/clothing/head/helmet.dmi'
|
|
icon_state = "godslayer"
|
|
desc = "The horns and skull of a wendigo, held together by the remaining icey energy of a demonic miner."
|
|
armor_type = /datum/armor/cloakhood_godslayer
|
|
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
|
|
|
|
/datum/armor/cloakhood_godslayer
|
|
melee = 50
|
|
bullet = 25
|
|
laser = 25
|
|
energy = 25
|
|
bomb = 50
|
|
bio = 50
|
|
fire = 100
|
|
acid = 100
|
|
|
|
/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_REF(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)
|
|
|
|
/obj/item/clothing/suit/hooded/explorer/syndicate
|
|
name = "syndicate explorer suit"
|
|
desc = "An armoured suit for exploring harsh environments, dyed in the sinister red and black of the Syndicate. This one seems better armored than the ones Nanotrasen gives out."
|
|
icon_state = "explorer_syndicate"
|
|
icon = 'icons/obj/clothing/suits/utility.dmi'
|
|
worn_icon = 'icons/mob/clothing/suits/utility.dmi'
|
|
hoodtype = /obj/item/clothing/head/hooded/explorer/syndicate
|
|
armor_type = /datum/armor/hooded_explorer_syndicate
|
|
|
|
/datum/armor/hooded_explorer_syndicate
|
|
melee = 30
|
|
bullet = 15
|
|
laser = 25
|
|
energy = 35
|
|
bomb = 50
|
|
fire = 60
|
|
acid = 60
|
|
|
|
/obj/item/clothing/head/hooded/explorer/syndicate
|
|
name = "syndicate explorer hood"
|
|
desc = "An armoured hood for exploring harsh environments."
|
|
icon_state = "explorer_syndicate"
|
|
armor_type = /datum/armor/hooded_explorer_syndicate
|
|
|