diff --git a/code/controllers/subsystem/jobs.dm b/code/controllers/subsystem/jobs.dm
index ef35a1923ee..ee3c35642f8 100644
--- a/code/controllers/subsystem/jobs.dm
+++ b/code/controllers/subsystem/jobs.dm
@@ -59,12 +59,11 @@ var/datum/subsystem/job/SSjob
var/position_limit = job.total_positions
if(!latejoin)
position_limit = job.spawn_positions
- if((job.current_positions < position_limit) || position_limit == -1)
- Debug("Player: [player] is now Rank: [rank], JCP:[job.current_positions], JPL:[position_limit]")
- player.mind.assigned_role = rank
- unassigned -= player
- job.current_positions++
- return 1
+ Debug("Player: [player] is now Rank: [rank], JCP:[job.current_positions], JPL:[position_limit]")
+ player.mind.assigned_role = rank
+ unassigned -= player
+ job.current_positions++
+ return 1
Debug("AR has failed, Player: [player], Rank: [rank]")
return 0
diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm
index a05337f3f68..2b2672214c7 100644
--- a/code/modules/admin/admin.dm
+++ b/code/modules/admin/admin.dm
@@ -815,22 +815,29 @@ var/global/floorIsLava = 0
var/J_title = html_encode(job.title)
var/J_opPos = html_encode(job.total_positions - (job.total_positions - job.current_positions))
var/J_totPos = html_encode(job.total_positions)
- if(job.total_positions <= 0)
- dat += "[J_title]: [J_opPos]"
+ if(job.total_positions < 0)
+ dat += "[J_title]: [J_opPos] (unlimited)"
else
dat += "[J_title]: [J_opPos]/[J_totPos]"
- if(initial(job.total_positions) > 0)
+
+ if(job.title == "AI" || job.title == "Cyborg")
+ dat += " (Cannot Late Join)
"
+ continue
+ if(job.total_positions >= 0)
dat += " Add | "
if(job.total_positions > job.current_positions)
- dat += "Remove"
+ dat += "Remove | "
else
- dat += "Remove"
+ dat += "Remove | "
+ dat += "Unlimit"
+ else
+ dat += " Limit"
dat += "
"
dat += "