Added minimum ages to head roles.

This commit is contained in:
Zuhayr
2015-12-11 15:04:16 +10:30
parent 8c097c3361
commit 999291fc94
7 changed files with 33 additions and 15 deletions
+8
View File
@@ -18,6 +18,11 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
minimal_access = list() //See get_access()
minimal_player_age = 14
economic_modifier = 20
minimum_character_age = 30
ideal_character_age = 70 // Old geezer captains ftw
equip(var/mob/living/carbon/human/H)
if(!H) return 0
H.equip_to_slot_or_del(new /obj/item/device/radio/headset/heads/captain(H), slot_l_ear)
@@ -63,6 +68,9 @@ var/datum/announcement/minor/captain_announcement = new(do_newscast = 1)
req_admin_notify = 1
minimal_player_age = 10
economic_modifier = 10
minimum_character_age = 23
ideal_character_age = 50
access = list(access_security, access_sec_doors, access_brig, 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,
+3
View File
@@ -101,6 +101,9 @@
access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimal_access = list(access_maint_tunnels, access_mailsorting, access_cargo, access_cargo_bot, access_qm, access_mining, access_mining_station)
minimum_character_age = 25
ideal_character_age = 40
equip(var/mob/living/carbon/human/H)
if(!H) return 0
+5
View File
@@ -12,6 +12,11 @@
idtype = /obj/item/weapon/card/id/silver
req_admin_notify = 1
economic_modifier = 10
minimum_character_age = 35
ideal_character_age = 50
access = list(access_engine, access_engine_equip, access_tech_storage, access_maint_tunnels,
access_teleporter, access_external_airlocks, access_atmospherics, access_emergency_storage, access_eva,
access_heads, access_construction, access_sec_doors,
+2
View File
@@ -19,6 +19,8 @@
var/minimal_player_age = 0 // If you have use_age_restriction_for_jobs config option enabled and the database set up, this option will add a requirement for players to be at least minimal_player_age days old. (meaning they first signed in at least that many days before.)
var/department = null // Does this position have a department tag?
var/head_position = 0 // Is this position Command?
var/minimum_character_age
var/ideal_character_age
var/account_allowed = 1 // Does this job type come with a station account?
var/economic_modifier = 2 // With how much does this job modify the initial account amount?
+3
View File
@@ -18,7 +18,10 @@
minimal_access = list(access_medical, access_medical_equip, access_morgue, access_genetics, access_heads,
access_chemistry, access_virology, access_cmo, access_surgery, access_RC_announce,
access_keycard_auth, access_sec_doors, access_psychiatrist, access_eva, access_external_airlocks, access_maint_tunnels)
minimal_player_age = 10
minimum_character_age = 35
ideal_character_age = 50
equip(var/mob/living/carbon/human/H)
if(!H) return 0
+3
View File
@@ -20,7 +20,10 @@
access_tox_storage, access_teleporter, access_sec_doors,
access_research, access_robotics, access_xenobiology, access_ai_upload, access_tech_storage,
access_RC_announce, access_keycard_auth, access_tcomsat, access_gateway, access_xenoarch)
minimal_player_age = 14
minimum_character_age = 35
ideal_character_age = 50
equip(var/mob/living/carbon/human/H)
if(!H) return 0
+9 -15
View File
@@ -137,30 +137,24 @@ var/global/datum/controller/occupations/job_master
// Build a weighted list, weight by age.
var/list/weightedCandidates = list()
// Different head positions have different good ages.
var/good_age_minimal = 25
var/good_age_maximal = 60
if(command_position == "Captain")
good_age_minimal = 30
good_age_maximal = 70 // Old geezer captains ftw
for(var/mob/V in candidates)
// Log-out during round-start? What a bad boy, no head position for you!
if(!V.client) continue
var/age = V.client.prefs.age
if(age < job.minimum_character_age) // Nope.
continue
switch(age)
if(good_age_minimal - 10 to good_age_minimal)
if(job.minimum_character_age to (job.minimum_character_age+10))
weightedCandidates[V] = 3 // Still a bit young.
if(good_age_minimal to good_age_minimal + 10)
if((job.minimum_character_age+10) to (job.ideal_character_age-10))
weightedCandidates[V] = 6 // Better.
if(good_age_minimal + 10 to good_age_maximal - 10)
if((job.ideal_character_age-10) to (job.ideal_character_age+10))
weightedCandidates[V] = 10 // Great.
if(good_age_maximal - 10 to good_age_maximal)
if((job.ideal_character_age+10) to (job.ideal_character_age+20))
weightedCandidates[V] = 6 // Still good.
if(good_age_maximal to good_age_maximal + 10)
weightedCandidates[V] = 6 // Bit old, don't you think?
if(good_age_maximal to good_age_maximal + 50)
if((job.ideal_character_age+20) to INFINITY)
weightedCandidates[V] = 3 // Geezer.
else
// If there's ABSOLUTELY NOBODY ELSE