Updating Database....
"
if(0.1) dat += "Processing and Updating Database...
"
if(0.3)
dat += "Constructing Prototype. Please Wait...
"
if(0.4)
dat += "Imprinting Circuit. Please Wait...
"
if(1.0) //Main Menu
dat += ""
for(var/datum/tech/T in files.known_tech)
if(T.level <= 0)
continue
dat += "[T.name]
"
dat += "* Level: [T.level]
"
dat += "* Summary: [T.desc]
"
dat += ""
if(1.2) //Technology Disk Menu
dat += ""
if(d_disk.blueprint == null)
dat += "The disk has no data stored on it.
"
dat += "Operations: "
dat += "No Item Loaded. Standing-by...
"
if(2.2)
dat += "Item is neither reliable enough or broken enough to learn from.
"
/////////////////////PROTOLATHE SCREENS/////////////////////////
if(3.0)
dat += ""
dat += "
Protolathe Menu:
"
dat += "
Material Amount: [linked_lathe.materials.total_amount] / [linked_lathe.materials.max_amount]
"
dat += "
Chemical Volume: [linked_lathe.reagents.total_volume] / [linked_lathe.reagents.maximum_volume]
"
dat += "
"
dat += list_categories(linked_lathe.categories, 3.15)
//Grouping designs by categories, to improve readability
if(3.15)
dat += "
Main Menu"
dat += "
Protolathe Menu"
dat += "
Browsing [selected_category]:
"
dat += "
Material Amount: [linked_lathe.materials.total_amount] / [linked_lathe.materials.max_amount]
"
dat += "
Chemical Volume: [linked_lathe.reagents.total_volume] / [linked_lathe.reagents.maximum_volume]
"
for(var/datum/design/D in files.known_designs)
if(!(selected_category in D.category)|| !(D.build_type & PROTOLATHE))
continue
var/temp_material
var/c = 50
var/t
for(var/M in D.materials)
t = linked_lathe.check_mat(D, M)
temp_material += " | "
if (t < 1)
temp_material += "
[D.materials[M]] [CallMaterialName(M)]"
else
temp_material += " [D.materials[M]] [CallMaterialName(M)]"
c = min(c,t)
for(var/R in D.reagents)
t = linked_lathe.check_mat(D, R)
temp_material += " | "
if (t < 1)
temp_material += "
[D.reagents[R]] [CallMaterialName(R)]"
else
temp_material += " [D.reagents[R]] [CallMaterialName(R)]"
c = min(c,t)
if (c >= 1)
dat += "
[D.name]"
if(c >= 5)
dat += "
x5"
if(c >= 10)
dat += "
x10"
dat += "[temp_material]"
else
dat += "
[D.name][temp_material]"
if(D.locked)
dat += " |
LOCKED"
dat += "
"
dat += "
"
if(3.17) //Display search result
dat += "
Main Menu"
dat += "
Protolathe Menu"
dat += "
Search results:
"
dat += "
Material Amount: [linked_lathe.materials.total_amount] / [linked_lathe.materials.max_amount]
"
dat += "
Chemical Volume: [linked_lathe.reagents.total_volume] / [linked_lathe.reagents.maximum_volume]
"
for(var/datum/design/D in matching_designs)
var/temp_material
var/c = 50
var/t
for(var/M in D.materials)
t = linked_lathe.check_mat(D, M)
temp_material += " | "
if (t < 1)
temp_material += "
[D.materials[M]] [CallMaterialName(M)]"
else
temp_material += " [D.materials[M]] [CallMaterialName(M)]"
c = min(c,t)
for(var/R in D.reagents)
t = linked_lathe.check_mat(D, R)
temp_material += " | "
if (t < 1)
temp_material += "
[D.reagents[R]] [CallMaterialName(R)]"
else
temp_material += " [D.reagents[R]] [CallMaterialName(R)]"
c = min(c,t)
if (c >= 1)
dat += "
[D.name]"
if(c >= 5)
dat += "
x5"
if(c >= 10)
dat += "
x10"
dat += "[temp_material]"
else
dat += "
[D.name][temp_material]"
dat += "
"
dat += "
"
if(3.2) //Protolathe Material Storage Sub-menu
dat += "
Main Menu"
dat += "
Protolathe Menu"
dat += "
Material Storage:
"
//Metal
var/m_amount = linked_lathe.materials.amount(MAT_METAL)
dat += "* [m_amount] of Metal, [round(m_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(m_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(m_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(m_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Glass
var/g_amount = linked_lathe.materials.amount(MAT_GLASS)
dat += "* [g_amount] of Glass, [round(g_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(g_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(g_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(g_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Gold
var/gold_amount = linked_lathe.materials.amount(MAT_GOLD)
dat += "* [gold_amount] of Gold, [round(gold_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(gold_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(gold_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(gold_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Silver
var/silver_amount = linked_lathe.materials.amount(MAT_SILVER)
dat += "* [silver_amount] of Silver, [round(silver_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(silver_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(silver_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(silver_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Plasma
var/plasma_amount = linked_lathe.materials.amount(MAT_PLASMA)
dat += "* [plasma_amount] of Solid Plasma, [round(plasma_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(plasma_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(plasma_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(plasma_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Uranium
var/uranium_amount = linked_lathe.materials.amount(MAT_URANIUM)
dat += "* [uranium_amount] of Uranium, [round(uranium_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(uranium_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(uranium_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(uranium_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Diamond
var/diamond_amount = linked_lathe.materials.amount(MAT_DIAMOND)
dat += "* [diamond_amount] of Diamond, [round(diamond_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(diamond_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(diamond_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(diamond_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Bananium
var/bananium_amount = linked_lathe.materials.amount(MAT_BANANIUM)
dat += "* [bananium_amount] of Bananium, [round(bananium_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(bananium_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(bananium_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(bananium_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
//Tranquillite
var/tranquillite_amount = linked_lathe.materials.amount(MAT_TRANQUILLITE)
dat += "* [tranquillite_amount] of Tranquillite, [round(tranquillite_amount / MINERAL_MATERIAL_AMOUNT,0.1)] sheets: "
if(tranquillite_amount >= MINERAL_MATERIAL_AMOUNT)
dat += "
Eject "
dat += "
C "
if(tranquillite_amount >= MINERAL_MATERIAL_AMOUNT*5) dat += "
5x "
if(tranquillite_amount >= MINERAL_MATERIAL_AMOUNT) dat += "
All"
dat += "
"
if(3.3)
dat += "