diff --git a/Resources/Locale/ru-RU/ss220/documents/pilot-briefing.ftl b/Resources/Locale/ru-RU/ss220/documents/pilot-briefing.ftl new file mode 100644 index 000000000000..1e394b03046f --- /dev/null +++ b/Resources/Locale/ru-RU/ss220/documents/pilot-briefing.ftl @@ -0,0 +1,11 @@ +ent-PilotBriefing = брифинг пилота + .desc = { ent-PaperNtForm.desc } + +pilot-briefing-text = [head=2]Брифинг Пилота[/head] + + Вы, в качестве пилота, обладаете всеми необходимыми умениями, связанными с управлением космического шаттла и в то же время по юридическим стандартам вы являетесь офицером Службы Безопасности. + + - Ваша задача - осуществлять облёты космической станции на усмотрение Главы Службы Безопасности, соблюдая все законы и СРП офицера СБ. + - В свободное от пилотирования время вы должны исполнять обязанности офицера Службы Безопасности + - Будьте готовы к оперативным задачам, принимайте ответственность за свои действия, и умело реагируйте на любые нестандартные ситуации. + - Полёты в Зелёный Код признаны излишне расточительными, а потому запрещены в целях экономии. Удачного полета! diff --git a/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml b/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml index 9d00c722e1fc..1e1ecc889a15 100644 --- a/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml +++ b/Resources/Prototypes/Catalog/Fills/Backpacks/StarterGear/backpack.yml @@ -27,10 +27,10 @@ contents: - id: BoxSurvivalSecurity - id: Flash - - id: Flash - id: MagazinePistolRubber - id: MagazinePistolRubber - id: FlashlightSeclite + - id: DrinkRelaxingPeachCan - type: entity noSpawn: true @@ -45,6 +45,7 @@ - id: ForensicPad - id: ForensicScanner - id: FlashlightSeclite + - id: DrinkRelaxingPeachCan - type: entity noSpawn: true @@ -141,9 +142,24 @@ contents: - id: BoxSurvivalSecurity - id: Flash - - id: MagazinePistol - - id: MagazinePistol - + - id: MagazinePistolRubber + - id: MagazinePistolRubber + - id: DrinkRelaxingPeachCan + - id: PilotBriefing +- type: entity + noSpawn: true + parent: ClothingBackpackSecurity + id: ClothingBackpackSecurityPilotFilled + components: + - type: StorageFill + contents: + - id: BoxSurvivalSecurity + - id: Flash + - id: MagazinePistolRubber + - id: MagazinePistolRubber + - id: FlashlightSeclite + - id: DrinkRelaxingPeachCan + - id: PilotBriefing - type: entity noSpawn: true parent: ClothingBackpackEngineering diff --git a/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml b/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml index 8b249b874da3..d4685d20a3fc 100644 --- a/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml +++ b/Resources/Prototypes/Entities/Markers/Spawners/jobs.yml @@ -1,658 +1,654 @@ -# Base - -- type: entity - id: SpawnPointJobBase - parent: MarkerBase - abstract: true - suffix: Job Spawn - components: - - type: SpawnPoint - spawn_type: Job - - type: Sprite - sprite: Markers/jobs.rsi - -- type: entity - name: observer spawn point - id: SpawnPointObserver - parent: MarkerBase - components: - - type: Sprite - sprite: Markers/jobs.rsi - layers: - - state: green - - sprite: Mobs/Ghosts/ghost_human.rsi - state: icon - state: observer - - type: SpawnPoint - spawn_type: Observer - -- type: entity - name: latejoin spawn point - id: SpawnPointLatejoin - parent: SpawnPointJobBase - components: - - type: Sprite - state: green - - type: SpawnPoint - spawn_type: LateJoin - -# Cargo - -- type: entity - id: SpawnPointQuartermaster - parent: SpawnPointJobBase - name: quartermaster - components: - - type: SpawnPoint - job_id: Quartermaster - - type: Sprite - layers: - - state: green - - state: qm - - -- type: entity - id: SpawnPointCargoTechnician - parent: SpawnPointJobBase - name: cargotechnician - components: - - type: SpawnPoint - job_id: CargoTechnician - - type: Sprite - layers: - - state: green - - state: cargo_tech - -- type: entity - id: SpawnPointSalvageSpecialist - parent: SpawnPointJobBase - name: salvagespecialist - components: - - type: SpawnPoint - job_id: SalvageSpecialist - - type: Sprite - layers: - - state: green - - state: salvagespecialist - -# Civilian - -- type: entity - id: SpawnPointAssistant # TODO rename, but requires map changes. - parent: SpawnPointJobBase - name: passenger - components: - - type: SpawnPoint - job_id: Passenger - - type: Sprite - layers: - - state: green - - state: passenger - -- type: entity - id: SpawnPointTechnicalAssistant - parent: SpawnPointAssistant - name: technical assistant - components: - - type: SpawnPoint - job_id: TechnicalAssistant - - type: Sprite - layers: - - state: green - - state: technicalassistant - -- type: entity - id: SpawnPointMedicalIntern - parent: SpawnPointAssistant - name: medical intern - components: - - type: SpawnPoint - job_id: MedicalIntern - - type: Sprite - layers: - - state: green - - state: medicalintern - -- type: entity - id: SpawnPointSecurityCadet - parent: SpawnPointAssistant - name: security cadet - components: - - type: SpawnPoint - job_id: SecurityCadet - - type: Sprite - layers: - - state: green - - state: security_cadet - -- type: entity - id: SpawnPointResearchAssistant - parent: SpawnPointAssistant - name: research assistant - components: - - type: SpawnPoint - job_id: ResearchAssistant - - type: Sprite - layers: - - state: green - - state: researchassistant - -- type: entity - id: SpawnPointServiceWorker - parent: SpawnPointAssistant - name: service worker - components: - - type: SpawnPoint - job_id: ServiceWorker - - type: Sprite - layers: - - state: green - - state: serviceworker - -- type: entity - id: SpawnPointBartender - parent: SpawnPointJobBase - name: bartender - components: - - type: SpawnPoint - job_id: Bartender - - type: Sprite - layers: - - state: green - - state: bartender - -- type: entity - id: SpawnPointChef - parent: SpawnPointJobBase - name: chef - components: - - type: SpawnPoint - job_id: Chef - - type: Sprite - layers: - - state: green - - state: chef - -- type: entity - id: SpawnPointBotanist - parent: SpawnPointJobBase - name: botanist - components: - - type: SpawnPoint - job_id: Botanist - - type: Sprite - layers: - - state: green - - state: botanist - -- type: entity - id: SpawnPointClown - parent: SpawnPointJobBase - name: clown - components: - - type: SpawnPoint - job_id: Clown - - type: Sprite - layers: - - state: green - - state: clown - -- type: entity - id: SpawnPointMime - parent: SpawnPointJobBase - name: mime - components: - - type: SpawnPoint - job_id: Mime - - type: Sprite - layers: - - state: green - - state: mime - -- type: entity - id: SpawnPointChaplain - parent: SpawnPointJobBase - name: chaplain - components: - - type: SpawnPoint - job_id: Chaplain - - type: Sprite - layers: - - state: green - - state: chaplain - -- type: entity - id: SpawnPointLibrarian - parent: SpawnPointJobBase - name: librarian - components: - - type: SpawnPoint - job_id: Librarian - - type: Sprite - layers: - - state: green - - state: librarian - -- type: entity - id: SpawnPointLawyer - parent: SpawnPointJobBase - name: lawyer - components: - - type: SpawnPoint - job_id: IAA # Corvax-IAA: Lawyer replaced with IAA - - type: Sprite - layers: - - state: green - - state: lawyer - -- type: entity - id: SpawnPointJanitor - parent: SpawnPointJobBase - name: janitor - components: - - type: SpawnPoint - job_id: Janitor - - type: Sprite - layers: - - state: green - - state: janitor - -- type: entity - id: SpawnPointMusician - parent: SpawnPointJobBase - name: musician - components: - - type: SpawnPoint - job_id: Musician - - type: Sprite - layers: - - state: green - - state: musician - -- type: entity - id: SpawnPointBoxer - parent: SpawnPointJobBase - name: boxer - components: - - type: SpawnPoint - job_id: Boxer - - type: Sprite - layers: - - state: green - - state: boxer - -- type: entity - id: SpawnPointBorg - parent: SpawnPointJobBase - name: cyborg - components: - - type: SpawnPoint - job_id: Borg - - type: Sprite - layers: - - state: green - - sprite: Mobs/Silicon/chassis.rsi - state: robot - - sprite: Mobs/Silicon/chassis.rsi - state: robot_e - -# Command - -- type: entity - id: SpawnPointCaptain - parent: SpawnPointJobBase - name: captain - components: - - type: SpawnPoint - job_id: Captain - - type: Sprite - layers: - - state: green - - state: captain - -- type: entity - id: SpawnPointHeadOfPersonnel - parent: SpawnPointJobBase - name: headofpersonnel - components: - - type: SpawnPoint - job_id: HeadOfPersonnel - - type: Sprite - layers: - - state: green - - state: hop - -- type: entity - id: SpawnPointBlueShield - parent: SpawnPointJobBase - name: blueshield - components: - - type: SpawnPoint - job_id: BlueShield - - type: Sprite - layers: - - state: green - -# Engineering - -- type: entity - id: SpawnPointChiefEngineer - parent: SpawnPointJobBase - name: chiefengineer - components: - - type: SpawnPoint - job_id: ChiefEngineer - - type: Sprite - layers: - - state: green - - state: ce - -- type: entity - id: SpawnPointSeniorEngineer - parent: SpawnPointJobBase - name: seniorengineer - components: - - type: SpawnPoint - job_id: SeniorEngineer - - type: Sprite - layers: - - state: green - - state: seniorengineer - -- type: entity - id: SpawnPointStationEngineer - parent: SpawnPointJobBase - name: stationengineer - components: - - type: SpawnPoint - job_id: StationEngineer - - type: Sprite - layers: - - state: green - - state: engineer - -- type: entity - id: SpawnPointAtmos - parent: SpawnPointJobBase - name: atmospherics - components: - - type: SpawnPoint - job_id: AtmosphericTechnician - - type: Sprite - layers: - - state: green - - state: atmospherics - -# Medical - -- type: entity - id: SpawnPointChiefMedicalOfficer - parent: SpawnPointJobBase - name: chiefmedicalofficer - components: - - type: SpawnPoint - job_id: ChiefMedicalOfficer - - type: Sprite - layers: - - state: green - - state: cmo - -- type: entity - id: SpawnPointSeniorPhysician - parent: SpawnPointJobBase - name: seniorphysician - components: - - type: SpawnPoint - job_id: SeniorPhysician - - type: Sprite - layers: - - state: green - - state: seniorphysician - -- type: entity - id: SpawnPointMedicalDoctor - parent: SpawnPointJobBase - name: medicaldoctor - components: - - type: SpawnPoint - job_id: MedicalDoctor - - type: Sprite - layers: - - state: green - - state: doctor - -- type: entity - id: SpawnPointParamedic - parent: SpawnPointJobBase - name: paramedic - components: - - type: SpawnPoint - job_id: Paramedic - - type: Sprite - layers: - - state: green - - state: paramedic - -- type: entity - id: SpawnPointChemist - parent: SpawnPointJobBase - name: chemist - components: - - type: SpawnPoint - job_id: Chemist - - type: Sprite - layers: - - state: green - - state: chemist - -# Science - -- type: entity - id: SpawnPointResearchDirector - parent: SpawnPointJobBase - name: researchdirector - components: - - type: SpawnPoint - job_id: ResearchDirector - - type: Sprite - layers: - - state: green - - state: rd - -- type: entity - id: SpawnPointSeniorResearcher - parent: SpawnPointJobBase - name: seniorresearcher - components: - - type: SpawnPoint - job_id: SeniorResearcher - - type: Sprite - layers: - - state: green - - state: seniorresearcher - -- type: entity - id: SpawnPointScientist - parent: SpawnPointJobBase - name: scientist - components: - - type: SpawnPoint - job_id: Scientist - - type: Sprite - layers: - - state: green - - state: scientist - -# Security - -- type: entity - id: SpawnPointHeadOfSecurity - parent: SpawnPointJobBase - name: headofsecurity - components: - - type: SpawnPoint - job_id: HeadOfSecurity - - type: Sprite - layers: - - state: green - - state: hos - -- type: entity - id: SpawnPointWarden - parent: SpawnPointJobBase - name: warden - components: - - type: SpawnPoint - job_id: Warden - - type: Sprite - layers: - - state: green - - state: warden - -- type: entity - id: SpawnPointSeniorOfficer - parent: SpawnPointJobBase - name: seniorofficer - components: - - type: SpawnPoint - job_id: SeniorOfficer - - type: Sprite - layers: - - state: green - - state: seniorofficer - -- type: entity - id: SpawnPointSecurityOfficer - parent: SpawnPointJobBase - name: securityofficer - components: - - type: SpawnPoint - job_id: SecurityOfficer - - type: Sprite - layers: - - state: green - - state: security_officer - -- type: entity - id: SpawnPointDetective - parent: SpawnPointJobBase - name: detective - components: - - type: SpawnPoint - job_id: Detective - - type: Sprite - layers: - - state: green - - state: detective - -- type: entity - id: SpawnPointBrigmedic - parent: SpawnPointJobBase - name: brigmedic - components: - - type: SpawnPoint - job_id: Brigmedic - - type: Sprite - layers: - - state: green - - state: brigmedic - -# SPECIAL -# ERT -- type: entity - id: SpawnPointERTLeader - parent: SpawnPointJobBase - name: ERTleader - components: - - type: SpawnPoint - job_id: ERTLeader - - type: Sprite - layers: - - state: green - - state: ertleader - -- type: entity - id: SpawnPointERTEngineer - parent: SpawnPointJobBase - name: ERTengineer - components: - - type: SpawnPoint - job_id: ERTEngineer - - type: Sprite - layers: - - state: green - - state: ertengineer - -- type: entity - id: SpawnPointERTMedical - parent: SpawnPointJobBase - name: ERTmedical - components: - - type: SpawnPoint - job_id: ERTMedical - - type: Sprite - layers: - - state: green - - state: ertmedical - -- type: entity - id: SpawnPointERTSecurity - parent: SpawnPointJobBase - name: ERTsecurity - components: - - type: SpawnPoint - job_id: ERTSecurity - - type: Sprite - layers: - - state: green - - state: ertsecurity - -- type: entity - id: SpawnPointERTJanitor - parent: SpawnPointJobBase - name: ERTjanitor - components: - - type: SpawnPoint - job_id: ERTJanitor - - type: Sprite - layers: - - state: green - - state: ertjanitor - -# STATION SPECIFIC - -- type: entity - id: SpawnPointReporter - parent: SpawnPointJobBase - name: reporter - components: - - type: SpawnPoint - job_id: Reporter - - type: Sprite - layers: - - state: green - - state: reporter - -- type: entity - id: SpawnPointPsychologist - parent: SpawnPointJobBase - name: psychologist - components: - - type: SpawnPoint - job_id: Psychologist - - type: Sprite - layers: - - state: green - - state: psychologist - -- type: entity - id: SpawnPointZookeeper - parent: SpawnPointJobBase - name: zookeeper - components: - - type: SpawnPoint - job_id: Zookeeper - - type: Sprite - layers: - - state: green - - state: zookeeper +# Base + +- type: entity + id: SpawnPointJobBase + parent: MarkerBase + abstract: true + suffix: Job Spawn + components: + - type: SpawnPoint + spawn_type: Job + - type: Sprite + sprite: Markers/jobs.rsi + +- type: entity + name: observer spawn point + id: SpawnPointObserver + parent: MarkerBase + components: + - type: Sprite + sprite: Markers/jobs.rsi + layers: + - state: green + - sprite: Mobs/Ghosts/ghost_human.rsi + state: icon + state: observer + - type: SpawnPoint + spawn_type: Observer + +- type: entity + name: latejoin spawn point + id: SpawnPointLatejoin + parent: SpawnPointJobBase + components: + - type: Sprite + state: green + - type: SpawnPoint + spawn_type: LateJoin + +# Cargo + +- type: entity + id: SpawnPointQuartermaster + parent: SpawnPointJobBase + name: quartermaster + components: + - type: SpawnPoint + job_id: Quartermaster + - type: Sprite + layers: + - state: green + - state: qm + + +- type: entity + id: SpawnPointCargoTechnician + parent: SpawnPointJobBase + name: cargotechnician + components: + - type: SpawnPoint + job_id: CargoTechnician + - type: Sprite + layers: + - state: green + - state: cargo_tech + +- type: entity + id: SpawnPointSalvageSpecialist + parent: SpawnPointJobBase + name: salvagespecialist + components: + - type: SpawnPoint + job_id: SalvageSpecialist + - type: Sprite + layers: + - state: green + - state: miner + +# Civilian + +- type: entity + id: SpawnPointAssistant # TODO rename, but requires map changes. + parent: SpawnPointJobBase + name: passenger + components: + - type: SpawnPoint + job_id: Passenger + - type: Sprite + layers: + - state: green + - state: passenger + +- type: entity + id: SpawnPointTechnicalAssistant + parent: SpawnPointAssistant + name: technical assistant + components: + - type: SpawnPoint + job_id: TechnicalAssistant + +- type: entity + id: SpawnPointMedicalIntern + parent: SpawnPointAssistant + name: medical intern + components: + - type: SpawnPoint + job_id: MedicalIntern + +- type: entity + id: SpawnPointSecurityCadet + parent: SpawnPointAssistant + name: security cadet + components: + - type: SpawnPoint + job_id: SecurityCadet + - type: Sprite + layers: + - state: green + - state: security_cadet + +- type: entity + id: SpawnPointResearchAssistant + parent: SpawnPointAssistant + name: research assistant + components: + - type: SpawnPoint + job_id: ResearchAssistant + +- type: entity + id: SpawnPointServiceWorker + parent: SpawnPointAssistant + name: service worker + components: + - type: SpawnPoint + job_id: ServiceWorker + +- type: entity + id: SpawnPointBartender + parent: SpawnPointJobBase + name: bartender + components: + - type: SpawnPoint + job_id: Bartender + - type: Sprite + layers: + - state: green + - state: bartender + +- type: entity + id: SpawnPointChef + parent: SpawnPointJobBase + name: chef + components: + - type: SpawnPoint + job_id: Chef + - type: Sprite + layers: + - state: green + - state: chef + +- type: entity + id: SpawnPointBotanist + parent: SpawnPointJobBase + name: botanist + components: + - type: SpawnPoint + job_id: Botanist + - type: Sprite + layers: + - state: green + - state: botanist + +- type: entity + id: SpawnPointClown + parent: SpawnPointJobBase + name: clown + components: + - type: SpawnPoint + job_id: Clown + - type: Sprite + layers: + - state: green + - state: clown + +- type: entity + id: SpawnPointMime + parent: SpawnPointJobBase + name: mime + components: + - type: SpawnPoint + job_id: Mime + - type: Sprite + layers: + - state: green + - state: mime + +- type: entity + id: SpawnPointChaplain + parent: SpawnPointJobBase + name: chaplain + components: + - type: SpawnPoint + job_id: Chaplain + - type: Sprite + layers: + - state: green + - state: chaplain + +- type: entity + id: SpawnPointLibrarian + parent: SpawnPointJobBase + name: librarian + components: + - type: SpawnPoint + job_id: Librarian + - type: Sprite + layers: + - state: green + - state: librarian + +- type: entity + id: SpawnPointLawyer + parent: SpawnPointJobBase + name: lawyer + components: + - type: SpawnPoint + job_id: IAA # Corvax-IAA: Lawyer replaced with IAA + - type: Sprite + layers: + - state: green + - state: lawyer + +- type: entity + id: SpawnPointJanitor + parent: SpawnPointJobBase + name: janitor + components: + - type: SpawnPoint + job_id: Janitor + - type: Sprite + layers: + - state: green + - state: janitor + +- type: entity + id: SpawnPointMusician + parent: SpawnPointJobBase + name: musician + components: + - type: SpawnPoint + job_id: Musician + - type: Sprite + layers: + - state: green + - state: musician + +- type: entity + id: SpawnPointBoxer + parent: SpawnPointJobBase + name: boxer + components: + - type: SpawnPoint + job_id: Boxer + - type: Sprite + layers: + - state: green + - state: boxer + +- type: entity + id: SpawnPointBorg + parent: SpawnPointJobBase + name: cyborg + components: + - type: SpawnPoint + job_id: Borg + - type: Sprite + layers: + - state: green + - sprite: Mobs/Silicon/chassis.rsi + state: robot + - sprite: Mobs/Silicon/chassis.rsi + state: robot_e + +# Command + +- type: entity + id: SpawnPointCaptain + parent: SpawnPointJobBase + name: captain + components: + - type: SpawnPoint + job_id: Captain + - type: Sprite + layers: + - state: green + - state: captain + +- type: entity + id: SpawnPointHeadOfPersonnel + parent: SpawnPointJobBase + name: headofpersonnel + components: + - type: SpawnPoint + job_id: HeadOfPersonnel + - type: Sprite + layers: + - state: green + - state: hop + +- type: entity + id: SpawnPointBlueShield + parent: SpawnPointJobBase + name: blueshield + components: + - type: SpawnPoint + job_id: BlueShield + - type: Sprite + layers: + - state: green + +# Engineering + +- type: entity + id: SpawnPointChiefEngineer + parent: SpawnPointJobBase + name: chiefengineer + components: + - type: SpawnPoint + job_id: ChiefEngineer + - type: Sprite + layers: + - state: green + - state: ce + +- type: entity + id: SpawnPointSeniorEngineer + parent: SpawnPointJobBase + name: seniorengineer + components: + - type: SpawnPoint + job_id: SeniorEngineer + - type: Sprite + layers: + - state: green + - state: seniorengineer + +- type: entity + id: SpawnPointStationEngineer + parent: SpawnPointJobBase + name: stationengineer + components: + - type: SpawnPoint + job_id: StationEngineer + - type: Sprite + layers: + - state: green + - state: engineer + +- type: entity + id: SpawnPointAtmos + parent: SpawnPointJobBase + name: atmospherics + components: + - type: SpawnPoint + job_id: AtmosphericTechnician + - type: Sprite + layers: + - state: green + - state: atmospherics + +# Medical + +- type: entity + id: SpawnPointChiefMedicalOfficer + parent: SpawnPointJobBase + name: chiefmedicalofficer + components: + - type: SpawnPoint + job_id: ChiefMedicalOfficer + - type: Sprite + layers: + - state: green + - state: cmo + +- type: entity + id: SpawnPointSeniorPhysician + parent: SpawnPointJobBase + name: seniorphysician + components: + - type: SpawnPoint + job_id: SeniorPhysician + - type: Sprite + layers: + - state: green + - state: seniorphysician + +- type: entity + id: SpawnPointMedicalDoctor + parent: SpawnPointJobBase + name: medicaldoctor + components: + - type: SpawnPoint + job_id: MedicalDoctor + - type: Sprite + layers: + - state: green + - state: doctor + +- type: entity + id: SpawnPointParamedic + parent: SpawnPointJobBase + name: paramedic + components: + - type: SpawnPoint + job_id: Paramedic + - type: Sprite + layers: + - state: green + - state: paramedic + +- type: entity + id: SpawnPointChemist + parent: SpawnPointJobBase + name: chemist + components: + - type: SpawnPoint + job_id: Chemist + - type: Sprite + layers: + - state: green + - state: chemist + +# Science + +- type: entity + id: SpawnPointResearchDirector + parent: SpawnPointJobBase + name: researchdirector + components: + - type: SpawnPoint + job_id: ResearchDirector + - type: Sprite + layers: + - state: green + - state: rd + +- type: entity + id: SpawnPointSeniorResearcher + parent: SpawnPointJobBase + name: seniorresearcher + components: + - type: SpawnPoint + job_id: SeniorResearcher + - type: Sprite + layers: + - state: green + - state: seniorresearcher + +- type: entity + id: SpawnPointScientist + parent: SpawnPointJobBase + name: scientist + components: + - type: SpawnPoint + job_id: Scientist + - type: Sprite + layers: + - state: green + - state: scientist + +# Security + +- type: entity + id: SpawnPointHeadOfSecurity + parent: SpawnPointJobBase + name: headofsecurity + components: + - type: SpawnPoint + job_id: HeadOfSecurity + - type: Sprite + layers: + - state: green + - state: hos + +- type: entity + id: SpawnPointWarden + parent: SpawnPointJobBase + name: warden + components: + - type: SpawnPoint + job_id: Warden + - type: Sprite + layers: + - state: green + - state: warden + +- type: entity + id: SpawnPointSeniorOfficer + parent: SpawnPointJobBase + name: seniorofficer + components: + - type: SpawnPoint + job_id: SeniorOfficer + - type: Sprite + layers: + - state: green + - state: seniorofficer + +- type: entity + id: SpawnPointPilot + parent: SpawnPointJobBase + name: Пилот + components: + - type: SpawnPoint + job_id: SecurityPilot + - type: Sprite + layers: + - state: green + - state: security_officer + +- type: entity + id: SpawnPointSecurityOfficer + parent: SpawnPointJobBase + name: securityofficer + components: + - type: SpawnPoint + job_id: SecurityOfficer + - type: Sprite + layers: + - state: green + - state: security_officer + +- type: entity + id: SpawnPointDetective + parent: SpawnPointJobBase + name: detective + components: + - type: SpawnPoint + job_id: Detective + - type: Sprite + layers: + - state: green + - state: detective + +- type: entity + id: SpawnPointBrigmedic + parent: SpawnPointJobBase + name: brigmedic + components: + - type: SpawnPoint + job_id: Brigmedic + - type: Sprite + layers: + - state: green + - state: brigmedic + +# SPECIAL +# ERT +- type: entity + id: SpawnPointERTLeader + parent: SpawnPointJobBase + name: ERTleader + components: + - type: SpawnPoint + job_id: ERTLeader + - type: Sprite + layers: + - state: green + - state: ertleader + +- type: entity + id: SpawnPointERTEngineer + parent: SpawnPointJobBase + name: ERTengineer + components: + - type: SpawnPoint + job_id: ERTEngineer + - type: Sprite + layers: + - state: green + - state: ertengineer + +- type: entity + id: SpawnPointERTMedical + parent: SpawnPointJobBase + name: ERTmedical + components: + - type: SpawnPoint + job_id: ERTMedical + - type: Sprite + layers: + - state: green + - state: ertmedical + +- type: entity + id: SpawnPointERTSecurity + parent: SpawnPointJobBase + name: ERTsecurity + components: + - type: SpawnPoint + job_id: ERTSecurity + - type: Sprite + layers: + - state: green + - state: ertsecurity + +- type: entity + id: SpawnPointERTJanitor + parent: SpawnPointJobBase + name: ERTjanitor + components: + - type: SpawnPoint + job_id: ERTJanitor + - type: Sprite + layers: + - state: green + - state: ertjanitor + +# STATION SPECIFIC + +- type: entity + id: SpawnPointReporter + parent: SpawnPointJobBase + name: reporter + components: + - type: SpawnPoint + job_id: Reporter + - type: Sprite + layers: + - state: green + - state: reporter + +- type: entity + id: SpawnPointPsychologist + parent: SpawnPointJobBase + name: psychologist + components: + - type: SpawnPoint + job_id: Psychologist + - type: Sprite + layers: + - state: green + - state: psychologist + +- type: entity + id: SpawnPointZookeeper + parent: SpawnPointJobBase + name: zookeeper + components: + - type: SpawnPoint + job_id: Zookeeper + - type: Sprite + layers: + - state: green + - state: zookeeper diff --git a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml index 118b2421367e..93c6fdaf7d02 100644 --- a/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml +++ b/Resources/Prototypes/Entities/Objects/Consumable/Drinks/drinks_cans.yml @@ -1,432 +1,456 @@ -- type: entity - parent: BaseItem - id: DrinkCanBaseFull - abstract: true - components: - - type: Drink - - type: Openable - - type: PressurizedDrink - - type: SolutionContainerManager - solutions: - drink: - reagents: - - ReagentId: Cola - Quantity: 30 - maxVol: 30 - - type: SolutionTransfer - canChangeTransferAmount: true - maxTransferAmount: 15 - - type: UserInterface - interfaces: - - key: enum.TransferAmountUiKey.Key - type: TransferAmountBoundUserInterface - - type: Sprite - state: icon - layers: - - state: icon - map: ["enum.OpenableVisuals.Layer"] - - type: FitsInDispenser - solution: drink - - type: DrawableSolution - solution: drink - - type: RefillableSolution - solution: drink - - type: DrainableSolution - solution: drink - - type: Appearance - - type: GenericVisualizer - visuals: - enum.OpenableVisuals.Opened: - enum.OpenableVisuals.Layer: - True: {state: "icon_open"} - False: {state: "icon"} - - type: Spillable - solution: drink - - type: MeleeWeapon - soundNoDamage: - path: "/Audio/Effects/Fluids/splat.ogg" - damage: - types: - Blunt: 0 - - type: Tool - qualities: - - Rolling - speed: 0.25 # its small so takes longer to roll the entire dough flat - - type: ItemCooldown - - type: SpaceGarbage - - type: TrashOnEmpty - solution: drink - - type: PhysicalComposition - materialComposition: - Steel: 50 #reduce, reuse, recycle - -- type: entity - parent: DrinkCanBaseFull - id: DrinkColaCan - name: space cola - description: A refreshing beverage. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: Cola - Quantity: 30 - - type: Tag - tags: - - Cola - - Recyclable - - type: Sprite - sprite: Objects/Consumable/Drinks/cola.rsi - - type: Item - sprite: Objects/Consumable/Drinks/cola.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkIcedTeaCan - name: iced tea can - description: A refreshing can of iced tea. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: IcedTea - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/ice_tea_can.rsi - - type: Item - sprite: Objects/Consumable/Drinks/ice_tea_can.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkLemonLimeCan - name: lemon-lime can - description: You wanted ORANGE. It gave you Lemon-Lime. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: LemonLime - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/lemon-lime.rsi - - type: Item - sprite: Objects/Consumable/Drinks/lemon-lime.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkGrapeCan - name: grape soda can - description: Sweetened drink with a grape flavor and a deep purple color. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: GrapeSoda - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/purple_can.rsi - - type: Item - sprite: Objects/Consumable/Drinks/purple_can.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkRootBeerCan - name: root beer can - description: Some of that tasty root beer goodness, now in a portable can! - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: RootBeer - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/rootbeer.rsi - - type: Item - sprite: Objects/Consumable/Drinks/rootbeer.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkSodaWaterCan - name: soda water can - description: Soda water. Why not make a scotch and soda? - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: SodaWater - Quantity: 30 - - type: Drink - - type: Sprite - sprite: Objects/Consumable/Drinks/sodawater.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkSpaceMountainWindCan - name: space mountain wind can - description: Blows right through you like a space wind. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: SpaceMountainWind - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/space_mountain_wind.rsi - - type: Item - sprite: Objects/Consumable/Drinks/space_mountain_wind.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkSpaceUpCan - name: space-up can - description: Tastes like a hull breach in your mouth. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: SpaceUp - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/space-up.rsi - - type: Item - sprite: Objects/Consumable/Drinks/space-up.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkStarkistCan - name: starkist can - description: The taste of a star in liquid form. And, a bit of tuna...? - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: Starkist - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/starkist.rsi - - type: Item - sprite: Objects/Consumable/Drinks/starkist.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkTonicWaterCan - name: tonic water can - description: Quinine tastes funny, but at least it'll keep that Space Malaria away. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: TonicWater - Quantity: 30 - - type: Drink - - type: Sprite - sprite: Objects/Consumable/Drinks/tonic.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkFourteenLokoCan - name: fourteen loko can - description: The MBO has advised crew members that consumption of Fourteen Loko may result in seizures, blindness, drunkeness, or even death. Please Drink Responsibly. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: FourteenLoko - Quantity: 30 - - type: Sprite - sprite: Objects/Consumable/Drinks/fourteen_loko.rsi - - type: Item - sprite: Objects/Consumable/Drinks/fourteen_loko.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkChangelingStingCan - name: Changeling sting can - description: You take a tiny sip and feel a burning sensation... - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: ChangelingSting - Quantity: 30 - - type: Drink - - type: Sprite - sprite: Objects/Consumable/Drinks/changelingsting.rsi - - type: Item - sprite: Objects/Consumable/Drinks/changelingsting.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkDrGibbCan - name: Dr. Gibb can - description: A delicious blend of 42 different flavours. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: DrGibb - Quantity: 30 - - type: Drink - - type: Sprite - sprite: Objects/Consumable/Drinks/dr_gibb.rsi - - type: Item - sprite: Objects/Consumable/Drinks/dr_gibb.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkNukieCan - name: blood-red brew can - description: A home-brewed drink made from the crazed minds at the Syndicate. Not recommended by doctors. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: Stimulants - Quantity: 5 - - ReagentId: NuclearCola - Quantity: 20 - - ReagentId: Ice - Quantity: 5 - - type: Tag - tags: - - Recyclable - - type: Sprite - sprite: Objects/Consumable/Drinks/robustnukie.rsi - - type: Item - sprite: Objects/Consumable/Drinks/robustnukie.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkEnergyDrinkCan - name: red bool energy drink - description: A can of Red Bool, with enough caffeine to kill a horse. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: EnergyDrink - Quantity: 30 - - type: Drink - - type: Sprite - sprite: Objects/Consumable/Drinks/energy_drink.rsi - - type: Item - sprite: Objects/Consumable/Drinks/energy_drink.rsi - -- type: entity - id: DrinkCanPack - parent: BaseStorageItem - name: 6pack - components: - - type: Sprite - sprite: Objects/Misc/6pack.rsi - layers: - - state: plastic-thingy - - state: 6pack1 - map: ["6pack1"] - visible: false - - state: 6pack2 - map: ["6pack2"] - visible: false - - state: 6pack3 - map: ["6pack3"] - visible: false - - state: 6pack4 - map: ["6pack4"] - visible: false - - state: 6pack5 - map: ["6pack5"] - visible: false - - state: 6pack6 - map: ["6pack6"] - visible: false - - type: Item - size: 6 - - type: Storage - capacity: 30 - whitelist: - tags: - - Cola - - type: StorageFill - contents: - - id: DrinkColaCan - amount: 6 - - type: ItemCounter - count: - tags: [Cola] - composite: true - layerStates: - - 6pack1 - - 6pack2 - - 6pack3 - - 6pack4 - - 6pack5 - - 6pack6 - - type: Appearance - -- type: entity - parent: DrinkCanBaseFull - id: DrinkShamblersJuiceCan - name: shamblers juice can - description: ~Shake me up some of that Shambler's Juice!~ - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: ShamblersJuice - Quantity: 30 - - type: Drink - - type: Sprite - sprite: Objects/Consumable/Drinks/shamblersjuice.rsi - - type: Item - sprite: Objects/Consumable/Drinks/shamblersjuice.rsi - -- type: entity - parent: DrinkCanBaseFull - id: DrinkPwrGameCan - name: pwr game can - description: The only drink with the PWR that true gamers crave. When a gamer talks about gamerfuel, this is what they're literally referring to. - components: - - type: SolutionContainerManager - solutions: - drink: - maxVol: 30 - reagents: - - ReagentId: PwrGame - Quantity: 30 - - type: Drink - - type: Sprite - sprite: Objects/Consumable/Drinks/pwrgame.rsi - - type: Item - sprite: Objects/Consumable/Drinks/pwrgame.rsi +- type: entity + parent: BaseItem + id: DrinkCanBaseFull + abstract: true + components: + - type: Drink + - type: Openable + - type: PressurizedDrink + - type: SolutionContainerManager + solutions: + drink: + reagents: + - ReagentId: Cola + Quantity: 30 + maxVol: 30 + - type: SolutionTransfer + canChangeTransferAmount: true + maxTransferAmount: 15 + - type: UserInterface + interfaces: + - key: enum.TransferAmountUiKey.Key + type: TransferAmountBoundUserInterface + - type: Sprite + state: icon + layers: + - state: icon + map: ["enum.OpenableVisuals.Layer"] + - type: FitsInDispenser + solution: drink + - type: DrawableSolution + solution: drink + - type: RefillableSolution + solution: drink + - type: DrainableSolution + solution: drink + - type: Appearance + - type: GenericVisualizer + visuals: + enum.OpenableVisuals.Opened: + enum.OpenableVisuals.Layer: + True: {state: "icon_open"} + False: {state: "icon"} + - type: Spillable + solution: drink + - type: MeleeWeapon + soundNoDamage: + path: "/Audio/Effects/Fluids/splat.ogg" + damage: + types: + Blunt: 0 + - type: Tool + qualities: + - Rolling + speed: 0.25 # its small so takes longer to roll the entire dough flat + - type: ItemCooldown + - type: SpaceGarbage + - type: TrashOnEmpty + solution: drink + - type: PhysicalComposition + materialComposition: + Steel: 50 #reduce, reuse, recycle + +- type: entity + parent: DrinkCanBaseFull + id: DrinkColaCan + name: space cola + description: A refreshing beverage. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: Cola + Quantity: 30 + - type: Tag + tags: + - Cola + - Recyclable + - type: Sprite + sprite: Objects/Consumable/Drinks/cola.rsi + - type: Item + sprite: Objects/Consumable/Drinks/cola.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkIcedTeaCan + name: iced tea can + description: A refreshing can of iced tea. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: IcedTea + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/ice_tea_can.rsi + - type: Item + sprite: Objects/Consumable/Drinks/ice_tea_can.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkLemonLimeCan + name: lemon-lime can + description: You wanted ORANGE. It gave you Lemon-Lime. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: LemonLime + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/lemon-lime.rsi + - type: Item + sprite: Objects/Consumable/Drinks/lemon-lime.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkGrapeCan + name: grape soda can + description: Sweetened drink with a grape flavor and a deep purple color. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: GrapeSoda + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/purple_can.rsi + - type: Item + sprite: Objects/Consumable/Drinks/purple_can.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkRootBeerCan + name: root beer can + description: Some of that tasty root beer goodness, now in a portable can! + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: RootBeer + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/rootbeer.rsi + - type: Item + sprite: Objects/Consumable/Drinks/rootbeer.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkSodaWaterCan + name: soda water can + description: Soda water. Why not make a scotch and soda? + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: SodaWater + Quantity: 30 + - type: Drink + - type: Sprite + sprite: Objects/Consumable/Drinks/sodawater.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkSpaceMountainWindCan + name: space mountain wind can + description: Blows right through you like a space wind. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: SpaceMountainWind + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/space_mountain_wind.rsi + - type: Item + sprite: Objects/Consumable/Drinks/space_mountain_wind.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkSpaceUpCan + name: space-up can + description: Tastes like a hull breach in your mouth. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: SpaceUp + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/space-up.rsi + - type: Item + sprite: Objects/Consumable/Drinks/space-up.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkStarkistCan + name: starkist can + description: The taste of a star in liquid form. And, a bit of tuna...? + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: Starkist + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/starkist.rsi + - type: Item + sprite: Objects/Consumable/Drinks/starkist.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkRelaxingPeachCan + name: Расслабляющая Персиковая Газировка + description: Ходят слухи, что ежедневное употребелнние данного напитка уменьшает риск возникновения такой срашной болезни как щиткурство. Но это лишь слухи + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: KiraSpecial + Quantity: 8 + - ReagentId: RootBeerFloat + Quantity: 8 + - ReagentId: Antifreeze + Quantity: 8 + - ReagentId: DoctorsDelight + Quantity: 6 + - type: Sprite + sprite: Objects/Consumable/Drinks/starkist.rsi + - type: Item + sprite: Objects/Consumable/Drinks/starkist.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkTonicWaterCan + name: tonic water can + description: Quinine tastes funny, but at least it'll keep that Space Malaria away. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: TonicWater + Quantity: 30 + - type: Drink + - type: Sprite + sprite: Objects/Consumable/Drinks/tonic.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkFourteenLokoCan + name: fourteen loko can + description: The MBO has advised crew members that consumption of Fourteen Loko may result in seizures, blindness, drunkeness, or even death. Please Drink Responsibly. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: FourteenLoko + Quantity: 30 + - type: Sprite + sprite: Objects/Consumable/Drinks/fourteen_loko.rsi + - type: Item + sprite: Objects/Consumable/Drinks/fourteen_loko.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkChangelingStingCan + name: Changeling sting can + description: You take a tiny sip and feel a burning sensation... + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: ChangelingSting + Quantity: 30 + - type: Drink + - type: Sprite + sprite: Objects/Consumable/Drinks/changelingsting.rsi + - type: Item + sprite: Objects/Consumable/Drinks/changelingsting.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkDrGibbCan + name: Dr. Gibb can + description: A delicious blend of 42 different flavours. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: DrGibb + Quantity: 30 + - type: Drink + - type: Sprite + sprite: Objects/Consumable/Drinks/dr_gibb.rsi + - type: Item + sprite: Objects/Consumable/Drinks/dr_gibb.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkNukieCan + name: blood-red brew can + description: A home-brewed drink made from the crazed minds at the Syndicate. Not recommended by doctors. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: Stimulants + Quantity: 5 + - ReagentId: NuclearCola + Quantity: 20 + - ReagentId: Ice + Quantity: 5 + - type: Tag + tags: + - Recyclable + - type: Sprite + sprite: Objects/Consumable/Drinks/robustnukie.rsi + - type: Item + sprite: Objects/Consumable/Drinks/robustnukie.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkEnergyDrinkCan + name: red bool energy drink + description: A can of Red Bool, with enough caffeine to kill a horse. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: EnergyDrink + Quantity: 30 + - type: Drink + - type: Sprite + sprite: Objects/Consumable/Drinks/energy_drink.rsi + - type: Item + sprite: Objects/Consumable/Drinks/energy_drink.rsi + +- type: entity + id: DrinkCanPack + parent: BaseStorageItem + name: 6pack + components: + - type: Sprite + sprite: Objects/Misc/6pack.rsi + layers: + - state: plastic-thingy + - state: 6pack1 + map: ["6pack1"] + visible: false + - state: 6pack2 + map: ["6pack2"] + visible: false + - state: 6pack3 + map: ["6pack3"] + visible: false + - state: 6pack4 + map: ["6pack4"] + visible: false + - state: 6pack5 + map: ["6pack5"] + visible: false + - state: 6pack6 + map: ["6pack6"] + visible: false + - type: Item + size: 6 + - type: Storage + capacity: 30 + whitelist: + tags: + - Cola + - type: StorageFill + contents: + - id: DrinkColaCan + amount: 6 + - type: ItemCounter + count: + tags: [Cola] + composite: true + layerStates: + - 6pack1 + - 6pack2 + - 6pack3 + - 6pack4 + - 6pack5 + - 6pack6 + - type: Appearance + +- type: entity + parent: DrinkCanBaseFull + id: DrinkShamblersJuiceCan + name: shamblers juice can + description: ~Shake me up some of that Shambler's Juice!~ + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: ShamblersJuice + Quantity: 30 + - type: Drink + - type: Sprite + sprite: Objects/Consumable/Drinks/shamblersjuice.rsi + - type: Item + sprite: Objects/Consumable/Drinks/shamblersjuice.rsi + +- type: entity + parent: DrinkCanBaseFull + id: DrinkPwrGameCan + name: pwr game can + description: The only drink with the PWR that true gamers crave. When a gamer talks about gamerfuel, this is what they're literally referring to. + components: + - type: SolutionContainerManager + solutions: + drink: + maxVol: 30 + reagents: + - ReagentId: PwrGame + Quantity: 30 + - type: Drink + - type: Sprite + sprite: Objects/Consumable/Drinks/pwrgame.rsi + - type: Item + sprite: Objects/Consumable/Drinks/pwrgame.rsi diff --git a/Resources/Prototypes/Entities/Objects/Devices/pda.yml b/Resources/Prototypes/Entities/Objects/Devices/pda.yml index 632fddf34014..dfc80db7a82c 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/pda.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/pda.yml @@ -1,965 +1,979 @@ -- type: entity - abstract: true - parent: BaseItem - id: BasePDA - name: PDA - description: Personal Data Assistant. - components: - - type: Appearance - - type: Sprite - sprite: Objects/Devices/pda.rsi - layers: - - map: [ "enum.PdaVisualLayers.Base" ] - - state: "light_overlay" - map: [ "enum.PdaVisualLayers.Flashlight" ] - shader: "unshaded" - visible: false - - state: "id_overlay" - map: [ "enum.PdaVisualLayers.IdLight" ] - shader: "unshaded" - visible: false - - type: Icon - sprite: Objects/Devices/pda.rsi - state: pda - - type: Pda - state: pda - penSlot: - startingItem: Pen - priority: -1 - whitelist: - tags: - - Write - idSlot: - name: ID Card - ejectSound: /Audio/Machines/id_swipe.ogg - insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg - whitelist: - components: - - IdCard - - type: Item - size: 10 - - type: ContainerContainer - containers: - PDA-id: !type:ContainerSlot {} - PDA-pen: !type:ContainerSlot {} - Cartridge-Slot: !type:ContainerSlot {} - program-container: !type:Container - - type: ItemSlots - - type: Clothing - quickEquip: false - slots: - - idcard - - Belt - - type: UnpoweredFlashlight - - type: PointLight - enabled: false - radius: 1.5 - softness: 5 - autoRot: true - - type: Ringer - - type: StationLimitedNetwork - - type: DeviceNetwork - deviceNetId: Wireless - receiveFrequencyId: Pda - prefix: device-address-prefix-console - - type: WirelessNetworkConnection - range: 500 - - type: CartridgeLoader - uiKey: enum.PdaUiKey.Key - preinstalled: - - CrewManifestCartridge - - NotekeeperCartridge - - NewsReadCartridge - - MessengerCartridgeClient - cartridgeSlot: - priority: -1 - name: Cartridge - ejectSound: /Audio/Machines/id_swipe.ogg - insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg - whitelist: - components: - - Cartridge - - type: ActivatableUI - key: enum.PdaUiKey.Key - singleUser: true - closeOnHandDeselect: false - - type: UserInterface - interfaces: - - key: enum.PdaUiKey.Key - type: PdaBoundUserInterface - - key: enum.StoreUiKey.Key - type: StoreBoundUserInterface - - key: enum.RingerUiKey.Key - type: RingerBoundUserInterface - - key: enum.InstrumentUiKey.Key - type: InstrumentBoundUserInterface - - key: enum.HealthAnalyzerUiKey.Key - type: HealthAnalyzerBoundUserInterface - - type: CrewManifestViewer - unsecure: true - - type: Tag - tags: - - DoorBumpOpener - - type: Input - context: "human" - -- type: entity - parent: BasePDA - id: PassengerPDA - name: passenger PDA - description: Why isn't it gray? - components: - - type: Pda - id: PassengerIDCard - state: pda - - type: PdaBorderColor - borderColor: "#717059" - -- type: entity - parent: BasePDA - id: TechnicalAssistantPDA - name: technical assistant PDA - description: Why isn't it yellow? - components: - - type: Pda - id: TechnicalAssistantIDCard - state: pda-interntech - - type: PdaBorderColor - borderColor: "#717059" - accentVColor: "#949137" - - type: Icon - state: pda-interntech - -- type: entity - parent: BasePDA - id: BlueShieldPDA - name: blue shield PDA - description: average style. - components: - - type: Pda - id: BlueShieldIDCard - state: pda-bs - - type: Icon - state: pda-bs - -- type: entity - parent: BasePDA - id: MedicalInternPDA - name: medical intern PDA - description: Why isn't it white? Has a built-in health analyzer. - components: - - type: Pda - id: MedicalInternIDCard - state: pda-internmed - - type: PdaBorderColor - borderColor: "#717059" - accentVColor: "#447987" - - type: Icon - state: pda-internmed - - type: HealthAnalyzer - scanDelay: 1 - scanningEndSound: - path: "/Audio/Items/Medical/healthscanner.ogg" - - type: GuideHelp - guides: - - Medical Doctor - -- type: entity - parent: BasePDA - id: SecurityCadetPDA - name: security cadet PDA - description: Why isn't it red? - components: - - type: Pda - id: SecurityCadetIDCard - state: pda-interncadet - - type: PdaBorderColor - borderColor: "#717059" - accentVColor: "#A32D26" - - type: Icon - state: pda-interncadet - -- type: entity - parent: BasePDA - id: ResearchAssistantPDA - name: research assistant PDA - description: Why isn't it purple? - components: - - type: Pda - id: ResearchAssistantIDCard - state: pda-internsci - - type: PdaBorderColor - borderColor: "#717059" - accentVColor: "#8900c9" - - type: Icon - state: pda-internsci - -- type: entity - parent: BasePDA - id: ServiceWorkerPDA - name: service worker PDA - description: Why isn't it gray? - components: - - type: Pda - id: ServiceWorkerIDCard - state: pda-internservice - - type: PdaBorderColor - borderColor: "#717059" - accentVColor: "#00cc35" - - type: Icon - state: pda-internservice - -- type: entity - parent: BasePDA - id: ChefPDA - name: chef PDA - description: Covered in grease and flour. - components: - - type: Pda - id: ChefIDCard - state: pda-cook - - type: PdaBorderColor - borderColor: "#d7d7d0" - - type: Icon - state: pda-cook - -- type: entity - parent: BasePDA - id: BotanistPDA - name: botanist PDA - description: Has an earthy scent. - components: - - type: Pda - id: BotanistIDCard - state: pda-hydro - - type: PdaBorderColor - borderColor: "#44843c" - accentVColor: "#00cc35" - - type: Icon - state: pda-hydro - -- type: entity - parent: BasePDA - id: ClownPDA - name: clown PDA - description: Looks can be deceiving. - components: - - type: Pda - id: ClownIDCard - state: pda-clown - penSlot: - startingItem: CrayonOrange # no pink crayon?!? - # ^ Still unacceptable. - ejectSound: /Audio/Items/bikehorn.ogg - priority: -1 - whitelist: - tags: - - Write - - type: PdaBorderColor - borderColor: "#C18199" - - type: Icon - state: pda-clown - - type: Slippery - paralyzeTime: 4 - launchForwardsMultiplier: 1.5 - - type: StepTrigger - - type: CollisionWake - enabled: false - - type: Physics - bodyType: Dynamic - - type: Fixtures - fixtures: - slips: - shape: - !type:PhysShapeAabb - bounds: "-0.4,-0.3,0.4,0.3" - hard: false - layer: - - SlipLayer - fix1: - shape: - !type:PhysShapeAabb - bounds: "-0.4,-0.3,0.4,0.3" - density: 5 - mask: - - ItemMask - -- type: entity - parent: BasePDA - id: MimePDA - name: mime PDA - description: Suprisingly not on mute. - components: - - type: Pda - id: MimeIDCard - state: pda-mime - idSlot: - name: ID Card - whitelist: - components: - - IdCard - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentHColor: "#333333" - - type: Icon - state: pda-mime - -- type: entity - name: chaplain PDA - parent: BasePDA - id: ChaplainPDA - description: God's chosen PDA. - components: - - type: Pda - id: ChaplainIDCard - state: pda-chaplain - - type: PdaBorderColor - borderColor: "#333333" - - type: Icon - state: pda-chaplain - -- type: entity - name: quartermaster PDA - parent: BasePDA - id: QuartermasterPDA - description: PDA for the guy that orders the guns. - components: - - type: Pda - id: QuartermasterIDCard - state: pda-qm - - type: PdaBorderColor - borderColor: "#e39751" - accentVColor: "#a23e3e" - - type: Icon - state: pda-qm - -- type: entity - parent: BasePDA - id: CargoPDA - name: cargo PDA - description: PDA for the guys that order the pizzas. - components: - - type: Pda - id: CargoIDCard - state: pda-cargo - - type: PdaBorderColor - borderColor: "#e39751" - - type: Icon - state: pda-cargo - -- type: entity - parent: BasePDA - id: SalvagePDA - name: salvage PDA - description: Smells like ash. - components: - - type: Pda - id: SalvageIDCard - state: pda-miner - - type: PdaBorderColor - borderColor: "#af9366" - accentVColor: "#8900c9" - - type: Icon - state: pda-miner - -- type: entity - parent: BasePDA - id: BartenderPDA - name: bartender PDA - description: Smells like beer. - components: - - type: Pda - id: BartenderIDCard - state: pda-bartender - - type: PdaBorderColor - borderColor: "#333333" - - type: Icon - state: pda-bartender - -- type: entity - parent: BasePDA - id: LibrarianPDA - name: librarian PDA - description: Smells like books. - components: - - type: Pda - id: LibrarianIDCard - state: pda-library - - type: PdaBorderColor - borderColor: "#858585" - - type: Icon - state: pda-library - -- type: entity - parent: BasePDA - id: LawyerPDA - name: lawyer PDA - description: For lawyers to poach dubious clients. - components: - - type: Pda - id: LawyerIDCard - state: pda-lawyer - - type: PdaBorderColor - borderColor: "#6f6192" - - type: Icon - state: pda-lawyer - -- type: entity - parent: BasePDA - id: JanitorPDA - name: janitor PDA - description: Smells like bleach. - components: - - type: Pda - id: JanitorIDCard - state: pda-janitor - - type: PdaBorderColor - borderColor: "#5D2D56" - - type: Icon - state: pda-janitor - -- type: entity - parent: BasePDA - id: CaptainPDA - name: captain PDA - description: Surprisingly no different from your PDA. - components: - - type: Pda - id: CaptainIDCard - state: pda-captain - penSlot: - startingItem: PenCap - priority: -1 - whitelist: - tags: - - Write - - type: PdaBorderColor - borderColor: "#7C5D00" - - type: Icon - state: pda-captain - -- type: entity - parent: BasePDA - id: HoPPDA - name: head of personnel PDA - description: Looks like it's been chewed on. - components: - - type: Pda - id: HoPIDCard - state: pda-hop - penSlot: - startingItem: PenHop - priority: -1 - whitelist: - tags: - - Write - - type: PdaBorderColor - borderColor: "#789876" - accentHColor: "#447987" - - type: Icon - state: pda-hop - -- type: entity - parent: BasePDA - id: CEPDA - name: chief engineer PDA - description: Looks like it's barely been used. - components: - - type: Pda - id: CEIDCard - state: pda-ce - - type: PdaBorderColor - borderColor: "#949137" - accentHColor: "#447987" - - type: Icon - state: pda-ce - -- type: entity - parent: BasePDA - id: EngineerPDA - name: engineer PDA - description: Rugged and well-worn. - components: - - type: Pda - id: EngineeringIDCard - state: pda-engineer - - type: PdaBorderColor - borderColor: "#949137" - accentVColor: "#A32D26" - - type: Icon - state: pda-engineer - -- type: entity - parent: BasePDA - id: CMOPDA - name: chief medical officer PDA - description: Extraordinarily shiny and sterile. Has a built-in health analyzer. - components: - - type: Pda - id: CMOIDCard - state: pda-cmo - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentHColor: "#447987" - accentVColor: "#447987" - - type: Icon - state: pda-cmo - - type: HealthAnalyzer - scanDelay: 1 - scanningEndSound: - path: "/Audio/Items/Medical/healthscanner.ogg" - -- type: entity - parent: BasePDA - id: MedicalPDA - name: medical PDA - description: Shiny and sterile. Has a built-in health analyzer. - components: - - type: Pda - id: MedicalIDCard - state: pda-medical - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentVColor: "#447987" - - type: Icon - state: pda-medical - - type: HealthAnalyzer - scanDelay: 1 - scanningEndSound: - path: "/Audio/Items/Medical/healthscanner.ogg" - - type: GuideHelp - guides: - - Medical Doctor - -- type: entity - parent: BasePDA - id: ParamedicPDA - name: paramedic PDA - description: Shiny and sterile. Has a built-in rapid health analyzer. - components: - - type: Pda - id: ParamedicIDCard - state: pda-paramedic - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentVColor: "#2a4b5b" - - type: Icon - state: pda-paramedic - - type: HealthAnalyzer - scanDelay: 1 - scanningEndSound: - path: "/Audio/Items/Medical/healthscanner.ogg" - -- type: entity - parent: BasePDA - id: ChemistryPDA - name: chemistry PDA - description: It has a few discolored blotches here and there. - components: - - type: Pda - id: ChemistIDCard - state: pda-chemistry - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentVColor: "#B34200" - - type: Icon - state: pda-chemistry - - type: HealthAnalyzer - scanDelay: 1 - scanningEndSound: - path: "/Audio/Items/Medical/healthscanner.ogg" - -- type: entity - parent: BasePDA - id: RnDPDA - name: research director PDA - description: It appears surprisingly ordinary. - components: - - type: Pda - id: RDIDCard - state: pda-rd - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentHColor: "#447987" - accentVColor: "#8900c9" - - type: Icon - state: pda-rd - -- type: entity - parent: BasePDA - id: SciencePDA - name: science PDA - description: It's covered with an unknown gooey substance. - components: - - type: Pda - id: ResearchIDCard - state: pda-science - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentVColor: "#8900c9" - - type: Icon - state: pda-science - -- type: entity - parent: BasePDA - id: HoSPDA - name: head of security PDA - description: Whosoever bears this PDA is the law. - components: - - type: Pda - id: HoSIDCard - state: pda-hos - - type: PdaBorderColor - borderColor: "#A32D26" - accentHColor: "#447987" - - type: Icon - state: pda-hos - -- type: entity - parent: BasePDA - id: WardenPDA - name: warden PDA - description: The OS appears to have been jailbroken. - components: - - type: Pda - id: WardenIDCard - state: pda-warden - - type: PdaBorderColor - borderColor: "#A32D26" - accentVColor: "#949137" - - type: Icon - state: pda-warden - -- type: entity - parent: BasePDA - id: SecurityPDA - name: security PDA - description: Red to hide the stains of passenger blood. - components: - - type: Pda - id: SecurityIDCard - state: pda-security - - type: PdaBorderColor - borderColor: "#A32D26" - - type: Icon - state: pda-security - -- type: entity - parent: BasePDA - id: CentcomPDA - name: CentCom PDA - description: Light green sign of walking bureaucracy. - components: - - type: Pda - id: CentcomIDCard - state: pda-centcom - penSlot: - startingItem: PenCentcom - whitelist: - tags: - - Write - - type: PdaBorderColor - borderColor: "#00842e" - - type: Icon - state: pda-centcom - -- type: entity - parent: CentcomPDA - id: CentcomPDAFake - suffix: Fake - components: - - type: Pda - id: CentcomIDCardSyndie - -- type: entity - parent: CentcomPDA - id: DeathsquadPDA - suffix: Deathsquad - components: - - type: Pda - id: CentcomIDCardDeathsquad - -- type: entity - parent: BasePDA - id: MusicianPDA - name: musician PDA - description: It fills you with inspiration. - components: - - type: Pda - id: MusicianIDCard - state: pda-musician - - type: PdaBorderColor - borderColor: "#333333" - - type: Icon - state: pda-musician - - type: Instrument - allowPercussion: false - handheld: true - bank: 1 - program: 2 - -- type: entity - parent: BasePDA - id: AtmosPDA - name: atmos PDA - description: Still smells like plasma. - components: - - type: Pda - id: AtmosIDCard - state: pda-atmos - - type: PdaBorderColor - borderColor: "#949137" - accentVColor: "#447987" - - type: Icon - state: pda-atmos - -- type: entity - parent: BasePDA - id: ClearPDA - name: clear PDA - description: 99 and 44/100ths percent pure plastic. - components: - - type: Pda - id: PassengerIDCard - state: pda-clear - - type: PdaBorderColor - borderColor: "#288e4d" - - type: Icon - state: pda-clear - -- type: entity - parent: BasePDA - id: SyndiPDA - name: syndicate PDA - description: Ok, time to be a productive member of- oh cool I'm a bad guy time to kill people! - components: - - type: Pda - id: SyndicateIDCard - state: pda-syndi - - type: PdaBorderColor - borderColor: "#891417" - - type: Icon - state: pda-syndi - - type: CartridgeLoader - uiKey: enum.PdaUiKey.Key - preinstalled: - - NotekeeperCartridge - cartridgeSlot: - priority: -1 - name: Cartridge - ejectSound: /Audio/Machines/id_swipe.ogg - insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg - whitelist: - components: - - Cartridge - -- type: entity - parent: BasePDA - id: ERTLeaderPDA - name: ERT PDA - description: Red for firepower. - components: - - type: Pda - id: ERTLeaderIDCard - state: pda-ert - - type: PdaBorderColor - borderColor: "#A32D26" - accentHColor: "#447987" - accentVColor: "#447987" - - type: Icon - state: pda-ert - -- type: entity - parent: ERTLeaderPDA - id: CBURNPDA - name: CBURN PDA - description: Smells like rotten flesh. - components: - - type: Pda - id: CBURNIDcard - state: pda-ert - - type: PdaBorderColor - borderColor: "#A32D26" - accentHColor: "#447987" - accentVColor: "#447987" - -- type: entity - parent: BasePDA - id: PsychologistPDA - name: psychologist PDA - description: Looks immaculately cleaned. - components: - - type: Pda - id: PsychologistIDCard - state: pda-medical - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentVColor: "#447987" - - type: Icon - state: pda-medical - -- type: entity - parent: BasePDA - id: ReporterPDA - name: reporter PDA - description: Smells like freshly printed press. - components: - - type: Pda - id: ReporterIDCard - state: pda-reporter - - type: PdaBorderColor - borderColor: "#3f3f74" - - type: Icon - state: pda-reporter - -- type: entity - parent: BasePDA - id: ZookeeperPDA - name: zookeeper PDA - description: Made with genuine synthetic leather. Crikey! - components: - - type: Pda - id: ZookeeperIDCard - state: pda-zookeeper - - type: PdaBorderColor - borderColor: "#ffe685" - - type: Icon - state: pda-zookeeper - -- type: entity - parent: BasePDA - id: BoxerPDA - name: boxer PDA - description: Float like a butterfly, ringtone like a bee. - components: - - type: Pda - id: BoxerIDCard - state: pda-boxer - - type: PdaBorderColor - borderColor: "#333333" - accentVColor: "#390504" - - type: Icon - state: pda-boxer - -- type: entity - parent: BasePDA - id: DetectivePDA - name: detective PDA - description: Smells like rain... pouring down the rooftops... - components: - - type: Pda - id: DetectiveIDCard - state: pda-detective - - type: PdaBorderColor - borderColor: "#774705" - - type: Icon - state: pda-detective - -- type: entity - parent: BasePDA - id: BrigmedicPDA - name: brigmedic PDA - description: I wonder whose pulse is on the screen? I hope he doesnt stop... PDA has a built-in health analyzer. - components: - - type: Pda - id: BrigmedicIDCard - state: pda-brigmedic - - type: PdaBorderColor - borderColor: "#A32D26" - accentHColor: "#d7d7d0" - accentVColor: "#d7d7d0" - - type: Icon - state: pda-brigmedic - - type: HealthAnalyzer - scanDelay: 1 - scanningEndSound: - path: "/Audio/Items/Medical/healthscanner.ogg" - -- type: entity - parent: ClownPDA - id: CluwnePDA - name: cluwne PDA - suffix: Unremoveable - description: Cursed cluwne PDA. - components: - - type: Pda - id: CluwneIDCard - state: pda-cluwne - - type: PdaBorderColor - borderColor: "#1c8f4d" - - type: Icon - state: pda-cluwne - penSlot: - startingItem: CrayonGreen - ejectSound: /Audio/Items/bikehorn.ogg - priority: -1 - whitelist: - tags: - - Write - - type: Unremoveable - -- type: entity - parent: BasePDA - id: SeniorEngineerPDA - name: senior engineer PDA - description: Seems to have been taken apart and put back together several times. - components: - - type: Pda - id: SeniorEngineerIDCard - state: pda-seniorengineer - - type: PdaBorderColor - borderColor: "#949137" - accentVColor: "#CD6900" - - type: Icon - state: pda-seniorengineer - -- type: entity - parent: BasePDA - id: SeniorResearcherPDA - name: senior researcher PDA - description: Looks like it's been through years of chemical burns and explosions. - components: - - type: Pda - id: SeniorResearcherIDCard - state: pda-seniorresearcher - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentHColor: "#8900c9" - accentVColor: "#8900c9" - - type: Icon - state: pda-seniorresearcher - -- type: entity - parent: BasePDA - id: SeniorPhysicianPDA - name: senior physician PDA - description: Smells faintly like iron and chemicals. Has a built-in health analyzer. - components: - - type: Pda - id: SeniorPhysicianIDCard - state: pda-seniorphysician - - type: PdaBorderColor - borderColor: "#d7d7d0" - accentHColor: "#447987" - accentVColor: "#B34200" - - type: Icon - state: pda-seniorphysician - - type: HealthAnalyzer - scanDelay: 1 - scanningEndSound: - path: "/Audio/Items/Medical/healthscanner.ogg" - -- type: entity - parent: BasePDA - id: SeniorOfficerPDA - name: senior officer PDA - description: Beaten, battered and broken, but just barely useable. - components: - - type: Pda - id: SeniorOfficerIDCard - state: pda-seniorofficer - - type: PdaBorderColor - borderColor: "#A32D26" - accentVColor: "#DFDFDF" - - type: Icon - state: pda-seniorofficer +- type: entity + abstract: true + parent: BaseItem + id: BasePDA + name: PDA + description: Personal Data Assistant. + components: + - type: Appearance + - type: Sprite + sprite: Objects/Devices/pda.rsi + layers: + - map: [ "enum.PdaVisualLayers.Base" ] + - state: "light_overlay" + map: [ "enum.PdaVisualLayers.Flashlight" ] + shader: "unshaded" + visible: false + - state: "id_overlay" + map: [ "enum.PdaVisualLayers.IdLight" ] + shader: "unshaded" + visible: false + - type: Icon + sprite: Objects/Devices/pda.rsi + state: pda + - type: Pda + state: pda + penSlot: + startingItem: Pen + priority: -1 + whitelist: + tags: + - Write + idSlot: + name: ID Card + ejectSound: /Audio/Machines/id_swipe.ogg + insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg + whitelist: + components: + - IdCard + - type: Item + size: 10 + - type: ContainerContainer + containers: + PDA-id: !type:ContainerSlot {} + PDA-pen: !type:ContainerSlot {} + Cartridge-Slot: !type:ContainerSlot {} + program-container: !type:Container + - type: ItemSlots + - type: Clothing + quickEquip: false + slots: + - idcard + - Belt + - type: UnpoweredFlashlight + - type: PointLight + enabled: false + radius: 1.5 + softness: 5 + autoRot: true + - type: Ringer + - type: StationLimitedNetwork + - type: DeviceNetwork + deviceNetId: Wireless + receiveFrequencyId: Pda + prefix: device-address-prefix-console + - type: WirelessNetworkConnection + range: 500 + - type: CartridgeLoader + uiKey: enum.PdaUiKey.Key + preinstalled: + - CrewManifestCartridge + - NotekeeperCartridge + - NewsReadCartridge + - MessengerCartridgeClient + cartridgeSlot: + priority: -1 + name: Cartridge + ejectSound: /Audio/Machines/id_swipe.ogg + insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg + whitelist: + components: + - Cartridge + - type: ActivatableUI + key: enum.PdaUiKey.Key + singleUser: true + closeOnHandDeselect: false + - type: UserInterface + interfaces: + - key: enum.PdaUiKey.Key + type: PdaBoundUserInterface + - key: enum.StoreUiKey.Key + type: StoreBoundUserInterface + - key: enum.RingerUiKey.Key + type: RingerBoundUserInterface + - key: enum.InstrumentUiKey.Key + type: InstrumentBoundUserInterface + - key: enum.HealthAnalyzerUiKey.Key + type: HealthAnalyzerBoundUserInterface + - type: CrewManifestViewer + unsecure: true + - type: Tag + tags: + - DoorBumpOpener + - type: Input + context: "human" + +- type: entity + parent: BasePDA + id: PassengerPDA + name: passenger PDA + description: Why isn't it gray? + components: + - type: Pda + id: PassengerIDCard + state: pda + - type: PdaBorderColor + borderColor: "#717059" + +- type: entity + parent: BasePDA + id: TechnicalAssistantPDA + name: technical assistant PDA + description: Why isn't it yellow? + components: + - type: Pda + id: TechnicalAssistantIDCard + state: pda-interntech + - type: PdaBorderColor + borderColor: "#717059" + accentVColor: "#949137" + - type: Icon + state: pda-interntech + +- type: entity + parent: BasePDA + id: BlueShieldPDA + name: blue shield PDA + description: average style. + components: + - type: Pda + id: BlueShieldIDCard + state: pda-bs + - type: Icon + state: pda-bs + +- type: entity + parent: BasePDA + id: MedicalInternPDA + name: medical intern PDA + description: Why isn't it white? Has a built-in health analyzer. + components: + - type: Pda + id: MedicalInternIDCard + state: pda-internmed + - type: PdaBorderColor + borderColor: "#717059" + accentVColor: "#447987" + - type: Icon + state: pda-internmed + - type: HealthAnalyzer + scanDelay: 1 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + - type: GuideHelp + guides: + - Medical Doctor + +- type: entity + parent: BasePDA + id: SecurityCadetPDA + name: security cadet PDA + description: Why isn't it red? + components: + - type: Pda + id: SecurityCadetIDCard + state: pda-interncadet + - type: PdaBorderColor + borderColor: "#717059" + accentVColor: "#A32D26" + - type: Icon + state: pda-interncadet + +- type: entity + parent: BasePDA + id: ResearchAssistantPDA + name: research assistant PDA + description: Why isn't it purple? + components: + - type: Pda + id: ResearchAssistantIDCard + state: pda-internsci + - type: PdaBorderColor + borderColor: "#717059" + accentVColor: "#8900c9" + - type: Icon + state: pda-internsci + +- type: entity + parent: BasePDA + id: ServiceWorkerPDA + name: service worker PDA + description: Why isn't it gray? + components: + - type: Pda + id: ServiceWorkerIDCard + state: pda-internservice + - type: PdaBorderColor + borderColor: "#717059" + accentVColor: "#00cc35" + - type: Icon + state: pda-internservice + +- type: entity + parent: BasePDA + id: ChefPDA + name: chef PDA + description: Covered in grease and flour. + components: + - type: Pda + id: ChefIDCard + state: pda-cook + - type: PdaBorderColor + borderColor: "#d7d7d0" + - type: Icon + state: pda-cook + +- type: entity + parent: BasePDA + id: BotanistPDA + name: botanist PDA + description: Has an earthy scent. + components: + - type: Pda + id: BotanistIDCard + state: pda-hydro + - type: PdaBorderColor + borderColor: "#44843c" + accentVColor: "#00cc35" + - type: Icon + state: pda-hydro + +- type: entity + parent: BasePDA + id: ClownPDA + name: clown PDA + description: Looks can be deceiving. + components: + - type: Pda + id: ClownIDCard + state: pda-clown + penSlot: + startingItem: CrayonOrange # no pink crayon?!? + # ^ Still unacceptable. + ejectSound: /Audio/Items/bikehorn.ogg + priority: -1 + whitelist: + tags: + - Write + - type: PdaBorderColor + borderColor: "#C18199" + - type: Icon + state: pda-clown + - type: Slippery + paralyzeTime: 4 + launchForwardsMultiplier: 1.5 + - type: StepTrigger + - type: CollisionWake + enabled: false + - type: Physics + bodyType: Dynamic + - type: Fixtures + fixtures: + slips: + shape: + !type:PhysShapeAabb + bounds: "-0.4,-0.3,0.4,0.3" + hard: false + layer: + - SlipLayer + fix1: + shape: + !type:PhysShapeAabb + bounds: "-0.4,-0.3,0.4,0.3" + density: 5 + mask: + - ItemMask + +- type: entity + parent: BasePDA + id: MimePDA + name: mime PDA + description: Suprisingly not on mute. + components: + - type: Pda + id: MimeIDCard + state: pda-mime + idSlot: + name: ID Card + whitelist: + components: + - IdCard + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentHColor: "#333333" + - type: Icon + state: pda-mime + +- type: entity + name: chaplain PDA + parent: BasePDA + id: ChaplainPDA + description: God's chosen PDA. + components: + - type: Pda + id: ChaplainIDCard + state: pda-chaplain + - type: PdaBorderColor + borderColor: "#333333" + - type: Icon + state: pda-chaplain + +- type: entity + name: quartermaster PDA + parent: BasePDA + id: QuartermasterPDA + description: PDA for the guy that orders the guns. + components: + - type: Pda + id: QuartermasterIDCard + state: pda-qm + - type: PdaBorderColor + borderColor: "#e39751" + accentVColor: "#a23e3e" + - type: Icon + state: pda-qm + +- type: entity + parent: BasePDA + id: CargoPDA + name: cargo PDA + description: PDA for the guys that order the pizzas. + components: + - type: Pda + id: CargoIDCard + state: pda-cargo + - type: PdaBorderColor + borderColor: "#e39751" + - type: Icon + state: pda-cargo + +- type: entity + parent: BasePDA + id: SalvagePDA + name: salvage PDA + description: Smells like ash. + components: + - type: Pda + id: SalvageIDCard + state: pda-miner + - type: PdaBorderColor + borderColor: "#af9366" + accentVColor: "#8900c9" + - type: Icon + state: pda-miner + +- type: entity + parent: BasePDA + id: BartenderPDA + name: bartender PDA + description: Smells like beer. + components: + - type: Pda + id: BartenderIDCard + state: pda-bartender + - type: PdaBorderColor + borderColor: "#333333" + - type: Icon + state: pda-bartender + +- type: entity + parent: BasePDA + id: LibrarianPDA + name: librarian PDA + description: Smells like books. + components: + - type: Pda + id: LibrarianIDCard + state: pda-library + - type: PdaBorderColor + borderColor: "#858585" + - type: Icon + state: pda-library + +- type: entity + parent: BasePDA + id: LawyerPDA + name: lawyer PDA + description: For lawyers to poach dubious clients. + components: + - type: Pda + id: LawyerIDCard + state: pda-lawyer + - type: PdaBorderColor + borderColor: "#6f6192" + - type: Icon + state: pda-lawyer + +- type: entity + parent: BasePDA + id: JanitorPDA + name: janitor PDA + description: Smells like bleach. + components: + - type: Pda + id: JanitorIDCard + state: pda-janitor + - type: PdaBorderColor + borderColor: "#5D2D56" + - type: Icon + state: pda-janitor + +- type: entity + parent: BasePDA + id: CaptainPDA + name: captain PDA + description: Surprisingly no different from your PDA. + components: + - type: Pda + id: CaptainIDCard + state: pda-captain + penSlot: + startingItem: PenCap + priority: -1 + whitelist: + tags: + - Write + - type: PdaBorderColor + borderColor: "#7C5D00" + - type: Icon + state: pda-captain + +- type: entity + parent: BasePDA + id: HoPPDA + name: head of personnel PDA + description: Looks like it's been chewed on. + components: + - type: Pda + id: HoPIDCard + state: pda-hop + penSlot: + startingItem: PenHop + priority: -1 + whitelist: + tags: + - Write + - type: PdaBorderColor + borderColor: "#789876" + accentHColor: "#447987" + - type: Icon + state: pda-hop + +- type: entity + parent: BasePDA + id: CEPDA + name: chief engineer PDA + description: Looks like it's barely been used. + components: + - type: Pda + id: CEIDCard + state: pda-ce + - type: PdaBorderColor + borderColor: "#949137" + accentHColor: "#447987" + - type: Icon + state: pda-ce + +- type: entity + parent: BasePDA + id: EngineerPDA + name: engineer PDA + description: Rugged and well-worn. + components: + - type: Pda + id: EngineeringIDCard + state: pda-engineer + - type: PdaBorderColor + borderColor: "#949137" + accentVColor: "#A32D26" + - type: Icon + state: pda-engineer + +- type: entity + parent: BasePDA + id: CMOPDA + name: chief medical officer PDA + description: Extraordinarily shiny and sterile. Has a built-in health analyzer. + components: + - type: Pda + id: CMOIDCard + state: pda-cmo + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentHColor: "#447987" + accentVColor: "#447987" + - type: Icon + state: pda-cmo + - type: HealthAnalyzer + scanDelay: 1 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + +- type: entity + parent: BasePDA + id: MedicalPDA + name: medical PDA + description: Shiny and sterile. Has a built-in health analyzer. + components: + - type: Pda + id: MedicalIDCard + state: pda-medical + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentVColor: "#447987" + - type: Icon + state: pda-medical + - type: HealthAnalyzer + scanDelay: 1 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + - type: GuideHelp + guides: + - Medical Doctor + +- type: entity + parent: BasePDA + id: ParamedicPDA + name: paramedic PDA + description: Shiny and sterile. Has a built-in rapid health analyzer. + components: + - type: Pda + id: ParamedicIDCard + state: pda-paramedic + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentVColor: "#2a4b5b" + - type: Icon + state: pda-paramedic + - type: HealthAnalyzer + scanDelay: 1 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + +- type: entity + parent: BasePDA + id: ChemistryPDA + name: chemistry PDA + description: It has a few discolored blotches here and there. + components: + - type: Pda + id: ChemistIDCard + state: pda-chemistry + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentVColor: "#B34200" + - type: Icon + state: pda-chemistry + - type: HealthAnalyzer + scanDelay: 1 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + +- type: entity + parent: BasePDA + id: RnDPDA + name: research director PDA + description: It appears surprisingly ordinary. + components: + - type: Pda + id: RDIDCard + state: pda-rd + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentHColor: "#447987" + accentVColor: "#8900c9" + - type: Icon + state: pda-rd + +- type: entity + parent: BasePDA + id: SciencePDA + name: science PDA + description: It's covered with an unknown gooey substance. + components: + - type: Pda + id: ResearchIDCard + state: pda-science + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentVColor: "#8900c9" + - type: Icon + state: pda-science + +- type: entity + parent: BasePDA + id: HoSPDA + name: head of security PDA + description: Whosoever bears this PDA is the law. + components: + - type: Pda + id: HoSIDCard + state: pda-hos + - type: PdaBorderColor + borderColor: "#A32D26" + accentHColor: "#447987" + - type: Icon + state: pda-hos + +- type: entity + parent: BasePDA + id: WardenPDA + name: warden PDA + description: The OS appears to have been jailbroken. + components: + - type: Pda + id: WardenIDCard + state: pda-warden + - type: PdaBorderColor + borderColor: "#A32D26" + accentVColor: "#949137" + - type: Icon + state: pda-warden + +- type: entity + parent: BasePDA + id: SecurityPDA + name: security PDA + description: Red to hide the stains of passenger blood. + components: + - type: Pda + id: SecurityIDCard + state: pda-security + - type: PdaBorderColor + borderColor: "#A32D26" + - type: Icon + state: pda-security + +- type: entity + parent: BasePDA + id: SecurityPilotPDA + name: КПК пилота СБ + description: Красный, чтобы скрыть пятна крови ассистента. + components: + - type: Pda + id: SecurityPilotIDCard + state: pda-security + - type: PdaBorderColor + borderColor: "#DC143C" + - type: Icon + state: pda-security + +- type: entity + parent: BasePDA + id: CentcomPDA + name: CentCom PDA + description: Light green sign of walking bureaucracy. + components: + - type: Pda + id: CentcomIDCard + state: pda-centcom + penSlot: + startingItem: PenCentcom + whitelist: + tags: + - Write + - type: PdaBorderColor + borderColor: "#00842e" + - type: Icon + state: pda-centcom + +- type: entity + parent: CentcomPDA + id: CentcomPDAFake + suffix: Fake + components: + - type: Pda + id: CentcomIDCardSyndie + +- type: entity + parent: CentcomPDA + id: DeathsquadPDA + suffix: Deathsquad + components: + - type: Pda + id: CentcomIDCardDeathsquad + +- type: entity + parent: BasePDA + id: MusicianPDA + name: musician PDA + description: It fills you with inspiration. + components: + - type: Pda + id: MusicianIDCard + state: pda-musician + - type: PdaBorderColor + borderColor: "#333333" + - type: Icon + state: pda-musician + - type: Instrument + allowPercussion: false + handheld: true + bank: 1 + program: 2 + +- type: entity + parent: BasePDA + id: AtmosPDA + name: atmos PDA + description: Still smells like plasma. + components: + - type: Pda + id: AtmosIDCard + state: pda-atmos + - type: PdaBorderColor + borderColor: "#949137" + accentVColor: "#447987" + - type: Icon + state: pda-atmos + +- type: entity + parent: BasePDA + id: ClearPDA + name: clear PDA + description: 99 and 44/100ths percent pure plastic. + components: + - type: Pda + id: PassengerIDCard + state: pda-clear + - type: PdaBorderColor + borderColor: "#288e4d" + - type: Icon + state: pda-clear + +- type: entity + parent: BasePDA + id: SyndiPDA + name: syndicate PDA + description: Ok, time to be a productive member of- oh cool I'm a bad guy time to kill people! + components: + - type: Pda + id: SyndicateIDCard + state: pda-syndi + - type: PdaBorderColor + borderColor: "#891417" + - type: Icon + state: pda-syndi + - type: CartridgeLoader + uiKey: enum.PdaUiKey.Key + preinstalled: + - NotekeeperCartridge + cartridgeSlot: + priority: -1 + name: Cartridge + ejectSound: /Audio/Machines/id_swipe.ogg + insertSound: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg + whitelist: + components: + - Cartridge + +- type: entity + parent: BasePDA + id: ERTLeaderPDA + name: ERT PDA + description: Red for firepower. + components: + - type: Pda + id: ERTLeaderIDCard + state: pda-ert + - type: PdaBorderColor + borderColor: "#A32D26" + accentHColor: "#447987" + accentVColor: "#447987" + - type: Icon + state: pda-ert + +- type: entity + parent: ERTLeaderPDA + id: CBURNPDA + name: CBURN PDA + description: Smells like rotten flesh. + components: + - type: Pda + id: CBURNIDcard + state: pda-ert + - type: PdaBorderColor + borderColor: "#A32D26" + accentHColor: "#447987" + accentVColor: "#447987" + +- type: entity + parent: BasePDA + id: PsychologistPDA + name: psychologist PDA + description: Looks immaculately cleaned. + components: + - type: Pda + id: PsychologistIDCard + state: pda-medical + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentVColor: "#447987" + - type: Icon + state: pda-medical + +- type: entity + parent: BasePDA + id: ReporterPDA + name: reporter PDA + description: Smells like freshly printed press. + components: + - type: Pda + id: ReporterIDCard + state: pda-reporter + - type: PdaBorderColor + borderColor: "#3f3f74" + - type: Icon + state: pda-reporter + +- type: entity + parent: BasePDA + id: ZookeeperPDA + name: zookeeper PDA + description: Made with genuine synthetic leather. Crikey! + components: + - type: Pda + id: ZookeeperIDCard + state: pda-zookeeper + - type: PdaBorderColor + borderColor: "#ffe685" + - type: Icon + state: pda-zookeeper + +- type: entity + parent: BasePDA + id: BoxerPDA + name: boxer PDA + description: Float like a butterfly, ringtone like a bee. + components: + - type: Pda + id: BoxerIDCard + state: pda-boxer + - type: PdaBorderColor + borderColor: "#333333" + accentVColor: "#390504" + - type: Icon + state: pda-boxer + +- type: entity + parent: BasePDA + id: DetectivePDA + name: detective PDA + description: Smells like rain... pouring down the rooftops... + components: + - type: Pda + id: DetectiveIDCard + state: pda-detective + - type: PdaBorderColor + borderColor: "#774705" + - type: Icon + state: pda-detective + +- type: entity + parent: BasePDA + id: BrigmedicPDA + name: brigmedic PDA + description: I wonder whose pulse is on the screen? I hope he doesnt stop... PDA has a built-in health analyzer. + components: + - type: Pda + id: BrigmedicIDCard + state: pda-brigmedic + - type: PdaBorderColor + borderColor: "#A32D26" + accentHColor: "#d7d7d0" + accentVColor: "#d7d7d0" + - type: Icon + state: pda-brigmedic + - type: HealthAnalyzer + scanDelay: 1 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + +- type: entity + parent: ClownPDA + id: CluwnePDA + name: cluwne PDA + suffix: Unremoveable + description: Cursed cluwne PDA. + components: + - type: Pda + id: CluwneIDCard + state: pda-cluwne + - type: PdaBorderColor + borderColor: "#1c8f4d" + - type: Icon + state: pda-cluwne + penSlot: + startingItem: CrayonGreen + ejectSound: /Audio/Items/bikehorn.ogg + priority: -1 + whitelist: + tags: + - Write + - type: Unremoveable + +- type: entity + parent: BasePDA + id: SeniorEngineerPDA + name: senior engineer PDA + description: Seems to have been taken apart and put back together several times. + components: + - type: Pda + id: SeniorEngineerIDCard + state: pda-seniorengineer + - type: PdaBorderColor + borderColor: "#949137" + accentVColor: "#CD6900" + - type: Icon + state: pda-seniorengineer + +- type: entity + parent: BasePDA + id: SeniorResearcherPDA + name: senior researcher PDA + description: Looks like it's been through years of chemical burns and explosions. + components: + - type: Pda + id: SeniorResearcherIDCard + state: pda-seniorresearcher + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentHColor: "#8900c9" + accentVColor: "#8900c9" + - type: Icon + state: pda-seniorresearcher + +- type: entity + parent: BasePDA + id: SeniorPhysicianPDA + name: senior physician PDA + description: Smells faintly like iron and chemicals. Has a built-in health analyzer. + components: + - type: Pda + id: SeniorPhysicianIDCard + state: pda-seniorphysician + - type: PdaBorderColor + borderColor: "#d7d7d0" + accentHColor: "#447987" + accentVColor: "#B34200" + - type: Icon + state: pda-seniorphysician + - type: HealthAnalyzer + scanDelay: 1 + scanningEndSound: + path: "/Audio/Items/Medical/healthscanner.ogg" + +- type: entity + parent: BasePDA + id: SeniorOfficerPDA + name: senior officer PDA + description: Beaten, battered and broken, but just barely useable. + components: + - type: Pda + id: SeniorOfficerIDCard + state: pda-seniorofficer + - type: PdaBorderColor + borderColor: "#A32D26" + accentVColor: "#DFDFDF" + - type: Icon + state: pda-seniorofficer diff --git a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml index f6b5eb562ac2..78c34ed2a551 100644 --- a/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml +++ b/Resources/Prototypes/Entities/Objects/Misc/identification_cards.yml @@ -1,770 +1,782 @@ -- type: entity - parent: Clothing - id: IDCardStandard - name: identification card - description: A card necessary to access various areas aboard the station. - noSpawn: true - components: - - type: Sprite - sprite: Objects/Misc/id_cards.rsi - - type: Clothing - slots: - - idcard - sprite: Objects/Misc/id_cards.rsi - - type: Item - heldPrefix: default - - type: Access - - type: IdCard - - type: StationRecordKeyStorage - - type: Tag - tags: - - DoorBumpOpener - -#IDs with layers - -- type: entity - parent: IDCardStandard - id: PassengerIDCard - name: passenger ID card - components: - - type: Sprite - layers: - - state: default - - state: idpassenger - - type: PresetIdCard - job: Passenger - -- type: entity - parent: PassengerIDCard - id: TechnicalAssistantIDCard - name: technical assistant ID card - components: - - type: PresetIdCard - job: TechnicalAssistant - - type: Sprite - layers: - - state: default - - state: idintern-tech - -- type: entity - parent: PassengerIDCard - id: BlueShieldIDCard - name: blue shield ID card - components: - - type: PresetIdCard - job: BlueShield - - type: Sprite - layers: - - state: default - - state: idblueshield - -- type: entity - parent: PassengerIDCard - id: MedicalInternIDCard - name: medical intern ID card - components: - - type: PresetIdCard - job: MedicalIntern - - type: Sprite - layers: - - state: default - - state: idintern-med - -- type: entity - parent: PassengerIDCard - id: ResearchAssistantIDCard - name: research assistant ID card - components: - - type: PresetIdCard - job: ResearchAssistant - - type: Sprite - layers: - - state: default - - state: idintern-sci - -- type: entity - parent: PassengerIDCard - id: SecurityCadetIDCard - name: security cadet ID card - components: - - type: PresetIdCard - job: SecurityCadet - - type: Sprite - layers: - - state: default - - state: idintern-cadet - -- type: entity - parent: PassengerIDCard - id: ServiceWorkerIDCard - name: service worker ID card - components: - - type: PresetIdCard - job: ServiceWorker - - type: Sprite - layers: - - state: default - - state: idintern-service - -- type: entity - parent: IDCardStandard - id: CaptainIDCard - name: captain ID card - components: - - type: Sprite - layers: - - state: gold - - state: idcaptain - - type: Item - heldPrefix: gold - - type: PresetIdCard - job: Captain - - type: Tag - tags: - - DoorBumpOpener - - WhitelistChameleon - - HighRiskItem - -- type: entity - parent: IDCardStandard - id: SecurityIDCard - name: security ID card - components: - - type: Sprite - layers: - - state: default - - state: idsecurityofficer - - type: PresetIdCard - job: SecurityOfficer - -- type: entity - parent: IDCardStandard - id: WardenIDCard - name: warden ID card - components: - - type: Sprite - layers: - - state: default - - state: idwarden - - type: PresetIdCard - job: Warden - -- type: entity - parent: IDCardStandard - id: EngineeringIDCard - name: engineer ID card - components: - - type: Sprite - layers: - - state: default - - state: idstationengineer - - type: PresetIdCard - job: StationEngineer - -- type: entity - parent: IDCardStandard - id: MedicalIDCard - name: medical ID card - components: - - type: Sprite - layers: - - state: default - - state: idmedicaldoctor - - type: PresetIdCard - job: MedicalDoctor - -- type: entity - parent: IDCardStandard - id: ParamedicIDCard - name: paramedic ID card - components: - - type: Sprite - layers: - - state: default - - state: idparamedic - - type: PresetIdCard - job: Paramedic - -- type: entity - parent: IDCardStandard - id: ChemistIDCard - name: chemist ID card - components: - - type: Sprite - layers: - - state: default - - state: idchemist - - type: PresetIdCard - job: Chemist - -- type: entity - parent: IDCardStandard - id: CargoIDCard - name: cargo ID card - components: - - type: Sprite - layers: - - state: default - - state: idcargotechnician - - type: PresetIdCard - job: CargoTechnician - -- type: entity - parent: IDCardStandard - id: SalvageIDCard - name: salvage ID card - components: - - type: Sprite - layers: - - state: default - - state: idshaftminer - - type: PresetIdCard - job: SalvageSpecialist - -- type: entity - parent: IDCardStandard - id: QuartermasterIDCard - name: quartermaster ID card - components: - - type: Sprite - layers: - - state: default - - state: idquartermaster - - type: PresetIdCard - job: Quartermaster - -- type: entity - parent: IDCardStandard - id: ResearchIDCard - name: research ID card - components: - - type: Sprite - layers: - - state: default - - state: idscientist - - type: PresetIdCard - job: Scientist - -- type: entity - parent: IDCardStandard - id: ClownIDCard - name: clown ID card - components: - - type: Sprite - layers: - - state: default - - state: idclown - - type: PresetIdCard - job: Clown - -- type: entity - parent: IDCardStandard - id: MimeIDCard - name: mime ID card - components: - - type: Sprite - layers: - - state: default - - state: idmime - - type: PresetIdCard - job: Mime - -- type: entity - parent: IDCardStandard - id: ChaplainIDCard - name: chaplain ID card - components: - - type: Sprite - layers: - - state: default - - state: idchaplain - - type: PresetIdCard - job: Chaplain - -- type: entity - parent: IDCardStandard - id: JanitorIDCard - name: janitor ID card - components: - - type: Sprite - layers: - - state: default - - state: idjanitor - - type: PresetIdCard - job: Janitor - -- type: entity - parent: IDCardStandard - id: BartenderIDCard - name: bartender ID card - components: - - type: Sprite - layers: - - state: default - - state: idbartender - - type: PresetIdCard - job: Bartender - -- type: entity - parent: IDCardStandard - id: PunPunIDCard - name: pun pun ID card - components: - - type: Sprite - layers: - - state: default - - state: idbartender - - type: PresetIdCard - job: Bartender - name: Pun Pun - -- type: entity - parent: IDCardStandard - id: ChefIDCard - name: chef ID card - components: - - type: Sprite - layers: - - state: default - - state: idcook - - type: PresetIdCard - job: Chef - -- type: entity - parent: IDCardStandard - id: BotanistIDCard - name: botanist ID card - components: - - type: Sprite - layers: - - state: default - - state: idbotanist - - type: PresetIdCard - job: Botanist - -- type: entity - parent: IDCardStandard - id: LibrarianIDCard - name: librarian ID card - components: - - type: Sprite - layers: - - state: default - - state: idcurator - - type: PresetIdCard - job: Librarian - -- type: entity - parent: IDCardStandard - id: LawyerIDCard - name: lawyer ID card - components: - - type: Sprite - layers: - - state: default - - state: idlawyer - - type: PresetIdCard - job: Lawyer - -- type: entity - parent: IDCardStandard - id: HoPIDCard - name: head of personnel ID card - components: - - type: Sprite - layers: - - state: silver - - state: idheadofpersonnel - - type: Item - heldPrefix: silver - - type: PresetIdCard - job: HeadOfPersonnel - -- type: entity - parent: IDCardStandard - id: CEIDCard - name: chief engineer ID card - components: - - type: Sprite - layers: - - state: silver - - state: idchiefengineer - - type: Item - heldPrefix: silver - - type: PresetIdCard - job: ChiefEngineer - -- type: entity - parent: IDCardStandard - id: CMOIDCard - name: chief medical officer ID card - components: - - type: Sprite - layers: - - state: silver - - state: idchiefmedicalofficer - - type: Item - heldPrefix: silver - - type: PresetIdCard - job: ChiefMedicalOfficer - -- type: entity - parent: IDCardStandard - id: RDIDCard - name: research director ID card - components: - - type: Sprite - layers: - - state: silver - - state: idresearchdirector - - type: Item - heldPrefix: silver - - type: PresetIdCard - job: ResearchDirector - -- type: entity - parent: IDCardStandard - id: HoSIDCard - name: head of security ID card - components: - - type: Sprite - layers: - - state: silver - - state: idheadofsecurity - - type: Item - heldPrefix: silver - - type: PresetIdCard - job: HeadOfSecurity - -- type: entity - parent: IDCardStandard - id: BrigmedicIDCard - name: brigmedic ID card - components: - - type: Sprite - layers: - - state: default - - state: idbrigmedic - - type: PresetIdCard - job: Brigmedic - -- type: entity - parent: IDCardStandard - id: CentcomIDCard - name: command officer ID card - components: - - type: Sprite - layers: - - state: centcom - - state: idcentcom - - type: Item - heldPrefix: blue - - type: IdCard - jobTitle: Central Commander - - type: Access - groups: - - AllAccess - -- type: entity - parent: CentcomIDCard - id: ERTLeaderIDCard - name: ERT ID card - components: - - type: Sprite - layers: - - state: gold - - state: ert_commander # we have the sprites but don't need individual ID entities for now. - - type: Item - heldPrefix: gold - -- type: entity - parent: IDCardStandard - id: CentcomIDCardSyndie - name: command officer ID card - suffix: Fake - components: - - type: Sprite - layers: - - state: centcom - - state: idcentcom - - type: Item - heldPrefix: blue - - type: IdCard - jobTitle: Central Commander - - type: Access - groups: - - AllAccess - -- type: entity - parent: IDCardStandard - id: MusicianIDCard - name: musician ID card - components: - - type: Sprite - layers: - - state: default - - state: idmusician - - type: PresetIdCard - job: Musician - -- type: entity - parent: CentcomIDCard - id: CentcomIDCardDeathsquad - name: deathsquad ID card - components: - - type: Sprite - layers: - - state: centcom - - type: Item - heldPrefix: blue - - type: IdCard - jobTitle: Centcom Agent - -- type: entity - name: passenger ID card - parent: IDCardStandard - id: AgentIDCard - suffix: Agent - components: - - type: IdCard - jobTitle: Passenger - - type: Access - tags: - - Maintenance - - SyndicateAgent - - type: Sprite - layers: - - state: default - - state: idpassenger - - type: AgentIDCard - icons: - # TODO figure out a better way of doing this. - # Probably by adding a bool or icon-category data-field to the icon prototype? - - JobIconDetective - - JobIconQuarterMaster - - JobIconBotanist - - JobIconBoxer - - JobIconAtmosphericTechnician - - JobIconNanotrasen - - JobIconPrisoner - - JobIconJanitor - - JobIconChemist - - JobIconStationEngineer - - JobIconSecurityOfficer - - JobIconChiefMedicalOfficer - - JobIconRoboticist - - JobIconChaplain - - JobIconLawyer - - JobIconUnknown - - JobIconLibrarian - - JobIconCargoTechnician - - JobIconScientist - - JobIconResearchAssistant - - JobIconGeneticist - - JobIconClown - - JobIconCaptain - - JobIconHeadOfPersonnel - - JobIconVirologist - - JobIconShaftMiner - - JobIconPassenger - - JobIconChiefEngineer - - JobIconBartender - - JobIconHeadOfSecurity - - JobIconBrigmedic - - JobIconMedicalDoctor - - JobIconParamedic - - JobIconChef - - JobIconWarden - - JobIconResearchDirector - - JobIconMime - - JobIconMusician - - JobIconReporter - - JobIconPsychologist - - JobIconMedicalIntern - - JobIconTechnicalAssistant - - JobIconServiceWorker - - JobIconSecurityCadet - - JobIconZookeeper - - JobIconSeniorPhysician - - JobIconSeniorOfficer - - JobIconSeniorEngineer - - JobIconSeniorResearcher - - type: ActivatableUI - key: enum.AgentIDCardUiKey.Key - inHandsOnly: true - - type: UserInterface - interfaces: - - key: enum.AgentIDCardUiKey.Key - type: AgentIDCardBoundUserInterface - -- type: entity - name: passenger ID card - parent: AgentIDCard - id: NukieAgentIDCard - suffix: Nukie - components: - - type: Access - tags: - - Maintenance - - SyndicateAgent - - NuclearOperative - -- type: entity - parent: IDCardStandard - id: AtmosIDCard - name: atmospheric technician ID card - components: - - type: Sprite - layers: - - state: orange - - state: idatmospherictechnician - - type: PresetIdCard - job: AtmosphericTechnician - -- type: entity - parent: IDCardStandard - id: SyndicateIDCard - name: syndicate ID card - components: - - type: Sprite - layers: - - state: syndie - - type: Access - tags: - - NuclearOperative - - SyndicateAgent - -- type: entity - parent: IDCardStandard - id: PsychologistIDCard - name: psychologist ID card - components: - - type: Sprite - layers: - - state: default - - state: idpsychologist - - type: PresetIdCard - job: Psychologist - -- type: entity - parent: IDCardStandard - id: ReporterIDCard - name: reporter ID card - components: - - type: Sprite - layers: - - state: default - - state: idreporter - - type: PresetIdCard - job: Reporter - -- type: entity - parent: IDCardStandard - id: BoxerIDCard - name: boxer ID card - components: - - type: Sprite - layers: - - state: default - - state: idboxer - - type: PresetIdCard - job: Boxer - -- type: entity - parent: IDCardStandard - id: ZookeeperIDCard - name: zookeeper ID card - components: - - type: Sprite - layers: - - state: default - - state: idzookeeper - - type: PresetIdCard - job: Zookeeper - -- type: entity - parent: IDCardStandard - id: DetectiveIDCard - name: detective ID card - components: - - type: Sprite - layers: - - state: default - - state: iddetective - - type: PresetIdCard - job: Detective - -- type: entity - parent: CentcomIDCard - id: CBURNIDcard - name: CBURN ID card - components: - - type: Sprite - layers: - - state: gold - - state: idcentcom - - type: Item - heldPrefix: gold - - -- type: entity - parent: IDCardStandard - id: CluwneIDCard - name: cluwne ID card - suffix: Unremoveable - components: - - type: Sprite - layers: - - state: default - - state: idcluwne - - type: IdCard - jobTitle: Cluwne - - type: Unremoveable - -- type: entity - parent: IDCardStandard - id: SeniorEngineerIDCard - name: senior engineer ID card - components: - - type: Sprite - layers: - - state: default - - state: idseniorengineer - - type: PresetIdCard - job: SeniorEngineer - -- type: entity - parent: IDCardStandard - id: SeniorResearcherIDCard - name: senior researcher ID card - components: - - type: Sprite - layers: - - state: default - - state: idseniorresearcher - - type: PresetIdCard - job: SeniorResearcher - -- type: entity - parent: IDCardStandard - id: SeniorPhysicianIDCard - name: senior physician ID card - components: - - type: Sprite - layers: - - state: default - - state: idseniorphysician - - type: PresetIdCard - job: SeniorPhysician - -- type: entity - parent: IDCardStandard - id: SeniorOfficerIDCard - name: senior officer ID card - components: - - type: Sprite - layers: - - state: default - - state: idseniorofficer - - type: PresetIdCard - job: SeniorOfficer +- type: entity + parent: Clothing + id: IDCardStandard + name: identification card + description: A card necessary to access various areas aboard the station. + noSpawn: true + components: + - type: Sprite + sprite: Objects/Misc/id_cards.rsi + - type: Clothing + slots: + - idcard + sprite: Objects/Misc/id_cards.rsi + - type: Item + heldPrefix: default + - type: Access + - type: IdCard + - type: StationRecordKeyStorage + - type: Tag + tags: + - DoorBumpOpener + +#IDs with layers + +- type: entity + parent: IDCardStandard + id: PassengerIDCard + name: passenger ID card + components: + - type: Sprite + layers: + - state: default + - state: idpassenger + - type: PresetIdCard + job: Passenger + +- type: entity + parent: PassengerIDCard + id: TechnicalAssistantIDCard + name: technical assistant ID card + components: + - type: PresetIdCard + job: TechnicalAssistant + - type: Sprite + layers: + - state: default + - state: idintern-tech + +- type: entity + parent: PassengerIDCard + id: BlueShieldIDCard + name: blue shield ID card + components: + - type: PresetIdCard + job: BlueShield + - type: Sprite + layers: + - state: default + - state: idblueshield + +- type: entity + parent: PassengerIDCard + id: MedicalInternIDCard + name: medical intern ID card + components: + - type: PresetIdCard + job: MedicalIntern + - type: Sprite + layers: + - state: default + - state: idintern-med + +- type: entity + parent: PassengerIDCard + id: ResearchAssistantIDCard + name: research assistant ID card + components: + - type: PresetIdCard + job: ResearchAssistant + - type: Sprite + layers: + - state: default + - state: idintern-sci + +- type: entity + parent: PassengerIDCard + id: SecurityCadetIDCard + name: security cadet ID card + components: + - type: PresetIdCard + job: SecurityCadet + - type: Sprite + layers: + - state: default + - state: idintern-cadet + +- type: entity + parent: PassengerIDCard + id: ServiceWorkerIDCard + name: service worker ID card + components: + - type: PresetIdCard + job: ServiceWorker + - type: Sprite + layers: + - state: default + - state: idintern-service + +- type: entity + parent: IDCardStandard + id: CaptainIDCard + name: captain ID card + components: + - type: Sprite + layers: + - state: gold + - state: idcaptain + - type: Item + heldPrefix: gold + - type: PresetIdCard + job: Captain + - type: Tag + tags: + - DoorBumpOpener + - WhitelistChameleon + - HighRiskItem + +- type: entity + parent: IDCardStandard + id: SecurityIDCard + name: security ID card + components: + - type: Sprite + layers: + - state: default + - state: idsecurityofficer + - type: PresetIdCard + job: SecurityOfficer + +- type: entity + parent: IDCardStandard + id: SecurityPilotIDCard + name: ID карта (пилот СБ) + components: + - type: Sprite + layers: + - state: default + - state: idsecurityofficer + - type: PresetIdCard + job: SecurityPilot + +- type: entity + parent: IDCardStandard + id: WardenIDCard + name: warden ID card + components: + - type: Sprite + layers: + - state: default + - state: idwarden + - type: PresetIdCard + job: Warden + +- type: entity + parent: IDCardStandard + id: EngineeringIDCard + name: engineer ID card + components: + - type: Sprite + layers: + - state: default + - state: idstationengineer + - type: PresetIdCard + job: StationEngineer + +- type: entity + parent: IDCardStandard + id: MedicalIDCard + name: medical ID card + components: + - type: Sprite + layers: + - state: default + - state: idmedicaldoctor + - type: PresetIdCard + job: MedicalDoctor + +- type: entity + parent: IDCardStandard + id: ParamedicIDCard + name: paramedic ID card + components: + - type: Sprite + layers: + - state: default + - state: idparamedic + - type: PresetIdCard + job: Paramedic + +- type: entity + parent: IDCardStandard + id: ChemistIDCard + name: chemist ID card + components: + - type: Sprite + layers: + - state: default + - state: idchemist + - type: PresetIdCard + job: Chemist + +- type: entity + parent: IDCardStandard + id: CargoIDCard + name: cargo ID card + components: + - type: Sprite + layers: + - state: default + - state: idcargotechnician + - type: PresetIdCard + job: CargoTechnician + +- type: entity + parent: IDCardStandard + id: SalvageIDCard + name: salvage ID card + components: + - type: Sprite + layers: + - state: default + - state: idshaftminer + - type: PresetIdCard + job: SalvageSpecialist + +- type: entity + parent: IDCardStandard + id: QuartermasterIDCard + name: quartermaster ID card + components: + - type: Sprite + layers: + - state: default + - state: idquartermaster + - type: PresetIdCard + job: Quartermaster + +- type: entity + parent: IDCardStandard + id: ResearchIDCard + name: research ID card + components: + - type: Sprite + layers: + - state: default + - state: idscientist + - type: PresetIdCard + job: Scientist + +- type: entity + parent: IDCardStandard + id: ClownIDCard + name: clown ID card + components: + - type: Sprite + layers: + - state: default + - state: idclown + - type: PresetIdCard + job: Clown + +- type: entity + parent: IDCardStandard + id: MimeIDCard + name: mime ID card + components: + - type: Sprite + layers: + - state: default + - state: idmime + - type: PresetIdCard + job: Mime + +- type: entity + parent: IDCardStandard + id: ChaplainIDCard + name: chaplain ID card + components: + - type: Sprite + layers: + - state: default + - state: idchaplain + - type: PresetIdCard + job: Chaplain + +- type: entity + parent: IDCardStandard + id: JanitorIDCard + name: janitor ID card + components: + - type: Sprite + layers: + - state: default + - state: idjanitor + - type: PresetIdCard + job: Janitor + +- type: entity + parent: IDCardStandard + id: BartenderIDCard + name: bartender ID card + components: + - type: Sprite + layers: + - state: default + - state: idbartender + - type: PresetIdCard + job: Bartender + +- type: entity + parent: IDCardStandard + id: PunPunIDCard + name: pun pun ID card + components: + - type: Sprite + layers: + - state: default + - state: idbartender + - type: PresetIdCard + job: Bartender + name: Pun Pun + +- type: entity + parent: IDCardStandard + id: ChefIDCard + name: chef ID card + components: + - type: Sprite + layers: + - state: default + - state: idcook + - type: PresetIdCard + job: Chef + +- type: entity + parent: IDCardStandard + id: BotanistIDCard + name: botanist ID card + components: + - type: Sprite + layers: + - state: default + - state: idbotanist + - type: PresetIdCard + job: Botanist + +- type: entity + parent: IDCardStandard + id: LibrarianIDCard + name: librarian ID card + components: + - type: Sprite + layers: + - state: default + - state: idcurator + - type: PresetIdCard + job: Librarian + +- type: entity + parent: IDCardStandard + id: LawyerIDCard + name: lawyer ID card + components: + - type: Sprite + layers: + - state: default + - state: idlawyer + - type: PresetIdCard + job: Lawyer + +- type: entity + parent: IDCardStandard + id: HoPIDCard + name: head of personnel ID card + components: + - type: Sprite + layers: + - state: silver + - state: idheadofpersonnel + - type: Item + heldPrefix: silver + - type: PresetIdCard + job: HeadOfPersonnel + +- type: entity + parent: IDCardStandard + id: CEIDCard + name: chief engineer ID card + components: + - type: Sprite + layers: + - state: silver + - state: idchiefengineer + - type: Item + heldPrefix: silver + - type: PresetIdCard + job: ChiefEngineer + +- type: entity + parent: IDCardStandard + id: CMOIDCard + name: chief medical officer ID card + components: + - type: Sprite + layers: + - state: silver + - state: idchiefmedicalofficer + - type: Item + heldPrefix: silver + - type: PresetIdCard + job: ChiefMedicalOfficer + +- type: entity + parent: IDCardStandard + id: RDIDCard + name: research director ID card + components: + - type: Sprite + layers: + - state: silver + - state: idresearchdirector + - type: Item + heldPrefix: silver + - type: PresetIdCard + job: ResearchDirector + +- type: entity + parent: IDCardStandard + id: HoSIDCard + name: head of security ID card + components: + - type: Sprite + layers: + - state: silver + - state: idheadofsecurity + - type: Item + heldPrefix: silver + - type: PresetIdCard + job: HeadOfSecurity + +- type: entity + parent: IDCardStandard + id: BrigmedicIDCard + name: brigmedic ID card + components: + - type: Sprite + layers: + - state: default + - state: idbrigmedic + - type: PresetIdCard + job: Brigmedic + +- type: entity + parent: IDCardStandard + id: CentcomIDCard + name: command officer ID card + components: + - type: Sprite + layers: + - state: centcom + - state: idcentcom + - type: Item + heldPrefix: blue + - type: IdCard + jobTitle: Central Commander + - type: Access + groups: + - AllAccess + +- type: entity + parent: CentcomIDCard + id: ERTLeaderIDCard + name: ERT ID card + components: + - type: Sprite + layers: + - state: gold + - state: ert_commander # we have the sprites but don't need individual ID entities for now. + - type: Item + heldPrefix: gold + +- type: entity + parent: IDCardStandard + id: CentcomIDCardSyndie + name: command officer ID card + suffix: Fake + components: + - type: Sprite + layers: + - state: centcom + - state: idcentcom + - type: Item + heldPrefix: blue + - type: IdCard + jobTitle: Central Commander + - type: Access + groups: + - AllAccess + +- type: entity + parent: IDCardStandard + id: MusicianIDCard + name: musician ID card + components: + - type: Sprite + layers: + - state: default + - state: idmusician + - type: PresetIdCard + job: Musician + +- type: entity + parent: CentcomIDCard + id: CentcomIDCardDeathsquad + name: deathsquad ID card + components: + - type: Sprite + layers: + - state: centcom + - type: Item + heldPrefix: blue + - type: IdCard + jobTitle: Centcom Agent + +- type: entity + name: passenger ID card + parent: IDCardStandard + id: AgentIDCard + suffix: Agent + components: + - type: IdCard + jobTitle: Passenger + - type: Access + tags: + - Maintenance + - SyndicateAgent + - type: Sprite + layers: + - state: default + - state: idpassenger + - type: AgentIDCard + icons: + # TODO figure out a better way of doing this. + # Probably by adding a bool or icon-category data-field to the icon prototype? + - JobIconDetective + - JobIconQuarterMaster + - JobIconBotanist + - JobIconBoxer + - JobIconAtmosphericTechnician + - JobIconNanotrasen + - JobIconPrisoner + - JobIconJanitor + - JobIconChemist + - JobIconStationEngineer + - JobIconSecurityOfficer + - JobIconChiefMedicalOfficer + - JobIconRoboticist + - JobIconChaplain + - JobIconLawyer + - JobIconUnknown + - JobIconLibrarian + - JobIconCargoTechnician + - JobIconScientist + - JobIconResearchAssistant + - JobIconGeneticist + - JobIconClown + - JobIconCaptain + - JobIconHeadOfPersonnel + - JobIconVirologist + - JobIconShaftMiner + - JobIconPassenger + - JobIconChiefEngineer + - JobIconBartender + - JobIconHeadOfSecurity + - JobIconBrigmedic + - JobIconMedicalDoctor + - JobIconParamedic + - JobIconChef + - JobIconWarden + - JobIconResearchDirector + - JobIconMime + - JobIconMusician + - JobIconReporter + - JobIconPsychologist + - JobIconMedicalIntern + - JobIconTechnicalAssistant + - JobIconServiceWorker + - JobIconSecurityCadet + - JobIconZookeeper + - JobIconSeniorPhysician + - JobIconSeniorOfficer + - JobIconSeniorEngineer + - JobIconSeniorResearcher + - type: ActivatableUI + key: enum.AgentIDCardUiKey.Key + inHandsOnly: true + - type: UserInterface + interfaces: + - key: enum.AgentIDCardUiKey.Key + type: AgentIDCardBoundUserInterface + +- type: entity + name: passenger ID card + parent: AgentIDCard + id: NukieAgentIDCard + suffix: Nukie + components: + - type: Access + tags: + - Maintenance + - SyndicateAgent + - NuclearOperative + +- type: entity + parent: IDCardStandard + id: AtmosIDCard + name: atmospheric technician ID card + components: + - type: Sprite + layers: + - state: orange + - state: idatmospherictechnician + - type: PresetIdCard + job: AtmosphericTechnician + +- type: entity + parent: IDCardStandard + id: SyndicateIDCard + name: syndicate ID card + components: + - type: Sprite + layers: + - state: syndie + - type: Access + tags: + - NuclearOperative + - SyndicateAgent + +- type: entity + parent: IDCardStandard + id: PsychologistIDCard + name: psychologist ID card + components: + - type: Sprite + layers: + - state: default + - state: idpsychologist + - type: PresetIdCard + job: Psychologist + +- type: entity + parent: IDCardStandard + id: ReporterIDCard + name: reporter ID card + components: + - type: Sprite + layers: + - state: default + - state: idreporter + - type: PresetIdCard + job: Reporter + +- type: entity + parent: IDCardStandard + id: BoxerIDCard + name: boxer ID card + components: + - type: Sprite + layers: + - state: default + - state: idboxer + - type: PresetIdCard + job: Boxer + +- type: entity + parent: IDCardStandard + id: ZookeeperIDCard + name: zookeeper ID card + components: + - type: Sprite + layers: + - state: default + - state: idzookeeper + - type: PresetIdCard + job: Zookeeper + +- type: entity + parent: IDCardStandard + id: DetectiveIDCard + name: detective ID card + components: + - type: Sprite + layers: + - state: default + - state: iddetective + - type: PresetIdCard + job: Detective + +- type: entity + parent: CentcomIDCard + id: CBURNIDcard + name: CBURN ID card + components: + - type: Sprite + layers: + - state: gold + - state: idcentcom + - type: Item + heldPrefix: gold + + +- type: entity + parent: IDCardStandard + id: CluwneIDCard + name: cluwne ID card + suffix: Unremoveable + components: + - type: Sprite + layers: + - state: default + - state: idcluwne + - type: IdCard + jobTitle: Cluwne + - type: Unremoveable + +- type: entity + parent: IDCardStandard + id: SeniorEngineerIDCard + name: senior engineer ID card + components: + - type: Sprite + layers: + - state: default + - state: idseniorengineer + - type: PresetIdCard + job: SeniorEngineer + +- type: entity + parent: IDCardStandard + id: SeniorResearcherIDCard + name: senior researcher ID card + components: + - type: Sprite + layers: + - state: default + - state: idseniorresearcher + - type: PresetIdCard + job: SeniorResearcher + +- type: entity + parent: IDCardStandard + id: SeniorPhysicianIDCard + name: senior physician ID card + components: + - type: Sprite + layers: + - state: default + - state: idseniorphysician + - type: PresetIdCard + job: SeniorPhysician + +- type: entity + parent: IDCardStandard + id: SeniorOfficerIDCard + name: senior officer ID card + components: + - type: Sprite + layers: + - state: default + - state: idseniorofficer + - type: PresetIdCard + job: SeniorOfficer diff --git a/Resources/Prototypes/Roles/Jobs/departments.yml b/Resources/Prototypes/Roles/Jobs/departments.yml index 9ab58e05b385..42355d23404a 100644 --- a/Resources/Prototypes/Roles/Jobs/departments.yml +++ b/Resources/Prototypes/Roles/Jobs/departments.yml @@ -1,112 +1,113 @@ -- type: department - id: Cargo - description: department-Cargo-description - color: "#A46106" - sort: 0 - roles: - - CargoTechnician - - Quartermaster - - SalvageSpecialist - -- type: department - id: Civilian - description: department-Civilian-description - color: "#9FED58" - sort: 2 - roles: - - Bartender - - Borg - - Botanist - - Boxer - - Chaplain - - Chef - - Clown - - HeadOfPersonnel - - Janitor - - Lawyer - - Librarian - - Mime - - Musician - - Passenger - - Reporter - - Zookeeper - - ServiceWorker - -- type: department - id: Command - sort: 1 - description: department-Command-description - color: "#052EED" - roles: - - Captain - - IAA # Corvax-IAA - - CentralCommandOfficial - - ChiefEngineer - - ChiefMedicalOfficer - - HeadOfPersonnel - - HeadOfSecurity - - ResearchDirector - - Quartermaster - - BlueShield - -- type: department - id: Engineering - sort: 0 - description: department-Engineering-description - color: "#EFB341" - roles: - - AtmosphericTechnician - - ChiefEngineer - - SeniorEngineer - - StationEngineer - - TechnicalAssistant - -- type: department - id: Medical - sort: 0 - description: department-Medical-description - color: "#52B4E9" - roles: - - Chemist - - ChiefMedicalOfficer - - MedicalDoctor - - MedicalIntern - - Psychologist - - Paramedic - - SeniorPhysician - -- type: department - id: Security - sort: 0 - description: department-Security-description - color: "#DE3A3A" - roles: - - HeadOfSecurity - - SecurityCadet - - SecurityOfficer - - SeniorOfficer - - Detective - - Warden - - Brigmedic - -- type: department - id: Science - sort: 0 - description: department-Science-description - color: "#D381C9" - roles: - - ResearchDirector - - SeniorResearcher - - Scientist - - ResearchAssistant - -- type: department - id: Specific - sort: 0 - description: department-Specific-description - color: "#9FED58" - roles: - - Boxer - - Reporter - - Zookeeper - - Psychologist +- type: department + id: Cargo + description: department-Cargo-description + color: "#A46106" + sort: 0 + roles: + - CargoTechnician + - Quartermaster + - SalvageSpecialist + +- type: department + id: Civilian + description: department-Civilian-description + color: "#9FED58" + sort: 2 + roles: + - Bartender + - Borg + - Botanist + - Boxer + - Chaplain + - Chef + - Clown + - HeadOfPersonnel + - Janitor + - Lawyer + - Librarian + - Mime + - Musician + - Passenger + - Reporter + - Zookeeper + - ServiceWorker + +- type: department + id: Command + sort: 1 + description: department-Command-description + color: "#052EED" + roles: + - Captain + - IAA # Corvax-IAA + - CentralCommandOfficial + - ChiefEngineer + - ChiefMedicalOfficer + - HeadOfPersonnel + - HeadOfSecurity + - ResearchDirector + - Quartermaster + - BlueShield + +- type: department + id: Engineering + sort: 0 + description: department-Engineering-description + color: "#EFB341" + roles: + - AtmosphericTechnician + - ChiefEngineer + - SeniorEngineer + - StationEngineer + - TechnicalAssistant + +- type: department + id: Medical + sort: 0 + description: department-Medical-description + color: "#52B4E9" + roles: + - Chemist + - ChiefMedicalOfficer + - MedicalDoctor + - MedicalIntern + - Psychologist + - Paramedic + - SeniorPhysician + +- type: department + id: Security + sort: 0 + description: department-Security-description + color: "#DE3A3A" + roles: + - HeadOfSecurity + - SecurityCadet + - SecurityOfficer + - SeniorOfficer + - Detective + - Warden + - Brigmedic + - SecurityPilot + +- type: department + id: Science + sort: 0 + description: department-Science-description + color: "#D381C9" + roles: + - ResearchDirector + - SeniorResearcher + - Scientist + - ResearchAssistant + +- type: department + id: Specific + sort: 0 + description: department-Specific-description + color: "#9FED58" + roles: + - Boxer + - Reporter + - Zookeeper + - Psychologist diff --git a/Resources/Prototypes/Roles/play_time_trackers.yml b/Resources/Prototypes/Roles/play_time_trackers.yml index 25274a496e6b..3439a8e62315 100644 --- a/Resources/Prototypes/Roles/play_time_trackers.yml +++ b/Resources/Prototypes/Roles/play_time_trackers.yml @@ -1,158 +1,161 @@ -# Overall play time, across all roles. -# This tracker must exist, it is used directly by PlayTimeTrackingManager -- type: playTimeTracker - id: Overall - -# Jobs -- type: playTimeTracker - id: JobAtmosphericTechnician - -- type: playTimeTracker - id: JobBartender - -- type: playTimeTracker # Used as a tracker for all borgs and midround borging. - id: JobBorg - -- type: playTimeTracker - id: JobBotanist - -- type: playTimeTracker - id: JobCaptain - -- type: playTimeTracker - id: JobCargoTechnician - -- type: playTimeTracker - id: JobCentralCommandOfficial - -- type: playTimeTracker - id: JobChaplain - -- type: playTimeTracker - id: JobChef - -- type: playTimeTracker - id: JobChemist - -- type: playTimeTracker - id: JobChiefEngineer - -- type: playTimeTracker - id: JobChiefMedicalOfficer - -- type: playTimeTracker - id: JobClown - -- type: playTimeTracker - id: JobDetective - -- type: playTimeTracker - id: JobERTEngineer - -- type: playTimeTracker - id: JobERTJanitor - -- type: playTimeTracker - id: JobERTLeader - -- type: playTimeTracker - id: JobERTMedical - -- type: playTimeTracker - id: JobERTSecurity - -- type: playTimeTracker - id: JobHeadOfPersonnel - -- type: playTimeTracker - id: JobHeadOfSecurity - -- type: playTimeTracker - id: JobBrigmedic - -- type: playTimeTracker - id: JobJanitor - -- type: playTimeTracker - id: JobLawyer - -- type: playTimeTracker - id: JobLibrarian - -- type: playTimeTracker - id: JobMedicalDoctor - -- type: playTimeTracker - id: JobMedicalIntern - -- type: playTimeTracker - id: JobMime - -- type: playTimeTracker - id: JobMusician - -- type: playTimeTracker - id: JobPassenger - -- type: playTimeTracker - id: JobParamedic - -- type: playTimeTracker - id: JobPsychologist - -- type: playTimeTracker - id: JobQuartermaster - -- type: playTimeTracker - id: JobReporter - -- type: playTimeTracker - id: JobResearchAssistant - -- type: playTimeTracker - id: JobResearchDirector - -- type: playTimeTracker - id: JobSalvageSpecialist - -- type: playTimeTracker - id: JobScientist - -- type: playTimeTracker - id: JobSecurityCadet - -- type: playTimeTracker - id: JobSecurityOfficer - -- type: playTimeTracker - id: JobSeniorEngineer - -- type: playTimeTracker - id: JobSeniorOfficer - -- type: playTimeTracker - id: JobSeniorPhysician - -- type: playTimeTracker - id: JobSeniorResearcher - -- type: playTimeTracker - id: JobServiceWorker - -- type: playTimeTracker - id: JobStationEngineer - -- type: playTimeTracker - id: JobTechnicalAssistant - -- type: playTimeTracker - id: JobWarden - -- type: playTimeTracker - id: JobBoxer - -- type: playTimeTracker - id: JobZookeeper - -- type: playTimeTracker - id: JobBlueShield +# Overall play time, across all roles. +# This tracker must exist, it is used directly by PlayTimeTrackingManager +- type: playTimeTracker + id: Overall + +# Jobs +- type: playTimeTracker + id: JobAtmosphericTechnician + +- type: playTimeTracker + id: JobBartender + +- type: playTimeTracker # Used as a tracker for all borgs and midround borging. + id: JobBorg + +- type: playTimeTracker + id: JobBotanist + +- type: playTimeTracker + id: JobCaptain + +- type: playTimeTracker + id: JobCargoTechnician + +- type: playTimeTracker + id: JobCentralCommandOfficial + +- type: playTimeTracker + id: JobChaplain + +- type: playTimeTracker + id: JobChef + +- type: playTimeTracker + id: JobChemist + +- type: playTimeTracker + id: JobChiefEngineer + +- type: playTimeTracker + id: JobChiefMedicalOfficer + +- type: playTimeTracker + id: JobClown + +- type: playTimeTracker + id: JobDetective + +- type: playTimeTracker + id: JobERTEngineer + +- type: playTimeTracker + id: JobERTJanitor + +- type: playTimeTracker + id: JobERTLeader + +- type: playTimeTracker + id: JobERTMedical + +- type: playTimeTracker + id: JobERTSecurity + +- type: playTimeTracker + id: JobHeadOfPersonnel + +- type: playTimeTracker + id: JobHeadOfSecurity + +- type: playTimeTracker + id: JobSecurityPilot + +- type: playTimeTracker + id: JobBrigmedic + +- type: playTimeTracker + id: JobJanitor + +- type: playTimeTracker + id: JobLawyer + +- type: playTimeTracker + id: JobLibrarian + +- type: playTimeTracker + id: JobMedicalDoctor + +- type: playTimeTracker + id: JobMedicalIntern + +- type: playTimeTracker + id: JobMime + +- type: playTimeTracker + id: JobMusician + +- type: playTimeTracker + id: JobPassenger + +- type: playTimeTracker + id: JobParamedic + +- type: playTimeTracker + id: JobPsychologist + +- type: playTimeTracker + id: JobQuartermaster + +- type: playTimeTracker + id: JobReporter + +- type: playTimeTracker + id: JobResearchAssistant + +- type: playTimeTracker + id: JobResearchDirector + +- type: playTimeTracker + id: JobSalvageSpecialist + +- type: playTimeTracker + id: JobScientist + +- type: playTimeTracker + id: JobSecurityCadet + +- type: playTimeTracker + id: JobSecurityOfficer + +- type: playTimeTracker + id: JobSeniorEngineer + +- type: playTimeTracker + id: JobSeniorOfficer + +- type: playTimeTracker + id: JobSeniorPhysician + +- type: playTimeTracker + id: JobSeniorResearcher + +- type: playTimeTracker + id: JobServiceWorker + +- type: playTimeTracker + id: JobStationEngineer + +- type: playTimeTracker + id: JobTechnicalAssistant + +- type: playTimeTracker + id: JobWarden + +- type: playTimeTracker + id: JobBoxer + +- type: playTimeTracker + id: JobZookeeper + +- type: playTimeTracker + id: JobBlueShield diff --git a/Resources/Prototypes/SS220/Entities/pilot_goal.yml b/Resources/Prototypes/SS220/Entities/pilot_goal.yml new file mode 100644 index 000000000000..40dd1e65654c --- /dev/null +++ b/Resources/Prototypes/SS220/Entities/pilot_goal.yml @@ -0,0 +1,11 @@ +- type: entity + parent: PaperNtFormSec + id: PilotBriefing + name: брифинг пилота + components: + - type: Paper + content: pilot-briefing-text + stampState: paper_stamp-centcom + stampedBy: + - stampedName: Центком + stampedColor: "#006000" \ No newline at end of file diff --git a/Resources/Prototypes/SS220/Roles/Jobs/security_pilot.yml b/Resources/Prototypes/SS220/Roles/Jobs/security_pilot.yml new file mode 100644 index 000000000000..a100923d5fef --- /dev/null +++ b/Resources/Prototypes/SS220/Roles/Jobs/security_pilot.yml @@ -0,0 +1,41 @@ +- type: job + id: SecurityPilot + name: пилот СБ + description: Ловите преступников на станции, бороздите просторы космоса в поисках... Чего-нибудь. + playTimeTracker: JobSecurityPilot + requirements: + - !type:DepartmentTimeRequirement + department: Security + time: 36000 # SS220-RoleTime + startingGear: SecurityPilotGear + icon: "JobIconSecurityOfficer" + supervisors: job-supervisors-hos + canBeAntag: false + access: + - Security + - Brig + - Maintenance + - Service + - External + special: + - !type:AddImplantSpecial + implants: [ MindShieldImplant ] + +- type: startingGear + id: SecurityPilotGear + equipment: + jumpsuit: ClothingUniformJumpsuitSec + back: ClothingBackpackSecurityPilotFilled + shoes: ClothingShoesBootsCombatFilled + eyes: ClothingEyesGlassesSecurity + head: ClothingHeadHatBeretSecurity # Corvax-Resprite + outerClothing: ClothingOuterHardsuitSecurity + suitstorage: YellowOxygenTankFilled + id: SecurityPDA + ears: ClothingHeadsetSecurity + belt: ClothingBeltSecurityFilled + pocket1: WeaponPistolMk58Nonlethal + pocket2: HandheldGPSBasic + innerClothingSkirt: ClothingUniformJumpskirtSec + satchel: ClothingBackpackSatchelSecurityFilled + duffelbag: ClothingBackpackDuffelSecurityFilled