From 7396d9e54cb520b047e5b07dfc21d271bd8185f0 Mon Sep 17 00:00:00 2001 From: Lillian Industries <47704287+luegamer@users.noreply.github.com> Date: Thu, 11 Sep 2025 15:59:20 -0400 Subject: [PATCH] Added SmartFridge circuitboards (#39879) --- .../Circuitboards/Machine/production.yml | 18 ++++++++ .../Structures/Machines/smartfridge.yml | 43 ++++++++---------- .../Recipes/Lathes/Packs/service.yml | 1 + .../Recipes/Lathes/machine_boards.yml | 5 ++ .../Machines/smartfridge.rsi/meta.json | 3 ++ .../Machines/smartfridge.rsi/panel.png | Bin 0 -> 363 bytes 6 files changed, 47 insertions(+), 23 deletions(-) create mode 100644 Resources/Textures/Structures/Machines/smartfridge.rsi/panel.png diff --git a/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml b/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml index eec282acda..0697506855 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/Machine/production.yml @@ -1349,3 +1349,21 @@ Steel: 2 Manipulator: 2 Cable: 1 + +- type: entity + parent: BaseMachineCircuitboard + id: SmartFridgeCircuitboard + name: SmartFridge machine board + description: A machine printed circuit board for a SmartFridge. + components: + - type: Sprite + state: service + - type: MachineBoard + prototype: SmartFridge + stackRequirements: + Glass: 5 + Manipulator: 2 + tagRequirements: + GlassBeaker: + amount: 2 + defaultPrototype: Beaker diff --git a/Resources/Prototypes/Entities/Structures/Machines/smartfridge.yml b/Resources/Prototypes/Entities/Structures/Machines/smartfridge.yml index 788febc014..26bc5d52bb 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/smartfridge.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/smartfridge.yml @@ -1,5 +1,5 @@ - type: entity - parent: BaseStructureDynamic + parent: [BaseStructureDynamic, ConstructibleMachine] id: SmartFridge name: SmartFridge description: A refrigerated storage unit for keeping items cold and fresh. @@ -21,13 +21,26 @@ - state: smartfridge_door map: ["enum.StorageVisualLayers.Door"] shader: unshaded + - state: panel + map: ["enum.WiresVisualLayers.MaintenancePanel"] - type: PointLight radius: 1.5 energy: 1.6 color: "#9dc5c9" + - type: Machine + board: SmartFridgeCircuitboard - type: ContainerContainer containers: smart_fridge_inventory: !type:Container + machine_board: !type:Container + machine_parts: !type:Container + - type: Construction + graph: Machine + node: machine + containers: + - machine_parts + - machine_board + - smart_fridge_inventory - type: LitOnPowered - type: ApcPowerReceiver powerLoad: 200 @@ -51,6 +64,8 @@ interfaces: enum.SmartFridgeUiKey.Key: type: SmartFridgeBoundUserInterface + - type: WiresPanel + - type: WiresVisuals - type: AccessReader - type: UseDelay delay: 1 @@ -77,35 +92,17 @@ - type: InteractionOutline - type: Destructible thresholds: - - trigger: # Excess damage, don't spawn entities + - trigger: !type:DamageTrigger damage: 300 behaviors: - !type:PlaySoundBehavior sound: collection: MetalBreak + - !type:ChangeConstructionNodeBehavior + node: machineFrame - !type:DoActsBehavior - acts: [ "Destruction" ] - - trigger: - !type:DamageTrigger - damage: 100 - behaviors: - - !type:DoActsBehavior - acts: ["Breakage"] - - trigger: - !type:DamageTrigger - damage: 200 - behaviors: - - !type:SpawnEntitiesBehavior - spawn: - SheetSteel1: - min: 1 - max: 1 - - !type:DoActsBehavior - acts: [ "Destruction" ] - - !type:PlaySoundBehavior - sound: - collection: MetalBreak + acts: ["Destruction"] - type: Damageable damageContainer: StructuralInorganic damageModifierSet: Metallic diff --git a/Resources/Prototypes/Recipes/Lathes/Packs/service.yml b/Resources/Prototypes/Recipes/Lathes/Packs/service.yml index 9669937ffc..b00e92d35c 100644 --- a/Resources/Prototypes/Recipes/Lathes/Packs/service.yml +++ b/Resources/Prototypes/Recipes/Lathes/Packs/service.yml @@ -37,6 +37,7 @@ - ElectricGrillMachineCircuitboard - BoozeDispenserMachineCircuitboard - SodaDispenserMachineCircuitboard + - SmartFridgeCircuitboard ## Dynamic diff --git a/Resources/Prototypes/Recipes/Lathes/machine_boards.yml b/Resources/Prototypes/Recipes/Lathes/machine_boards.yml index 23eb3bfbb7..f355e34b28 100644 --- a/Resources/Prototypes/Recipes/Lathes/machine_boards.yml +++ b/Resources/Prototypes/Recipes/Lathes/machine_boards.yml @@ -251,6 +251,11 @@ id: DawInstrumentMachineCircuitboard result: DawInstrumentMachineCircuitboard +- type: latheRecipe + parent: [BaseCircuitboardRecipe] + id: SmartFridgeCircuitboard + result: SmartFridgeCircuitboard + # Bar - type: latheRecipe parent: [ BaseCircuitboardRecipe, BaseServiceMachineRecipeCategory ] diff --git a/Resources/Textures/Structures/Machines/smartfridge.rsi/meta.json b/Resources/Textures/Structures/Machines/smartfridge.rsi/meta.json index 309594f44a..9abe8fdc6b 100644 --- a/Resources/Textures/Structures/Machines/smartfridge.rsi/meta.json +++ b/Resources/Textures/Structures/Machines/smartfridge.rsi/meta.json @@ -21,6 +21,9 @@ }, { "name": "smartfridge_door" + }, + { + "name": "panel" } ] } diff --git a/Resources/Textures/Structures/Machines/smartfridge.rsi/panel.png b/Resources/Textures/Structures/Machines/smartfridge.rsi/panel.png new file mode 100644 index 0000000000000000000000000000000000000000..a9b42f6f849caf4f5efbc4f515a92ccfaf93dc17 GIT binary patch literal 363 zcmV-x0hIoUP)c)?)Cw)caXpczJlA-}?_VP1F9nn99Y9rK((|?&_km=)0*h0KnbL z4FHu%#PLJO=xB$~74*Cm04K@QrTPuk0V)TgCS5Un?zo^l1%ORwfW9+&N8LjC<}nx<)g)(2~aXvf>sc~AfV002ov JPDHLkV1kxArOE&R literal 0 HcmV?d00001 -- 2.51.2