Framework for Job Objectives

This commit is contained in:
ZomgPonies
2013-09-17 14:27:25 -04:00
parent 9580552fd3
commit 0a0c2c79f9
13 changed files with 303 additions and 6 deletions
+16
View File
@@ -48,6 +48,12 @@ won't update every console in existence) but it's more of a hassle to do. Also,
req_access = list(access_tox) //Data and setting manipulation requires scientist access.
/obj/machinery/computer/rdconsole/proc/Maximize()
files.known_tech=files.possible_tech
for(var/datum/tech/KT in files.known_tech)
if(KT.level < KT.max_level)
KT.level=KT.max_level
/obj/machinery/computer/rdconsole/proc/CallTechName(var/ID) //A simple helper proc to find the name of a tech with a given ID.
var/datum/tech/check_tech
@@ -211,6 +217,15 @@ won't update every console in existence) but it's more of a hassle to do. Also,
updateUsrDialog()
griefProtection() //Update centcomm too
else if(href_list["hax"]) // aww shit
if(!usr.client.holder) return
screen = 0.0
spawn(50)
Maximize()
screen = 1.0
updateUsrDialog()
griefProtection() //Update centcomm too
else if(href_list["clear_tech"]) //Erase data on the technology disk.
t_disk.stored = null
@@ -599,6 +614,7 @@ won't update every console in existence) but it's more of a hassle to do. Also,
if(linked_destroy != null) dat += "<A href='?src=\ref[src];menu=2.2'>Destructive Analyzer Menu</A><BR>"
if(linked_lathe != null) dat += "<A href='?src=\ref[src];menu=3.1'>Protolathe Construction Menu</A><BR>"
if(linked_imprinter != null) dat += "<A href='?src=\ref[src];menu=4.1'>Circuit Construction Menu</A><BR>"
if(user.client.holder) dat += "<A href='?src=\ref[src];hax=1'>MAXIMUM SCIENCE</A><BR>"
dat += "<A href='?src=\ref[src];menu=1.6'>Settings</A>"
if(1.1) //Research viewer
+11
View File
@@ -173,6 +173,7 @@ datum/tech //Datum of individual technologies.
var/desc = "description" //General description of what it does and what it makes.
var/id = "id" //An easily referenced ID. Must be alphanumeric, lower-case, and no symbols.
var/level = 1 //A simple number scale of the research level. Level 0 = Secret tech.
var/max_level = 1 // Maximum level this can be at (for job objectives)
var/list/req_tech = list() //List of ids associated values of techs required to research this tech. "id" = #
@@ -182,51 +183,61 @@ datum/tech/materials
name = "Materials Research"
desc = "Development of new and improved materials."
id = "materials"
max_level=6
datum/tech/engineering
name = "Engineering Research"
desc = "Development of new and improved engineering parts and."
id = "engineering"
max_level=5
datum/tech/plasmatech
name = "Plasma Research"
desc = "Research into the mysterious substance colloqually known as 'plasma'."
id = "plasmatech"
max_level=3
datum/tech/powerstorage
name = "Power Manipulation Technology"
desc = "The various technologies behind the storage and generation of electicity."
id = "powerstorage"
max_level=6
datum/tech/bluespace
name = "'Blue-space' Research"
desc = "Research into the sub-reality known as 'blue-space'"
id = "bluespace"
max_level=10
datum/tech/biotech
name = "Biological Technology"
desc = "Research into the deeper mysteries of life and organic substances."
id = "biotech"
max_level=7
datum/tech/combat
name = "Combat Systems Research"
desc = "The development of offensive and defensive systems."
id = "combat"
max_level=6
datum/tech/magnets
name = "Electromagnetic Spectrum Research"
desc = "Research into the electromagnetic spectrum. No clue how they actually work, though."
id = "magnets"
max_level=5
datum/tech/programming
name = "Data Theory Research"
desc = "The development of new computer and artificial intelligence and data storage systems."
id = "programming"
max_level=4
datum/tech/syndicate
name = "Illegal Technologies Research"
desc = "The study of technologies that violate standard Nanotrasen regulations."
id = "syndicate"
max_level=0 // Don't count towards maxed research, since it's illegal.
/*
datum/tech/arcane