- type: entity
  parent: RMCCommunicationsConsoleBase
  id: AUbudgetConsole
  name: budget console
  description: A budget console
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/computer.rsi
    state: terminal
  - type: InteractionOutline
  - type: ActivatableUI
    key: enum.BudgetConsoleUi.Key
  - type: UserInterface
    interfaces:
      enum.BudgetConsoleUi.Key:
        type: BudgetConsoleBui
  - type: ActivatableUIBlacklist
    blacklist:
      components:
      - Xeno
  - type: BudgetConsole
  - type: ActivatableUIRequiresAccess
  - type: AccessReader
    access: [ [ "AU14AccessGovforCommand" ], [ "CMAccessColonyCommand" ] ]
  - type: ItemSlots
    slots:
      CashSlot:
        whitelist:
          tags:
          - Currency
  - type: ContainerContainer
    containers:
      CashSlot: !type:ContainerSlot {}




- type: entity
  parent: BaseStructure
  id: AUSubmissionPointBase
  name: Submission Point
  description: A place to submit  resources for shipping.
  components:
  - type: Sprite
    sprite: _AU14/Structures/colony_processor.rsi
    layers:
    - state: icon
      map: ["enum.LatheVisualLayers.IsRunning"]
    - state: unlit
      shader: unshaded
      map: ["enum.PowerDeviceVisualLayers.Powered"]
    - state: inserting
      map: ["enum.MaterialStorageVisualLayers.Inserting"]
    - state: panel
      map: ["enum.WiresVisualLayers.MaintenancePanel"]
  - type: InteractionOutline
  - type: SubmissionStorage

- type: entity
  parent: AUSubmissionPointBase
  id: AUSubmissionPointSteel
  name: Submission Point (steel)
  description: A place to submit  resources for shipping.
  components:
  - type: ItemSlots
    slots:
      ItemCabinet:
        whitelist:
          tags:
          - SteelOre



- type: entity
  parent: AUSubmissionPointBase
  id: AUSubmissionPointWood
  name: Submission Point (wood)
  description: A place to submit  resources for shipping.
  components:
  - type: ItemSlots
    slots:
      ItemCabinet:
        whitelist:
          tags:
          - AUwood


- type: entity
  parent: AUSubmissionPointBase
  id: AUSubmissionPointVegetables
  name: Submission Point (Vegetables)
  description: A place to submit  resources for shipping.
  components:
  - type: ItemSlots
    slots:
      ItemCabinet:
        whitelist:
          tags:
          - Vegetable

- type: entity
  parent: AUSubmissionPointBase
  id: AUSubmissionPointFruit
  name: Submission Point (Fruit)
  description: A place to submit  resources for shipping.
  components:
  - type: ItemSlots
    slots:
      ItemCabinet:
        whitelist:
          tags:
          - Fruit

- type: Tag
  id: SteelOre

- type: Tag
  id: AUwood

- type: entity
  parent: RMCCommunicationsConsoleBase
  id: AUColonyCommsConsole
  name: Colony Communications Console
  description: Used to send announcements to all colony intercoms in range.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/computer.rsi
    state: terminal
  - type: InteractionOutline
  - type: ActivatableUI
    key: enum.ColonyCommsConsoleUI.Key
  - type: UserInterface
    interfaces:
      enum.ColonyCommsConsoleUI.Key:
        type: ColonyCommsConsoleBui
  - type: ActivatableUIBlacklist
    blacklist:
      components:
      - Xeno
  - type: ColonyCommsConsole


- type: entity
  id: AUColonyIntercom
  name: Colony Intercom
  description: A public intercom for colony-wide announcements.
  components:
  - type: IntrinsicRadioReceiver
  - type: Speech
  - type: ActiveRadio
    channels:
    - colonyalert
  - type: RadioSpeaker
    enabled: true
    channels:
    - colonyalert
  - type: Sprite
    noRot: false
    drawdepth: SmallObjects
    sprite: _RMC14/Structures/Wallmounts/intercom.rsi
    layers:
    - state: intercom-p
    - state: intercom
      map: ["enum.PowerDeviceVisualLayers.Powered"]
      shader: unshaded
    - state: broadcasting
      map: ["enum.RadioDeviceVisualLayers.Broadcasting"]
      shader: unshaded
      visible: false
    - state: speaker
      map: ["enum.RadioDeviceVisualLayers.Speaker"]
      shader: unshaded
      visible: false
  - type: Transform
    noRot: false
    anchored: true


- type: entity
  id: colonysiren
  name: Colony Siren
  parent: BaseStructure
  description: Emits a loud siren when activated.
  components:
  - type: Transform
    anchored: true
  - type: Physics
    bodyType: Static
  - type: Anchorable
    flags:
    - Anchorable
  - type: Sprite
    noRot: true
    sprite: _RMC14/Objects/Misc/Lights/trafficlights.rsi
    offset: 0.65,0.8
    layers:
    - state: trafficlight
    - state: trafficlight_on
      visible: false
      map: [ "light" ]
    drawdepth: Mobs
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.1,-0.1,0.1,0.1"
        density: 50
        mask:
        - MachineMask
        layer:
        - WallLayer
  - type: ColonySiren

- type: entity
  parent: RMCCommunicationsConsoleBase
  id: AUColonyATM
  name: Colony ATM
  description: Swipe your ID card on the machine to withdraw cash from your personal account.
  components:
  - type: Sprite
    sprite: _CMU14/Structures/Machines/atm.rsi
    state: atm
  - type: InteractionOutline
  - type: UserInterface
    interfaces:
      enum.ColonyAtmUi.Key:
        type: ColonyAtmBui
  - type: ColonyAtm


# Department Consoles
- type: entity
  parent: RMCCommunicationsConsoleBase
  id: AUDepartmentConsoleBase
  abstract: true
  name: Department Console
  description: A console for managing department employees, salaries, and communications. Insert cash to fund the department.
  components:
  - type: Sprite
    sprite: _RMC14/Structures/Machines/computer.rsi
    state: terminal
  - type: InteractionOutline
  - type: ActivatableUI
    key: enum.DepartmentConsoleUi.Key
  - type: UserInterface
    interfaces:
      enum.DepartmentConsoleUi.Key:
        type: DepartmentConsoleBui
  - type: ActivatableUIBlacklist
    blacklist:
      components:
      - Xeno
  - type: DepartmentConsole
  - type: ActivatableUIRequiresAccess
  - type: AccessReader
    access:
    - - CMAccessColonyCommand
  - type: ItemSlots
    slots:
      CashSlot:
        whitelist:
          tags:
          - RMCSpaceCash
  - type: ContainerContainer
    containers:
      CashSlot: !type:ContainerSlot {}

- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleMedical
  name: Medical Department Console
  description: Manages employees, salaries, and announcements for the Medical department.
  components:
  - type: DepartmentConsole
    departmentName: Medical
    departmentId: AU14DepartmentColonyMedical
    departmentAccessLevel: CMAccessColonyMedbay
    defaultSalary: 50

- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleEngineering
  name: Engineering Department Console
  description: Manages employees, salaries, and announcements for the Engineering department.
  components:
  - type: DepartmentConsole
    departmentName: Engineering
    departmentId: AU14DepartmentEngineering
    departmentAccessLevel: CMAccessColonyEngineering
    defaultSalary: 50

- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleSecurity
  name: Security Department Console
  description: Manages employees, salaries, and announcements for the Security department.
  components:
  - type: DepartmentConsole
    departmentName: Security
    departmentId: AU14DepartmentColonySecurity
    departmentAccessLevel: CMAccessColonyBrig
    defaultSalary: 60


- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleLabor
  name: Labor Department Console
  description: Manages employees, salaries, and announcements for the Labor  department.
  components:
  - type: DepartmentConsole
    departmentName: Cargo
    departmentId: AU14DepartmentLabor
    departmentAccessLevel: CMAccessColonyLogistics
    defaultSalary: 45

- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleCommand
  name: Command Department Console
  description: Manages employees, salaries, and announcements for the Command department.
  components:
  - type: DepartmentConsole
    departmentName: Command
    departmentId: AU14DepartmentColonyCommand
    departmentAccessLevel: CMAccessColonyCommand
    defaultSalary: 75

- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleCivilian
  name: Civilian Department Console
  description: Manages employees, salaries, and announcements for the Civilian department.
  components:
  - type: DepartmentConsole
    departmentName: Civilian
    departmentId: AU14DepartmentCivilian
    departmentAccessLevel: CMAccessColonyPublic
    defaultSalary: 40

- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleServices
  name: Services Department Console
  description: Manages employees, salaries, and announcements for the Services department.
  components:
  - type: DepartmentConsole
    departmentName: Services
    departmentId: AU14DepartmentServices
    departmentAccessLevel: CMAccessColonyPublic
    defaultSalary: 40

- type: entity
  parent: AUDepartmentConsoleBase
  id: AUDepartmentConsoleCorporate
  name: Corporate Department Console
  description: Manages employees, salaries, and announcements for the Corporate department.
  components:
  - type: DepartmentConsole
    departmentName: Corporate
    departmentId: AU14DepartmentCorporate
    departmentAccessLevel: CMAccessColonyResearch
    defaultSalary: 55
    colonyManaged: false
    asrsFaction: corporate

