diff --git a/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm b/_maps/RandomRuins/SpaceRuins/abandonedteleporter.dmm index 47e22f74ff..c8e9d3bb87 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 dd1a5a95dd..cd711dd7aa 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 1fe86123e9..cd7ef8de04 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 42c442d6f8..15abcf4474 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 fd936f5205..c608c3015b 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -4725,7 +4725,7 @@ }, /area/security/courtroom) "alJ" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/neutral/side, /area/security/courtroom) "alK" = ( @@ -15508,7 +15508,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" }, @@ -18049,7 +18049,7 @@ /turf/open/floor/plasteel, /area/bridge) "aVp" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/structure/cable{ icon_state = "4-8" }, @@ -27307,7 +27307,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 }, @@ -35591,7 +35591,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" = ( @@ -39507,7 +39507,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" = ( @@ -41995,7 +41995,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 b1b3f234f9..78d920e0a9 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -1312,7 +1312,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) @@ -35704,7 +35704,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 }, @@ -45268,7 +45268,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 }, @@ -46320,7 +46320,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 }, @@ -47105,7 +47105,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" }, @@ -53410,7 +53410,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 }, @@ -58216,7 +58216,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 }, @@ -60886,7 +60886,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" = ( @@ -77248,7 +77248,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 }, @@ -77486,7 +77486,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) @@ -89819,7 +89819,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, @@ -91509,7 +91509,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) @@ -93879,7 +93879,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 e32792718e..cd98c110ff 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -15317,7 +15317,7 @@ }, /area/hallway/primary/fore) "aGo" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/red/corner{ dir = 2 }, @@ -18754,7 +18754,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" = ( @@ -29499,7 +29499,7 @@ }, /area/bridge) "bkF" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/structure/cable/yellow{ icon_state = "1-2" }, @@ -31939,7 +31939,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" = ( @@ -33370,7 +33370,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) @@ -36475,7 +36475,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 }, @@ -40762,7 +40762,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 @@ -41570,7 +41570,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 }, @@ -41883,7 +41883,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 }, @@ -53561,7 +53561,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 }, @@ -63636,7 +63636,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" = ( @@ -69856,7 +69856,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 }, @@ -72124,7 +72124,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 c860dc1a96..b6b157dafb 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 ccef5665e1..218bad8167 100644 --- a/_maps/map_files/OmegaStation/OmegaStation.dmm +++ b/_maps/map_files/OmegaStation/OmegaStation.dmm @@ -30295,7 +30295,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 6bf52ab60a..7e7f29d04f 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -1455,7 +1455,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" = ( @@ -7515,7 +7515,7 @@ }, /area/bridge) "atU" = ( -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /turf/open/floor/plasteel/darkblue/side{ dir = 1 }, @@ -9537,7 +9537,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" = ( @@ -16445,7 +16445,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 @@ -25241,7 +25241,7 @@ /area/science/server) "blP" = ( /obj/effect/landmark/event_spawn, -/obj/item/device/radio/beacon, +/obj/item/device/beacon, /obj/machinery/light{ dir = 8 }, @@ -25812,7 +25812,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 }, @@ -36373,7 +36373,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" = ( @@ -39638,7 +39638,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" = ( @@ -39754,7 +39754,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" = ( @@ -46040,7 +46040,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" = ( @@ -46319,7 +46319,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" = ( @@ -47188,7 +47188,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" = ( @@ -47342,7 +47342,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 937742930c..3e121ad9ed 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 74e640ae51..9701bf67f9 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 c56cae8849..9d0f6c540c 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 2f8aff3a13..e5e9f578b2 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 0000000000..5611784f8c --- /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 e7d3d9d9e6..0000000000 --- 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 2ef3e52ff1..a9cbb9f73d 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 3ff5a5f3e9..42e69f8fb2 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 01e87d26cd..48544d1c28 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 f5170066e2..799df94c0c 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 213e2d8b17..a06b2aeebb 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 2e7a9219aa..834f430a98 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 a9e81da034..64642b8a6c 100644 Binary files a/icons/obj/radio.dmi and b/icons/obj/radio.dmi differ diff --git a/tgstation.dme b/tgstation.dme index b1787c6712..cab1ca5a78 100755 --- a/tgstation.dme +++ b/tgstation.dme @@ -768,6 +768,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\dogborg_sleeper.dm" @@ -797,7 +798,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"