From fa3434f7cf0e73d80d809d0026cdd8a5c88a0ded Mon Sep 17 00:00:00 2001 From: Greenjoe12345 <33647525+Greenjoe12345@users.noreply.github.com> Date: Tue, 14 Mar 2023 07:49:06 +0000 Subject: [PATCH] Static communicators (#9032) * commstatic * further work --- .../objects/items/devices/communicator/UI.dm | 9 ++- .../devices/communicator/communicator.dm | 10 ++- .../items/devices/communicator/desktop.dm | 27 ++++++++ icons/obj/device.dmi | Bin 101007 -> 101839 bytes maps/cynosure/cynosure-2.dmm | 58 +++++++++++++--- maps/cynosure/cynosure-3.dmm | 64 +++++++++++++++--- polaris.dme | 1 + 7 files changed, 146 insertions(+), 23 deletions(-) create mode 100644 code/game/objects/items/devices/communicator/desktop.dm diff --git a/code/game/objects/items/devices/communicator/UI.dm b/code/game/objects/items/devices/communicator/UI.dm index 61ff185856..91459b2535 100644 --- a/code/game/objects/items/devices/communicator/UI.dm +++ b/code/game/objects/items/devices/communicator/UI.dm @@ -150,9 +150,12 @@ if(..()) return 1 if(href_list["rename"]) - var/new_name = sanitizeSafe(input(usr,"Please enter your name.","Communicator",usr.name) ) - if(new_name) - register_device(new_name) + if(!can_rename) + to_chat(usr, "Renaming forbidden on this device.") + else + var/new_name = sanitizeSafe(input(usr,"Please enter your name.","Communicator",usr.name) ) + if(new_name) + register_device(new_name) if(href_list["toggle_visibility"]) switch(network_visibility) diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm index 44fbeb78d7..6bd9c2908d 100644 --- a/code/game/objects/items/devices/communicator/communicator.dm +++ b/code/game/objects/items/devices/communicator/communicator.dm @@ -73,6 +73,8 @@ var/global/list/obj/item/communicator/all_communicators = list() var/list/communicating = list() var/update_ticks = 0 var/newsfeed_channel = 0 + var/static_name = null + var/can_rename = 1 // Proc: New() // Parameters: None @@ -95,6 +97,9 @@ var/global/list/obj/item/communicator/all_communicators = list() // Parameters: None // Description: Tries to register ourselves to the mob that we've presumably spawned in. Not the most amazing way of doing this. /obj/item/communicator/proc/register_to_holder() + if(static_name) + register_device(static_name) + initialize_exonet(loc) if(ismob(loc)) register_device(loc.name) initialize_exonet(loc) @@ -279,7 +284,10 @@ var/global/list/obj/item/communicator/all_communicators = list() return owner = new_name - name = "[new_name]'s [initial(name)]" + if(static_name) + name = "[new_name]" + else + name = "[new_name]'s [initial(name)]" if(camera) camera.name = name camera.c_tag = name diff --git a/code/game/objects/items/devices/communicator/desktop.dm b/code/game/objects/items/devices/communicator/desktop.dm new file mode 100644 index 0000000000..68f663dde5 --- /dev/null +++ b/code/game/objects/items/devices/communicator/desktop.dm @@ -0,0 +1,27 @@ +/obj/item/communicator/desktop + name = "desktop communicator" + desc = "A static communicator unit, seen in homes, offices and the receptions of businesses across the galaxy." + icon_state = "commstatic" + anchored = 1 + static_name = "fixed communicator" + can_rename = 0 + +/obj/item/communicator/desktop/attack_hand(mob/user) + return attack_self(user) + +/obj/item/communicator/desktop/initialize_exonet(mob/user) + if(!static_name) + return + if(!exonet) + exonet = new(src) + if(!exonet.address) + exonet.make_address("communicator-[static_name]") + if(!node) + node = get_exonet_node() + populate_known_devices() + +/obj/item/communicator/desktop/register_to_holder() + if(!static_name) + return ..() + register_device(static_name) + initialize_exonet() \ No newline at end of file diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 3864a2a778cbec371bc245244efbe2aef13c9c40..9cf07e2b78ea3001edcbae410f856addcfa9d5ea 100644 GIT binary patch delta 17747 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 Ks^zPiz4{*|Pe614 delta 16908 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 Nd(}X*NW<#s{{cFgc#!}A diff --git a/maps/cynosure/cynosure-2.dmm b/maps/cynosure/cynosure-2.dmm index bd49e556a7..2155c5634a 100644 --- a/maps/cynosure/cynosure-2.dmm +++ b/maps/cynosure/cynosure-2.dmm @@ -10617,12 +10617,19 @@ id = "BrigFoyer"; layer = 2.9; name = "Foyer Doors"; + pixel_x = 6; pixel_y = 6 }, /obj/item/sticky_pad/random{ pixel_x = 8; pixel_y = -1 }, +/obj/item/communicator/desktop{ + occupation = "security"; + pixel_x = -9; + pixel_y = 5; + static_name = "security lobby communicator" + }, /turf/simulated/floor/tiled/dark, /area/surface/station/security/lobby) "eNB" = ( @@ -40535,11 +40542,13 @@ id = "MedbayFoyer"; layer = 2.9; name = "Foyer Door"; + pixel_x = 6; pixel_y = 5 }, -/obj/item/radio/phone/medbay{ - name = "Reception Emergency Phone"; - pixel_y = -6 +/obj/item/communicator/desktop{ + occupation = "medical"; + pixel_x = -8; + static_name = "medical lobby communicator" }, /turf/simulated/floor/tiled/neutral, /area/surface/station/medical/reception) @@ -50572,6 +50581,19 @@ }, /turf/simulated/floor/tiled/steel_grid, /area/surface/station/security/lobby) +"wCp" = ( +/obj/structure/table/marble, +/obj/machinery/door/blast/gate/thin{ + dir = 2; + id = "kitchen"; + layer = 3.3 + }, +/obj/item/communicator/desktop{ + occupation = "kitchen"; + static_name = "kitchen communicator" + }, +/turf/simulated/floor/tiled/eris/cafe, +/area/surface/station/crew_quarters/kitchen) "wCF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -51400,9 +51422,14 @@ /obj/structure/window/reinforced, /obj/machinery/recharger, /obj/item/sticky_pad/random{ - pixel_x = 8; + pixel_x = -8; pixel_y = -1 }, +/obj/item/communicator/desktop{ + occupation = "engineering"; + pixel_x = 14; + static_name = "engineering lobby communicator" + }, /turf/simulated/floor/tiled, /area/surface/station/engineering/engineering_monitoring) "wRM" = ( @@ -53064,11 +53091,24 @@ /area/surface/station/hydroponics) "xHq" = ( /obj/structure/table/marble, -/obj/item/reagent_containers/food/drinks/flask/barflask, -/obj/item/reagent_containers/food/drinks/flask/vacuumflask, -/obj/item/flame/lighter/zippo, -/obj/item/reagent_containers/glass/rag, +/obj/item/reagent_containers/food/drinks/flask/barflask{ + pixel_x = 6 + }, +/obj/item/reagent_containers/food/drinks/flask/vacuumflask{ + pixel_x = 6 + }, +/obj/item/flame/lighter/zippo{ + pixel_x = 6 + }, +/obj/item/reagent_containers/glass/rag{ + pixel_x = 5 + }, /obj/item/deskbell, +/obj/item/communicator/desktop{ + occupation = "bar"; + pixel_x = -12; + static_name = "bar communicator" + }, /turf/simulated/floor/lino, /area/surface/station/crew_quarters/bar) "xHy" = ( @@ -88832,7 +88872,7 @@ sfZ xuZ xod epo -cKX +wCp msM qzQ msM diff --git a/maps/cynosure/cynosure-3.dmm b/maps/cynosure/cynosure-3.dmm index 1822293eed..222fc64995 100644 --- a/maps/cynosure/cynosure-3.dmm +++ b/maps/cynosure/cynosure-3.dmm @@ -2167,16 +2167,29 @@ /area/surface/station/engineering/atmos/monitoring) "bzc" = ( /obj/structure/table/glass, -/obj/item/paper_bin, -/obj/item/clipboard, -/obj/item/folder/white, -/obj/item/pen, +/obj/item/paper_bin{ + pixel_x = -14 + }, +/obj/item/clipboard{ + pixel_x = -14 + }, +/obj/item/folder/white{ + pixel_x = -14 + }, +/obj/item/pen{ + pixel_x = -12 + }, /obj/effect/floor_decal/borderfloorwhite{ dir = 6 }, /obj/effect/floor_decal/corner/purple/border{ dir = 6 }, +/obj/item/communicator/desktop{ + occupation = "research"; + pixel_x = 3; + static_name = "research lobby communicator" + }, /turf/simulated/floor/tiled/white, /area/surface/station/rnd/lab) "bzL" = ( @@ -5964,6 +5977,12 @@ /obj/effect/floor_decal/corner/brown/border{ dir = 1 }, +/obj/item/communicator/desktop{ + occupation = "cargo"; + pixel_x = -16; + pixel_y = 6; + static_name = "cargo lobby communicator" + }, /turf/simulated/floor/tiled, /area/surface/station/quartermaster/office) "dUz" = ( @@ -6622,12 +6641,21 @@ pixel_x = -21 }, /obj/item/material/ashtray/glass, -/obj/item/flashlight/lamp/green, +/obj/item/flashlight/lamp/green{ + pixel_x = 12; + pixel_y = 10 + }, /obj/item/sticky_pad/random{ - pixel_x = 8; + pixel_x = 16; pixel_y = -1 }, /obj/effect/zone_divider, +/obj/item/communicator/desktop{ + occupation = "internal affairs"; + pixel_x = -3; + pixel_y = 4; + static_name = "internal affairs office communicator" + }, /turf/simulated/floor/wood, /area/surface/station/command/internalaffairs) "esP" = ( @@ -26743,11 +26771,20 @@ /area/surface/station/hallway/primary/secondfloor/west) "rwU" = ( /obj/structure/table/wooden_reinforced, -/obj/item/melee/chainofcommand, -/obj/item/hand_tele, +/obj/item/melee/chainofcommand{ + pixel_y = 9 + }, +/obj/item/hand_tele{ + pixel_y = 9 + }, /obj/structure/sign/calendar{ pixel_x = -32 }, +/obj/item/communicator/desktop{ + occupation = "site manager"; + pixel_y = -12; + static_name = "site manager's office communicator" + }, /turf/simulated/floor/wood, /area/surface/station/crew_quarters/captain) "rwZ" = ( @@ -27358,7 +27395,10 @@ /area/surface/station/rnd/research) "rSN" = ( /obj/structure/table/standard, -/obj/item/sticky_pad/random, +/obj/item/communicator/desktop{ + occupation = "public"; + static_name = "public communicator" + }, /turf/simulated/floor/tiled/dark, /area/surface/station/hallway/secondary/secondfloor/dormhallway) "rSS" = ( @@ -31669,7 +31709,7 @@ dir = 4 }, /obj/item/toy/desk/fan{ - pixel_y = 19 + pixel_y = 18 }, /obj/structure/sign/clock{ pixel_y = -32 @@ -37774,6 +37814,10 @@ "yjT" = ( /obj/structure/table/standard, /obj/item/toy/plushie/corgi, +/obj/item/sticky_pad/random{ + pixel_x = 4; + pixel_y = 8 + }, /turf/simulated/floor/tiled/dark, /area/surface/station/hallway/secondary/secondfloor/dormhallway) "yka" = ( diff --git a/polaris.dme b/polaris.dme index 89fd791fb6..69b9e62150 100644 --- a/polaris.dme +++ b/polaris.dme @@ -1002,6 +1002,7 @@ #include "code\game\objects\items\devices\violin.dm" #include "code\game\objects\items\devices\whistle.dm" #include "code\game\objects\items\devices\communicator\communicator.dm" +#include "code\game\objects\items\devices\communicator\desktop.dm" #include "code\game\objects\items\devices\communicator\helper.dm" #include "code\game\objects\items\devices\communicator\integrated.dm" #include "code\game\objects\items\devices\communicator\messaging.dm"