stack-xeno-floor = xeno floor
stack-xeno-steel = xeno steel tile
stack-xeno-steel-corner = xeno steel corner tile
+stack-xenoborg = xenoborg tile
stack-xeno-maint = xeno techmaint
stack-dark-squiggly = dark steel squiggly tile
stack-white-marble-floor = white marble floor
tiles-xeno-steel = xeno steel tile
tiles-xeno-steel-corner = xeno steel corner tile
tiles-xeno-maint = xeno techmaint
+tiles-xenoborg-floor = xenoborg tile
tiles-dark-squiggly = dark steel squiggly tile
tiles-white-marble = white marble tile
tiles-dark-marble = dark marble tile
maxIntensity: 100
intensitySlope: 2
totalIntensity: 200
+ - type: SurveillanceCameraSpeaker
+ - type: SurveillanceCameraMonitor
+ - type: RoboticsConsole
+ allowBorgControl: false
+ radioChannel: Xenoborg
+ - type: DeviceNetwork
+ deviceNetId: Wireless
+ receiveFrequencyId: Mothership
+ transmitFrequencyId: Mothership
+ - type: WirelessNetworkConnection
+ range: 10000 # mothership can see them from very far
- type: WiresPanel
- type: ActivatableUI
key: enum.LatheUiKey.Key
requireInputValidation: false
enum.RadarConsoleUiKey.Key:
type: RadarConsoleBoundUserInterface
+ enum.RoboticsConsoleUiKey.Key:
+ type: RoboticsConsoleBoundUserInterface
+ enum.SurveillanceCameraMonitorUiKey.Key:
+ type: SurveillanceCameraMonitorBoundUserInterface
enum.LatheUiKey.Key:
type: LatheBoundUserInterface
enum.ResearchClientUiKey.Key:
uis:
enum.RadarConsoleUiKey.Key:
toggleAction: ActionAGhostShowRadar
+ enum.RoboticsConsoleUiKey.Key:
+ toggleAction: ActionXenoborgControlMonitor
+ enum.SurveillanceCameraMonitorUiKey.Key:
+ toggleAction: ActionXenoborgCameraMonitor
- type: ShowElectrocutionHUD
- type: PowerMonitoringCableNetworks
- type: RadarConsole
-# TODO: add xenoborg control interface action (part 5)
-# TODO: add xenoborg camera monitor interface action (part 5)
+- type: entity
+ parent: BaseAGhostAction
+ id: ActionXenoborgControlMonitor
+ name: Xenoborgs Control Console
+ description: View the Xenoborgs Control Console
+ components:
+ - type: Action
+ icon: { sprite: Interface/Actions/actions_borg.rsi, state: xenoborg-basic-module }
+ iconOn: Interface/Actions/actions_borg.rsi/xenoborg-basic-module.png
+ keywords: [ "Mothership Core", "console", "interface" ]
+ priority: -6
+ - type: InstantAction
+ event: !type:ToggleIntrinsicUIEvent { key: enum.RoboticsConsoleUiKey.Key }
+
+- type: entity
+ parent: BaseAGhostAction
+ id: ActionXenoborgCameraMonitor
+ name: Xenoborgs Camera Monitor
+ description: View the Xenoborgs Camera Monitor
+ components:
+ - type: Action
+ icon: { sprite: Interface/Actions/actions_borg.rsi, state: xenoborg-eye-module }
+ iconOn: Interface/Actions/actions_borg.rsi/xenoborg-eye-module.png
+ keywords: [ "Mothership Core", "console", "interface" ]
+ priority: -6
+ - type: InstantAction
+ event: !type:ToggleIntrinsicUIEvent { key: enum.SurveillanceCameraMonitorUiKey.Key }
Cable: 2
Glass: 1
+- type: entity
+ parent: BaseMachineCircuitboard
+ id: SurveillanceCameraWirelessRouterXenoborgCircuitboard
+ name: xenoborg camera wireless router
+ description: A machine printed circuit board for a xenoborg camera wireless router.
+ components:
+ - type: Sprite
+ state: generic
+ - type: MachineBoard
+ prototype: SurveillanceCameraWirelessRouterXenoborg
+ stackRequirements:
+ Cable: 2
+ Glass: 1
+
- type: entity
id: SurveillanceWirelessCameraMovableCircuitboard
parent: BaseMachineCircuitboard
state: cpu_service
- type: ComputerBoard
prototype: ComputerSurveillanceWirelessCameraMonitor
+
+- type: entity
+ parent: BaseComputerCircuitboard
+ id: XenoborgCameraMonitorCircuitboard
+ name: xenoborg camera monitor board
+ description: A computer printed circuit board for a xenoborg camera monitor.
+ components:
+ - type: Sprite
+ state: cpu_science
+ - type: ComputerBoard
+ prototype: ComputerSurveillanceWirelessXenoborgCameraMonitor
- type: entity
parent: BaseComputerCircuitboard
- type: ComputerBoard
prototype: ComputerRoboticsControl
+- type: entity
+ parent: BaseComputerCircuitboard
+ id: ComputerXenoborgsControlCircuitboard
+ name: xenoborg control console board
+ description: A computer printed circuit board for a xenoborg control console.
+ components:
+ - type: Sprite
+ state: cpu_science
+ - type: ComputerBoard
+ prototype: ComputerXenoborgsControl
+
- type: entity
parent: BaseComputerCircuitboard
id: StationAiUploadCircuitboard
components:
- type: AccessReader
access: [["Security"], ["Command"]]
+
+- type: entity
+ parent: DoorElectronics
+ id: DoorElectronicsXenoborg
+ suffix: Xenoborg, Locked
+ components:
+ - type: AccessReader
+ access: [["Xenoborg"]]
- type: Stack
stackType: FloorTileXenoMaint
+- type: entity
+ id: FloorTileItemXenoborg
+ parent: FloorTileItemBase
+ name: xenoborg floor
+ components:
+ - type: Sprite
+ state: xenoborg-floor
+ - type: FloorTile
+ outputs:
+ - Plating
+ - FloorXenoborg
+ - type: Stack
+ stackType: FloorTileXenoborg
+
- type: entity
parent: FloorTileItemDark
id: FloorTileItemDarkSquiggly
containers:
board: [ DoorElectronicsNukeop ]
+- type: entity
+ parent: AirlockXenoborg
+ id: AirlockXenoborgLocked
+ suffix: Xenoborg, Locked
+ components:
+ - type: StationAiWhitelist
+ enabled: false
+ - type: ContainerFill
+ containers:
+ board: [ DoorElectronicsXenoborg ]
+
# Shuttle airlocks
- type: entity
parent: AirlockShuttle
containers:
board: [ DoorElectronicsNukeop ]
+- type: entity
+ parent: AirlockShuttleXenoborg
+ id: AirlockGlassShuttleXenoborgLocked
+ suffix: External, Docking, Xenoborg, Locked
+ components:
+ - type: StationAiWhitelist
+ enabled: false
+ - type: ContainerFill
+ containers:
+ board: [ DoorElectronicsXenoborg ]
+
- type: entity
parent: AirlockGlassShuttle
id: AirlockExternalGlassShuttleLocked
- type: Paintable
group: null
+- type: entity
+ parent: Airlock
+ id: AirlockXenoborg
+ name: xenoborg airlock
+ components:
+ - type: Sprite
+ sprite: Structures/Doors/Airlocks/Standard/xenoborg.rsi
+ - type: Paintable
+ group: null
+
- type: entity
parent: Airlock
id: AirlockHatchMaintenance
components:
- type: Sprite
sprite: Structures/Doors/Airlocks/Standard/shuttle_syndicate.rsi
+
+- type: entity
+ parent: AirlockShuttle
+ id: AirlockShuttleXenoborg
+ suffix: Docking
+ name: external airlock
+ description: Necessary for connecting two space craft together.
+ components:
+ - type: Sprite
+ sprite: Structures/Doors/Airlocks/Standard/shuttle_xenoborg.rsi
- type: CommunicationsConsole
title: comms-console-announcement-title-station
- type: DeviceNetwork
- deviceNetId: Wireless
+ deviceNetId: Wireless
transmitFrequencyId: ShuttleTimer
- type: ActivatableUI
key: enum.CommunicationsConsoleUiKey.Key
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
+- type: entity
+ parent: ComputerSurveillanceWirelessCameraMonitor
+ id: ComputerSurveillanceWirelessXenoborgCameraMonitor
+ name: xenoborg camera monitor
+ description: A wireless xenoborg camera monitor. You're watching them. Maybe.
+ components:
+ - type: Computer
+ board: XenoborgCameraMonitorCircuitboard
+ - type: DeviceNetwork
+ deviceNetId: Wireless
+ receiveFrequencyId: Mothership
+ transmitFrequencyId: Mothership
+ - type: WirelessNetworkConnection
+ range: 2000
+
- type: entity
id: ComputerPalletConsole
parent: BaseComputerAiAccess
- type: Lock
unlockOnClick: false
+- type: entity
+ parent: ComputerRoboticsControl
+ id: ComputerXenoborgsControl
+ name: xenoborgs control console
+ description: Used to remotely monitor all xenoborgs.
+ components:
+ - type: Sprite
+ layers:
+ - map: ["computerLayerBody"]
+ state: computer
+ - map: ["computerLayerKeyboard"]
+ state: generic_keyboard
+ - map: ["computerLayerScreen"]
+ state: xenorobot
+ - map: ["computerLayerKeys"]
+ state: rd_key
+ - map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
+ state: generic_panel_open
+ - type: RoboticsConsole
+ allowBorgControl: false
+ radioChannel: Xenoborg
+ - type: ActiveRadio
+ channels:
+ - Xenoborg
+ - type: DeviceNetwork
+ deviceNetId: Wireless
+ receiveFrequencyId: Mothership
+ transmitFrequencyId: Xenoborg
+ - type: Computer
+ board: ComputerXenoborgsControlCircuitboard
+ - type: AccessReader # only used for dangerous things
+ access: [["Xenoborg"]]
+
- type: entity
id: StationAiUploadComputer
parent: BaseComputer
components:
- type: SurveillanceCameraRouter
subnetFrequency: SurveillanceCameraEntertainment
+
+- type: entity
+ parent: SurveillanceCameraWirelessRouterBase
+ id: SurveillanceCameraWirelessRouterXenoborg
+ name: xenoborg camera wireless router
+ components:
+ - type: DeviceNetwork
+ deviceNetId: Wireless
+ receiveFrequencyId: Mothership
+ transmitFrequencyId: Mothership
+ - type: WirelessNetworkConnection
+ range: 2000 # longer range to get xenoborgs even when the mothership is far away
+ - type: SurveillanceCameraRouter
+ subnetFrequency: Xenoborg
+ - type: Machine
+ board: SurveillanceCameraWirelessRouterXenoborgCircuitboard
- type: Battery
maxCharge: 200000
startingCharge: 200000
+
+- type: entity
+ parent: BaseAPC
+ id: APCXenoborg
+ suffix: Basic, 50kJ, Xenoborg
+ components:
+ - type: Battery
+ maxCharge: 50000
+ startingCharge: 50000
+ - type: AccessReader
+ access: [["Xenoborg"]]
graph: Girder
node: reinforcedWallChitin
+- type: entity
+ parent: WallPlastitanium
+ id: WallXenoborg
+ name: xenoborg wall
+ components:
+ - type: Sprite
+ sprite: Structures/Walls/xenoborg.rsi
+ - type: Icon
+ sprite: Structures/Walls/xenoborg.rsi
+ - type: IconSmooth
+ key: walls
+ base: xenoborg
+
+- type: entity
+ parent: WallPlastitaniumDiagonal
+ id: WallXenoborgDiagonal
+ name: xenoborg wall
+ suffix: diagonal
+ components:
+ - type: Sprite
+ drawdepth: Walls
+ sprite: Structures/Walls/xenoborg_diagonal.rsi
+ state: state0
+ - type: Icon
+ sprite: Structures/Walls/xenoborg_diagonal.rsi
+ state: state0
+
- type: entity
parent: BaseWall
id: WallUranium
- type: IconSmooth
key: cards
base: card
- - type: Occluder
+ - type: Occluder
- type: BlockWeather
- - type: SunShadowCast
\ No newline at end of file
+ - type: SunShadowCast
--- /dev/null
+- type: entity
+ id: XenoborgWindow
+ parent: PlastitaniumWindow
+ name: xenoborg window
+ components:
+ - type: Sprite
+ drawdepth: WallTops
+ sprite: Structures/Windows/xenoborg.rsi
+ - type: Icon
+ sprite: Structures/Windows/xenoborg.rsi
+ state: full
+ - type: IconSmooth
+ key: windows
+ base: xenoborg
spawn: FloorTileItemXenoSteelCorner
maxCount: 30
+- type: stack
+ id: FloorTileXenoborg
+ name: stack-xenoborg
+ spawn: FloorTileItemXenoborg
+ maxCount: 30
+
- type: stack
id: FloorTileDarkSquiggly
name: stack-dark-squiggly
itemDrop: FloorTileItemWoodLarge
heatCapacity: 10000
+- type: tile
+ id: FloorXenoborg
+ name: tiles-xenoborg-floor
+ sprite: /Textures/Tiles/exoborg.png
+ baseTurf: Plating
+ isSubfloor: false
+ deconstructTools: [ Prying ]
+ footstepSounds:
+ collection: FootstepHull
+ itemDrop: FloorTileItemXenoborg
+ heatCapacity: 10000
+
- type: tile
id: FloorXeno
name: tiles-xeno-floor
{
"name": "xeno-techmaint"
},
+ {
+ "name": "xenoborg-floor"
+ },
{
"name": "dark-squiggly"
},
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Taken from CEV-Eris at commit https://github.com/discordia-space/CEV-Eris/commit/14517938186858388656a6aee14bf47af9e9649f - then modified by Samuka-C (github)",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "assembly"
+ },
+ {
+ "name": "bolted_unlit"
+ },
+ {
+ "name": "closed"
+ },
+ {
+ "name": "closed_unlit"
+ },
+ {
+ "name": "closing",
+ "delays": [
+ [
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2
+ ]
+ ]
+ },
+ {
+ "name": "closing_unlit",
+ "delays": [
+ [
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2
+ ]
+ ]
+ },
+ {
+ "name": "deny_unlit",
+ "delays": [
+ [
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2
+ ]
+ ]
+ },
+ {
+ "name": "open"
+ },
+ {
+ "name": "opening",
+ "delays": [
+ [
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2
+ ]
+ ]
+ },
+ {
+ "name": "opening_unlit",
+ "delays": [
+ [
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2
+ ]
+ ]
+ },
+ {
+ "name": "panel_closing",
+ "delays": [
+ [
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2
+ ]
+ ]
+ },
+ {
+ "name": "panel_open"
+ },
+ {
+ "name": "panel_opening",
+ "delays": [
+ [
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2,
+ 0.2
+ ]
+ ]
+ },
+ {
+ "name": "welded"
+ },
+ {
+ "name": "emergency_unlit",
+ "delays": [
+ [
+ 0.4,
+ 0.4
+ ]
+ ]
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Created by Samuka-C (github).",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "assembly"
+ },
+ {
+ "name": "bolted_unlit"
+ },
+ {
+ "name": "closed"
+ },
+ {
+ "name": "closed_unlit"
+ },
+ {
+ "name": "closing",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "closing_unlit",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "deny_unlit",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "open",
+ "delays": [
+ [
+ 1
+ ]
+ ]
+ },
+ {
+ "name": "opening",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "opening_unlit",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "panel_closing",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "panel_open",
+ "delays": [
+ [
+ 1
+ ]
+ ]
+ },
+ {
+ "name": "panel_opening",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "sparks",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "sparks_broken",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "sparks_damaged",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 1.7
+ ]
+ ]
+ },
+ {
+ "name": "sparks_open",
+ "delays": [
+ [
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1,
+ 0.1
+ ]
+ ]
+ },
+ {
+ "name": "welded"
+ },
+ {
+ "name": "emergency_unlit",
+ "delays": [
+ [
+ 0.4,
+ 0.4
+ ]
+ ]
+ }
+ ]
+}
{
"version": 1,
"license": "CC-BY-SA-3.0",
- "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bd6873fd4dd6a61d7e46f1d75cd4d90f64c40894. comm_syndie made by Veritius, based on comm. generic_panel_open made by Errant, commit https://github.com/space-wizards/space-station-14/pull/32273, comms_wizard and wizard_key by ScarKy0, request- variants transfer made by EmoGarbage404 (github)",
+ "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bd6873fd4dd6a61d7e46f1d75cd4d90f64c40894. comm_syndie made by Veritius, based on comm. generic_panel_open made by Errant, commit https://github.com/space-wizards/space-station-14/pull/32273, comms_wizard and wizard_key by ScarKy0, request- variants transfer made by EmoGarbage404 (github), xenorobot by Samuka-C (github)",
"size": {
"x": 32,
"y": 32
"name": "service_keys",
"directions": 4
},
+ {
+ "name": "xenorobot",
+ "directions": 4
+ },
{
"name": "wizard_key",
"directions": 4
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Created by Samuka-C (github)",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "full"
+ },
+ {
+ "name": "xenoborg0",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg1",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg2",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg3",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg4",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg5",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg6",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg7",
+ "directions": 4
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Created by Samuka-C (github)",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "state0",
+ "directions": 4
+ },
+ {
+ "name": "state1",
+ "directions": 4
+ }
+ ]
+}
--- /dev/null
+{
+ "version": 1,
+ "license": "CC-BY-SA-3.0",
+ "copyright": "Created by Samuka-C (github).",
+ "size": {
+ "x": 32,
+ "y": 32
+ },
+ "states": [
+ {
+ "name": "full"
+ },
+ {
+ "name": "xenoborg0",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg1",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg2",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg3",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg4",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg5",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg6",
+ "directions": 4
+ },
+ {
+ "name": "xenoborg7",
+ "directions": 4
+ }
+ ]
+}
license: "CC0-1.0"
copyright: "Created by SeaWyrm"
source: "https://github.com/space-wizards/space-station-14/pull/38007"
+
+- files: ["exoborg.png"]
+ license: "CC0-1.0"
+ copyright: "Created by Samuka-C (github) for space-station-14."
+ source: "https://github.com/space-wizards/space-station-14/pull/37068"