Shadowling update 3

This commit is contained in:
Xhuis
2015-08-03 16:35:42 -04:00
parent c9870a0fef
commit 4cefd114c5
13 changed files with 561 additions and 308 deletions
+40
View File
@@ -0,0 +1,40 @@
/datum/surgery/dethrall
name = "dethralling"
steps = list(/datum/surgery_step/incise, /datum/surgery_step/clamp_bleeders, /datum/surgery_step/retract_skin, /datum/surgery_step/saw, /datum/surgery_step/dethrall)
location = "head"
/datum/surgery_step/dethrall
accept_hand = 1
time = 70
var/obj/item/organ/brain/B = null
/datum/surgery_step/dethrall/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
B = target.getorgan(/obj/item/organ/brain)
if(B)
user.visible_message("[user] begins looking around in [target]'s head.", "<span class='notice'>You begin looking for foreign influences on [target]'s brain...")
/datum/surgery_step/dethrall/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
if(B)
if(!is_thrall(target))
user << "<span class='warning'>You are unable to locate anything on [target]'s brain.</span>"
return 1
user << "<span class='warning'>You locate a small, pulsing black tumor on the side of [target]'s brain and begin to remove it.</span>"
target << "<span class='boldannounce'>A small part of your head pulses with agony as the light impacts it.</span>"
sleep(30)
user.visible_message("[user] begins removing something from [target]'s head.</span>", \
"<span class='notice'>You begin carefully extracting the tumor...</span>")
if(!do_mob(user, target, 50))
if(prob(50))
user.visible_message("<span class='warning'>[user] slips and rips the tumor out from [target]'s head!</span>", \
"<span class='warning'><b>You fumble and tear out [target]'s tumor!</span>")
ticker.mode.remove_thrall(target.mind,1)
return 1
else
user.visible_message("<span class='warning'>[user] screws up!</span>")
return 0
user.visible_message("<span class='notice'>[user] carefully extracts the tumor from [target]'s brain!</span>", \
"<span class='notice'>You extract the black tumor from [target]'s head. It quickly shrivels and burns away.</span>")
ticker.mode.remove_thrall(target.mind,0)
else
user << "<span class='warning'>[target] has no brain!</span>"
return 1