Localised implant detection.

This commit is contained in:
Segrain
2013-09-14 23:50:31 +03:00
parent bf5fde832e
commit c055f722dd
3 changed files with 13 additions and 25 deletions

View File

@@ -164,6 +164,7 @@
/obj/machinery/body_scanconsole /obj/machinery/body_scanconsole
var/obj/machinery/bodyscanner/connected var/obj/machinery/bodyscanner/connected
var/known_implants = list(/obj/item/weapon/implant/chem, /obj/item/weapon/implant/death_alarm, /obj/item/weapon/implant/loyalty, /obj/item/weapon/implant/tracking)
var/delete var/delete
var/temphtml var/temphtml
name = "Body Scanner Console" name = "Body Scanner Console"
@@ -265,25 +266,6 @@
if(!D.hidden[SCANNER]) if(!D.hidden[SCANNER])
dat += text("<font color='red'><B>Warning: [D.form] Detected</B>\nName: [D.name].\nType: [D.spread].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure]</FONT><BR>") dat += text("<font color='red'><B>Warning: [D.form] Detected</B>\nName: [D.name].\nType: [D.spread].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure]</FONT><BR>")
var/implnts = ""
for(var/obj/item/weapon/implant/I in occupant)
if(I in occupant)
if(I.implanted)
if(istype(I, /obj/item/weapon/implant/death_alarm))
implnts += "<font color='blue'>death alarm</font><br>"
if(istype(I, /obj/item/weapon/implant/loyalty))
implnts += "<font color='blue'>loyalty</font><br>"
if(istype(I, /obj/item/weapon/implant/chem))
implnts += "<font color='red'>chemical</font><br>"
if(istype(I, /obj/item/weapon/implant/tracking))
implnts += "<font color='red'>tracking</font><br>"
if(implnts)
dat += "<br>"
dat += "Detected implants: <br>"
dat += implnts
dat += "<HR><table border='1'>" dat += "<HR><table border='1'>"
dat += "<tr>" dat += "<tr>"
dat += "<th>Organ</th>" dat += "<th>Organ</th>"
@@ -315,8 +297,14 @@
AN = "[e.broken_description]:" AN = "[e.broken_description]:"
if(e.open) if(e.open)
open = "Open:" open = "Open:"
if(e.implants.len) var/unknown_body = 0
imp = "Unknown body present:" for(var/I in e.implants)
if(is_type_in_list(I,known_implants))
imp += "[I] implanted:"
else
unknown_body++
if(unknown_body)
imp += "Unknown body present:"
if(!AN && !open && !infected & !imp) if(!AN && !open && !infected & !imp)
AN = "None:" AN = "None:"
if(!(e.status & ORGAN_DESTROYED)) if(!(e.status & ORGAN_DESTROYED))

View File

@@ -50,7 +50,7 @@
..() ..()
/obj/item/weapon/implant/tracking /obj/item/weapon/implant/tracking
name = "tracking" name = "tracking implant"
desc = "Track with this." desc = "Track with this."
var/id = 1.0 var/id = 1.0
@@ -219,7 +219,7 @@ Implant Specifics:<BR>"}
del(src) del(src)
/obj/item/weapon/implant/chem /obj/item/weapon/implant/chem
name = "chem" name = "chemical implant"
desc = "Injects things." desc = "Injects things."
allow_reagents = 1 allow_reagents = 1
@@ -283,7 +283,7 @@ the implant may become unstable and either pre-maturely inject the subject or si
malfunction-- malfunction--
/obj/item/weapon/implant/loyalty /obj/item/weapon/implant/loyalty
name = "loyalty" name = "loyalty implant"
desc = "Makes you loyal or such." desc = "Makes you loyal or such."
get_data() get_data()

View File

@@ -7823,7 +7823,7 @@
"cUw" = (/obj/machinery/sleeper,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station) "cUw" = (/obj/machinery/sleeper,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station)
"cUx" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station) "cUx" = (/obj/machinery/sleep_console,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station)
"cUy" = (/obj/machinery/bodyscanner,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station) "cUy" = (/obj/machinery/bodyscanner,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station)
"cUz" = (/obj/machinery/body_scanconsole,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station) "cUz" = (/obj/machinery/body_scanconsole{known_implants = list(/obj/item/weapon/implant/cortical)},/turf/simulated/shuttle/floor4,/area/shuttle/vox/station)
"cUA" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/shuttle/vox/station) "cUA" = (/turf/space,/turf/simulated/shuttle/wall{icon_state = "diagonalWall3"},/area/shuttle/vox/station)
"cUB" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/plating,/area/shuttle/vox/station) "cUB" = (/obj/structure/shuttle/engine/heater,/turf/simulated/shuttle/plating,/area/shuttle/vox/station)
"cUC" = (/obj/structure/rack,/obj/item/clothing/tie/storage/black_vest,/obj/item/clothing/suit/space/vox/medic,/obj/item/clothing/head/helmet/space/vox/medic,/obj/item/clothing/mask/breath/vox,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station) "cUC" = (/obj/structure/rack,/obj/item/clothing/tie/storage/black_vest,/obj/item/clothing/suit/space/vox/medic,/obj/item/clothing/head/helmet/space/vox/medic,/obj/item/clothing/mask/breath/vox,/turf/simulated/shuttle/floor4,/area/shuttle/vox/station)