Adds construction for wooden barricades, solar panels + solar trackers (#3472)

* Added barricades and textures for hidden doors

Constructable barricades and textures for square wall hidden doors

* Added solar assembly & tracker. Restructured power construction

Added solar tracker and assembly construction and textures. (Trackers don't work at present).
Moved APC and solar item sot construction/power.yml
Moved power based items to "Utility" in construction menu.

* Localisation changes

Added flammable to barricades.
Added localisation to barricades and all solar entities.

* Removed hidden doors

Removed .rsi for hidden doors as wasn't able to get non airlock doors working.

* Adds solar crate to cargo

* Fixed tests

* Removed glass from solar crate

Removing glass from solars crate until stacks can be specified.

* Added deconstruction to solar graphs

* Added deconstruction to barricade

And fixed nodes for solars.

* Fixed materials

* Fixed meta indent and solartracker type

* Fixed materials, physics & naming

Added new physics fixtures to barricade and solars
Changed solar tracker board to electronics.
Changed material ID for destruction of wooden barricades to new ID.

* Changed back to prototype from component step

Component step does not work for electronics only machine boards.

* Localisation fixes 1

* yaml linter fixes

Removed obsolete code

* Update meta.json

* Fix trailing comma

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
This commit is contained in:
Peptide90
2021-03-12 21:11:06 +00:00
committed by GitHub
parent 0c4cf1e4d4
commit 0a34c4b8a9
19 changed files with 395 additions and 17 deletions

View File

@@ -37,6 +37,7 @@
- cargo.engineameshielding
- cargo.engineamejar
- cargo.engineamecontrol
- cargo.enginessolar
- cargo.funplushies
- cargo.funartsupplies
- cargo.funinstruments

View File

@@ -1,6 +1,6 @@
- type: entity
id: BaseGenerator
description: A high efficiency thermoelectric generator.
description: "A high efficiency thermoelectric generator."
name: Base Generator
abstract: true
placement:
@@ -45,7 +45,7 @@
- type: entity
id: BaseSmes
description: A high-capacity superconducting magnetic energy storage (SMES) unit.
description: "A high-capacity superconducting magnetic energy storage (SMES) unit."
name: Base Smes
abstract: true
placement:
@@ -104,7 +104,7 @@
- type: entity
id: BaseSubstation
description: Reduces the voltage of electricity put into it.
description: "Reduces the voltage of electricity put into it."
name: Base Substation
abstract: true
placement:
@@ -164,7 +164,7 @@
- type: entity
id: BaseApc
description: A control terminal for the area's electrical systems.
description: "A control terminal for the area's electrical systems."
name: Base Apc
abstract: true
placement:
@@ -222,16 +222,14 @@
- type: entity
id: SolarPanel
name: solar panel
description: Generates power from sunlight. Usually used to power replacements for sunlight. Fragile.
placement:
mode: SnapgridCenter
components:
- type: Clickable
- type: InteractionOutline
- type: Physics
mass: 25
bodyType: Dynamic
mass: 100
bodyType: Static
fixtures:
- shape:
!type:PhysShapeAabb {}
@@ -273,3 +271,90 @@
- type: ClientEntitySpawner
prototypes:
- HVDummyWire
- type: Construction
graph: solarpanel
node: solarpanel
- type: entity
id: SolarAssembly
name: solar assembly
description: "A solar assembly. Anchor to a wire to start building a solar panel."
placement:
mode: SnapgridCenter
components:
- type: Clickable
- type: InteractionOutline
- type: Physics
mass: 75
bodyType: Static
fixtures:
- shape:
!type:PhysShapeAabb {}
mask:
- VaultImpassable
layer:
- VaultImpassable
- type: Sprite
sprite: Constructible/Power/solar_panel.rsi
state: solar_assembly
- type: SnapGrid
offset: Center
- type: Damageable
resistances: metallicResistances
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
behaviors:
- !type:DoActsBehavior
acts: ["Breakage"]
- type: Anchorable
- type: Pullable
- type: Construction
graph: solarpanel
node: solarassembly
- type: entity
id: SolarTracker
placement:
mode: SnapgridCenter
components:
- type: Clickable
- type: InteractionOutline
- type: Physics
mass: 100
bodyType: Static
fixtures:
- shape:
!type:PhysShapeAabb {}
mask:
- Impassable
- MobImpassable
- VaultImpassable
- SmallImpassable
layer:
- Opaque
- MobImpassable
- VaultImpassable
- SmallImpassable
- type: Sprite
sprite: Constructible/Power/solar_panel.rsi
state: solar_tracker
- type: SnapGrid
offset: Center
- type: Damageable
resistances: metallicResistances
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 100
behaviors:
- !type:DoActsBehavior
acts: ["Breakage"]
- type: Anchorable
- type: Pullable
- type: Construction
graph: solarpanel
node: solartracker

View File

@@ -0,0 +1,57 @@
- type: entity
id: Barricade
components:
- type: Clickable
- type: InteractionOutline
- type: Construction
graph: barricade
node: barricadewooden
- type: Sprite
sprite: Constructible/Structures/barricades.rsi
state: barricadewooden
- type: Physics
mass: 75
bodyType: Static
fixtures:
- shape:
!type:PhysShapeAabb
bounds: "-0.5, -0.5, 0.5, 0.5"
layer:
- Opaque
- Impassable
- MobImpassable
- VaultImpassable
- SmallImpassable
- type: Tag
tags:
- ExplosivePassable
- type: Damageable
resistances: metallicResistances
- type: Destructible
thresholds:
- trigger:
!type:DamageTrigger
damage: 50
behaviors:
- !type:SpawnEntitiesBehavior
spawn:
MaterialWoodPlank1:
min: 3
max: 3
- !type:DoActsBehavior
acts: [ "Destruction" ]
- type: AtmosExposed
- type: Flammable
fireSpread: true
- type: Appearance
visuals:
- type: FireVisualizer
sprite: Effects/fire.rsi
normalState: 1
Sprite:
drawdepth: Overlays
- type: SnapGrid
offset: Edge
placement:
snap:
- Wall

View File

@@ -0,0 +1,17 @@
- type: entity
id: SolarAssemblyPart
parent: BaseItem
components:
- type: Item
size: 10
- type: Sprite
sprite: Objects/Power/solar_parts.rsi
state: solar_assembly_parts
- type: entity
id: SolarTrackerElectronics
parent: BaseItem
components:
- type: Sprite
sprite: Constructible/Misc/module.rsi
state: generic