computer3 merge

This commit is contained in:
ZomgPonies
2013-11-03 14:18:54 -05:00
parent 88d6a3fbdc
commit 36c7fa3dcd
85 changed files with 9350 additions and 31 deletions
@@ -0,0 +1,29 @@
/*
Computer3 law changes:
* Laws are a file type
* Connecting to the AI requires a network connection
* Connecting to a borg requires a radio or network.
*/
/datum/file/ai_law
var/list/hacklaws = null
var/zerolaw = null
var/list/corelaws = null
var/list/auxlaws = null
var/configurable = 0
// override this when you need to be able to alter the parameters of the lawset
proc/configure()
return
execute(var/datum/file/program/source)
if(istype(usr,/mob/living/silicon))
return
if(istype(source,/datum/file/program/NTOS))
if(configurable)
configure()
return
if(istype(source,/datum/file/program/upload/ai))
@@ -0,0 +1,13 @@
/*
Note that as with existing ai upload, this is not an interactive program.
That means that the work is done in execute() rather than interact()
*/
/datum/file/program/upload/ai
execute(var/datum/file/program/source)
if(!interactable() || istype(usr,/mob/living/silicon))
return 0
if(!computer.net)
usr << "An indecipherable set of code flicks across the screen. Nothing else happens."
return
var/list/results = computer.net.get_machines