From 2da53d97e5f39d67018b8f6778478846b345efa4 Mon Sep 17 00:00:00 2001 From: MilenVolf <63782763+MilenVolf@users.noreply.github.com> Date: Sat, 20 Apr 2024 09:26:00 +0300 Subject: [PATCH] Windoors now contain proper electronics (#27133) * Windoors now contain proper electronics * weh --- .../Devices/Electronics/door_access.yml | 220 +++++++++--------- .../Structures/Doors/Airlocks/access.yml | 8 +- .../Doors/Windoors/base_structurewindoors.yml | 3 +- .../Structures/Doors/Windoors/windoor.yml | 215 ++++++++++------- 4 files changed, 249 insertions(+), 197 deletions(-) diff --git a/Resources/Prototypes/Entities/Objects/Devices/Electronics/door_access.yml b/Resources/Prototypes/Entities/Objects/Devices/Electronics/door_access.yml index 8b1826857d..bb2f481644 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/Electronics/door_access.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/Electronics/door_access.yml @@ -1,51 +1,44 @@ - +# Command - type: entity parent: DoorElectronics - id: DoorElectronicsService - suffix: Service, Locked - components: - - type: AccessReader - access: [["Service"]] - -- type: entity - parent: DoorElectronics - id: DoorElectronicsTheatre - suffix: Theatre, Locked + id: DoorElectronicsCaptain + suffix: Captain, Locked components: - type: AccessReader - access: [["Theatre"]] + access: [["Captain"]] - type: entity parent: DoorElectronics - id: DoorElectronicsChapel - suffix: Chapel, Locked + id: DoorElectronicsHeadOfPersonnel + suffix: HeadOfPersonnel, Locked components: - type: AccessReader - access: [["Chapel"]] + access: [["HeadOfPersonnel"]] - type: entity parent: DoorElectronics - id: DoorElectronicsJanitor - suffix: Janitor, Locked + id: DoorElectronicsCommand + suffix: Command, Locked components: - type: AccessReader - access: [["Janitor"]] + access: [["Command"]] +# Service - type: entity parent: DoorElectronics - id: DoorElectronicsKitchen - suffix: Kitchen, Locked + id: DoorElectronicsBar + suffix: Bar, Locked components: - type: AccessReader - access: [["Kitchen"]] + access: [["Bar"]] - type: entity parent: DoorElectronics - id: DoorElectronicsBar + id: DoorElectronicsBarKitchen suffix: Bar, Locked components: - type: AccessReader - access: [["Bar"]] + access: [["Bar"], ["Kitchen"]] - type: entity parent: DoorElectronics @@ -57,132 +50,136 @@ - type: entity parent: DoorElectronics - id: DoorElectronicsLawyer - suffix: Lawyer, Locked + id: DoorElectronicsChapel + suffix: Chapel, Locked components: - type: AccessReader - access: [["Lawyer"]] + access: [["Chapel"]] - type: entity parent: DoorElectronics - id: DoorElectronicsCaptain - suffix: Captain, Locked + id: DoorElectronicsTheatre + suffix: Theatre, Locked components: - type: AccessReader - access: [["Captain"]] + access: [["Theatre"]] - type: entity parent: DoorElectronics - id: DoorElectronicsExternal - suffix: External, Locked + id: DoorElectronicsKitchen + suffix: Kitchen, Locked components: - type: AccessReader - access: [["External"]] + access: [["Kitchen"]] - type: entity parent: DoorElectronics - id: DoorElectronicsCargo - suffix: Cargo, Locked + id: DoorElectronicsKitchenHydroponics + suffix: Kitchen/Hydroponics, Locked components: - type: AccessReader - access: [["Cargo"]] + access: [["Kitchen"], ["Hydroponics"]] - type: entity parent: DoorElectronics - id: DoorElectronicsEngineering - suffix: Engineering, Locked + id: DoorElectronicsJanitor + suffix: Janitor, Locked components: - type: AccessReader - access: [["Engineering"]] + access: [["Janitor"]] - type: entity parent: DoorElectronics - id: DoorElectronicsAtmospherics - suffix: Atmospherics, Locked + id: DoorElectronicsLawyer + suffix: Lawyer, Locked components: - type: AccessReader - access: [["Atmospherics"]] + access: [["Lawyer"]] - type: entity parent: DoorElectronics - id: DoorElectronicsFreezer - suffix: Freezer, Locked + id: DoorElectronicsService + suffix: Service, Locked components: - type: AccessReader - access: [["Kitchen"], ["Hydroponics"]] + access: [["Service"]] +# Cargo - type: entity parent: DoorElectronics - id: DoorElectronicsSalvage - suffix: Salvage, Locked + id: DoorElectronicsQuartermaster + suffix: Quartermaster, Locked components: - type: AccessReader - access: [["Salvage"]] + access: [["Quartermaster"]] - type: entity parent: DoorElectronics - id: DoorElectronicsMedical - suffix: Medical, Locked + id: DoorElectronicsSalvage + suffix: Salvage, Locked components: - type: AccessReader - access: [["Medical"]] + access: [["Salvage"]] - type: entity parent: DoorElectronics - id: DoorElectronicsChemistry - suffix: Chemistry, Locked + id: DoorElectronicsCargo + suffix: Cargo, Locked components: - type: AccessReader - access: [["Chemistry"]] + access: [["Cargo"]] +# Engineering - type: entity parent: DoorElectronics - id: DoorElectronicsResearch - suffix: Research, Locked + id: DoorElectronicsChiefEngineer + suffix: ChiefEngineer, Locked components: - type: AccessReader - access: [["Research"]] + access: [["ChiefEngineer"]] - type: entity parent: DoorElectronics - id: DoorElectronicsScience - suffix: Science, Locked + id: DoorElectronicsAtmospherics + suffix: Atmospherics, Locked components: - type: AccessReader - access: [["Research"], ["Medical"]] + access: [["Atmospherics"]] - type: entity parent: DoorElectronics - id: DoorElectronicsCommand - suffix: Command, Locked + id: DoorElectronicsEngineering + suffix: Engineering, Locked components: - type: AccessReader - access: [["Command"]] + access: [["Engineering"]] +# Science - type: entity parent: DoorElectronics - id: DoorElectronicsCentralCommand - suffix: CentralCommand, Locked + id: DoorElectronicsResearchDirector + suffix: ResearchDirector, Locked components: - type: AccessReader - access: [["CentralCommand"]] + access: [["ResearchDirector"]] - type: entity parent: DoorElectronics - id: DoorElectronicsChiefMedicalOfficer - suffix: ChiefMedicalOfficer, Locked + id: DoorElectronicsMedicalResearch + suffix: Medical/Science, Locked components: - type: AccessReader - access: [["ChiefMedicalOfficer"]] + access: [["Research"], ["Medical"]] - type: entity parent: DoorElectronics - id: DoorElectronicsChiefEngineer - suffix: ChiefEngineer, Locked + id: DoorElectronicsResearch + suffix: Research, Locked components: - type: AccessReader - access: [["ChiefEngineer"]] + access: [["Research"]] +# Security - type: entity parent: DoorElectronics id: DoorElectronicsHeadOfSecurity @@ -193,27 +190,19 @@ - type: entity parent: DoorElectronics - id: DoorElectronicsResearchDirector - suffix: ResearchDirector, Locked - components: - - type: AccessReader - access: [["ResearchDirector"]] - -- type: entity - parent: DoorElectronics - id: DoorElectronicsHeadOfPersonnel - suffix: HeadOfPersonnel, Locked + id: DoorElectronicsArmory + suffix: Armory, Locked components: - type: AccessReader - access: [["HeadOfPersonnel"]] + access: [["Armory"]] - type: entity parent: DoorElectronics - id: DoorElectronicsQuartermaster - suffix: Quartermaster, Locked + id: DoorElectronicsDetective + suffix: Detective, Locked components: - type: AccessReader - access: [["Quartermaster"]] + access: [["Detective"]] - type: entity parent: DoorElectronics @@ -233,43 +222,45 @@ - type: entity parent: DoorElectronics - id: DoorElectronicsDetective - suffix: Detective, Locked + id: DoorElectronicsBrig + suffix: Brig, Locked components: - type: AccessReader - access: [["Detective"]] + access: [["Brig"]] +# Medical - type: entity parent: DoorElectronics - id: DoorElectronicsBrig - suffix: Brig, Locked + id: DoorElectronicsChiefMedicalOfficer + suffix: ChiefMedicalOfficer, Locked components: - type: AccessReader - access: [["Brig"]] + access: [["ChiefMedicalOfficer"]] - type: entity parent: DoorElectronics - id: DoorElectronicsArmory - suffix: Armory, Locked + id: DoorElectronicsChemistry + suffix: Chemistry, Locked components: - type: AccessReader - access: [["Armory"]] + access: [["Chemistry"]] - type: entity parent: DoorElectronics - id: DoorElectronicsVault - suffix: Vault, Locked + id: DoorElectronicsMedical + suffix: Medical, Locked components: - type: AccessReader - access: [["Security"], ["Command"]] + access: [["Medical"]] +# Syndicate - type: entity parent: DoorElectronics - id: DoorElectronicsMaintenance - suffix: Maintenance, Locked + id: DoorElectronicsNukeop + suffix: Nukeop, Locked components: - type: AccessReader - access: [["Maintenance"]] + access: [["NuclearOperative"]] - type: entity parent: DoorElectronics @@ -279,18 +270,35 @@ - type: AccessReader access: [["SyndicateAgent"]] +# Misc - type: entity parent: DoorElectronics - id: DoorElectronicsNukeop - suffix: Nukeop, Locked + id: DoorElectronicsCentralCommand + suffix: CentralCommand, Locked components: - type: AccessReader - access: [["NuclearOperative"]] + access: [["CentralCommand"]] - type: entity parent: DoorElectronics - id: DoorElectronicsRnDMed - suffix: Medical/Science, Locked + id: DoorElectronicsExternal + suffix: External, Locked components: - type: AccessReader - access: [["Research"], ["Medical"]] + access: [["External"]] + +- type: entity + parent: DoorElectronics + id: DoorElectronicsMaintenance + suffix: Maintenance, Locked + components: + - type: AccessReader + access: [["Maintenance"]] + +- type: entity + parent: DoorElectronics + id: DoorElectronicsVault + suffix: Vault, Locked + components: + - type: AccessReader + access: [["Security"], ["Command"]] diff --git a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml index 3cc202c6cb..5a337cb136 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/access.yml @@ -152,7 +152,7 @@ components: - type: ContainerFill containers: - board: [ DoorElectronicsFreezer ] + board: [ DoorElectronicsKitchenHydroponics ] - type: entity parent: AirlockFreezer @@ -251,7 +251,7 @@ components: - type: ContainerFill containers: - board: [ DoorElectronicsScience ] + board: [ DoorElectronicsMedicalResearch ] - type: entity parent: AirlockCentralCommand @@ -616,7 +616,7 @@ components: - type: ContainerFill containers: - board: [ DoorElectronicsScience ] + board: [ DoorElectronicsMedicalResearch ] - type: entity parent: AirlockCentralCommandGlass @@ -965,7 +965,7 @@ components: - type: ContainerFill containers: - board: [ DoorElectronicsRnDMed ] + board: [ DoorElectronicsMedicalResearch ] - type: entity parent: AirlockMaint diff --git a/Resources/Prototypes/Entities/Structures/Doors/Windoors/base_structurewindoors.yml b/Resources/Prototypes/Entities/Structures/Doors/Windoors/base_structurewindoors.yml index d58273edcc..a6515b52c6 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Windoors/base_structurewindoors.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Windoors/base_structurewindoors.yml @@ -93,10 +93,11 @@ max: 4 - !type:DoActsBehavior acts: [ "Destruction" ] - - type: AccessReader - type: ContainerFill containers: board: [ DoorElectronics ] + - type: AccessReader + containerAccessProvider: board - type: ContainerContainer containers: board: !type:Container diff --git a/Resources/Prototypes/Entities/Structures/Doors/Windoors/windoor.yml b/Resources/Prototypes/Entities/Structures/Doors/Windoors/windoor.yml index 55d1d351a6..fcc47bc2e3 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Windoors/windoor.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Windoors/windoor.yml @@ -48,88 +48,99 @@ id: WindoorBarLocked suffix: Bar, Locked components: - - type: AccessReader - access: [["Bar"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsBar ] - type: entity parent: Windoor id: WindoorBarKitchenLocked suffix: Bar&Kitchen, Locked components: - - type: AccessReader - access: [["Bar"], ["Kitchen"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsBarKitchen ] - type: entity parent: Windoor id: WindoorCargoLocked suffix: Cargo, Locked components: - - type: AccessReader - access: [["Cargo"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsCargo ] - type: entity parent: Windoor id: WindoorChapelLocked suffix: Chapel, Locked components: - - type: AccessReader - access: [["Chapel"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsChapel ] - type: entity parent: Windoor id: WindoorHydroponicsLocked suffix: Hydroponics, Locked components: - - type: AccessReader - access: [["Hydroponics"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsHydroponics ] - type: entity parent: Windoor id: WindoorJanitorLocked suffix: Janitor, Locked components: - - type: AccessReader - access: [["Janitor"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsJanitor ] - type: entity parent: WindoorPlasma id: PlasmaWindoorJanitorLocked suffix: Janitor, Locked, Plasma components: - - type: AccessReader - access: [["Janitor"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsJanitor ] - type: entity parent: Windoor id: WindoorKitchenLocked suffix: Kitchen, Locked components: - - type: AccessReader - access: [["Kitchen"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsKitchen ] - type: entity parent: Windoor id: WindoorKitchenHydroponicsLocked suffix: Kitchen&Hydroponics, Locked components: - - type: AccessReader - access: [["Kitchen"], ["Hydroponics"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsKitchenHydroponics ] - type: entity parent: Windoor id: WindoorServiceLocked suffix: Service, Locked components: - - type: AccessReader - access: [["Service"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsService ] - type: entity parent: Windoor id: WindoorTheatreLocked suffix: Theatre, Locked components: - - type: AccessReader - access: [["Theatre"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsTheatre ] # Secure @@ -138,253 +149,285 @@ id: WindoorSecureArmoryLocked suffix: Armory, Locked components: - - type: AccessReader - access: [["Armory"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsArmory ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureArmoryLocked suffix: Armory, Locked, Plasma components: - - type: AccessReader - access: [["Armory"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsArmory ] - type: entity parent: WindoorSecure id: WindoorSecureAtmosphericsLocked suffix: Atmospherics, Locked components: - - type: AccessReader - access: [["Atmospherics"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsAtmospherics ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureAtmosphericsLocked suffix: Atmospherics, Locked, Plasma components: - - type: AccessReader - access: [["Atmospherics"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsAtmospherics ] - type: entity parent: WindoorSecure id: WindoorSecureBarLocked suffix: Bar, Locked components: - - type: AccessReader - access: [["Bar"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsBar ] - type: entity parent: WindoorSecureSecurityLocked id: WindoorSecureBrigLocked suffix: Brig, Locked components: - - type: AccessReader - access: [["Brig"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsBrig ] - type: entity parent: WindoorSecure id: WindoorSecureCargoLocked suffix: Cargo, Locked components: - - type: AccessReader - access: [["Cargo"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsCargo ] - type: entity parent: WindoorSecure id: WindoorSecureChapelLocked suffix: Chapel, Locked components: - - type: AccessReader - access: [["Chapel"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsChapel ] - type: entity parent: WindoorSecure id: WindoorSecureChemistryLocked suffix: Chemistry, Locked components: - - type: AccessReader - access: [["Chemistry"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsChemistry ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureChemistryLocked suffix: Chemistry, Locked, Plasma components: - - type: AccessReader - access: [["Chemistry"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsChemistry ] - type: entity parent: WindoorSecure id: WindoorSecureCentralCommandLocked suffix: Central Command, Locked components: - - type: AccessReader - access: [["CentralCommand"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsCentralCommand ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureCentralCommandLocked suffix: Central Command, Locked, Plasma components: - - type: AccessReader - access: [["CentralCommand"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsCentralCommand ] - type: entity parent: WindoorSecureUranium id: UraniumWindoorSecureCentralCommandLocked suffix: Central Command, Locked, Uranium components: - - type: AccessReader - access: [["CentralCommand"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsCentralCommand ] - type: entity parent: WindoorSecure id: WindoorSecureCommandLocked suffix: Command, Locked components: - - type: AccessReader - access: [["Command"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsCommand ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureCommandLocked suffix: Command, Locked, Plasma components: - - type: AccessReader - access: [["Command"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsCommand ] - type: entity parent: WindoorSecure id: WindoorSecureDetectiveLocked suffix: Detective, Locked components: - - type: AccessReader - access: [["Detective"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsDetective ] - type: entity parent: WindoorSecure id: WindoorSecureEngineeringLocked suffix: Engineering, Locked components: - - type: AccessReader - access: [["Engineering"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsEngineering ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureEngineeringLocked suffix: Engineering, Locked, Plasma components: - - type: AccessReader - access: [["Engineering"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsEngineering ] - type: entity parent: WindoorSecureUranium id: UraniumWindoorSecureEngineeringLocked suffix: Engineering, Locked, Uranium components: - - type: AccessReader - access: [["Engineering"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsEngineering ] - type: entity parent: WindoorSecure id: WindoorSecureExternalLocked suffix: External, Locked components: - - type: AccessReader - access: [["External"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsExternal ] - type: entity parent: WindoorSecure id: WindoorSecureJanitorLocked suffix: Janitor, Locked components: - - type: AccessReader - access: [["Janitor"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsJanitor ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureJanitorLocked suffix: Janitor, Locked, Plasma components: - - type: AccessReader - access: [["Janitor"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsJanitor ] - type: entity parent: WindoorSecure id: WindoorSecureKitchenLocked suffix: Kitchen, Locked components: - - type: AccessReader - access: [["Kitchen"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsKitchen ] - type: entity parent: WindoorSecureSecurityLocked id: WindoorSecureSecurityLawyerLocked suffix: Security/Lawyer, Locked components: - - type: AccessReader - access: [["Security"], ["Lawyer"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsSecurityLawyer ] - type: entity parent: WindoorSecure id: WindoorSecureMedicalLocked suffix: Medical, Locked components: - - type: AccessReader - access: [["Medical"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsMedical ] - type: entity parent: WindoorSecure id: WindoorSecureSalvageLocked suffix: Salvage, Locked components: - - type: AccessReader - access: [["Salvage"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsSalvage ] - type: entity parent: WindoorSecure id: WindoorSecureSecurityLocked suffix: Security, Locked components: - - type: AccessReader - access: [["Security"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsSecurity ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureSecurityLocked suffix: Security, Locked, Plasma components: - - type: AccessReader - access: [["Security"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsSecurity ] - type: entity parent: WindoorSecure id: WindoorSecureScienceLocked suffix: Science, Locked components: - - type: AccessReader - access: [["Research"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsResearch ] - type: entity parent: WindoorSecurePlasma id: PlasmaWindoorSecureScienceLocked suffix: Science, Locked, Plasma components: - - type: AccessReader - access: [["Research"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsResearch ] - type: entity parent: WindoorSecure id: WindoorSecureServiceLocked suffix: Service, Locked components: - - type: AccessReader - access: [["Service"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsService ] - type: entity parent: WindoorSecure id: WindoorSecureHeadOfPersonnelLocked suffix: HeadOfPersonnel, Locked components: - - type: AccessReader - access: [["HeadOfPersonnel"]] + - type: ContainerFill + containers: + board: [ DoorElectronicsHeadOfPersonnel ] -- 2.52.0