This commit is contained in:
Spamcat
2012-10-22 17:55:05 +04:00
60 changed files with 6719 additions and 5728 deletions
@@ -274,6 +274,7 @@
else if(temp.wounds.len > 0)
var/list/wound_descriptors = list()
for(var/datum/wound/W in temp.wounds)
if(W.internal && !temp.open) continue // can't see internal wounds
var/this_wound_desc = W.desc
if(W.bleeding()) this_wound_desc = "bleeding [this_wound_desc]"
else if(W.bandaged) this_wound_desc = "bandaged [this_wound_desc]"
+2 -1
View File
@@ -1052,7 +1052,8 @@
if(stuttering)
stuttering = max(stuttering-1, 0)
if (src.slurring)
slurring = max(slurring-1, 0)
if(silent)
silent = max(silent-1, 0)
+2 -2
View File
@@ -17,10 +17,10 @@
return
if(src.dna)
if(src.dna.mutantrace == "lizard")
/*if(src.dna.mutantrace == "lizard") //Soghun stutterss-s-ss-sss.
if(copytext(message, 1, 2) != "*")
message = dd_replacetext(message, "s", stutter("ss"))
*/
if(src.dna.mutantrace == "metroid" && prob(5))
if(copytext(message, 1, 2) != "*")
if(copytext(message, 1, 2) == ";")
+5 -2
View File
@@ -368,13 +368,16 @@
proc/AnnounceArrival(var/mob/living/carbon/human/character, var/rank)
if (ticker.current_state == GAME_STATE_PLAYING)
var/mob/living/silicon/ai/announcer = new (null)
var/obj/item/device/radio/intercom/a = new /obj/item/device/radio/intercom(null)// BS12 EDIT Arrivals Announcement Computer, rather than the AI.
a.autosay("\"[character.real_name],[character.wear_id.assignment ? " [character.wear_id.assignment]," : "" ] has arrived on the station.\"", "Arrivals Announcement Computer")
del(a)
/*
var/mob/living/silicon/ai/announcer = new (null)
announcer.name = "Arrivals Announcement Computer"
announcer.real_name = "Arrivals Announcement Computer"
a.autosay("\"[character.real_name],[character.wear_id.assignment ? " [character.wear_id.assignment]," : "" ] has arrived on the station.\"", announcer)
del(a)
del(announcer)
*/
proc/LateChoices()
var/mills = world.time // 1/10 of a second, not real milliseconds but whatever
+96 -4
View File
@@ -296,6 +296,35 @@ datum/preferences
dat += "Blood Type: <a href='byond://?src=\ref[user];preference=b_type;task=input'>[b_type]</a><br>"
dat += "Skin Tone: <a href='byond://?src=\ref[user];preference=s_tone;task=input'>[-s_tone + 35]/220<br></a>"
dat += "Limbs: <a href='byond://?src=\ref[user];preference=limbs;task=input'>Adjust Limbs</a><br>"
for(var/name in organ_data)
var/status = organ_data[name]
var/organ_name = null
switch(name)
if("l_arm")
organ_name = "left arm"
if("r_arm")
organ_name = "right arm"
if("l_leg")
organ_name = "left leg"
if("r_leg")
organ_name = "right leg"
if("l_foot")
organ_name = "left foot"
if("r_foot")
organ_name = "right foot"
if("l_hand")
organ_name = "left hand"
if("r_hand")
organ_name = "right hand"
if(status == "cyborg")
dat += "\tRobotical [organ_name] prothesis<br>"
if(status == "amputated")
dat += "\tAmputated [organ_name]<br>"
dat+="<br>"
if(gender == MALE)
dat += "Underwear: <a href =\"byond://?src=\ref[user];preference=underwear;task=input\"><b>[underwear_m[underwear]]</b></a><br>"
else
@@ -814,10 +843,6 @@ datum/preferences
var/list/valid_hairstyles = list()
for(var/hairstyle in hair_styles_list)
var/datum/sprite_accessory/S = hair_styles_list[hairstyle]
if(gender == MALE && !S.choose_male)
continue
if(gender == FEMALE && !S.choose_female)
continue
if( !(species in S.species_allowed))
continue
@@ -938,6 +963,57 @@ datum/preferences
sec_record = secmsg
SetRecords(user)
if("limbs")
var/limb_name = input(user, "Which limb do you want to change?") as null|anything in list("Left Leg","Right Leg","Left Arm","Right Arm","Left Foot","Right Foot","Left Hand","Right Hand")
if(!limb_name) return
var/limb = null
var/second_limb = null // if you try to change the arm, the hand should also change
var/third_limb = null // if you try to unchange the hand, the arm should also change
switch(limb_name)
if("Left Leg")
limb = "l_leg"
second_limb = "l_foot"
if("Right Leg")
limb = "r_leg"
second_limb = "r_foot"
if("Left Arm")
limb = "l_arm"
second_limb = "l_hand"
if("Right Arm")
limb = "r_arm"
second_limb = "r_hand"
if("Left Foot")
limb = "l_foot"
third_limb = "l_leg"
if("Right Foot")
limb = "r_foot"
third_limb = "r_leg"
if("Left Hand")
limb = "l_hand"
third_limb = "l_arm"
if("Right Hand")
limb = "r_hand"
third_limb = "r_arm"
var/new_state = input(user, "What state do you wish the limb to be in?") as null|anything in list("Normal","Amputated","Prothesis")
if(!new_state) return
switch(new_state)
if("Normal")
organ_data[limb] = null
if(third_limb)
organ_data[third_limb] = null
if("Amputated")
organ_data[limb] = "amputated"
if(second_limb)
organ_data[second_limb] = "amputated"
if("Prothesis")
organ_data[limb] = "cyborg"
if(second_limb)
organ_data[second_limb] = "cyborg"
else
switch(href_list["preference"])
if("gender")
@@ -1087,6 +1163,22 @@ datum/preferences
character.h_style = h_style
character.f_style = f_style
character.skills = skills
// Destroy/cyborgize organs
for(var/name in organ_data)
var/datum/organ/external/O = character.organs[name]
if(!O) continue
var/status = organ_data[name]
if(status == "amputated")
O.amputated = 1
O.status |= ORGAN_DESTROYED
O.destspawn = 1
else if(status == "cyborg")
O.status |= ORGAN_ROBOT
switch(UI_style)
if("Orange")
character.UI = 'icons/mob/screen1_Orange.dmi'
@@ -215,7 +215,29 @@ datum/preferences
else if(species == "Skrell")
preview_icon = new /icon('icons/effects/species.dmi', "skrell_[g]_s")
else
preview_icon = new /icon('icons/mob/human.dmi', "body_[g]_s")
preview_icon = new /icon('human.dmi', "torso_[g]_s")
preview_icon.Blend(new /icon('human.dmi', "chest_[g]_s"), ICON_OVERLAY)
if(organ_data["head"] != "amputated")
preview_icon.Blend(new /icon('human.dmi', "head_[g]_s"), ICON_OVERLAY)
for(var/name in list("l_arm","r_arm","l_leg","r_leg","l_foot","r_foot","l_hand","r_hand"))
// make sure the organ is added to the list so it's drawn
if(organ_data[name] == null)
organ_data[name] = null
for(var/name in organ_data)
if(organ_data[name] == "amputated") continue
var/icon/temp = new /icon('human.dmi', "[name]_s")
if(organ_data[name] == "cyborg")
temp.MapColors(rgb(77,77,77), rgb(150,150,150), rgb(28,28,28), rgb(0,0,0))
preview_icon.Blend(temp, ICON_OVERLAY)
preview_icon.Blend(new /icon('human.dmi', "groin_[g]_s"), ICON_OVERLAY)
// Skin tone
if(species == "Human")
+5
View File
@@ -127,6 +127,8 @@ datum/preferences/proc/savefile_save(mob/user)
F["slotname"] << src.slot_name
F["lobby_music"] << src.lobby_music
F["organ_data"] << src.organ_data
return 1
// loads the savefile corresponding to the mob's ckey
@@ -260,6 +262,9 @@ datum/preferences/proc/savefile_load(mob/user)
if(isnull(metadata))
metadata = ""
F["organ_data"] >> src.organ_data
if(!src.organ_data) src.organ_data = list()
//NOTE: Conversion things go inside this if statement
//When updating the save file remember to add 1 to BOTH the savefile constants
//Also take the old conversion things that no longer apply out of this if
@@ -63,10 +63,22 @@
name = "Shoulder-length Hair"
icon_state = "hair_b"
longalt
name = "Shoulder-length Hair Alt"
icon_state = "hair_longfringe"
longish
name = "Longer Hair"
icon_state = "hair_b2"
longer
name = "Long Hair"
icon_state = "hair_vlong"
longeralt
name = "Long Hair Alt"
icon_state = "hair_vlongfringe"
longest
name = "Very Long Hair"
icon_state = "hair_longest"