mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
GPS coordinates and POI names are obfuscated
This commit is contained in:
@@ -80,7 +80,7 @@ var/list/GPS_list = list()
|
|||||||
|
|
||||||
var/turf/curr = get_turf(src)
|
var/turf/curr = get_turf(src)
|
||||||
var/area/my_area = get_area(src)
|
var/area/my_area = get_area(src)
|
||||||
dat += "Current location: [my_area.name] <b>([curr.x], [curr.y], [curr.z])</b>"
|
dat += "Current location: [my_area.name] <b>([curr.x], [curr.y], [using_map.get_zlevel_name(curr.z)])</b>"
|
||||||
dat += "[hide_signal ? "Tagged" : "Broadcasting"] as '[gps_tag]'. <a href='?src=\ref[src];tag=1'>\[Change Tag\]</a> \
|
dat += "[hide_signal ? "Tagged" : "Broadcasting"] as '[gps_tag]'. <a href='?src=\ref[src];tag=1'>\[Change Tag\]</a> \
|
||||||
<a href='?src=\ref[src];range=1'>\[Toggle Scan Range\]</a> \
|
<a href='?src=\ref[src];range=1'>\[Toggle Scan Range\]</a> \
|
||||||
[can_hide_signal ? "<a href='?src=\ref[src];hide=1'>\[Toggle Signal Visibility\]</a>":""]"
|
[can_hide_signal ? "<a href='?src=\ref[src];hide=1'>\[Toggle Signal Visibility\]</a>":""]"
|
||||||
@@ -103,16 +103,17 @@ var/list/GPS_list = list()
|
|||||||
var/area_name = their_area.name
|
var/area_name = their_area.name
|
||||||
if(istype(their_area, /area/submap))
|
if(istype(their_area, /area/submap))
|
||||||
area_name = "Unknown Area" // Avoid spoilers.
|
area_name = "Unknown Area" // Avoid spoilers.
|
||||||
var/coord = "[T.x], [T.y], [T.z]"
|
var/Z_name = using_map.get_zlevel_name(T.z)
|
||||||
var/degrees = round(Get_Angle(curr, T))
|
|
||||||
var/direction = uppertext(dir2text(get_dir(curr, T)))
|
var/direction = uppertext(dir2text(get_dir(curr, T)))
|
||||||
var/distance = get_dist(curr, T)
|
var/distance = get_dist(curr, T)
|
||||||
var/local = curr.z == T.z ? TRUE : FALSE
|
var/local = curr.z == T.z ? TRUE : FALSE
|
||||||
if(!direction)
|
if(!direction)
|
||||||
direction = "CENTER"
|
direction = "CENTER"
|
||||||
degrees = "N/A"
|
|
||||||
|
|
||||||
signals += " [G.gps_tag]: [area_name] ([coord]) [local ? "Dist: [distance]m Dir: [degrees]<5D> ([direction])":""]"
|
if(istype(T, /obj/item/device/gps/internal/poi))
|
||||||
|
signals += " Unidentified Signal: [area_name] [local ? "Dist: [round(distance, 10)]m [direction])" : "in \the [Z_name]"]"
|
||||||
|
else
|
||||||
|
signals += " [G.gps_tag]: [area_name] [local ? "Dist: [round(distance, 10)]m [direction])" : "in \the [Z_name]"]"
|
||||||
|
|
||||||
if(signals.len)
|
if(signals.len)
|
||||||
dat += "Detected signals;"
|
dat += "Detected signals;"
|
||||||
@@ -179,15 +180,6 @@ var/list/GPS_list = list()
|
|||||||
/obj/item/device/gps/explorer/on
|
/obj/item/device/gps/explorer/on
|
||||||
tracking = TRUE
|
tracking = TRUE
|
||||||
|
|
||||||
/obj/item/device/gps/syndie
|
|
||||||
icon_state = "gps-syndie"
|
|
||||||
gps_tag = "NULL"
|
|
||||||
desc = "A positioning system that has extended range and can detect other GPS device signals without revealing its own. How that works is best left a mystery. Alt+click to toggle power."
|
|
||||||
origin_tech = list(TECH_MATERIAL = 2, TECH_BLUESPACE = 3, TECH_MAGNET = 2, TECH_ILLEGAL = 2)
|
|
||||||
long_range = TRUE
|
|
||||||
hide_signal = TRUE
|
|
||||||
can_hide_signal = TRUE
|
|
||||||
|
|
||||||
/obj/item/device/gps/robot
|
/obj/item/device/gps/robot
|
||||||
icon_state = "gps-b"
|
icon_state = "gps-b"
|
||||||
gps_tag = "SYNTH0"
|
gps_tag = "SYNTH0"
|
||||||
@@ -207,6 +199,72 @@ var/list/GPS_list = list()
|
|||||||
gps_tag = "NT_BASE"
|
gps_tag = "NT_BASE"
|
||||||
desc = "A homing signal from NanoTrasen's outpost."
|
desc = "A homing signal from NanoTrasen's outpost."
|
||||||
|
|
||||||
/obj/item/device/gps/internal/alien_vessel
|
/obj/item/device/gps/internal/poi
|
||||||
gps_tag = "Mysterious Signal"
|
gps_tag = "Mysterious Signal"
|
||||||
desc = "A signal that seems forboding."
|
desc = "A signal that seems forboding."
|
||||||
|
|
||||||
|
/obj/item/device/gps/syndie
|
||||||
|
icon_state = "gps-syndie"
|
||||||
|
gps_tag = "NULL"
|
||||||
|
desc = "A positioning system that has extended range and can detect other GPS device signals without revealing its own. How that works is best left a mystery. Alt+click to toggle power."
|
||||||
|
origin_tech = list(TECH_MATERIAL = 2, TECH_BLUESPACE = 3, TECH_MAGNET = 2, TECH_ILLEGAL = 2)
|
||||||
|
long_range = TRUE
|
||||||
|
hide_signal = TRUE
|
||||||
|
can_hide_signal = TRUE
|
||||||
|
|
||||||
|
/obj/item/device/gps/syndie/display(mob/user)
|
||||||
|
if(!tracking)
|
||||||
|
to_chat(user, "The device is off. Alt-click it to turn it on.")
|
||||||
|
return
|
||||||
|
if(emped)
|
||||||
|
to_chat(user, "It's busted!")
|
||||||
|
return
|
||||||
|
|
||||||
|
var/list/dat = list()
|
||||||
|
|
||||||
|
var/turf/curr = get_turf(src)
|
||||||
|
var/area/my_area = get_area(src)
|
||||||
|
dat += "Current location: [my_area.name] <b>([curr.x], [curr.y], [using_map.get_zlevel_name(curr.z)])</b>"
|
||||||
|
dat += "[hide_signal ? "Tagged" : "Broadcasting"] as '[gps_tag]'. <a href='?src=\ref[src];tag=1'>\[Change Tag\]</a> \
|
||||||
|
<a href='?src=\ref[src];range=1'>\[Toggle Scan Range\]</a> \
|
||||||
|
[can_hide_signal ? "<a href='?src=\ref[src];hide=1'>\[Toggle Signal Visibility\]</a>":""]"
|
||||||
|
|
||||||
|
var/list/signals = list()
|
||||||
|
|
||||||
|
for(var/gps in GPS_list)
|
||||||
|
var/obj/item/device/gps/G = gps
|
||||||
|
if(G.emped || !G.tracking || G.hide_signal || G == src) // Their GPS isn't on or functional.
|
||||||
|
continue
|
||||||
|
var/turf/T = get_turf(G)
|
||||||
|
var/z_level_detection = using_map.get_map_levels(curr.z, long_range)
|
||||||
|
|
||||||
|
if(local_mode && T.z != curr.z) // Only care about the current z-level.
|
||||||
|
continue
|
||||||
|
else if(!(T.z in z_level_detection)) // Too far away.
|
||||||
|
continue
|
||||||
|
|
||||||
|
var/area/their_area = get_area(G)
|
||||||
|
var/area_name = their_area.name
|
||||||
|
if(istype(their_area, /area/submap))
|
||||||
|
area_name = "Unknown Area" // Avoid spoilers.
|
||||||
|
var/Z_name = using_map.get_zlevel_name(T.z)
|
||||||
|
var/coord = "[T.x], [T.y], [Z_name]"
|
||||||
|
var/degrees = round(Get_Angle(curr, T))
|
||||||
|
var/direction = uppertext(dir2text(get_dir(curr, T)))
|
||||||
|
var/distance = get_dist(curr, T)
|
||||||
|
var/local = curr.z == T.z ? TRUE : FALSE
|
||||||
|
if(!direction)
|
||||||
|
direction = "CENTER"
|
||||||
|
degrees = "N/A"
|
||||||
|
|
||||||
|
signals += " [G.gps_tag]: [area_name] ([coord]) [local ? "Dist: [distance]m Dir: [degrees]<5D> ([direction])":""]"
|
||||||
|
|
||||||
|
if(signals.len)
|
||||||
|
dat += "Detected signals;"
|
||||||
|
for(var/line in signals)
|
||||||
|
dat += line
|
||||||
|
else
|
||||||
|
dat += "No other signals detected."
|
||||||
|
|
||||||
|
var/result = dat.Join("<br>")
|
||||||
|
to_chat(user, result)
|
||||||
6
html/changelogs/Atermonera - gps_tweaks.yml
Normal file
6
html/changelogs/Atermonera - gps_tweaks.yml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
author: Atermonera
|
||||||
|
|
||||||
|
delete-after: True
|
||||||
|
changes:
|
||||||
|
- tweak: "GPS units won't report the exact location of other GPS units, just range and approximate direction"
|
||||||
|
- tweak: "POI gps units won't give any information about the POI, merely its location"
|
||||||
@@ -134,19 +134,19 @@
|
|||||||
|
|
||||||
/datum/map_z_level/southern_cross/surface
|
/datum/map_z_level/southern_cross/surface
|
||||||
z = Z_LEVEL_SURFACE
|
z = Z_LEVEL_SURFACE
|
||||||
name = "Planet"
|
name = "Plains"
|
||||||
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED
|
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED
|
||||||
base_turf = /turf/simulated/floor/outdoors/rocks
|
base_turf = /turf/simulated/floor/outdoors/rocks
|
||||||
|
|
||||||
/datum/map_z_level/southern_cross/surface_mine
|
/datum/map_z_level/southern_cross/surface_mine
|
||||||
z = Z_LEVEL_SURFACE_MINE
|
z = Z_LEVEL_SURFACE_MINE
|
||||||
name = "Planet"
|
name = "Mountains"
|
||||||
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED
|
flags = MAP_LEVEL_STATION|MAP_LEVEL_CONTACT|MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED
|
||||||
base_turf = /turf/simulated/floor/outdoors/rocks
|
base_turf = /turf/simulated/floor/outdoors/rocks
|
||||||
|
|
||||||
/datum/map_z_level/southern_cross/surface_wild
|
/datum/map_z_level/southern_cross/surface_wild
|
||||||
z = Z_LEVEL_SURFACE_WILD
|
z = Z_LEVEL_SURFACE_WILD
|
||||||
name = "Wild"
|
name = "Wilderness"
|
||||||
flags = MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED
|
flags = MAP_LEVEL_PLAYER|MAP_LEVEL_SEALED
|
||||||
base_turf = /turf/simulated/floor/outdoors/rocks
|
base_turf = /turf/simulated/floor/outdoors/rocks
|
||||||
|
|
||||||
|
|||||||
@@ -37,7 +37,7 @@
|
|||||||
"aK" = (/obj/item/weapon/crowbar/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
"aK" = (/obj/item/weapon/crowbar/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
||||||
"aL" = (/obj/item/stack/cable_coil/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
"aL" = (/obj/item/stack/cable_coil/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
||||||
"aM" = (/obj/structure/table/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
"aM" = (/obj/structure/table/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
||||||
"aN" = (/obj/structure/table/alien,/obj/item/weapon/paper/alien{icon_state = "alienpaper_words"; info = "\[i]This tablet has a large collection of symbols that you've never seen before outside this ship. You have no hope of figuring out what any of the mean...\[/i]"},/obj/item/device/gps/internal/alien_vessel,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
"aN" = (/obj/structure/table/alien,/obj/item/weapon/paper/alien{icon_state = "alienpaper_words"; info = "\[i]This tablet has a large collection of symbols that you've never seen before outside this ship. You have no hope of figuring out what any of the mean...\[/i]"},/obj/item/device/gps/internal/poi,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
||||||
"aO" = (/obj/structure/prop/alien/computer{tag = "icon-console-c (EAST)"; icon_state = "console-c"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
|
"aO" = (/obj/structure/prop/alien/computer{tag = "icon-console-c (EAST)"; icon_state = "console-c"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo)
|
||||||
"aP" = (/obj/structure/table/alien,/obj/item/clothing/accessory/medal/dungeon/alien_ufo,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
"aP" = (/obj/structure/table/alien,/obj/item/clothing/accessory/medal/dungeon/alien_ufo,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
||||||
"aQ" = (/obj/structure/table/alien,/obj/item/weapon/weldingtool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
"aQ" = (/obj/structure/table/alien,/obj/item/weapon/weldingtool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo)
|
||||||
|
|||||||
@@ -26,20 +26,21 @@
|
|||||||
"z" = (/obj/structure/table/steel_reinforced,/obj/item/device/radio/intercom/syndicate{desc = "Talk through this."; name = "station intercom (General)"},/obj/item/device/multitool,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"z" = (/obj/structure/table/steel_reinforced,/obj/item/device/radio/intercom/syndicate{desc = "Talk through this."; name = "station intercom (General)"},/obj/item/device/multitool,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"A" = (/obj/structure/table/steel_reinforced,/obj/item/device/radio,/obj/machinery/power/apc{cell_type = /obj/item/weapon/cell/hyper; dir = 4; environ = 1; equipment = 1; lighting = 1; locked = 0; name = "Sif Free Radio APC"; operating = 0; pixel_x = 24},/obj/structure/cable/yellow,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"A" = (/obj/structure/table/steel_reinforced,/obj/item/device/radio,/obj/machinery/power/apc{cell_type = /obj/item/weapon/cell/hyper; dir = 4; environ = 1; equipment = 1; lighting = 1; locked = 0; name = "Sif Free Radio APC"; operating = 0; pixel_x = 24},/obj/structure/cable/yellow,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"B" = (/obj/effect/overlay/snow/floor,/obj/machinery/power/port_gen/pacman,/obj/structure/cable/yellow,/turf/simulated/floor{outdoors = 1},/area/submap/DJOutpost1)
|
"B" = (/obj/effect/overlay/snow/floor,/obj/machinery/power/port_gen/pacman,/obj/structure/cable/yellow,/turf/simulated/floor{outdoors = 1},/area/submap/DJOutpost1)
|
||||||
"C" = (/obj/machinery/biogenerator,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"C" = (/obj/machinery/door/airlock/glass,/obj/item/device/gps/internal/poi,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"D" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/unajerky,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/random_multi/single_item/sfr_headset,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"D" = (/obj/machinery/biogenerator,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"E" = (/obj/machinery/light{dir = 4; icon_state = "tube1"; pixel_x = 0},/obj/machinery/seed_extractor,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"E" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/snacks/unajerky,/obj/machinery/light{icon_state = "tube1"; dir = 8},/obj/random_multi/single_item/sfr_headset,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"F" = (/obj/structure/bed/chair/wood{tag = "icon-wooden_chair (NORTH)"; icon_state = "wooden_chair"; dir = 1},/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"F" = (/obj/machinery/light{dir = 4; icon_state = "tube1"; pixel_x = 0},/obj/machinery/seed_extractor,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"G" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"G" = (/obj/structure/bed/chair/wood{tag = "icon-wooden_chair (NORTH)"; icon_state = "wooden_chair"; dir = 1},/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"H" = (/obj/structure/table/woodentable,/obj/item/weapon/material/knife/machete/hatchet,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/material/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/random_multi/single_item/sfr_headset,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"H" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"I" = (/obj/structure/undies_wardrobe,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"I" = (/obj/structure/table/woodentable,/obj/item/weapon/material/knife/machete/hatchet,/obj/item/weapon/reagent_containers/glass/bucket,/obj/item/weapon/material/minihoe,/obj/item/device/analyzer/plant_analyzer,/obj/random_multi/single_item/sfr_headset,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"J" = (/obj/structure/table/rack,/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/random_multi/single_item/sfr_headset,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"J" = (/obj/structure/undies_wardrobe,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"K" = (/obj/machinery/light/flamp,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"K" = (/obj/structure/table/rack,/obj/item/clothing/shoes/boots/winter,/obj/item/clothing/suit/storage/hooded/wintercoat,/obj/random_multi/single_item/sfr_headset,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"L" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 15; tag = "icon-sink (EAST)"},/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"L" = (/obj/machinery/light/flamp,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"M" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/clown,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"M" = (/obj/structure/sink{dir = 4; icon_state = "sink"; pixel_x = 15; tag = "icon-sink (EAST)"},/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"N" = (/obj/structure/table/rack,/obj/item/ammo_magazine/clip/c545/hunter,/obj/item/weapon/gun/projectile/shotgun/pump/rifle,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"N" = (/obj/structure/bed/padded,/obj/item/weapon/bedsheet/clown,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"O" = (/obj/structure/table/rack,/obj/item/device/gps/on{gps_tag = "Sif Free Radio"},/obj/item/device/flashlight/lantern,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"O" = (/obj/structure/table/rack,/obj/item/ammo_magazine/clip/c545/hunter,/obj/item/weapon/gun/projectile/shotgun/pump/rifle,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
"P" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
"P" = (/obj/structure/table/rack,/obj/item/device/flashlight/lantern,/obj/item/device/gps{gps_tag = "Sif Free Radio"},/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
|
"Q" = (/obj/machinery/portable_atmospherics/hydroponics,/turf/simulated/floor/wood,/area/submap/DJOutpost1)
|
||||||
|
|
||||||
(1,1,1) = {"
|
(1,1,1) = {"
|
||||||
aaaaaaaaaaaaaaaa
|
aaaaaaaaaaaaaaaa
|
||||||
@@ -49,12 +50,12 @@ abbehebeeeeibbaa
|
|||||||
adehjekeeelemnoa
|
adehjekeeelemnoa
|
||||||
abpeeqbeeelrsbta
|
abpeeqbeeelrsbta
|
||||||
abuvewbeexyzAbBa
|
abuvewbeexyzAbBa
|
||||||
abbbbbbkbbbbbbaa
|
abbbbbbCbbbbbbaa
|
||||||
abpeeeeeeeeeCbaa
|
abpeeeeeeeeeDbaa
|
||||||
abDeeeeeeeeeEbaa
|
abEeeeeeeeeeFbaa
|
||||||
adFeebbGbbeeHdaa
|
adGeebbHbbeeIdaa
|
||||||
abbIebJeKbeLbbaa
|
abbJebKeLbeMbbaa
|
||||||
aabbMbNeObPbbaaa
|
aabbNbOePbQbbaaa
|
||||||
aaabdbbGbbdbaaaa
|
aaabdbbHbbdbaaaa
|
||||||
aaaaaaaaaaaaaaaa
|
aaaaaaaaaaaaaaaa
|
||||||
"}
|
"}
|
||||||
|
|||||||
@@ -142,6 +142,10 @@ var/list/all_maps = list()
|
|||||||
else
|
else
|
||||||
return list()
|
return list()
|
||||||
|
|
||||||
|
/datum/map/proc/get_zlevel_name(var/index)
|
||||||
|
var/datum/map_z_level/Z = zlevels["[index]"]
|
||||||
|
return Z.name
|
||||||
|
|
||||||
// Another way to setup the map datum that can be convenient. Just declare all your zlevels as subtypes of a common
|
// Another way to setup the map datum that can be convenient. Just declare all your zlevels as subtypes of a common
|
||||||
// subtype of /datum/map_z_level and set zlevel_datum_type on /datum/map to have the lists auto-initialized.
|
// subtype of /datum/map_z_level and set zlevel_datum_type on /datum/map to have the lists auto-initialized.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user