Major Shadowling Update

This commit is contained in:
Fox-McCloud
2016-03-23 21:25:15 -04:00
parent 3a9588b1e6
commit cf567414c2
10 changed files with 345 additions and 138 deletions
@@ -257,6 +257,13 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
return 1
/mob/dead/observer/proc/notify_cloning(var/message, var/sound, var/atom/source)
if(message)
src << "<span class='ghostalert'>[message]</span>"
src << "<span class='ghostalert'><a href=?src=\ref[src];reenter=1>(Click to re-enter)</a></span>"
if(sound)
src << sound(sound)
/mob/dead/observer/proc/show_me_the_hud(hud_index)
var/datum/atom_hud/H = huds[hud_index]
H.add_hud_to(src)
+5
View File
@@ -1364,6 +1364,11 @@ mob/proc/yank_out_object()
return G
break
/mob/proc/notify_ghost_cloning(var/message = "Someone is trying to revive you. Re-enter your corpse if you want to be revived!", var/sound = 'sound/effects/genetics.ogg', var/atom/source = null)
var/mob/dead/observer/ghost = get_ghost()
if(ghost)
ghost.notify_cloning(message, sound, source)
return ghost
/mob/proc/fakevomit(green=0) //for aesthetic vomits that need to be instant and do not stun. -Fox
if(stat==DEAD)
+21 -16
View File
@@ -219,7 +219,7 @@
/datum/surgery/remove_thrall/can_start(mob/user, mob/living/carbon/target)
return is_thrall(target)//would this be too meta?
return is_thrall(target) //would this be too meta?
/datum/surgery/remove_thrall/synth/can_start(mob/user, mob/living/carbon/target)
return is_thrall(target) && target.get_species() == "Machine"
@@ -244,22 +244,27 @@
..()
/datum/surgery_step/internal/dethrall/end_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool,datum/surgery/surgery)
if(target.get_species() == "Lesser Shadowling") //Empowered thralls cannot be deconverted
target << "<span class='shadowling'><b><i>NOT LIKE THIS!</i></b></span>"
user.visible_message("<span class='warning'>[target] suddenly slams upward and knocks down [user]!</span>", \
"<span class='userdanger'>[target] suddenly bolts up and slams you with tremendous force!</span>")
user.resting = 0 //Remove all stuns
user.SetSleeping(0)
user.SetStunned(0)
user.SetWeakened(0)
user.SetParalysis(0)
if(iscarbon(user))
var/mob/living/carbon/C = user
C.Weaken(6)
C.apply_damage(20, "brute", "chest")
else if(issilicon(user))
var/mob/living/silicon/S = user
S.Weaken(8)
S.apply_damage(20, "brute")
playsound(S, 'sound/effects/bang.ogg', 50, 1)
return 0
user.visible_message("[user] shines light onto the tumor in [target]'s head!", "<span class='notice'>You cleanse the contamination from [target]'s brain!</span>")
ticker.mode.remove_thrall(target.mind,0)
ticker.mode.remove_thrall(target.mind, 0)
target.visible_message("<span class='warning'>A strange black mass falls from [target]'s head!</span>")
new /obj/item/organ/internal/shadowtumor(get_turf(target))
return 1
/datum/surgery_step/internal/dethrall/fail_step(mob/living/user, mob/living/carbon/human/target, target_zone, obj/item/tool,datum/surgery/surgery)
var/braincase = target.named_organ_parent("brain")
if(prob(50))
user.visible_message("<span class='warning'>[user] slips and rips the tumor out from [target]'s [braincase]!</span>", \
"<span class='warning'><b>You fumble and tear out [target]'s tumor!</span>")
target.adjustBrainLoss(110) // This is so you can't just defib'n go
ticker.mode.remove_thrall(target.mind,1)
return 0
else
user.visible_message("<span class='warning'>[user]'s hand slips and fumbles! Luckily, they didn't damage anything!</span>")
return 0