Cleans up PDA Manifest template (#4540)

* Cleans up PDA Manifest template, adds Planetside and Silicon sections

* Cleanups up some testing code

* A rogue space-indented line

* Hides empty manifest categories
This commit is contained in:
Atermonera
2018-01-18 09:33:09 -08:00
committed by Anewbe
parent 5193178409
commit 7a6b0fd750
4 changed files with 62 additions and 105 deletions

View File

@@ -65,15 +65,16 @@ var/global/list/PDA_Manifest = list()
/datum/datacore/proc/get_manifest_list() /datum/datacore/proc/get_manifest_list()
if(PDA_Manifest.len) if(PDA_Manifest.len)
return return
var/heads[0] var/list/heads = list()
var/sec[0] var/list/sec = list()
var/eng[0] var/list/eng = list()
var/med[0] var/list/med = list()
var/sci[0] var/list/sci = list()
var/car[0] var/list/car = list()
var/civ[0] var/list/pla = list() // Planetside crew: Explorers, Pilots, S&S
var/bot[0] var/list/civ = list()
var/misc[0] var/list/bot = list()
var/list/misc = list()
for(var/datum/data/record/t in data_core.general) for(var/datum/data/record/t in data_core.general)
var/name = sanitize(t.fields["name"]) var/name = sanitize(t.fields["name"])
var/rank = sanitize(t.fields["rank"]) var/rank = sanitize(t.fields["rank"])
@@ -113,6 +114,10 @@ var/global/list/PDA_Manifest = list()
if(depthead && sci.len != 1) if(depthead && sci.len != 1)
sci.Swap(1,sci.len) sci.Swap(1,sci.len)
if(real_rank in planet_positions)
pla[++pla.len] = list("name" = name, "rank" = rank, "active" = isactive)
department = 1
if(real_rank in cargo_positions) if(real_rank in cargo_positions)
car[++car.len] = list("name" = name, "rank" = rank, "active" = isactive) car[++car.len] = list("name" = name, "rank" = rank, "active" = isactive)
department = 1 department = 1
@@ -133,16 +138,17 @@ var/global/list/PDA_Manifest = list()
misc[++misc.len] = list("name" = name, "rank" = rank, "active" = isactive) misc[++misc.len] = list("name" = name, "rank" = rank, "active" = isactive)
PDA_Manifest = list(\ PDA_Manifest = list(
"heads" = heads,\ list("cat" = "Command", "elems" = heads),
"sec" = sec,\ list("cat" = "Security", "elems" = sec),
"eng" = eng,\ list("cat" = "Engineering", "elems" = eng),
"med" = med,\ list("cat" = "Medical", "elems" = med),
"sci" = sci,\ list("cat" = "Science", "elems" = sci),
"car" = car,\ list("cat" = "Cargo", "elems" = car),
"civ" = civ,\ list("cat" = "Planetside", "elems" = pla),
"bot" = bot,\ list("cat" = "Civilian", "elems" = civ),
"misc" = misc\ list("cat" = "Silicon", "elems" = bot),
list("cat" = "Miscellaneous", "elems" = misc)
) )
return return

View File

@@ -113,6 +113,13 @@ var/list/security_positions = list(
) )
var/list/planet_positions = list(
"Explorer",
"Pilot",
"Search and Rescue"
)
var/list/nonhuman_positions = list( var/list/nonhuman_positions = list(
"AI", "AI",
"Cyborg", "Cyborg",

View File

@@ -600,49 +600,55 @@ table.pmon td, table.pmon th {
/* Table Stuffs for manifest*/ /* Table Stuffs for manifest*/
th.command { th.Command {
background: #3333FF; background: #3333FF;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;
} }
th.sec { th.Security {
background: #8e0000; background: #8e0000;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;
} }
th.med { th.Medical {
background: #006600; background: #006600;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;
} }
th.eng { th.Engineering {
background: #b27300; background: #b27300;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;
} }
th.sci { th.Science {
background: #a65ba6; background: #a65ba6;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;
} }
th.car { th.Cargo {
background: #bb9040; background: #bb9040;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;
} }
th.civ { th.Planetside{
background: #555555;
font-weight: bold;
color: #ffffff;
}
th.Civilian {
background: #a32800; background: #a32800;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;
} }
th.misc { th.Miscellaneous {
background: #666666; background: #666666;
font-weight: bold; font-weight: bold;
color: #ffffff; color: #ffffff;

View File

@@ -295,84 +295,22 @@ Used In File(s): \code\game\objects\items\devices\PDA\PDA.dm
{{else data.mode== 41}} <!-- Manifest uses cached data so we only use nanowriter when shit changes.--> {{else data.mode== 41}} <!-- Manifest uses cached data so we only use nanowriter when shit changes.-->
<div class="item"> <div class="item">
<center><table class="pmon"><tbody> <center><table class="pmon"><tbody>
{{if data.manifest.heads.length}} {{for data.manifest}}
<tr><th colspan="3" class="command">Command</th></tr> {{if value.elems.length}}
{{for data.manifest["heads"]}} <tr><th colspan="3" class={{:value.cat}}>{{:value.cat}}</th></tr>
{{if value.rank == "Captain"}} {{for value.elems :itemValue:itemIndex}}
<tr><td><span class="good">{{:value.name}}</span></td><td><span class="good">{{:value.rank}}</span></td><td><span class="good">{{:value.active}}</span></td></tr> <tr>
{{else}} <td><span class="average">{{:itemValue.name}}</span></td>
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr> <td><span class="average">{{:itemValue.rank}}</span></td>
{{/if}} <td><span class="average">{{:itemValue.active}}</span></td>
{{/for}} </tr>
{{/if}} {{/for}}
{{if data.manifest.sec.length}} {{/if}}
<tr><th colspan="3" class="sec">Security</th></tr> {{/for}}
{{for data.manifest["sec"]}}
{{if value.rank == "Head of Security"}}
<tr><td><span class="good">{{:value.name}}</span></td><td><span class="good">{{:value.rank}}</span></td><td><span class="good">{{:value.active}}</span></td></tr>
{{else}}
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr>
{{/if}}
{{/for}}
{{/if}}
{{if data.manifest.eng.length}}
<tr><th colspan="3" class="eng">Engineering</th></tr>
{{for data.manifest["eng"]}}
{{if value.rank == "Chief Engineer"}}
<tr><td><span class="good">{{:value.name}}</span></td><td><span class="good">{{:value.rank}}</span></td><td><span class="good">{{:value.active}}</span></td></tr>
{{else}}
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr>
{{/if}}
{{/for}}
{{/if}}
{{if data.manifest.med.length}}
<tr><th colspan="3" class="med">Medical</th></tr>
{{for data.manifest["med"]}}
{{if value.rank == "Chief Medical Officer"}}
<tr><td><span class="good">{{:value.name}}</span></td><td><span class="good">{{:value.rank}}</span></td><td><span class="good">{{:value.active}}</span></td></tr>
{{else}}
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr>
{{/if}}
{{/for}}
{{/if}}
{{if data.manifest.sci.length}}
<tr><th colspan="3" class="sci">Science</th></tr>
{{for data.manifest["sci"]}}
{{if value.rank == "Research Director"}}
<tr><td><span class="good">{{:value.name}}</span></td><td><span class="good">{{:value.rank}}</span></td><td><span class="good">{{:value.active}}</span></td></tr>
{{else}}
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr>
{{/if}}
{{/for}}
{{/if}}
{{if data.manifest.car.length}}
<tr><th colspan="3" class="car">Cargo</th></tr>
{{for data.manifest["car"]}}
{{if value.rank == "Quartermaster"}}
<tr><td><span class="good">{{:value.name}}</span></td><td><span class="good">{{:value.rank}}</span></td><td><span class="good">{{:value.active}}</span></td></tr>
{{else}}
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr>
{{/if}}
{{/for}}
{{/if}}
{{if data.manifest.civ.length}}
<tr><th colspan="3" class="civ">Civilian</th></tr>
{{for data.manifest["civ"]}}
{{if value.rank == "Head of Personnel"}}
<tr><td><span class="good">{{:value.name}}</span></td><td><span class="good">{{:value.rank}}</span></td><td><span class="good">{{:value.active}}</span></td></tr>
{{else}}
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr>
{{/if}}
{{/for}}
{{/if}}
{{if data.manifest.misc.length}}
<tr><th colspan="3" class="misc">Misc</th></tr>
{{for data.manifest["misc"]}}
<tr><td><span class="average">{{:value.name}}</span></td><td><span class="average">{{:value.rank}}</span></td><td><span class="average">{{:value.active}}</span></td></tr>
{{/for}}
{{/if}}
</tbody></table></center> </tbody></table></center>
</div> </div>