mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-29 10:31:34 +00:00
## About The Pull Request I was messing a little bit with TGUI stuff and ended up turning the implant pad TGUI, so why not. On top of the new UI, I replaced the messages to chat with nice and consistent balloon alerts which will hopefully make it not seem like an ancient piece of shit. Video demonstration https://github.com/tgstation/tgstation/assets/53777086/a1ebe0d4-005b-4e29-a623-2c1b352cd017 I also removed ``INTERACT_MACHINE_SET_MACHINE`` from the prisoner console, because it was accidentally left in when the console was moved to TGUI ## Why It's Good For The Game I'm still going down the list of things that need to be TGUI, and I ended up doing this cause I just felt like it while messing with some other stuff. Rest of the list is visible here: https://hackmd.io/@sClqlHM0T4yZfn-qa5KnAg/S152Tl2hh ## Changelog 🆑 refactor: Implant pads now use TGUI /🆑
43 lines
1.7 KiB
Plaintext
43 lines
1.7 KiB
Plaintext
///Essentially, just turns the implantee into a teleport beacon.
|
|
/obj/item/implant/beacon
|
|
name = "beacon implant"
|
|
desc = "Teleports things."
|
|
actions_types = null
|
|
implant_flags = IMPLANT_TYPE_SECURITY
|
|
hud_icon_state = "hud_imp_beacon"
|
|
///How long will the implant be teleportable to after death?
|
|
var/lifespan_postmortem = 10 MINUTES
|
|
|
|
/obj/item/implant/beacon/get_data()
|
|
return "<b>Implant Specifications:</b><BR> \
|
|
<b>Name:</b> Robust Corp JMP-21 Fugitive Retrieval Implant<BR> \
|
|
<b>Life:</b> Deactivates upon death after ten minutes, but remains within the body.<BR> \
|
|
<b>Important Notes: N/A</B><BR> \
|
|
<HR> \
|
|
<b>Implant Details: </b><BR> \
|
|
<b>Function:</b> Acts as a teleportation beacon that can be tracked by any standard bluespace transponder. \
|
|
Using this, you can teleport directly to whoever has this implant inside of them."
|
|
|
|
/obj/item/implant/beacon/is_shown_on_console(obj/machinery/computer/prisoner/management/console)
|
|
return TRUE
|
|
|
|
/obj/item/implant/beacon/get_management_console_data()
|
|
var/list/info_shown = ..()
|
|
|
|
var/area/destination_area = get_area(imp_in)
|
|
if(isnull(destination_area) || (destination_area.area_flags & NOTELEPORT))
|
|
info_shown["Status"] = "Implant carrier teleport signal cannot be reached!"
|
|
else
|
|
var/turf/turf_to_check = get_turf(imp_in)
|
|
info_shown["Status"] = "Implant carrier is in [is_safe_turf(turf_to_check, dense_atoms = TRUE) ? "a safe environment." : "a hazardous environment!"]"
|
|
|
|
return info_shown
|
|
|
|
/obj/item/implanter/beacon
|
|
imp_type = /obj/item/implant/beacon
|
|
|
|
/obj/item/implantcase/beacon
|
|
name = "implant case - 'Beacon'"
|
|
desc = "A glass case containing a beacon implant."
|
|
imp_type = /obj/item/implant/beacon
|