Bux Fixes all sorts

- Chaplin can't be turned into a vampire
- Spelling errors
- A few debug messages for advanced checks
- Loadout spawning fixed
- IPC's can't be absorbed by lings.
- IPC will no longer be chosen as a ling
- Can't use radios if you are stunned >= 4
- dead bodys stop floating after they die
- debug messages to find out what's happening.
This commit is contained in:
SoundScopes
2014-08-12 23:36:38 +01:00
parent 90b5f15c62
commit 5aa3d633f4
14 changed files with 164 additions and 83 deletions
+4
View File
@@ -378,6 +378,9 @@ proc/populate_gear_list()
allowed_roles = list("Roboticist", "Scientist", "Research Director")
//Species-specific gear datums.
//Taken out until fixes are done
/*
/datum/gear/zhan_furs
display_name = "Zhan-Khazan furs"
path = /obj/item/clothing/suit/tajaran/furs
@@ -391,6 +394,7 @@ proc/populate_gear_list()
cost = 2
slot = slot_head
whitelisted = "Tajaran"
*/
/datum/gear/unathi_robe
display_name = "roughspun robe"
@@ -40,6 +40,9 @@
h_style = "blue IPC screen"
..(new_loc, "Machine")
/mob/living/carbon/human/machine/isipc()
return 1
/mob/living/carbon/human/kocasslani/New(var/new_loc)
h_style = "Bald"
..(new_loc, "Kocasslani")
@@ -124,7 +124,14 @@
if(mind && mind.vampire && (mind in ticker.mode.vampires))
M << "\red Your fangs fail to pierce [src.name]'s cold flesh"
return 0
if(isipc())
M << "\red They have no blood"
return 0
//we're good to suck the blood, blaah
//and leave an attack log
M.attack_log += text("\[[time_stamp()]\] <font color='red'>Bit [src.name] ([src.ckey]) in the neck and draining their blood</font>")
src.attack_log += text("\[[time_stamp()]\] <font color='orange'>Has been bit in the neck by [M.name] ([M.ckey])</font>")
msg_admin_attack("[M.name] ([M.ckey]) bit [src.name] ([src.ckey]) in the neck")
M.handle_bloodsucking(src)
return
//end vampire codes
@@ -109,6 +109,9 @@
if(life_tick > 5 && timeofdeath && (timeofdeath < 5 || world.time - timeofdeath > 6000)) //We are long dead, or we're junk mobs spawned like the clowns on the clown shuttle
return //We go ahead and process them 5 times for HUD images and other stuff though.
if(stat == DEAD && floating)
float(0)
//Handle temperature/pressure differences between body and environment
handle_environment(environment) //Optimized a good bit.
+43 -41
View File
@@ -64,43 +64,47 @@
return
var/list/obj/item/used_radios = new
switch (message_mode)
if("headset")
if(l_ear && istype(l_ear,/obj/item/device/radio))
var/obj/item/device/radio/R = l_ear
R.talk_into(src,message,null,verb,speaking)
used_radios += l_ear
else if(r_ear && istype(r_ear,/obj/item/device/radio))
var/obj/item/device/radio/R = r_ear
R.talk_into(src,message,null,verb,speaking)
used_radios += r_ear
if(!(stunned >= 4))
if(l_ear && istype(l_ear,/obj/item/device/radio))
var/obj/item/device/radio/R = l_ear
R.talk_into(src,message,null,verb,speaking)
used_radios += l_ear
else if(r_ear && istype(r_ear,/obj/item/device/radio))
var/obj/item/device/radio/R = r_ear
R.talk_into(src,message,null,verb,speaking)
used_radios += r_ear
if("right ear")
var/obj/item/device/radio/R
var/has_radio = 0
if(r_ear && istype(r_ear,/obj/item/device/radio))
R = r_ear
has_radio = 1
if(r_hand && istype(r_hand, /obj/item/device/radio))
R = r_hand
has_radio = 1
if(has_radio)
R.talk_into(src,message,null,verb,speaking)
used_radios += R
if(!(stunned >= 4))
var/obj/item/device/radio/R
var/has_radio = 0
if(r_ear && istype(r_ear,/obj/item/device/radio))
R = r_ear
has_radio = 1
if(r_hand && istype(r_hand, /obj/item/device/radio))
R = r_hand
has_radio = 1
if(has_radio)
R.talk_into(src,message,null,verb,speaking)
used_radios += R
if("left ear")
var/obj/item/device/radio/R
var/has_radio = 0
if(l_ear && istype(l_ear,/obj/item/device/radio))
R = l_ear
has_radio = 1
if(l_hand && istype(l_hand,/obj/item/device/radio))
R = l_hand
has_radio = 1
if(has_radio)
R.talk_into(src,message,null,verb,speaking)
used_radios += R
if(!(stunned >= 4))
var/obj/item/device/radio/R
var/has_radio = 0
if(l_ear && istype(l_ear,/obj/item/device/radio))
R = l_ear
has_radio = 1
if(l_hand && istype(l_hand,/obj/item/device/radio))
R = l_hand
has_radio = 1
if(has_radio)
R.talk_into(src,message,null,verb,speaking)
used_radios += R
if("intercom")
for(var/obj/item/device/radio/intercom/I in view(1, null))
@@ -120,14 +124,15 @@
Changeling << "<i><font color=#800080><b>[mind.changeling.changelingID]:</b> [message]</font></i>"
return
else
if(message_mode)
if(message_mode in (radiochannels | "department"))
if(l_ear && istype(l_ear,/obj/item/device/radio))
l_ear.talk_into(src,message, message_mode, verb, speaking)
used_radios += l_ear
else if(r_ear && istype(r_ear,/obj/item/device/radio))
r_ear.talk_into(src,message, message_mode, verb, speaking)
used_radios += r_ear
if(!(stunned >= 4))
if(message_mode)
if(message_mode in (radiochannels | "department"))
if(l_ear && istype(l_ear,/obj/item/device/radio))
l_ear.talk_into(src,message, message_mode, verb, speaking)
used_radios += l_ear
else if(r_ear && istype(r_ear,/obj/item/device/radio))
r_ear.talk_into(src,message, message_mode, verb, speaking)
used_radios += r_ear
if(used_radios.len)
@@ -212,9 +217,6 @@
return verb
/mob/living/carbon/human/proc/handle_speech_problems(var/message)
var/list/returns[3]
var/verb = "says"
@@ -123,3 +123,9 @@
return 0
// End BS12 momentum-transfer code.
//Why did I place it here?
//Remind me to place this somewhere else
//I sware this uses less memory
/mob/living/proc/isipc()
return 0
-1
View File
@@ -481,6 +481,5 @@
msg_scopes("[name] was made to float")
else
msg_scopes("[real_name] was made to float")
msg_scopes("[real_name] was told to stop floating")
animate(src, pixel_y = initial(pixel_y), time = 10)
floating = 0
+1 -1
View File
@@ -127,7 +127,7 @@
C.status |= ORGAN_DEAD
H.update_body(1)
if(multiplier < 1) multiplier = 1
H.adjustToxLoss(15*multiplier)
H.adjustToxLoss(10*multiplier)
vampire
stage = 3