/obj/machinery/computer/operating name = "Operating Computer" density = 1 anchored = 1.0 icon = 'icons/obj/computer.dmi' icon_state = "operating" desc = "Shows information on a patient laying on an operating table." power_usage = 500 var/mob/living/carbon/human/victim = null var/obj/machinery/optable/table = null var/id = 0.0 /obj/machinery/computer/operating/New() ..() spawn(5) src.table = locate(/obj/machinery/optable, orange(2,src)) /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/attackby(I as obj, user as mob) if(istype(I, /obj/item/screwdriver)) playsound(src.loc, "sound/items/Screwdriver.ogg", 50, 1) if(do_after(user, 20)) if (src.stat & BROKEN) boutput(user, "The broken glass falls out.") var/obj/computerframe/A = new /obj/computerframe( src.loc ) if(src.material) A.setMaterial(src.material) new /obj/item/raw_material/shard/glass( src.loc ) var/obj/item/circuitboard/operating/M = new /obj/item/circuitboard/operating( A ) for (var/obj/C in src) C.set_loc(src.loc) A.circuit = M A.state = 3 A.icon_state = "3" A.anchored = 1 qdel(src) else boutput(user, "You disconnect the monitor.") var/obj/computerframe/A = new /obj/computerframe( src.loc ) if(src.material) A.setMaterial(src.material) var/obj/item/circuitboard/operating/M = new /obj/item/circuitboard/operating( A ) for (var/obj/C in src) C.set_loc(src.loc) A.circuit = M A.state = 4 A.icon_state = "4" A.anchored = 1 qdel(src) else src.attack_hand(user) return /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
" dat += "Close

" //| Update" if(src.table && (src.table.check_victim())) src.victim = src.table.victim dat += {" Patient Information:

Name: [src.victim.real_name]
Age: [src.victim.bioHolder.age]
Blood Type: [src.victim.bioHolder.bloodType]

Health: [src.victim.health]
Brute Damage: [src.victim.get_brute_damage()]
Toxins Damage: [src.victim.get_toxin_damage()]
Fire Damage: [src.victim.get_burn_damage()]
Suffocation Damage: [src.victim.get_oxygen_deprivation()]
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 // if (href_list["update"]) // src.interact(usr) return /obj/machinery/computer/operating/process() ..() if (stat & (BROKEN | NOPOWER)) return use_power(250) src.updateDialog()