mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 04:51:32 +01:00
Diona Cult Manifestation Tweak (#8986)
This commit is contained in:
@@ -1928,6 +1928,7 @@
|
||||
#include "code\modules\mob\living\carbon\human\whisper.dm"
|
||||
#include "code\modules\mob\living\carbon\human\species\species.dm"
|
||||
#include "code\modules\mob\living\carbon\human\species\species_attack.dm"
|
||||
#include "code\modules\mob\living\carbon\human\species\species_damage.dm"
|
||||
#include "code\modules\mob\living\carbon\human\species\species_hud.dm"
|
||||
#include "code\modules\mob\living\carbon\human\species\outsider\shadow.dm"
|
||||
#include "code\modules\mob\living\carbon\human\species\outsider\undead.dm"
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
/obj/effect/rune/manifest
|
||||
var/mob/living/carbon/human/apparition/apparition
|
||||
|
||||
/obj/effect/rune/manifest/do_rune_action(mob/living/user)
|
||||
/obj/effect/rune/manifest/do_rune_action(mob/living/carbon/user)
|
||||
if(!iscarbon(user))
|
||||
to_chat(user, span("warning", "Your primitive form cannot use this rune!"))
|
||||
if(apparition)
|
||||
@@ -45,17 +45,18 @@
|
||||
log_and_message_admins("used a manifest rune.")
|
||||
|
||||
// The cultist doesn't have to stand on the rune, but they will continually take damage for as long as they have a summoned ghost
|
||||
while(user?.stat == CONSCIOUS && user.client)
|
||||
user.take_organ_damage(1, 0)
|
||||
var/can_manifest = TRUE
|
||||
while(user?.stat == CONSCIOUS && user.client && can_manifest)
|
||||
can_manifest = user.species.take_manifest_ghost_damage(user)
|
||||
sleep(30)
|
||||
apparition_check()
|
||||
return
|
||||
|
||||
/obj/effect/rune/manifest/proc/apparition_check()
|
||||
if(apparition)
|
||||
apparition.visible_message("<span class='danger'>[apparition] slowly dissipates into dust and bones.</span>", \
|
||||
"<span class='danger'>You feel pain, as bonds formed between your soul and this homunculus break.</span>", \
|
||||
"<span class='warning'>You hear a faint rustling.</span>")
|
||||
apparition.visible_message(FONT_LARGE(SPAN_WARNING("\The [apparition] slowly dissipates into dust and bones.")), \
|
||||
FONT_LARGE(SPAN_WARNING("You feel pain, as bonds formed between your soul and this homunculus break.")), \
|
||||
SPAN_WARNING("You hear a faint rustling."))
|
||||
apparition.dust()
|
||||
apparition = null
|
||||
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
/datum/species/proc/take_manifest_ghost_damage(var/mob/living/carbon/C)
|
||||
C.take_organ_damage(1, 0)
|
||||
return TRUE
|
||||
|
||||
/datum/species/diona/take_manifest_ghost_damage(mob/living/carbon/C)
|
||||
C.take_organ_damage(2, 0)
|
||||
C.adjustNutritionLoss(5)
|
||||
if(C.nutrition <= C.max_nutrition * 0.05)
|
||||
to_chat(C, SPAN_WARNING("We cannot support our summoned apparitions with our biomass any longer..."))
|
||||
return FALSE
|
||||
return TRUE
|
||||
@@ -0,0 +1,6 @@
|
||||
author: Geeves
|
||||
|
||||
delete-after: True
|
||||
|
||||
changes:
|
||||
- rscadd: "Diona now have a biomass drain when they have apparitions summoned, they also take slightly more damage."
|
||||
Reference in New Issue
Block a user