//This file was auto-corrected by findeclaration.exe on 29/05/2012 15:03:04
/obj/machinery/computer/operating
name = "Operating Computer"
density = 1
anchored = 1.0
desc = "Used to monitor status of people being operated on."
icon_state = "operating"
circuit = "/obj/item/weapon/circuitboard/operating"
var/mob/living/carbon/human/victim = null
var/obj/machinery/optable/table = null
/obj/machinery/computer/operating/New()
..()
for(dir in list(NORTH,EAST,SOUTH,WEST))
table = locate(/obj/machinery/optable, get_step(src, dir))
if (!isnull(table))
break
/obj/machinery/computer/operating/attack_ai(mob/user)
add_fingerprint(user)
if(stat & (BROKEN|NOPOWER))
return
interact(user)
/obj/machinery/computer/operating/attack_hand(mob/user)
add_fingerprint(user)
if(stat & (BROKEN|NOPOWER))
return
interact(user)
/obj/machinery/computer/operating/proc/interact(mob/user)
if ( (get_dist(src, user) > 1 ) || (stat & (BROKEN|NOPOWER)) )
if (!istype(user, /mob/living/silicon))
user.machine = null
user << browse(null, "window=op")
return
user.machine = src
var/dat = "
Operating Computer\n"
dat += "Close
" //| Update"
if(src.table && (src.table.check_victim()))
src.victim = src.table.victim
if(istype(victim))
dat += {"
Patient Information:
Name: [src.victim.real_name]
Age: [src.victim.age]
Blood Type: [(victim.dna? victim.dna.b_type : "ERROR")]
Health: [src.victim.health]
Brute Damage: [src.victim.getBruteLoss()]
Toxins Damage: [src.victim.getToxLoss()]
Fire Damage: [src.victim.getFireLoss()]
Suffocation Damage: [src.victim.getOxyLoss()]
Patient Status: [src.victim.stat ? "Non-Responsive" : "Stable"]
"}
else if(istype(victim, /mob/living))
dat += {"
Patient Information:
Name: [src.victim.real_name]
Age: [src.victim.age]
Health: [src.victim.health]
Brute Damage: [src.victim.getBruteLoss()]
Toxins Damage: [src.victim.getToxLoss()]
Fire Damage: [src.victim.getFireLoss()]
Suffocation Damage: [src.victim.getOxyLoss()]
Patient Status: [src.victim.stat ? "Non-Responsive" : "Stable"]
"}
else
src.victim = null
dat += {"
Patient Information:
No Patient Detected
"}
user << browse(dat, "window=op")
onclose(user, "op")
/obj/machinery/computer/operating/Topic(href, href_list)
if(..())
return
if ((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon)))
usr.machine = src
return
/obj/machinery/computer/operating/process()
if(!(stat & (NOPOWER|BROKEN)) )
use_power(500)
src.updateDialog()