diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index b92b10e12d..7c9d179f27 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -40,7 +40,11 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O pref.preview_icon = null S["bgstate"] >> pref.bgstate S["body_descriptors"] >> pref.body_descriptors - S["Wingdings"] >> pref.wingdings //YWadd + S["Wingdings"] >> pref.wingdings //YWadd start + S["colorblind_mono"] >> pref.colorblind_mono + S["colorblind_vulp"] >> pref.colorblind_vulp + S["colorblind_taj"] >> pref.colorblind_taj + S["haemophilia"] >> pref.haemophilia //YWadd end /datum/category_item/player_setup_item/general/body/save_character(var/savefile/S) S["species"] << pref.species @@ -71,7 +75,11 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O S["synth_markings"] << pref.synth_markings S["bgstate"] << pref.bgstate S["body_descriptors"] << pref.body_descriptors - S["Wingdings"] << pref.wingdings //YWadd + S["Wingdings"] << pref.wingdings //YWadd start + S["colorblind_mono"] << pref.colorblind_mono + S["colorblind_vulp"] << pref.colorblind_vulp + S["colorblind_taj"] << pref.colorblind_taj + S["haemophilia"] << pref.haemophilia //YWadd end /datum/category_item/player_setup_item/general/body/sanitize_character(var/savefile/S) if(!pref.species || !(pref.species in GLOB.playable_species)) @@ -128,17 +136,21 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O character.b_synth = pref.b_synth character.synth_markings = pref.synth_markings if(pref.species == "Grey")//YWadd START - character.wingdings = pref.wingdings //YWadd END + character.wingdings = pref.wingdings - if(pref.colorblind_1 == 1) + if(pref.colorblind_mono == 1) character.add_modifier(/datum/modifier/trait/colorblind_monochrome) - else if(pref.colorblind_2 == 1) + else if(pref.colorblind_vulp == 1) character.add_modifier(/datum/modifier/trait/colorblind_vulp) - else if(pref.colorblind_3 == 1) + else if(pref.colorblind_taj == 1) character.add_modifier(/datum/modifier/trait/colorblind_taj) + if(pref.haemophilia == 1) + character.add_modifier(/datum/modifier/trait/haemophilia) + //YWadd END + // Destroy/cyborgize organs and limbs. for(var/name in list(BP_HEAD, BP_L_HAND, BP_R_HAND, BP_L_ARM, BP_R_ARM, BP_L_FOOT, BP_R_FOOT, BP_L_LEG, BP_R_LEG, BP_GROIN, BP_TORSO)) var/status = pref.organ_data[name] @@ -213,15 +225,10 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O . += "Blood Type: [pref.b_type]
" if(has_flag(mob_species, HAS_SKIN_TONE)) . += "Skin Tone: [-pref.s_tone + 35]/220
" - . += "Disabilities
Adjust
" - //. += "Needs Glasses: [pref.disabilities & NEARSIGHTED ? "Yes" : "No"]
" + . += "Disabilities
Adjust
" // YWadd + //YWcommented moved onto disabilities. += "Needs Glasses: [pref.disabilities & NEARSIGHTED ? "Yes" : "No"]
" . += "Limbs: Adjust Reset
" . += "Internal Organs: Adjust
" - //YW Edit ADD - //if(pref.species == "Grey") - // . += "Speak Wingdings: [pref.wingdings ? "Yes" : "No"]
" - //YW Edit End - //display limbs below var/ind = 0 for(var/name in pref.organ_data) @@ -802,7 +809,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O else if(href_list["disabilities"]) var/disability_flag = text2num(href_list["disabilities"]) pref.disabilities ^= disability_flag - Disabilities_YW(usr) + Disabilities_YW(usr) //YW Edit else if(href_list["toggle_preview_value"]) pref.equip_preview_mob ^= text2num(href_list["toggle_preview_value"]) @@ -833,19 +840,33 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O pref.wingdings = !pref.wingdings Disabilities_YW(usr) - else if(href_list["colorblind_1"]) - pref.colorblind_1 = !pref.colorblind_1 + else if(href_list["colorblind_mono"]) + pref.colorblind_mono = !pref.colorblind_mono Disabilities_YW(usr) - else if(href_list["colorblind_2"]) - pref.colorblind_2 = !pref.colorblind_2 + else if(href_list["colorblind_vulp"]) + pref.colorblind_vulp = !pref.colorblind_vulp Disabilities_YW(usr) - else if(href_list["colorblind_3"]) - pref.colorblind_3 = !pref.colorblind_3 + else if(href_list["colorblind_taj"]) + pref.colorblind_taj = !pref.colorblind_taj Disabilities_YW(usr) + + else if(href_list["haemophilia"]) + pref.haemophilia = !pref.haemophilia + Disabilities_YW(usr) + + else if(href_list["reset_disabilities"]) + pref.wingdings = 0 + pref.colorblind_mono = 0 + pref.colorblind_taj = 0 + pref.colorblind_vulp = 0 + pref.haemophilia = 0 + Disabilities_YW(usr) + //YW Add End + return ..() /datum/category_item/player_setup_item/general/body/proc/reset_limbs() @@ -939,21 +960,3 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O user << browse(dat, "window=species;size=700x400") -/datum/category_item/player_setup_item/general/body/proc/Disabilities_YW(mob/user) - var/dat = "" - dat += "
" - - if(pref.species == "Grey") - dat += "Speak Wingdings: [pref.wingdings ? "Yes" : "No"]
" - dat += "Needs Glasses: [pref.disabilities & NEARSIGHTED ? "Yes" : "No"]
" - if(pref.colorblind_2 == 0 && pref.colorblind_3 == 0) - dat += "Colorblind 1: [pref.colorblind_1 ? "Yes" : "No"]
" - if(pref.colorblind_1 == 0 && pref.colorblind_3 == 0) - dat += "Colorblind 2: [pref.colorblind_2 ? "Yes" : "No"]
" - if(pref.colorblind_1 == 0 && pref.colorblind_2 == 0) - dat += "Colorblind 3: [pref.colorblind_3 ? "Yes" : "No"]
" - - dat += "
" - var/datum/browser/popup = new(user, "disabil", "
Choose Disabilities
", 350, 380, src) - popup.set_content(dat) - popup.open() \ No newline at end of file diff --git a/code/modules/client/preferences_vr.dm b/code/modules/client/preferences_vr.dm index 0d48f786e4..d1109a240a 100644 --- a/code/modules/client/preferences_vr.dm +++ b/code/modules/client/preferences_vr.dm @@ -2,12 +2,6 @@ datum/preferences var/show_in_directory = 1 //Show in Character Directory var/sensorpref = 5 //Set character's suit sensor level - var/wingdings = 1 //YW Add - var/list/disabilities_yw list("wingdings" = 1, "colorblind_1" = 0, "colorblind_2" = 0 ,"colorblind_1" = 0) - var/colorblind_1 = 0 - var/colorblind_2 = 0 - var/colorblind_3 = 0 - var/job_talon_high = 0 var/job_talon_med = 0 var/job_talon_low = 0 diff --git a/code/modules/client/preferences_yw.dm b/code/modules/client/preferences_yw.dm new file mode 100644 index 0000000000..f44f979ffb --- /dev/null +++ b/code/modules/client/preferences_yw.dm @@ -0,0 +1,30 @@ +datum/preferences + var/wingdings = 1 + var/colorblind_mono = 0 + var/colorblind_vulp = 0 + var/colorblind_taj = 0 + var/haemophilia = 1 + + +/datum/category_item/player_setup_item/general/body/proc/Disabilities_YW(mob/user) + var/dat = "" + dat += "
" + + if(pref.species == "Grey") + dat += "Speak Wingdings: [pref.wingdings ? "Yes" : "No"]
" + dat += "Needs Glasses: [pref.disabilities & NEARSIGHTED ? "Yes" : "No"]
" + if(pref.colorblind_vulp == 0 && pref.colorblind_taj == 0) + dat += "Colorblind - Monochromacy): [pref.colorblind_mono ? "Yes" : "No"]
" + if(pref.colorblind_mono == 0 && pref.colorblind_taj == 0) + dat += "Colorblind - Green-Red): [pref.colorblind_vulp ? "Yes" : "No"]
" + if(pref.colorblind_mono == 0 && pref.colorblind_vulp == 0) + dat += "Colorblind - Blue-Red): [pref.colorblind_taj ? "Yes" : "No"]
" + dat += "Haemophilia: [pref.haemophilia ? "Yes" : "No"]
" + + dat += "Reset
" + + dat += "
" + var/datum/browser/popup = new(user, "disabil", "
Choose Disabilities
", 350, 380, src) + popup.set_content(dat) + popup.open() + diff --git a/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm b/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm index d0b0b03b70..d906f7d99c 100644 --- a/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm +++ b/code/modules/mob/living/carbon/human/species/station/traits_vr/negative.dm @@ -185,4 +185,14 @@ YW comment finish*/ desc = "You have trouble dealing with sudden flashes of light, taking quite a long time for you to be able to recover. The effects of flashes from cameras and security equipment leave you stunned for some time." cost = -2 var_changes = list("flash_mod" = 2.0) + + +/datum/trait/haemophilia + name = "Haemophilia" + desc = "Some say that when it rains, it pours. Unfortunately, this is also true for yourself if you get cut. You bleed much faster than average" + cost = -3 + +/datum/trait/haemophilia/apply(var/datum/species/S,var/mob/living/carbon/human/H) + ..(S,H) + H.add_modifier(/datum/modifier/trait/haemophilia) // YW Addition End \ No newline at end of file diff --git a/vorestation.dme b/vorestation.dme index 1062700425..af3aca4e4b 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -1737,6 +1737,7 @@ #include "code\modules\client\preferences_spawnpoints.dm" #include "code\modules\client\preferences_toggle_procs.dm" #include "code\modules\client\preferences_vr.dm" +#include "code\modules\client\preferences_yw.dm" #include "code\modules\client\spam_prevention.dm" #include "code\modules\client\ui_style.dm" #include "code\modules\client\preference_setup\_defines.dm"