From d51c96852d2e649eb2e3ef5d40dc1406ef3a795f Mon Sep 17 00:00:00 2001 From: Kyep Date: Sat, 1 Apr 2017 15:17:34 -0700 Subject: [PATCH] Cult Manifest Bugfix / Tweaks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Changes: 1) Summoned human-body ghosts are no longer invincible 'dummy' humans with godmode. They are now killable, like anything else. 2) The damage done by manifest rune is 0 for the first 30 cycles, then 1/cycle for the next 30 cycles, then 2/cycle thereafter. This is intended to allow cultists to do a quick summon for free, but prevent them from keeping ghosts summoned forever. 🆑 Kyep fix: Ghosts manifested by cultists are no longer invincible, and the amount of damage done to the person invoking manifest runes has been tweaked such that the rune is much harder to use for a long period of time. /🆑 Aims to fix: https://github.com/ParadiseSS13/Paradise/issues/6854 --- code/game/gamemodes/cult/runes.dm | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 15fdfc6f61c..4bca684078e 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -968,7 +968,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... @@ -985,10 +985,15 @@ var/list/teleport_runes = list() ticker.mode.add_cultist(new_human.mind, 0) 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.") + var/i = 0 while(user in get_turf(src)) + i++ if(user.stat) break - user.apply_damage(0.1, BRUTE) + if(i > 60) + user.apply_damage(2, BRUTE) + else if(i > 30) + user.apply_damage(1, BRUTE) sleep(3) qdel(N)