From 44b101977460b014f84cce62e26e275f865f2510 Mon Sep 17 00:00:00 2001 From: Velcroboy <107660393+IamVelcroboy@users.noreply.github.com> Date: Fri, 11 Jul 2025 15:55:35 -0500 Subject: [PATCH] Convert Locker/Closet fills to Entity Tables: Part 2 (#38254) Co-authored-by: Velcroboy --- .../Catalog/Fills/Lockers/security.yml | 345 ++++++---- .../Catalog/Fills/Lockers/service.yml | 208 +++--- .../Catalog/Fills/Lockers/space_ruin.yml | 83 ++- .../Catalog/Fills/Lockers/suit_storage.yml | 212 +++++-- .../Catalog/Fills/Lockers/wardrobe_colors.yml | 284 ++++++--- .../Catalog/Fills/Lockers/wardrobe_job.yml | 595 +++++++++++------- 6 files changed, 1129 insertions(+), 598 deletions(-) diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/security.yml b/Resources/Prototypes/Catalog/Fills/Lockers/security.yml index cfd1aca2b5..2f2e7a2c1a 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/security.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/security.yml @@ -3,161 +3,201 @@ suffix: Filled, Hardsuit parent: LockerWarden components: - - type: StorageFill - contents: - - id: FlashlightSeclite - - id: WeaponDisabler - - id: ClothingBeltSecurityFilled - - id: Flash - - id: ClothingEyesGlassesSecurity - - id: ClothingHandsGlovesCombat - - id: ClothingShoesBootsJack - - id: ClothingOuterCoatWarden - - id: ClothingOuterWinterWarden - - id: RubberStampWarden - - id: DoorRemoteArmory - - id: ClothingOuterHardsuitWarden - - id: HoloprojectorSecurity - - id: BookSpaceLaw - - id: ClothingBackpackElectropack - amount: 2 - - id: RemoteSignaller - amount: 2 + - type: EntityTableContainerFill + containers: + entity_storage: !type:AllSelector + children: + - !type:NestedSelector + tableId: FillLockerWarden + - !type:NestedSelector + tableId: FillLockerWardenHarduit - type: entity id: LockerWardenFilled suffix: Filled parent: LockerWarden components: - - type: StorageFill - contents: - - id: FlashlightSeclite - - id: WeaponDisabler - - id: ClothingBeltSecurityFilled - - id: Flash - - id: ClothingEyesGlassesSecurity - - id: ClothingHandsGlovesCombat - - id: ClothingShoesBootsJack - - id: ClothingOuterCoatWarden - - id: ClothingOuterWinterWarden - - id: RubberStampWarden - - id: DoorRemoteArmory - - id: HoloprojectorSecurity - - id: BookSpaceLaw - - id: ClothingBackpackElectropack - amount: 2 - - id: RemoteSignaller - amount: 2 - - id: Binoculars + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerWarden + +- type: entityTable + id: FillLockerWarden + table: !type:AllSelector + children: + - id: FlashlightSeclite + - id: WeaponDisabler + - id: ClothingBeltSecurityFilled + - id: Flash + - id: ClothingEyesGlassesSecurity + - id: ClothingHandsGlovesCombat + - id: ClothingShoesBootsJack + - id: ClothingOuterCoatWarden + - id: ClothingOuterWinterWarden + - id: RubberStampWarden + - id: DoorRemoteArmory + - id: HoloprojectorSecurity + - id: BookSpaceLaw + - id: ClothingBackpackElectropack + amount: 2 + - id: RemoteSignaller + amount: 2 + - id: Binoculars + +- type: entityTable + id: FillLockerWardenHarduit + table: !type:AllSelector + children: + - id: ClothingOuterHardsuitWarden + - id: OxygenTankFilled + - id: ClothingMaskBreath - type: entity id: LockerSecurityFilled suffix: Filled parent: LockerSecurity components: - - type: StorageFill - contents: - - id: FlashlightSeclite - prob: 0.8 - - id: WeaponDisabler - - id: ClothingUniformJumpsuitSecGrey - prob: 0.3 - - id: ClothingHeadHelmetBasic - - id: ClothingOuterArmorBasic - - id: ClothingBeltSecurityFilled - - id: Flash - prob: 0.5 - - id: ClothingEyesGlassesSecurity - - id: ClothingHeadsetSecurity - - id: ClothingHandsGlovesColorBlack - - id: ClothingShoesBootsJack - - id: WeaponMeleeNeedle - prob: 0.1 - - id: HoloprojectorSecurity - prob: 0.6 - - id: BookSpaceLaw - prob: 0.5 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerSecurity + +- type: entityTable + id: FillLockerSecurity + table: !type:AllSelector + children: + - id: FlashlightSeclite + prob: 0.8 + - id: WeaponDisabler + - id: ClothingUniformJumpsuitSecGrey + prob: 0.3 + - id: ClothingHeadHelmetBasic + - id: ClothingOuterArmorBasic + - id: ClothingBeltSecurityFilled + - id: Flash + prob: 0.5 + - id: ClothingEyesGlassesSecurity + - id: ClothingHeadsetSecurity + - id: ClothingHandsGlovesColorBlack + - id: ClothingShoesBootsJack + - id: WeaponMeleeNeedle + prob: 0.1 + - id: HoloprojectorSecurity + prob: 0.6 + - id: BookSpaceLaw + prob: 0.5 - type: entity id: LockerBrigmedicFilled suffix: Brigmedic, Filled parent: LockerBrigmedic components: - - type: StorageFill - contents: - - id: ClothingEyesGlassesSecurity - - id: WeaponDisabler - - id: TrackingImplanter - amount: 2 - - id: ClothingOuterHardsuitBrigmedic - - id: BoxSterileMask - - id: ClothingHeadHatBeretBrigmedic - - id: ClothingOuterCoatAMG - - id: ClothingUniformJumpsuitBrigmedic - - id: ClothingUniformJumpskirtBrigmedic - - id: ClothingUniformJumpskirtOfLife - prob: 0.1 - - id: MedkitFilled + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerBrigmedic + +- type: entityTable + id: FillLockerBrigmedic + table: !type:AllSelector + children: + - id: ClothingEyesGlassesSecurity + - id: WeaponDisabler + - id: TrackingImplanter + amount: 2 + - id: ClothingOuterHardsuitBrigmedic + - id: BoxSterileMask + - id: ClothingHeadHatBeretBrigmedic + - id: ClothingOuterCoatAMG + - id: ClothingUniformJumpsuitBrigmedic + - id: ClothingUniformJumpskirtBrigmedic + - id: ClothingUniformJumpskirtOfLife + prob: 0.1 + - id: MedkitFilled + - !type:GroupSelector + prob: 0.7 + children: - id: MedkitCombatFilled - prob: 0.6 + weight: 1.6 - id: MedkitAdvancedFilled - prob: 0.4 - id: MedkitOxygenFilled - prob: 0.3 + weight: 0.8 - id: MedkitBruteFilled - prob: 0.3 + weight: 0.8 - id: MedkitToxinFilled - prob: 0.3 + weight: 0.8 - id: MedkitBurnFilled - prob: 0.7 - - id: ClothingNeckCloakMoth #bzzz Moth-pocalypse - prob: 0.15 + weight: 1.8 + - id: ClothingNeckCloakMoth #bzzz Moth-pocalypse + prob: 0.15 - type: entity id: LockerDetectiveFilled suffix: Filled parent: LockerDetective components: - - type: StorageFill - contents: - - id: ClothingEyesGlassesNoir - - id: ClothingHeadHatDetGadget - - id: ClothingNeckTieDet - - id: ClothingOuterVestDetective - - id: ClothingOuterCoatDetectiveLoadout - - id: FlippoEngravedLighter - - id: FlashlightSeclite - - id: ForensicScanner - - id: LogProbeCartridge - - id: BoxForensicPad - - id: DrinkDetFlask - - id: ClothingHandsGlovesForensic - - id: RubberStampDetective - - id: HoloprojectorSecurity - - id: BoxEvidenceMarkers - - id: HandLabeler + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerDetective + +- type: entityTable + id: FillLockerDetective + table: !type:AllSelector + children: + - id: ClothingEyesGlassesNoir + - id: ClothingHeadHatDetGadget + - id: ClothingNeckTieDet + - id: ClothingOuterVestDetective + - id: ClothingOuterCoatDetectiveLoadout + - id: FlippoEngravedLighter + - id: FlashlightSeclite + - id: ForensicScanner + - id: LogProbeCartridge + - id: BoxForensicPad + - id: DrinkDetFlask + - id: ClothingHandsGlovesForensic + - id: RubberStampDetective + - id: HoloprojectorSecurity + - id: BoxEvidenceMarkers + - id: HandLabeler - type: entity id: ClosetBombFilled parent: ClosetBomb suffix: Filled components: - - type: StorageFill - contents: - - id: ClothingHeadHelmetBombSuit - - id: ClothingOuterSuitBomb - - id: Wirecutter - - id: Screwdriver - - id: Multitool - prob: 0.5 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillClosetBomb + +- type: entityTable + id: FillClosetBomb + table: !type:AllSelector + children: + - id: ClothingHeadHelmetBombSuit + - id: ClothingOuterSuitBomb + - id: Wirecutter + - id: Screwdriver + - id: Multitool + prob: 0.5 - type: entity parent: [GunSafeBaseSecure, BaseSecurityContraband] id: GunSafeDisabler name: disabler safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafeDisabler + +- type: entityTable + id: FillGunSafeDisabler + table: !type:AllSelector + children: - id: WeaponDisabler amount: 5 @@ -166,8 +206,15 @@ id: GunSafePistolMk58 name: mk58 safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafePistolMk58 + +- type: entityTable + id: FillGunSafePistolMk58 + table: !type:AllSelector + children: - id: WeaponPistolMk58 amount: 4 - id: MagazinePistol @@ -178,8 +225,15 @@ id: GunSafeRifleLecter name: lecter safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafeRifleLecter + +- type: entityTable + id: FillGunSafeRifleLecter + table: !type:AllSelector + children: - id: WeaponRifleLecter amount: 2 - id: MagazineRifle @@ -190,8 +244,15 @@ id: GunSafeSubMachineGunDrozd name: drozd safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafeSubMachineGunDrozd + +- type: entityTable + id: FillGunSafeSubMachineGunDrozd + table: !type:AllSelector + children: - id: WeaponSubMachineGunDrozd amount: 2 - id: MagazinePistolSubMachineGun @@ -202,8 +263,15 @@ id: GunSafeShotgunEnforcer name: enforcer safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafeShotgunEnforcer + +- type: entityTable + id: FillGunSafeShotgunEnforcer + table: !type:AllSelector + children: - id: WeaponShotgunEnforcer amount: 2 - id: BoxLethalshot @@ -214,12 +282,19 @@ id: GunSafeShotgunKammerer name: kammerer safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafeShotgunKammerer + +- type: entityTable + id: FillGunSafeShotgunKammerer + table: !type:AllSelector + children: - id: WeaponShotgunKammerer amount: 2 - id: BoxLethalshot - amount: 2 + amount: 4 - type: entity id: GunSafeSubMachineGunWt550 @@ -227,8 +302,15 @@ parent: [GunSafeBaseSecure, BaseSecurityContraband] name: wt550 safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafeSubMachineGunWt550 + +- type: entityTable + id: FillGunSafeSubMachineGunWt550 + table: !type:AllSelector + children: - id: WeaponSubMachineGunWt550 amount: 2 - id: MagazinePistolSubMachineGunTopMounted @@ -239,7 +321,14 @@ id: GunSafeLaserCarbine name: laser safe components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillGunSafeLaserCarbine + +- type: entityTable + id: FillGunSafeLaserCarbine + table: !type:AllSelector + children: - id: WeaponLaserCarbine amount: 3 diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/service.yml b/Resources/Prototypes/Catalog/Fills/Lockers/service.yml index 14da417181..85bd52e13d 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/service.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/service.yml @@ -3,24 +3,28 @@ suffix: Filled parent: LockerBooze components: - - type: StorageFill - contents: - - id: ClothingOuterArmorBasicSlim - - id: WeaponShotgunDoubleBarreledRubber - - id: DrinkShaker - - id: ClothingEyesHudBeer - - id: HandLabeler - amount: 1 - - id: DrinkBottleBeer - prob: 0.5 - - id: DrinkBottleBeer - prob: 0.5 - - id: DrinkBottleBeer - prob: 0.5 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerBooze + +- type: entityTable + id: FillLockerBooze + table: !type:AllSelector + children: + - id: ClothingOuterArmorBasicSlim + - id: WeaponShotgunDoubleBarreledRubber + - id: DrinkShaker + - id: ClothingEyesHudBeer + - id: HandLabeler + - id: DrinkBottleBeer + amount: !type:BinomialNumberSelector + trials: 3 + - !type:AllSelector + rolls: 2 + children: - id: BoxBeanbag - amount: 2 - id: RagItem - amount: 2 #- type: entity # id: LockerFormalFilled @@ -32,103 +36,134 @@ suffix: Filled parent: ClosetChef components: - - type: StorageFill - contents: - - id: VariantCubeBox - - id: BoxMousetrap - amount: 2 - - id: SprayBottleWater + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillClosetChef + +- type: entityTable + id: FillClosetChef + table: !type:AllSelector + children: + - id: VariantCubeBox + - id: SprayBottleWater + - id: FoodBoxCloth + - id: ReagentContainerSugar + - id: FoodCondimentBottleEnzyme + - id: DrinkSoyMilkCarton + - !type:AllSelector + rolls: 2 + children: + - id: DrinkMilkCarton + # really, milk should go in the fridge. Unfortunately saltern only has freezers. + # yes, I'm using this as an excuse to not have to do extra work. - id: ReagentContainerFlour - amount: 2 - - id: FoodBoxCloth - amount: 1 - - id: ReagentContainerSugar + - id: BoxMousetrap + - !type:AllSelector + rolls: 3 + children: - id: FoodCondimentPacketSalt - amount: 3 - id: FoodCondimentPacketPepper - amount: 3 - - id: FoodCondimentBottleEnzyme - # really, milk should go in the fridge. Unfortunately saltern only has freezers. - # yes, I'm using this as an excuse to not have to do extra work. - - id: DrinkMilkCarton - amount: 2 - - id: DrinkSoyMilkCarton - type: entity id: ClosetJanitorFilled suffix: Filled parent: ClosetJanitor components: - - type: StorageFill - contents: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillClosetJanitor + +- type: entityTable + id: FillClosetJanitor + table: !type:AllSelector + children: + - id: WetFloorSign + amount: 3 + - id: LightReplacer + - id: BoxLightMixed + - id: Holoprojector + - !type:AllSelector + rolls: 2 + children: - id: MopItem - amount: 2 - id: BoxMousetrap - amount: 2 - - id: WetFloorSign - amount: 3 - id: TrashBag - amount: 2 - - id: LightReplacer - - id: BoxLightMixed - - id: Holoprojector - id: SoapNT - amount: 2 - id: FlashlightLantern - amount: 2 - id: Plunger - amount: 2 - id: WireBrush - amount: 2 - type: entity id: ClosetLegalFilled suffix: Filled parent: ClosetLegal components: - - type: StorageFill - contents: - - id: BriefcaseBrownFilled - prob: 0.80 - - id: ClothingOuterRobesJudge + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillClosetLegal + +- type: entityTable + id: FillClosetLegal + table: !type:AllSelector + children: + - id: BriefcaseBrownFilled + prob: 0.80 + - id: ClothingOuterRobesJudge - type: entity id: LockerBotanistFilled suffix: Filled parent: LockerBotanist components: - - type: StorageFill - contents: - - id: ClothingHandsGlovesLeather - - id: ClothingOuterApronBotanist - - id: ClothingHeadBandBotany - - id: ChemistryBottleRobustHarvest - prob: 0.3 - - id: ClothingBeltPlant - - id: PlantBag ##Some maps don't have nutrivend - - id: BoxMouthSwab - - id: Dropper - - id: HandLabeler - - id: ClothingUniformOveralls - - id: ClothingHeadHatTrucker - prob: 0.1 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerBotanist + +- type: entityTable + id: FillLockerBotanist + table: !type:AllSelector + children: + - id: ClothingHandsGlovesLeather + - id: ClothingOuterApronBotanist + - id: ClothingHeadBandBotany + - id: ChemistryBottleRobustHarvest + prob: 0.3 + - id: ClothingBeltPlant + - id: PlantBag ##Some maps don't have nutrivend + - id: BoxMouthSwab + - id: Dropper + - id: HandLabeler + - id: ClothingUniformOveralls + - id: ClothingHeadHatTrucker + prob: 0.1 - type: entity id: LockerBotanistLoot suffix: Loot parent: LockerBotanist components: - - type: StorageFill - contents: - - id: ClothingUniformOveralls - - id: ClothingHeadHatTrucker - prob: 0.3 - - id: GatfruitSeeds - prob: 0.1 - - id: FlyAmanitaSeeds - prob: 0.5 - - id: NettleSeeds - prob: 0.7 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerBotanistLoot + +- type: entityTable + id: FillLockerBotanistLoot + table: !type:AllSelector + children: + - id: ClothingUniformOveralls + - id: ClothingHeadHatTrucker + prob: 0.3 + - id: GatfruitSeeds + prob: 0.1 + - id: FlyAmanitaSeeds + prob: 0.5 + - id: NettleSeeds + prob: 0.7 - type: entity id: ClosetJanitorBombFilled @@ -136,7 +171,14 @@ suffix: DO NOT MAP, Filled categories: [ DoNotMap ] components: - - type: StorageFill - contents: - - id: ClothingHeadHelmetJanitorBombSuit - - id: ClothingOuterSuitJanitorBomb + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillClosetJanitorBomb + +- type: entityTable + id: FillClosetJanitorBomb + table: !type:AllSelector + children: + - id: ClothingHeadHelmetJanitorBombSuit + - id: ClothingOuterSuitJanitorBomb diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/space_ruin.yml b/Resources/Prototypes/Catalog/Fills/Lockers/space_ruin.yml index a35c5915ab..940072a335 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/space_ruin.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/space_ruin.yml @@ -5,11 +5,18 @@ suffix: NTSRA voidsuit locker parent: LockerSyndicate components: - - type: StorageFill - contents: - - id: ClothingHeadHelmetAncient - - id: ClothingOuterHardsuitAncientEVA - - id: JetpackVoidFilled + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FilLockerOldAISat + +- type: entityTable + id: FilLockerOldAISat + table: !type:AllSelector + children: + - id: ClothingHeadHelmetAncient + - id: ClothingOuterHardsuitAncientEVA + - id: JetpackVoidFilled #Syndicate ship armory stuff - type: entity @@ -17,35 +24,49 @@ parent: LockerSyndicate suffix: Basic ship gear, Random components: - - type: StorageFill - contents: - - id: CrowbarRed - prob: 0.6 - - id: ClothingShoesBootsCombat - prob: 0.4 - - id: ClothingUniformJumpsuitOperative - prob: 0.4 - - id: ClothingHandsGlovesCombat - prob: 0.2 - - id: ClothingBeltMilitaryWebbing - prob: 0.2 - + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FilLockerSyndicateShipGearBasic + +- type: entityTable + id: FilLockerSyndicateShipGearBasic + table: !type:AllSelector + children: + - id: CrowbarRed + prob: 0.6 + - id: ClothingShoesBootsCombat + prob: 0.4 + - id: ClothingUniformJumpsuitOperative + prob: 0.4 + - id: ClothingHandsGlovesCombat + prob: 0.2 + - id: ClothingBeltMilitaryWebbing + prob: 0.2 + #Garunteed chameleon kit spawn, for the syndicate dropship - type: entity id: LockerSyndicateShipGearBasicChameleonKit parent: LockerSyndicateShipGearBasic suffix: Basic ship gear, Random, Chameleon Kit components: - - type: StorageFill - contents: - - id: ClothingBackpackChameleonFill - - id: CrowbarRed - prob: 0.6 - - id: ClothingShoesBootsCombat - prob: 0.4 - - id: ClothingUniformJumpsuitOperative - prob: 0.4 - - id: ClothingHandsGlovesCombat - prob: 0.2 - - id: ClothingBeltMilitaryWebbing - prob: 0.2 \ No newline at end of file + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FilLockerSyndicateShipGearBasicChameleonKit + +- type: entityTable + id: FilLockerSyndicateShipGearBasicChameleonKit + table: !type:AllSelector + children: + - id: ClothingBackpackChameleonFill + - id: CrowbarRed + prob: 0.6 + - id: ClothingShoesBootsCombat + prob: 0.4 + - id: ClothingUniformJumpsuitOperative + prob: 0.4 + - id: ClothingHandsGlovesCombat + prob: 0.2 + - id: ClothingBeltMilitaryWebbing + prob: 0.2 diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml b/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml index ff9e81b929..b914d3b850 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/suit_storage.yml @@ -5,12 +5,19 @@ parent: SuitStorageBase suffix: EVA components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitEVA - - id: ClothingHeadHelmetEVA - - id: ClothingMaskBreath + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageEVA + +- type: entityTable + id: FillSuitStorageEVA + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterHardsuitEVA + - id: ClothingHeadHelmetEVA + - id: ClothingMaskBreath #Basic EVA (Big Ass Helmet) - type: entity @@ -18,12 +25,19 @@ parent: SuitStorageBase suffix: EVA, Large Helmet components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitEVA - - id: ClothingHeadHelmetEVALarge - - id: ClothingMaskBreath + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageEVAAlternate + +- type: entityTable + id: FillSuitStorageEVAAlternate + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterHardsuitEVA + - id: ClothingHeadHelmetEVALarge + - id: ClothingMaskBreath #Emergency EVA - type: entity @@ -31,11 +45,18 @@ parent: SuitStorageBase suffix: Emergency EVA components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterSuitEmergency - - id: ClothingMaskBreath + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageEVAEmergency + +- type: entityTable + id: FillSuitStorageEVAEmergency + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterSuitEmergency + - id: ClothingMaskBreath #Prisoner EVA - type: entity @@ -43,12 +64,19 @@ parent: SuitStorageBase suffix: Prisoner EVA components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitEVAPrisoner - - id: ClothingHeadHelmetEVALarge - - id: ClothingMaskBreath + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageEVAPrisoner + +- type: entityTable + id: FillSuitStorageEVAPrisoner + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterHardsuitEVAPrisoner + - id: ClothingHeadHelmetEVALarge + - id: ClothingMaskBreath #Syndicate EVA - type: entity @@ -56,12 +84,19 @@ parent: SuitStorageBase suffix: Syndicate EVA components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterEVASuitSyndicate - - id: ClothingHeadHelmetSyndicate - - id: ClothingMaskGasSyndicate + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageEVASyndicate + +- type: entityTable + id: FillSuitStorageEVASyndicate + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterEVASuitSyndicate + - id: ClothingHeadHelmetSyndicate + - id: ClothingMaskGasSyndicate #Pirate EVA - type: entity @@ -69,11 +104,18 @@ parent: SuitStorageBase suffix: Pirate EVA components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitPirateEVA - - id: ClothingMaskGas + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageEVAPirate + +- type: entityTable + id: FillSuitStorageEVAPirate + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterHardsuitPirateEVA + - id: ClothingMaskGas #NTSRA Voidsuit - type: entity @@ -81,12 +123,19 @@ parent: SuitStorageBase suffix: Ancient EVA components: - - type: StorageFill - contents: - - id: JetpackVoidFilled - - id: ClothingOuterHardsuitAncientEVA - - id: ClothingHeadHelmetAncient - - id: ClothingMaskBreath + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageEVANTSRA + +- type: entityTable + id: FillSuitStorageEVANTSRA + table: !type:AllSelector + children: + - id: JetpackVoidFilled + - id: ClothingOuterHardsuitAncientEVA + - id: ClothingHeadHelmetAncient + - id: ClothingMaskBreath #HARDSUITS #Engineering hardsuit @@ -121,14 +170,21 @@ parent: SuitStorageBase suffix: Security components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitSecurity - - id: ClothingMaskBreath + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageSecurity - type: AccessReader access: [["Security"]] +- type: entityTable + id: FillSuitStorageSecurity + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterHardsuitSecurity + - id: ClothingMaskBreath + #CE's hardsuit - type: entity id: SuitStorageCE @@ -187,11 +243,10 @@ parent: SuitStorageBase suffix: Warden components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitWarden - - id: ClothingMaskBreath + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillLockerWardenHarduit - type: AccessReader access: [["Armory"]] @@ -227,12 +282,19 @@ parent: SuitStorageBase suffix: Syndicate Hardsuit components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitSyndie - - id: ClothingShoesBootsMagSyndie - - id: ClothingMaskGasSyndicate + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageSyndie + +- type: entityTable + id: FillSuitStorageSyndie + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterHardsuitSyndie + - id: ClothingShoesBootsMagSyndie + - id: ClothingMaskGasSyndicate #Pirate Captain's hardsuit - type: entity @@ -240,11 +302,18 @@ parent: SuitStorageBase suffix: Pirate Captain components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingOuterHardsuitPirateCap - - id: ClothingMaskGas + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStoragePirateCap + +- type: entityTable + id: FillSuitStoragePirateCap + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingOuterHardsuitPirateCap + - id: ClothingMaskGas #Wizard - type: entity @@ -252,10 +321,17 @@ parent: SuitStorageBase suffix: Wizard components: - - type: StorageFill - contents: - - id: OxygenTankFilled - - id: ClothingMaskBreath - # TODO: Gone until reworked to have no space protection - #- id: ClothingOuterHardsuitWizard - #- id: JetpackVoidFilled + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillSuitStorageWizard + +- type: entityTable + id: FillSuitStorageWizard + table: !type:AllSelector + children: + - id: OxygenTankFilled + - id: ClothingMaskBreath + # TODO: Gone until reworked to have no space protection + #- id: ClothingOuterHardsuitWizard + #- id: JetpackVoidFilled diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_colors.yml b/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_colors.yml index 4e885a08b2..d65469ccd2 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_colors.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_colors.yml @@ -3,60 +3,111 @@ suffix: Filled parent: WardrobeGrey components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitColorGrey - amount: 2 - - id: ClothingUniformJumpskirtColorGrey - amount: 2 - - id: ClothingShoesColorBlack - amount: 3 - - id: ClothingHeadHatGreysoft - - id: ClothingBackpackDuffel - prob: 0.5 - - id: ClothingOuterCoatBomber - prob: 0.3 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeGrey + +- type: entity + id: ClosetWallWardrobeGreyFilled + suffix: Filled + parent: ClosetWallGrey + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeGrey + +- type: entityTable + id: FillWardrobeGrey + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitColorGrey + amount: 2 + - id: ClothingUniformJumpskirtColorGrey + amount: 2 + - id: ClothingShoesColorBlack + amount: 3 + - id: ClothingHeadHatGreysoft + - id: ClothingBackpackDuffel + prob: 0.5 + - id: ClothingOuterCoatBomber + prob: 0.3 - type: entity id: WardrobeMixedFilled suffix: Filled parent: WardrobeMixed components: - - type: StorageFill - contents: - - id: ClothingShoesColorBlack - amount: 1 - - id: ClothingShoesColorBrown - amount: 1 - - id: ClothingShoesColorWhite - amount: 1 - - id: ClothingOuterCoatBomber - prob: 0.4 - - id: ClothingOuterCoatGentle - prob: 0.3 - - id: ClothingUniformRandomShorts - amount: 3 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeMixed + +- type: entity + id: ClosetWallWardrobeMixedFilled + suffix: Filled + parent: ClosetWallMixed + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeMixed + +- type: entityTable + id: FillWardrobeMixed + table: !type:AllSelector + children: + - id: ClothingShoesColorBlack + - id: ClothingShoesColorBrown + - id: ClothingShoesColorWhite + - id: ClothingOuterCoatBomber + prob: 0.4 + - id: ClothingOuterCoatGentle + prob: 0.3 + - id: ClothingUniformRandomShorts + amount: 3 + - id: ClothingUniformRandomBra + amount: 5 + - !type:AllSelector + rolls: 5 + children: - id: ClothingUniformRandomArmless - amount: 5 + prob: 0.8 - id: ClothingUniformRandomStandard - amount: 5 - - id: ClothingUniformRandomBra - amount: 5 + prob: 0.8 - id: ClothingUniformRandomShirt - amount: 4 + prob: 0.8 - type: entity id: WardrobeYellowFilled suffix: Filled parent: WardrobeYellow components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitColorYellow - - id: ClothingUniformJumpskirtColorYellow - - id: ClothingShoesColorOrange - amount: 2 - - id: ClothingHeadBandGold + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeYellow + +- type: entity + id: ClosetWallWardrobeYellowFilled + suffix: Filled + parent: ClosetWallYellow + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeYellow + +- type: entityTable + id: FillWardrobeYellow + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitColorYellow + - id: ClothingUniformJumpskirtColorYellow + - id: ClothingShoesColorOrange + amount: 2 + - id: ClothingHeadBandGold - type: entity @@ -64,62 +115,147 @@ suffix: Filled parent: WardrobeWhite components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitColorWhite - - id: ClothingUniformJumpskirtColorWhite - - id: ClothingShoesColorWhite - amount: 2 - - id: ClothingHeadHatMimesoft + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeWhite + +- type: entity + id: ClosetWallWardrobeWhiteFilled + suffix: Filled + parent: ClosetWallWhite + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeWhite + +- type: entityTable + id: FillWardrobeWhite + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitColorWhite + - id: ClothingUniformJumpskirtColorWhite + - id: ClothingShoesColorWhite + amount: 2 + - id: ClothingHeadHatMimesoft - type: entity id: WardrobeBlueFilled suffix: Filled parent: WardrobeBlue components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitColorBlue - - id: ClothingUniformJumpskirtColorBlue - - id: ClothingShoesColorBrown - amount: 2 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeBlue + +- type: entity + id: ClosetWallWardrobeBlueFilled + suffix: Filled + parent: ClosetWallBlue + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeBlue + +- type: entityTable + id: FillWardrobeBlue + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitColorBlue + - id: ClothingUniformJumpskirtColorBlue + - id: ClothingShoesColorBrown + amount: 2 - type: entity id: WardrobePinkFilled suffix: Filled parent: WardrobePink components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitColorPink - - id: ClothingUniformJumpskirtColorPink - - id: ClothingShoesColorBrown - amount: 2 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobePink + +- type: entity + id: ClosetWallWardrobePinkFilled + suffix: Filled + parent: ClosetWallPink + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobePink + +- type: entityTable + id: FillWardrobePink + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitColorPink + - id: ClothingUniformJumpskirtColorPink + - id: ClothingShoesColorBrown + amount: 2 - type: entity id: WardrobeBlackFilled suffix: Filled parent: WardrobeBlack components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitColorBlack - - id: ClothingUniformJumpskirtColorBlack - - id: ClothingShoesColorBlack - amount: 2 - - id: ClothingHeadBandBlack - - id: ClothingHeadBandSkull - prob: 0.4 + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeBlack + +- type: entity + id: ClosetWallWardrobeBlackFilled + suffix: Filled + parent: ClosetWallBlack + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeBlack + +- type: entityTable + id: FillWardrobeBlack + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitColorBlack + - id: ClothingUniformJumpskirtColorBlack + - id: ClothingShoesColorBlack + amount: 2 + - id: ClothingHeadBandBlack + - id: ClothingHeadBandSkull + prob: 0.4 - type: entity id: WardrobeGreenFilled suffix: Filled parent: WardrobeGreen components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitColorGreen - - id: ClothingUniformJumpskirtColorGreen - - id: ClothingShoesColorBlack - amount: 2 - - id: ClothingHeadBandGreen + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeGreen + +- type: entity + id: ClosetWallWardrobeGreenFilled + suffix: Filled + parent: ClosetWallGreen + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeGreen + +- type: entityTable + id: FillWardrobeGreen + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitColorGreen + - id: ClothingUniformJumpskirtColorGreen + - id: ClothingShoesColorBlack + amount: 2 + - id: ClothingHeadBandGreen diff --git a/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml b/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml index 49601980f3..dc944a803c 100644 --- a/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml +++ b/Resources/Prototypes/Catalog/Fills/Lockers/wardrobe_job.yml @@ -1,18 +1,83 @@ - - type: entity - id: WardrobePrisonFilled - suffix: Filled - parent: WardrobePrison - description: "Contains a selection of nice orange clothes for people enjoying their stay in the brig." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitPrisoner - amount: 2 - - id: ClothingUniformJumpskirtPrisoner - amount: 2 - - id: ClothingShoesColorBlack - amount: 2 - - id: ClothingMaskMuzzle +- type: entity + id: WardrobePrisonFilled + suffix: Filled + parent: WardrobePrison + description: "Contains a selection of nice orange clothes for people enjoying their stay in the brig." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobePrison + +- type: entity + id: ClosetWallWardrobePrisonFilled + suffix: Filled + parent: ClosetWallOrange + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobePrison + +- type: entityTable + id: FillWardrobePrison + table: !type:AllSelector + children: + - !type:AllSelector + rolls: 2 + children: + - id: ClothingUniformJumpsuitPrisoner + - id: ClothingUniformJumpskirtPrisoner + - id: ClothingShoesColorBlack + - id: ClothingMaskMuzzle + - !type:GroupSelector + prob: 0.15 + rolls: 2 + children: + - id: FoodSnackBoritos + - id: FoodSnackCheesie + - id: FoodSnackChips + - id: FoodSnackRaisins + - id: FoodSnackMREBrownie + - id: FoodSnackChocolate + - id: FoodSnackChowMein + - !type:GroupSelector + prob: 0.25 + children: + - id: BookRandomStory + - id: BookRandom + - !type:GroupSelector + prob: 0.15 + children: + - id: Flare + - id: BarberScissors + - id: FlippoLighter + - id: trayScanner + - id: Wristwatch + - id: ClothingNeckBling + - id: ClothingMultipleHeadphones + - id: DiceBag + - id: PersonalAI + - id: CrayonBox + - id: HarmonicaInstrument + - id: ToyAmongPequeno + - id: WhoopieCushion + - id: Brutepack + - id: StrangePill + - id: Shiv + - !type:GroupSelector + prob: 0.1 + children: + - id: CigPackBlack + - id: Joint + - id: Blunt + - id: PackPaperRolling + - id: Cigarette + amount: !type:RangeNumberSelector + range: 1, 4 + - id: GroundCannabis + amount: !type:RangeNumberSelector + range: 1, 6 #- type: entity # id: WardrobePajamaFilled @@ -20,202 +85,304 @@ # parent: WardrobeWhite # name: pajama wardrobe - - type: entity - id: WardrobeRoboticsFilled - suffix: Filled - parent: WardrobeRobotics - description: "You can build a robot out of this locker." - components: - - type: StorageFill - contents: - - id: ClothingOuterCoatRobo - amount: 2 - - id: ClothingUniformJumpsuitRoboticist - - id: ClothingUniformJumpskirtRoboticist - - id: ClothingShoesColorBlack - amount: 2 - - id: ClothingHandsGlovesFingerless - amount: 2 - - - type: entity - id: WardrobeChemistryFilled - suffix: Filled - parent: WardrobeChemistry - description: "The sleek orange threads contained within make you much less likely to be thrown out of the chemistry lab." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitChemistry - - id: ClothingBackpackChemistry - - id: ClothingShoesColorWhite - - id: ClothingOuterCoatLabChem - - id: ClothingUniformJumpskirtChemistry - - - type: entity - id: WardrobeGeneticsFilled - suffix: Filled - parent: WardrobeGenetics - description: "The sleek blue threads contained within make you much less likely to be thrown out of the genetics lab." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitGenetics - - id: ClothingBackpackGenetics - - id: ClothingShoesColorWhite - - id: ClothingOuterCoatLabGene - - id: ClothingUniformJumpskirtGenetics - - - type: entity - id: WardrobeVirologyFilled - suffix: Filled - parent: WardrobeVirology - description: "The sleek green threads contained within make you much less likely to be thrown out of the virology lab." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitVirology - - id: ClothingBackpackVirology - - id: ClothingShoesColorWhite - - id: ClothingOuterCoatLabViro - - id: ClothingUniformJumpskirtVirology - - - type: entity - id: WardrobeScienceFilled - suffix: Filled - parent: WardrobeScience - description: "You've read a couple pop science articles, now it's time for the real deal." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitScientist - - id: ClothingBackpackScience - - id: ClothingShoesColorWhite - - id: ClothingOuterCoatRnd - - id: ClothingUniformJumpskirtScientist - - id: ClothingEyesGlasses - prob: 0.5 - - id: CrowbarRed #The jojoke - hit video game Half-Life - prob: 0.1 - - - - type: entity - id: WardrobeBotanistFilled - suffix: Filled - parent: WardrobeBotanist - description: "Plant yourself among the plant men with these 100% natural plant-derived clothes." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitHydroponics - - id: ClothingBackpackHydroponics - - id: ClothingShoesColorBrown - - id: ClothingOuterApronBotanist - - id: ClothingUniformJumpskirtHydroponics - - id: ClothingUniformOveralls - - id: ClothingHeadHatTrucker #the hat itself is a subtle joke - prob: 0.15 - - id: ClothingHandsGlovesLeather - prob: 0.5 - - - type: entity - id: WardrobeMedicalDoctorFilled - suffix: Filled - parent: WardrobeMedicalDoctor - description: "We've all played doctor before, now practice medicine." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitMedicalDoctor - - id: ClothingBackpackMedical - - id: ClothingShoesColorWhite - - id: ClothingOuterCoatLab - - id: ClothingUniformJumpskirtMedicalDoctor - - id: ClothingHandsGlovesLatex - prob: 0.4 - - id: ClothingEyesGlasses - prob: 0.3 - - - type: entity - id: WardrobeChapelFilled - suffix: Filled - parent: WardrobeChapel - description: "You have to look presentable for your flock." - components: - - type: StorageFill - contents: # todo chaplain backpack - - id: ClothingUniformJumpsuitChaplain - - id: ClothingShoesColorBlack - - id: ClothingUniformJumpskirtChaplain - - - type: entity - id: WardrobeSecurityFilled - suffix: Filled - parent: WardrobeSecurity - description: "Cross the thin red line." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitSec - - id: ClothingBackpackSecurity - - id: ClothingShoesBootsJack - - id: ClothingEyesGlassesSunglasses - - id: ClothingHeadHelmetBasic - - id: ClothingOuterArmorBasic - - id: ClothingUniformJumpskirtSec - - - type: entity - id: WardrobeCargoFilled - suffix: Filled - parent: WardrobeCargo - description: "This locker? Maybe 500 spesos. Brotherhood? Priceless." - components: - - type: StorageFill - contents: - - id: ClothingHeadHatCargosoft - - id: ClothingUniformJumpsuitCargo - - id: ClothingBackpack - - id: ClothingShoesColorBlack - - id: ClothingUniformJumpskirtCargo - - id: ClothingHandsGlovesFingerless - - id: AppraisalTool - - - type: entity - id: WardrobeSalvageFilled - suffix: Filled - parent: WardrobeSalvage - components: - - type: StorageFill - contents: - - id: ClothingBackpack - - id: ClothingShoesBootsSalvage - amount: 2 - - id: ClothingUniformJumpsuitSalvageSpecialist - amount: 2 - - - type: entity - id: WardrobeAtmosphericsFilled - suffix: Filled - parent: WardrobeAtmospherics - description: "This locker contains a uniform for atmospheric technicians." - components: - - type: StorageFill - contents: - - id: ClothingUniformJumpsuitAtmos - - id: ClothingBackpackEngineering - - id: ClothingShoesColorWhite - - id: ClothingUniformJumpskirtAtmos - - - type: entity - id: WardrobeEngineeringFilled - suffix: Filled - parent: WardrobeEngineering - description: "This locker contains a uniform for engineering or social engineering." - components: - - type: StorageFill - contents: - - id: ClothingHeadHatHardhatYellow - - id: ClothingUniformJumpsuitEngineering - - id: ClothingBackpackEngineering - - id: ClothingShoesBootsWork - - id: ClothingOuterVestHazard - - id: ClothingUniformJumpskirtEngineering +- type: entity + id: WardrobeRoboticsFilled + suffix: Filled + parent: WardrobeRobotics + description: "You can build a robot out of this locker." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeRobotics + +- type: entityTable + id: FillWardrobeRobotics + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitRoboticist + - id: ClothingUniformJumpskirtRoboticist + - !type:AllSelector + rolls: 2 + children: + - id: ClothingOuterCoatRobo + - id: ClothingShoesColorBlack + - id: ClothingHandsGlovesFingerless + +- type: entity + id: WardrobeChemistryFilled + suffix: Filled + parent: WardrobeChemistry + description: "The sleek orange threads contained within make you much less likely to be thrown out of the chemistry lab." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeChemistry + +- type: entityTable + id: FillWardrobeChemistry + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitChemistry + - id: ClothingBackpackChemistry + - id: ClothingShoesColorWhite + - id: ClothingOuterCoatLabChem + - id: ClothingUniformJumpskirtChemistry + +- type: entity + id: WardrobeGeneticsFilled + suffix: Filled + parent: WardrobeGenetics + description: "The sleek blue threads contained within make you much less likely to be thrown out of the genetics lab." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeGenetics + +- type: entityTable + id: FillWardrobeGenetics + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitGenetics + - id: ClothingBackpackGenetics + - id: ClothingShoesColorWhite + - id: ClothingOuterCoatLabGene + - id: ClothingUniformJumpskirtGenetics + +- type: entity + id: WardrobeVirologyFilled + suffix: Filled + parent: WardrobeVirology + description: "The sleek green threads contained within make you much less likely to be thrown out of the virology lab." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeVirology + +- type: entityTable + id: FillWardrobeVirology + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitVirology + - id: ClothingBackpackVirology + - id: ClothingShoesColorWhite + - id: ClothingOuterCoatLabViro + - id: ClothingUniformJumpskirtVirology + +- type: entity + id: WardrobeScienceFilled + suffix: Filled + parent: WardrobeScience + description: "You've read a couple pop science articles, now it's time for the real deal." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeScience + +- type: entityTable + id: FillWardrobeScience + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitScientist + - id: ClothingBackpackScience + - id: ClothingShoesColorWhite + - id: ClothingOuterCoatRnd + - id: ClothingUniformJumpskirtScientist + - id: ClothingEyesGlasses + prob: 0.5 + - id: CrowbarRed #The jojoke - hit video game Half-Life + prob: 0.1 + +- type: entity + id: WardrobeBotanistFilled + suffix: Filled + parent: WardrobeBotanist + description: "Plant yourself among the plant men with these 100% natural plant-derived clothes." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeBotanist + +- type: entityTable + id: FillWardrobeBotanist + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitHydroponics + - id: ClothingBackpackHydroponics + - id: ClothingShoesColorBrown + - id: ClothingOuterApronBotanist + - id: ClothingUniformJumpskirtHydroponics + - id: ClothingUniformOveralls + - id: ClothingHeadHatTrucker #the hat itself is a subtle joke + prob: 0.15 + - id: ClothingHandsGlovesLeather + prob: 0.5 + +- type: entity + id: WardrobeMedicalDoctorFilled + suffix: Filled + parent: WardrobeMedicalDoctor + description: "We've all played doctor before, now practice medicine." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeMedicalDoctor + +- type: entityTable + id: FillWardrobeMedicalDoctor + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitMedicalDoctor + - id: ClothingBackpackMedical + - id: ClothingShoesColorWhite + - id: ClothingOuterCoatLab + - id: ClothingUniformJumpskirtMedicalDoctor + - id: ClothingHandsGlovesLatex + prob: 0.4 + - id: ClothingEyesGlasses + prob: 0.3 + +- type: entity + id: WardrobeChapelFilled + suffix: Filled + parent: WardrobeChapel + description: "You have to look presentable for your flock." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeChapel + +- type: entityTable + id: FillWardrobeChapel + table: !type:AllSelector + children: + # todo chaplain backpack + - id: ClothingUniformJumpsuitChaplain + - id: ClothingShoesColorBlack + - id: ClothingUniformJumpskirtChaplain + +- type: entity + id: WardrobeSecurityFilled + suffix: Filled + parent: WardrobeSecurity + description: "Cross the thin red line." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeSecurity + +- type: entityTable + id: FillWardrobeSecurity + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitSec + - id: ClothingBackpackSecurity + - id: ClothingShoesBootsJack + - id: ClothingEyesGlassesSunglasses + - id: ClothingHeadHelmetBasic + - id: ClothingOuterArmorBasic + - id: ClothingUniformJumpskirtSec + +- type: entity + id: WardrobeCargoFilled + suffix: Filled + parent: WardrobeCargo + description: "This locker? Maybe 500 spesos. Brotherhood? Priceless." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeCargo + +- type: entityTable + id: FillWardrobeCargo + table: !type:AllSelector + children: + - id: ClothingHeadHatCargosoft + - id: ClothingUniformJumpsuitCargo + - id: ClothingBackpack + - id: ClothingShoesColorBlack + - id: ClothingUniformJumpskirtCargo + - id: ClothingHandsGlovesFingerless + - id: AppraisalTool + +- type: entity + id: WardrobeSalvageFilled + suffix: Filled + parent: WardrobeSalvage + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeSalvage + +- type: entityTable + id: FillWardrobeSalvage + table: !type:AllSelector + children: + - id: ClothingBackpack + - id: ClothingShoesBootsSalvage + amount: 2 + - id: ClothingUniformJumpsuitSalvageSpecialist + amount: 2 + +- type: entity + id: WardrobeAtmosphericsFilled + suffix: Filled + parent: WardrobeAtmospherics + description: "This locker contains a uniform for atmospheric technicians." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeAtmospherics + +- type: entity + id: ClosetWallWardrobeAtmosphericsFilled + suffix: Filled + parent: ClosetWallAtmospherics + description: "This locker contains a uniform for atmospheric technicians." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeAtmospherics + +- type: entityTable + id: FillWardrobeAtmospherics + table: !type:AllSelector + children: + - id: ClothingUniformJumpsuitAtmos + - id: ClothingBackpackEngineering + - id: ClothingShoesColorWhite + - id: ClothingUniformJumpskirtAtmos + +- type: entity + id: WardrobeEngineeringFilled + suffix: Filled + parent: WardrobeEngineering + description: "This locker contains a uniform for engineering or social engineering." + components: + - type: EntityTableContainerFill + containers: + entity_storage: !type:NestedSelector + tableId: FillWardrobeEngineering + +- type: entityTable + id: FillWardrobeEngineering + table: !type:AllSelector + children: + - id: ClothingHeadHatHardhatYellow + - id: ClothingUniformJumpsuitEngineering + - id: ClothingBackpackEngineering + - id: ClothingShoesBootsWork + - id: ClothingOuterVestHazard + - id: ClothingUniformJumpskirtEngineering -- 2.52.0