All megafauna now drop ore on death (#29169)

* All megafauna drop ore as a reward now

* Fixes vetus

* Apply suggestions from code review

Batching lewc's changes

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: BiancaWilkson <42818125+BiancaWilkson@users.noreply.github.com>

---------

Signed-off-by: BiancaWilkson <42818125+BiancaWilkson@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
This commit is contained in:
BiancaWilkson
2025-05-13 00:40:57 -04:00
committed by GitHub
parent 252f7e2521
commit 21d8cf2c12
13 changed files with 106 additions and 130 deletions
@@ -1,46 +0,0 @@
/obj/structure/closet/crate/necropolis/ancient
name = "ancient supply cache"
/obj/structure/closet/crate/necropolis/ancient/populate_contents()
new /obj/item/pinpointer/tendril(src) // in pinpointers, with the rest of them
var/list/common_ore = list(
/obj/item/stack/ore/uranium,
/obj/item/stack/ore/silver,
/obj/item/stack/ore/gold,
/obj/item/stack/ore/plasma,
/obj/item/stack/ore/titanium
)
for(var/res in common_ore)
var/obj/item/stack/R = new res(src)
R.amount = rand(15, 30)
var/list/rare_ore = list(
/obj/item/stack/ore/diamond,
/obj/item/stack/ore/bluespace_crystal,
/obj/item/stack/sheet/mineral/abductor // few ruins of it often spawn, should be fine.
)
for(var/res in rare_ore)
var/obj/item/stack/R = new res(src)
R.amount = rand(10, 15) //ash drakes drop 5, this is perfectly fine
var/list/exquisite_ore = list(
/obj/item/stack/ore/platinum, // The vetus can have some, as a treat
/obj/item/stack/ore/iridium,
/obj/item/stack/ore/palladium
)
for(var/ore in exquisite_ore)
new ore(src, rand(5, 10)) // Don't want mining to step too much on explorer's toes.
/obj/structure/closet/crate/necropolis/ancient/ex_act(severity)
return
/obj/structure/closet/crate/necropolis/ancient/crusher
name = "alloyed ancient supply cache"
/obj/structure/closet/crate/necropolis/ancient/crusher/populate_contents()
. = ..()
new /obj/item/crusher_trophy/adaptive_intelligence_core(src)
@@ -1,28 +1,3 @@
/obj/structure/closet/crate/necropolis/dragon
name = "dragon chest"
/obj/structure/closet/crate/necropolis/dragon/populate_contents()
var/loot = rand(1,4)
switch(loot)
if(1)
new /obj/item/melee/ghost_sword(src)
if(2)
new /obj/item/lava_staff(src)
if(3)
new /obj/item/spellbook/oneuse/sacredflame(src)
new /obj/item/gun/magic/wand/fireball(src)
if(4)
new /obj/item/dragons_blood(src)
/obj/structure/closet/crate/necropolis/dragon/crusher
name = "firey dragon chest"
/obj/structure/closet/crate/necropolis/dragon/crusher/populate_contents()
. = ..()
new /obj/item/crusher_trophy/tail_spike(src)
// Spectral Blade
/obj/item/melee/ghost_sword
@@ -1,18 +1,3 @@
/obj/structure/closet/crate/necropolis/bubblegum
name = "bubblegum chest"
/obj/structure/closet/crate/necropolis/bubblegum/populate_contents()
new /obj/item/clothing/suit/space/hostile_environment(src)
new /obj/item/clothing/head/helmet/space/hostile_environment(src)
new /obj/item/melee/spellblade/random(src)
/obj/structure/closet/crate/necropolis/bubblegum/crusher
name = "bloody bubblegum chest"
/obj/structure/closet/crate/necropolis/bubblegum/crusher/populate_contents()
. = ..()
new /obj/item/crusher_trophy/demon_claws(src)
/obj/structure/closet/crate/necropolis/bubblegum/bait/populate_contents()
return
@@ -1,22 +1,3 @@
//Colossus
/obj/structure/closet/crate/necropolis/colossus
name = "colossus chest"
/obj/structure/closet/crate/necropolis/colossus/populate_contents()
var/list/crystalchoices = subtypesof(/obj/machinery/anomalous_crystal)
var/random_crystal = pick(crystalchoices)
var/list/choices = list(/obj/item/organ/internal/vocal_cords/colossus, /obj/item/organ/internal/eyes/cybernetic/eyesofgod, random_crystal)
for(var/I in 1 to 2)
var/loot = pick_n_take(choices)
new loot(src)
/obj/structure/closet/crate/necropolis/colossus/crusher
name = "angelic colossus chest"
/obj/structure/closet/crate/necropolis/colossus/crusher/populate_contents()
. = ..()
new /obj/item/crusher_trophy/blaster_tubes(src)
///Anomolous Crystal///
/obj/machinery/anomalous_crystal