Adds Nanite & Wound scans to ghost; Adds Med/Chem/nanite/Wound Scan UI Elements (#15932)

* kill me

* Why do the geneva convention prevent us from having anything red and plus shaped.
This commit is contained in:
Redmoogle
2022-10-01 08:15:30 -04:00
committed by GitHub
parent 7761f18e53
commit 8fe552108f
10 changed files with 98 additions and 10 deletions

View File

@@ -193,3 +193,7 @@
#define ui_ghost_spawners "SOUTH: 6, CENTER+1:24"
#define ui_ghost_language_menu "SOUTH: 22,CENTER+2:8"
#define ui_ghost_pai "SOUTH: 6,CENTER+2:8"
#define ui_ghost_med "SOUTH: 6,CENTER+3:-8"
#define ui_ghost_chem "SOUTH: 22,CENTER+3:-8"
#define ui_ghost_nanite "SOUTH: 6,CENTER+3:8"
#define ui_ghost_wound "SOUTH: 22,CENTER+3:8"

View File

@@ -68,6 +68,22 @@
using.screen_loc = ui_ghost_spawners
static_inventory += using
using = new /obj/screen/ghost/med_scan()
using.screen_loc = ui_ghost_med
static_inventory += using
using = new /obj/screen/ghost/chem_scan()
using.screen_loc = ui_ghost_chem
static_inventory += using
using = new /obj/screen/ghost/nanite_scan()
using.screen_loc = ui_ghost_nanite
static_inventory += using
using = new /obj/screen/ghost/wound_scan()
using.screen_loc = ui_ghost_wound
static_inventory += using
using = new /obj/screen/ghost/pai()
using.screen_loc = ui_ghost_pai
static_inventory += using

View File

@@ -102,6 +102,46 @@
var/mob/dead/observer/G = usr
G.register_pai()
/obj/screen/ghost/med_scan
name = "Toggle Medical Scan"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "med_scan"
screen_loc = ui_ghost_med
/obj/screen/ghost/med_scan/Click()
var/mob/dead/observer/G = usr
G.toggle_health_scan()
/obj/screen/ghost/chem_scan
name = "Toggle Chemical Scan"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "chem_scan"
screen_loc = ui_ghost_chem
/obj/screen/ghost/chem_scan/Click()
var/mob/dead/observer/G = usr
G.toggle_chemical_scan()
/obj/screen/ghost/nanite_scan
name = "Toggle Nanite Scan"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "nanite_scan"
screen_loc = ui_ghost_nanite
/obj/screen/ghost/nanite_scan/Click()
var/mob/dead/observer/G = usr
G.toggle_nanite_scan()
/obj/screen/ghost/wound_scan
name = "Toggle Wound Scan"
icon = 'icons/mob/screen_midnight.dmi'
icon_state = "wound_scan"
screen_loc = ui_ghost_wound
/obj/screen/ghost/wound_scan/Click()
var/mob/dead/observer/G = usr
G.toggle_wound_scan()
/obj/screen/language_menu/ghost
screen_loc = ui_ghost_language_menu

View File

@@ -1,3 +1,8 @@
#define SCAN_CHEM (1<<0)
#define SCAN_HEALTH (1<<1)
#define SCAN_NANITE (1<<2)
#define SCAN_WOUND (1<<3)
/mob/dead/observer/DblClickOn(atom/A, params)
if(check_click_intercept(params, A))
return
@@ -58,10 +63,17 @@
return FALSE
/mob/living/attack_ghost(mob/dead/observer/user)
if(user.client && user.health_scan)
healthscan(user, src, 1, TRUE)
if(user.client && user.chem_scan)
chemscan(user, src)
if(user?.client)
if(user.scanmode & SCAN_HEALTH)
healthscan(user, src, TRUE)
if(user.scanmode & SCAN_CHEM)
chemscan(user, src)
if(user.scanmode & SCAN_NANITE)
var/response = SEND_SIGNAL(src, COMSIG_NANITE_SCAN, user, TRUE)
if(!response)
to_chat(user, span_info("No nanites detected in the subject."))
if(user.scanmode & SCAN_WOUND)
woundscan(user, src)
return ..()
// ---------------------------------------