Borer gamemode.

This commit is contained in:
ZomgPonies
2013-12-25 06:56:14 -05:00
parent 860ca3afc7
commit 3b0428fc8c
3 changed files with 174 additions and 22 deletions
+22 -22
View File
@@ -16,11 +16,9 @@
src << "You whisper silently, \"[message]\""
B.host << "The captive mind of [src] whispers, \"[message]\""
for (var/mob/M in player_list)
if (istype(M, /mob/new_player))
continue
else if(M.stat == 2 && M.client.prefs.toggles & CHAT_GHOSTEARS)
M << "The captive mind of [src] whispers, \"[message]\""
for(var/mob/M in mob_list)
if(M.mind && (istype(M, /mob/dead/observer)))
M << "<i>Thought-speech, <b>[src]</b> -> <b>[B.truename]:</b> [message]</i>"
/mob/living/captive_brain/emote(var/message)
return
@@ -94,12 +92,13 @@
if(prob(host.brainloss/20))
host.say("*[pick(list("blink","blink_r","choke","aflap","drool","twitch","twitch_s","gasp"))]")
/mob/living/simple_animal/borer/New()
/mob/living/simple_animal/borer/New(var/by_gamemode=0)
..()
truename = "[pick("Primary","Secondary","Tertiary","Quaternary")] [rand(1000,9999)]"
host_brain = new/mob/living/captive_brain(src)
request_player()
if(!by_gamemode)
request_player()
/mob/living/simple_animal/borer/say(var/message)
@@ -136,11 +135,9 @@
src << "You drop words into [host]'s mind: \"[message]\""
host << "Your own thoughts speak: \"[message]\""
for (var/mob/M in player_list)
if (istype(M, /mob/new_player))
continue
else if(M.stat == 2 && M.client.prefs.toggles & CHAT_GHOSTEARS)
M << "[src.truename] whispers to [host], \"[message]\""
for(var/mob/M in mob_list)
if(M.mind && (istype(M, /mob/dead/observer)))
M << "<i>Thought-speech, <b>[truename]</b> -> <b>[host]:</b> [copytext(message, 2)]</i>"
/mob/living/simple_animal/borer/Stat()
@@ -397,22 +394,25 @@ mob/living/simple_animal/borer/proc/detatch()
if(!M.stat)
M << "Something disgusting and slimy wiggles into your ear!"
src.host = M
src.loc = M
if(istype(M,/mob/living/carbon/human))
var/mob/living/carbon/human/H = M
var/datum/organ/external/head = H.get_organ("head")
head.implants += src
host_brain.name = M.name
host_brain.real_name = M.real_name
src.perform_infestation(M)
return
else
src << "They are no longer in range!"
return
/mob/living/simple_animal/borer/proc/perform_infestation(var/mob/living/carbon/M)
src.host = M
src.loc = M
if(istype(M,/mob/living/carbon/human))
var/mob/living/carbon/human/H = M
var/datum/organ/external/head = H.get_organ("head")
head.implants += src
host_brain.name = M.name
host_brain.real_name = M.real_name
/mob/living/simple_animal/borer/verb/ventcrawl()
set name = "Crawl through Vent"
set desc = "Enter an air vent and crawl through the pipe system."