From 87f39af1cfa25c067e59b5e4eed647aa4ece843f Mon Sep 17 00:00:00 2001 From: ScarKy0 <106310278+ScarKy0@users.noreply.github.com> Date: Wed, 18 Dec 2024 12:38:00 +0100 Subject: [PATCH] Holopad prototypes for mapping (#33931) * Init * fix * Atmosn't * ID fixes * locale --- Resources/Locale/en-US/holopad/holopad.ftl | 107 ++- .../Entities/Structures/Machines/holopad.yml | 680 +++++++++++++++++- 2 files changed, 781 insertions(+), 6 deletions(-) diff --git a/Resources/Locale/en-US/holopad/holopad.ftl b/Resources/Locale/en-US/holopad/holopad.ftl index 01a1e13dcb..214919d3dd 100644 --- a/Resources/Locale/en-US/holopad/holopad.ftl +++ b/Resources/Locale/en-US/holopad/holopad.ftl @@ -37,4 +37,109 @@ holopad-window-flavor-right = v3.0.9 holopad-hologram-name = hologram of {THE($name)} # Holopad actions -activate-holopad-projector-verb = Activate holopad projector \ No newline at end of file +activate-holopad-projector-verb = Activate holopad projector + +# Mapping prototypes +# General +holopad-general-tools = General - Tools +holopad-general-cryosleep = General - Cryosleep +holopad-general-theater = General - Theater +holopad-general-disposals = General - Disposals +holopad-general-eva = General - EVA Storage +holopad-general-lounge = General - Lounge +holopad-general-arcade = General - Arcade +holopad-general-evac = General - Evac +holopad-general-arrivals = General - Arrivals + +# Command +holopad-command-bridge = Command - Bridge +holopad-command-vault = Command - Vault +holopad-command-bridge-hallway = Command - Bridge Hallway +holopad-command-meeting-room = Command - Meeting Room +holopad-command-lounge = Command - Lounge +holopad-command-captain = Command - Captain +holopad-command-hop = Command - HoP +holopad-command-cmo = Command - CMO +holopad-command-qm = Command - QM +holopad-command-ce = Command - CE +holopad-command-rd = Command - RD +holopad-command-hos = Command - HoS + +# Science +holopad-science-anomaly = Science - Anomaly +holopad-science-artifact = Science - Artifact +holopad-science-robotics = Science - Robotics +holopad-science-rnd = Science - R&D +holopad-science-front = Science - Front +holopad-science-breakroom = Science - Breakroom + +# Medical +holopad-medical-medbay = Medical - Medbay +holopad-medical-chemistry = Medical - Chemistry +holopad-medical-cryopods = Medical - Cryopods +holopad-medical-morgue = Medical - Morgue +holopad-medical-surgery = Medical - Surgery +holopad-medical-paramedic = Medical - Paramedic +holopad-medical-virology = Medical - Virology +holopad-medical-front = Medical - Front +holopad-medical-breakroom = Medical - Breakroom + +# Cargo +holopad-cargo-front = Cargo - Front +holopad-cargo-bay = Cargo - Cargo Bay +holopad-cargo-salvage-bay = Cargo - Salvage Bay +holopad-cargo-breakroom = Cargo - Breakroom +holopad-cargo-ats = Cargo - ATS +holopad-cargo-shuttle = Cargo - Shuttle + +# Engineering +holopad-engineering-atmos-front = Atmos - Front +holopad-engineering-atmos-main = Atmos - Main +holopad-engineering-atmos-teg = Atmos - TEG +holopad-engineering-storage = Engineering - Storage +holopad-engineering-breakroom = Engineering - Breakroom +holopad-engineering-front = Engineering - Front +holopad-engineering-telecoms = Engineering - Telecoms +holopad-engineering-tech-vault = Engineering - Tech Vault + +# Security +holopad-security-front = Security - Front +holopad-security-brig = Security - Brig +holopad-security-warden = Security - Warden +holopad-security-interrogation = Security - Interrogation +holopad-security-breakroom = Security - Breakroom +holopad-security-detective = Security - Detective +holopad-security-perma = Security - Perma +holopad-security-courtroom = Security - Courtroom +holopad-security-lawyer = Security - Lawyer +holopad-security-armory = Security - Armory + +# Service +holopad-service-janitor = Service - Janitor +holopad-service-bar = Service - Bar +holopad-service-kitchen = Service - Kitchen +holopad-service-botany = Service - Botany +holopad-service-chapel = Service - Chapel +holopad-service-library = Service - Library +holopad-service-newsroom = Service - Newsroom +holopad-service-zookeeper = Service - Zookeeper +holopad-service-boxer = Service - Boxer +holopad-service-clown = Service - Clown +holopad-service-musician = Service - Musician +holopad-service-mime = Service - Mime +holopad-service-clown-mime = Service - Clown/Mime + +# AI +holopad-ai-core = AI - Core +holopad-ai-main = AI - Main +holopad-ai-upload = AI - Upload +holopad-ai-backup-power = AI - Backup Power +holopad-ai-entrance = AI - Entrance +holopad-ai-chute = AI - Chute + +# Long Range +holopad-station-bridge = Station - Bridge +holopad-station-cargo-bay = Station - Cargo Bay + +# CentComm +holopad-centcomm-evac = CentComm - Evacuation Shuttle \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Machines/holopad.yml b/Resources/Prototypes/Entities/Structures/Machines/holopad.yml index f59120fd4b..dc0106c7e9 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/holopad.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/holopad.yml @@ -90,7 +90,7 @@ - type: WiresVisuals - type: Wires boardName: wires-board-name-holopad - layoutId: Holopad + layoutId: Holopad - type: Destructible thresholds: - trigger: @@ -104,7 +104,7 @@ node: machineFrame - !type:DoActsBehavior acts: ["Destruction"] - + - type: entity name: long-range holopad description: "A floor-mounted device for projecting holographic images to other devices that are far away." @@ -114,7 +114,7 @@ components: - type: Telephone transmissionRange: Long - + - type: entity name: quantum entangling holopad description: "An experimental floor-mounted device for projecting holographic images at extreme distances." @@ -131,7 +131,7 @@ - type: entity id: HolopadHologram categories: [ HideSpawnMenu ] - suffix: DO NOT MAP + suffix: DO NOT MAP components: - type: Transform anchored: true @@ -155,4 +155,674 @@ scrollRate: 0.125 - type: Tag tags: - - HideContextMenu \ No newline at end of file + - HideContextMenu + +## Mapping prototypes +# General +- type: entity + parent: Holopad + id: HolopadGeneralTools + suffix: Tools + components: + - type: Label + currentLabel: holopad-general-tools + +- type: entity + parent: Holopad + id: HolopadGeneralCryosleep + suffix: Cryosleep + components: + - type: Label + currentLabel: holopad-general-cryosleep + +- type: entity + parent: Holopad + id: HolopadGeneralTheater + suffix: Theater + components: + - type: Label + currentLabel: holopad-general-theater + +- type: entity + parent: Holopad + id: HolopadGeneralDisposals + suffix: Disposals + components: + - type: Label + currentLabel: holopad-general-disposals + +- type: entity + parent: Holopad + id: HolopadGeneralEVAStorage + suffix: EVA Storage + components: + - type: Label + currentLabel: holopad-general-eva + +- type: entity + parent: Holopad + id: HolopadGeneralLounge + suffix: Lounge + components: + - type: Label + currentLabel: holopad-general-lounge + +- type: entity + parent: Holopad + id: HolopadGeneralArcade + suffix: Arcade + components: + - type: Label + currentLabel: holopad-general-arcade + +- type: entity + parent: Holopad + id: HolopadGeneralEvac + suffix: Evac + components: + - type: Label + currentLabel: holopad-general-evac + +- type: entity + parent: Holopad + id: HolopadGeneralArrivals + suffix: Arrivals + components: + - type: Label + currentLabel: holopad-general-arrivals + +# Command +- type: entity + parent: Holopad + id: HolopadCommandBridge + suffix: Bridge + components: + - type: Label + currentLabel: holopad-command-bridge + +- type: entity + parent: Holopad + id: HolopadCommandVault + suffix: Vault + components: + - type: Label + currentLabel: holopad-command-vault + +- type: entity + parent: Holopad + id: HolopadCommandBridgeHallway + suffix: Bridge Hallway + components: + - type: Label + currentLabel: holopad-command-bridge-hallway + +- type: entity + parent: Holopad + id: HolopadCommandMeetingRoom + suffix: Command Meeting + components: + - type: Label + currentLabel: holopad-command-meeting-room + +- type: entity + parent: Holopad + id: HolopadCommandLounge + suffix: Command Lounge + components: + - type: Label + currentLabel: holopad-command-lounge + +- type: entity + parent: Holopad + id: HolopadCommandCaptain + suffix: Captain + components: + - type: Label + currentLabel: holopad-command-captain + +- type: entity + parent: Holopad + id: HolopadCommandHop + suffix: HoP + components: + - type: Label + currentLabel: holopad-command-hop + +- type: entity + parent: Holopad + id: HolopadCommandCmo + suffix: CMO + components: + - type: Label + currentLabel: holopad-command-cmo + +- type: entity + parent: Holopad + id: HolopadCommandQm + suffix: QM + components: + - type: Label + currentLabel: holopad-command-qm + +- type: entity + parent: Holopad + id: HolopadCommandCe + suffix: CE + components: + - type: Label + currentLabel: holopad-command-ce + +- type: entity + parent: Holopad + id: HolopadCommandRd + suffix: RD + components: + - type: Label + currentLabel: holopad-command-rd + +- type: entity + parent: Holopad + id: HolopadCommandHos + suffix: HoS + components: + - type: Label + currentLabel: holopad-command-hos + +# Science +- type: entity + parent: Holopad + id: HolopadScienceAnomaly + suffix: Anomaly + components: + - type: Label + currentLabel: holopad-science-anomaly + +- type: entity + parent: Holopad + id: HolopadScienceArtifact + suffix: Artifact + components: + - type: Label + currentLabel: holopad-science-artifact + +- type: entity + parent: Holopad + id: HolopadScienceRobotics + suffix: Robotics + components: + - type: Label + currentLabel: holopad-science-robotics + +- type: entity + parent: Holopad + id: HolopadScienceRnd + suffix: R&D + components: + - type: Label + currentLabel: holopad-science-rnd + +- type: entity + parent: Holopad + id: HolopadScienceFront + suffix: Sci Front + components: + - type: Label + currentLabel: holopad-science-front + +- type: entity + parent: Holopad + id: HolopadScienceBreakroom + suffix: Sci Breakroom + components: + - type: Label + currentLabel: holopad-science-breakroom + +# Medical +- type: entity + parent: Holopad + id: HolopadMedicalMedbay + suffix: Medbay + components: + - type: Label + currentLabel: holopad-medical-medbay + +- type: entity + parent: Holopad + id: HolopadMedicalChemistry + suffix: Chemistry + components: + - type: Label + currentLabel: holopad-medical-chemistry + +- type: entity + parent: Holopad + id: HolopadMedicalCryopods + suffix: Cryopods + components: + - type: Label + currentLabel: holopad-medical-cryopods + +- type: entity + parent: Holopad + id: HolopadMedicalMorgue + suffix: Morgue + components: + - type: Label + currentLabel: holopad-medical-morgue + +- type: entity + parent: Holopad + id: HolopadMedicalSurgery + suffix: Surgery + components: + - type: Label + currentLabel: holopad-medical-surgery + +- type: entity + parent: Holopad + id: HolopadMedicalParamed + suffix: Paramedic + components: + - type: Label + currentLabel: holopad-medical-paramedic + +- type: entity + parent: Holopad + id: HolopadMedicalVirology + suffix: Virology + components: + - type: Label + currentLabel: holopad-medical-virology + +- type: entity + parent: Holopad + id: HolopadMedicalFront + suffix: Med Front + components: + - type: Label + currentLabel: holopad-medical-front + +- type: entity + parent: Holopad + id: HolopadMedicalBreakroom + suffix: Med Breakroom + components: + - type: Label + currentLabel: holopad-medical-breakroom + +# Cargo +- type: entity + parent: Holopad + id: HolopadCargoFront + suffix: Cargo Front + components: + - type: Label + currentLabel: holopad-cargo-front + +- type: entity + parent: Holopad + id: HolopadCargoBay + suffix: Cargo Bay + components: + - type: Label + currentLabel: holopad-cargo-bay + +- type: entity + parent: Holopad + id: HolopadCargoSalvageBay + suffix: Salvage Bay + components: + - type: Label + currentLabel: holopad-cargo-salvage-bay + +- type: entity + parent: Holopad + id: HolopadCargoBreakroom + suffix: Cargo Breakroom + components: + - type: Label + currentLabel: holopad-cargo-breakroom + +# Engineering +- type: entity + parent: Holopad + id: HolopadEngineeringAtmosFront + suffix: Atmos Front + components: + - type: Label + currentLabel: holopad-engineering-atmos-front + +- type: entity + parent: Holopad + id: HolopadEngineeringAtmosMain + suffix: Atmos Main + components: + - type: Label + currentLabel: holopad-engineering-atmos-main + +- type: entity + parent: Holopad + id: HolopadEngineeringAtmosTeg + suffix: TEG + components: + - type: Label + currentLabel: holopad-engineering-atmos-teg + +- type: entity + parent: Holopad + id: HolopadEngineeringStorage + suffix: Engi Storage + components: + - type: Label + currentLabel: holopad-engineering-storage + +- type: entity + parent: Holopad + id: HolopadEngineeringBreakroom + suffix: Engi Breakroom + components: + - type: Label + currentLabel: holopad-engineering-breakroom + +- type: entity + parent: Holopad + id: HolopadEngineeringFront + suffix: Engi Front + components: + - type: Label + currentLabel: holopad-engineering-front + +- type: entity + parent: Holopad + id: HolopadEngineeringTelecoms + suffix: Telecoms + components: + - type: Label + currentLabel: holopad-engineering-telecoms + +- type: entity + parent: Holopad + id: HolopadEngineeringTechVault + suffix: Tech Vault + components: + - type: Label + currentLabel: holopad-engineering-tech-vault + +# Security +- type: entity + parent: Holopad + id: HolopadSecurityFront + suffix: Sec Front + components: + - type: Label + currentLabel: holopad-security-front + +- type: entity + parent: Holopad + id: HolopadSecurityBrig + suffix: Brig + components: + - type: Label + currentLabel: holopad-security-brig + +- type: entity + parent: Holopad + id: HolopadSecurityWarden + suffix: Warden + components: + - type: Label + currentLabel: holopad-security-warden + +- type: entity + parent: Holopad + id: HolopadSecurityInterrogation + suffix: Interrogation + components: + - type: Label + currentLabel: holopad-security-interrogation + +- type: entity + parent: Holopad + id: HolopadSecurityBreakroom + suffix: Breakroom + components: + - type: Label + currentLabel: holopad-security-breakroom + +- type: entity + parent: Holopad + id: HolopadSecurityDetective + suffix: Detective + components: + - type: Label + currentLabel: holopad-security-detective + +- type: entity + parent: Holopad + id: HolopadSecurityPerma + suffix: Perma + components: + - type: Label + currentLabel: holopad-security-perma + +- type: entity + parent: Holopad + id: HolopadSecurityCourtroom + suffix: Courtroom + components: + - type: Label + currentLabel: holopad-security-courtroom + +- type: entity + parent: Holopad + id: HolopadSecurityLawyer + suffix: Lawyer + components: + - type: Label + currentLabel: holopad-security-lawyer + +- type: entity + parent: Holopad + id: HolopadSecurityArmory + suffix: Armory + components: + - type: Label + currentLabel: holopad-security-armory + +# Service +- type: entity + parent: Holopad + id: HolopadServiceJanitor + suffix: Janitor + components: + - type: Label + currentLabel: holopad-service-janitor + +- type: entity + parent: Holopad + id: HolopadServiceBar + suffix: Bar + components: + - type: Label + currentLabel: holopad-service-bar + +- type: entity + parent: Holopad + id: HolopadServiceKitchen + suffix: Kitchen + components: + - type: Label + currentLabel: holopad-service-kitchen + +- type: entity + parent: Holopad + id: HolopadServiceBotany + suffix: Botany + components: + - type: Label + currentLabel: holopad-service-botany + +- type: entity + parent: Holopad + id: HolopadServiceChapel + suffix: Chapel + components: + - type: Label + currentLabel: holopad-service-chapel + +- type: entity + parent: Holopad + id: HolopadServiceLibrary + suffix: Library + components: + - type: Label + currentLabel: holopad-service-library + +- type: entity + parent: Holopad + id: HolopadServiceNewsroom + suffix: Newsroom + components: + - type: Label + currentLabel: holopad-service-newsroom + +- type: entity + parent: Holopad + id: HolopadServiceZookeeper + suffix: Zookeeper + components: + - type: Label + currentLabel: holopad-service-zookeeper + +- type: entity + parent: Holopad + id: HolopadServiceBoxer + suffix: Boxer + components: + - type: Label + currentLabel: holopad-service-boxer + +- type: entity + parent: Holopad + id: HolopadServiceClown + suffix: Clown + components: + - type: Label + currentLabel: holopad-service-clown + +- type: entity + parent: Holopad + id: HolopadServiceMusician + suffix: Musician + components: + - type: Label + currentLabel: holopad-service-musician + +- type: entity + parent: Holopad + id: HolopadServiceMime + suffix: Mime + components: + - type: Label + currentLabel: holopad-service-mime + +# AI +- type: entity + parent: Holopad + id: HolopadAiCore + suffix: AI Core + components: + - type: Label + currentLabel: holopad-ai-core + +- type: entity + parent: Holopad + id: HolopadAiMain + suffix: AI Main + components: + - type: Label + currentLabel: holopad-ai-main + +- type: entity + parent: Holopad + id: HolopadAiUpload + suffix: AI Upload + components: + - type: Label + currentLabel: holopad-ai-upload + +- type: entity + parent: Holopad + id: HolopadAiBackupPower + suffix: AI Backup Power + components: + - type: Label + currentLabel: holopad-ai-backup-power + +- type: entity + parent: Holopad + id: HolopadAiEntrance + suffix: AI Entrance + components: + - type: Label + currentLabel: holopad-ai-entrance + +- type: entity + parent: Holopad + id: HolopadAiChute + suffix: AI Chute + components: + - type: Label + currentLabel: holopad-ai-chute + +# Long Range +- type: entity + parent: HolopadLongRange + id: HolopadCargoAts + suffix: ATS + components: + - type: Label + currentLabel: holopad-cargo-ats + +- type: entity + parent: HolopadLongRange + id: HolopadCommandBridgeLongRange + suffix: Station Bridge + components: + - type: Label + currentLabel: holopad-station-bridge + +- type: entity + parent: HolopadLongRange + id: HolopadCargoBayLongRange + suffix: Station Cargo Bay + components: + - type: Label + currentLabel: holopad-station-cargo-bay + +- type: entity + parent: HolopadLongRange + id: HolopadCargoShuttle + suffix: Cargo Shuttle + components: + - type: Label + currentLabel: holopad-cargo-shuttle + +- type: entity + parent: HolopadLongRange + id: HolopadCentCommEvacShuttle + suffix: Evac Shuttle + components: + - type: Label + currentLabel: holopad-centcomm-evac + + +# Map Specific +# For holopads that only fit specific maps. For example: Bagel has Clown, Mime and Musician merged into one. +- type: entity + parent: Holopad + id: HolopadServiceClownMime + suffix: Clown/Mime + components: + - type: Label + currentLabel: holopad-service-clown-mime