diff --git a/Resources/Prototypes/Entities/Structures/Piping/Disposal/high_pressure_machine_frame.yml b/Resources/Prototypes/Entities/Structures/Piping/Disposal/high_pressure_machine_frame.yml new file mode 100644 index 0000000000..474ff68894 --- /dev/null +++ b/Resources/Prototypes/Entities/Structures/Piping/Disposal/high_pressure_machine_frame.yml @@ -0,0 +1,48 @@ +- type: entity + id: DisposalMachineFrame + name: High Pressure Machine Frame + description: A machine frame made to withstand the amount of pressure used in the station's disposal system. + placement: + mode: SnapgridCenter + components: + - type: Transform + anchored: true + - type: Physics + bodyType: Static + fixtures: + - shape: + !type:PhysShapeAabb + bounds: "-0.25,-0.4,0.25,0.4" + mass: 25 + layer: + - Impassable + - MobImpassable + - VaultImpassable + - Opaque + mask: + - Impassable + - MobImpassable + - VaultImpassable + - type: Clickable + - type: InteractionOutline + - type: Anchorable + - type: Pullable + - type: Construction + graph: disposalMachine + node: frame + - type: Damageable + damageContainer: Inorganic + damageModifierSet: Metallic + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:ChangeConstructionNodeBehavior + node: start + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: Sprite + sprite: Structures/Piping/high_pressure_machine_frame.rsi + state: frame diff --git a/Resources/Prototypes/Entities/Structures/Piping/Disposal/units.yml b/Resources/Prototypes/Entities/Structures/Piping/Disposal/units.yml index a312c909bc..9a651237a3 100644 --- a/Resources/Prototypes/Entities/Structures/Piping/Disposal/units.yml +++ b/Resources/Prototypes/Entities/Structures/Piping/Disposal/units.yml @@ -72,6 +72,9 @@ parent: DisposalUnitBase name: disposal unit components: + - type: Construction + graph: disposalMachine + node: disposal_unit - type: DisposalUnit flushTime: 2 - type: UserInterface diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/disposal_machines.yml b/Resources/Prototypes/Recipes/Construction/Graphs/disposal_machines.yml new file mode 100644 index 0000000000..60f6a0b8f9 --- /dev/null +++ b/Resources/Prototypes/Recipes/Construction/Graphs/disposal_machines.yml @@ -0,0 +1,166 @@ +- type: constructionGraph + id: disposalMachine + start: start + graph: + - node: start + edges: + - to: frame + steps: + - material: Steel + amount: 1 + doAfter: 1 + - node: frame + entity: DisposalMachineFrame + actions: + - !type:SpriteChange + specifier: + sprite: /Textures/Structures/Piping/high_pressure_machine_frame.rsi + state: frame + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: SheetSteel1 + amount: 1 + - !type:DeleteEntity {} + steps: + - tool: Screwing + doAfter: 1 + - to: frame_cable + steps: + - material: Cable + amount: 2 + doAfter: 1 + - node: frame_cable + entity: DisposalMachineFrame + actions: + - !type:SpriteStateChange + state: "frame_cables" + edges: + - to: frame + completed: + - !type:SpawnPrototype + prototype: CableApcStack1 + amount: 2 + steps: + - tool: Cutting + doAfter: 1 + - to: frame_electronics + steps: + - material: Plastic # No machine parts = sad julian + amount: 2 + doAfter: 1 + - node: frame_electronics + entity: DisposalMachineFrame + actions: + - !type:SpriteStateChange + state: "frame_electronics" + edges: + - to: frame_cable + completed: + - !type:SpawnPrototype + prototype: SheetPlastic + amount: 2 + steps: + - tool: Cutting + doAfter: 1 + - to: frame_unit + steps: + - tool: Screwing + doAfter: 0.25 + #- to: frame_mailing + # steps: + # - ... # 1x mailing unit electronics + # amount: 1 + # - tool: Screwing + # doAfter: 0.25 + - node: frame_unit + entity: DisposalMachineFrame + actions: + - !type:SpriteStateChange + state: "frame_unit" + edges: + - to: frame_inlet + steps: + - tool: Screwing + doAfter: 0.25 + - to: disposal_unit + conditions: + - !type:EntityAnchored {} + steps: + - material: Steel + amount: 1 + doAfter: 1 + - node: disposal_unit + entity: DisposalUnit + edges: + - to: frame_unit + completed: + - !type:SpawnPrototype + prototype: SheetSteel1 + amount: 1 + conditions: + - !type:EntityAnchored {} + steps: + - tool: Prying + doAfter: 1 + - node: frame_inlet + entity: DisposalMachineFrame + actions: + - !type:SpriteStateChange + state: "frame_inlet" + edges: + - to: frame_outlet + steps: + - tool: Screwing + doAfter: 0.25 + # - to: disposal_inlet + # conditions: + # - !type:EntityAnchored {} + # steps: + # - material: Steel + # amount: 1 + # doAfter: 1 + #- node: disposal_inlet + # entity: DisposalInlet + # edges: + # - to: frame_inlet + # completed: + # - !type:SpawnPrototype + # prototype: SheetSteel1 + # amount: 1 + # conditions: + # - !type:EntityAnchored {} + # steps: + # - tool: Prying + # doAfter: 1 + - node: frame_outlet + entity: DisposalMachineFrame + actions: + - !type:SpriteStateChange + state: "frame_outlet" + edges: + - to: frame_electronics + steps: + - tool: Screwing + doAfter: 0.25 + # - to: disposal_outlet + # conditions: + # - !type:EntityAnchored {} + # steps: + # - material: Steel + # amount: 1 + # doAfter: 1 + #- node: disposal_outlet + # entity: DisposalOutlet + # edges: + # - to: frame_outlet + # completed: + # - !type:SpawnPrototype + # prototype: SheetSteel1 + # amount: 1 + # conditions: + # - !type:EntityAnchored {} + # steps: + # - tool: Prying + # doAfter: 1 diff --git a/Resources/Prototypes/Recipes/Construction/disposal.yml b/Resources/Prototypes/Recipes/Construction/disposal.yml new file mode 100644 index 0000000000..90d454d7b2 --- /dev/null +++ b/Resources/Prototypes/Recipes/Construction/disposal.yml @@ -0,0 +1,12 @@ +- type: construction + name: disposal unit + id: DisposalUnit + graph: disposalMachine + startNode: start + targetNode: disposal_unit + category: Disposal + placementMode: SnapgridCenter + canBuildInImpassable: false + icon: + sprite: Structures/Piping/disposal.rsi + state: "disposal" diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/condisposal.png b/Resources/Textures/Structures/Piping/disposal.rsi/condisposal.png index fbb5e8e458..70bcce3905 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/condisposal.png and b/Resources/Textures/Structures/Piping/disposal.rsi/condisposal.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/disposal-charging.png b/Resources/Textures/Structures/Piping/disposal.rsi/disposal-charging.png index 1683368912..85a3162add 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/disposal-charging.png and b/Resources/Textures/Structures/Piping/disposal.rsi/disposal-charging.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/disposal-flush.png b/Resources/Textures/Structures/Piping/disposal.rsi/disposal-flush.png index 38c25b8482..9266d06092 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/disposal-flush.png and b/Resources/Textures/Structures/Piping/disposal.rsi/disposal-flush.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/disposal.png b/Resources/Textures/Structures/Piping/disposal.rsi/disposal.png index 1683368912..b139c87b6e 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/disposal.png and b/Resources/Textures/Structures/Piping/disposal.rsi/disposal.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-charge-unlit.png b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-charge-unlit.png deleted file mode 100644 index 605cccdad2..0000000000 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-charge-unlit.png and /dev/null differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-charge.png b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-charge.png index 8879482f02..af6b416bdd 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-charge.png and b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-charge.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-full.png b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-full.png index 0f744966af..83948d521e 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-full.png and b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-full.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-handle.png b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-handle.png index f7756b834b..d70edcba71 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-handle.png and b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-handle.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-ready-unlit.png b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-ready-unlit.png deleted file mode 100644 index fa80cff250..0000000000 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-ready-unlit.png and /dev/null differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-ready.png b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-ready.png index d9bc5eb562..9e33f416c5 100644 Binary files a/Resources/Textures/Structures/Piping/disposal.rsi/dispover-ready.png and b/Resources/Textures/Structures/Piping/disposal.rsi/dispover-ready.png differ diff --git a/Resources/Textures/Structures/Piping/disposal.rsi/meta.json b/Resources/Textures/Structures/Piping/disposal.rsi/meta.json index 4a2c57618e..f11b589795 100644 --- a/Resources/Textures/Structures/Piping/disposal.rsi/meta.json +++ b/Resources/Textures/Structures/Piping/disposal.rsi/meta.json @@ -5,11 +5,16 @@ "y": 32 }, "license": "CC-BY-SA-3.0", - "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/c6e3401f2e7e1e55c57060cdf956a98ef1fefc24 and modified by DrSmugLeaf and Swept", + "copyright": "https://github.com/discordia-space/CEV-Eris/blob/bbe32606902c90f5290b57d905a3f31b84dc6d7d/icons/obj/pipes/disposal.dmi and modified by DrSmugleaf", "states": [ { "name": "condisposal", - + "directions": 1, + "delays": [ + [ + 1.0 + ] + ] }, { "name": "conpipe-c", @@ -175,14 +180,25 @@ }, { "name": "disposal", - + "directions": 1, + "delays": [ + [ + 1.0 + ] + ] }, { "name": "disposal-charging", - + "directions": 1, + "delays": [ + [ + 1.0 + ] + ] }, { "name": "disposal-flush", + "directions": 1, "delays": [ [ 0.1, @@ -199,6 +215,7 @@ }, { "name": "dispover-charge", + "directions": 1, "delays": [ [ 0.4, @@ -207,15 +224,32 @@ ] }, { - "name": "dispover-full" + "name": "dispover-full", + "directions": 1, + "delays": [ + [ + 0.2, + 0.2 + ] + ] }, { "name": "dispover-handle", - + "directions": 1, + "delays": [ + [ + 1.0 + ] + ] }, { "name": "dispover-ready", - + "directions": 1, + "delays": [ + [ + 1.0 + ] + ] }, { "name": "intake", @@ -742,4 +776,4 @@ ] } ] -} +} \ No newline at end of file diff --git a/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame.png b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame.png new file mode 100644 index 0000000000..24abac9fcf Binary files /dev/null and b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame.png differ diff --git a/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_cables.png b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_cables.png new file mode 100644 index 0000000000..fe8a7a2295 Binary files /dev/null and b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_cables.png differ diff --git a/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_electronics.png b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_electronics.png new file mode 100644 index 0000000000..ce3acef8fa Binary files /dev/null and b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_electronics.png differ diff --git a/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_inlet.png b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_inlet.png new file mode 100644 index 0000000000..d73d39dd93 Binary files /dev/null and b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_inlet.png differ diff --git a/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_outlet.png b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_outlet.png new file mode 100644 index 0000000000..f1844766a7 Binary files /dev/null and b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_outlet.png differ diff --git a/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_unit.png b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_unit.png new file mode 100644 index 0000000000..ac41da2dc3 Binary files /dev/null and b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/frame_unit.png differ diff --git a/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/meta.json b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/meta.json new file mode 100644 index 0000000000..25924fea0f --- /dev/null +++ b/Resources/Textures/Structures/Piping/high_pressure_machine_frame.rsi/meta.json @@ -0,0 +1 @@ +{"version": 1, "size": {"x": 32, "y": 32}, "license": "CC-BY-SA-3.0", "copyright": "Julian Giebel ", "states": [{"name": "frame", "directions": 1, "delays": [[1.0]]}, {"name": "frame_cables", "directions": 1, "delays": [[1.0]]}, {"name": "frame_electronics", "directions": 1, "delays": [[1.0]]}, {"name": "frame_inlet", "directions": 1, "delays": [[1.0]]}, {"name": "frame_outlet", "directions": 1, "delays": [[1.0]]}, {"name": "frame_unit", "directions": 1, "delays": [[1.0]]}]} \ No newline at end of file