diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index e1154297297..0aa0a48d91e 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -20,7 +20,7 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 outfit = /datum/outfit/job/chief_engineer /datum/outfit/job/chief_engineer diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index 26f700ad3fd..e39413f55dd 100644 --- a/code/game/jobs/job/job.dm +++ b/code/game/jobs/job/job.dm @@ -52,7 +52,8 @@ var/exp_requirements = 0 var/exp_type = "" - var/disabilities_allowed = 1 + var/major_disabilities_allowed = 1 + var/minor_disabilities_allowed = 1 var/admin_only = 0 var/spawn_ert = 0 @@ -115,11 +116,13 @@ /datum/job/proc/barred_by_disability(client/C) if(!C) return 0 - if(disabilities_allowed) + if(minor_disabilities_allowed && major_disabilities_allowed) return 0 - // List of disabilities that block you from command/sec positions. - // Not all disabilities are here - just the ones that disrupt your ability to communicate effectively, function independently, or be aware of your surroundings. - var/list/prohibited_disabilities = list(DISABILITY_FLAG_EPILEPTIC, DISABILITY_FLAG_DEAF, DISABILITY_FLAG_BLIND, DISABILITY_FLAG_MUTE, DISABILITY_FLAG_TOURETTES, DISABILITY_FLAG_SCRAMBLED) + var/list/prohibited_disabilities = list() + if(!major_disabilities_allowed) + prohibited_disabilities += list(DISABILITY_FLAG_DEAF, DISABILITY_FLAG_BLIND) + if(!minor_disabilities_allowed) + prohibited_disabilities += list(DISABILITY_FLAG_MUTE, DISABILITY_FLAG_SCRAMBLED, DISABILITY_FLAG_EPILEPTIC, DISABILITY_FLAG_TOURETTES) for(var/i = 1, i < prohibited_disabilities.len, i++) var/this_disability = prohibited_disabilities[i] if(C.prefs.disabilities & this_disability) diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index 6f4bc7c467e..d3c18b189b6 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -18,7 +18,7 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 outfit = /datum/outfit/job/cmo /datum/outfit/job/cmo diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 9aa2af43051..c68748e7917 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -20,7 +20,7 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 // All science-y guys get bonuses for maxing out their tech. required_objectives = list( /datum/job_objective/further_research diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index e645c64fe9b..f8d507d05a2 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -20,7 +20,8 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 + minor_disabilities_allowed = 0 outfit = /datum/outfit/job/hos /datum/outfit/job/hos @@ -65,7 +66,8 @@ minimal_player_age = 21 exp_requirements = 300 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 + minor_disabilities_allowed = 0 outfit = /datum/outfit/job/warden /datum/outfit/job/warden @@ -112,7 +114,8 @@ minimal_player_age = 14 exp_requirements = 300 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 + minor_disabilities_allowed = 0 outfit = /datum/outfit/job/detective /datum/outfit/job/detective @@ -170,7 +173,8 @@ minimal_player_age = 14 exp_requirements = 300 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 + minor_disabilities_allowed = 0 outfit = /datum/outfit/job/officer /datum/outfit/job/officer @@ -208,7 +212,8 @@ selection_color = "#ffeeee" access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics) minimal_access = list(access_medical, access_morgue, access_surgery, access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels) - disabilities_allowed = 0 + major_disabilities_allowed = 0 + minor_disabilities_allowed = 0 outfit = /datum/outfit/job/brigdoc /datum/outfit/job/brigdoc @@ -242,7 +247,8 @@ access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_morgue, access_weapons, access_pilot, access_external_airlocks) minimal_access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_weapons, access_pilot, access_external_airlocks) minimal_player_age = 7 - disabilities_allowed = 0 + major_disabilities_allowed = 0 + minor_disabilities_allowed = 0 outfit = /datum/outfit/job/pilot /datum/outfit/job/pilot diff --git a/code/game/jobs/job/supervisor.dm b/code/game/jobs/job/supervisor.dm index e6fc846d032..14f392ecabb 100644 --- a/code/game/jobs/job/supervisor.dm +++ b/code/game/jobs/job/supervisor.dm @@ -15,7 +15,8 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) minimal_player_age = 30 exp_requirements = 1200 exp_type = EXP_TYPE_CREW - disabilities_allowed = 0 + major_disabilities_allowed = 0 + minor_disabilities_allowed = 0 outfit = /datum/outfit/job/captain /datum/job/captain/get_access() @@ -82,7 +83,7 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer, access_theatre, access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station, access_clown, access_mime, access_hop, access_RC_announce, access_keycard_auth, access_gateway, access_weapons, access_mineral_storeroom) - disabilities_allowed = 0 + major_disabilities_allowed = 0 outfit = /datum/outfit/job/hop /datum/outfit/job/hop @@ -127,7 +128,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) access_crematorium, access_kitchen, access_cargo, access_cargo_bot, access_mailsorting, access_qm, access_hydroponics, access_lawyer, access_theatre, access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station, access_clown, access_mime, access_hop, access_RC_announce, access_keycard_auth, access_gateway, access_weapons, access_ntrep) - disabilities_allowed = 0 outfit = /datum/outfit/job/nanotrasenrep /datum/outfit/job/nanotrasenrep @@ -167,7 +167,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) access_clown, access_mime, access_hop, access_RC_announce, access_keycard_auth, access_gateway, access_weapons, access_blueshield) minimal_access = list(access_forensics_lockers, access_sec_doors, access_medical, access_construction, access_engine, access_maint_tunnels, access_research, access_RC_announce, access_keycard_auth, access_heads, access_blueshield, access_weapons) - disabilities_allowed = 0 outfit = /datum/outfit/job/blueshield /datum/outfit/job/blueshield @@ -210,7 +209,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 0) access_theatre, access_chapel_office, access_library, access_research, access_mining, access_heads_vault, access_mining_station, access_clown, access_mime, access_hop, access_RC_announce, access_keycard_auth, access_gateway, access_magistrate) minimal_access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_lawyer, access_magistrate, access_heads) - disabilities_allowed = 0 outfit = /datum/outfit/job/judge /datum/outfit/job/judge