From 7c8eb6692a46521c9b975f07cc9eaa5869bb773e Mon Sep 17 00:00:00 2001 From: Kara Date: Sat, 16 Sep 2023 04:49:54 -0700 Subject: [PATCH] Ore boxes (#19838) --- .../Entities/Structures/Storage/ore_box.yml | 76 ++++++++++++++++++ .../Structures/Storage/orebox.rsi/meta.json | 17 ++++ .../Storage/orebox.rsi/orebox-top.png | Bin 0 -> 248 bytes .../Structures/Storage/orebox.rsi/orebox.png | Bin 0 -> 721 bytes 4 files changed, 93 insertions(+) create mode 100644 Resources/Prototypes/Entities/Structures/Storage/ore_box.yml create mode 100644 Resources/Textures/Structures/Storage/orebox.rsi/meta.json create mode 100644 Resources/Textures/Structures/Storage/orebox.rsi/orebox-top.png create mode 100644 Resources/Textures/Structures/Storage/orebox.rsi/orebox.png diff --git a/Resources/Prototypes/Entities/Structures/Storage/ore_box.yml b/Resources/Prototypes/Entities/Structures/Storage/ore_box.yml new file mode 100644 index 0000000000..4c5b41e8e1 --- /dev/null +++ b/Resources/Prototypes/Entities/Structures/Storage/ore_box.yml @@ -0,0 +1,76 @@ +- type: entity + id: OreBox + name: ore box + description: A large storage container for holding unprocessed ores. + parent: BaseStructureDynamic + components: + - type: Anchorable + - type: InteractionOutline + - type: Damageable + damageContainer: Inorganic + damageModifierSet: Wood + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 150 + behaviors: + - !type:DoActsBehavior + acts: [ "Destruction" ] + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:EmptyAllContainersBehaviour + - !type:SpawnEntitiesBehavior + spawn: + MaterialWoodPlank1: + min: 3 + max: 5 + - !type:DoActsBehavior + acts: [ "Destruction" ] + - type: Climbable + + # orebox-specific + - type: Sprite + noRot: true + sprite: /Textures/Structures/Storage/orebox.rsi + layers: + - state: orebox + - state: orebox-top + map: [ top ] + visible: true + - type: Appearance + - type: GenericVisualizer + visuals: + enum.StorageVisuals.Open: + top: + True: { visible: false } + False: { visible: true } + - type: Storage + capacity: 525 + storageOpenSound: /Audio/Effects/closetopen.ogg + storageCloseSound: /Audio/Effects/closetclose.ogg + whitelist: + tags: + - Ore + - type: UserInterface + interfaces: + - key: enum.StorageUiKey.Key + type: StorageBoundUserInterface + - type: ContainerContainer + containers: + storagebase: !type:Container + ents: [ ] + - type: Fixtures + fixtures: + fix1: + shape: + !type:PhysShapeCircle + radius: 0.3 + # very not dense to make it easy to pull + density: 20 + mask: + - MachineMask + layer: + - MachineLayer diff --git a/Resources/Textures/Structures/Storage/orebox.rsi/meta.json b/Resources/Textures/Structures/Storage/orebox.rsi/meta.json new file mode 100644 index 0000000000..e24ab0f25d --- /dev/null +++ b/Resources/Textures/Structures/Storage/orebox.rsi/meta.json @@ -0,0 +1,17 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "tgstation at fb1012102257b7b0a08d861fd2b8ba963c416e93, cut into layers by mirrorcult", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "orebox" + }, + { + "name": "orebox-top" + } + ] +} \ No newline at end of file diff --git a/Resources/Textures/Structures/Storage/orebox.rsi/orebox-top.png b/Resources/Textures/Structures/Storage/orebox.rsi/orebox-top.png new file mode 100644 index 0000000000000000000000000000000000000000..39872b0ddc08e2d5f5a5f6d96f03610fb1077531 GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE3?yBabR7dyjKx9jP7LeL$-D$|SkfJR9T^xl z_H+M9WCikt0(?STZ>_G_F(vQ#yrQ+enM>Q#fx<;%3#S7qwvr&f;Qt`NuzCNI{Xh}U z0*}aI1_r((Aj~*bn@<`j80+cc7-Hf7w*Mesg8_&0=_&vJr#61X=u3!>j-FK+zPu^AGcRyOYvQ&^S@Rl`wogdCxOe6J2`!h8Y@ONB^6cKVHxDk~ zxp3s=opX22?LW73$;ytj&fI`&M>Zw<`K+1U<7sZzZ$At3Kx?a5Qu#<(v2n(lwwT2YQ4MLnH7Pz5ii2CS0$MWt zfIbjCF?$A(vM&kp3;s_LVCYk;5eFK@S>O>_%)r2R1cVui5oFR-Csl=Q2y>Ja)HJ)3^Gl z-?!D^$WH7PbWN0yT)mI+mE+>To~@4x_#3`$ciGMmawUX4deQHGhIiWwY%7;P=qwMp zq(5b)ir2}G6<(_R3m06?+AgWv*mLzJ!`xW!DUA_Zu4N>>ESs3w>*>{?lF8qnIcdp# z@wdzYtNQ!=*$yB4@a0X7iBzw;({_d_F)Kp!)~{Q>`Q@8u-}3DC*H>IAu~oR}e_p@) zY0}Kp^^s^Zr77>d!XCz;a_n4k%L5yq7gi7cIzMdSdmzbqpwvOwfrp7_ z);ix8RtaBMzF}$l@oO9B-S`LYQ?*aFtYcFKRSNV_flAYJhuDb#+fhNwCbM5;-ocGw>H_Fzdl_g#G>cMiRHi`XYh3Ob6Mw< G&;$Vcm0z|1 literal 0 HcmV?d00001 -- 2.51.2