diff --git a/code/datums/datacore.dm b/code/datums/datacore.dm
index ab79808cf3..ac5ebee68c 100644
--- a/code/datums/datacore.dm
+++ b/code/datums/datacore.dm
@@ -17,6 +17,7 @@
var/list/eng = new()
var/list/med = new()
var/list/sci = new()
+ var/list/car = new()
var/list/civ = new()
var/list/bot = new()
var/list/misc = new()
@@ -67,6 +68,9 @@
if(real_rank in science_positions)
sci[name] = rank
department = 1
+ if(real_rank in cargo_positions)
+ car[name] = rank
+ department = 1
if(real_rank in civilian_positions)
civ[name] = rank
department = 1
@@ -100,6 +104,11 @@
for(name in sci)
dat += "
| [name] | [sci[name]] | [isactive[name]] |
"
even = !even
+ if(car.len > 0)
+ dat += "| Cargo |
"
+ for(name in car)
+ dat += "| [name] | [car[name]] | [isactive[name]] |
"
+ even = !even
if(civ.len > 0)
dat += "| Civilian |
"
for(name in civ)
diff --git a/code/defines/obj.dm b/code/defines/obj.dm
index c3082d188f..602008ccd7 100644
--- a/code/defines/obj.dm
+++ b/code/defines/obj.dm
@@ -72,6 +72,7 @@ var/global/ManifestJSON
var/eng[0]
var/med[0]
var/sci[0]
+ var/car[0]
var/civ[0]
var/bot[0]
var/misc[0]
@@ -113,6 +114,12 @@ var/global/ManifestJSON
department = 1
if(depthead && sci.len != 1)
sci.Swap(1,sci.len)
+
+ if(real_rank in cargo_positions)
+ car[++car.len] = list("name" = name, "rank" = rank, "active" = isactive)
+ department = 1
+ if(depthead && car.len != 1)
+ car.Swap(1,car.len)
if(real_rank in civilian_positions)
civ[++civ.len] = list("name" = name, "rank" = rank, "active" = isactive)
@@ -134,6 +141,7 @@ var/global/ManifestJSON
"eng" = eng,\
"med" = med,\
"sci" = sci,\
+ "car" = car,\
"civ" = civ,\
"bot" = bot,\
"misc" = misc\
diff --git a/code/game/jobs/jobs.dm b/code/game/jobs/jobs.dm
index 135da6bb60..35026659dd 100644
--- a/code/game/jobs/jobs.dm
+++ b/code/game/jobs/jobs.dm
@@ -86,6 +86,12 @@ var/list/science_positions = list(
)
//BS12 EDIT
+var/list/cargo_positions = list(
+ "Quartermaster",
+ "Cargo Technician",
+ "Shaft Miner"
+)
+
var/list/civilian_positions = list(
"Head of Personnel",
"Bartender",
@@ -93,9 +99,6 @@ var/list/civilian_positions = list(
"Chef",
"Janitor",
"Librarian",
- "Quartermaster",
- "Cargo Technician",
- "Shaft Miner",
"Lawyer",
"Chaplain",
"Assistant"
diff --git a/nano/css/shared.css b/nano/css/shared.css
index b7c9bd66df..14a6c5c55d 100644
--- a/nano/css/shared.css
+++ b/nano/css/shared.css
@@ -555,6 +555,12 @@ th.sci {
color: #ffffff;
}
+th.car {
+ background: #bb9040;
+ font-weight: bold;
+ color: #ffffff;
+}
+
th.civ {
background: #a32800;
font-weight: bold;
diff --git a/nano/templates/pda.tmpl b/nano/templates/pda.tmpl
index 3bb864fd01..37ac74f7e0 100644
--- a/nano/templates/pda.tmpl
+++ b/nano/templates/pda.tmpl
@@ -346,6 +346,16 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm
| {{:value.name}} | {{:value.rank}} | {{:value.active}} |
{{/if}}
{{/for}}
+ {{/if}}
+ {{if data.manifest.car.length}}
+ | Cargo |
+ {{for data.manifest["car"]}}
+ {{if value.rank == "Quartermaster"}}
+ | {{:value.name}} | {{:value.rank}} | {{:value.active}} |
+ {{else}}
+ | {{:value.name}} | {{:value.rank}} | {{:value.active}} |
+ {{/if}}
+ {{/for}}
{{/if}}
{{if data.manifest.civ.length}}
| Civilian |