mirror of
https://github.com/PolarisSS13/Polaris.git
synced 2025-12-22 16:12:36 +00:00
98 lines
3.0 KiB
Plaintext
98 lines
3.0 KiB
Plaintext
//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 = "<HEAD><TITLE>Operating Computer</TITLE><META HTTP-EQUIV='Refresh' CONTENT='10'></HEAD><BODY>\n"
|
|
dat += "<A HREF='?src=\ref[user];mach_close=op'>Close</A><br><br>" //| <A HREF='?src=\ref[user];update=1'>Update</A>"
|
|
if(src.table && (src.table.check_victim()))
|
|
src.victim = src.table.victim
|
|
if(istype(victim))
|
|
dat += {"
|
|
<B>Patient Information:</B><BR>
|
|
<BR>
|
|
<B>Name:</B> [src.victim.real_name]<BR>
|
|
<B>Age:</B> [src.victim.age]<BR>
|
|
<B>Blood Type:</B> [(victim.dna? victim.dna.b_type : "ERROR")]<BR>
|
|
<BR>
|
|
<B>Health:</B> [src.victim.health]<BR>
|
|
<B>Brute Damage:</B> [src.victim.getBruteLoss()]<BR>
|
|
<B>Toxins Damage:</B> [src.victim.getToxLoss()]<BR>
|
|
<B>Fire Damage:</B> [src.victim.getFireLoss()]<BR>
|
|
<B>Suffocation Damage:</B> [src.victim.getOxyLoss()]<BR>
|
|
<B>Patient Status:</B> [src.victim.stat ? "Non-Responsive" : "Stable"]<BR>
|
|
"}
|
|
else if(istype(victim, /mob/living))
|
|
dat += {"
|
|
<B>Patient Information:</B><BR>
|
|
<BR>
|
|
<B>Name:</B> [src.victim.real_name]<BR>
|
|
<B>Age:</B> [src.victim.age]<BR>
|
|
<B>Health:</B> [src.victim.health]<BR>
|
|
<B>Brute Damage:</B> [src.victim.getBruteLoss()]<BR>
|
|
<B>Toxins Damage:</B> [src.victim.getToxLoss()]<BR>
|
|
<B>Fire Damage:</B> [src.victim.getFireLoss()]<BR>
|
|
<B>Suffocation Damage:</B> [src.victim.getOxyLoss()]<BR>
|
|
<B>Patient Status:</B> [src.victim.stat ? "Non-Responsive" : "Stable"]<BR>
|
|
"}
|
|
else
|
|
src.victim = null
|
|
dat += {"
|
|
<B>Patient Information:</B><BR>
|
|
<BR>
|
|
<B>No Patient Detected</B>
|
|
"}
|
|
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()
|