From 7f4c937f397b4eaab23837408e2301209621804d Mon Sep 17 00:00:00 2001 From: Geeves Date: Thu, 25 May 2023 11:47:54 +0200 Subject: [PATCH] Vault Safe Tweaks (#16381) * Vault Safe Tweaks * one more for fun --- code/game/objects/random/random.dm | 31 ++++++++++++++++++++++ code/game/objects/structures/safe.dm | 16 ++++++----- html/changelogs/geeves-vault_undersuit.yml | 8 ++++++ 3 files changed, 48 insertions(+), 7 deletions(-) create mode 100644 html/changelogs/geeves-vault_undersuit.yml diff --git a/code/game/objects/random/random.dm b/code/game/objects/random/random.dm index 8dbd1ab0532..6706427ce3c 100644 --- a/code/game/objects/random/random.dm +++ b/code/game/objects/random/random.dm @@ -833,6 +833,19 @@ /obj/item/clothing/accessory/storage/bayonet ) +/obj/random/melee/highvalue + name = "random high value melee weapon" + desc = "This is a random high value melee weapon." + icon = 'icons/obj/weapons.dmi' + icon_state = "baton" + spawnlist = list( + /obj/item/melee/energy/sword, + /obj/item/melee/energy/glaive, + /obj/item/melee/chainsword, + /obj/item/melee/hammer, + /obj/item/melee/hammer/powered + ) + /obj/random/coin name = "random coin" desc = "This is a random coin." @@ -1317,6 +1330,24 @@ /obj/item/stack/material/phoron/full = 0.1 ) +/obj/random/highvalue/safe + name = "random corporate safe high valuable item" + desc = "This is a random corporate safe high valuable item." + icon = 'icons/obj/coins.dmi' + icon_state = "coin_diamond_heads" + problist = list( + /obj/item/device/personal_shield = 0.4, + /obj/random/safe_rig = 0.4, + /obj/item/clothing/glasses/thermal = 0.3, + /obj/item/storage/toolbox/infiltration = 0.3, + /obj/random/melee/highvalue = 0.3, + /obj/item/gun/energy/disruptorpistol/magnum = 0.3, + /obj/item/gun/projectile/shotgun/pump/combat = 0.2, + /obj/item/gun/energy/lawgiver = 0.1, + /obj/item/gun/projectile/automatic/terminator = 0.1, + /obj/item/gun/projectile/automatic/rifle/shotgun = 0.1 + ) + /obj/random/junk name = "random trash" desc = "This is toss." diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index e47945e264e..d05831ca555 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -27,8 +27,8 @@ FLOOR SAFES var/time_to_drill = 300 SECONDS // Drill duration of the current thermal drill. var/last_drill_time = 0 // Last world.time the drill time was checked. Used to reduce time_to_drill accurately var/image/drill_overlay // The drill overlay image to display during the drilling process. - var/drill_x_offset = -13 // The X pixel offset for the drill - var/drill_y_offset = -3 // The Y pixel offset for the drill + var/drill_x_offset = -4 // The X pixel offset for the drill + var/drill_y_offset = -8 // The Y pixel offset for the drill /obj/structure/safe/Initialize() . = ..() @@ -251,6 +251,7 @@ FLOOR SAFES /obj/structure/safe/proc/drill_open() broken = TRUE + drill.soundloop.stop() STOP_PROCESSING(SSprocessing, src) update_icon() @@ -286,11 +287,12 @@ FLOOR SAFES /obj/structure/safe/station/Initialize() . = ..() - new /obj/random/highvalue(src) - new /obj/random/highvalue(src) - new /obj/random/highvalue(src) - new /obj/random/highvalue(src) - new /obj/random/highvalue(src) + new /obj/item/stack/telecrystal/twentyfive(src) + new /obj/random/highvalue/safe(src) + new /obj/random/highvalue/safe(src) + new /obj/random/highvalue/safe(src) + new /obj/random/highvalue/safe(src) + new /obj/random/highvalue/safe(src) /obj/structure/safe/cash name = "credit safe" diff --git a/html/changelogs/geeves-vault_undersuit.yml b/html/changelogs/geeves-vault_undersuit.yml new file mode 100644 index 00000000000..a5bd0c97afe --- /dev/null +++ b/html/changelogs/geeves-vault_undersuit.yml @@ -0,0 +1,8 @@ +author: Geeves + +delete-after: True + +changes: + - tweak: "Added a guaranteed 25 telecrystals in the vault safe. Reduced the chance for thermal goggles to spawn, and made only high power melee weapons spawn in it." + - rscadd: "Added a chance for the spaceproof infiltrator suit to spawn in the vaults safe." + - bugfix: "Fixed thermal drill offsets on the safe, as well as the soundloop not stopping correctly."