Lockable Buttons & Button Frames (#25631)

initial commit
This commit is contained in:
rosieposie
2024-02-27 02:57:17 -05:00
committed by GitHub
parent a411810171
commit 8dd1748cec
11 changed files with 530 additions and 0 deletions

View File

@@ -217,3 +217,368 @@
- type: Construction
graph: LightSwitchDirectionalGraph
node: LightSwitchDirectionalNode
# lockable buttons
- type: entity
id: LockableButton
name: lockable button
parent: SignalButtonDirectional
noSpawn: true
components:
- type: Appearance
- type: Lock
- type: LockVisuals
- type: AccessReader
- type: Sprite
drawdepth: WallMountedItems
sprite: Structures/Wallmounts/locked_switch.rsi
layers:
- state: base
- state: locked
map: ["enum.LockVisualLayers.Lock"]
shader: unshaded
- type: entity
id: LockableButtonCaptain
name: lockable button
suffix: Captain
parent: LockableButton
components:
- type: AccessReader
access: [["Captain"]]
- type: entity
id: LockableButtonHeadOfPersonnel
name: lockable button
suffix: HeadOfPersonnel
parent: LockableButton
components:
- type: AccessReader
access: [["HeadOfPersonnel"]]
- type: entity
id: LockableButtonChiefEngineer
name: lockable button
suffix: ChiefEngineer
parent: LockableButton
components:
- type: AccessReader
access: [["ChiefEngineer"]]
- type: entity
id: LockableButtonChiefMedicalOfficer
name: lockable button
suffix: ChiefMedicalOfficer
parent: LockableButton
components:
- type: AccessReader
access: [["ChiefMedicalOfficer"]]
- type: entity
id: LockableButtonHeadOfSecurity
name: lockable button
suffix: HeadOfSecurity
parent: LockableButton
components:
- type: AccessReader
access: [["HeadOfSecurity"]]
- type: entity
id: LockableButtonResearchDirector
name: lockable button
suffix: ResearchDirector
parent: LockableButton
components:
- type: AccessReader
access: [["ResearchDirector"]]
- type: entity
id: LockableButtonCommand
name: lockable button
suffix: Command
parent: LockableButton
components:
- type: AccessReader
access: [["Command"]]
- type: entity
id: LockableButtonCryogenics
name: lockable button
suffix: Cryogenics
parent: LockableButton
components:
- type: AccessReader
access: [["Cryogenics"]]
- type: entity
id: LockableButtonSecurity
name: lockable button
suffix: Security
parent: LockableButton
components:
- type: AccessReader
access: [["Security"]]
- type: entity
id: LockableButtonDetective
name: lockable button
suffix: Detective
parent: LockableButton
components:
- type: AccessReader
access: [["Detective"]]
- type: entity
id: LockableButtonArmory
name: lockable button
suffix: Armory
parent: LockableButton
components:
- type: AccessReader
access: [["Armory"]]
- type: entity
id: LockableButtonBrig
name: lockable button
suffix: Brig
parent: LockableButton
components:
- type: AccessReader
access: [["Brig"]]
- type: entity
id: LockableButtonLawyer
name: lockable button
suffix: Lawyer
parent: LockableButton
components:
- type: AccessReader
access: [["Lawyer"]]
- type: entity
id: LockableButtonEngineering
name: lockable button
suffix: Engineering
parent: LockableButton
components:
- type: AccessReader
access: [["Engineering"]]
- type: entity
id: LockableButtonMedical
name: lockable button
suffix: Medical
parent: LockableButton
components:
- type: AccessReader
access: [["Medical"]]
- type: entity
id: LockableButtonQuartermaster
name: lockable button
suffix: Quartermaster
parent: LockableButton
components:
- type: AccessReader
access: [["Quartermaster"]]
- type: entity
id: LockableButtonSalvage
name: lockable button
suffix: Salvage
parent: LockableButton
components:
- type: AccessReader
access: [["Salvage"]]
- type: entity
id: LockableButtonCargo
name: lockable button
suffix: Cargo
parent: LockableButton
components:
- type: AccessReader
access: [["Cargo"]]
- type: entity
id: LockableButtonResearch
name: lockable button
suffix: Research
parent: LockableButton
components:
- type: AccessReader
access: [["Research"]]
- type: entity
id: LockableButtonService
name: lockable button
suffix: Service
parent: LockableButton
components:
- type: AccessReader
access: [["Service"]]
- type: entity
id: LockableButtonMaintenance
name: lockable button
suffix: Maintenance
parent: LockableButton
components:
- type: AccessReader
access: [["Maintenance"]]
- type: entity
id: LockableButtonExternal
name: lockable button
suffix: External
parent: LockableButton
components:
- type: AccessReader
access: [["External"]]
- type: entity
id: LockableButtonJanitor
name: lockable button
suffix: Janitor
parent: LockableButton
components:
- type: AccessReader
access: [["Janitor"]]
- type: entity
id: LockableButtonTheatre
name: lockable button
suffix: Theatre
parent: LockableButton
components:
- type: AccessReader
access: [["Theatre"]]
- type: entity
id: LockableButtonBar
name: lockable button
suffix: Bar
parent: LockableButton
components:
- type: AccessReader
access: [["Bar"]]
- type: entity
id: LockableButtonChemistry
name: lockable button
suffix: Chemistry
parent: LockableButton
components:
- type: AccessReader
access: [["Chemistry"]]
- type: entity
id: LockableButtonKitchen
name: lockable button
suffix: Kitchen
parent: LockableButton
components:
- type: AccessReader
access: [["Kitchen"]]
- type: entity
id: LockableButtonChapel
name: lockable button
suffix: Chapel
parent: LockableButton
components:
- type: AccessReader
access: [["Chapel"]]
- type: entity
id: LockableButtonHydroponics
name: lockable button
suffix: Hydroponics
parent: LockableButton
components:
- type: AccessReader
access: [["Hydroponics"]]
- type: entity
id: LockableButtonAtmospherics
name: lockable button
suffix: Atmospherics
parent: LockableButton
components:
- type: AccessReader
access: [["Atmospherics"]]
# button frames
- type: entity
id: ButtonFrame
name: button frame
noSpawn: true
description: It's a frame to help distinguish switches visually.
placement:
mode: SnapgridCenter
snap:
- Wallmount
components:
- type: Clickable
- type: WallMount
arc: 360
- type: Physics
canCollide: false
- type: Sprite
drawdepth: SmallObjects
sprite: Structures/Wallmounts/switch_frame.rsi
state: grey
- type: Rotatable
- type: Fixtures
- type: entity
id: ButtonFrameGrey
parent: ButtonFrame
suffix: grey
components:
- type: Sprite
drawdepth: SmallObjects
sprite: Structures/Wallmounts/switch_frame.rsi
state: grey
- type: entity
id: ButtonFrameCaution
parent: ButtonFrame
suffix: caution
components:
- type: Sprite
drawdepth: SmallObjects
sprite: Structures/Wallmounts/switch_frame.rsi
state: caution
- type: entity
id: ButtonFrameCautionSecurity
parent: ButtonFrame
suffix: caution
components:
- type: Sprite
drawdepth: SmallObjects
sprite: Structures/Wallmounts/switch_frame.rsi
state: caution_security
- type: entity
id: ButtonFrameExit
parent: ButtonFrame
suffix: exit
components:
- type: Sprite
drawdepth: SmallObjects
sprite: Structures/Wallmounts/switch_frame.rsi
state: exit
- type: entity
id: ButtonFrameJanitor
parent: ButtonFrame
suffix: janitor
components:
- type: Sprite
drawdepth: SmallObjects
sprite: Structures/Wallmounts/switch_frame.rsi
state: janitor

Binary file not shown.

After

Width:  |  Height:  |  Size: 937 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 725 B

View File

@@ -0,0 +1,65 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
"copyright": "Taken from CEV-Eris at commit 15748b71a1e6d2c547588c653d7c42f18011f7c5, modified by ThunderBear2006 (github) for Space Station 14, modified further by rosieposieeee (github)",
"states": [
{
"name": "base",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
},
{
"name": "locked",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
},
{
"name": "unlocked",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
}
]
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 754 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 966 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

View File

@@ -0,0 +1,100 @@
{
"version": 1,
"size": {
"x": 32,
"y": 32
},
"license": "CC-BY-SA-3.0",
"copyright": "Made by rosieposieeee (github)",
"states": [
{
"name": "grey",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
},{
"name": "exit",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
},
{
"name": "caution",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
},
{
"name": "caution_security",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
},
{
"name": "janitor",
"directions": 4,
"delays": [
[
1
],
[
1
],
[
1
],
[
1
]
]
}
]
}