Files
Bubberstation/modular_skyrat/modules/mapping/code/lavaland_ruin_code.dm
tmyqlfpir c7e11d7161 Various Interdyne/Dauntless map and spawn ruin tweaks (#1526)
<!-- Write **BELOW** The Headers and **ABOVE** The comments else it may
not be viewable. -->
<!-- You can view Contributing.MD for a detailed description of the pull
request process. -->

## About The Pull Request

This PR adds an additional check for the space edition of Dauntless to
the hack used to stop the bitrunner server from blurting out the cool
down across supply radio comms.

It also tweaks a few things with Dauntless/Interdyne, such as giving
them rad storm immunity and experi-scanners in the R&D labs.

Interdyne is now successfully placed on the lower Z levels thanks to the
`ZTRAIT_ICE_RUINS_UNDERGROUND` flag.

## Why It's Good For The Game

This is fixing an existing bug.

## Proof Of Testing

I have tested this on my server and confirm it works as described as the
PR.

## Changelog

🆑
fix: Dauntless space ruin bitrunner server no longer announces cool down
over NT supply comms
fix: Dauntless and Interdyne are now immune to rad storms
add: Added Syndie borg access cards to Interdyne
qol: Replaced the polarized windows in the Interdyne sauna area with
blast door shutters
add: Added experi-scanners to Interdyne/Dauntless R&D
fix: Interdyne never spawns on top Z level
qol: Interdyne dorm rooms now have crowbars in closets
qol: Interdyne deck officer does not leave empty sleeper on ghost role
spawn
/🆑
2024-06-03 12:37:53 +02:00

138 lines
5.4 KiB
Plaintext

//SPAWNERS//
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/shaftminer
name = "Interdyne Shaft Miner"
you_are_text = "You are an Interdyne shaft miner, employed in a top secret research facility developing biological weapons."
outfit = /datum/outfit/lavaland_syndicate/shaftminer
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/comms/space
outfit = /datum/outfit/lavaland_syndicate/comms/space
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/shaftminer/ice
name = "Interdyne Shaft Miner"
you_are_text = "You are an Interdyne shaft miner, employed in a top secret research facility developing biological weapons."
outfit = /datum/outfit/lavaland_syndicate/shaftminer/ice
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate
name = "Interdyne Bioweapon Scientist"
you_are_text = "You are an Interdyne science technician, employed in a top secret research facility developing biological weapons."
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/ice
outfit = /datum/outfit/lavaland_syndicate/ice
//OUTFITS//
/datum/outfit/lavaland_syndicate
name = "Interdyne Bioweapon Scientist"
uniform = /obj/item/clothing/under/rank/rnd/scientist/skyrat/utility/syndicate
suit = /obj/item/clothing/suit/toggle/labcoat/interdyne
ears = /obj/item/radio/headset/interdyne
/datum/outfit/lavaland_syndicate/post_equip(mob/living/carbon/human/syndicate, visualsOnly = FALSE)
syndicate.faction |= ROLE_SYNDICATE
var/obj/item/card/id/id_card = syndicate.wear_id
if(istype(id_card))
id_card.registered_name = syndicate.real_name
id_card.update_label()
id_card.update_icon()
handlebank(syndicate)
return ..()
/datum/outfit/lavaland_syndicate/ice
uniform = /obj/item/clothing/under/syndicate/skyrat/tactical
suit = /obj/item/clothing/suit/hooded/wintercoat/skyrat/syndicate
ears = /obj/item/radio/headset/interdyne
/datum/outfit/lavaland_syndicate/comms
uniform = /obj/item/clothing/under/rank/security/skyrat/utility/redsec/syndicate
ears = /obj/item/radio/headset/interdyne/comms
/datum/outfit/lavaland_syndicate/comms/space
ears = /obj/item/radio/headset/syndicate/alt
/datum/outfit/lavaland_syndicate/shaftminer
name = "Interdyne Shaft Miner"
uniform = /obj/item/clothing/under/rank/cargo/tech/skyrat/utility/syndicate
suit = null //Subtype moment
r_pocket = /obj/item/storage/bag/ore
id_trim = /datum/id_trim/syndicom/skyrat/interdyne
backpack_contents = list(
/obj/item/flashlight/seclite=1,\
/obj/item/knife/combat/survival=1,
/obj/item/mining_voucher=1,
/obj/item/t_scanner/adv_mining_scanner/lesser=1,
/obj/item/gun/energy/recharge/kinetic_accelerator=1,\
/obj/item/stack/marker_beacon/ten=1,\
/obj/item/card/mining_point_card=1)
/datum/outfit/lavaland_syndicate/shaftminer/deckofficer
name = "Interdyne Deck Officer"
uniform = /obj/item/clothing/under/rank/cargo/qm/skyrat/syndie
neck = /obj/item/clothing/neck/cloak/qm/syndie
ears = /obj/item/radio/headset/interdyne/command
id = /obj/item/card/id/advanced/silver/generic
id_trim = /datum/id_trim/syndicom/skyrat/interdyne/deckofficer
r_hand = /obj/item/gun/ballistic/rifle/sniper_rifle //Bubberstation Edit
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/deckofficer
name = "Interdyne Deck Officer"
you_are_text = "You are an Interdyne Deck Officer, employed in a top secret research facility developing biological weapons."
outfit = /datum/outfit/lavaland_syndicate/shaftminer/deckofficer
/* Bubberstation Removal Start - Don't spawn empty sleeper
/obj/effect/mob_spawn/ghost_role/human/lavaland_syndicate/deckofficer/Destroy()
new/obj/structure/fluff/empty_sleeper/syndicate/captain(get_turf(src))
return ..()
Bubberstation Removal End */
/datum/outfit/lavaland_syndicate/shaftminer/ice
name = "Icemoon Interdyne Shaft Miner"
uniform = /obj/item/clothing/under/syndicate/skyrat/tactical
suit = /obj/item/clothing/suit/hooded/wintercoat/skyrat/syndicate
//ITEMS
/obj/item/radio/headset/interdyne
name = "interdyne headset"
desc = "A bowman headset with a large red cross on the earpiece, has a small 'IP' written on the top strap. Protects the ears from flashbangs."
icon_state = "syndie_headset"
inhand_icon_state = null
radiosound = 'modular_skyrat/modules/radiosound/sound/radio/syndie.ogg'
keyslot = /obj/item/encryptionkey/headset_syndicate/interdyne
/obj/item/radio/headset/interdyne/Initialize(mapload)
. = ..()
AddComponent(/datum/component/wearertargeting/earprotection, list(ITEM_SLOT_EARS))
/obj/item/radio/headset/interdyne/command
name = "interdyne command headset"
desc = "A commanding headset to gather your underlings. Protects the ears from flashbangs."
command = TRUE
/obj/item/radio/headset/interdyne/comms
keyslot = /obj/item/encryptionkey/headset_syndicate/interdyne
keyslot2 = /obj/item/encryptionkey/syndicate
/obj/structure/closet/crate/freezer/sansufentanyl
name = "sansufentanyl crate"
desc = "A freezer. Contains refrigerated Sansufentanyl, for managing Hereditary Manifold Sickness. A product of Interdyne Pharmaceuticals."
/obj/structure/closet/crate/freezer/sansufentanyl/PopulateContents()
. = ..()
for(var/grabbin_pills in 1 to 10)
new /obj/item/storage/pill_bottle/sansufentanyl(src)
//MOBS
// hivelords that stand guard where they spawn
/mob/living/basic/mining/hivelord/no_wander
ai_controller = /datum/ai_controller/basic_controller/hivelord/no_wander
//MOB AI
// same as a regular hivelord minus the idle walking
/datum/ai_controller/basic_controller/hivelord/no_wander
idle_behavior = null