This commit is contained in:
Zuhayr
2013-08-14 01:01:09 -07:00
13 changed files with 267 additions and 232 deletions
@@ -12,6 +12,8 @@
..()
M.delay_click(10)
if((M != src) && check_shields(0, M.name))
visible_message("\red <B>[M] attempted to touch [src]!</B>")
return 0
+9
View File
@@ -269,6 +269,15 @@
if(iscarbon(src))
var/mob/living/carbon/C = src
C.handcuffed = initial(C.handcuffed)
if(ishuman(src))
var/mob/living/carbon/human/H = src
for(var/datum/organ/external/O in H.organs)
O.heal_damage(1000,1000,1,1)
for(var/datum/organ/internal/I in H.internal_organs)
I.damage = 0
for (var/ID in H.virus2)
var/datum/disease2/disease/V = H.virus2[ID]
V.cure(src)
for(var/datum/disease/D in viruses)
D.cure(0)
if(stat == 2)
@@ -42,7 +42,6 @@
var/chemicals = 10 // Chemicals used for reproduction and spitting neurotoxin.
var/mob/living/carbon/human/host // Human host for the brain worm.
var/truename // Name used for brainworm-speak.
var/bonded // Var for full bonding with the host brain.
var/mob/living/captive_brain/host_brain // Used for swapping control of the body back and forth.
var/controlling // Used in human death check.
@@ -135,7 +134,7 @@
spawn(300+(host.brainloss*5))
if(!host || !src) return
if(!host || !src || controlling) return
else
src << "\red <B>You plunge your probosci deep into the cortex of the host brain, interfacing directly with their nervous system.</B>"
@@ -165,7 +164,6 @@ mob/living/simple_animal/borer/verb/release_host()
if(!host || !src) return
src << "You begin disconnecting from [host]'s synapses and prodding at their internal ear canal."
bonded = 0
if(!host.stat)
host << "An odd, uncomfortable pressure begins to build inside your skull, behind your ear..."
@@ -193,6 +191,12 @@ mob/living/simple_animal/borer/proc/detatch()
src.loc = get_turf(host)
controlling = 0
reset_view(null)
machine = null
host.reset_view(null)
host.machine = null
host.verbs -= /mob/living/carbon/human/proc/release_control
host.verbs -= /mob/living/carbon/human/proc/punish_host
host.verbs -= /mob/living/carbon/human/proc/spawn_larvae
@@ -220,7 +224,7 @@ mob/living/simple_animal/borer/proc/detatch()
return
var/list/choices = list()
for(var/mob/living/C in view(1,src))
for(var/mob/living/carbon/human/C in view(1,src))
if(istype(C,/mob/living/carbon/human) && C.stat != 2)
choices += C
@@ -230,6 +234,7 @@ mob/living/simple_animal/borer/proc/detatch()
if(M.has_brain_worms())
src << "You cannot infest someone who is already infested!"
return
M << "Something slimy begins probing at the opening of your ear canal..."
src << "You slither up [M] and begin probing at their ear canal..."
@@ -257,7 +262,6 @@ mob/living/simple_animal/borer/proc/detatch()
var/datum/organ/external/head = M.get_organ("head")
head.implants += src
src.loc = M
bonded = 0
host_brain.name = M.name
host_brain.real_name = M.real_name
+2
View File
@@ -162,6 +162,8 @@
if(killing)
return
assailant.delay_click(10)
switch(S.id)
if(1.0)
if (state < 2)
+4
View File
@@ -631,6 +631,10 @@
H.name = "host brain"
H.real_name = "host brain"
verbs -= /mob/living/carbon/human/proc/release_control
verbs -= /mob/living/carbon/human/proc/punish_host
verbs -= /mob/living/carbon/human/proc/spawn_larvae
return
//resisting grabs (as if it helps anyone...)