# SPDX-FileCopyrightText: 2022 Chris V <HoofedEar@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Veritius <veritiusgaming@gmail.com>
# SPDX-FileCopyrightText: 2022 WlarusFromDaSpace <44726328+WlarusFromDaSpace@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 mirrorcult <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2023 Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Ed <96445749+TheShuEd@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Flareguy <78941145+Flareguy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Nairod <110078045+Nairodian@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Tom Leys <tom@crump-leys.com>
# SPDX-FileCopyrightText: 2023 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 lzk228 <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2024 Baptr0b0t <152836416+Baptr0b0t@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Plykiya <58439124+Plykiya@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Winkarst <74284083+Winkarst-cpu@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 a_person <alexanderbeaumont05@hotmail.com>
# SPDX-FileCopyrightText: 2024 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  parent: BaseItem
  id: DoorRemoteDefault
  name: door remote
  description: A gadget which can open and bolt doors remotely.
  abstract: true
  components:
  - type: Sprite
    sprite: Objects/Devices/door_remote.rsi
  - type: Item
    storedRotation: -90
  - type: Access
  - type: DoorRemote
  - type: StealTarget
    stealGroup: DoorRemote

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteCommand
  name: command door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#e6e600"
    - state: door_remotescreencolour
      color: "#9f9f00"
  - type: Access
    groups:
    - Command
  - type: DoorRemote

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteCustom
  name: custom door remote
  description: A gadget which can open and bolt doors remotely. This advanced variant does not have built-in access, instead inheriting the ID access of the user.
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#0077FF"
    - state: door_remotescreencolour
      color: "#0033EE"
  - type: Access
  - type: DoorRemote
    includeUserAccess: true

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteSecurity
  name: security door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#cb0000"
    - state: door_remotescreencolour
      color: "#830000"
  - type: Access
    groups:
    - Security

- type: entity
  parent: [DoorRemoteDefault, BaseSecurityCommandContraband]
  id: DoorRemoteArmory
  name: armory door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#e80000"
    - state: door_remotescreencolour
      color: "#a80000"
  - type: Access
    groups:
    - Armory

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteService
  name: service door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#58c800"
    - state: door_remotescreencolour
      color: "#3a7231"
  - type: Access
    groups:
    - Service

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteResearch
  name: research door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#a53aaa"
    - state: door_remotescreencolour
      color: "#652368"
  - type: Access
    groups:
    - Research

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteCargo
  name: cargo door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#b18644"
    - state: door_remotescreencolour
      color: "#5b4523"
  - type: Access
    groups:
    - Cargo

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteMedical
  name: medical door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#68aed6"
    - state: door_remotescreencolour
      color: "#325f7a"
  - type: Access
    groups:
    - Medical

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteEngineering
  name: engineering door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#ffa62b"
    - state: door_remotescreencolour
      color: "#bc5b00"
  - type: Access
    groups:
    - Engineering

- type: entity
  parent: [DoorRemoteDefault, BaseCommandContraband]
  id: DoorRemoteAll
  name: super door remote
  suffix: Admeme
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#2eba22"
    - state: door_remotescreencolour
      color: "#22871a"
  - type: DoorRemote
    includeUserAccess: true
  - type: Access
    groups:
    - AllAccess
    tags:
    - CentralCommand
    - NuclearOperative
    - SyndicateAgent
    - Wizard
    - Xenoborg

- type: entity
  parent: [ DoorRemoteDefault, BaseXenoborgContraband ]
  id: DoorRemoteXenoborg
  name: xenoborg door remote
  components:
  - type: Sprite
    layers:
    - state: door_remotebase
    - state: door_remotelightscolour
      color: "#2eba22"
    - state: door_remotescreencolour
      color: "#22871a"
  - type: Access
    tags:
    - Xenoborg
