diff --git a/code/__DEFINES/preferences.dm b/code/__DEFINES/preferences.dm index 24c8235c83a..40a871f06c0 100644 --- a/code/__DEFINES/preferences.dm +++ b/code/__DEFINES/preferences.dm @@ -31,15 +31,6 @@ // Playtime tracking system, see jobs_exp.dm #define EXP_TYPE_LIVING "Living" #define EXP_TYPE_CREW "Crew" -#define EXP_TYPE_COMMAND "Command" -#define EXP_TYPE_ENGINEERING "Engineering" -#define EXP_TYPE_MEDICAL "Medical" -#define EXP_TYPE_SCIENCE "Science" -#define EXP_TYPE_SUPPLY "Supply" -#define EXP_TYPE_SECURITY "Security" -#define EXP_TYPE_SILICON "Silicon" -#define EXP_TYPE_SERVICE "Service" -#define EXP_TYPE_WHITELIST "Whitelist" #define EXP_TYPE_SPECIAL "Special" #define EXP_TYPE_GHOST "Ghost" #define EXP_TYPE_EXEMPT "Exempt" \ No newline at end of file diff --git a/code/controllers/configuration.dm b/code/controllers/configuration.dm index f1734d664f6..2fa1cd87e15 100644 --- a/code/controllers/configuration.dm +++ b/code/controllers/configuration.dm @@ -128,10 +128,7 @@ var/use_age_restriction_for_antags = 0 //Do antags use account age restrictions? --requires database var/use_exp_tracking = 0 - var/use_exp_restrictions_heads = 0 - var/use_exp_restrictions_heads_hours = 0 - var/use_exp_restrictions_heads_department = 0 - var/use_exp_restrictions_other = 0 + var/use_exp_restrictions = 0 var/use_exp_restrictions_admin_bypass = 0 var/simultaneous_pm_warning_timeout = 100 @@ -249,17 +246,8 @@ if("use_exp_tracking") config.use_exp_tracking = 1 - if("use_exp_restrictions_heads") - config.use_exp_restrictions_heads = 1 - - if("use_exp_restrictions_heads_hours") - config.use_exp_restrictions_heads_hours = text2num(value) - - if("use_exp_restrictions_heads_department") - config.use_exp_restrictions_heads_department = 1 - - if("use_exp_restrictions_other") - config.use_exp_restrictions_other = 1 + if("use_exp_restrictions") + config.use_exp_restrictions = 1 if("use_exp_restrictions_admin_bypass") config.use_exp_restrictions_admin_bypass = 1 diff --git a/code/game/jobs/job/engineering.dm b/code/game/jobs/job/engineering.dm index 9c182ad86c3..c5de869f88e 100644 --- a/code/game/jobs/job/engineering.dm +++ b/code/game/jobs/job/engineering.dm @@ -19,7 +19,6 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - exp_type_department = EXP_TYPE_ENGINEERING equip(var/mob/living/carbon/human/H) if(!H) return 0 @@ -56,8 +55,6 @@ minimal_access = list(access_eva, access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels, access_external_airlocks, access_construction) alt_titles = list("Maintenance Technician","Engine Technician","Electrician") minimal_player_age = 7 - exp_requirements = 180 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_or_collect(new /obj/item/device/radio/headset/headset_eng(H), slot_l_ear) @@ -92,8 +89,6 @@ minimal_access = list(access_eva, access_atmospherics, access_maint_tunnels, access_external_airlocks, access_emergency_storage, access_construction) alt_titles = list("Atmospheric Technician") minimal_player_age = 7 - exp_requirements = 180 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_or_collect(new /obj/item/device/radio/headset/headset_eng(H), slot_l_ear) diff --git a/code/game/jobs/job/job.dm b/code/game/jobs/job/job.dm index 8b372b13f9d..209127d9abe 100644 --- a/code/game/jobs/job/job.dm +++ b/code/game/jobs/job/job.dm @@ -43,7 +43,6 @@ var/exp_requirements = 0 var/exp_type = "" - var/exp_type_department = "" var/admin_only = 0 var/spawn_ert = 0 diff --git a/code/game/jobs/job/medical.dm b/code/game/jobs/job/medical.dm index f4b382db34b..36048545059 100644 --- a/code/game/jobs/job/medical.dm +++ b/code/game/jobs/job/medical.dm @@ -17,7 +17,6 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - exp_type_department = EXP_TYPE_MEDICAL equip(var/mob/living/carbon/human/H) if(!H) return 0 @@ -54,8 +53,6 @@ minimal_access = list(access_medical, access_morgue, access_surgery, access_maint_tunnels) alt_titles = list("Surgeon","Nurse","Coroner") minimal_player_age = 3 - exp_requirements = 60 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 @@ -119,8 +116,6 @@ minimal_access = list(access_medical, access_chemistry, access_maint_tunnels, access_mineral_storeroom) alt_titles = list("Pharmacist","Pharmacologist") minimal_player_age = 7 - exp_requirements = 180 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 @@ -152,8 +147,6 @@ access = list(access_medical, access_morgue, access_surgery, access_chemistry, access_virology, access_genetics, access_research, access_mineral_storeroom) minimal_access = list(access_medical, access_morgue, access_genetics, access_research, access_maint_tunnels) minimal_player_age = 3 - exp_requirements = 60 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 @@ -184,8 +177,6 @@ minimal_access = list(access_medical, access_virology, access_maint_tunnels, access_mineral_storeroom) alt_titles = list("Pathologist","Microbiologist") minimal_player_age = 7 - exp_requirements = 180 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 diff --git a/code/game/jobs/job/science.dm b/code/game/jobs/job/science.dm index 8c3f26304db..b35ac26fec5 100644 --- a/code/game/jobs/job/science.dm +++ b/code/game/jobs/job/science.dm @@ -19,7 +19,6 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - exp_type_department = EXP_TYPE_SCIENCE // All science-y guys get bonuses for maxing out their tech. required_objectives=list( @@ -58,8 +57,6 @@ minimal_access = list(access_tox, access_tox_storage, access_research, access_xenobiology, access_xenoarch, access_maint_tunnels, access_mineral_storeroom) alt_titles = list("Xenoarcheologist", "Anomalist", "Plasma Researcher", "Xenobiologist", "Chemical Researcher") minimal_player_age = 3 - exp_requirements = 60 - exp_type = EXP_TYPE_CREW // All science-y guys get bonuses for maxing out their tech. required_objectives=list( @@ -96,8 +93,6 @@ minimal_access = list(access_robotics, access_tech_storage, access_morgue, access_research, access_maint_tunnels, access_mineral_storeroom) //As a job that handles so many corpses, it makes sense for them to have morgue access. alt_titles = list("Biomechanical Engineer","Mechatronic Engineer") minimal_player_age = 3 - exp_requirements = 60 - exp_type = EXP_TYPE_CREW required_objectives=list( /datum/job_objective/make_cyborg, diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index dd52f651cba..1a475bb3692 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -19,7 +19,6 @@ minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - exp_type_department = EXP_TYPE_SECURITY equip(var/mob/living/carbon/human/H) if(!H) return 0 @@ -63,8 +62,6 @@ access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_morgue, access_weapons) minimal_access = list(access_security, access_sec_doors, access_brig, access_armory, access_court, access_maint_tunnels, access_weapons) minimal_player_age = 21 - exp_requirements = 300 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 @@ -111,8 +108,6 @@ minimal_access = list(access_sec_doors, access_forensics_lockers, access_morgue, access_maint_tunnels, access_court, access_weapons) alt_titles = list("Forensic Technician") minimal_player_age = 14 - exp_requirements = 300 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_or_collect(new /obj/item/device/radio/headset/headset_sec/alt(H), slot_l_ear) @@ -169,8 +164,6 @@ access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_morgue, access_weapons) minimal_access = list(access_security, access_sec_doors, access_brig, access_court, access_maint_tunnels, access_weapons) minimal_player_age = 14 - exp_requirements = 300 - exp_type = EXP_TYPE_CREW equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_or_collect(new /obj/item/device/radio/headset/headset_sec/alt(H), slot_l_ear) diff --git a/code/game/jobs/job/silicon.dm b/code/game/jobs/job/silicon.dm index eedb50a8412..d85d332fee6 100644 --- a/code/game/jobs/job/silicon.dm +++ b/code/game/jobs/job/silicon.dm @@ -28,8 +28,6 @@ supervisors = "your laws and the AI" //Nodrak selection_color = "#ddffdd" minimal_player_age = 21 - exp_requirements = 300 - exp_type = EXP_TYPE_CREW alt_titles = list("Android", "Robot") equip(var/mob/living/carbon/human/H) diff --git a/code/game/jobs/job/supervisor.dm b/code/game/jobs/job/supervisor.dm index ee176d1a607..b8ebafd7f93 100644 --- a/code/game/jobs/job/supervisor.dm +++ b/code/game/jobs/job/supervisor.dm @@ -14,7 +14,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) minimal_player_age = 30 exp_requirements = 600 exp_type = EXP_TYPE_CREW - exp_type_department = EXP_TYPE_COMMAND equip(var/mob/living/carbon/human/H) if(!H) return 0 H.equip_or_collect(new /obj/item/device/radio/headset/heads/captain/alt(H), slot_l_ear) @@ -64,7 +63,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) minimal_player_age = 21 exp_requirements = 600 exp_type = EXP_TYPE_CREW - exp_type_department = EXP_TYPE_SUPPLY access = list(access_security, access_sec_doors, access_brig, access_court, access_forensics_lockers, access_medical, access_engine, access_change_ids, access_ai_upload, access_eva, access_heads, access_all_personal_lockers, access_maint_tunnels, access_bar, access_janitor, access_construction, access_morgue, @@ -244,9 +242,6 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1) minimal_access = list(access_lawyer, access_court, access_sec_doors, access_maint_tunnels) alt_titles = list("Lawyer","Public Defender") minimal_player_age = 30 - exp_requirements = 600 - exp_type = EXP_TYPE_CREW - exp_type_department = EXP_TYPE_SECURITY idtype = /obj/item/weapon/card/id/security equip(var/mob/living/carbon/human/H) diff --git a/code/game/jobs/job_exp.dm b/code/game/jobs/job_exp.dm index 028cc37f8ae..9d029f6d016 100644 --- a/code/game/jobs/job_exp.dm +++ b/code/game/jobs/job_exp.dm @@ -32,7 +32,7 @@ return 0 if(!exp_requirements || !exp_type) return 0 - if(!job_is_xp_locked(src.title)) + if(!config.use_exp_restrictions) return 0 if(config.use_exp_restrictions_admin_bypass && check_rights(R_ADMIN, 0, C.mob)) return 0 @@ -48,25 +48,11 @@ return (job_requirement - my_exp) /datum/job/proc/get_exp_req_amount() - if(title in command_positions) - if(config.use_exp_restrictions_heads_hours) - return config.use_exp_restrictions_heads_hours * 60 return exp_requirements /datum/job/proc/get_exp_req_type() - if(title in command_positions) - if(config.use_exp_restrictions_heads_department && exp_type_department) - return exp_type_department return exp_type -/proc/job_is_xp_locked(jobtitle) - if(!config.use_exp_restrictions_heads && jobtitle in command_positions) - return 0 - if(!config.use_exp_restrictions_other && !(jobtitle in command_positions)) - return 0 - return 1 - - /mob/proc/get_exp_report() if(client) return client.get_exp_report() @@ -76,20 +62,16 @@ /client/proc/get_exp_report() if(!config.use_exp_tracking) return "Tracking is disabled in the server configuration file." - var/list/play_records = params2list(prefs.exp) if(!play_records.len) return "[key] has no records." - var/return_text = "