Files
Yogstation/code/_onclick/hud/ghost.dm
Byemoh d93428fe4b [MDB IGNORE] [PRE-ALPHA] MiniStation (#22568)
* Create MiniStation new.dmm

* ministation

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* ministayion

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* actual changes oops

* Update MiniStation.dmm

* Update MiniStation.dmm

* miniaturestation

* Update maps.txt

* more fixes

* fixes broken path

* more fixes

* Update MiniStation.dmm

* Update MiniStation.dmm

* filters

* robotics changes

* fixes pipes

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* spawns + job overrides

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* more work

* Update MiniStation.dmm

* misc stuff

* maint stuff

* uopdates

* fixes bad area and chair

* tool storage + fixes

* mining APC

* cargo + hooks up some disposals

* more disposals + launcher

* lights

* more fixes

* Update MiniStation.dmm

* Update MiniStation.dmm

* more fixes

* sink

* remove sign

* expand janitor room

* Update MiniStation.dmm

* ai stuff + more firealarms

* meeting room, etc

* fixes wire

* Update MiniStation.dmm

* fixes

* Update MiniStation.dmm

* yep!

* atmos area

* fixes some map errors

* bookbinder

* robo shutters

* stair and chem fix

* fixes bad decals

* honesly no clue what's different

* disposals + pets

* Update MiniStation.dmm

* asteroid area

* more fixes

* medbay mixup

* choom button

* wire toxin room to grid

* remove this

* more fixes

* Update ai_whale.dmm

* more cameras

* Update networking_machines.dm

* update freezer

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* new service

* hawk + tuah + backrooms

* special charters

* remove that lol

* move him a little

* Update MiniStation.dmm

* yeah

* Update MiniStation.dmm

* psych office + more fixes + robo stuff

* thermomachines

* Update MiniStation.dmm

* maints + APCs

* all this stuff

* cameras

* air alarms

* RD office and the like

* Update MiniStation.dmm

* fixes these

* glass floors

* Update MiniStation.dmm

* more firelocks

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* extra pipe moment

* Update MiniStation.dmm

* looking up and down/fixes

* neat

* wire

* Update MiniStation.dmm

* fixes some issues

* asdad

* better SM stuff

* amon gus

* fixing falling

* Update MiniStation.dmm

* Update MiniStation.dmm

* fixes this

* fixes

* Update MiniStation.dmm

* remove stairs

* Update MiniStation.dmm

* Update MiniStation.dmm

* Update MiniStation.dmm

* fixes some ai stuff

* Update MiniStation.dmm

* adds some missing bells

* maint

* more maint stuff

* ai upload and goodbye meeting room

* fixes multiz pda stuff

* fixes locker

* ministation fixes

* requested changes

* shadows

* removes shadows

* adds medhuds

* no smoking

* move up/down

* correct medhuds

* brig stuff

* cameras

* fixes

* more lights

* more fixes

* fix one turf

* idk randomstuff

* more lights

* navigation nation (thanks plant)

* fixes + better flooring

* jamie changes

* myriad changes

* some more stuff

* server room fix
2024-10-19 00:13:31 +01:00

128 lines
3.3 KiB
Plaintext

/atom/movable/screen/ghost
icon = 'icons/mob/screen_ghost.dmi'
/atom/movable/screen/ghost/MouseEntered()
. = ..()
flick(icon_state + "_anim", src)
/atom/movable/screen/ghost/jump_to_mob
name = "Jump to mob"
icon_state = "jump_to_mob"
/atom/movable/screen/ghost/jump_to_mob/Click()
var/mob/dead/observer/G = usr
G.dead_tele()
/atom/movable/screen/ghost/orbit
name = "Orbit"
icon_state = "orbit"
/atom/movable/screen/ghost/orbit/Click()
var/mob/dead/observer/G = usr
G.follow()
/atom/movable/screen/ghost/reenter_corpse
name = "Reenter corpse"
icon_state = "reenter_corpse"
/atom/movable/screen/ghost/reenter_corpse/Click()
var/mob/dead/observer/G = usr
G.reenter_corpse()
/atom/movable/screen/ghost/teleport
name = "Teleport"
icon_state = "teleport"
/atom/movable/screen/ghost/teleport/Click()
var/mob/dead/observer/G = usr
G.dead_tele()
/atom/movable/screen/ghost/spawners
name = "Ghost role spawners"
icon_state = "spawners"
/atom/movable/screen/ghost/spawners/Click()
var/mob/dead/observer/G = usr
G.open_spawners_menu()
/datum/hud/ghost/New(mob/owner)
..()
var/atom/movable/screen/using
using = new /atom/movable/screen/ghost/jump_to_mob(src)
using.screen_loc = ui_ghost_jump_to_mob
static_inventory += using
using = new /atom/movable/screen/ghost/orbit(src)
using.screen_loc = ui_ghost_orbit
static_inventory += using
using = new /atom/movable/screen/ghost/reenter_corpse(src)
using.screen_loc = ui_ghost_reenter_corpse
static_inventory += using
using = new /atom/movable/screen/ghost/teleport(src)
using.screen_loc = ui_ghost_teleport
static_inventory += using
using = new /atom/movable/screen/ghost/spawners(src)
using.screen_loc = ui_ghost_spawners
static_inventory += using
using = new /atom/movable/screen/ghost/med_scan(src)
using.screen_loc = ui_ghost_med
static_inventory += using
using = new /atom/movable/screen/ghost/chem_scan(src)
using.screen_loc = ui_ghost_chem
static_inventory += using
using = new /atom/movable/screen/ghost/nanite_scan(src)
using.screen_loc = ui_ghost_nanite
static_inventory += using
using = new /atom/movable/screen/ghost/wound_scan(src)
using.screen_loc = ui_ghost_wound
static_inventory += using
using = new /atom/movable/screen/ghost/pai(src)
using.screen_loc = ui_ghost_pai
static_inventory += using
using = new /atom/movable/screen/language_menu/ghost(src)
using.icon = ui_style
static_inventory += using
using = new /atom/movable/screen/move(src)
using.icon = ui_style
using.screen_loc = ui_ghost_move_up
static_inventory += using
using = new /atom/movable/screen/move/down(src)
using.icon = ui_style
using.screen_loc = ui_ghost_move_down
static_inventory += using
/datum/hud/ghost/show_hud(version = 0, mob/viewmob)
// don't show this HUD if observing; show the HUD of the observee
var/mob/dead/observer/O = mymob
if (istype(O) && O.observetarget)
plane_masters_update()
return FALSE
. = ..()
if(!.)
return
var/mob/screenmob = viewmob || mymob
if(screenmob.client.prefs.read_preference(/datum/preference/toggle/ghost_hud))
screenmob.client.screen += static_inventory
else
screenmob.client.screen -= static_inventory
//We should only see observed mob alerts.
/datum/hud/ghost/reorganize_alerts(mob/viewmob)
var/mob/dead/observer/O = mymob
if (istype(O) && O.observetarget)
return
. = ..()