diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 15fdfc6f61c..41b8178c6f3 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -937,6 +937,7 @@ var/list/teleport_runes = list() icon_state = "6" construct_invoke = 0 color = rgb(200, 0, 0) + var/list/summoned_guys = list() /obj/effect/rune/manifest/New(loc) ..() @@ -968,7 +969,7 @@ var/list/teleport_runes = list() if(O.client && !jobban_isbanned(O, ROLE_CULTIST) && !jobban_isbanned(O, ROLE_SYNDICATE)) ghosts_on_rune |= O var/mob/dead/observer/ghost_to_spawn = pick(ghosts_on_rune) - var/mob/living/carbon/human/dummy/new_human = new(get_turf(src)) + var/mob/living/carbon/human/new_human = new(get_turf(src)) new_human.real_name = ghost_to_spawn.real_name new_human.alpha = 150 //Makes them translucent new_human.color = "grey" //heh..cult greytide...litterly... @@ -983,6 +984,7 @@ var/list/teleport_runes = list() N.mouse_opacity = 0 new_human.key = ghost_to_spawn.key ticker.mode.add_cultist(new_human.mind, 0) + summoned_guys |= new_human to_chat(new_human, "You are a servant of [ticker.mode.cultdat.entity_title3]. You have been made semi-corporeal by the cult of [ticker.mode.cultdat.entity_name], and you are to serve them at all costs.") while(user in get_turf(src)) @@ -997,4 +999,13 @@ var/list/teleport_runes = list() "Your link to the world fades. Your form breaks apart.") for(var/obj/I in new_human) new_human.unEquip(I) + summoned_guys -= new_human new_human.dust() + +/obj/effect/rune/manifest/Destroy() + for(var/mob/living/carbon/human/guy in summoned_guys) + for(var/obj/I in guy) + guy.unEquip(I) + guy.dust() + summoned_guys.Cut() + return ..() diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/game/gamemodes/wizard/soulstone.dm index 16c9b2f5857..7fcd9c198b4 100644 --- a/code/game/gamemodes/wizard/soulstone.dm +++ b/code/game/gamemodes/wizard/soulstone.dm @@ -51,7 +51,7 @@ to_chat(user, "There is no power left in the shard.") return - if(!ishuman(M) || istype(M, /mob/living/carbon/human/dummy)) //If target is not a human or a dummy + if(!ishuman(M)) //If target is not a human return ..() if(M.has_brain_worms()) //Borer stuff - RR