Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix screens not being dismantlable #34804

Open
wants to merge 17 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -14,3 +14,20 @@
- StationMapElectronics
- type: StaticPrice
price: 30

- type: entity
parent: BaseElectronics
id: ScreenCircuitboard
name: screen electronics
description: An electronics board used in information screens.
components:
- type: Item
storedRotation: 0
- type: Sprite
sprite: Objects/Misc/module.rsi
state: airalarm_electronics
- type: Tag
tags:
- ScreenElectronics
- type: StaticPrice
price: 30
39 changes: 38 additions & 1 deletion Resources/Prototypes/Entities/Structures/Wallmounts/screen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@
state: screen
noRot: true
- type: Construction
graph: Timer
graph: Screen
node: screen
- type: ApcPowerReceiver
powerLoad: 100
Expand All @@ -37,6 +37,43 @@
- type: DeviceNetwork
deviceNetId: Wireless
receiveFrequencyId: ShuttleTimer
- type: ContainerFill
containers:
board: [ ScreenCircuitboard ]
- type: ContainerContainer
containers:
board: !type:Container

- type: entity
id: ScreenAssembly
name: screen assembly
description: A screen assembly
components:
- type: WallMount
- type: Clickable
- type: InteractionOutline
- type: Sprite
sprite: Structures/Wallmounts/screen.rsi
layers:
- state: screen_frame1
map: [ "enum.ConstructionVisuals.Layer" ]
- type: Appearance
- type: GenericVisualizer
visuals:
enum.ConstructionVisuals.Key:
enum.ConstructionVisuals.Layer:
assembly: { state: screen_frame0 }
wired: { state: screen_frame1 }
electronics: { state: screen_frame2 }
- type: Construction
graph: Screen
node: assembly
- type: Transform
anchored: true
placement:
mode: SnapgridCenter
snap:
- Wallmount

- type: entity
id: ArrivalsShuttleTimer
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,79 @@
- type: constructionGraph
id: Screen
start: start
graph:
- node: start
edges:
- to: assembly
steps:
- material: Steel
amount: 2
doAfter: 2.0

- node: assembly
entity: ScreenAssembly
actions:
- !type:AppearanceChange
edges:
- to: wired
steps:
- material: Cable
amount: 2
doAfter: 1
- to: start
completed:
- !type:GivePrototype
prototype: SheetSteel1
amount: 2
- !type:DeleteEntity {}
steps:
- tool: Welding
doAfter: 2

- node: wired
entity: ScreenAssembly
actions:
- !type:AppearanceChange
edges:
- to: electronics
steps:
- tag: ScreenElectronics
store: board
name: "screen electronics"
icon:
sprite: "Objects/Misc/module.rsi"
state: "door_electronics"
doAfter: 1
- to: assembly
completed:
- !type:GivePrototype
prototype: CableApcStack1
amount: 2
steps:
- tool: Cutting
doAfter: 1

- node: electronics
actions:
- !type:AppearanceChange
edges:
- to: screen
steps:
- tool: Screwing
doAfter: 2

- node: screen
entity: Screen
edges:
- to: wired
conditions:
- !type:ContainerNotEmpty
container: board
completed:
- !type:EmptyAllContainers
pickup: true
emptyAtUser: true
steps:
- tool: Prying
doAfter: 1

18 changes: 18 additions & 0 deletions Resources/Prototypes/Recipes/Construction/utilities.yml
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,24 @@
conditions:
- !type:WallmountCondition {}

- type: construction
name: screen
id: Screen
graph: Screen
startNode: start
targetNode: screen
category: construction-category-structures
description: "A wallmounted display."
icon:
sprite: Structures/Wallmounts/screen.rsi
state: screen
objectType: Structure
canRotate: false
placementMode: SnapgridCenter
canBuildInImpassable: true
conditions:
- !type:WallmountCondition

# POWER
- type: construction
name: APC
Expand Down
1 change: 1 addition & 0 deletions Resources/Prototypes/Recipes/Lathes/Packs/engineering.yml
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,7 @@
- CellRechargerCircuitboard
- WeaponCapacitorRechargerCircuitboard
- FreezerElectronics
- ScreenElectronics

- type: latheRecipePack
id: EngineeringBoardsStatic
Expand Down
5 changes: 5 additions & 0 deletions Resources/Prototypes/Recipes/Lathes/electronics.yml
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,11 @@
id: StationMapElectronics
result: StationMapCircuitboard

- type: latheRecipe
parent: BaseCheapElectronicsRecipe
id: ScreenElectronics
result: ScreenCircuitboard

- type: latheRecipe
parent: BaseElectronicsRecipe
id: IntercomElectronics
Expand Down
3 changes: 3 additions & 0 deletions Resources/Prototypes/tags.yml
Original file line number Diff line number Diff line change
Expand Up @@ -1204,6 +1204,9 @@
- type: Tag
id: StationMapElectronics

- type: Tag
id: ScreenElectronics

- type: Tag
id: Steak

Expand Down
11 changes: 10 additions & 1 deletion Resources/Textures/Structures/Wallmounts/screen.rsi/meta.json
VerinSenpai marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -1,14 +1,23 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "From vgstation: https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe#diff-20395160138bed693d15eee6f16d671531b5fa533ec52c50e8df6d52370dbecd",
"copyright": "From vgstation: https://github.com/vgstation-coders/vgstation13/commit/a7290010020e541ed6b57817a07023ca6bef26fe#diff-20395160138bed693d15eee6f16d671531b5fa533ec52c50e8df6d52370dbecd. Screen frames are modifications of screen made by VerinSenpai for SS14.",
"size": {
"x": 32,
"y": 32
},
"states": [
{
"name": "screen"
},
{
"name": "screen_frame0"
},
{
"name": "screen_frame1"
},
{
"name": "screen_frame2"
}
]
}
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading