Justice Rework - Mapping (#6276)

* windoors, airlocks, faxes, dresser, beacon, warppoints

* Lockers and placeholder bedsheets

Most of this done by Rebe

* attorney as a separate role

idk why we decide to just modify upstream lawyer instead of making a separate role from the start sobs

* justice warden, armorer, marshal job roles

* linter fixes

* holy shit theres more

a mixture of everything as I had a list to go down
-JusticeDetective stuff because Det is now under justice
-More Armorer stuff
-Cameras
-Telecoms
-Prosec/Attorney lockers
-Secure windoors

* [pre-commit.ci] auto fixes from pre-commit.com hooks

for more information, see https://pre-commit.ci

* brig access as requested + admin config

also dupe beacon fix wop

* Reb

* Bypass ChameleonJobLoadoutTest

dear maint i pinky promise they will get added before rework launches

* suggestions and fixes

They don't need to be on the access config right now but should be fine.

---------

Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
This commit is contained in:
Stxcking 2026-08-02 09:20:12 -04:00 committed by GitHub
parent acb6677aff
commit 076d960072
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
48 changed files with 1513 additions and 165 deletions

View File

@ -32,12 +32,17 @@ holopad-logistics-lobby = Logistics - Lobby
holopad-justice-prosecutor = Justice - Prosecutor
holopad-justice-attorney = Justice - Attorney
holopad-justice-clerk = Justice - Clerk
holopad-justice-detective = Justice - Detective
holopad-justice-warden = Justice - Warden
holopad-justice-marshal = Justice - Marshal
holopad-justice-lobby = Justice - Lobby
holopad-justice-justice-armory = Justice - Armory
# Security
holopad-security-corpsman = Security - Corpsman
holopad-security-evidence = Security - Evidence
holopad-security-lobby = Security - Lobby
holopad-security-armorer = Security - Armorer
# General
holopad-general-park = General - Park

View File

@ -42,6 +42,7 @@ station-beacon-pool = Pool
station-beacon-barbershop = Barbershop
station-beacon-zoo = Zoo
station-beacon-armorer = Armorer
station-beacon-corpsman = Corpsman
station-beacon-security-solitary = Solitary Confinement
station-beacon-bomb-training = Bomb Training
@ -52,3 +53,5 @@ station-beacon-chiefjustice = Chief Justice
station-beacon-prosecutor = Prosecutor
station-beacon-clerk = Clerk
station-beacon-attorney = Attorney
station-beacon-marshal = Marshal
station-beacon-justice-armory = Justice Armory

View File

@ -2,6 +2,8 @@ stamp-component-stamped-name-notary = NOTARY
stamp-component-stamped-name-carpy = Carpinald F. Grrawson, Esq.
stamp-component-stamped-name-chiefjustice = Chief Justice
stamp-component-stamped-name-prosec = Prosecutor
stamp-component-stamped-name-attorney = Attorney
stamp-component-stamped-name-armorer = Armorer
stamp-component-stamped-name-hate-paperwork = I HATE PAPERWORK!
stamp-component-stamped-name-nanotrasen = Nanotrasen
stamp-component-stamped-name-NTAgent = INTERNAL AFFAIRS

View File

@ -4,7 +4,10 @@ id-card-access-level-orders = Orders
id-card-access-level-mantis = Psionic Mantis
id-card-access-level-chief-justice = Chief Justice
id-card-access-level-prosecutor = Prosecutor
id-card-access-level-justice-attorney = Attorney
id-card-access-level-clerk = Clerk
id-card-access-level-justice-warden = Warden (Justice)
id-card-access-level-marshal = Marshal
id-card-access-level-justice = Justice
id-card-access-level-corpsman = Corpsman
id-card-access-level-robotics = Robotics

View File

@ -10,10 +10,9 @@
id: Armory
name: id-card-access-level-armory
# Delta V: Removes Brig access because redundant
#- type: accessLevel
# id: Brig
# name: id-card-access-level-brig
- type: accessLevel
id: Brig
name: id-card-access-level-brig
- type: accessLevel
id: Detective

View File

@ -231,18 +231,18 @@
- type: entity
parent: DoorElectronics
id: DoorElectronicsSecurityLawyer
suffix: Security/Justice, Locked #DV - Allow all justice dept to use
suffix: Security/Justice, Locked # DeltaV - Allow all justice dept to use
components:
- type: AccessReader
access: [["Security"], ["Justice"]] #DV - Allow all justice dept to use
access: [["Security"], ["Justice"]] # DeltaV - Allow all justice dept to use
#- type: entity
# parent: DoorElectronics
# id: DoorElectronicsBrig
# suffix: Brig, Locked
# components:
# - type: AccessReader
# access: [["Brig"]]
- type: entity
parent: DoorElectronics
id: DoorElectronicsBrig
suffix: Brig, Locked
components:
- type: AccessReader
access: [["Brig"]]
# Medical
- type: entity

View File

@ -22,7 +22,7 @@
- Armory
- Atmospherics
- Bar
#- Brig # DeltaV - Removed Brig Access
- Brig
- Detective
- Captain
- Cargo
@ -51,15 +51,18 @@
- GenpopEnter
- GenpopLeave
# Begin DeltaV Additions
- Attorney
- Boxer
- ChiefJustice
- Clerk
- Clown
- Corpsman
- Justice
- JusticeWarden
- Library
- Mail
- Mantis
- Marshal
- Mime
- Musician
- Paramedic
@ -114,6 +117,7 @@
- type: AccessOverrider
accessLevels:
# Begin DeltaV Additions
- Attorney
- Boxer
- ChiefJustice
- Clerk
@ -122,9 +126,11 @@
- DV-SpareSafe
- ERT
- Justice
- JusticeWarden
- Library
- Mail
- Mantis
- Marshal
- Mime
- Musician
- Paramedic
@ -143,7 +149,7 @@
- Bar
- BasicSilicon
- Borg
#- Brig # DeltaV
- Brig
- Detective
- Captain
- Cargo

View File

@ -402,15 +402,15 @@
containers:
board: [ DoorElectronicsDetective ]
#Delta V: Removed Brig Access
#- type: entity
# parent: AirlockSecurity
# id: AirlockBrigLocked
# suffix: Brig, Locked
# components:
# - type: ContainerFill
# containers:
# board: [ DoorElectronicsBrig ]
- type: entity
parent: AirlockSecurity
id: AirlockBrigLocked
suffix: Brig, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsBrig ]
- type: entity
parent: AirlockSecurity
@ -818,15 +818,14 @@
containers:
board: [ DoorElectronicsDetective ]
#Delta V: Removed Brig Access
#- type: entity
# parent: AirlockSecurityGlass
# id: AirlockBrigGlassLocked
# suffix: Brig, Locked
# components:
# - type: ContainerFill
# containers:
# board: [ DoorElectronicsBrig ]
- type: entity
parent: AirlockSecurityGlass
id: AirlockBrigGlassLocked
suffix: Brig, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsBrig ]
- type: entity
parent: AirlockSecurityGlass

View File

@ -203,15 +203,14 @@
containers:
board: [ DoorElectronicsBar ]
#Delta V: Removed Brig Access
#- type: entity
# parent: WindoorSecureSecurityLocked
# id: WindoorSecureBrigLocked
# suffix: Brig, Locked
# components:
# - type: ContainerFill
# containers:
# board: [ DoorElectronicsBrig ]
- type: entity
parent: WindoorSecureSecurityLocked
id: WindoorSecureBrigLocked
suffix: Brig, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsBrig ]
- type: entity
parent: WindoorSecure

View File

@ -11,9 +11,21 @@
name: id-card-access-level-prosecutor
- type: accessLevel
id: Clerk
id: Attorney
name: id-card-access-level-justice-attorney
- type: accessLevel
id: Clerk # TODO - Remove for Justice Rework
name: id-card-access-level-clerk
- type: accessLevel
id: JusticeWarden
name: id-card-access-level-justice-warden
- type: accessLevel
id: Marshal
name: id-card-access-level-marshal
- type: accessGroup
id: Justice
tags:

View File

@ -1,21 +0,0 @@
- type: entity
parent: LockerChiefJustice
id: LockerChiefJusticeFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- id: ClothingHeadsetAltJustice
- id: PaperStationWarrant # TODO: Put these in a folder or something
amount: 10
- id: BoxPDAJustice
- id: BoxEncryptionKeyJustice
- id: ChiefJusticeIDCard
- id: DoorRemoteJustice
- id: Gavel
- id: BoxCJStamps
- id: BoxCJCircuitboards
- id: LunchboxCommandFilledRandom # Delta-V Lunchboxes!
prob: 0.3

View File

@ -1,18 +0,0 @@
- type: entity
parent: LockerClerk
id: LockerClerkFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- id: ClothingOuterClerkVest
- id: PaperStationWarrant
amount: 10
- id: BoxEncryptionKeyJustice
- id: ClerkIDCard
- id: RubberStampNotary
- id: LunchboxJusticeFilledRandom
- id: RubberStampApproved
- id: RubberStampDenied

View File

@ -10,9 +10,9 @@
- 0,0,8,12 # What kind of dresser is smaller than a duffle bag. Let's fix this.
- type: entity
parent: DresserLargeCommand
id: DresserCaptainFilledDV
suffix: Filled, Captain
parent: DresserLargeCommand
components:
- type: EntityTableContainerFill
containers:
@ -54,8 +54,8 @@
weight: 0.1
- type: entity
id: DresserChiefEngineerFilledDV
parent: DresserLargeCommand
id: DresserChiefEngineerFilledDV
suffix: Filled, Chief Engineer
components:
- type: EntityTableContainerFill
@ -83,8 +83,8 @@
- id: ClothingShoesBootsWinterChiefEngineer
- type: entity
id: DresserChiefMedicalOfficerFilledDV
parent: DresserLargeCommand
id: DresserChiefMedicalOfficerFilledDV
suffix: Filled, Chief Medical Officer
components:
- type: EntityTableContainerFill
@ -124,8 +124,8 @@
- id: ClothingShoesColorWhite
- type: entity
id: DresserHeadOfPersonnelFilledDV
parent: DresserLargeCommand
id: DresserHeadOfPersonnelFilledDV
suffix: Filled, Head Of Personnel
components:
- type: EntityTableContainerFill
@ -164,8 +164,8 @@
- id: CigarGoldCase
- type: entity
id: DresserHeadOfSecurityFilledDV
parent: DresserLargeCommand
id: DresserHeadOfSecurityFilledDV
suffix: Filled, Head Of Security
components:
- type: EntityTableContainerFill
@ -204,8 +204,8 @@
- id: CigarGoldCase
- type: entity
id: DresserQuarterMasterFilledDV
parent: DresserLargeCommand
id: DresserQuarterMasterFilledDV
suffix: Filled, Logistics Officer
components:
- type: EntityTableContainerFill
@ -232,8 +232,8 @@
- id: ClothingShoesBootsWinterLogisticsOfficer
- type: entity
id: DresserResearchDirectorFilledDV
parent: DresserLargeCommand
id: DresserResearchDirectorFilledDV
suffix: Filled, Mystagogue
components:
- type: EntityTableContainerFill
@ -263,8 +263,8 @@
- id: ClothingShoesBootsWinterMystagogue
- type: entity
id: DresserChiefJusticeFilled
parent: DresserLargeCommand
id: DresserChiefJusticeFilled
suffix: Filled, Chief Justice
components:
- type: EntityTableContainerFill
@ -288,9 +288,9 @@
- id: BookSpaceLaw
- type: entity
id: DresserWardenFilledDV
parent: DresserLargeCommand
suffix: Filled, Warden
id: DresserWardenFilledDV
suffix: Filled, Armorer
components:
- type: EntityTableContainerFill
containers:
@ -320,11 +320,31 @@
- id: Binoculars
- id: NetworkConfigurator
- type: entity
parent: DresserLargeCommand
id: DresserJusticeWardenFilledDV
suffix: Filled, Justice Warden
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
# Jumpsuits
# Hats
# Eyes
- id: ClothingEyesGlassesSunglasses
# Outerwear
# Shoes
- id: ClothingShoesBootsWinterSec
- id: ClothingShoesBootsJack
# Extras
- id: BookSpaceLaw
#CentComm
- type: entity
parent: DresserLargeCommand
id: DresserCentCommFilledDV
suffix: Filled, CentComm
parent: DresserLargeCommand
components:
- type: StorageFill
contents:

View File

@ -86,3 +86,31 @@
- id: PersonalAILearnerSecurity #imp
- id: LunchboxCommandFilledRandom
prob: 0.3
- type: entityTable
id: LockerFillChiefJustice
table: !type:AllSelector
children:
- id: ClothingHeadsetAltJustice
- id: BoxFolderStationWarrant
- id: BoxPDAJustice
- id: BoxEncryptionKeyJustice
- id: ChiefJusticeIDCard
- id: DoorRemoteJustice
- id: Gavel
- id: BoxCJStamps
- id: BoxCJCircuitboards
- id: LunchboxCommandFilledRandom
prob: 0.3
- type: entity
parent: LockerChiefJustice
id: LockerChiefJusticeFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- !type:NestedSelector
tableId: LockerFillChiefJustice

View File

@ -0,0 +1,160 @@
# Clerk
- type: entity
parent: LockerClerk
id: LockerClerkFilled # TODO - Remove for Justice Rework
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- !type:NestedSelector
tableId: LockerFillClerk
- type: entityTable
id: LockerFillClerk
table: !type:AllSelector
children:
- id: ClothingOuterClerkVest
- id: BoxFolderStationWarrant
- id: BoxEncryptionKeyJustice
- id: ClerkIDCard
- id: RubberStampNotary
- id: RubberStampApproved
- id: RubberStampDenied
- id: LunchboxJusticeFilledRandom
prob: 0.3
# Prosecutor
- type: entity
parent: LockerProsecutor
id: LockerProsecutorFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- !type:NestedSelector
tableId: LockerFillProsector
- type: entityTable
id: LockerFillProsector
table: !type:AllSelector
children:
- id: BoxEncryptionKeyJustice
- id: ProsecutorIDCard
- id: RubberStampApproved
- id: RubberStampDenied
- id: BookSpaceLaw
- id: BriefcaseBrown
- id: LunchboxJusticeFilledRandom
prob: 0.3
# Attorney
- type: entity
parent: LockerAttorney
id: LockerAttorneyFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- !type:NestedSelector
tableId: LockerFillAttorney
- type: entityTable
id: LockerFillAttorney
table: !type:AllSelector
children:
- id: AttorneyIDCard
- id: RubberStampApproved
- id: RubberStampDenied
- id: BookSpaceLaw
- id: BriefcaseBrown
- id: LunchboxJusticeFilledRandom
prob: 0.3
# Marshal
- type: entity
parent: LockerMarshal
id: LockerMarshalFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- !type:NestedSelector
tableId: LockerFillMarshal
- type: entityTable
id: LockerFillMarshal
table: !type:AllSelector
children:
- id: ClothingOuterClerkVest
- id: PaperStationWarrant
amount: 3
- id: RubberStampApproved
- id: RubberStampDenied
- id: FlashlightSeclite
- id: WeaponDisabler
- id: WeaponTaser
- id: ClothingBeltSecurityFilled
- id: BookSpaceLaw
- id: ClothingOuterArmorBasicSlim
- id: TicketPad
- id: LunchboxJusticeFilledRandom
prob: 0.3
# JusticeWarden
- type: entity
parent: LockerJusticeWarden
id: LockerJusticeWardenFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- !type:NestedSelector
tableId: LockerFillJusticeWarden
- type: entityTable
id: LockerFillJusticeWarden
table: !type:AllSelector
children:
- id: ClothingHeadsetAltJustice
- id: RubberStampJusticeWarden
- id: RubberStampApproved
- id: RubberStampDenied
- id: DoorRemoteJustice
- id: BookSpaceLaw
- id: ClothingBeltSecurityFilled
- id: ClothingBackpackElectropack
amount: 2
- id: ClothingNeckShockCollar
amount: 2
- id: RemoteSignaller
amount: 2
- id: ClothingOuterStraightjacket
- id: TearGasGrenade
amount: 2
- id: NetworkConfigurator
- id: Binoculars
- id: BoxPDAPrisoner
- id: BoxEncryptionKeyPrisoner
- id: LunchboxJusticeFilledRandom
prob: 0.3
# JusticeDetective
- type: entity
parent: LockerJusticeDetective
id: LockerJusticeDetectiveFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:NestedSelector
tableId: FillLockerDetective

View File

@ -152,9 +152,9 @@
tableId: AdvancedLaserTable
- type: entity
parent: LockerBrigmedic
id: LockerBrigmedicFilledHardsuit
suffix: Corpsman, Filled, Hardsuit
parent: LockerBrigmedic
components:
- type: EntityTableContainerFill
containers:
@ -240,3 +240,58 @@
prob: 0.3
- id: DVBoxEvidenceBags
amount: 2
# Armorer Lockers - copy of old warden. New warden is in justice.yml
- type: entity
parent: LockerArmorer
id: LockerArmorerFilledHardsuit
suffix: Filled, Hardsuit
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:AllSelector
children:
- !type:NestedSelector
tableId: FillLockerArmorer
- !type:NestedSelector
tableId: FillLockerArmorerHardsuit
- type: entity
parent: LockerArmorer
id: LockerArmorerFilled
suffix: Filled
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:NestedSelector
tableId: FillLockerArmorer
- type: entityTable
id: FillLockerArmorerHardsuit
table: !type:AllSelector
children:
- id: ClothingOuterHardsuitCombatArmorer
- id: ClothingShoesBootsSecurityMagboots
- id: OxygenTankFilled
- id: NitrogenTankFilled
- id: ClothingMaskBreath
- type: entityTable
id: FillLockerArmorer
table: !type:AllSelector
children:
- id: FlashlightSeclite
- id: WeaponDisabler
- id: WeaponTaser
- id: ClothingBeltSecurityFilled
- id: Flash
- id: ClothingEyesGlassesSecurity
- id: ClothingHandsGlovesCombat
- id: RubberStampArmorer
- id: DoorRemoteArmory
- id: HoloprojectorSecurity
- id: WeaponEnergyShotgun
- id: LunchboxSecurityFilledRandom
prob: 0.3
- id: ClothingOuterVestPlateCarrierAdv
- id: ClothingHeadsetAltSecurity

View File

@ -26,6 +26,17 @@
entity_storage: !type:NestedSelector
tableId: FillSuitStorageSecurityDV
# Armorer hardsuit
- type: entity
parent: SuitStorageSec
id: SuitStorageArmorer
suffix: Armorer, DeltaV
components:
- type: EntityTableContainerFill
containers:
entity_storage: !type:NestedSelector
tableId: FillLockerArmorerHardsuit
#Paramedic hardsuit
- type: entityTable
id: ParamedicSuitStorageFill
@ -49,8 +60,8 @@
access: [["Paramedic"]]
- type: entity
id: SuitStorageCorpsman
parent: SuitStorageBase
id: SuitStorageCorpsman
suffix: Corpsman
components:
- type: EntityTableContainerFill

View File

@ -103,6 +103,11 @@
- type: PointLight
color: "#edecf7"
- type: entity
parent: ClothingHeadHelmetHardsuitCombatWarden
id: ClothingHeadHelmetHardsuitCombatArmorer
name: armorer's riot combat hardsuit helmet
# Advanced Combat Hardsuits
- type: entity
parent: [ ClothingHeadHardsuitBase, ClothingHeadSuitWithLightBase ]

View File

@ -147,6 +147,12 @@
- type: ToggleableClothing
clothingPrototype: ClothingHeadHelmetHardsuitCombatWarden
- type: entity
parent: ClothingOuterHardsuitCombatWarden
id: ClothingOuterHardsuitCombatArmorer
name: armorer's riot combat hardsuit
description: A purpose-built combat suit designed for crowd control against armed combatants in low pressure environments. This one has station security and armorer's rank markings.
# Advanced Combat Hardsuits
- type: entity
parent: ClothingOuterHardsuitCombatStandard

View File

@ -78,7 +78,7 @@
- type: entity
parent: SpawnPointJobBase
id: SpawnPointClerk
id: SpawnPointClerk # TODO - Remove for Justice Rework
name: clerk
components:
- type: SpawnPoint
@ -102,6 +102,57 @@
- sprite: *job-rsi-dv
state: prosecutor
- type: entity
parent: SpawnPointJobBase
id: SpawnPointAttorney
name: attorney
components:
- type: SpawnPoint
job_id: Attorney
- type: Sprite
layers:
- state: green
- state: lawyer
- type: entity
parent: SpawnPointJobBase
id: SpawnPointJusticeWarden
name: warden
suffix: Justice
components:
- type: SpawnPoint
job_id: JusticeWarden
- type: Sprite
layers:
- state: green
- sprite: *job-rsi-dv
state: prisonguard
- type: entity
parent: SpawnPointJobBase
id: SpawnPointMarshal
name: marshal
components:
- type: SpawnPoint
job_id: Clerk
- type: Sprite
layers:
- state: green
- sprite: *job-rsi-dv
state: clerk
- type: entity
parent: SpawnPointJobBase
id: SpawnPointArmorer
name: armorer
components:
- type: SpawnPoint
job_id: Armorer
- type: Sprite
layers:
- state: green
- state: warden
- type: entity
parent: SpawnPointJobBase
id: SpawnPointCourier

View File

@ -1,6 +1,6 @@
- type: entity
id: WarpPointNoBomb
parent: WarpPoint
id: WarpPointNoBomb
suffix: No Bomb Target
components:
- type: Tag
@ -106,6 +106,14 @@
- type: WarpPoint
location: Security Checkpoint
- type: entity
id: WarpPointArmorer
parent: WarpPoint
suffix: Armorer
components:
- type: WarpPoint
location: Armorer
# Justice
- type: entity
id: WarpPointCourt
@ -131,10 +139,26 @@
- type: WarpPoint
location: Attorney
- type: entity
id: WarpPointJusticeWarden
parent: WarpPoint
suffix: JusticeWarden
components:
- type: WarpPoint
location: Warden
- type: entity
id: WarpPointMarshal
parent: WarpPoint
suffix: Marshal
components:
- type: WarpPoint
location: Marshal
#Medical
- type: entity
id: WarpPointMedical
parent: WarpPointNoBomb
id: WarpPointMedical
suffix: Medical
components:
- type: WarpPoint
@ -158,56 +182,56 @@
#Epistemics
- type: entity
id: WarpPointEpistemics
parent: WarpPointNoBomb
id: WarpPointEpistemics
suffix: Epistemics
components:
- type: WarpPoint
location: Epistemics
- type: entity
id: WarpPointXenoarchaeologyLab
parent: WarpPointNoBomb
id: WarpPointXenoarchaeologyLab
suffix: Xenoarchaeology Lab
components:
- type: WarpPoint
location: Xenoarchaeology Lab
- type: entity
id: WarpPointAnomalyLab
parent: WarpPointNoBomb
id: WarpPointAnomalyLab
suffix: Anomaly Lab
components:
- type: WarpPoint
location: Anomaly Lab
- type: entity
id: WarpPointChapel
parent: WarpPoint
id: WarpPointChapel
suffix: Chapel
components:
- type: WarpPoint
location: Chapel
- type: entity
id: WarpPointLibrary
parent: WarpPoint
id: WarpPointLibrary
suffix: Library
components:
- type: WarpPoint
location: Library
- type: entity
id: WarpPointRobotics
parent: WarpPoint
id: WarpPointRobotics
suffix: Robotics
components:
- type: WarpPoint
location: Robotics
- type: entity
id: WarpPointMantis
parent: WarpPoint
id: WarpPointMantis
suffix: Psionic Mantis
components:
- type: WarpPoint
@ -215,32 +239,32 @@
#Logistics
- type: entity
id: WarpPointLogistics
parent: WarpPoint
id: WarpPointLogistics
suffix: Logistics
components:
- type: WarpPoint
location: Logistics
- type: entity
id: WarpPointMail
parent: WarpPoint
id: WarpPointMail
suffix: Mail
components:
- type: WarpPoint
location: Mail
- type: entity
id: WarpPointSalvage
parent: WarpPoint
id: WarpPointSalvage
suffix: Salvage
components:
- type: WarpPoint
location: Salvage
- type: entity
id: WarpPointSalvageDock
parent: WarpPointNoBomb
id: WarpPointSalvageDock
suffix: Salvage Dock
components:
- type: WarpPoint
@ -248,40 +272,40 @@
#Engineering
- type: entity
id: WarpPointEngineering
parent: WarpPoint
id: WarpPointEngineering
suffix: Engineering
components:
- type: WarpPoint
location: Engineering
- type: entity
id: WarpPointSingulo
parent: WarpPoint
id: WarpPointSingulo
suffix: Singularity
components:
- type: WarpPoint
location: Singularity
- type: entity
id: WarpPointAtmos
parent: WarpPoint
id: WarpPointAtmos
suffix: Atmos
components:
- type: WarpPoint
location: Atmos
- type: entity
id: WarpPointAME
parent: WarpPoint
id: WarpPointAME
suffix: AME
components:
- type: WarpPoint
location: AME
- type: entity
id: WarpPointTEG
parent: WarpPoint
id: WarpPointTEG
suffix: TEG
components:
- type: WarpPoint
@ -289,56 +313,56 @@
#Service
- type: entity
id: WarpPointHOP
parent: WarpPoint
id: WarpPointHOP
suffix: HoP
components:
- type: WarpPoint
location: HoP
- type: entity
id: WarpPointKitchen
parent: WarpPoint
id: WarpPointKitchen
suffix: Kitchen
components:
- type: WarpPoint
location: Kitchen
- type: entity
id: WarpPointBar
parent: WarpPoint
id: WarpPointBar
suffix: Bar
components:
- type: WarpPoint
location: Bar
- type: entity
id: WarpPointBotany
parent: WarpPoint
id: WarpPointBotany
suffix: Botany
components:
- type: WarpPoint
location: Botany
- type: entity
id: WarpPointJanitor
parent: WarpPoint
id: WarpPointJanitor
suffix: Janitor
components:
- type: WarpPoint
location: Janitor
- type: entity
id: WarpPointReporter
parent: WarpPoint
id: WarpPointReporter
suffix: Reporter
components:
- type: WarpPoint
location: Reporter
- type: entity
id: WarpPointBoxing
parent: WarpPoint
id: WarpPointBoxing
suffix: Boxing Ring
components:
- type: WarpPoint
@ -346,64 +370,64 @@
#Misc
- type: entity
id: WarpPointAI
parent: WarpPoint
id: WarpPointAI
suffix: AI
components:
- type: WarpPoint
location: AI
- type: entity
id: WarpPointArrivals
parent: WarpPointNoBomb
id: WarpPointArrivals
suffix: Arrivals
components:
- type: WarpPoint
location: Arrivals
- type: entity
id: WarpPointEvac
parent: WarpPointNoBomb
id: WarpPointEvac
suffix: Evac
components:
- type: WarpPoint
location: Evac
- type: entity
id: WarpPointCryo
parent: WarpPointNoBomb
id: WarpPointCryo
suffix: Cryo
components:
- type: WarpPoint
location: Cryo
- type: entity
id: WarpPointDorms
parent: WarpPoint
id: WarpPointDorms
suffix: Dorms
components:
- type: WarpPoint
location: Dorms
- type: entity
id: WarpPointDisposals
parent: WarpPoint
id: WarpPointDisposals
suffix: Disposals
components:
- type: WarpPoint
location: Disposals
- type: entity
id: WarpPointPark
parent: WarpPoint
id: WarpPointPark
suffix: Park
components:
- type: WarpPoint
location: Park
- type: entity
id: WarpPointArcade
parent: WarpPoint
id: WarpPointArcade
suffix: Arcade
components:
- type: WarpPoint

View File

@ -144,12 +144,36 @@
- type: entity
parent: DoorElectronics
id: DoorElectronicsClerk
id: DoorElectronicsAttorney
suffix: Attorney, Locked
components:
- type: AccessReader
access: [["Attorney"]]
- type: entity
parent: DoorElectronics
id: DoorElectronicsClerk # TODO - Remove for Justice Rework
suffix: Clerk, Locked
components:
- type: AccessReader
access: [["Clerk"]]
- type: entity
parent: DoorElectronics
id: DoorElectronicsJusticeWarden
suffix: Justice Warden, Locked
components:
- type: AccessReader
access: [["JusticeWarden"]]
- type: entity
parent: DoorElectronics
id: DoorElectronicsMarshal
suffix: Marshal, Locked
components:
- type: AccessReader
access: [["Marshal"]]
- type: entity
parent: DoorElectronics
id: DoorElectronicsRobotics

View File

@ -79,7 +79,7 @@
- type: entity
parent: BaseSecurityPDA
id: PrisonGuardPDA
id: PrisonGuardPDA # TODO - Remove for Justice Rework
name: prison guard PDA
description: Red to hide the stains of prisoner blood.
components:
@ -95,6 +95,15 @@
- type: Icon
state: pda-prisonguard
- type: entity
parent: WardenPDA
id: ArmorerPDA
name: armorer PDA
description: A top-of-the-line, brand-new PDA. Works exactly the same as all the others, just loads a little faster.
components:
- type: Pda
id: ArmorerIDCard
# Justice
- type: entity
@ -143,7 +152,7 @@
- type: entity
parent: BaseJusticePDA
id: ClerkPDA
id: ClerkPDA # TODO - Remove for Justice Rework
name: clerk PDA
description: It has the stamp to prove it's been officially notarized!
components:
@ -179,6 +188,74 @@
- type: Pager
autoLinkJobs: [Prosecutor]
- type: entity
parent: BaseJusticePDA
id: AttorneyPDA
name: attorney PDA
description: For attorney to poach dubious clients.
components:
- type: Pda
id: AttorneyIDCard
- type: Appearance
appearanceDataInit:
enum.PdaVisuals.PdaType:
!type:String
pda-lawyer
- type: PdaBorderColor
borderColor: "#6f6192"
- type: Icon
state: pda-lawyer
- type: CartridgeLoader
preinstalled:
- CrewManifestCartridge
- NotekeeperCartridge
- NanoTaskCartridge
- NewsReaderCartridge
- NanoChatCartridge
- CrimeAssistCartridge
- LogProbeCartridge
- type: Pager
autoLinkJobs: [Attorney]
- type: entity
parent: BaseJusticePDA
id: JusticeWardenPDA
name: warden PDA
description: Covered in cracks and dents. Has seen more than its fair share of abuse.
components:
- type: Pda
id: JusticeWardenIDCard
- type: Appearance
appearanceDataInit:
enum.PdaVisuals.PdaType: !type:String
pda-prisonguard
- type: PdaBorderColor
borderColor: "#A32D26"
accentVColor: "#DFDFDF"
- type: Icon
state: pda-prisonguard
- type: Pager
autoLinkJobs: [JusticeWarden]
- type: entity
parent: BaseJusticePDA
id: MarshalPDA
name: marshal PDA
description: Comes with a copy of SOP pre-installed, but it's already out of date.
components:
- type: Pda
id: MarshalIDCard
- type: Appearance
appearanceDataInit:
enum.PdaVisuals.PdaType: !type:String
pda-clerk
- type: PdaBorderColor
borderColor: "#611528"
- type: Icon
state: pda-clerk
- type: Pager
autoLinkJobs: [Marshal]
# Misc
- type: entity

View File

@ -292,7 +292,7 @@
- type: entity
parent: DefaultStationBeaconJustice
id: DefaultStationBeaconClerk
id: DefaultStationBeaconClerk # TODO - Remove for Justice Rework
suffix: Clerk
components:
- type: NavMapBeacon
@ -305,3 +305,35 @@
components:
- type: NavMapBeacon
defaultText: station-beacon-attorney
- type: entity
parent: DefaultStationBeaconSecurity
id: DefaultStationBeaconArmorer
suffix: Armorer
components:
- type: NavMapBeacon
defaultText: station-beacon-armorer
- type: entity
parent: DefaultStationBeaconJustice
id: DefaultStationBeaconJusticeWarden
suffix: Justice Warden
components:
- type: NavMapBeacon
defaultText: station-beacon-warden
- type: entity
parent: DefaultStationBeaconJustice
id: DefaultStationBeaconMarshal
suffix: Marshal
components:
- type: NavMapBeacon
defaultText: station-beacon-marshal
- type: entity
parent: DefaultStationBeaconJustice
id: DefaultStationBeaconJusticeArmory
suffix: Justice Armory
components:
- type: NavMapBeacon
defaultText: station-beacon-justice-armory

View File

@ -10,14 +10,39 @@
- type: Clothing
sprite: Clothing/Neck/Bedsheets/grey.rsi
- type: entity
parent: BedsheetWarden
id: BedsheetArmorer
name: armorer's bedsheet
- type: entity
parent: BedsheetBase
id: BedsheetDetective
name: detective's bedsheet
description: A soft, slate-coloured quilt, adorned with pale plum trim. Rumpled and a little stained.
components:
- type: Sprite
- type: Sprite # TODO: Resprite
sprite: _DV/Objects/Misc/bedsheets.rsi
state: sheetdet
- type: Clothing
sprite: Clothing/Neck/Bedsheets/grey.rsi
- type: entity
parent: BedsheetBase
id: BedsheetChiefJustice
name: chief justice's bedsheet
components:
- type: Sprite # TODO: Resprite
state: random_bedsheet
- type: Clothing
sprite: Clothing/Neck/Bedsheets/grey.rsi
- type: entity
parent: BedsheetBase
id: BedsheetJusticeWarden
name: warden's bedsheet
components:
- type: Sprite # TODO: Resprite
state: random_bedsheet
- type: Clothing
sprite: Clothing/Neck/Bedsheets/grey.rsi

View File

@ -0,0 +1,11 @@
- type: entity
parent: BoxFolderBlackEmpty
id: BoxFolderStationWarrant
name: paper warrant folder
components:
- type: EntityTableContainerFill
containers:
storagebase: !type:AllSelector
children:
- id: PaperStationWarrant
amount: 10

View File

@ -85,6 +85,24 @@
- type: PresetIdCard
job: RoleK9Officer
- type: entity
parent: IDCardStandard
id: ArmorerIDCard
name: armorer ID card
components:
- type: Sprite
layers:
- state: default
- state: stripe_top
color: *color-security-top
- state: stripe_bottom
color: *color-security-bottom
- sprite: *icon-rsi-dv
offset: *icon-offset
state: Warden
- type: PresetIdCard
job: Armorer
# MARK: Cargo / Logistics
- type: entity
@ -186,7 +204,7 @@
- type: entity
parent: IDCardStandard
id: ClerkIDCard
id: ClerkIDCard # TODO - Remove for Justice Rework
name: clerk ID card
components:
- type: Sprite
@ -220,6 +238,60 @@
- type: PresetIdCard
job: Prosecutor
- type: entity
parent: IDCardStandard
id: AttorneyIDCard
name: attorney ID card
components:
- type: Sprite
layers:
- state: default
- state: stripe_top
color: *color-justice-top
- state: stripe_bottom
color: *color-justice-bottom
- sprite: *icon-rsi-dv
offset: *icon-offset
state: Lawyer
- type: PresetIdCard
job: Attorney
- type: entity
parent: IDCardStandard
id: JusticeWardenIDCard
name: warden ID card
components:
- type: Sprite
layers:
- state: default
- state: stripe_top
color: *color-justice-top
- state: stripe_bottom
color: *color-justice-bottom
- sprite: *icon-rsi-dv
offset: *icon-offset
state: PrisonGuard
- type: PresetIdCard
job: JusticeWarden
- type: entity
parent: IDCardStandard
id: MarshalIDCard
name: marshal ID card
components:
- type: Sprite
layers:
- state: default
- state: stripe_top
color: *color-justice-top
- state: stripe_bottom
color: *color-justice-bottom
- sprite: *icon-rsi-dv
offset: *icon-offset
state: Clerk
- type: PresetIdCard
job: Marshal
# MARK: Service
- type: entity

View File

@ -1,7 +1,7 @@
- type: entity
name: notary stamp
parent: RubberStampBase
id: RubberStampNotary
name: notary stamp
suffix: DO NOT MAP
description: An old-fashioned seal for marking important documents, made of polished bronze.
components:
@ -16,9 +16,9 @@
stealGroup: RubberStampNotary
- type: entity
name: chief justice stamp
parent: RubberStampBase
id: RubberStampChiefJustice
name: chief justice stamp
suffix: DO NOT MAP
components:
- type: Stamp
@ -30,9 +30,9 @@
state: stamp-cj
- type: entity
name: prosecutor's rubber stamp
parent: RubberStampBase
id: RubberStampProsec
name: prosecutor's rubber stamp
suffix: DO NOT MAP
description: A rubber stamp for stamping important documents. A more legal way to annoy Security.
components:
@ -44,6 +44,53 @@
sprite: _DV/Objects/Misc/stamps.rsi
state: stamp-prosec
- type: entity
parent: RubberStampBase
id: RubberStampAttorney
name: attorney's rubber stamp
categories: [ DoNotMap ]
suffix: DO NOT MAP
description: A rubber stamp for stamping important documents. A more legal way to annoy Security.
components:
- type: Stamp
stampedName: stamp-component-stamped-name-attorney
stampedColor: "#233D57"
stampState: "paper_stamp-lawyer"
- type: Sprite
state: stamp-lawyer
- type: entity
parent: [ RubberStampBase, BaseSecurityContraband ]
id: RubberStampJusticeWarden
name: warden's rubber stamp
categories: [ DoNotMap ]
suffix: DO NOT MAP
description: With a simple press of ink to paper, a life is sealed behind bars. Maybe not forever.
components:
- type: Stamp
stampedName: stamp-component-stamped-name-warden
stampedColor: "#0000af"
stampState: "paper_stamp-warden"
- type: Sprite
sprite: _DV/Objects/Misc/stamps.rsi
state: stamp-warden
- type: entity
parent: [ RubberStampBase, BaseSecurityContraband ]
id: RubberStampArmorer
name: armorer's rubber stamp
categories: [ DoNotMap ]
suffix: DO NOT MAP
description: A rubber stamp for stamping important documents. Or weapons licenses for passengers.
components:
- type: Stamp
stampedName: stamp-component-stamped-name-armorer
stampedColor: "#5b0000"
stampState: "paper_stamp-armorer"
- type: Sprite
sprite: _DV/Objects/Misc/stamps.rsi
state: stamp-warden
- type: entity
parent: RubberStampBase
id: RubberStampHatePaperwork
@ -67,9 +114,9 @@
color: orange
- type: entity
name: IA rubber stamp
parent: RubberStampBase
id: RubberStampNTAgent
parent: RubberStampBase
name: IA rubber stamp
suffix: DO NOT MAP
description: A rubber stamp for stamping important documents. For internal related affairs.
components:
@ -81,9 +128,9 @@
state: stamp-cap
- type: entity
name: chemist's rubber stamp
parent: RubberStampBase
id: RubberStampChemist
name: chemist's rubber stamp
suffix: DO NOT MAP
components:
- type: Stamp

View File

@ -41,7 +41,7 @@
- type: GridFill
path: /Maps/_DV/Shuttles/Misc/glacier_surface_shuttle.yml
# Delta V specific roles
# DeltaV specific roles
- type: entity
parent: AirlockScience
id: AirlockMantisLocked
@ -51,6 +51,7 @@
containers:
board: [ DoorElectronicsMantis ]
# Justice
- type: entity
parent: AirlockCommand
id: AirlockChiefJusticeLocked
@ -107,7 +108,43 @@
- type: entity
parent: AirlockJustice
id: AirlockClerkLocked
id: AirlockAttorneyLocked
suffix: Attorney, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsAttorney ]
- type: entity
parent: AirlockJusticeGlass
id: AirlockAttorneyGlassLocked
suffix: Attorney, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsAttorney ]
- type: entity
parent: AirlockJustice
id: AirlockJusticeDetectiveLocked
suffix: Detective, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsDetective ]
- type: entity
parent: AirlockJusticeGlass
id: AirlockJusticeDetectiveGlassLocked
suffix: Detective, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsDetective ]
- type: entity
parent: AirlockJustice
id: AirlockClerkLocked # TODO - Remove for Justice Rework
suffix: Clerk, Locked
components:
- type: ContainerFill
@ -116,13 +153,49 @@
- type: entity
parent: AirlockJusticeGlass
id: AirlockClerkGlassLocked
id: AirlockClerkGlassLocked # TODO - Remove for Justice Rework
suffix: Clerk, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsClerk ]
- type: entity
parent: AirlockJustice
id: AirlockJusticeWardenLocked
suffix: Justice Warden, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsJusticeWarden ]
- type: entity
parent: AirlockJusticeGlass
id: AirlockJusticeWardenGlassLocked
suffix: Justice Warden, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsJusticeWarden ]
- type: entity
parent: AirlockJustice
id: AirlockMarshalLocked
suffix: Marshal, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsMarshal ]
- type: entity
parent: AirlockJusticeGlass
id: AirlockMarshalGlassLocked
suffix: Marshal, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsMarshal ]
# Maintenance
- type: entity
parent: AirlockMaintCommandLocked
@ -155,13 +228,49 @@
- type: entity
parent: AirlockMaintJusticeLocked
id: AirlockMaintClerkLocked
id: AirlockMaintAttorneyLocked
suffix: Attorney, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsAttorney ]
- type: entity
parent: AirlockMaintJusticeLocked
id: AirlockMaintJusticeDetectiveLocked
suffix: Detective, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsDetective ]
- type: entity
parent: AirlockMaintJusticeLocked
id: AirlockMaintClerkLocked # TODO - Remove for Justice Rework
suffix: Clerk, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsClerk ]
- type: entity
parent: AirlockMaintJusticeLocked
id: AirlockMaintJusticeWardenLocked
suffix: Justice Warden, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsJusticeWarden ]
- type: entity
parent: AirlockMaintJusticeLocked
id: AirlockMaintMarshalLocked
suffix: Marshal, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsMarshal ]
- type: entity
parent: AirlockSecurity
id: AirlockCorpsmanLocked
@ -569,7 +678,7 @@
- type: entity
parent: AirlockMaintSecLocked
id: AirlockMaintSecurityLawyerLocked
suffix: Security/Lawyer, Locked
suffix: Security/Justice, Locked
components:
- type: ContainerFill
containers:
@ -622,6 +731,24 @@
containers:
board: [ DoorElectronicsEngineering ]
- type: entity
parent: HighSecDoor
id: HighSecJusticeLocked
suffix: Justice, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsJustice ]
- type: entity
parent: HighSecDoor
id: HighSecChiefJusticeLocked
suffix: Chief Justice, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsChiefJustice ]
#Syndicate high security door
- type: entity
parent: HighSecDoor

View File

@ -54,6 +54,15 @@
containers:
board: [ DoorElectronicsChiefJustice ]
- type: entity
parent: WindoorJusticeLocked
id: WindoorProsecutorLocked
suffix: Prosecutor, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsProsecutor ]
- type: entity
parent: WindoorSecureJusticeLocked
id: WindoorSecureProsecutorLocked
@ -63,9 +72,27 @@
containers:
board: [ DoorElectronicsProsecutor ]
- type: entity
parent: WindoorJusticeLocked
id: WindoorAttorneyLocked
suffix: Attorney, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsAttorney ]
- type: entity
parent: WindoorSecureJusticeLocked
id: WindoorSecureClerkLocked
id: WindoorSecureAttorneyLocked
suffix: Attorney, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsAttorney ]
- type: entity
parent: WindoorSecureJusticeLocked
id: WindoorSecureClerkLocked # TODO - Remove for Justice Rework
suffix: Clerk, Locked
components:
- type: ContainerFill
@ -74,13 +101,58 @@
- type: entity
parent: WindoorSecureJusticeLocked
id: WindoorSecureLawyerLocked
id: WindoorSecureLawyerLocked # TODO - Remove for Justice Rework
suffix: Lawyer, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsLawyer ]
- type: entity
parent: WindoorJusticeLocked
id: WindoorJusticeWardenLocked
suffix: Justice Warden, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsJusticeWarden ]
- type: entity
parent: WindoorSecureJusticeLocked
id: WindoorSecureJusticeWardenLocked
suffix: Justice Warden, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsJusticeWarden ]
- type: entity
parent: WindoorJusticeLocked
id: WindoorMarshalLocked
suffix: Marshal, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsMarshal ]
- type: entity
parent: WindoorSecureJusticeLocked
id: WindoorSecureMarshalLocked
suffix: Marshal, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsMarshal ]
- type: entity
parent: Windoor
id: WindoorArmoryLocked
suffix: Armory, Locked
components:
- type: ContainerFill
containers:
board: [ DoorElectronicsArmory ]
- type: entity
parent: WindoorSecureScienceLocked
id: WindoorSecureMantisLocked

View File

@ -0,0 +1,15 @@
- type: entity
parent: Turnstile
id: TurnstileGenpopBrigEnter
suffix: Genpop/Brig Enter
components:
- type: AccessReader
access: [["GenpopEnter"], ["Brig"]]
- type: entity
parent: Turnstile
id: TurnstileGenpopBrigLeave
suffix: Genpop/Brig Leave
components:
- type: AccessReader
access: [["GenpopLeave"], ["Brig"]]

View File

@ -231,7 +231,7 @@
- type: entity
parent: FaxMachineBase
id: FaxMachineClerk
id: FaxMachineClerk # TODO - Remove for Justice Rework
suffix: Clerk
components:
- type: PageSender
@ -239,6 +239,26 @@
- type: FaxMachine
name: "Clerk"
- type: entity
parent: FaxMachineBase
id: FaxMachineJusticeWarden
suffix: Justice Warden
components:
- type: PageSender
autoLinkJobs: [JusticeWarden]
- type: FaxMachine
name: "Warden"
- type: entity
parent: FaxMachineBase
id: FaxMachineMarshal
suffix: Marshal
components:
- type: PageSender
autoLinkJobs: [Marshal]
- type: FaxMachine
name: "Marshal"
- type: entity
parent: FaxMachineBase
id: FaxMachineClown
@ -379,6 +399,16 @@
- type: FaxMachine
name: "Prosecutor"
- type: entity
parent: FaxMachineBase
id: FaxMachineAttorney
suffix: Attorney
components:
- type: PageSender
autoLinkJobs: [Attorney]
- type: FaxMachine
name: "Attorney"
- type: entity
parent: FaxMachineBase
id: FaxMachinePsychologist
@ -469,6 +499,16 @@
- type: FaxMachine
name: "Warden"
- type: entity
parent: FaxMachineBase
id: FaxMachineArmorer
suffix: Armorer
components:
- type: PageSender
autoLinkJobs: [ Armorer ]
- type: FaxMachine
name: "Armorer"
- type: entity
parent: FaxMachineBase
id: FaxMachineZookeeper

View File

@ -113,7 +113,27 @@
- type: entity
parent: Holopad
id: HolopadJusticeClerk
id: HolopadJusticeAttorney
suffix: Attorney
components:
- type: Label
currentLabel: holopad-justice-attorney
- type: PageSender
autoLinkJobs: [Attorney]
- type: entity
parent: Holopad
id: HolopadJusticeDetective
suffix: Detective
components:
- type: Label
currentLabel: holopad-justice-detective
- type: PageSender
autoLinkJobs: [Detective]
- type: entity
parent: Holopad
id: HolopadJusticeClerk # TODO - Remove for Justice Rework
suffix: Clerk
components:
- type: Label
@ -121,6 +141,25 @@
- type: PageSender
autoLinkJobs: [Clerk]
- type: entity
parent: Holopad
id: HolopadJusticeJusticeWarden
components:
- type: Label
currentLabel: holopad-justice-warden
- type: PageSender
autoLinkJobs: [JusticeWarden]
- type: entity
parent: Holopad
id: HolopadJusticeMarshal
suffix: Marshal
components:
- type: Label
currentLabel: holopad-justice-marshal
- type: PageSender
autoLinkJobs: [Marshal]
- type: entity
parent: HolopadJustice
id: HolopadJusticeLobby
@ -204,6 +243,16 @@
- type: Label
currentLabel: holopad-security-lobby
- type: entity
parent: Holopad
id: HolopadSecurityArmorer
suffix: Armorer
components:
- type: Label
currentLabel: holopad-security-armorer
- type: PageSender
autoLinkJobs: [Armorer]
#Station Specific - Security
- type: entity
parent: HolopadPrison

View File

@ -6,3 +6,12 @@
components:
- type: SurveillanceCameraRouter
subnetFrequency: SurveillanceCameraAI
- type: entity
parent: SurveillanceCameraRouterBase
id: SurveillanceCameraRouterJustice
name: justice camera router
suffix: Justice
components:
- type: SurveillanceCameraRouter
subnetFrequency: SurveillanceCameraJustice

View File

@ -0,0 +1,9 @@
- type: entity
parent: TelecomServer
id: TelecomServerFilledJustice
suffix: Justice
components:
- type: ContainerFill
containers:
key_slots:
- EncryptionKeyJustice

View File

@ -25,6 +25,20 @@
- !type:DoActsBehavior
acts: [ "Destruction" ]
# Justice
- type: entity
parent: LockerBaseSecureDeltaV
id: LockerJustice
name: justice locker
components:
- type: EntityStorageVisuals
stateBaseClosed: clerk
stateDoorOpen: clerk_open
stateDoorClosed: clerk_door
- type: AccessReader
access: [["Justice"]]
- type: entity
parent: CommandLockerBaseSecureDeltaV
id: LockerChiefJustice
@ -40,10 +54,9 @@
- type: entity
parent: LockerBaseSecureDeltaV
id: LockerClerk
id: LockerClerk # TODO - Remove for Justice Rework
name: clerk's locker
components:
- type: Appearance
- type: EntityStorageVisuals
stateBaseClosed: clerk
stateDoorOpen: clerk_open
@ -51,6 +64,47 @@
- type: AccessReader
access: [["Clerk"]]
- type: entity
parent: LockerJustice
id: LockerProsecutor # TODO - Resprite
name: prosecutor's locker
components:
- type: AccessReader
access: [["Prosecutor"]]
- type: entity
parent: LockerJustice
id: LockerAttorney # TODO - Resprite
name: attorney's locker
components:
- type: AccessReader
access: [["Attorney"]]
- type: entity
parent: LockerJustice
id: LockerJusticeDetective # TODO - Resprite
name: detective's locker
components:
- type: AccessReader
access: [["Detective"]]
- type: entity
parent: LockerJustice
id: LockerJusticeWarden # TODO - Resprite
name: warden's locker
components:
- type: AccessReader
access: [["JusticeWarden"]]
- type: entity
parent: LockerJustice
id: LockerMarshal # TODO - Resprite
name: marshal's locker
components:
- type: AccessReader
access: [["Marshal"]]
# Medical
- type: entity
parent: LockerBaseSecureDeltaV
id: LockerPsychologist
@ -75,6 +129,7 @@
- type: AccessReader
access: [["Medical"], ["Surgery"]] # Added medical until surgeon returns
# Service
- type: entity
parent: LockerBaseSecureDeltaV
id: LockerKitchen
@ -99,6 +154,7 @@
- type: AccessReader
access: [["Janitor"]]
# Logistic
- type: entity
parent: LockerBaseSecure
id: LockerLogistics # Wizden has sprites for this but doesn't have an entity that uses them?
@ -111,6 +167,7 @@
- type: AccessReader
access: [["Cargo"]]
# Security
- type: entity
parent: LockerBaseSecureDeltaV
id: LockerArmoryStorage
@ -123,6 +180,19 @@
- type: AccessReader
access: [["Armory"]]
- type: entity
parent: LockerBaseSecureDeltaV
id: LockerArmorer
name: armorer's locker
components:
- type: EntityStorageVisuals
stateBaseClosed: warden
stateDoorOpen: warden_open
stateDoorClosed: warden_door
- type: AccessReader
access: [ [ "Armory" ] ]
# Epistemics
- type: entity
parent: LockerBooze
id: LockerForensicMantis
@ -151,6 +221,17 @@
min: 1
max: 2
- type: entity
parent: LockerForensicMantis
id: LockerArchivist
name: archivist's cabinet
suffix: Empty
description: You'll never know what's inside until you collapse the quantum superposition of all possible mysteries.
components:
- type: AccessReader
access: [ [ "Library" ] ]
# Gun safe
- type: entity
id: SalvageGunSafeBaseSecure
parent: GunSafe
@ -327,16 +408,6 @@
- type: AccessReader
access: [["Armory"]]
- type: entity
parent: LockerForensicMantis
id: LockerArchivist
name: archivist's cabinet
suffix: Empty
description: You'll never know what's inside until you collapse the quantum superposition of all possible mysteries.
components:
- type: AccessReader
access: [["Library"]]
# Evac pod
- type: entity
parent: LockerBase

View File

@ -215,7 +215,7 @@
#Clerk
- type: entity
parent: FilledSecureCabinet
id: SecureCabinetClerk
id: SecureCabinetClerk # TODO - Remove for Justice Rework
suffix: Clerk
components:
- type: AccessReader
@ -239,6 +239,33 @@
- type: AccessReader
access: [["Lawyer"]]
#Warden (Justice)
- type: entity
parent: FilledSecureCabinet
id: SecureCabinetJusticeWarden
suffix: Justice Warden
components:
- type: AccessReader
access: [["JusticeWarden"]]
#Marshal
- type: entity
parent: FilledSecureCabinet
id: SecureCabinetMarshal
suffix: Marshal
components:
- type: AccessReader
access: [["Marshal"]]
#Armorer
- type: entity
parent: FilledSecureCabinet
id: SecureCabinetArmorer
suffix: Armorer
components:
- type: AccessReader
access: [["Armory"]]
#Psychologist
- type: entity
parent: FilledSecureCabinet

View File

@ -226,6 +226,20 @@
tags:
- ReinforcedCameraAI
- type: entity
parent: [ ReinforcedSurveillanceCameraBase, SurveillanceCameraJustice ]
id: ReinforcedSurveillanceCameraJustice
suffix: Justice
components:
- type: Construction
graph: ReinforcedSurveillanceCameraGraph
node: camera_justice
- type: WiresPanelSecurity
securityLevel: medJustice
- type: Tag
tags:
- ReinforcedCameraJustice
- type: entity
parent: ReinforcedSurveillanceCameraBase
id: ReinforcedSurveillanceCameraConstructed

View File

@ -10,3 +10,16 @@
transmitFrequencyId: SurveillanceCamera
- type: SurveillanceCamera
networkSet: true
- type: entity
parent: SurveillanceCameraBase
id: SurveillanceCameraJustice
name: camera
suffix: Justice
components:
- type: DeviceNetwork
deviceNetId: Wired
receiveFrequencyId: SurveillanceCameraJustice
transmitFrequencyId: SurveillanceCamera
- type: SurveillanceCamera
networkSet: true

View File

@ -24,7 +24,15 @@
- type: entity
parent: LockableButton
id: LockableButtonClerk
id: LockableButtonAttorney
suffix: Attorney
components:
- type: AccessReader
access: [["Attorney"]]
- type: entity
parent: LockableButton
id: LockableButtonClerk # TODO - Remove for Justice Rework
suffix: Clerk
components:
- type: AccessReader
@ -38,6 +46,22 @@
- type: AccessReader
access: [["ChiefJustice"]]
- type: entity
parent: LockableButton
id: LockableButtonJusticeWarden
suffix: JusticeWarden
components:
- type: AccessReader
access: [[JusticeWarden]]
- type: entity
parent: LockableButton
id: LockableButtonMarshal
suffix: Marshal
components:
- type: AccessReader
access: [["Marshal"]]
- type: entity
parent: LockableButton
id: LockableButtonSyndicate

View File

@ -83,7 +83,7 @@
- GroupSpeciesBreathTool
- type: roleLoadout
id: JobClerk
id: JobClerk # TODO: Remove for Justice Rework
groups:
- GroupTankHarness
- ClerkJumpsuit
@ -109,6 +109,19 @@
- Trinkets
- GroupSpeciesBreathTool
- type: roleLoadout
id: JobAttorney
groups:
- GroupTankHarness
- LawyerNeck
- LawyerJumpsuit
- CommonBackpack
- Glasses
- Survival
- Trinkets
- LawyerJobTrinkets
- GroupSpeciesBreathTool
# Epistemics
- type: roleLoadout
id: JobRoboticist

View File

@ -393,6 +393,37 @@
amount: 1
doAfter: 2
#justice
- node: camera_justice
entity: ReinforcedSurveillanceCameraJustice
actions:
- !type:SetWiresPanelSecurity
wiresAccessible: true
edges:
- to: wired
conditions:
- !type:WirePanel { }
- !type:AllWiresCut { }
steps:
- tool: Prying
doAfter: 3
- to: medSecurityUnfinished
conditions:
- !type:WirePanel { }
steps:
- material: Steel
amount: 1
doAfter: 2
- to: highSecurityUnfinished
conditions:
- !type:WirePanel { }
steps:
- material: Plasteel
amount: 1
doAfter: 2
#medscurity
- node: medSecurityUnfinished
actions:
@ -530,6 +561,19 @@
- tool: Prying
doAfter: 2
- to: camera_justice
completed:
- !type:GivePrototype
prototype: SheetSteel1
amount: 1
conditions:
- !type:WirePanel { }
- !type:HasTag
tag: ReinforcedCameraAI
steps:
- tool: Prying
doAfter: 2
- to: medSecurity
conditions:
- !type:WirePanel {}

View File

@ -0,0 +1,42 @@
- type: job
id: Attorney
name: job-name-attorney
description: job-description-attorney
setPreference: false
playTimeTracker: JobAttorney
canBeAntag: false
requirements:
- !type:OverallPlaytimeRequirement
time: 10h
- !type:DepartmentTimeRequirement
department: Security
time: 6h
#startingGear: AttorneyGear # Bypass ChameleonJobLoadoutTest
icon: "JobIconLawyer"
supervisors: job-supervisors-cj
access:
- Justice
- Attorney
- Lawyer # TODO: Remove after Justice Rework
- Maintenance
special:
- !type:AddImplantSpecial
implants: [ MindShieldImplant ]
- !type:AddComponentSpecial
components:
- type: Condemned
soulOwnedNotDevil: true
#- type: startingGear # Bypass ChameleonJobLoadoutTest
# id: AttorneyGear
# equipment:
# shoes: ClothingShoesBootsLaceup
# id: LawyerPDA
# ears: ClothingHeadsetJustice
# inhand:
# - BriefcaseBrownFilled
# storage:
# back:
# - RubberStampAttorney
# - BookSpaceLaw
# - ForensicScanner

View File

@ -0,0 +1,51 @@
- type: job
id: JusticeWarden
name: job-name-warden
description: job-description-justice-warden
playTimeTracker: JobJusticeWarden
setPreference: false
requirements:
- !type:RoleTimeRequirement
role: JobProsecutor
time: 8h
- !type:RoleTimeRequirement
role: JobMarshal
time: 4h
- !type:DepartmentTimeRequirement
department: Justice
time: 12h
- !type:DepartmentTimeRequirement
department: Security
time: 10h
weight: 5
#startingGear: JusticeWardenGear # Bypass ChameleonJobLoadoutTest
icon: "JobIconPrisonGuard"
requireAdminNotify: true
supervisors: job-supervisors-cj
canBeAntag: false
whitelisted: true
access:
- Justice
- Clerk # TODO: Remove when Clerk is kill
- Prosecutor
- Detective
- Cryogenics
- Corpsman # Warden requires access to the treatment of their prisoners.
- Marshal
- JusticeWarden
- Detective
- GenpopEnter
- GenpopLeave
- Maintenance
special:
- !type:AddImplantSpecial
implants: [ MindShieldImplant ]
#- type: startingGear # Bypass ChameleonJobLoadoutTest
# id: JusticeWardenGear
# equipment:
# id: JusticeWardenPDA
# ears: ClothingHeadsetJustice
# storage:
# back:
# - Flash

View File

@ -0,0 +1,38 @@
- type: job
id: Marshal
name: job-name-marshal
description: job-description-marshal
playTimeTracker: JobMarshal
setPreference: false
requirements:
- !type:OverallPlaytimeRequirement
time: 20h
- !type:DepartmentTimeRequirement
department: Security
time: 5h
- !type:DepartmentTimeRequirement
department: Justice
time: 10h
#startingGear: MarshalGear # Bypass ChameleonJobLoadoutTest
alwaysUseSpawner: true
canBeAntag: false
icon: "JobIconClerk"
supervisors: job-supervisors-warden
whitelisted: true
access:
- Justice
- Marshal
- Maintenance
special:
- !type:AddImplantSpecial
implants: [ MindShieldImplant ]
#- type: startingGear # Bypass ChameleonJobLoadoutTest
# id: MarshalGear
# equipment:
# id: PrisonGuardPDA
# ears: ClothingHeadsetJustice
# belt: ClothingBeltSecurity
# storage:
# back:
# - Flash

View File

@ -0,0 +1,38 @@
- type: job
id: Armorer
name: job-name-warden
description: job-description-warden
playTimeTracker: JobArmorer
setPreference: false
requirements:
- !type:RoleTimeRequirement
role: JobSecurityOfficer
time: 5h
- !type:DepartmentTimeRequirement
department: Security
time: 10h
weight: 5
#startingGear: ArmorerGear # Bypass ChameleonJobLoadoutTest
icon: "JobIconWarden"
requireAdminNotify: true
supervisors: job-supervisors-hos
canBeAntag: false
whitelisted: false
access:
- Security
- Armory
- Maintenance
- External
- Cryogenics
special:
- !type:AddImplantSpecial
implants: [ MindShieldImplant ]
#- type: startingGear
# id: ArmorerGear
# equipment:
# id: ArmorerPDA
# ears: ClothingHeadsetSecurity
# storage:
# back:
# - Flash

View File

@ -10,6 +10,18 @@
- type: playTimeTracker
id: JobProsecutor
- type: playTimeTracker
id: JobAttorney
- type: playTimeTracker
id: JobJusticeWarden
- type: playTimeTracker
id: JobMarshal
- type: playTimeTracker
id: JobArmorer
- type: playTimeTracker
id: JobCourier

View File

@ -255,6 +255,9 @@
- type: Tag
id: ReinforcedCameraGeneral # Reinforced Cameras - General
- type: Tag
id: ReinforcedCameraJustice # Reinforced Cameras - Justice
- type: Tag
id: ReinforcedCameraMedical # Reinforced Cameras - Medical