Fixes human skeleton pirates, Refactors ghost spawns (#94138)

## About The Pull Request

`create_from_ghost` can be called from stuff like... dynamic executing a
ruleset, so putting a sleep/user input within it causes problems

So I refactored ghost spawns a fair bit, creating a clear delineation
between where you can and can't put user input

## Changelog

🆑 Melbert
fix: Pirates will no longer randomly spawn as human
fix: Servant Golems have numbered names again
refactor: Refactored ghost spawns (like spider eggs or pirate spawners),
report any oddities
/🆑
This commit is contained in:
MrMelbert
2025-11-25 19:52:19 -07:00
committed by GitHub
parent b27cd12a06
commit 5765f259ef
23 changed files with 177 additions and 152 deletions
@@ -27,7 +27,7 @@
icon_state = "corpseminer"
// Gives the minesite corpses the gutted effect so that the boss ignores them
/obj/effect/mob_spawn/corpse/human/minesite/special(mob/living/spawned_mob, mob/mob_possessor)
/obj/effect/mob_spawn/corpse/human/minesite/special(mob/living/spawned_mob, mob/mob_possessor, apply_prefs)
. = ..()
spawned_mob.apply_status_effect(/datum/status_effect/gutted)
@@ -11,7 +11,7 @@
/// Tiger cultist corpse but with an exit wound
/obj/effect/mob_spawn/corpse/human/tigercultist/perforated
/obj/effect/mob_spawn/corpse/human/tigercultist/perforated/special(mob/living/carbon/human/spawned_human, mob/mob_possessor)
/obj/effect/mob_spawn/corpse/human/tigercultist/perforated/special(mob/living/carbon/human/spawned_human, mob/mob_possessor, apply_prefs)
. = ..()
var/obj/item/bodypart/chest/their_chest = spawned_human.get_bodypart(BODY_ZONE_CHEST)