From ae17e5b81d335a2ec7eba79096b32a00f29270bf Mon Sep 17 00:00:00 2001
From: SkyratBot <59378654+SkyratBot@users.noreply.github.com>
Date: Sat, 23 Jan 2021 18:35:28 +0100
Subject: [PATCH] [MIRROR] mining keys to open tendrills crates buyable with
miner points alt to #56263 (#2839)
* mining keys to open tendrills crates buyable with miner points (#56267)
* mining keys to open tendrills crates buyable with miner points alt to #56263
Co-authored-by: Tlaltecuhtli <33834933+Tlaltecuhtli@users.noreply.github.com>
---
code/datums/components/crafting/recipes.dm | 8 +++++
code/game/objects/items/storage/belt.dm | 3 +-
.../antagonists/ashwalker/ashwalker.dm | 1 +
.../mining/lavaland/necropolis_chests.dm | 32 ++++++++++++++++--
code/modules/mining/machine_vending.dm | 1 +
icons/obj/lavaland/artefacts.dmi | Bin 30339 -> 30721 bytes
6 files changed, 42 insertions(+), 3 deletions(-)
diff --git a/code/datums/components/crafting/recipes.dm b/code/datums/components/crafting/recipes.dm
index 8b104de0144..bfd953e2684 100644
--- a/code/datums/components/crafting/recipes.dm
+++ b/code/datums/components/crafting/recipes.dm
@@ -823,6 +823,14 @@
result = /obj/structure/bonfire
category = CAT_PRIMAL
+/datum/crafting_recipe/skeleton_key
+ name = "Skeleton Key"
+ time = 30
+ reqs = list(/obj/item/stack/sheet/bone = 5)
+ result = /obj/item/skeleton_key
+ always_available = FALSE
+ category = CAT_PRIMAL
+
/datum/crafting_recipe/rake //Category resorting incoming
name = "Rake"
time = 30
diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm
index ce3c6ae650e..0d25f071c4f 100644
--- a/code/game/objects/items/storage/belt.dm
+++ b/code/game/objects/items/storage/belt.dm
@@ -308,7 +308,8 @@
/obj/item/organ/regenerative_core,
/obj/item/wormhole_jaunter,
/obj/item/stack/marker_beacon,
- /obj/item/key/lasso
+ /obj/item/key/lasso,
+ /obj/item/skeleton_key
))
diff --git a/code/modules/antagonists/ashwalker/ashwalker.dm b/code/modules/antagonists/ashwalker/ashwalker.dm
index 871cb9c82d6..9b195abc232 100644
--- a/code/modules/antagonists/ashwalker/ashwalker.dm
+++ b/code/modules/antagonists/ashwalker/ashwalker.dm
@@ -30,6 +30,7 @@
/datum/antagonist/ashwalker/on_gain()
. = ..()
RegisterSignal(owner.current, COMSIG_MOB_EXAMINATE, .proc/on_examinate)
+ owner.teach_crafting_recipe(/datum/crafting_recipe/skeleton_key)
/datum/antagonist/ashwalker/on_removal()
. = ..()
diff --git a/code/modules/mining/lavaland/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm
index e4b4cd444ed..889afb3cf50 100644
--- a/code/modules/mining/lavaland/necropolis_chests.dm
+++ b/code/modules/mining/lavaland/necropolis_chests.dm
@@ -10,9 +10,21 @@
resistance_flags = LAVA_PROOF | FIRE_PROOF | ACID_PROOF
/obj/structure/closet/crate/necropolis/tendril
- desc = "It's watching you suspiciously."
+ desc = "It's watching you suspiciously. You need a skeleton key to open it."
+ ///prevents bust_open to fire
+ integrity_failure = 0
+ /// var to check if it got opened by a key
+ var/spawned_loot = FALSE
-/obj/structure/closet/crate/necropolis/tendril/PopulateContents()
+/obj/structure/closet/crate/necropolis/tendril/Initialize()
+ . = ..()
+ RegisterSignal(src, COMSIG_PARENT_ATTACKBY, .proc/try_spawn_loot)
+
+/obj/structure/closet/crate/necropolis/tendril/proc/try_spawn_loot(datum/source, obj/item/item, mob/user, params) ///proc that handles key checking and generating loot
+ SIGNAL_HANDLER
+
+ if(!istype(item, /obj/item/skeleton_key) || spawned_loot)
+ return FALSE
var/loot = rand(1,21)
switch(loot)
if(1)
@@ -67,6 +79,15 @@
new /obj/item/bedsheet/cult(src)
if(21)
new /obj/item/clothing/neck/necklace/memento_mori(src)
+ spawned_loot = TRUE
+ qdel(item)
+ to_chat(user, "You disable the magic lock, revealing the loot.")
+ return TRUE
+
+/obj/structure/closet/crate/necropolis/tendril/can_open(mob/living/user, force = FALSE)
+ if(!spawned_loot)
+ return FALSE
+ return ..()
//KA modkit design discs
/obj/item/disk/design_disk/modkit_disc
@@ -1325,5 +1346,12 @@
if(3)
new /obj/item/prisoncube(src)
+/obj/item/skeleton_key
+ name = "skeleton key"
+ desc = "An artifact usually found in the hands of the natives of lavaland, which NT now holds a monopoly on."
+ icon = 'icons/obj/lavaland/artefacts.dmi'
+ icon_state = "skeleton_key"
+ w_class = WEIGHT_CLASS_SMALL
+
#undef HIEROPHANT_BLINK_RANGE
#undef HIEROPHANT_BLINK_COOLDOWN
diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm
index cc98bd12512..cea88b734bc 100644
--- a/code/modules/mining/machine_vending.dm
+++ b/code/modules/mining/machine_vending.dm
@@ -13,6 +13,7 @@
new /datum/data/mining_equipment("1 Marker Beacon", /obj/item/stack/marker_beacon, 10),
new /datum/data/mining_equipment("10 Marker Beacons", /obj/item/stack/marker_beacon/ten, 100),
new /datum/data/mining_equipment("30 Marker Beacons", /obj/item/stack/marker_beacon/thirty, 300),
+ new /datum/data/mining_equipment("Skeleton Key", /obj/item/skeleton_key, 777),
new /datum/data/mining_equipment("Whiskey", /obj/item/reagent_containers/food/drinks/bottle/whiskey, 100),
new /datum/data/mining_equipment("Absinthe", /obj/item/reagent_containers/food/drinks/bottle/absinthe/premium, 100),
new /datum/data/mining_equipment("Bubblegum Gum Packet", /obj/item/storage/box/gum/bubblegum, 100),
diff --git a/icons/obj/lavaland/artefacts.dmi b/icons/obj/lavaland/artefacts.dmi
index 35b29bfff56161e827a79fff4ab430966e087aa6..ae273d71c3739d01ac4fc911f5769b158aaa34a2 100644
GIT binary patch
delta 9987
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
YmE$Pi$M+w!AmE?Q6+^8eP1~UV2l^y2kN^Mx