The station has flagged these jobs as high priority: "
- var/amt = length(SSjob.prioritized_jobs)
- var/amt_count
- for(var/datum/job/a in SSjob.prioritized_jobs)
- amt_count++
- if(amt_count != amt) // checks for the last job added.
- dat += " [a.title], "
- else
- dat += " [a.title].
"
- var/job_count = 0
- for(var/datum/job/job in SSjob.occupations)
- if(job && IsJobUnavailable(job.title, TRUE) == JOB_AVAILABLE)
- job_count++;
- if (job_count > round(available_job_count / 2))
- dat += "
"
- var/position_class = "otherPosition"
- if (job.title in GLOB.command_positions)
- position_class = "commandPosition"
- dat += "[job.title] ([job.current_positions]) "
- if(!job_count) //if there's nowhere to go, overflow opens up.
for(var/datum/job/job in SSjob.occupations)
- if(job.title != SSjob.overflow_role)
+ if(job && IsJobUnavailable(job.title, TRUE) == JOB_AVAILABLE)
+ var/categorized = FALSE
+ for(var/jobcat in categorizedJobs)
+ var/list/jobs = categorizedJobs[jobcat]["jobs"]
+ if(job.title in categorizedJobs[jobcat]["titles"])
+ categorized = TRUE
+ if(jobcat == "Command")
+
+ if(job.title == "Captain") // Put captain at top of command jobs
+ jobs.Insert(1, job)
+ else
+ jobs += job
+ else // Put heads at top of non-command jobs
+ if(job.title in GLOB.command_positions)
+ jobs.Insert(1, job)
+ else
+ jobs += job
+ if(!categorized)
+ categorizedJobs["Miscellaneous"]["jobs"] += job
+
+
+ dat += "
"
+ for(var/jobcat in categorizedJobs)
+ if(categorizedJobs[jobcat]["colBreak"])
+ dat += "
"
+ if(!length(categorizedJobs[jobcat]["jobs"]))
continue
- dat += "[job.title] ([job.current_positions]) "
- break
- for(var/spawner in GLOB.mob_spawners)
- job_count++
- if(job_count > round(available_job_count / 2))
- dat += "[spawner] (G) "
- dat += ""
+ var/color = categorizedJobs[jobcat]["color"]
+ dat += " "
+ dat += "
"
+ dat += "
"
// Removing the old window method but leaving it here for reference
//src << browse(dat, "window=latechoices;size=300x640;can_close=1")
// Added the new browser window method
- var/datum/browser/popup = new(src, "latechoices", "Choose Profession", 440, 500)
+ var/datum/browser/popup = new(src, "latechoices", "Choose Profession", 680, 580)
popup.add_stylesheet("playeroptions", 'html/browser/playeroptions.css')
popup.set_content(dat)
- popup.open(0) // 0 is passed to open so that it doesn't use the onclose() proc
+ popup.open(FALSE) // FALSE is passed to open so that it doesn't use the onclose() proc
/mob/dead/new_player/proc/create_character(transfer_after)