/obj/machinery/computer/crew New() tracked = list() ..() attack_ai(mob/user) attack_hand(user) interact(user) attack_hand(mob/user) add_fingerprint(user) if(stat & (BROKEN|NOPOWER)) return interact(user) process() return power_change() if(stat & BROKEN) icon_state = "broken" else if( powered() ) icon_state = initial(icon_state) stat &= ~NOPOWER else spawn(rand(0, 15)) src.icon_state = "c_unpowered" stat |= NOPOWER Topic(href, href_list) ..() if( href_list["close"] ) usr << browse(null, "window=crewcomp") usr.machine = null return if(href_list["update"]) src.updateDialog() return 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=powcomp") return user.machine = src src.scan() var/t = "Crew Monitoring
" t += "
Refresh" t += "
Close" t += "" for(var/obj/item/clothing/under/C in src.tracked) if((C) && (C.has_sensor) && (C.loc) && (C.loc.z == 1)) if(istype(C.loc, /mob/living/carbon/human)) var/mob/living/carbon/human/H = C.loc var/dam1 = round(H.oxyloss,1) var/dam2 = round(H.toxloss,1) var/dam3 = round(H.fireloss,1) var/dam4 = round(H.bruteloss,1) switch(C.sensor_mode) if(1) if(H.wear_id) t += "" if(2) if(H.wear_id) t += "" if(3) t += "" t += "
NameVitalsPosition
[H.wear_id.name]" else t += "
Unknown:" t+= "[H.stat > 1 ? "Deceased" : "Living"]Not Available
[H.wear_id.name]" else t += "
Unknown:" t += "[H.stat > 1 ? "Deceased" : "Living"], [dam1] - [dam2] - [dam3] - [dam4]Not Available
[H.name][H.stat > 1 ? "Deceased" : "Living"], [dam2] - [dam2] - [dam3] - [dam4][get_area(H)] ([H.x], [H.y])
" t += "
" user << browse(t, "window=crewcomp;size=500x800") onclose(user, "crewcomp") scan() for(var/obj/item/clothing/under/C in world) if((C.has_sensor) && (istype(C.loc, /mob/living/carbon/human))) var/check = 0 for(var/O in src.tracked) if(O == C) check = 1 break if(!check) src.tracked.Add(C) return 1