Librarian, lawyer, chaplain and atmos tech moved to assistant priority (means you can't get randomly assigned to them, only if you have them in your preferences).

Maybe fixed the "No Preference" bug.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2080 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
uporotiy
2011-08-31 19:14:04 +00:00
parent 3dca311b6d
commit dd60af4afd
3 changed files with 15 additions and 11 deletions
+9 -5
View File
@@ -83,7 +83,9 @@
if (unassigned.len == 0)
break
var/list/candidates = FindOccupationCandidates(unassigned, occupation, level)
for (var/mob/new_player/candidate in candidates)
while (candidates.len && assistant_occupations[occupation])
assistant_occupations[occupation]--
var/mob/new_player/candidate = pick_n_take(candidates)
candidate.mind.assigned_role = occupation
unassigned -= candidate
//Now everyone else
@@ -116,7 +118,12 @@
for(var/mob/new_player/player in unassigned)
if (unassigned.len == 0)
break
player.mind.assigned_role = pick(assistant_occupations)
var/list/occupationsPossible = list()
for(var/occ in assistant_occupations)
if(assistant_occupations[occ])
occupationsPossible += assistant_occupations[occ]
player.mind.assigned_role = pick(occupationsPossible)
assistant_occupations[player.mind.assigned_role]--
return 1
@@ -158,9 +165,6 @@
B.name = "Uplifting Primer"
if("toolboxia")
B.name = "Toolbox Manifesto"
if("nazism")
B.name = "Mein Kampf"
if(prob(50)) brainloss = 60 // probably starts off retarded?
if("homosexuality")
B.name = "Guys Gone Wild"
if("lol", "wtf", "gay", "penis", "ass", "poo", "badmin", "shitmin", "deadmin", "cock", "cocks")
+5 -5
View File
@@ -298,9 +298,6 @@ var/list/occupations = list(
//soul
"Clown" = 1,
"Mime" = 1,
"Chaplain" = 1,
"Librarian" = 1,
"Lawyer" = 1,
//body
"Bartender" = 1,
"Chef" = 1,
@@ -312,7 +309,6 @@ var/list/occupations = list(
//engineering
"Chief Engineer" = 1,
"Station Engineer" = 5,
"Atmospheric Technician" = 4,
"Roboticist" = 1,
//red shirts
@@ -340,7 +336,11 @@ var/list/occupations = list(
)
var/list/assistant_occupations = list(
"Assistant",
"Assistant" = -1, //infinite assistants
"Chaplain" = 1,
"Librarian" = 1,
"Lawyer" = 1,
"Atmospheric Technician" = 4,
//"Tourist", //I am not going to implement these jobs at the moment. Just listed it as examples. --rastaf0
//"Monkey",
//"Prisoneer",
+1 -1
View File
@@ -514,7 +514,7 @@ datum/preferences
return
proc/SetJob(mob/user, occ=1, job="Captain")
if ((!( occupations.Find(job) ) && !( assistant_occupations.Find(job) ) && (job != "Captain" && job != "AI")))
if ((!( occupations.Find(job) ) && !( assistant_occupations.Find(job) ) && (job != "Captain" && job != "AI" && job != "No Preference")))
return
if (job=="AI" && (!config.allow_ai))
return