(Smaller) Construction PR - (IC Construction) (#2575)

* Disable Pulling When Buckling an entity

* Projectile Improvements

If you shoot at a person that is critted now it will only hit if you aim at that person otherwise go "above" him and hit other targets.
- Dead people are still unhitable

* Update Content.Server/GameObjects/Components/Buckle/BuckleComponent.cs

Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>

* Firelock In Progress

* Revert "Projectile Improvements"

This reverts commit 5821afc798e49e530d4086d7a9ddbe097805fdc4.

* Firelock Graph

* Revert "Merge branch 'master' into test2"

This reverts commit c69661cc7d9dcdc6d8c0dd45770f9eb94b231463, reversing
changes made to 5f1de8b8d24cd52190addb3df5617cb1012fd52c.

* Bunch of stuff

- Metal Rods
- Reinforced Glass
- SetStackCount Condition
- Tables
- Lattice

* Output2 to FloorTileItemComponent

* Plating, Underplating and Tiles (+FloorTile Improvements)

* Turf Fixes

+ APC Electronics

* Reinforced Glass In-hand textures

* All the fixes

* Final Changes

* (Hopefully) Last commit

* Update Resources/Prototypes/Entities/Constructible/Doors/firelock_frame.yml

Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>

* Update Content.Server/GameObjects/Components/Atmos/FirelockComponent.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* A Few more things

* Edit FirelockComponent.cs

Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
Co-authored-by: Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
This commit is contained in:
Git-Nivrak
2020-11-20 16:58:06 +02:00
committed by GitHub
parent ab1ce4b541
commit 6d2882c7cf
39 changed files with 821 additions and 79 deletions

View File

@@ -58,6 +58,10 @@
enabled: false
- type: SnapGrid
offset: Center
- type: Construction
graph: Firelock
node: Firelock
placement:
mode: SnapgridCenter

View File

@@ -0,0 +1,25 @@
- type: entity
id: FirelockFrame
name: Firelock Frame
description: That is a firelock frame.
components:
- type: Sprite
sprite: Constructible/Structures/Doors/firelock.rsi
state: frame1
- type: Construction
graph: Firelock
node: frame1
- type: Clickable
- type: InteractionOutline
- type: Physics
shapes:
- !type:PhysShapeAabb
bounds: "-0.49,-0.49,0.49,0.49"
mask:
- Impassable
layer:
- Opaque
- Impassable
- MobImpassable
- VaultImpassable
- SmallImpassable

View File

@@ -1,4 +1,4 @@
- type: entity
- type: entity
id: TableBase
name: "table"
description: A square piece of metal standing on four metal legs.
@@ -62,6 +62,9 @@
SteelSheet1:
Min: 1
Max: 1
- type: Construction
graph: Tables
node: TableFrame
- type: entity
id: TableBar
@@ -100,6 +103,9 @@
SteelSheet1:
Min: 1
Max: 1
- type: Construction
graph: Tables
node: MetalTable
- type: entity
id: TableR
@@ -119,6 +125,9 @@
SteelSheet1:
Min: 1
Max: 1
- type: Construction
graph: Tables
node: ReinforcedTable
- type: entity
id: TableGlass
@@ -138,6 +147,9 @@
ShardGlass:
Min: 1
Max: 1
- type: Construction
graph: Tables
node: GlassTable
- type: entity
id: TableGlassR
@@ -157,6 +169,9 @@
ShardGlass:
Min: 1
Max: 1
- type: Construction
graph: Tables
node: RGlassTable
- type: entity
id: TableWood
@@ -176,6 +191,9 @@
WoodPlank:
Min: 1
Max: 1
- type: Construction
graph: Tables
node: WoodTable
- type: entity
id: TableCarpet
@@ -195,6 +213,9 @@
WoodPlank:
Min: 1
Max: 1
- type: Construction
graph: Tables
node: PokerTable
- type: entity
id: TableStone

View File

@@ -23,3 +23,6 @@
key: catwalk
base: catwalk_
- type: Catwalk
- type: Construction
graph: Catwalk
node: Catwalk

View File

@@ -0,0 +1,35 @@
- type: entity
name: Metal Rod
parent: BaseItem
id: MetalRod
suffix: full
components:
- type: Sprite
sprite: Objects/Materials/materials.rsi
state: rods
- type: Item
size: 24
icon:
sprite: /Textures/Constructible/Structures/Walls/materials.rsi
state: rods
prefix: inhand
- type: Construction
graph: metalRod
node: MetalRod
- type: Stack
stacktype: enum.StackType.MetalRod
count: 50
max: 50
- type: FloorTile
outputs:
- lattice
- floor_reinforced
- type: entity
parent: MetalRod
id: MetalRodStack1
components:
- type: Stack
stacktype: enum.StackType.MetalRod
count: 1
max: 50

View File

@@ -187,6 +187,9 @@
interfaces:
- key: enum.ApcUiKey.Key
type: ApcBoundUserInterface
- type: Construction
graph: apc
node: apc
- type: entity
id: SolarPanel

View File

@@ -0,0 +1,9 @@
- type: entity
id: APCElectronics
parent: BaseItem
name: APC Electronics
description: Circuit used in APC construction.
components:
- type: Sprite
sprite: Constructible/Misc/module.rsi
state: charger_APC

View File

@@ -0,0 +1,10 @@
- type: entity
id: FirelockElectronics
parent: BaseItem
name: Firelock Electronics
description: Advanced circuit board used to detect differences in pressure, temperature and gas concentrations between the two sides of the door.
components:
- type: Sprite
sprite: Constructible/Misc/module.rsi
state: mainboard
- type: FirelockElectronics

View File

@@ -26,6 +26,9 @@
- type: Item
sprite: Objects/Materials/sheets.rsi
HeldPrefix: metal
- type: FloorTile
outputs:
- underplating
- type: entity
id: SteelSheet1
@@ -66,6 +69,36 @@
stacktype: enum.StackType.Glass
count: 1
- type: entity
name: Reinforced Glass
parent: MaterialStack
id: rglass
suffix: Full
components:
- type: Material
materials:
- key: enum.MaterialKeys.Stack
mat: rglass
- type: Stack
stacktype: enum.StackType.ReinforcedGlass
- type: Sprite
sprite: Objects/Materials/sheets.rsi
state: rglass
- type: Item
sprite: Objects/Materials/sheets.rsi
HeldPrefix: rglass
- type: entity
name: Reinforced Glass sheet
id: RGlassSheet1
parent: rglass
suffix: 1
components:
- type: Stack
StackType: enum.StackType.ReinforcedGlass
count: 1
- type: entity
name: plasteel sheet
id: PlasteelStack

View File

@@ -1,4 +1,4 @@
- type: entity
- type: entity
parent: BaseItem
id: FloorTileItemBase
description: These could work as a pretty decent throwing weapon.
@@ -8,7 +8,9 @@
sprite: Objects/Tiles/tile.rsi
state: tile_steel
- type: FloorTile
output: floor_steel
outputs:
- plating
- floor_steel
- type: Stack
stacktype: FloorTileSteel
count: 1
@@ -35,7 +37,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_wood
- type: FloorTile
output: floor_wood
outputs:
- plating
- floor_wood
- type: Stack
stacktype: FloorTileWood
count: 1
@@ -53,7 +57,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_white
- type: FloorTile
output: floor_white
outputs:
- plating
- floor_white
- type: Stack
stacktype: FloorTileWhite
count: 1
@@ -71,7 +77,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_dark
- type: FloorTile
output: floor_dark
outputs:
- plating
- floor_dark
- type: Stack
stacktype: FloorTileDark
count: 1
@@ -89,7 +97,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_dark
- type: FloorTile
output: floor_techmaint
outputs:
- plating
- floor_techmaint
- type: entity
name: floor tile freezer
@@ -103,7 +113,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_showroom
- type: FloorTile
output: floor_freezer
outputs:
- plating
- floor_freezer
- type: entity
name: floor tile showroom
@@ -117,7 +129,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_showroom
- type: FloorTile
output: floor_showroom
outputs:
- plating
- floor_showroom
- type: entity
name: floor tile snow
@@ -131,7 +145,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_silver
- type: FloorTile
output: floor_snow
outputs:
- plating
- floor_snow
- type: entity
name: floor tile green circuit
@@ -145,7 +161,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_silver
- type: FloorTile
output: floor_green_circuit
outputs:
- plating
- floor_green_circuit
- type: entity
name: floor tile gold
@@ -159,7 +177,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_gold
- type: FloorTile
output: floor_gold
outputs:
- plating
- floor_gold
- type: entity
name: floor tile reinforced
@@ -173,7 +193,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_reinforced
- type: FloorTile
output: floor_reinforced
outputs:
- plating
- floor_reinforced
- type: entity
name: floor tile rock
@@ -187,7 +209,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_steel
- type: FloorTile
output: floor_rockvault
outputs:
- plating
- floor_rockvault
- type: entity
name: floor tile mono
@@ -201,7 +225,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_steel
- type: FloorTile
output: floor_mono
outputs:
- plating
- floor_mono
- type: entity
name: floor tile linoleum
@@ -215,7 +241,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_steel
- type: FloorTile
output: floor_lino
outputs:
- plating
- floor_lino
- type: entity
name: floor tile asteroid
@@ -229,7 +257,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_brown
- type: FloorTile
output: floor_asteroid_tile
outputs:
- plating
- floor_asteroid_tile
- type: entity
name: floor tile hydro
@@ -243,7 +273,9 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_hydro
- type: FloorTile
output: floor_hydro
outputs:
- plating
- floor_hydro
- type: entity
name: floor tile dirty
@@ -257,4 +289,6 @@
sprite: Objects/Tiles/tile.rsi
HeldPrefix: tile_brown
- type: FloorTile
output: floor_steel_dirty
outputs:
- plating
- floor_steel_dirty

View File

@@ -0,0 +1,13 @@
- type: constructionGraph
id: apc
start: start
graph:
- node: start
edges:
- to: apc
steps:
- material: Metal
amount: 3
- node: apc
entity: BaseAPC

View File

@@ -0,0 +1,24 @@
- type: constructionGraph
id: Catwalk
start: start
graph:
- node: start
edges:
- to: Catwalk
completed:
- !type:SnapToGrid { }
steps:
- material: MetalRod
amount: 2
- node: Catwalk
entity: Catwalk
edges:
- to: start
completed:
- !type:SpawnPrototype
prototype: MetalRodStack1
amount: 2
- !type:DeleteEntity {}
steps:
- tool: Cutting

View File

@@ -0,0 +1,166 @@
- type: constructionGraph
id: Firelock
start: start
graph:
- node: start
edges:
- to: frame1
completed:
- !type:SnapToGrid { }
steps:
- material: Metal
amount: 3
doAfter: 1
- node: frame1
entity: FirelockFrame
actions:
- !type:SpriteStateChange
state: frame1
edges:
- to: frame2
conditions:
- !type:EntityAnchored
anchored: true
steps:
- material: Cable
amount: 2
doAfter: 1
- to: start
completed:
- !type:SpawnPrototype
prototype: SteelSheet1
amount: 3
- !type:DeleteEntity {}
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Welding
doAfter: 1
- node: frame2
actions:
- !type:SpriteStateChange
state: frame2
edges:
- to: frame3
conditions:
- !type:EntityAnchored
anchored: true
steps:
- component: FirelockElectronics
store: Firelock Electornics
name: Firelock Electornics
icon:
sprite: "Constructible/Misc/module.rsi"
state: "mainboard"
- to: frame1
completed:
- !type:SpawnPrototype
prototype: ApcExtensionCableStack1
amount: 2
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Cutting
doAfter: 1.5
- node: frame3
actions:
- !type:SpriteStateChange
state: frame3
edges:
- to: frame4
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Screwing
doAfter: 0.25
- to: frame2
completed:
- !type:SpawnPrototype
prototype: FirelockElectronics
amount: 1
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Prying
doAfter: 0.25
- node: frame4
entity: FirelockFrame
actions:
- !type:SpriteStateChange
state: frame4
edges:
- to: Firelock
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Anchoring
doAfter: 1
- to: FirelockGlassFrame
conditions:
- !type:EntityAnchored
anchored: true
steps:
- material: Glass
amount: 2
doAfter: 2
- to: frame3
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Screwing
doAfter: 0.75
- node: Firelock
entity: Firelock
edges:
- to: frame4
conditions:
- !type:DoorWelded
welded: true
steps:
- tool: Anchoring
doAfter: 0.25
- node: FirelockGlassFrame
edges:
- to: FirelockGlass
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Anchoring
doAfter: 1
- to: frame4
completed:
- !type:SpawnPrototype
prototype: GlassSheet1
amount: 2
steps:
- tool: Screwing
doAfter: 1
- node: FirelockGlass
entity: FirelockGlass
edges:
- to: FirelockGlassFrame
conditions:
- !type:EntityAnchored
anchored: true
steps:
- tool: Anchoring
doAfter: 1

View File

@@ -0,0 +1,16 @@
- type: constructionGraph
id: metalRod
start: start
graph:
- node: start
edges:
- to: MetalRod
completed:
- !type:SetStackCount
amount: 2
steps:
- material: Metal
amount: 1
- node: MetalRod
entity: MetalRod

View File

@@ -0,0 +1,82 @@
- type: constructionGraph
id: Tables
start: start
graph:
- node: start
edges:
- to: TableFrame
completed:
- !type:SnapToGrid { }
steps:
- material: MetalRod
amount: 2
doAfter: 1
- node: PokerTable
entity: TableCarpet
- node: TableFrame
entity: TableFrame
edges:
- to: start
completed:
- !type:SpawnPrototype
prototype: MetalRod
amount: 2
- !type:DeleteEntity {}
steps:
- tool: Anchoring
doAfter: 1
- to: MetalTable
steps:
- material: Metal
amount: 1
doAfter: 1
- to: ReinforcedTable
steps:
- material: Plasteel
amount: 1
doAfter: 1
- to: GlassTable
steps:
- material: Glass
amount: 1
doAfter: 1
- to: WoodTable
steps:
- material: Wood
amount: 1
doAfter: 1
- to: RGlassTable
steps:
- material: ReinforcedGlass
amount: 1
doAfter: 1
- node: MetalTable
entity: TableMetal
- node: ReinforcedTable
entity: TableR
- node: GlassTable
entity: TableGlass
- node: WoodTable
entity: TableWood
edges:
- to: PokerTable
steps:
- material: Wood
amount: 1
doAfter: 1
- node: RGlassTable
entity: TableGlassR

View File

@@ -1,4 +1,4 @@
- type: constructionGraph
- type: constructionGraph
id: window
start: start
graph:
@@ -17,10 +17,7 @@
- to: reinforcedWindow
steps:
- material: Metal
amount: 2
doAfter: 2
- material: Glass
- material: ReinforcedGlass
amount: 2
doAfter: 2
@@ -51,10 +48,7 @@
- to: start
completed:
- !type:SpawnPrototype
prototype: GlassSheet1
amount: 2
- !type:SpawnPrototype
prototype: MetalSheet1
prototype: RGlassSheet1
amount: 2
- !type:DeleteEntity {}
steps:

View File

@@ -0,0 +1,10 @@
- type: construction
name: Metal Rod
id: metalRod
graph: metalRod
startNode: start
targetNode: MetalRod
category: Materials
description: A sturdy metal rod that can be used for various purposes.
icon: Objects/Materials/materials.rsi/rods.png
objectType: Item

View File

@@ -110,3 +110,79 @@
objectType: Structure
placementMode: SnapgridCenter
canRotate: false
- type: construction
name: Firelock
id: Firelock
graph: Firelock
startNode: start
targetNode: Firelock
category: Structures
description: This is a firelock - it locks an area when a fire alarm in the area is triggered. Don't get squished!
icon:
sprite: Constructible/Structures/Doors/firelock.rsi
state: closed
objectType: Structure
placementMode: SnapgridCenter
- type: construction
name: Table Frame
id: TableFrame
graph: Tables
startNode: start
targetNode: TableFrame
category: Structures
description: A sturdy frame used in the construction of tables
icon:
sprite: Constructible/Structures/Tables/frame.rsi
state: full
objectType: Structure
placementMode: SnapgridCenter
- type: construction
name: Poker Table
id: PokerTable
graph: Tables
startNode: start
targetNode: PokerTable
category: Structures
description: A square piece of wood standing on four legs. (What did you expect?)
icon:
sprite: Constructible/Structures/Tables/carpet.rsi
state: full
objectType: Structure
placementMode: SnapgridCenter
- type: construction
name: Catwalk
id: Catwalk
graph: Catwalk
startNode: start
targetNode: Catwalk
category: Structures
description: Just like a lattice. Except it looks better.
conditions:
- !type:TileType
targets:
- lattice
- plating
- underplating
icon:
sprite: Constructible/Tiles/catwalk.rsi
state: catwalk_preview
objectType: Structure
placementMode: SnapgridCenter
- type: construction
name: APC
id: apc
graph: apc
startNode: start
targetNode: apc
category: Structures
description: Area Power Controller (APC). Controls power. In an area.
icon:
sprite: Constructible/Power/apc.rsi
state: apc0
objectType: Structure
placementMode: AlignWallProper

View File

@@ -4,7 +4,7 @@
graph: spear
startNode: start
targetNode: spear
category: Items/Weapons
category: Weapons
description: A crude spear for when you need to put holes in somebody.
icon: Objects/Weapons/Melee/spear.rsi/spear.png
objectType: Item

View File

@@ -1,9 +1,8 @@
- type: tile
- type: tile
name: floor_dark
display_name: Dark floor
texture: "dark"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -16,7 +15,6 @@
display_name: Elevator shaft
texture: "elevator_shaft"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -28,7 +26,6 @@
display_name: Freezer
texture: "freezer"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -41,7 +38,6 @@
display_name: Hydro floor
texture: "hydro"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -53,7 +49,6 @@
display_name: Green circuit floor
texture: "green_circuit"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -66,7 +61,6 @@
display_name: Linoleum floor
texture: "lino"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -79,7 +73,6 @@
display_name: Mono floor
texture: "mono"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -92,7 +85,6 @@
display_name: Reinforced floor
texture: "reinforced"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -105,7 +97,6 @@
display_name: rock floor
texture: "rock_vault"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -118,7 +109,6 @@
display_name: Showroom floor
texture: "showroom"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -131,7 +121,6 @@
display_name: Steel floor
texture: "steel"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -144,7 +133,6 @@
display_name: Dirty steel floor
texture: "steel_dirty"
base_turfs:
- space
- plating
is_subfloor: false
can_crowbar: true
@@ -157,8 +145,7 @@
display_name: Techmaint Floor
texture: "tech_maint"
base_turfs:
- space
- underplating
- plating
is_subfloor: false
can_crowbar: true
footstep_sounds: footstep_floor
@@ -170,8 +157,7 @@
display_name: White Floor
texture: "white"
base_turfs:
- space
- underplating
- plating
is_subfloor: false
can_crowbar: true
footstep_sounds: footstep_floor
@@ -194,8 +180,7 @@
display_name: Asteroid Tile
texture: Asteroid/asteroid_tile
base_turfs:
- space
- underplating
- plating
is_subfloor: false
can_crowbar: true
footstep_sounds: footstep_asteroid
@@ -262,8 +247,7 @@
display_name: Gold Tile
texture: gold
base_turfs:
- space
- underplating
- plating
is_subfloor: false
can_crowbar: true
footstep_sounds: footstep_floor

View File

@@ -3,6 +3,16 @@
display_name: Plating
texture: plating
base_turfs:
- underplating
is_subfloor: true
footstep_sounds: footstep_plating
friction: 0.5
- type: tile
name: lattice
display_name: lattice
texture: lattice
base_turfs:
- space
is_subfloor: true
footstep_sounds: footstep_plating
@@ -13,7 +23,7 @@
display_name: Underplating
texture: underplating
base_turfs:
- space
- lattice
is_subfloor: true
footstep_sounds: footstep_plating
friction: 0.5

View File

@@ -1,4 +1,4 @@
- type: material
- type: material
id: steel
name: steel
color: gray
@@ -18,6 +18,16 @@
thermalConductivity: 0.9
specificHeat: 840
- type: material
id: rglass
name: Reinforced glass
color: '#49c9a7'
icon: Objects/Materials/sheets.rsi/rglass.png
density: 5000
electricResistivity: 1.0e+13
thermalConductivity: 0.9
specificHeat: 5000
- type: material
id: gold
name: gold