diff --git a/code/game/gamemodes/vampire/vampire.dm b/code/game/gamemodes/vampire/vampire.dm
index 7ab58e0f139..42eb879c5be 100644
--- a/code/game/gamemodes/vampire/vampire.dm
+++ b/code/game/gamemodes/vampire/vampire.dm
@@ -462,6 +462,24 @@ You are weak to holy things and starlight. Don't go into space and avoid the Cha
if(T.density)
return
+ vamp_burn()
+
+/mob/living/carbon/human/proc/handle_vampire()
+ if(hud_used)
+ if(!hud_used.vampire_blood_display)
+ hud_used.vampire_hud()
+ hud_used.human_hud('icons/mob/screen1_Vampire.dmi')
+ hud_used.vampire_blood_display.maptext_width = 64
+ hud_used.vampire_blood_display.maptext_height = 26
+ hud_used.vampire_blood_display.maptext = "
U:[mind.vampire.bloodusable]
T:[mind.vampire.bloodtotal]
"
+ handle_vampire_cloak()
+ if(istype(loc, /turf/space))
+ check_sun()
+ if(istype(loc.loc, /area/chapel) && !(VAMP_FULL in src.mind.vampire.powers))
+ vamp_burn()
+ mind.vampire.nullified = max(0, mind.vampire.nullified - 1)
+
+mob/living/carbon/human/proc/vamp_burn()
if(prob(35))
switch(health)
if(80 to 100)
@@ -482,16 +500,4 @@ You are weak to holy things and starlight. Don't go into space and avoid the Cha
fire_stacks++
IgniteMob()
adjustFireLoss(3)
-
-/mob/living/carbon/human/proc/handle_vampire()
- if(hud_used)
- if(!hud_used.vampire_blood_display)
- hud_used.vampire_hud()
- hud_used.human_hud('icons/mob/screen1_Vampire.dmi')
- hud_used.vampire_blood_display.maptext_width = 64
- hud_used.vampire_blood_display.maptext_height = 26
- hud_used.vampire_blood_display.maptext = " U:[mind.vampire.bloodusable]
T:[mind.vampire.bloodtotal]
"
- handle_vampire_cloak()
- if(istype(loc, /turf/space))
- check_sun()
- mind.vampire.nullified = max(0, mind.vampire.nullified - 1)
+ return
diff --git a/code/modules/mob/living/simple_animal/borer.dm b/code/modules/mob/living/simple_animal/borer.dm
index 0bccafc9d7c..fba103d85de 100644
--- a/code/modules/mob/living/simple_animal/borer.dm
+++ b/code/modules/mob/living/simple_animal/borer.dm
@@ -12,6 +12,12 @@
return
if(istype(src.loc,/mob/living/simple_animal/borer))
+ message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
+ if (!message)
+ return
+ log_say("[key_name(src)] : [message]")
+ if (stat == 2)
+ return say_dead(message)
var/mob/living/simple_animal/borer/B = src.loc
src << "You whisper silently, \"[message]\""
B.host << "The captive mind of [src] whispers, \"[message]\""
@@ -95,7 +101,6 @@
/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)
if(!by_gamemode)
request_player()
@@ -215,10 +220,6 @@
src << "You cannot do that in your current state."
return
- if(!host.internal_organs_by_name["brain"]) //this should only run in admin-weirdness situations, but it's here non the less - RR
- src << "There is no brain here for us to command!"
- return
-
if(docile)
src << "\blue You are feeling far too docile to do that."
return
@@ -244,6 +245,8 @@
host_brain.ckey = host.ckey
+ host_brain.name = host.name
+
if(!host_brain.computer_id)
host_brain.computer_id = h2b_id
@@ -274,7 +277,7 @@
/mob/living/simple_animal/borer/verb/secrete_chemicals()
set category = "Alien"
- set name = "Secrete Chemicals"
+ set name = "Secrete Chemicals (50)"
set desc = "Push some chemicals into your host's bloodstream."
if(!host)
@@ -291,9 +294,9 @@
if(chemicals < 50)
src << "You don't have enough chemicals!"
- var/chem = input("Select a chemical to secrete.", "Chemicals") in list("bicaridine","tramadol","hyperzine","alkysine")
+ var/chem = input("Select a chemical to secrete.", "Chemicals") as null|anything in list("alkysine","bicaridine","hyperzine","tramadol")
- if(chemicals < 50 || !host || controlling || !src || stat) //Sanity check.
+ if(!chem || chemicals < 50 || !host || controlling || !src || stat) //Sanity check.
return
src << "\red You squirt a measure of [chem] from your reservoirs into [host]'s bloodstream."
@@ -483,7 +486,7 @@ mob/living/simple_animal/borer/proc/detatch()
set desc = "Enter an air vent and crawl through the pipe system."
set category = "Alien"
handle_ventcrawl()
-
+
/mob/living/simple_animal/borer/can_use_vents()
return
diff --git a/icons/mob/back.dmi b/icons/mob/back.dmi
index 90de8149672..d295d948414 100644
Binary files a/icons/mob/back.dmi and b/icons/mob/back.dmi differ