This commit is contained in:
Kyep
2018-01-10 00:33:14 -08:00
parent 2b0839472d
commit 86743e91de
2 changed files with 12 additions and 7 deletions
+11 -7
View File
@@ -200,20 +200,24 @@ Made by Xhuis
/datum/game_mode/shadowling/check_finished()
var/shadows_alive = 0 //and then shadowling was kill
var/shadow_nag_messages = list("You can barely hold yourself in this lesser form!", "The urge to become something greater is overwhelming!", "You feel a burning passion to hatch free of this shell and assume godhood!")
for(var/datum/mind/shadow in shadows) //but what if shadowling was not kill?
if(!istype(shadow.current,/mob/living/carbon/human) && !istype(shadow.current,/mob/living/simple_animal/ascendant_shadowling))
if(!ishuman(shadow.current) && !istype(shadow.current,/mob/living/simple_animal/ascendant_shadowling))
continue
if(shadow.current.stat == DEAD)
continue
if(world.time - round_start_time > (config.shadowling_max_age * 10))
shadows_alive++
if(shadow.special_role == SPECIAL_ROLE_SHADOWLING && config.shadowling_max_age)
if(ishuman(shadow.current))
var/mob/living/carbon/human/H = shadow.current
if(!istype(H.species, /datum/species/shadow))
H.take_overall_damage(1, 0)
to_chat(H, "<span class='userdanger'>[pick(shadow_nag_messages)]</span>")
H << 'sound/weapons/sear.ogg'
shadows_alive++
for(var/obj/effect/proc_holder/spell/targeted/shadowling_hatch/hatch_ability in shadow.spell_list)
hatch_ability.cycles_unused++
if(!H.stunned && prob(20) && hatch_ability.cycles_unused > config.shadowling_max_age)
var/shadow_nag_messages = list("You can barely hold yourself in this lesser form!", "The urge to become something greater is overwhelming!", "You feel a burning passion to hatch free of this shell and assume godhood!")
H.take_overall_damage(0, 3)
to_chat(H, "<span class='userdanger'>[pick(shadow_nag_messages)]</span>")
H << 'sound/weapons/sear.ogg'
if(shadows_alive)
return ..()
else
@@ -9,6 +9,7 @@ var/list/possibleShadowlingNames = list("U'ruan", "Y`shej", "Nex", "Hel-uae", "N
range = -1
include_user = 1
action_icon_state = "hatch"
var/cycles_unused = 0
/obj/effect/proc_holder/spell/targeted/shadowling_hatch/cast(list/targets, mob/user = usr)
if(user.stat || !ishuman(user) || !user || !is_shadow(user || isinspace(user)))