diff --git a/code/game/machinery/computer/prisoner.dm b/code/game/machinery/computer/prisoner.dm index bc58a46958..33d37edfa6 100644 --- a/code/game/machinery/computer/prisoner.dm +++ b/code/game/machinery/computer/prisoner.dm @@ -15,90 +15,81 @@ var/stop = 0.0 var/screen = 0 // 0 - No Access Denied, 1 - Access allowed - - attack_ai(var/mob/user as mob) - return src.attack_hand(user) - - attack_hand(var/mob/user as mob) - if(..()) - return - user.set_machine(src) - var/dat - dat += "Prisoner Implant Manager System
" - if(screen == 0) - dat += "
Unlock Console" - else if(screen == 1) - dat += "
Chemical Implants
" - var/turf/Tr = null - for(var/obj/item/weapon/implant/chem/C in GLOB.all_chem_implants) - Tr = get_turf(C) - if(!Tr) continue//Out of range - if(!C.implanted) continue - dat += "[C.imp_in.name] | Remaining Units: [C.reagents.total_volume] | Inject: " - dat += "((1))" - dat += "((5))" - dat += "((10))
" - dat += "********************************
" - dat += "
Tracking Implants
" - for(var/obj/item/weapon/implant/tracking/T in GLOB.all_tracking_implants) - Tr = get_turf(T) - if(!Tr) continue//Out of range - if(!T.implanted) continue - var/loc_display = "Unknown" - var/mob/living/carbon/M = T.imp_in - if((M.z in using_map.station_levels) && !istype(M.loc, /turf/space)) - var/turf/mob_loc = get_turf(M) - loc_display = mob_loc.loc - if(T.malfunction) - loc_display = pick(teleportlocs) - dat += "ID: [T.id] | Location: [loc_display]
" - dat += "(Message Holder) |
" - dat += "********************************
" - dat += "
Lock Console" - - user << browse(dat, "window=computer;size=400x500") - onclose(user, "computer") +/obj/machinery/computer/prisoner/attack_hand(mob/user) + if(..()) return + tgui_interact(user) +/obj/machinery/computer/prisoner/tgui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) + if(!ui) + ui = new(user, src, "PrisonerManagement", name) + ui.open() - process() - if(!..()) - src.updateDialog() - return +/obj/machinery/computer/prisoner/tgui_data(mob/user) + var/list/data = list() + + data["locked"] = !screen + data["chemImplants"] = list() + data["trackImplants"] = list() + if(screen) + for(var/obj/item/weapon/implant/chem/C in GLOB.all_chem_implants) + var/turf/T = get_turf(C) + if(!T) + continue + if(!C.implanted) + continue + data["chemImplants"].Add(list(list( + "host" = C.imp_in, + "units" = C.reagents.total_volume, + "ref" = "\ref[C]" + ))) + for(var/obj/item/weapon/implant/tracking/track in GLOB.all_tracking_implants) + var/turf/T = get_turf(track) + if(!T) + continue + if(!track.implanted) + continue + var/loc_display = "Unknown" + var/mob/living/L = track.imp_in + if((get_z(L) in using_map.station_levels) && !istype(L.loc, /turf/space)) + loc_display = T.loc + if(track.malfunction) + loc_display = pick(teleportlocs) + data["trackImplants"].Add(list(list( + "host" = L, + "ref" = "\ref[track]", + "id" = "[track.id]", + "loc" = "[loc_display]", + ))) + return data - Topic(href, href_list) - if(..()) - return - if((usr.contents.Find(src) || (in_range(src, usr) && istype(src.loc, /turf))) || (istype(usr, /mob/living/silicon))) - usr.set_machine(src) +/obj/machinery/computer/prisoner/tgui_act(action, list/params) + if(..()) + return TRUE - if(href_list["inject1"]) - var/obj/item/weapon/implant/I = locate(href_list["inject1"]) - if(I) I.activate(1) + switch(action) + if("inject") + var/obj/item/weapon/implant/I = locate(params["imp"]) + if(I) + I.activate(clamp(params["val"], 0, 10)) + . = TRUE - else if(href_list["inject5"]) - var/obj/item/weapon/implant/I = locate(href_list["inject5"]) - if(I) I.activate(5) + if("lock") + if(allowed(usr)) + screen = !screen + else + to_chat(usr, "Unauthorized Access.") + . = TRUE - else if(href_list["inject10"]) - var/obj/item/weapon/implant/I = locate(href_list["inject10"]) - if(I) I.activate(10) + if("warn") + var/warning = sanitize(input(usr, "Message:", "Enter your message here!", "")) + if(!warning) + return + var/obj/item/weapon/implant/I = locate(params["imp"]) + if(I && I.imp_in) + to_chat(I.imp_in, "You hear a voice in your head saying: '[warning]'") + . = TRUE - else if(href_list["lock"]) - if(src.allowed(usr)) - screen = !screen - else - to_chat(usr, "Unauthorized Access.") - - else if(href_list["warn"]) - var/warning = sanitize(input(usr,"Message:","Enter your message here!","")) - if(!warning) return - var/obj/item/weapon/implant/I = locate(href_list["warn"]) - if((I)&&(I.imp_in)) - var/mob/living/carbon/R = I.imp_in - to_chat(R, "You hear a voice in your head saying: '[warning]'") - - src.add_fingerprint(usr) - src.updateUsrDialog() - return + add_fingerprint(usr) \ No newline at end of file diff --git a/code/game/objects/items/toys_yw.dm b/code/game/objects/items/toys/toys_yw.dm similarity index 100% rename from code/game/objects/items/toys_yw.dm rename to code/game/objects/items/toys/toys_yw.dm diff --git a/maps/yw/cryogaia-04-maintenance.dmm b/maps/yw/cryogaia-04-maintenance.dmm index 81087de747..0343f0feeb 100644 --- a/maps/yw/cryogaia-04-maintenance.dmm +++ b/maps/yw/cryogaia-04-maintenance.dmm @@ -13804,7 +13804,7 @@ /turf/simulated/floor/tiled/dark, /area/medical/biostorage3) "iCb" = ( -/obj/item/weapon/caution/cone, +/obj/item/clothing/head/cone, /turf/simulated/floor, /area/maintenance/lowfloor3) "iCJ" = ( @@ -18022,7 +18022,7 @@ /turf/simulated/floor/bluegrid, /area/ai_upload) "kLl" = ( -/obj/item/weapon/caution/cone, +/obj/item/clothing/head/cone, /obj/structure/cable{ icon_state = "1-4" }, @@ -27024,7 +27024,7 @@ /turf/simulated/floor/tiled, /area/security/prison) "qcT" = ( -/obj/item/weapon/caution/cone, +/obj/item/clothing/head/cone, /turf/simulated/floor, /area/maintenance/atmos_control) "qdm" = ( diff --git a/maps/yw/cryogaia-05-main.dmm b/maps/yw/cryogaia-05-main.dmm index d9f4e23bd4..7a54d6015b 100644 --- a/maps/yw/cryogaia-05-main.dmm +++ b/maps/yw/cryogaia-05-main.dmm @@ -48125,7 +48125,7 @@ /turf/simulated/floor/tiled/white, /area/medical/medbay_primary_storage) "sve" = ( -/obj/item/weapon/caution/cone, +/obj/item/clothing/head/cone, /turf/simulated/floor, /area/maintenance/medbay) "svg" = ( diff --git a/maps/yw/scratchmap.dmm b/maps/yw/scratchmap.dmm index 54d185a089..bb2cb85930 100644 --- a/maps/yw/scratchmap.dmm +++ b/maps/yw/scratchmap.dmm @@ -793,7 +793,7 @@ "pm" = (/obj/effect/decal/cleanable/vomit,/obj/item/weapon/stool/padded,/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/floor,/area/maintenance/lowfloor1) "pn" = (/obj/machinery/light/small{dir = 8; pixel_y = 0},/obj/effect/decal/cleanable/dirt,/turf/simulated/floor/plating,/area/maintenance/lowfloor1) "po" = (/obj/structure/cable{icon_state = "1-2"},/turf/simulated/floor/plating,/area/maintenance/lowfloor1) -"pp" = (/obj/item/weapon/caution/cone,/turf/simulated/floor,/area/maintenance/lowfloor1) +"pp" = (/obj/item/clothing/head/cone,/turf/simulated/floor,/area/maintenance/lowfloor1) "pq" = (/obj/item/weapon/broken_bottle,/turf/simulated/floor,/area/maintenance/lowfloor1) "pr" = (/obj/structure/table/woodentable,/obj/item/weapon/material/ashtray/plastic,/obj/item/trash/cigbutt/cigarbutt,/obj/random/maintenance/clean,/obj/random/maintenance/clean,/turf/simulated/floor,/area/maintenance/lowfloor1) "ps" = (/obj/machinery/space_heater,/turf/simulated/floor/plating,/area/maintenance/lowfloor1) diff --git a/maps/yw/tempbackup/old_cryogaia-04-maintenance.dmm b/maps/yw/tempbackup/old_cryogaia-04-maintenance.dmm index 3de2a2f55f..6b41f523bc 100644 --- a/maps/yw/tempbackup/old_cryogaia-04-maintenance.dmm +++ b/maps/yw/tempbackup/old_cryogaia-04-maintenance.dmm @@ -7616,7 +7616,7 @@ /turf/simulated/floor, /area/maintenance/starboard) "arp" = ( -/obj/item/weapon/caution/cone, +/obj/item/clothing/head/cone, /turf/simulated/floor, /area/maintenance/lowfloor3) "arq" = ( @@ -24927,7 +24927,7 @@ /turf/simulated/floor/plating, /area/maintenance/maintroom6) "bce" = ( -/obj/item/weapon/caution/cone, +/obj/item/clothing/head/cone, /obj/structure/cable{ icon_state = "1-4" }, @@ -32026,7 +32026,7 @@ /turf/simulated/floor/tiled/dark, /area/hydroponics) "bqD" = ( -/obj/item/weapon/caution/cone, +/obj/item/clothing/head/cone, /turf/simulated/floor, /area/maintenance/atmos_control) "bqE" = ( diff --git a/maps/yw/tempbackup/old_cryogaia-05-main.dmm b/maps/yw/tempbackup/old_cryogaia-05-main.dmm index b1b479db1d..e2674b74bd 100644 --- a/maps/yw/tempbackup/old_cryogaia-05-main.dmm +++ b/maps/yw/tempbackup/old_cryogaia-05-main.dmm @@ -1190,7 +1190,7 @@ "axe" = (/obj/structure/cable/heavyduty{icon_state = "2-8"},/obj/machinery/atmospherics/pipe/simple/visible/scrubbers{dir = 10},/obj/machinery/atmospherics/pipe/simple/visible/supply{dir = 10},/obj/structure/railing{dir = 1},/obj/structure/railing{dir = 4},/turf/simulated/floor/plating/snow/plating/cryogaia,/area/borealis2/outdoors/grounds/power) "axf" = (/obj/structure/grille,/obj/structure/window/reinforced/full,/obj/structure/cable/heavyduty{icon_state = "1-2"},/obj/machinery/atmospherics/pipe/simple/visible/scrubbers,/obj/machinery/atmospherics/pipe/simple/visible/supply,/turf/simulated/floor/plating,/area/security/outpost) "axg" = (/obj/effect/floor_decal/snow/floor/edges3,/obj/effect/floor_decal/snow/floor/edges,/obj/effect/floor_decal/snow/floor/edges{dir = 4},/turf/simulated/floor/outdoors/snow/gravsnow/cryogaia,/area/borealis2/outdoors/grounds) -"axh" = (/obj/item/weapon/caution/cone,/turf/simulated/floor,/area/maintenance/medbay) +"axh" = (/obj/item/clothing/head/cone,/turf/simulated/floor,/area/maintenance/medbay) "axi" = (/turf/simulated/wall,/area/medical/patient_b) "axj" = (/obj/machinery/atmospherics/unary/vent_scrubber/on{dir = 1},/obj/structure/extinguisher_cabinet{dir = 4; icon_state = "extinguisher_closed"; pixel_x = -30},/obj/effect/floor_decal/corner/paleblue{dir = 9},/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/turf/simulated/floor/tiled/white,/area/medical/scanning) "axk" = (/obj/effect/floor_decal/corner/pink{dir = 5},/obj/structure/bed/padded,/obj/item/weapon/bedsheet/medical,/obj/machinery/newscaster{pixel_y = 32},/turf/simulated/floor/tiled/white,/area/medical/patient_b)