mirror of
https://github.com/Citadel-Station-13/Citadel-Station-13-RP.git
synced 2026-08-24 00:16:51 +01:00
refactors roles to be prototypes (#7323)
This commit is contained in:
@@ -346,7 +346,7 @@
|
||||
output += "<tr><td width='50%' align='right'><b>Duration:</b> <input type='text' name='dbbaddduration'></td>"
|
||||
output += "<td width='50%' align='right'><b>Job:</b><select name='dbbanaddjob'>"
|
||||
output += "<option value=''>--</option>"
|
||||
for(var/j in SSjob.all_job_titles())
|
||||
for(var/j in RSroles.legacy_all_job_titles())
|
||||
output += "<option value='[j]'>[j]</option>"
|
||||
for(var/j in SSjob.get_job_titles_in_department(DEPARTMENT_SYNTHETIC))
|
||||
output += "<option value='[j]'>[j]</option>"
|
||||
|
||||
@@ -970,7 +970,7 @@ var/list/admin_verbs_event_manager = list(
|
||||
set category = "Admin"
|
||||
if(holder)
|
||||
var/list/jobs = list()
|
||||
for (var/datum/role/job/J in SSjob.occupations)
|
||||
for (var/datum/prototype/role/job/J in RSroles.legacy_all_job_datums())
|
||||
if (J.current_positions >= J.total_positions && J.total_positions != -1)
|
||||
jobs += J.title
|
||||
if (!jobs.len)
|
||||
|
||||
+18
-18
@@ -394,7 +394,7 @@
|
||||
jobs += "<tr align='center' bgcolor='ccccff'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_COMMAND))]'><a href='?src=\ref[src];jobban3=commanddept;jobban4=\ref[M]'>Command Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_COMMAND))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -415,7 +415,7 @@
|
||||
jobs += "<tr bgcolor='ffddf0'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_SECURITY))]'><a href='?src=\ref[src];jobban3=securitydept;jobban4=\ref[M]'>Security Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_SECURITY))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -436,7 +436,7 @@
|
||||
jobs += "<tr bgcolor='fff5cc'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_ENGINEERING))]'><a href='?src=\ref[src];jobban3=engineeringdept;jobban4=\ref[M]'>Engineering Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_ENGINEERING))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -457,7 +457,7 @@
|
||||
jobs += "<tr bgcolor='fff5cc'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_CARGO))]'><a href='?src=\ref[src];jobban3=cargodept;jobban4=\ref[M]'>Cargo Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_CARGO))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -478,7 +478,7 @@
|
||||
jobs += "<tr bgcolor='ffeef0'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_MEDICAL))]'><a href='?src=\ref[src];jobban3=medicaldept;jobban4=\ref[M]'>Medical Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_MEDICAL))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -499,7 +499,7 @@
|
||||
jobs += "<tr bgcolor='e79fff'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_RESEARCH))]'><a href='?src=\ref[src];jobban3=sciencedept;jobban4=\ref[M]'>Science Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_RESEARCH))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -519,7 +519,7 @@
|
||||
jobs += "<tr bgcolor='e79fff'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_PLANET))]'><a href='?src=\ref[src];jobban3=sciencedept;jobban4=\ref[M]'>Science Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_PLANET))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -539,7 +539,7 @@
|
||||
jobs += "<tr bgcolor='dddddd'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_CIVILIAN))]'><a href='?src=\ref[src];jobban3=civiliandept;jobban4=\ref[M]'>Civilian Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_CIVILIAN))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -566,7 +566,7 @@
|
||||
jobs += "<tr bgcolor='ccffcc'><th colspan='[length(SSjob.get_job_titles_in_department(DEPARTMENT_SYNTHETIC))+1]'><a href='?src=\ref[src];jobban3=nonhumandept;jobban4=\ref[M]'>Non-human Positions</a></th></tr><tr align='center'>"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_SYNTHETIC))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/job = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!job) continue
|
||||
|
||||
if(jobban_isbanned(M, job.title))
|
||||
@@ -649,56 +649,56 @@
|
||||
if("commanddept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_COMMAND))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("securitydept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_SECURITY))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("engineeringdept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_ENGINEERING))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("cargodept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_CARGO))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("medicaldept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_MEDICAL))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("sciencedept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_RESEARCH))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("explorationdept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_PLANET))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("civiliandept")
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_CIVILIAN))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
if("nonhumandept")
|
||||
joblist += "pAI"
|
||||
for(var/jobPos in SSjob.get_job_titles_in_department(DEPARTMENT_SYNTHETIC))
|
||||
if(!jobPos) continue
|
||||
var/datum/role/job/temp = SSjob.get_job(jobPos)
|
||||
var/datum/prototype/role/job/temp = RSroles.legacy_job_by_title(jobPos)
|
||||
if(!temp) continue
|
||||
joblist += temp.title
|
||||
else
|
||||
|
||||
@@ -456,7 +456,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
|
||||
//Well you're not reloading their job or they never had one.
|
||||
if(!charjob)
|
||||
var/pickjob = input(src,"Pick a job to assign them (or none).","Job Select","-No Job-") as null|anything in SSjob.all_job_titles() + "-No Job-"
|
||||
var/pickjob = input(src,"Pick a job to assign them (or none).","Job Select","-No Job-") as null|anything in RSroles.legacy_all_job_titles() + "-No Job-"
|
||||
if(!pickjob)
|
||||
return
|
||||
if(pickjob != "-No Job-")
|
||||
@@ -649,7 +649,7 @@ Traitors and the like can also be revived with the previous role mostly intact.
|
||||
to_chat(src, "Only administrators may use this command.")
|
||||
return
|
||||
if(SSjob)
|
||||
for(var/datum/role/job/job in SSjob.occupations)
|
||||
for(var/datum/prototype/role/job/job in RSroles.legacy_all_job_datums())
|
||||
to_chat(src, "[job.title]: [job.total_positions]")
|
||||
feedback_add_details("admin_verb","LFS") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
|
||||
|
||||
|
||||
@@ -7,7 +7,7 @@
|
||||
return
|
||||
|
||||
if(SSjob && SSticker)
|
||||
var/datum/role/job/job = SSjob.get_job("AI")
|
||||
var/datum/prototype/role/job/job = RSroles.legacy_job_by_title("AI")
|
||||
if(!job)
|
||||
to_chat(usr, "Unable to locate the AI job")
|
||||
return
|
||||
|
||||
Reference in New Issue
Block a user