//This file was auto-corrected by findeclaration.exe on 29/05/2012 15:03:05
#define STATE_DEFAULT 1
#define STATE_INJECTOR 2
#define STATE_ENGINE 3
/obj/machinery/computer/am_engine
name = "Antimatter Engine Console"
icon = 'icons/obj/stationobjs.dmi'
icon_state = "comm_computer"
req_access = list(ACCESS_ENGINE)
var/engine_id = 0
var/authenticated = 0
var/obj/machinery/power/am_engine/engine/connected_E = null
var/obj/machinery/power/am_engine/injector/connected_I = null
var/state = STATE_DEFAULT
/obj/machinery/computer/am_engine/Initialize(mapload)
. = ..()
for(var/obj/machinery/power/am_engine/engine/E in world)
if(E.engine_id == src.engine_id)
src.connected_E = E
for(var/obj/machinery/power/am_engine/injector/I in world)
if(I.engine_id == src.engine_id)
src.connected_I = I
/obj/machinery/computer/am_engine/Topic(href, href_list)
if(..())
return
usr.machine = src
if(!href_list["operation"])
return
switch(href_list["operation"])
// main interface
if("activate")
src.connected_E.engine_process()
if("engine")
src.state = STATE_ENGINE
if("injector")
src.state = STATE_INJECTOR
if("main")
src.state = STATE_DEFAULT
if("login")
var/mob/M = usr
var/obj/item/card/id/I = M.get_active_hand()
if (I && istype(I))
if(src.check_access(I))
authenticated = 1
if("deactivate")
src.connected_E.stopping = 1
if("logout")
authenticated = 0
src.updateUsrDialog(usr)
/obj/machinery/computer/am_engine/attack_ai(var/mob/user as mob)
return src.attack_hand(user)
/obj/machinery/computer/am_engine/attack_hand(var/mob/user as mob)
if(..())
return
user.machine = src
var/dat = ""
switch(src.state)
if(STATE_DEFAULT)
if (src.authenticated)
dat += "
\[ Log Out \]
"
dat += "
\[ Engine Menu \]"
dat += "
\[ Injector Menu \]"
else
dat += "
\[ Log In \]"
if(STATE_INJECTOR)
if(src.connected_I.injecting)
dat += "
\[ Injecting \]
"
else
dat += "
\[ Injecting not in progress \]
"
if(STATE_ENGINE)
if(src.connected_E.stopping)
dat += "
\[ STOPPING \]"
else if(src.connected_E.operating && !src.connected_E.stopping)
dat += "
\[ Emergency Stop \]"
else
dat += "
\[ Activate Engine \]"
dat += "
Contents:
[src.connected_E.H_fuel]kg of Hydrogen
[src.connected_E.antiH_fuel]kg of Anti-Hydrogen
"
dat += "
\[ [(src.state != STATE_DEFAULT) ? "Main Menu | " : ""]Close \]"
var/datum/browser/popup = new(user, "communications", "Communications", 400, 500)
popup.add_head_content("