diff --git a/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm b/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm index 47e22f74ffb..c8e9d3bb87c 100644 --- a/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm +++ b/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm @@ -77,7 +77,7 @@ /area/ruin/space/abandoned_tele) "r" = ( /obj/effect/decal/cleanable/dirt, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plating/airless, /area/ruin/space/abandoned_tele) "s" = ( diff --git a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm b/_maps/RandomRuins/SpaceRuins/spacehotel.dmm index dd1a5a95dd9..cd711dd7aa0 100644 --- a/_maps/RandomRuins/SpaceRuins/spacehotel.dmm +++ b/_maps/RandomRuins/SpaceRuins/spacehotel.dmm @@ -2375,7 +2375,7 @@ /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/hotel/workroom) "hr" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/dark, /area/ruin/space/has_grav/hotel/dock) "hs" = ( diff --git a/_maps/RandomZLevels/moonoutpost19.dmm b/_maps/RandomZLevels/moonoutpost19.dmm index 1fe86123e9e..cd7ef8de04d 100644 --- a/_maps/RandomZLevels/moonoutpost19.dmm +++ b/_maps/RandomZLevels/moonoutpost19.dmm @@ -6091,7 +6091,7 @@ "mJ" = ( /obj/structure/sign/warning/vacuum{ desc = "A beacon used by a teleporter."; - icon = 'icons/obj/radio.dmi'; + icon = 'icons/obj/device.dmi'; icon_state = "beacon"; name = "tracking beacon" }, diff --git a/_maps/RandomZLevels/undergroundoutpost45.dmm b/_maps/RandomZLevels/undergroundoutpost45.dmm index 42c442d6f80..15abcf44743 100644 --- a/_maps/RandomZLevels/undergroundoutpost45.dmm +++ b/_maps/RandomZLevels/undergroundoutpost45.dmm @@ -158,7 +158,7 @@ "az" = ( /obj/structure/sign/warning/vacuum{ desc = "A beacon used by a teleporter."; - icon = 'icons/obj/radio.dmi'; + icon = 'icons/obj/device.dmi'; icon_state = "beacon"; name = "tracking beacon" }, diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 2dc2feb5e8b..047859fb25d 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -5017,7 +5017,7 @@ }, /area/security/courtroom) "alJ" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/neutral/side, /area/security/courtroom) "alK" = ( @@ -15949,7 +15949,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/exit) "aOe" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/camera{ c_tag = "Arrivals Bay 1 South" }, @@ -18463,7 +18463,7 @@ /turf/open/floor/plasteel, /area/bridge) "aVp" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/structure/cable{ icon_state = "4-8" }, @@ -27734,7 +27734,7 @@ pixel_y = 1 }, /obj/structure/table, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 5 }, @@ -36031,7 +36031,7 @@ /turf/open/floor/plating/airless, /area/science/test_area) "bLp" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plating/airless, /area/science/test_area) "bLq" = ( @@ -39951,7 +39951,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bUN" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel, /area/engine/atmos) "bUO" = ( @@ -42436,7 +42436,7 @@ /turf/open/floor/engine, /area/science/misc_lab) "caY" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/engine, /area/science/misc_lab) "caZ" = ( diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index 10dd03c3cbc..3894e019c31 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -1324,7 +1324,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "afV" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/hallway/secondary/entry) @@ -35714,7 +35714,7 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -45278,7 +45278,7 @@ /obj/structure/cable/white{ icon_state = "1-2" }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/atmospherics/components/unary/vent_pump/on{ dir = 4 }, @@ -46330,7 +46330,7 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/vault{ dir = 5 }, @@ -47115,7 +47115,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/starboard) "bXz" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/structure/cable/white{ icon_state = "4-8" }, @@ -53433,7 +53433,7 @@ /turf/open/floor/plasteel, /area/security/courtroom) "cjY" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/neutral/side{ dir = 8 }, @@ -58291,7 +58291,7 @@ /obj/structure/cable/white{ icon_state = "1-8" }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden{ dir = 4 }, @@ -61009,7 +61009,7 @@ /turf/open/floor/plasteel, /area/ai_monitored/storage/eva) "czU" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/neutral, /area/ai_monitored/storage/eva) "czV" = ( @@ -77405,7 +77405,7 @@ /turf/open/floor/plasteel/neutral, /area/science/research) "dhZ" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/structure/disposalpipe/segment{ dir = 4 }, @@ -77643,7 +77643,7 @@ /obj/structure/cable/white{ icon_state = "4-8" }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/structure/disposalpipe/segment, /turf/open/floor/plasteel/whiteblue, /area/medical/medbay/central) @@ -89966,7 +89966,7 @@ icon_state = "1-2" }, /obj/effect/landmark/blobstart, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/atmospherics/pipe/manifold4w/supply/hidden, /obj/effect/turf_decal/bot, /turf/open/floor/plasteel, @@ -91656,7 +91656,7 @@ /turf/open/floor/plating/airless, /area/science/test_area) "dLF" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/effect/decal/cleanable/dirt, /turf/open/floor/plating/airless, /area/science/test_area) @@ -94026,7 +94026,7 @@ /turf/open/floor/plasteel/neutral, /area/hallway/primary/aft) "dQR" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/neutral, /area/hallway/primary/aft) "dQU" = ( diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index efc7904740b..eeb14ad7758 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -15391,7 +15391,7 @@ }, /area/hallway/primary/fore) "aGo" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/red/corner{ dir = 2 }, @@ -18922,7 +18922,7 @@ /turf/open/floor/plasteel/neutral/side, /area/security/courtroom) "aOj" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/neutral/side, /area/security/courtroom) "aOk" = ( @@ -29767,7 +29767,7 @@ }, /area/bridge) "bkF" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/structure/cable/yellow{ icon_state = "1-2" }, @@ -32210,7 +32210,7 @@ icon_state = "4-8" }, /obj/machinery/holopad, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat/foyer) "bpL" = ( @@ -33641,7 +33641,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bsm" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/hallway/secondary/entry) @@ -36749,7 +36749,7 @@ /area/ai_monitored/storage/satellite) "byP" = ( /obj/machinery/atmospherics/pipe/simple/supply/hidden, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/caution{ dir = 8 }, @@ -41037,7 +41037,7 @@ "bIe" = ( /obj/structure/table, /obj/item/hand_tele, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/airalarm{ dir = 4; pixel_x = -23 @@ -41848,7 +41848,7 @@ /obj/structure/cable/yellow{ icon_state = "1-2" }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/neutral/side{ dir = 2 }, @@ -42161,7 +42161,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bKy" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 8 }, @@ -53837,7 +53837,7 @@ /turf/open/floor/engine, /area/science/explab) "ciT" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 10 }, @@ -63912,7 +63912,7 @@ /turf/open/floor/plating/airless, /area/science/test_area) "cDx" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plating/airless, /area/science/test_area) "cDy" = ( @@ -70141,7 +70141,7 @@ /obj/machinery/atmospherics/pipe/simple/supply/hidden{ dir = 4 }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/effect/turf_decal/stripes/line{ dir = 1 }, @@ -72411,7 +72411,7 @@ /turf/open/floor/engine, /area/science/xenobiology) "daH" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/engine, /area/science/xenobiology) "daI" = ( diff --git a/_maps/map_files/Mining/Lavaland.dmm b/_maps/map_files/Mining/Lavaland.dmm index c860dc1a965..b6b157dafbc 100644 --- a/_maps/map_files/Mining/Lavaland.dmm +++ b/_maps/map_files/Mining/Lavaland.dmm @@ -587,7 +587,7 @@ /turf/open/floor/plating, /area/mine/production) "bO" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/purple/corner{ dir = 8 }, diff --git a/_maps/map_files/OmegaStation/OmegaStation.dmm b/_maps/map_files/OmegaStation/OmegaStation.dmm index ad0c9b32d86..971c73cdb41 100644 --- a/_maps/map_files/OmegaStation/OmegaStation.dmm +++ b/_maps/map_files/OmegaStation/OmegaStation.dmm @@ -30312,7 +30312,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bkC" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel, /area/hallway/secondary/entry) diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm index ef31401ed9c..9c808f271c1 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -1449,7 +1449,7 @@ /area/ai_monitored/turret_protected/aisat_interior) "afy" = ( /obj/effect/landmark/start/cyborg, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/dark, /area/ai_monitored/turret_protected/aisat_interior) "afz" = ( @@ -7512,7 +7512,7 @@ }, /area/bridge) "atU" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/darkblue/side{ dir = 1 }, @@ -9534,7 +9534,7 @@ /turf/open/floor/plasteel, /area/hallway/primary/fore) "ayQ" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel, /area/hallway/primary/fore) "ayR" = ( @@ -16442,7 +16442,7 @@ /area/storage/eva) "aPM" = ( /obj/structure/table, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel/darkblue/side{ dir = 10 @@ -25238,7 +25238,7 @@ /area/science/server) "blP" = ( /obj/effect/landmark/event_spawn, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/light{ dir = 8 }, @@ -25809,7 +25809,7 @@ /turf/open/floor/plasteel, /area/hallway/secondary/entry) "bnq" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/atmospherics/pipe/simple/cyan/hidden{ dir = 4 }, @@ -36424,7 +36424,7 @@ dir = 4 }, /obj/effect/landmark/event_spawn, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/white, /area/medical/medbay/central) "bKA" = ( @@ -39670,7 +39670,7 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/scrubbers/hidden, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/dark, /area/storage/tech) "bSG" = ( @@ -39786,7 +39786,7 @@ /turf/open/floor/plasteel, /area/engine/atmos) "bSS" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel, /area/engine/atmos) "bST" = ( @@ -46089,7 +46089,7 @@ /turf/closed/mineral/random/low_chance, /area/asteroid/nearstation/bomb_site) "ckL" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plating/airless, /area/asteroid/nearstation/bomb_site) "ckM" = ( @@ -46368,7 +46368,7 @@ /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 1 }, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel, /area/tcommsat/computer) "clS" = ( @@ -47237,7 +47237,7 @@ /turf/open/floor/plasteel/neutral/corner, /area/hallway/secondary/exit/departure_lounge) "coT" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel, /area/hallway/secondary/exit/departure_lounge) "coV" = ( @@ -47391,7 +47391,7 @@ /turf/open/floor/plasteel/cafeteria, /area/crew_quarters/kitchen) "cpt" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/vault{ dir = 5 }, diff --git a/code/game/machinery/Beacon.dm b/code/game/machinery/Beacon.dm index 937742930c9..3e121ad9edb 100644 --- a/code/game/machinery/Beacon.dm +++ b/code/game/machinery/Beacon.dm @@ -9,7 +9,7 @@ anchored = TRUE use_power = IDLE_POWER_USE idle_power_usage = 0 - var/obj/item/device/radio/beacon/Beacon + var/obj/item/device/beacon/Beacon /obj/machinery/bluespace_beacon/Initialize() . = ..() diff --git a/code/game/machinery/computer/teleporter.dm b/code/game/machinery/computer/teleporter.dm index 74e640ae51e..9701bf67f9d 100644 --- a/code/game/machinery/computer/teleporter.dm +++ b/code/game/machinery/computer/teleporter.dm @@ -160,7 +160,7 @@ var/list/L = list() var/list/areaindex = list() if(regime_set == "Teleporter") - for(var/obj/item/device/radio/beacon/R in GLOB.teleportbeacons) + for(var/obj/item/device/beacon/R in GLOB.teleportbeacons) if(is_eligible(R)) var/area/A = get_area(R) L[avoid_assoc_duplicate_keys(A.name, areaindex)] = R diff --git a/code/game/machinery/syndicatebeacon.dm b/code/game/machinery/syndicatebeacon.dm index c56cae88494..9d0f6c540cb 100644 --- a/code/game/machinery/syndicatebeacon.dm +++ b/code/game/machinery/syndicatebeacon.dm @@ -104,7 +104,7 @@ // SINGULO BEACON SPAWNER /obj/item/device/sbeacondrop name = "suspicious beacon" - icon = 'icons/obj/radio.dmi' + icon = 'icons/obj/device.dmi' icon_state = "beacon" lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' diff --git a/code/game/objects/effects/anomalies.dm b/code/game/objects/effects/anomalies.dm index 2f8aff3a139..e5e9f578b2e 100644 --- a/code/game/objects/effects/anomalies.dm +++ b/code/game/objects/effects/anomalies.dm @@ -193,9 +193,9 @@ var/turf/T = safepick(get_area_turfs(impact_area)) if(T) // Calculate new position (searches through beacons in world) - var/obj/item/device/radio/beacon/chosen + var/obj/item/device/beacon/chosen var/list/possible = list() - for(var/obj/item/device/radio/beacon/W in GLOB.teleportbeacons) + for(var/obj/item/device/beacon/W in GLOB.teleportbeacons) possible += W if(possible.len > 0) @@ -218,7 +218,7 @@ var/y_distance = TO.y - FROM.y var/x_distance = TO.x - FROM.x for (var/atom/movable/A in urange(12, FROM )) // iterate thru list of mobs in the area - if(istype(A, /obj/item/device/radio/beacon)) + if(istype(A, /obj/item/device/beacon)) continue // don't teleport beacons because that's just insanely stupid if(A.anchored) continue diff --git a/code/game/objects/items/devices/beacon.dm b/code/game/objects/items/devices/beacon.dm new file mode 100644 index 00000000000..5611784f8cb --- /dev/null +++ b/code/game/objects/items/devices/beacon.dm @@ -0,0 +1,44 @@ +/obj/item/device/beacon + name = "\improper tracking beacon" + desc = "A beacon used by a teleporter." + icon = 'icons/obj/device.dmi' + icon_state = "beacon" + item_state = "beacon" + lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' + righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' + var/enabled = TRUE + var/renamed = FALSE + +/obj/item/device/beacon/Initialize() + . = ..() + if (enabled) + GLOB.teleportbeacons += src + else + icon_state = "beacon-off" + +/obj/item/device/beacon/Destroy() + GLOB.teleportbeacons.Remove(src) + return ..() + +/obj/item/device/beacon/attack_self(mob/user) + enabled = !enabled + if (enabled) + icon_state = "beacon" + GLOB.teleportbeacons += src + else + icon_state = "beacon-off" + GLOB.teleportbeacons.Remove(src) + to_chat(user, "You [enabled ? "enable" : "disable"] the beacon.") + return + +/obj/item/device/beacon/attackby(obj/item/W, mob/user) + if(istype(W, /obj/item/pen)) // needed for things that use custom names like the locator + var/new_name = stripped_input(user, "What would you like the name to be?") + if(!user.canUseTopic(src, BE_CLOSE)) + return + if(new_name) + name = new_name + renamed = TRUE + return + else + return ..() diff --git a/code/game/objects/items/devices/radio/beacon.dm b/code/game/objects/items/devices/radio/beacon.dm deleted file mode 100644 index e7d3d9d9e62..00000000000 --- a/code/game/objects/items/devices/radio/beacon.dm +++ /dev/null @@ -1,32 +0,0 @@ -/obj/item/device/radio/beacon - name = "tracking beacon" - desc = "A beacon used by a teleporter." - icon_state = "beacon" - item_state = "beacon" - lefthand_file = 'icons/mob/inhands/misc/devices_lefthand.dmi' - righthand_file = 'icons/mob/inhands/misc/devices_righthand.dmi' - var/code = "electronic" - dog_fashion = null - -/obj/item/device/radio/beacon/Initialize() - . = ..() - GLOB.teleportbeacons += src - -/obj/item/device/radio/beacon/Destroy() - GLOB.teleportbeacons.Remove(src) - return ..() - -/obj/item/device/radio/beacon/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, list/spans, message_mode) - return - -/obj/item/device/radio/beacon/verb/alter_signal(t as text) - set name = "Alter Beacon's Signal" - set category = "Object" - set src in usr - - if ((usr.canmove && !( usr.restrained() ))) - src.code = t - if (!( src.code )) - src.code = "beacon" - src.add_fingerprint(usr) - return diff --git a/code/game/objects/items/teleportation.dm b/code/game/objects/items/teleportation.dm index 2ef3e52ff18..a9cbb9f73d6 100644 --- a/code/game/objects/items/teleportation.dm +++ b/code/game/objects/items/teleportation.dm @@ -17,9 +17,6 @@ icon = 'icons/obj/device.dmi' icon_state = "locator" var/temp = null - var/frequency = FREQ_LOCATOR_IMPLANT - var/broadcasting = null - var/listening = 1 flags_1 = CONDUCT_1 w_class = WEIGHT_CLASS_SMALL item_state = "electronic" @@ -32,17 +29,11 @@ /obj/item/locator/attack_self(mob/user) user.set_machine(src) var/dat - if (src.temp) - dat = "[src.temp]

Clear" + if (temp) + dat = "[temp]

Clear" else dat = {" Persistent Signal Locator
-Frequency: -- -- [format_frequency(src.frequency)] -+ -+
- Refresh"} user << browse(dat, "window=radio") onclose(user, "radio") @@ -59,30 +50,30 @@ Frequency: if(usr.contents.Find(src) || (in_range(src, usr) && isturf(loc))) usr.set_machine(src) if (href_list["refresh"]) - src.temp = "Persistent Signal Locator
" + temp = "Persistent Signal Locator
" var/turf/sr = get_turf(src) if (sr) - src.temp += "Located Beacons:
" - - for(var/obj/item/device/radio/beacon/W in GLOB.teleportbeacons) - if (W.frequency == src.frequency) - var/turf/tr = get_turf(W) - if (tr.z == sr.z && tr) - var/direct = max(abs(tr.x - sr.x), abs(tr.y - sr.y)) - if (direct < 5) - direct = "very strong" + temp += "Beacon Signals:
" + for(var/obj/item/device/beacon/W in GLOB.teleportbeacons) + if (!W.renamed) + continue + var/turf/tr = get_turf(W) + if (tr.z == sr.z && tr) + var/direct = max(abs(tr.x - sr.x), abs(tr.y - sr.y)) + if (direct < 5) + direct = "very strong" + else + if (direct < 10) + direct = "strong" else - if (direct < 10) - direct = "strong" + if (direct < 20) + direct = "weak" else - if (direct < 20) - direct = "weak" - else - direct = "very weak" - src.temp += "[W.code]-[dir2text(get_dir(sr, tr))]-[direct]
" + direct = "very weak" + temp += "[W.name]-[dir2text(get_dir(sr, tr))]-[direct]
" - src.temp += "Extranneous Signals:
" + temp += "Implant Signals:
" for (var/obj/item/implant/tracking/W in GLOB.tracked_implants) if (!W.imp_in || !isliving(W.loc)) continue @@ -103,18 +94,14 @@ Frequency: direct = "strong" else direct = "weak" - src.temp += "[W.imp_in.name]-[dir2text(get_dir(sr, tr))]-[direct]
" + temp += "[W.imp_in.name]-[dir2text(get_dir(sr, tr))]-[direct]
" - src.temp += "You are at \[[sr.x],[sr.y],[sr.z]\] in orbital coordinates.

Refresh
" + temp += "You are at \[[sr.x],[sr.y],[sr.z]\] in orbital coordinates.

Refresh
" else - src.temp += "Processing Error: Unable to locate orbital position.
" + temp += "Processing Error: Unable to locate orbital position.
" else - if (href_list["freq"]) - src.frequency += text2num(href_list["freq"]) - src.frequency = sanitize_frequency(src.frequency) - else - if (href_list["temp"]) - src.temp = null + if (href_list["temp"]) + temp = null if (ismob(src.loc)) attack_self(src.loc) else diff --git a/code/modules/mining/equipment/wormhole_jaunter.dm b/code/modules/mining/equipment/wormhole_jaunter.dm index 3ff5a5f3e97..42e69f8fb20 100644 --- a/code/modules/mining/equipment/wormhole_jaunter.dm +++ b/code/modules/mining/equipment/wormhole_jaunter.dm @@ -28,7 +28,7 @@ /obj/item/device/wormhole_jaunter/proc/get_destinations(mob/user) var/list/destinations = list() - for(var/obj/item/device/radio/beacon/B in GLOB.teleportbeacons) + for(var/obj/item/device/beacon/B in GLOB.teleportbeacons) var/turf/T = get_turf(B) if(is_station_level(T.z)) destinations += B diff --git a/code/modules/projectiles/projectile/energy/net_snare.dm b/code/modules/projectiles/projectile/energy/net_snare.dm index 01e87d26cd3..48544d1c289 100644 --- a/code/modules/projectiles/projectile/energy/net_snare.dm +++ b/code/modules/projectiles/projectile/energy/net_snare.dm @@ -31,7 +31,7 @@ /obj/effect/nettingportal/Initialize() . = ..() - var/obj/item/device/radio/beacon/teletarget = null + var/obj/item/device/beacon/teletarget = null for(var/obj/machinery/computer/teleporter/com in GLOB.machines) if(com.target) if(com.power_station && com.power_station.teleporter_hub && com.power_station.engaged) diff --git a/code/modules/research/designs/bluespace_designs.dm b/code/modules/research/designs/bluespace_designs.dm index f5170066e29..799df94c0c0 100644 --- a/code/modules/research/designs/bluespace_designs.dm +++ b/code/modules/research/designs/bluespace_designs.dm @@ -9,7 +9,7 @@ id = "beacon" build_type = PROTOLATHE materials = list(MAT_METAL = 150, MAT_GLASS = 100) - build_path = /obj/item/device/radio/beacon + build_path = /obj/item/device/beacon category = list("Bluespace Designs") departmental_flags = DEPARTMENTAL_FLAG_SCIENCE | DEPARTMENTAL_FLAG_ENGINEERING | DEPARTMENTAL_FLAG_CARGO | DEPARTMENTAL_FLAG_SECURITY diff --git a/code/modules/shuttle/supply.dm b/code/modules/shuttle/supply.dm index 213e2d8b179..a06b2aeebbe 100644 --- a/code/modules/shuttle/supply.dm +++ b/code/modules/shuttle/supply.dm @@ -5,7 +5,7 @@ GLOBAL_LIST_INIT(blacklisted_cargo_types, typecacheof(list( /obj/structure/spider/spiderling, /obj/item/disk/nuclear, /obj/machinery/nuclearbomb, - /obj/item/device/radio/beacon, + /obj/item/device/beacon, /obj/singularity, /obj/machinery/teleport/station, /obj/machinery/teleport/hub, diff --git a/icons/obj/device.dmi b/icons/obj/device.dmi index 2e7a9219aaa..834f430a987 100644 Binary files a/icons/obj/device.dmi and b/icons/obj/device.dmi differ diff --git a/icons/obj/radio.dmi b/icons/obj/radio.dmi index a9e81da0346..64642b8a6c5 100644 Binary files a/icons/obj/radio.dmi and b/icons/obj/radio.dmi differ diff --git a/tgstation.dme b/tgstation.dme index 6063cb508a7..6c81fc8d222 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -760,6 +760,7 @@ #include "code\game\objects\items\circuitboards\computer_circuitboards.dm" #include "code\game\objects\items\circuitboards\machine_circuitboards.dm" #include "code\game\objects\items\devices\aicard.dm" +#include "code\game\objects\items\devices\beacon.dm" #include "code\game\objects\items\devices\camera_bug.dm" #include "code\game\objects\items\devices\chameleonproj.dm" #include "code\game\objects\items\devices\doorCharge.dm" @@ -788,7 +789,6 @@ #include "code\game\objects\items\devices\PDA\PDA_types.dm" #include "code\game\objects\items\devices\PDA\radio.dm" #include "code\game\objects\items\devices\PDA\virus_cart.dm" -#include "code\game\objects\items\devices\radio\beacon.dm" #include "code\game\objects\items\devices\radio\electropack.dm" #include "code\game\objects\items\devices\radio\encryptionkey.dm" #include "code\game\objects\items\devices\radio\headset.dm"