From 8f29193f38709e1f7d3186fa32ae6bee13cade25 Mon Sep 17 00:00:00 2001 From: RevengenRat <138193222+Ratyyy@users.noreply.github.com> Date: Wed, 11 Sep 2024 22:36:51 +0300 Subject: [PATCH] Adding functionality for plasma cutters (#327) * Plasma-recharge system for cutters * Cutters rebalance * Asteroid rock fix * Remove ATLAS from pull, yea (#326) * How did it get here? * Shit happens * Cutters system upgrade * Add funny shape for cutters (+RP) * Adv cutter recipe & craft nerf * "Ion cutters" are no more! * "shitty code" is now less "shitty" * "Equipment" to "Weapon" * Clear code * Add `technologyPrerequisites:` * I don't know how this happen * `AddCharge` raises localevent now # Conflicts: # Resources/Locale/en-US/research/technologies.ftl # Resources/Locale/en-US/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl # Resources/Locale/ru-RU/research/technologies.ftl # Resources/Locale/ru-RU/ss14-ru/prototypes/entities/objects/weapons/guns/battery/battery_guns.ftl # Resources/Prototypes/Entities/Objects/Weapons/Guns/Battery/battery_guns.yml # Resources/Prototypes/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml # Resources/Prototypes/Entities/Structures/Machines/lathe.yml # Resources/Prototypes/Recipes/Lathes/security.yml --- .../PlasmaCutter/BatteryRechargeComponent.cs | 27 +++++++ .../ADT/PlasmaCutter/BatteryRechargeSystem.cs | 74 ++++++++++++++++++ .../Power/EntitySystems/BatterySystem.cs | 20 +++++ .../Materials/SharedMaterialStorageSystem.cs | 13 +++ .../Entities/Objects/Weapons/Guns/Guns.ftl | 7 +- .../ru-RU/ADT/prototypes/Research/arsenal.ftl | 1 + .../Weapons/Guns/Battery/battery_gun.yml | 51 ++++++++++++ .../Weapons/Guns/Projectiles/projectiles.yml | 46 ++++++++++- .../Prototypes/ADT/Recipes/Lathes/armory.yml | 20 +++++ Resources/Prototypes/ADT/Research/arsenal.yml | 13 +++ .../Entities/Structures/Machines/lathe.yml | 4 + .../Entities/Structures/Power/chargers.yml | 5 ++ .../Entities/Structures/Walls/asteroid.yml | 5 ++ Resources/Prototypes/Research/arsenal.yml | 1 + .../Weapons/Guns/Battery/cutter.rsi/icon.png | Bin 0 -> 1065 bytes .../Guns/Battery/cutter.rsi/inhand-left.png | Bin 0 -> 1060 bytes .../Guns/Battery/cutter.rsi/inhand-right.png | Bin 0 -> 1052 bytes .../Weapons/Guns/Battery/cutter.rsi/meta.json | 22 ++++++ .../Guns/Battery/cutteradv.rsi/icon.png | Bin 0 -> 895 bytes .../Battery/cutteradv.rsi/inhand-left.png | Bin 0 -> 1059 bytes .../Battery/cutteradv.rsi/inhand-right.png | Bin 0 -> 1062 bytes .../Guns/Battery/cutteradv.rsi/meta.json | 22 ++++++ .../Storage/morgue.rsi/crema_active_light.png | Bin 452 -> 190 bytes .../Storage/morgue.rsi/crema_closed.png | Bin 1713 -> 1636 bytes .../morgue.rsi/crema_contents_light.png | Bin 202 -> 196 bytes .../Storage/morgue.rsi/crema_open.png | Bin 1949 -> 1644 bytes .../Storage/morgue.rsi/crema_tray.png | Bin 1105 -> 777 bytes .../Structures/Storage/morgue.rsi/meta.json | 22 +++++- .../Storage/morgue.rsi/morgue_closed.png | Bin 2616 -> 846 bytes .../Storage/morgue.rsi/morgue_nomob_light.png | Bin 302 -> 192 bytes .../morgue.rsi/morgue_nosoul_light.png | Bin 393 -> 188 bytes .../Storage/morgue.rsi/morgue_open.png | Bin 2648 -> 1265 bytes .../Storage/morgue.rsi/morgue_soul_light.png | Bin 464 -> 212 bytes .../Storage/morgue.rsi/morgue_tray.png | Bin 923 -> 597 bytes 34 files changed, 349 insertions(+), 4 deletions(-) create mode 100644 Content.Server/ADT/PlasmaCutter/BatteryRechargeComponent.cs create mode 100644 Content.Server/ADT/PlasmaCutter/BatteryRechargeSystem.cs create mode 100644 Resources/Locale/ru-RU/ADT/prototypes/Research/arsenal.ftl create mode 100644 Resources/Prototypes/ADT/Recipes/Lathes/armory.yml create mode 100644 Resources/Prototypes/ADT/Research/arsenal.yml create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutter.rsi/icon.png create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutter.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutter.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutter.rsi/meta.json create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi/icon.png create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi/inhand-left.png create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi/inhand-right.png create mode 100644 Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi/meta.json diff --git a/Content.Server/ADT/PlasmaCutter/BatteryRechargeComponent.cs b/Content.Server/ADT/PlasmaCutter/BatteryRechargeComponent.cs new file mode 100644 index 00000000000..2ae112f0658 --- /dev/null +++ b/Content.Server/ADT/PlasmaCutter/BatteryRechargeComponent.cs @@ -0,0 +1,27 @@ +///TAKEN FROM: https://github.com/Workbench-Team/space-station-14/pull/327 + +namespace Content.Server.AruMoon.Plasmacutter; + +[RegisterComponent] +public sealed partial class BatteryRechargeComponent : Component +{ + + /// + /// NOT (material.Amount * Multiplier) + /// This is (material.materialComposition * Multiplier) + /// 1 plasma sheet = 100 material units + /// 1 plasma ore = 500 material units + /// + /// + [DataField("multiplier"), ViewVariables(VVAccess.ReadWrite)] + public float Multiplier = 1.0f; + + + /// + /// Max material storage limit + /// 7500 = 15 plasma ore + /// + [DataField("storageMaxCapacity"), ViewVariables(VVAccess.ReadWrite)] + public int StorageMaxCapacity = 7500; +} + diff --git a/Content.Server/ADT/PlasmaCutter/BatteryRechargeSystem.cs b/Content.Server/ADT/PlasmaCutter/BatteryRechargeSystem.cs new file mode 100644 index 00000000000..61cfd1db48b --- /dev/null +++ b/Content.Server/ADT/PlasmaCutter/BatteryRechargeSystem.cs @@ -0,0 +1,74 @@ +///TAKEN FROM: https://github.com/Workbench-Team/space-station-14/pull/327 + +using Content.Server.Materials; +using Content.Shared.Materials; +using Content.Server.Power.EntitySystems; +using Content.Server.Power.Components; + +namespace Content.Server.AruMoon.Plasmacutter +{ + + /// + /// This CODE FULL OF SHICODE!!! + /// + /// + public sealed class BatteryRechargeSystem : EntitySystem + { + [Dependency] private readonly MaterialStorageSystem _materialStorage = default!; + [Dependency] private readonly BatterySystem _batterySystem = default!; + + + + public override void Initialize() + { + base.Initialize(); + + SubscribeLocalEvent(OnMaterialAmountChanged); + SubscribeLocalEvent(OnChargeChanged); + } + + private void OnMaterialAmountChanged(EntityUid uid, MaterialStorageComponent component, MaterialEntityInsertedEvent args) + { + if (component.MaterialWhiteList != null) + foreach (var fuelType in component.MaterialWhiteList) + { + FuelAddCharge(uid, fuelType); + } + } + + private void OnChargeChanged(EntityUid uid, BatteryRechargeComponent component, ChargeChangedEvent args) + { + ChangeStorageLimit(uid, component.StorageMaxCapacity); + } + + private void ChangeStorageLimit( + EntityUid uid, + int value, + BatteryComponent? battery = null) + { + if (!Resolve(uid, ref battery)) + return; + if (battery.CurrentCharge == battery.MaxCharge) + value = 0; + _materialStorage.TryChangeStorageLimit(uid, value); + } + + private void FuelAddCharge( + EntityUid uid, + string fuelType, + BatteryRechargeComponent? recharge = null) + { + if (!Resolve(uid, ref recharge)) + return; + + var availableMaterial = _materialStorage.GetMaterialAmount(uid, fuelType); + var chargePerMaterial = availableMaterial * recharge.Multiplier; + + if (_materialStorage.TryChangeMaterialAmount(uid, fuelType, -availableMaterial)) + { + _batterySystem.TryAddCharge(uid, chargePerMaterial); + } + } + } + +} diff --git a/Content.Server/Power/EntitySystems/BatterySystem.cs b/Content.Server/Power/EntitySystems/BatterySystem.cs index 0a0f2068b58..2352f7dec40 100644 --- a/Content.Server/Power/EntitySystems/BatterySystem.cs +++ b/Content.Server/Power/EntitySystems/BatterySystem.cs @@ -115,7 +115,27 @@ public float UseCharge(EntityUid uid, float value, BatteryComponent? battery = n RaiseLocalEvent(uid, ref ev); return delta; } + ///ADT plasmacutters start + public float AddCharge(EntityUid uid, float value, BatteryComponent? battery = null) + { + if (value <= 0 || !Resolve(uid, ref battery)) + return 0; + var newValue = Math.Clamp(battery.CurrentCharge + value, 0, battery.MaxCharge); + battery.CurrentCharge = newValue; + var ev = new ChargeChangedEvent(battery.CurrentCharge, battery.MaxCharge); + RaiseLocalEvent(uid, ref ev); + return newValue; + } + public bool TryAddCharge(EntityUid uid, float value, BatteryComponent? battery = null) + { + if (!Resolve(uid, ref battery, false)) + return false; + + AddCharge(uid, value, battery); + return true; + } + ///ADT plasmacutters end public void SetMaxCharge(EntityUid uid, float value, BatteryComponent? battery = null) { if (!Resolve(uid, ref battery)) diff --git a/Content.Shared/Materials/SharedMaterialStorageSystem.cs b/Content.Shared/Materials/SharedMaterialStorageSystem.cs index dc4858fd745..d124d55be22 100644 --- a/Content.Shared/Materials/SharedMaterialStorageSystem.cs +++ b/Content.Shared/Materials/SharedMaterialStorageSystem.cs @@ -324,4 +324,17 @@ public int GetSheetVolume(MaterialPrototype material) return composition.MaterialComposition.FirstOrDefault(kvp => kvp.Key == material.ID).Value; } +///ADT plasmacutters start + public bool TryChangeStorageLimit( + EntityUid uid, + int value, + MaterialStorageComponent? storage = null) + { + if (!Resolve(uid, ref storage) || value < 0) + return false; + + storage.StorageLimit = value; + return true; + } +///ADT plasmacutters end } diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Weapons/Guns/Guns.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Weapons/Guns/Guns.ftl index 972be0364b7..de5cc982154 100644 --- a/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Weapons/Guns/Guns.ftl +++ b/Resources/Locale/ru-RU/ADT/prototypes/Entities/Objects/Weapons/Guns/Guns.ftl @@ -17,4 +17,9 @@ ent-ADTWeaponLaserCarbineBorg = лазерная винтовка борга .desc = от боргов, для боргов. ent-ADTWeaponDisablerBorg = дизаблер борга - .desc = дизаблер, не требующий зарядки. \ No newline at end of file + .desc = дизаблер, не требующий зарядки. + +ent-ADTWeaponCutter = плазменный резак + .desc = Инструмент шахтеров, предназначенный для расчистки горных пород. +ent-ADTWeaponCutterAdv = улучшенный плазменный резак + .desc = Инструмент шахтеров, предназначенный для расчистки горных пород. Обладает усовершенствованной батареей и усиленной концентрирующей линзой. \ No newline at end of file diff --git a/Resources/Locale/ru-RU/ADT/prototypes/Research/arsenal.ftl b/Resources/Locale/ru-RU/ADT/prototypes/Research/arsenal.ftl new file mode 100644 index 00000000000..71f4a916310 --- /dev/null +++ b/Resources/Locale/ru-RU/ADT/prototypes/Research/arsenal.ftl @@ -0,0 +1 @@ +research-technology-salvage-weapons-adv = Продвинутое оружие утилизаторов \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Battery/battery_gun.yml b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Battery/battery_gun.yml index 5488314ae11..655a6a2672e 100644 --- a/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Battery/battery_gun.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Battery/battery_gun.yml @@ -68,3 +68,54 @@ - type: BatterySelfRecharger autoRecharge: true autoRechargeRate: 20 + +- type: entity + name: Cutter + parent: BaseWeaponBatterySmall + id: ADTWeaponCutter + description: A self-defense weapon that exhausts organic targets, weakening them until they collapse. + components: + - type: Item + size: Normal + shape: + - 0,1,0,2 + - 1,1,1,1 + - 2,0,2,2 + - type: MaterialStorage + storageLimit: 0 + materialWhiteList: [RawPlasma, Plasma] + canEjectStoredMaterial: false + - type: BatteryRecharge + multiplier: 1.25 + - type: Sprite + sprite: ADT/Objects/Weapons/Guns/Battery/cutter.rsi + state: icon + - type: Gun + fireRate: 0.6 + soundGunshot: + path: /Audio/Weapons/plasma_cutter.ogg + - type: ProjectileBatteryAmmoProvider + proto: ADTBulletCutter + fireCost: 100 + - type: Battery + maxCharge: 2500 + startingCharge: 2500 + - type: Appearance + +- type: entity + name: Advanced Cutter + parent: ADTWeaponCutter + id: ADTWeaponCutterAdv + description: A self-defense weapon that exhausts organic targets, weakening them until they collapse. + components: + - type: Sprite + sprite: ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi + state: icon + - type: Gun + fireRate: 1 + soundGunshot: + path: /Audio/Weapons/plasma_cutter.ogg + - type: ProjectileBatteryAmmoProvider + proto: ADTBulletCutterAdv + fireCost: 75 + - type: Appearance \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml index e3a9e0171d5..31e02ebf7d6 100644 --- a/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml +++ b/Resources/Prototypes/ADT/Entities/Objects/Weapons/Guns/Projectiles/projectiles.yml @@ -67,4 +67,48 @@ soundHit: path: /Audio/Weapons/Guns/Hits/snap.ogg - type: StaminaDamageOnCollide - damage: 22 # 5 hits to stun sounds reasonable \ No newline at end of file + damage: 22 # 5 hits to stun sounds reasonable + +- type: entity + id: ADTBulletCutter + name: cutter bolt + parent: BaseBullet + noSpawn: true + description: Not too bad, but you still don't want to get hit by it. + components: + - type: Reflective + reflective: + - NonEnergy + - type: Sprite + noRot: false + sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi + layers: + - state: omnilaser_greyscale + shader: unshaded + color: "#9f1e86" + - type: GatheringProjectile + amount: 40 + - type: Projectile + deleteOnCollide: false + damage: + types: + Heat: 15 + - type: TimedDespawn + lifetime: 0.2 + - type: PointLight + radius: 2 + color: purple + energy: 1 + +- type: entity + id: ADTBulletCutterAdv + name: cutter bolt advanced + parent: ADTBulletCutter + noSpawn: true + components: + - type: Projectile + damage: + types: + Heat: 20 + - type: TimedDespawn + lifetime: 0.25 \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Recipes/Lathes/armory.yml b/Resources/Prototypes/ADT/Recipes/Lathes/armory.yml new file mode 100644 index 00000000000..8e27d4722ff --- /dev/null +++ b/Resources/Prototypes/ADT/Recipes/Lathes/armory.yml @@ -0,0 +1,20 @@ +- type: latheRecipe + id: ADTWeaponCutter + result: ADTWeaponCutter + completetime: 10 + materials: + Steel: 1100 + Glass: 200 + Gold: 300 + Plasma: 800 + +- type: latheRecipe + id: ADTWeaponCutterAdv + result: ADTWeaponCutterAdv + completetime: 10 + materials: + Steel: 1700 + Glass: 200 + Gold: 300 + Plasma: 900 + Diamond: 200 \ No newline at end of file diff --git a/Resources/Prototypes/ADT/Research/arsenal.yml b/Resources/Prototypes/ADT/Research/arsenal.yml new file mode 100644 index 00000000000..df4e6fad0da --- /dev/null +++ b/Resources/Prototypes/ADT/Research/arsenal.yml @@ -0,0 +1,13 @@ +- type: technology + id: AdvSalvageWeapons + name: research-technology-salvage-weapons-adv + icon: + sprite: ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi + state: icon + discipline: Arsenal + tier: 2 + cost: 10000 + recipeUnlocks: + - ADTWeaponCutterAdv + technologyPrerequisites: + - SalvageWeapons \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml index 7bdef979c4c..696166b1b9a 100644 --- a/Resources/Prototypes/Entities/Structures/Machines/lathe.yml +++ b/Resources/Prototypes/Entities/Structures/Machines/lathe.yml @@ -343,6 +343,10 @@ - WeaponForceGun - WeaponLaserSvalinn - WeaponProtoKineticAccelerator + #ADT plasmacutters start + - ADTWeaponCutter + - ADTWeaponCutterAdv + #ADT plasmacutters end - WeaponTetherGun - ClothingBackpackHolding - ClothingBackpackSatchelHolding diff --git a/Resources/Prototypes/Entities/Structures/Power/chargers.yml b/Resources/Prototypes/Entities/Structures/Power/chargers.yml index e529708abbf..da0c2c0b166 100644 --- a/Resources/Prototypes/Entities/Structures/Power/chargers.yml +++ b/Resources/Prototypes/Entities/Structures/Power/chargers.yml @@ -165,6 +165,9 @@ - HitscanBatteryAmmoProvider - ProjectileBatteryAmmoProvider - Stunbaton + blacklist: # ADT plasmacutters start + components: + - BatteryRecharge # ADT plasmacutters end - type: entity parent: BaseItemRecharger @@ -191,6 +194,8 @@ blacklist: tags: - PotatoBattery + components: # ADT plasmacutters + - BatteryRecharge # ADT plasmacutters - type: entity parent: BaseItemRecharger diff --git a/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml b/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml index 4673405e03f..d160e2b251f 100644 --- a/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml +++ b/Resources/Prototypes/Entities/Structures/Walls/asteroid.yml @@ -47,6 +47,11 @@ path: /Audio/Effects/break_stone.ogg params: volume: -6 + - type: SoundOnGather #ADT plasmacutters start + - type: Gatherable + toolWhitelist: + tags: + - Pickaxe #ADT plasmacutters end # Ore veins - type: entity diff --git a/Resources/Prototypes/Research/arsenal.yml b/Resources/Prototypes/Research/arsenal.yml index 6d76348baa5..34b4047228c 100644 --- a/Resources/Prototypes/Research/arsenal.yml +++ b/Resources/Prototypes/Research/arsenal.yml @@ -12,6 +12,7 @@ recipeUnlocks: - WeaponProtoKineticAccelerator - ShuttleGunKineticCircuitboard + - ADTWeaponCutter #ADT plasmacutter # These are roundstart but not replenishable for salvage - type: technology diff --git a/Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutter.rsi/icon.png b/Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutter.rsi/icon.png new file mode 100644 index 0000000000000000000000000000000000000000..1e850c4eea20e48dc67e367bea50bfb8bf7f4266 GIT binary patch literal 1065 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 HB{Ts517OzE literal 0 HcmV?d00001 diff --git a/Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi/meta.json b/Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi/meta.json new file mode 100644 index 00000000000..9162568f912 --- /dev/null +++ b/Resources/Textures/ADT/Objects/Weapons/Guns/Battery/cutteradv.rsi/meta.json @@ -0,0 +1,22 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/2b8b045d5a237147d736e3ba3c77c8cc5fb66cb5", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "icon" + }, + { + "name": "inhand-left", + "directions": 4 + }, + { + "name": "inhand-right", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/Structures/Storage/morgue.rsi/crema_active_light.png b/Resources/Textures/Structures/Storage/morgue.rsi/crema_active_light.png index 8846f209cbf5dc03f625eea775b07b330a2c7395..3b03984586078e7c6c423fddf8080ea900eaf282 100644 GIT binary patch delta 149 zcmX@YypM5$VSR(+n`fJCBaj7fSg0CB= zGBPyuyZPqU8}rJ2Eq;=F|C7ARDRYIXpUN2+{ieBSx*qi4tDgxn)YH|^Wt~$(698x( BJc+9Jo=bult zTvuGZw)f@X=PT|nt=kj->g^7@{Nr|S_Pk+_o4-9-zD#fHwJVa#)Xq*x%(~=*hhaH& zca4y3kMkdCW}puk7vW1+)DqQd|&dMapneb7+AxNW|0C&t;ucLK6V*Ft%?1 diff --git a/Resources/Textures/Structures/Storage/morgue.rsi/crema_closed.png b/Resources/Textures/Structures/Storage/morgue.rsi/crema_closed.png index 540b15234bb59878e8d3c33184d9b0a41853268e..0b32271243459af41ead73bdd77a015e9af88dfc 100644 GIT binary patch delta 1620 zcmV-a2CMn84de`vBYyw^b5ch_0Itp)=>Px*9!W$&RCt{2TR(5xMil?q2sCM+I2Z7WtgQsf?|GiEO%Mc`->&Nl+xosQOO+DR{6P>1`906W_dne$sQ=oB@B5|ra|&R| zOj?4DB6azLAb-eMfsTwk{zm|CczC$9ZCg12wF(tv!W3Hs_;t8v zvsoejL;-{l)M_J8A_ue)8fuZvXgmD=mPPQHNjK z0_ebRUw^&=w$uVx8Fl!zE#UU(=w7Rz2Hr*sU}ek9YT>~2i9cTfAZ$O=UDMFJoeyvegXi2~?uj5hE* z4@FL7hQp!oS-0Cwl*RIh_~STU>Fu+i%3yi8E`Q*WMu;GqyskXFvjxktEy@bF#zOB zUVq(qJQgZ}<=@S<;0RC_qQ0Fy{r;<1B~=0|N18ub1M2m9Ldp}Q)oLLO!<^}|plx(l zd=bB?HAv7qlDaUP{;h(u$Y#F5KJZ$OePbAVW@r4Dgz+|VHhUk(lJFc$iSPM zG88TfnxLRclqiC9;)ChXTzMW)6xC`qm#N`-UZL1O2!hNpJI($usZj+u$aweTIq5{KwW^B0w2xyV^T4$L zlV|cgu(v=DaVtdU#9Dy#D}TTSGrRytw=Vsx2&V~d8K+bM>3E)^QmN$H>DKAIVIJoy z+$v6G9H4Wtpj)TH$;pW@P7wWR-t6bni=NVj_AU)ec7b%} zhRHSH^5f^<%72|@@sKX?`0_kS!v4K*Z!ui=s@xjz&@OOsaj}*_C=5ekZ1FFQ^WWg( SCzn$I0000vFq4GAr&I1iUi7~uL2>Fe}KdL zs~-|KPDMgOflI{!RZXeD5wV@@+OhKvyjj_f*Ip-1!V~!}yLESWX1?r?*_k~;35LVr zvaC%JuCA_*HtD}@`6p$9pFVvG#uxyg(P$_M4Z{!sU>F7fEPquL*_Zs>kHg_`Y1=lM z%_bf^cz`I1plKQah*E|qibSbt8m7}Jf*^qFy2>OZ<^TBcL#2xp-EOx~{>luvxVTu_ zwhaJiHk;5iO&G-(!^4LU3k5okL(HehvTYj|7Z=OVpFbCpK=NJJ1po{N0|Y@J^ie^w z{q^;Ap?v8Q$bSlBjKMGrynFYqQ25K2FTofS)0M^{rBvX$F1p=rN(bAvvAp_6slPt_ zTM*dm^$-MsbS6m&$YMMmw2!sD}RIX3}B3*)oK9%bY0JF!#RhhY4Ckt`R=ZY@pudXc>MS=00=icS+^_;j^kiF z9xLBPDqV*Dn%@HWFT#)my1QMUKH2Cpl!soghw*qUh$w5T3MB%%(W6Jo=dD99&n4jg{$3c)IbS;%qG_5K=l=d)x!-&~7lt1nZ|1GjI7Da` zD+F-P(d~8-$1%b%#B4U(NCDtiLc=sorDec5N2k-l@$qrW*-1in6c)8N3pB-aU4r$jchDg`=VvELVrLMMTp}Vi^T%%b{laVtLQ65yWNK8d5Gg! zX(>ffBvM=S%TZ2(N|{cJ#bTu`V{9d2oJ1}GVHl*v8XK)Ok=4MAe1{fNnLcPl#P?uRyMYfk*C0PIt2hx)`97Cs!Twga(}a9 zA8D9DFrd= z+^{rF!)!Lojae2t+NNp3G)?hFXMYpux{l!e8)0B_b|oKE1n=Lhef>^?F(&jcf|LN$ zG{HHC>$V4CJuE<-BgH5!fDeSqX;D2o&U zj^m)!YKcVTHj(_5sa{t$Ie&|0vnhf4GyC6Sa1j-@oJR>`YqLg>5c@ zDmJ7DpiFF8nSHRJ^bq0X1dGL@unmo`(zZ;GG8=?mRNTncN;1HfCGNvUnp-dC)hr`wg3PC07*qoM6N<$f@V1|j{pDw diff --git a/Resources/Textures/Structures/Storage/morgue.rsi/crema_contents_light.png b/Resources/Textures/Structures/Storage/morgue.rsi/crema_contents_light.png index 5626219773e66075eb086bbb7730325e4c678e3f..cffc4da65f86e51e7333e1f7c5ecb3e30a39985f 100644 GIT binary patch delta 168 zcmV;Z09XIY0mK22B!2;OQb$4nuFf3k0001fNklsJFP*Ms200000(9*Kawded&k14dkJ%5NSl7Rt4gs%G-5t}9- z0002^q3csI{Bto`mwsfLdZsP_0Ps<(b@n%Fa;wXcw|5;#L?IW5mTCa4E;n3+@azN! WJul5}Sy_QUizKHSELh`4maQ|^2ne`;O;008BhZcT1u z00000(B!z=P8pd@>&jx^$O2Rr+w^@(CR6DG+@H}u&17-}DkqD*exSUY$z%sC-2eap c007jQ0ZUXDS1YZp&;S4c07*qoM6N<$f_pei8vpPx*CP_p=RCt{2TR(5xMil?q2t0Y9I0Ocf z#i-f_lHe-lD4_6GpeXwd1bv5i%90^VCi??)DFgxi0xSY_D-2|0>=?9=Itru$!NKSt zap0su>fjuEJl;Q2CtGd$Th2P(z2CdXcgJ^k&s&h7-EJ>s&wr}m;^JbfO#73QljUGA zu)^K#c5!@sEaVqfw%hHc<2dj<&x!(s5F|-rYy`?51c9_o6h*n;zVA!hhG8h>e;^`n zG#Vg;004%=Asojs(Yt^oNziCC0DzWDoe^06D2k-~K@i~E?{5us_9{dehL!jW2H?qT zdV+}|P5GlJ%71x*iH;)v2LNzzaIkb;S1W*eg$^oZj*gC&05F|Sad~;Ub>IBk?89cW zsU)Az=a^2X+ES&cibKb5!abkQOYvt0@H`K**-Y9I0MazY?(VL(RADxo3Ez+jzX^Am zrlt5Z0}w(`tJS0(lO%!by4cy-(UwV)NafUOHQ^gF;eR*bc3rm=f3^tf-T+-qO`w{C z^bJg>(?Xy7;Li*|2tl*iG+t;3AsCHD!e{k*U8+Q_R>RfRl~A6Fzbc=O-`E3qc%E13 z^H|jbs`BahjXmJ2H*fIx`7^wG@ebZ z3o1-^W2+8E71WsY)$wNr5Lw6fed#`%-;JsE?(Dpld4a6HOaR0~Gf zpv;NPa5$7c>vp@Dv3MRCf086Cy?q|k7(9<~3V-;%k1z}?AB6A-!w^9bAdX|B_NyGi zsAP&DGyt8?szs{|T-Oz@5i-aIZ>o>zY{79H^&-eWoKB~3T{l-x|EBe-l2wMUt1>tf z8CBY5+hNyrrJY#ibb}Z5Vc~fmf*?Sv)ymcD_)Q1I>S)5B8DKOTNh2+myv&;y!S{W9 z?0-Bhd|hPxRPJ~@27p2-svD2TQX}yE+l3Ya*z^DZ=sYxGE&t|uP@Q;PSpLia^?Duk zdR;1rSE{N9$iVZjI(Sn(G6RS##Xb}LmX)GDI;i;9327k2f<7y|5XtcRFW`}+{aqM= z<=5^70HD|FRU+#5`-QqFis0k4aJ8kw{(t_yu+%-%@eAXC(P#wMb+eLoECagA^0MMM z7Dj|Jej8Bn7vcbR@v*rGv9d*S?~7mP0sLo=qRQ2jYysu5$^xo_DgXcYT%oB4w~H-gdj4GeTiEXySfnXJ^8a5Q52Mg2`lpIF5}! zn<@}O5XW&Qm&%mspn_;@Mxk&S&;$itqC^?6i4Qh{BNj&I0cEheyIaWA2!fzgC>=#n z?wFlsf7moCg>?gnKrc|%-KPpZ`+q4=$pG}^hA)AC2A-yArtH}(^CNKzwvQ? zRGI=uH#hk4hwpH7a|1x1q!@;wGL@AFy_ivfa`L*AMI{5Ui3mK>G&M?>D+4+OL@978 zT})8P0J%g21~iq9rmWcrWIWHy(%(cWa57y?QR#Y|?Cs(ApMD1R_5dc>;eSI{8njfo z6Yl}auK*v+hyonbI`&x^P8-}R zPNf0Zc%EWsXQ$B4w9e!Wi#S)|)^Td%0F#Ra(>fh`y`D5qko}j5u8#heeOfna3ViH5 zg^yEw{mm0R`SJ^uYQ{K!{{erzJqJ)BQ}nK8froz8@^JgZ~6oF zSATom-gKc*yuB$YxWNu0k?YEeN0KFd7rQen$vTXDh?j5sK+r^)cix$24tfuh7HTja zkCVDORrv7XL#wIG^XJbK%d!y1F}mF@mdhn%S%xTzT=G#AA%6%0CMyU6Y}>}SZ{N21 z(k^R+4*bQ77a)WH03=D`>OdHV003200U!bRi5QJWiD{Y;1Oagz0|0^`z-F`I(oI2S z0YDH0Se6Azl9H>dt4u!%2^f#ZiD4L!Wf{Pq1E=iQ%|aAK5JeGD6afHwy&i%fz<4}P znydyofYoY+vwyQQUa<^Tt5v40B5V4RYyNIv|Rs|{uRD}P+q1po{N0|Y^UySuw)1mrQF z&#_!C@#@tptX3=Ny3UpuE$h0Dj~_px+wEdF9P&1ufngY+D=-bmaS%NF4*=lq?ygX_ z*XscQWXIV$uMES0=XqN)+yqdh2e0e;*1KatRaK~}3Q-hcn&#GQ((Ojy7tMANxCuBv zKhOMbnt$e2*)&bOdGiJU|B`QtvVrjqI1g?Dc2)3Chj8i+oEkp~ICTe3jh_UZx&x=i zzn*}`hR~_N>k3owezqI008tbRJ5%=lQ1CntilSh#SRf2T_Dq)-iv<)#DKvS@z`X(p zA?S2E002c%3hVg34^b51c^-G{fEV-m902g-$$t|7U}ku_tm`@)$H9C)=k`S!IYYm! zX8`_+a1?<0ZePxx?(7VeVK5kAKA$rp>gw`>i-0f;F&qvN$mjKy0StqH`SgcC7=}<) z6@$T`*5T519jdB=5W=OOi-5WyNFH>H_`csru1de}`{;B!Y#Z{*)S;GuPoF+MQFF%kR*vc>jPgkbo$P*sM#E1X-3@qM~jKq*nozrGw`ofRY9LJ#%ym(q~zw zXS3OC)g^>%MT~0+`0?Wh0I(SZfaP*o+xbkx?KYF8ZSoR8>lF>25K`)k6xCH#wK7z` zMSyMFEz7bJ;O~>O)oS7E*RPGTynioWzD%erHA-yTu5BaT$#%P)adhajjL4$8WoB-9RBOeQU$#1y{2zu(&i&x0O_bxBhi#5m-EC5j^M@9ztZxJpA?(==$B#_kC1 z14U5~{Qg^Iltz|i1i$}Q`kikALI~@B6-o)vG!4G*!*yNU+}!LnBW32ZWmyTeIe2Aw z5JeGgZf@YZE_~mwB%#zBq<{P6Sb2V+Ji2^n9aYhx2T6?3)uYQYD4mvNC669GVr5!a zKf)PMg_CB64iz=t2VBvHGCzAC6eTu})qWLDmK-g*V{{5U2mwVW`fN5UELX`K1EmCb zo`>mlT4=Q$0`vL2Ra8DCX#cB{rG*3#LaN2*zfmu?nJ&ldh5K(t_XqvgTde+W;oSZhe850 zO*@J+#M7Q6Ne8z9(#}vG83G)~L8sGUiO7e>vFrj_mf7I*>9Py~$25C+u+P5dMShI` zC;}cremEHCRDXqsAb@_^C>Q}Wk#Pv$zYax9{TTO(iXcf+M*r3pxV^nazuzx? z9utRJ0Zqn`A%Ld6>Yn)v3tSfw+U?ALevL+>BwwcO=j)cCsvmV@VEv*6-}kvasC?pr zM=rg!Xa<<(_)OEpVzFrKA?}($N!tSli3jjrd`L%tX0sW)^M5y+%`z7lJkR6$Bp$+6 zVFb{uE`Zu+-h1Oc8>l=@fPVk}J@Y&LJMUpw)sLz%Wb%)+kWNe2J-gj*MlpTQiy~7u zt)CZF{iqs4T0e6`2ZKSf>us#2`0F|=%R<|>-8zMSAh!aJm6gq-Yz3TB|4;l|@jswa WOxJi+jPw8i00{s|MNUMnLSTZBV3&jd diff --git a/Resources/Textures/Structures/Storage/morgue.rsi/crema_tray.png b/Resources/Textures/Structures/Storage/morgue.rsi/crema_tray.png index 57f9c47271b6151f9917ab1965ccd8bec82e7b7f..c81f9903869a0996d133007272c55b0ef92b5b51 100644 GIT binary patch delta 754 zcmVPx%!%0LzRCt{2nlX;6Fc5}^C?}W_qnD2JfQ1(04Hy`CoW5iFO!0|CkIM2qBv5 z^$K-egE0p3JfFOtu8~qgS(fm8J~P)nVzP@JKy3ED4U91%;(v&Sw*suSkmvd6acg)d zpePDZN{t@3hIay{9=<4w5HSYj;}yUf1ZfHca4WzVv#EhHDZsY@M**P_LNu;%Mk(dB z_+lkMN(oX*sH)1T07QiI`P>HcDu=_NLB#emr%xe71Mod%Ypo}f!AijK>kNPYRBZqp z1suQ5P?ja9`+rFgarW$@lme~w9kQDHN3h-Hn z0DPD2>bhq2ofP2Pz!(FFIC>1t(h6kTVRD2q2F7m0oK~t|Lr+z^C3dI zQD*`W5fBlqwd@C?HUQxC;~YY|QI-OTr876 zLWsr~1EAsQp&b~(my}MeywUxKLD3)^@*$R z0I4m<8SdA3p=qc%!6{hGiEXUS*!i7nyZP1Q5Z2mX0gYW7I=-FDUcP!9LTjD%6)^TL zPw4n|Av<4Uqa<{EQ54`qQoy?^fIGq`1-z>QxN931Z>a#ETyTK!^>@DaKx5 k|2emMJs^=tBod#@KQTh8cod&rxBvhE07*qoM6N<$f)CJPbN~PV delta 1085 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 SIl_g diff --git a/Resources/Textures/Structures/Storage/morgue.rsi/morgue_nomob_light.png b/Resources/Textures/Structures/Storage/morgue.rsi/morgue_nomob_light.png index 88a4126b92989af31ad7f0f43d252b3c18460232..8f8c5f1de11770d43c617374d405fd9d8e131641 100644 GIT binary patch delta 164 zcmZ3-bbxV!NGZx^prw85kI< z?!eypf^oTBxhwJ*%4grYqZpseu$0+rw`oJ=%c63du;k0K-+zQMGB6yle^Vl3<9hnj QX(5nSPgg&ebxsLQ01q2MWdHyG delta 275 zcmV+u0qp+30j>g&B!BfuL_t(|obB2%4uU`sK+#c7Lcs}0tZ9gyHJu!U3*Z%y!YkNW zSa}QzxQ8KYWkF?NXIYT{nhninSeS&FK?J~-?R*Dd<9<7urtKvP138@^lkR1&9n_qf zwjZohtoi_=Fc_==>}7dksya2=`&M;ovOH1W7uw3=U`!XQKYuCH#ilF{yaB&>PeJbi zY#k}Mb#tenRW+zljrnF(3~5wjzF8dr)ffN(0002Mzxy^Tzin$5&C9Wt7!v?sE!4+Z zF2-dpM{w%@3Az}Uxg5c%AApN-86!9V0N~vcyDzpejrtONzTP4ta=8YBYoC@F698Z> ZJ}rZpIQF^#6ASPx#c1c7*RCt{2+QA8cAQ*sAX@hRILPI-9 z^R!2uyA+t{AH4_OKNJ+vl;F{x=3{gN08x~@9($TEqvX{|(TfED;GPQ{000000Knfh zc`=Ik8KG-a#CNyarm1zv*O-9O0i#t-z?PTR9j`@f`ksipI~o800JL`k0GlXrE_1oQ P00000NkvXXu0mjf8f`-V delta 367 zcmV-#0g(Q@0f_^UBYy!ob#fIS!3Xdy zGWZsC@GVLw!L2Xg#dj;o{DYL5S)GMIWZg4Rie-!jy zHnrSYmf8z6;#ez3WlHTPcAci&zQwZZG_~>o000000N|`7KP!{*82y91k__o=003lD zZD%cpW7CK~8)zj(4=<)A4Olyfxbg{p+@On>uGhRRn7^fXL{Rh zX_Wm@@9Tj`t!_l N002ovPDHLkV1imOus#3) diff --git a/Resources/Textures/Structures/Storage/morgue.rsi/morgue_open.png b/Resources/Textures/Structures/Storage/morgue.rsi/morgue_open.png index 15ca16ae64ae1d6c73170307866e24dd46fb64e3..98fdb57f30ff9c4e3e1f0ca8b348927533b52710 100644 GIT binary patch literal 1265 zcmVFF`AMaP$G?}SK2dh2j(1b2O2Ig z($;7sN;*m!q!GmyT!EF*njIWFe$RQ&zmxcrRpbL2u=S^z=0AduaUf!*QplOh_8w8sfiFzcY3!iP9e%f~aTiq!Dm+b!Bq6 zySp);RPDh zX|Klg*mWpUe{uyHl6Av1=ufgh!|nhvv+ZQTP5|6%?fR1|(6HFi_Zs;d=dy7P`jacr zm>aA*;juLH`l!?ibMoVtPS!z~g60owe9pKG4oQ7A1Gt^fncitkcTxH(2IT(02BoS* z^T#_VqgGm9r9L3{`;@AZRHNPBb2^7IYNhq7sSnsK^k;F@jsaBMh@*@et;!jsKHLE6 zh_j9q3RL+kW& zZ#en+TKZ@cL_!cJsY&CJSRDNt9*K1f?J-t_ocE!e`ETpW=zK~2nmXS?GJtaFbtq@v zk(+yi*4L!yEC}7`)vCVq_%;m%(+mJ3X26_s_DdpWK&fYl)vBM1hylBWW;RPeG9Z=n zuH9&~z9#J;45rh1Vg+ZNXniD|Mnw!Ym!6ZKuc?oug&;7^05GEr$W3I`PN*%VFF_jt zV44A7S_lF&%7ENldhMM4Qu-2n8laK)PR+TmK_5wneCC(dLwC6PNV00000NkvXXu0mjf-8E#^ literal 2648 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 delta 901 zcmV;01A6?`1e*ttBYy*8NklSu%8a6 zI>nN)L)$up0+eN0Eha@#z%Y#JIYv0@BX@UqQqG$sBdQS!5Cj1LoZL;-F`LaWo6Qi% zv6TG~2nCSs_&FgIfS=F*DnbF4%jHmUD5F+@v98)(^XHGnwE(IEP|cqgVASUU{P|v! zRF}V;<$rBO=n1HWvfF@!A3xy z=dcJNU{jzgg&BO6h77XRA*bNa7A(*6dYb~2(#p3CwrwL#Q@F0%-xS~-cku$5B84_| zIZ6p3`ZK5nP#u73v;e9DP>mKqbpWcd_{z#YV7~c6t5dMH$KvWDR^}tm^I-&7uh+P` zx_)X@|Nr{>ikq7otk>%wadj2vHvuT6RdUdEGW6T6@WDSob;e-nux;B_I^5=pinZNr zHvOl=FE1~>rNayvzouy-P1D9D@@@E*4)gPBY<0bTtxdcDgA_vD-riQqE|*K;JKMC? bXnxOs2b3Bwj!nE|00000NkvXXu0mjf1ZlD&