mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-11 18:53:06 +00:00
everything but shuttles functional commit so let's back it up online
This commit is contained in:
@@ -72,7 +72,7 @@
|
||||
icon_state = unknown_state
|
||||
color = null
|
||||
desc = "Scan this to find out more information."
|
||||
|
||||
|
||||
|
||||
// You generally shouldn't destroy these.
|
||||
/obj/effect/overmap/visitable/Destroy()
|
||||
@@ -143,7 +143,7 @@
|
||||
if(A in SSshuttles.shuttle_areas)
|
||||
return 0
|
||||
if(is_type_in_list(A, unowned_areas))
|
||||
return 0
|
||||
return 0
|
||||
if(get_z(object) in map_z)
|
||||
return 1
|
||||
|
||||
@@ -213,17 +213,17 @@
|
||||
This beacon was launched from '[initial(name)]'. I can provide this additional information to rescuers: [get_distress_info()]. \
|
||||
Per the Interplanetary Convention on Space SAR, those receiving this message must attempt rescue, \
|
||||
or relay the message to those who can. This message will repeat one time in 5 minutes. Thank you for your urgent assistance."
|
||||
|
||||
|
||||
if(!levels_for_distress)
|
||||
levels_for_distress = list(1)
|
||||
for(var/zlevel in levels_for_distress)
|
||||
priority_announcement.Announce(message, new_title = "Automated Distress Signal", new_sound = 'sound/AI/sos.ogg', zlevel = zlevel)
|
||||
|
||||
|
||||
var/image/I = image(icon, icon_state = "distress")
|
||||
I.plane = PLANE_LIGHTING_ABOVE
|
||||
I.appearance_flags = KEEP_APART|RESET_TRANSFORM|RESET_COLOR
|
||||
add_overlay(I)
|
||||
|
||||
|
||||
addtimer(CALLBACK(src, .proc/distress_update), 5 MINUTES)
|
||||
return TRUE
|
||||
|
||||
@@ -256,6 +256,8 @@
|
||||
|
||||
global.using_map.sealed_levels |= global.using_map.overmap_z
|
||||
|
||||
if(!GLOB.dynamic_sector_master) //CHOMPedit: hook dynamic sector generation into overmap gen
|
||||
new /obj/effect/overmap/visitable/dynamic // CHOMPedit, glob var assignment is handled in the object.
|
||||
|
||||
testing("Overmap build complete.")
|
||||
return 1
|
||||
|
||||
|
||||
@@ -1,104 +0,0 @@
|
||||
"aI" = (/obj/item/device/gps/internal/poi{name = "#$(@@%$#"},/turf/simulated/wall/r_wall,/area/submap/listeningpost)
|
||||
"br" = (/obj/effect/catwalk_plated/techmaint,/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"er" = (/mob/living/simple_mob/humanoid/merc/ranged/space,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"ex" = (/obj/structure/disposalpipe/segment,/turf/simulated/mineral,/area/submap/listeningpost)
|
||||
"gq" = (/obj/structure/disposalpipe/segment{dir = 4; icon_state = "pipe-c"},/turf/simulated/mineral,/area/submap/listeningpost)
|
||||
"gQ" = (/obj/machinery/vending/cola,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"gZ" = (/obj/machinery/shower{dir = 8; tag = "icon-shower (WEST)"},/turf/simulated/floor/tiled/freezer,/area/submap/listeningpost)
|
||||
"hP" = (/obj/item/weapon/paper/monitorkey,/obj/item/clothing/glasses/regular,/obj/structure/table/steel,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"hU" = (/obj/item/clothing/suit/space/syndicate,/obj/item/clothing/mask/gas,/obj/item/clothing/head/helmet/space/syndicate,/obj/structure/table/rack/shelf/steel,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"iH" = (/obj/item/weapon/paper{info = "<b>Mission Details</b>: You have been assigned to a newly constructed listening post constructed within an asteroid in Nanotrasen space to monitor their plasma mining operations. Accurate intel is crucial to the success of our operatives onboard, do not fail us."; name = "mission briefing"},/obj/structure/table/steel,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"kh" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"ki" = (/turf/simulated/mineral,/area/submap/listeningpost)
|
||||
"lY" = (/obj/machinery/door/airlock,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"ml" = (/obj/structure/table/rack/shelf/steel,/obj/item/weapon/storage/toolbox/syndicate/powertools,/obj/item/weapon/cell/super/empty,/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"mq" = (/turf/simulated/floor/tiled/freezer,/area/submap/listeningpost)
|
||||
"mT" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"nq" = (/obj/machinery/telecomms/relay/preset/ruskie,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"nx" = (/obj/machinery/power/apc/high{dir = 8; pixel_x = -20},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"nK" = (/obj/structure/table/steel,/obj/item/device/radio/bluespacehandset/linked/talon_prelinked,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"pK" = (/obj/structure/table/steel,/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"qx" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "spacebar_control"; pixel_x = -26; pixel_y = -26; tag_exterior_door = "spacebar_exterior"; tag_interior_door = "spacebar_interior"},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"rP" = (/turf/template_noop,/area/template_noop)
|
||||
"tg" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/mineral,/area/submap/listeningpost)
|
||||
"tX" = (/obj/item/weapon/tank/jetpack/carbondioxide,/obj/item/weapon/tank/air,/obj/structure/table/rack/shelf/steel,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"ub" = (/mob/living/simple_mob/humanoid/merc/ranged/space/shotgun/auto,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"uw" = (/obj/random/outcrop,/turf/simulated/mineral/floor/vacuum,/area/submap/listeningpost)
|
||||
"uD" = (/obj/machinery/access_button{command = "cycle_exterior"; frequency = 1379; master_tag = "listeningpost_control"; name = "External Access Button"; pixel_y = -26},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "listeningpost_exterior"; locked = 1; name = "Bar Airlock"},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"uM" = (/obj/machinery/light/small{dir = 1},/obj/structure/table/steel,/obj/item/device/radio/bluespacehandset/linked/talon_prelinked,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"vl" = (/turf/simulated/wall/r_wall,/area/submap/listeningpost)
|
||||
"vm" = (/obj/machinery/computer/message_monitor{dir = 4},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"wB" = (/obj/machinery/disposal,/obj/structure/disposalpipe/trunk{dir = 4},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"xD" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/effect/floor_decal/rust,/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"ya" = (/turf/simulated/mineral/floor/vacuum,/area/submap/listeningpost)
|
||||
"yD" = (/obj/machinery/embedded_controller/radio/airlock/access_controller{id_tag = "listeningpost_control"; pixel_x = 25; pixel_y = -26; tag_exterior_door = "listeningpost_exterior"; tag_interior_door = "listeningpost_interior"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"zd" = (/obj/structure/filingcabinet,/obj/item/weapon/paper{info = "A good start to the operation: intercepted Nanotrasen military communications. A convoy is scheduled to transfer nuclear warheads to a new military base. This is as good a chance as any to get our hands on some heavy weaponry, I suggest we take it."; name = "april report"},/obj/item/weapon/paper{info = "Nothing of real interest to report this month. I have intercepted faint transmissions from what appears to be some sort of pirate radio station. They do not appear to be relevant to my assignment."; name = "may report"},/obj/item/weapon/paper{info = "Nanotrasen communications have been noticably less frequent recently. The pirate radio station I found last month has been transmitting pro-Nanotrasen propaganda. I will continue to monitor it."; name = "june report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "july report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "august report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "september report"},/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "october report"},/obj/item/weapon/paper{info = "1 x Stechtkin pistol - $600<br>1 x silencer - $200<br>shipping charge - $4360<br>total - $5160"; name = "receipt"},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"zk" = (/turf/simulated/wall,/area/submap/listeningpost)
|
||||
"zo" = (/obj/machinery/light/small,/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"Ac" = (/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"Ba" = (/obj/structure/disposaloutlet{dir = 4},/obj/structure/disposalpipe/trunk{dir = 8},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"BG" = (/obj/machinery/vending/snack,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"Gg" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "listeningpost_exterior"; locked = 1; name = "Bar Airlock"},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"GT" = (/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"IL" = (/obj/machinery/light/small{dir = 8},/turf/simulated/floor/tiled/freezer,/area/submap/listeningpost)
|
||||
"Kl" = (/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/machinery/power/port_gen/pacman,/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"KY" = (/obj/item/weapon/paper{info = "Nothing of interest to report."; name = "november report"},/obj/item/weapon/pen,/obj/structure/table/steel,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"LC" = (/obj/effect/catwalk_plated/techmaint,/turf/template_noop,/area/template_noop)
|
||||
"MO" = (/obj/machinery/access_button{command = "cycle_interior"; frequency = 1379; master_tag = "listeningpost_control"; name = "Internal Access Button"; pixel_x = 7; pixel_y = -26},/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "listeningpost_interior"; locked = 1; name = "Bar Airlock"},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"Nv" = (/obj/structure/table/rack/shelf/steel,/obj/item/stack/material/phoron{amount = 10},/obj/item/stack/material/phoron{amount = 10},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"Ny" = (/obj/machinery/door/airlock,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"NE" = (/obj/structure/closet,/obj/item/clothing/gloves/boxing,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"OM" = (/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"PL" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/wall/r_wall,/area/submap/listeningpost)
|
||||
"Qp" = (/obj/machinery/light/small,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"Ri" = (/obj/machinery/door/airlock{name = "Toilet"},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"RJ" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"Sd" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/mineral,/area/submap/listeningpost)
|
||||
"Sj" = (/obj/machinery/power/smes/buildable/hybrid,/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
"TS" = (/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"Vz" = (/turf/simulated/floor/tiled/asteroid_steel,/area/submap/listeningpost)
|
||||
"WK" = (/obj/structure/toilet{dir = 8; tag = "icon-toilet00 (WEST)"},/turf/simulated/floor/tiled/freezer,/area/submap/listeningpost)
|
||||
"WO" = (/obj/machinery/door/airlock/glass_external{autoclose = 0; frequency = 1379; icon_state = "door_locked"; id_tag = "listeningpost_interior"; locked = 1; name = "Bar Airlock"},/turf/simulated/floor/plating,/area/submap/listeningpost)
|
||||
|
||||
(1,1,1) = {"
|
||||
rPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPkikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPkikikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPkikirPkikirPrPrPrP
|
||||
rPrPrPkikikikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPkirPrPrPrPkikikikirPrPrPrPrPrP
|
||||
rPrPrPkikikikikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPkirPrPrPrPrPrPkikikikirPrPrPrPrPrP
|
||||
rPrPrPrPkikikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPkikikirPrPrPrPrPrPkikirPrPrPrPrPrP
|
||||
rPrPrPrPrPkikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPkikikikirPrPrPrPrPrPrPrPrPkirPrPrP
|
||||
rPrPrPrPrPrPrPkikirPrPrPkikikikirPrPrPrPrPrPrPrPrPkikirPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPrPrPrPrPrPkikikikikikikikikirPrPrPrPrPrPrPrPrPrPrPrPrPkikirPrPrPrPrPrP
|
||||
rPrPrPrPrPrPrPrPkikikikikikikikikikikikikikirPrPrPrPrPrPrPrPrPkikikikirPrPrPrPrP
|
||||
rPrPrPrPrPrPrPyayauwkikikikikikikikikikikikikikirPrPrPrPrPrPrPrPrPkikikirPrPrPrP
|
||||
rPrPrPrPrPrPyayayayayakikikikikivlvlvlvlvlkikikikikirPrPrPrPrPrPrPrPkikikirPrPrP
|
||||
rPrPrPrPkikikikiyayayakikikikikivlmlNvKlvlvlkikikikikirPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPkikikikikiyayayakikikikikikivlGTzoxDSjvlkikikikikikirPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPkikikikikiyayayauwkikikikikikivlvlvllYzkvlvlvlvlbrrPkikirPrPrPrPrPrPrPrPrPrPrP
|
||||
rPyauwkikiuwyayayakikikikikikivlvlhPuMRJVzWOmTGTGgbrLCLCrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPyayayayayayakikikikikikikivlvmubKYqxyDMOGTGTuDbrLCLCrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPyayayayayayakikikikikikikivlaInxnKActXvlvlvlvlbryayarPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPyayayayayayakikikikikikikivlnqVzQpTShUvlkikikikikikikirPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPyayayakikiuwyakikikikivlvlvlvlNyzkzkzkvlkigqtgtgBarPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPyakikikikiyakikikikivlkhpKzkVzOMVzBGvlkiexkikikikikirPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPyauwkikiyayakikikikivlerTSNyVzTSVzgQvlkiexkikikikikirPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPkikikiyayayakikikikivlNEzdzkiHVzwBPLPLtgSdkikikikirPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPkiyayakikikikikikivlvlvlvlvlRizkvlkikikikikikirPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPrPkikikikikikikikikikikivlILgZvlkikikikikikikikirPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPrPrPkikikikikikikikikikivlmqWKvlkikikikikikiyayarPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPrPrPkikikikikikikikikikivlvlvlvlkikikikikiyayarPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPkikikikikikikikikikikikikikikikikikiuwyayayayarPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPrPkikikikikikikikikikikikikikikiyayayayayarPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPrPrPrPkikikikikikikikikikikiyayayayayarPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPkikirPrPrPrPrPrPkikikikikikikiuwyayayayarPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPkikikirPrPrPkikikikikikikiyayayayarPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPkikikikikirPrPrPrPrPrPkikiyayayarPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPkikikirPrPkikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPrPkikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPkikikikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPkikikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPkikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPrPkikirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
rPrPrPkirPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrPrP
|
||||
"}
|
||||
287
modular_chomp/code/modules/overmap/dynamic_sector.dm
Normal file
287
modular_chomp/code/modules/overmap/dynamic_sector.dm
Normal file
@@ -0,0 +1,287 @@
|
||||
// This is an attempt to make space POI's which load/unload on demand, so we can have 50 overmap POI's without
|
||||
// 50 z-levels (which may lead to OOM). No idea what forces I'm working with, so let's see how poorly this goes.
|
||||
|
||||
GLOBAL_VAR_INIT(dynamic_sector_master, null)
|
||||
// Also adjust find_z_levels() if you adjust increase dynamic levels, that part is hard-coded so you don't gloss over world.increment_max_z().
|
||||
#define MAX_DYNAMIC_LEVELS 3
|
||||
#define MAX_DYNAMIC_POI_DIMENSIONS 94 // Keep this an even number if using even world.maxx/maxy
|
||||
|
||||
// The "master" object, which creates + stores + registers the actual z-levels used for dynamic POI's. Handles overmap
|
||||
// sanity checks, + procs, should not be directly accessible by players. Do not use in maps. Only 1 should exist currently.
|
||||
/obj/effect/overmap/visitable/dynamic
|
||||
name = "DO NOT USE IN MAPS"
|
||||
known = FALSE
|
||||
scannable = FALSE
|
||||
invisibility = 101
|
||||
in_space = TRUE
|
||||
scanner_desc = "You should not see this."
|
||||
var/generated_z = FALSE
|
||||
|
||||
// Initialized to match max dynamic levels.
|
||||
map_z = list(null,null,null)
|
||||
|
||||
// Overmap poi's CURRENTLY USING a z-level. Dynamic POI's get referenced here when loading in and removed when unloaded.
|
||||
// Length must match map_z length or bad things may happen.
|
||||
var/list/active_pois[MAX_DYNAMIC_LEVELS]
|
||||
var/list/all_children = list()
|
||||
|
||||
|
||||
// This handles generating and assigning z-levels. Overriding this proc means we don't need a hacky Initialize() override.
|
||||
// This means extra_z_levels won't do anything, which is intentional.
|
||||
/obj/effect/overmap/visitable/dynamic/find_z_levels()
|
||||
if(!generated_z && (GLOB.dynamic_sector_master == src)) // Ensure this only runs once per round.
|
||||
for(var/i = 1; i <= 3; i++) // Hard-coding limit because this is dangerous.
|
||||
world.increment_max_z()
|
||||
map_z[i] = world.maxz
|
||||
generated_z = TRUE
|
||||
|
||||
/obj/effect/overmap/visitable/dynamic/Initialize()
|
||||
if(!GLOB.dynamic_sector_master)
|
||||
GLOB.dynamic_sector_master = src
|
||||
. = ..()
|
||||
create_children()
|
||||
|
||||
// Create POI objects for each overmap POI template, link to parent. Initialize() of children handles turf assignment
|
||||
/obj/effect/overmap/visitable/dynamic/proc/create_children()
|
||||
for(var/datum/map_template/dynamic_overmap/poi as anything in subtypesof(/datum/map_template/dynamic_overmap))
|
||||
if(!initial(poi.mappath) || !initial(poi.name)) // Exclude templates without an actual map (or are not included in the mapping subsystem map_templates)
|
||||
continue
|
||||
var/obj/effect/overmap/visitable/dynamic/poi/P = new()
|
||||
P.my_template = SSmapping.map_templates[initial(poi.name)] // Link to the stored map datums.
|
||||
P.parent = src
|
||||
all_children.Add(P)
|
||||
P.seed_overmap()
|
||||
|
||||
// Randomly unload a child POI, if possible. Returns the index of the recovered level if successful, 0 if not.
|
||||
// Should only be called if active_pois[] is full.
|
||||
/obj/effect/overmap/visitable/dynamic/proc/cull_child(mob/user)
|
||||
var/random_index = rand(1,MAX_DYNAMIC_LEVELS)
|
||||
var/obj/effect/overmap/visitable/dynamic/poi/P
|
||||
|
||||
if(is_empty(random_index)) // If this z-level is empty, destroy the poi
|
||||
P = active_pois[random_index]
|
||||
P.destroy_poi(user)
|
||||
active_pois[random_index] = null // Should be set in destroy_poi but this lets us use the z-level again if anything goes horribly wrong.
|
||||
return random_index
|
||||
|
||||
for(var/i = 1, i <= MAX_DYNAMIC_LEVELS, i++) // Level was not empty, check remaining levels
|
||||
if(i == random_index)
|
||||
continue // Don't run this one again.
|
||||
if(is_empty(i))
|
||||
P = active_pois[i]
|
||||
P.destroy_poi(user)
|
||||
active_pois[i] = null
|
||||
return i
|
||||
return 0
|
||||
|
||||
/obj/effect/overmap/visitable/dynamic/proc/is_empty(var/index, var/mob/observer)
|
||||
if(!LAZYLEN(map_z))
|
||||
log_and_message_admins("CANARY: [src] tried to check is_empty, but map_z is `[map_z || "null"]`")
|
||||
return TRUE
|
||||
if(!index)
|
||||
index = 1
|
||||
testing("Checking if sector at [map_z[index]] has no players.")
|
||||
for(var/mob/M in global.player_list)
|
||||
if(M != observer && (M.z in map_z[index]))
|
||||
testing("There are people on it.")
|
||||
return FALSE
|
||||
return TRUE
|
||||
|
||||
// You generally shouldn't destroy these.
|
||||
/obj/effect/overmap/visitable/dynamic/Destroy()
|
||||
for(var/child in all_children)
|
||||
qdel(child)
|
||||
return ..()
|
||||
|
||||
// These are the player-viewable/interactible POI's which tell the parent how to use its z-levels. Spawned by the parent.
|
||||
/obj/effect/overmap/visitable/dynamic/poi
|
||||
name = "bluespace static"
|
||||
unknown_name = "bluespace static"
|
||||
unknown_state = "poi"
|
||||
known = FALSE
|
||||
scannable = TRUE
|
||||
invisibility = 0
|
||||
in_space = TRUE
|
||||
map_z = list(null) // Override parent value
|
||||
active_pois = null
|
||||
var/obj/effect/overmap/visitable/dynamic/parent // The object which created us.
|
||||
var/datum/map_template/dynamic_overmap/my_template
|
||||
var/last_scanned = 0 // Timer to prevent spamming POI loading/unloading since that's probably exploitable.
|
||||
var/loaded = FALSE
|
||||
var/my_index = 0 // Tracks which z-level we're using in the parent. Corresponds to index in parent's active_pois[]
|
||||
|
||||
/obj/effect/overmap/visitable/dynamic/poi/Initialize()
|
||||
if(!global.using_map.use_overmap)
|
||||
return INITIALIZE_HINT_QDEL
|
||||
|
||||
// Normally Initialize() would do this but I need it to call after Initialize(), therefore new proc.
|
||||
/obj/effect/overmap/visitable/dynamic/poi/proc/seed_overmap()
|
||||
start_x = start_x || rand(OVERMAP_EDGE, global.using_map.overmap_size - OVERMAP_EDGE)
|
||||
start_y = start_y || rand(OVERMAP_EDGE, global.using_map.overmap_size - OVERMAP_EDGE)
|
||||
|
||||
forceMove(locate(start_x, start_y, global.using_map.overmap_z))
|
||||
|
||||
if(!docking_codes)
|
||||
docking_codes = "[ascii2text(rand(65,90))][ascii2text(rand(65,90))][ascii2text(rand(65,90))][ascii2text(rand(65,90))]"
|
||||
|
||||
if(known)
|
||||
plane = PLANE_LIGHTING_ABOVE
|
||||
for(var/obj/machinery/computer/ship/helm/H in global.machines)
|
||||
H.get_known_sectors()
|
||||
else
|
||||
real_appearance = image(icon, src, my_template.poi_icon)
|
||||
real_appearance.override = TRUE
|
||||
name = unknown_name
|
||||
icon_state = unknown_state
|
||||
color = null
|
||||
desc = "Scan this to find out more information."
|
||||
|
||||
// Grab scanner info from map template, allow the user to load/unload POI's.
|
||||
/obj/effect/overmap/visitable/dynamic/poi/get_scan_data(user)
|
||||
scanner_desc = my_template.scanner_desc
|
||||
if(!known)
|
||||
known = TRUE
|
||||
name = my_template.name
|
||||
icon_state = my_template.poi_icon
|
||||
color = my_template.poi_color
|
||||
desc = initial(desc)
|
||||
|
||||
if(loaded)
|
||||
var/confirm = alert(user, "Sever bluespace link? This location will become permanently inaccessible.", "Are you sure?", "No", "Yes")
|
||||
if(confirm == "Yes")
|
||||
if(is_empty(1)) // Dynamic POI's should only ever have 1 entry in map_z
|
||||
destroy_poi(user) // Delete POI from dynamic z-level
|
||||
else
|
||||
to_chat(user, "Unable to sever link. Location likely contains living realspace entities.")
|
||||
else
|
||||
var/confirm = alert(user, "Transient subspace anomaly detected. Tether object to realspace?", "Stabilize anomaly?", "Yes", "No")
|
||||
if(confirm == "Yes")
|
||||
create_poi(user) // Load POI to dynamic z-level
|
||||
|
||||
return ..()
|
||||
|
||||
// Loads POI template into a dynamic z-level
|
||||
/obj/effect/overmap/visitable/dynamic/poi/proc/create_poi(mob/user)
|
||||
if(!parent) // Ideally this should never happen.
|
||||
log_and_message_admins("Dynamic overmap POI attempted to generate without a parent z-level.")
|
||||
qdel(src)
|
||||
return
|
||||
if(!my_template) // Also shouldn't happen.
|
||||
log_and_message_admins("Dynamic overmap POI attempted to generate without a map template.")
|
||||
qdel(src)
|
||||
return
|
||||
if(loaded) // These may only be created once.
|
||||
return
|
||||
if(last_scanned + 10 SECONDS > world.time)
|
||||
to_chat(user, "\[REDACTED\] matrix is still recharging!")
|
||||
return
|
||||
last_scanned = world.time
|
||||
|
||||
for(var/i = 1, i <= MAX_DYNAMIC_LEVELS, i++)
|
||||
if(!parent.active_pois[i]) // We found an unused z-level
|
||||
my_index = i
|
||||
parent.active_pois[i] = src
|
||||
map_z[1] = parent.map_z[i]
|
||||
map_sectors["[parent.map_z[i]]"] = src // Pass ownership of z-level to child, probably hacky and terribad
|
||||
break // Terminate loop
|
||||
if(!my_index) // No z-levels available
|
||||
var/confirm = alert(user, "\[REDACTED\] matrix at capacity; a bluespace link must be permanently severed to stabilize this anomaly. Continue?", "Are you sure?", "No", "Yes")
|
||||
if(confirm == "Yes")
|
||||
my_index = parent.cull_child(user)
|
||||
if(my_index)
|
||||
parent.active_pois[my_index] = src
|
||||
map_z[1] = parent.map_z[my_index]
|
||||
map_sectors["[parent.map_z[my_index]]"] = src
|
||||
else // Something went wrong, ideally due to all relevant z-levels containing players.
|
||||
to_chat(user, "Unable to sever any bluespace link. All links likely contain living realspace entities.")
|
||||
return
|
||||
else
|
||||
return
|
||||
|
||||
var/turf/T = locate(round(world.maxx/2), round(world.maxy/2), map_z[1]) // Find center turf, or near center for even-dimension maps.
|
||||
if(!istype(T))
|
||||
log_debug("Dynamic overmap POI found [T] instead of a valid turf.")
|
||||
return
|
||||
my_template.load(T, centered=TRUE)
|
||||
loaded = TRUE
|
||||
my_template.update_lighting(T)
|
||||
to_chat(user, "Stabilization tether successfully created.")
|
||||
if(my_template.active_icon)
|
||||
icon_state = my_template.active_icon
|
||||
|
||||
/obj/effect/overmap/visitable/dynamic/poi/proc/destroy_poi(mob/user)
|
||||
if(!loaded) // Ideally this should never happen.
|
||||
log_debug("Dynamic overmap POI tried to unload itself but is not loaded.")
|
||||
return
|
||||
if(!parent) // Also shouldn't happen.
|
||||
log_and_message_admins("Dynamic overmap POI attempted to unload without a parent z-level.")
|
||||
loaded = FALSE // Always make sure loaded = FALSE before using qdel(src) in this proc to prevent an infinite loop in Destroy().
|
||||
qdel(src)
|
||||
return
|
||||
if(!((my_index >= 1) && (my_index <= MAX_DYNAMIC_LEVELS))) // Make sure my_index is sane
|
||||
log_debug("Dynamic overmap POI attempted to unload with an invalid index.")
|
||||
loaded = FALSE
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
map_sectors["[parent.map_z[my_index]]"] = parent // Pass ownership back to parent.
|
||||
parent.active_pois[my_index] = null
|
||||
if(!LAZYLEN(map_z)) // If this is 0, how did we get this far?
|
||||
log_and_message_admins("Dynamic overmap POI attempted to unload without a linked z-level.")
|
||||
loaded = FALSE
|
||||
qdel(src)
|
||||
return
|
||||
|
||||
to_chat(user, "Destabilization initiated...")
|
||||
log_debug("Dynamic overmap POI unloading initiated...")
|
||||
// Some math to return a block of MAX_DYNAMIC_POI_DIMENSIONS turfs. Basically, start from center turf and subtract half of max dimensons for bottom left corner, add for top right corner.
|
||||
var/list/turfs_to_reset = block(locate(round(world.maxx/2 - MAX_DYNAMIC_POI_DIMENSIONS/2), round(world.maxy/2 - MAX_DYNAMIC_POI_DIMENSIONS/2), map_z[1]), locate(round(world.maxx/2 + MAX_DYNAMIC_POI_DIMENSIONS/2), round(world.maxy/2 + MAX_DYNAMIC_POI_DIMENSIONS/2), map_z[1]))
|
||||
var/deleted_atoms = 0
|
||||
if(turfs_to_reset.len)
|
||||
for(var/turf/T in turfs_to_reset)
|
||||
for(var/atom/movable/AM in T)
|
||||
if(istype(AM, /mob/observer))
|
||||
continue
|
||||
++deleted_atoms
|
||||
qdel(AM)
|
||||
T = T.ChangeTurf(/turf/space)
|
||||
ChangeArea(T, /area/space)
|
||||
loaded = FALSE
|
||||
map_z = null
|
||||
icon_state = "ring_destroyed"
|
||||
log_debug("Dynamic POI unload complete, [deleted_atoms] atoms destroyed.")
|
||||
to_chat(user, "Subspace pocket collapse successful.")
|
||||
qdel(src)
|
||||
|
||||
/obj/effect/overmap/visitable/dynamic/poi/Destroy()
|
||||
if(loaded)
|
||||
if(is_empty()) // If we're deleted while loaded but the z-level is occupied, relinquish ownership instead.
|
||||
destroy_poi()
|
||||
else
|
||||
if(parent && (parent.active_pois.len >= my_index) && (parent.map_z.len >= my_index) && (my_index > 0)) // Unless vars are turbofucked.
|
||||
map_sectors["[parent.map_z[my_index]]"] = parent
|
||||
parent.active_pois[my_index] = null
|
||||
if(parent)
|
||||
parent.all_children.Remove(src)
|
||||
return ..()
|
||||
|
||||
// This assigns map_sectors which we don't want for this subtype since we have other procs to handle it.
|
||||
/obj/effect/overmap/visitable/dynamic/poi/register_z_levels()
|
||||
return
|
||||
|
||||
// Make sure we reassign our z_level to the parent if one exists and somehow this gets called.
|
||||
/obj/effect/overmap/visitable/dynamic/poi/unregister_z_levels()
|
||||
if(parent && LAZYLEN(map_z))
|
||||
map_sectors["[map_z[1]]"] = parent
|
||||
map_z = null
|
||||
return ..()
|
||||
|
||||
// Hahah recursion
|
||||
/obj/effect/overmap/visitable/dynamic/poi/create_children()
|
||||
return
|
||||
|
||||
/obj/effect/overmap/visitable/dynamic/poi/cull_child()
|
||||
return
|
||||
|
||||
#undef MAX_DYNAMIC_LEVELS
|
||||
#undef MAX_DYNAMIC_POI_DIMENSIONS
|
||||
File diff suppressed because it is too large
Load Diff
@@ -1,165 +1,165 @@
|
||||
"aa" = (/turf/template_noop,/area/template_noop)
|
||||
"ab" = (/obj/structure/lattice,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"ac" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"af" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"al" = (/obj/machinery/sleeper{dir = 4},/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"am" = (/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"an" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 5},/obj/item/weapon/storage/firstaid/fire,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"ao" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/turf/simulated/floor/tiled/old_tile/purple,/area/submap/onehalf)
|
||||
"ap" = (/turf/simulated/floor/tiled/old_tile/purple,/area/submap/onehalf)
|
||||
"aq" = (/obj/machinery/door/airlock/external,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"av" = (/obj/machinery/door/blast/regular,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ax" = (/obj/structure/lattice,/turf/template_noop,/area/submap/onehalf)
|
||||
"ay" = (/obj/structure/table/standard,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"az" = (/obj/machinery/washing_machine,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aA" = (/obj/structure/bed/roller,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aB" = (/obj/machinery/light{dir = 4},/obj/structure/table/standard,/obj/item/weapon/storage/firstaid{pixel_x = 4; pixel_y = 3},/obj/item/weapon/storage/firstaid/combat,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aC" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/old_tile/purple,/area/submap/onehalf)
|
||||
"aD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aE" = (/obj/structure/disposalpipe/trunk,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aF" = (/obj/structure/disposalpipe/trunk,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aJ" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aM" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment,/obj/machinery/door/blast/regular,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aQ" = (/turf/simulated/wall,/area/submap/onehalf)
|
||||
"aR" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/blast/regular,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aS" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aU" = (/obj/item/stack/material/steel,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance/medical{name = "Medical"},/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aW" = (/obj/machinery/door/airlock,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aY" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/closet/crate/medical,/obj/item/clothing/accessory/stethoscope,/obj/item/device/healthanalyzer/improved,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aZ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ba" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bb" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bc" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"be" = (/obj/structure/disposalpipe/broken{dir = 4; tag = "icon-pipe-b (EAST)"},/obj/item/stack/cable_coil/cut,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bg" = (/obj/structure/disposalpipe/junction{dir = 4; tag = "icon-pipe-j1 (EAST)"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bi" = (/obj/structure/disposalpipe/broken{dir = 4; tag = "icon-pipe-b (EAST)"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bk" = (/obj/structure/disposalpipe/junction{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bp" = (/obj/machinery/door/airlock/maintenance_hatch{name = "maintenance hatch"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"br" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-y"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bs" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bu" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bw" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bx" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"by" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bA" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bD" = (/obj/structure/disposalpipe/junction{dir = 8},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bF" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bH" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bI" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bJ" = (/obj/structure/girder,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bK" = (/obj/machinery/vending/coffee{name = "\improper Solar's Best Hot Drinks"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bL" = (/obj/machinery/vending/snack,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bQ" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bU" = (/obj/item/stack/material/steel,/turf/template_noop,/area/submap/onehalf)
|
||||
"bV" = (/obj/structure/disposalpipe/segment,/obj/item/stack/rods,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bX" = (/turf/simulated/wall/r_wall,/area/submap/onehalf)
|
||||
"bZ" = (/obj/structure/disposalpipe/junction{dir = 1; tag = "icon-pipe-j1 (NORTH)"},/obj/item/weapon/material/shard,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"ca" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cb" = (/obj/structure/grille,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cd" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ce" = (/obj/structure/table/standard,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cf" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cg" = (/obj/machinery/light{dir = 1; on = 1},/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ch" = (/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ci" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/table/standard,/obj/item/weapon/spacecash/c1000,/obj/item/weapon/spacecash/c1000{pixel_y = 11},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"ck" = (/obj/structure/girder/reinforced,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cl" = (/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cm" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/stack/rods,/turf/template_noop,/area/submap/onehalf)
|
||||
"cn" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/material/shard{icon_state = "small"; tag = "icon-small"},/turf/template_noop,/area/submap/onehalf)
|
||||
"co" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cp" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/table/standard,/obj/item/weapon/paper_bin,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cq" = (/obj/structure/bed/chair{dir = 8; icon_state = "chair"; tag = "icon-chair (WEST)"},/obj/effect/floor_decal/rust,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cs" = (/obj/structure/bed/chair{dir = 1; icon_state = "chair"; tag = "icon-chair (NORTH)"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ct" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/table/standard,/obj/item/weapon/flame/lighter/zippo/red,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cu" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cv" = (/obj/item/stack/rods,/turf/template_noop,/area/submap/onehalf)
|
||||
"cx" = (/obj/structure/lattice,/obj/item/stack/material/plasteel,/turf/template_noop,/area/submap/onehalf)
|
||||
"cy" = (/obj/structure/lattice,/obj/item/weapon/material/shard{icon_state = "medium"; tag = "icon-medium"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cz" = (/obj/structure/grille/broken,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cA" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cC" = (/obj/structure/cable,/obj/machinery/power/solar_control{dir = 8},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cD" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cE" = (/obj/item/stack/tile/wood,/turf/template_noop,/area/submap/onehalf)
|
||||
"cF" = (/turf/template_noop,/area/submap/onehalf)
|
||||
"cG" = (/obj/structure/lattice,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cH" = (/obj/structure/lattice,/obj/structure/disposalpipe/broken{dir = 1; tag = "icon-pipe-b (NORTH)"},/obj/structure/disposalpipe/broken{dir = 8; tag = "icon-pipe-b (WEST)"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cJ" = (/obj/machinery/light/small,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cK" = (/obj/machinery/door/airlock/maintenance/command{name = "Bridge"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cL" = (/obj/item/weapon/tool/crowbar,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cM" = (/obj/structure/safe/floor,/obj/item/weapon/tank/oxygen/red,/obj/item/clothing/mask/gas/syndicate,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cN" = (/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cO" = (/obj/structure/lattice,/obj/item/stack/cable_coil/cut,/turf/template_noop,/area/submap/onehalf)
|
||||
"cQ" = (/obj/machinery/light{dir = 8},/obj/machinery/vending/sovietsoda,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cR" = (/obj/item/stack/material/plasteel,/turf/template_noop,/area/submap/onehalf)
|
||||
"cS" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cU" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cV" = (/obj/structure/table/standard,/obj/machinery/recharger,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cW" = (/obj/structure/bed/chair,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cX" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cY" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cZ" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/template_noop,/area/submap/onehalf)
|
||||
"db" = (/obj/structure/table/standard,/obj/item/device/flashlight,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"dc" = (/obj/structure/table/standard,/obj/item/weapon/coin/phoron,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"dd" = (/obj/structure/closet/firecloset/full,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"de" = (/obj/machinery/light,/obj/structure/table/standard,/obj/item/weapon/storage/firstaid,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"df" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/template_noop,/area/submap/onehalf)
|
||||
"dg" = (/obj/structure/girder/reinforced,/obj/item/stack/material/plasteel,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"dj" = (/obj/structure/grille,/obj/item/weapon/material/shard,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dk" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dl" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dm" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dn" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"do" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/item/weapon/material/shard{icon_state = "medium"; tag = "icon-medium"},/turf/template_noop,/area/submap/onehalf)
|
||||
"dp" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/stack/rods,/turf/template_noop,/area/submap/onehalf)
|
||||
"dq" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"fE" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"nc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"oC" = (/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"pK" = (/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; dir = 8; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ud" = (/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; dir = 1; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"vw" = (/obj/structure/disposalpipe/junction{dir = 8},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"xF" = (/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"Dl" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"DD" = (/obj/structure/bed/chair{dir = 8; icon_state = "chair"; tag = "icon-chair (WEST)"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"MS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"RL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"So" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
|
||||
(1,1,1) = {"
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaabacacacacacacacacaccGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaacOacafaQaQaQaQaQaQcUaQaQcSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaacNaQaQaQaQalamanaQaoapaoaQaqaQavaQavaQavaQavaQaaDlDlDlaaaa
|
||||
aaaaaxaxaxayazaQaAoCaBaQaCapaoaQaDaQaEaQaFaQaEaQaEaQaxaQcNaQaaaa
|
||||
aaaaaacvcNaxcNaQaJaKaYaQaoapaoaQaqaQaMaQaRaQaRaQaRaQaaaQaSaQaaaa
|
||||
aaaaaxcNaxaTcNaQaQaVaQaQaQaWaQaQaXaZbafEbabbbabbbyaQaQaQbcaQaQaa
|
||||
aaaaaxaUbebdbhbhbhbgSobhbjbhbkblbmbwMSncMSbwbobwMSbwbpbqbrbscUaa
|
||||
aaaaaabibubwbwbwbwbxbwbwaLbwbAbBbCbwvwRLvwbwbDbEbFcNaQbHxFbIcUaa
|
||||
aaaaaabJcNaQcfbKbLcAdgckbXcNcabXbXbXbXbXbXbXbXbXbXbXaQaQcUaQaQaa
|
||||
aaaaaaaabUclbJaQckbXcNaxbXclbVcbaacUcdcecfcgchbQcibXaxaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaackaaaabUaxaxbZcmcncocpDDxFcscNxFctcucGaaaaaaaaaa
|
||||
aaaaaaaaaaaaaacvcNcxaaaacNcycabXbXbXcAxFxFxFcNcNcCcDcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaxcEaacFcGcHcKcJcKcNcNcLcMcNxFpKcDcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaacvaxcNcOclbXbXbXcQcNcNcNcNcNpKcDcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaacRcEaxcScNcUaxcUcVcqcNcWxFcNcXcYcZaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaacvaaaabXcjcNcUaacUdbdcddududcNdebXdfaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaadgaxclckczdjbXbXbXbXdkdldmdldnbXbXcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaacxdodpacacacacacdqacacacdqacacafaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
"}
|
||||
"aa" = (/turf/template_noop,/area/template_noop)
|
||||
"ab" = (/obj/structure/lattice,/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"ac" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"af" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"al" = (/obj/machinery/sleeper{dir = 4},/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"am" = (/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"an" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin{pixel_x = 3; pixel_y = 5},/obj/item/weapon/storage/firstaid/fire,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"ao" = (/obj/structure/bed,/obj/item/weapon/bedsheet/brown,/turf/simulated/floor/tiled/old_tile/purple,/area/submap/onehalf)
|
||||
"ap" = (/turf/simulated/floor/tiled/old_tile/purple,/area/submap/onehalf)
|
||||
"aq" = (/obj/machinery/door/airlock/external,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"av" = (/obj/machinery/door/blast/regular,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ax" = (/obj/structure/lattice,/turf/template_noop,/area/submap/onehalf)
|
||||
"ay" = (/obj/structure/table/standard,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"az" = (/obj/machinery/washing_machine,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aA" = (/obj/structure/bed/roller,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aB" = (/obj/machinery/light{dir = 4},/obj/structure/table/standard,/obj/item/weapon/storage/firstaid{pixel_x = 4; pixel_y = 3},/obj/item/weapon/storage/firstaid/combat,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aC" = (/obj/machinery/light{dir = 8},/turf/simulated/floor/tiled/old_tile/purple,/area/submap/onehalf)
|
||||
"aD" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/light/small{dir = 8},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aE" = (/obj/structure/disposalpipe/trunk,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aF" = (/obj/structure/disposalpipe/trunk,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/obj/item/weapon/ore/diamond,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aJ" = (/obj/machinery/iv_drip,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aK" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aM" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment,/obj/machinery/door/blast/regular,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aQ" = (/turf/simulated/wall,/area/submap/onehalf)
|
||||
"aR" = (/obj/structure/disposalpipe/segment,/obj/machinery/door/blast/regular,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aS" = (/obj/structure/disposalpipe/trunk,/obj/structure/disposaloutlet{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aT" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aU" = (/obj/item/stack/material/steel,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aV" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/machinery/door/airlock/maintenance/medical{name = "Medical"},/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aW" = (/obj/machinery/door/airlock,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"aX" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/industrial/warning{dir = 9},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"aY" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/structure/closet/crate/medical,/obj/item/clothing/accessory/stethoscope,/obj/item/device/healthanalyzer/improved,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/obj/item/weapon/reagent_containers/blood/OPlus,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"aZ" = (/obj/structure/cable{d2 = 8; icon_state = "0-8"},/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ba" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bb" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bc" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bd" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"be" = (/obj/structure/disposalpipe/broken{dir = 4; tag = "icon-pipe-b (EAST)"},/obj/item/stack/cable_coil/cut,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bg" = (/obj/structure/disposalpipe/junction{dir = 4; tag = "icon-pipe-j1 (EAST)"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bh" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bi" = (/obj/structure/disposalpipe/broken{dir = 4; tag = "icon-pipe-b (EAST)"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bj" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bk" = (/obj/structure/disposalpipe/junction{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bl" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bm" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bo" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bp" = (/obj/machinery/door/airlock/maintenance_hatch{name = "maintenance hatch"},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bq" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light/small{dir = 1},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"br" = (/obj/structure/disposalpipe/junction{dir = 1; icon_state = "pipe-y"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bs" = (/obj/structure/disposalpipe/trunk{dir = 8},/obj/machinery/disposal,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bu" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bw" = (/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bx" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"by" = (/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/industrial/warning{dir = 5},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bA" = (/obj/structure/disposalpipe/segment,/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bB" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/door/airlock/glass{name = "Central Access"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bC" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bD" = (/obj/structure/disposalpipe/junction{dir = 8},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bE" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bF" = (/obj/structure/disposalpipe/segment{dir = 8; icon_state = "pipe-c"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bH" = (/obj/machinery/portable_atmospherics/canister/oxygen,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bI" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bJ" = (/obj/structure/girder,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bK" = (/obj/machinery/vending/coffee{name = "\improper Solar's Best Hot Drinks"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bL" = (/obj/machinery/vending/snack,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bQ" = (/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"bU" = (/obj/item/stack/material/steel,/turf/template_noop,/area/submap/onehalf)
|
||||
"bV" = (/obj/structure/disposalpipe/segment,/obj/item/stack/rods,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"bX" = (/turf/simulated/wall/r_wall,/area/submap/onehalf)
|
||||
"bZ" = (/obj/structure/disposalpipe/junction{dir = 1; tag = "icon-pipe-j1 (NORTH)"},/obj/item/weapon/material/shard,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"ca" = (/obj/structure/disposalpipe/segment,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cb" = (/obj/structure/grille,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cd" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ce" = (/obj/structure/table/standard,/obj/item/weapon/paper,/obj/item/weapon/pen,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cf" = (/obj/structure/closet/emcloset,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cg" = (/obj/machinery/light{dir = 1; on = 1},/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ch" = (/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ci" = (/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/obj/structure/table/standard,/obj/item/weapon/spacecash/c1000,/obj/item/weapon/spacecash/c1000{pixel_y = 11},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cj" = (/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"ck" = (/obj/structure/girder/reinforced,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cl" = (/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cm" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/stack/rods,/turf/template_noop,/area/submap/onehalf)
|
||||
"cn" = (/obj/structure/lattice,/obj/structure/disposalpipe/segment{dir = 4},/obj/item/weapon/material/shard{icon_state = "small"; tag = "icon-small"},/turf/template_noop,/area/submap/onehalf)
|
||||
"co" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/disposalpipe/segment{dir = 4},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cp" = (/obj/structure/disposalpipe/segment{dir = 2; icon_state = "pipe-c"},/obj/structure/table/standard,/obj/item/weapon/paper_bin,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cq" = (/obj/structure/bed/chair{dir = 8; icon_state = "chair"; tag = "icon-chair (WEST)"},/obj/effect/floor_decal/rust,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cs" = (/obj/structure/bed/chair{dir = 1; icon_state = "chair"; tag = "icon-chair (NORTH)"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ct" = (/obj/structure/cable{d1 = 2; d2 = 4; icon_state = "2-4"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/structure/table/standard,/obj/item/weapon/flame/lighter/zippo/red,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cu" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cv" = (/obj/item/stack/rods,/turf/template_noop,/area/submap/onehalf)
|
||||
"cx" = (/obj/structure/lattice,/obj/item/stack/material/plasteel,/turf/template_noop,/area/submap/onehalf)
|
||||
"cy" = (/obj/structure/lattice,/obj/item/weapon/material/shard{icon_state = "medium"; tag = "icon-medium"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cz" = (/obj/structure/grille/broken,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cA" = (/obj/structure/disposalpipe/trunk{dir = 1},/obj/machinery/disposal,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cC" = (/obj/structure/cable,/obj/machinery/power/solar_control{dir = 8},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cD" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cE" = (/obj/item/stack/tile/wood,/turf/template_noop,/area/submap/onehalf)
|
||||
"cF" = (/turf/template_noop,/area/submap/onehalf)
|
||||
"cG" = (/obj/structure/lattice,/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cH" = (/obj/structure/lattice,/obj/structure/disposalpipe/broken{dir = 1; tag = "icon-pipe-b (NORTH)"},/obj/structure/disposalpipe/broken{dir = 8; tag = "icon-pipe-b (WEST)"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cJ" = (/obj/machinery/light/small,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cK" = (/obj/machinery/door/airlock/maintenance/command{name = "Bridge"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cL" = (/obj/item/weapon/tool/crowbar,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cM" = (/obj/structure/safe/floor,/obj/item/weapon/tank/oxygen/red,/obj/item/clothing/mask/gas/syndicate,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/obj/item/weapon/reagent_containers/food/drinks/bottle/rum,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cN" = (/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cO" = (/obj/structure/lattice,/obj/item/stack/cable_coil/cut,/turf/template_noop,/area/submap/onehalf)
|
||||
"cQ" = (/obj/machinery/light{dir = 8},/obj/machinery/vending/sovietsoda,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cR" = (/obj/item/stack/material/plasteel,/turf/template_noop,/area/submap/onehalf)
|
||||
"cS" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/template_noop,/area/submap/onehalf)
|
||||
"cU" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cV" = (/obj/structure/table/standard,/obj/machinery/recharger,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cW" = (/obj/structure/bed/chair,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cX" = (/obj/structure/table/standard,/obj/item/weapon/storage/firstaid/toxin,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"cY" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 4; icon_state = "0-4"},/obj/structure/cable,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"cZ" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 2; d2 = 8; icon_state = "2-8"},/turf/template_noop,/area/submap/onehalf)
|
||||
"db" = (/obj/structure/table/standard,/obj/item/device/flashlight,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"dc" = (/obj/structure/table/standard,/obj/item/weapon/coin/phoron,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"dd" = (/obj/structure/closet/firecloset/full,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"de" = (/obj/machinery/light,/obj/structure/table/standard,/obj/item/weapon/storage/firstaid,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"df" = (/obj/structure/lattice,/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/obj/structure/cable{d1 = 1; d2 = 2; icon_state = "1-2"},/turf/template_noop,/area/submap/onehalf)
|
||||
"dg" = (/obj/structure/girder/reinforced,/obj/item/stack/material/plasteel,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"dj" = (/obj/structure/grille,/obj/item/weapon/material/shard,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dk" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/cable{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dl" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dm" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"dn" = (/obj/structure/grille,/obj/effect/wingrille_spawn/reinforced,/obj/structure/cable{d2 = 2; icon_state = "0-2"},/obj/structure/cable{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"do" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/item/weapon/material/shard{icon_state = "medium"; tag = "icon-medium"},/turf/template_noop,/area/submap/onehalf)
|
||||
"dp" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 4; icon_state = "1-4"},/obj/item/stack/rods,/turf/template_noop,/area/submap/onehalf)
|
||||
"dq" = (/obj/structure/lattice,/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/structure/cable{d1 = 1; d2 = 8; icon_state = "1-8"; tag = ""},/turf/template_noop,/area/submap/onehalf)
|
||||
"fE" = (/obj/effect/floor_decal/industrial/warning{dir = 1},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"nc" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"oC" = (/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel{icon_state = "white"; tag = "icon-white"},/area/submap/onehalf)
|
||||
"pK" = (/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; dir = 8; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"ud" = (/obj/machinery/computer{desc = "A computer long since rendered non-functional due to lack of maintenance. Spitting out error messages."; dir = 1; name = "Broken Computer"},/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"vw" = (/obj/structure/disposalpipe/junction{dir = 8},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"xF" = (/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"Dl" = (/obj/effect/floor_decal/industrial/warning,/turf/simulated/floor/plating,/area/submap/onehalf)
|
||||
"DD" = (/obj/structure/bed/chair{dir = 8; icon_state = "chair"; tag = "icon-chair (WEST)"},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"MS" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/disposalpipe/segment,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"RL" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/machinery/light,/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
"So" = (/obj/structure/disposalpipe/segment{dir = 4},/obj/structure/cable{d1 = 4; d2 = 8; icon_state = "4-8"; tag = ""},/obj/effect/floor_decal/rust,/turf/simulated/floor/tiled/asteroid_steel/airless,/area/submap/onehalf)
|
||||
|
||||
(1,1,1) = {"
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaaaaaaabacacacacacacacacaccGaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaaaacOacafaQaQaQaQaQaQcUaQaQcSaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
aaaaaacNaQaQaQaQalamanaQaoapaoaQaqaQavaQavaQavaQavaQaaDlDlDlaaaa
|
||||
aaaaaxaxaxayazaQaAoCaBaQaCapaoaQaDaQaEaQaFaQaEaQaEaQaxaQcNaQaaaa
|
||||
aaaaaacvcNaxcNaQaJaKaYaQaoapaoaQaqaQaMaQaRaQaRaQaRaQaaaQaSaQaaaa
|
||||
aaaaaxcNaxaTcNaQaQaVaQaQaQaWaQaQaXaZbafEbabbbabbbyaQaQaQbcaQaQaa
|
||||
aaaaaxaUbebdbhbhbhbgSobhbjbhbkblbmbwMSncMSbwbobwMSbwbpbqbrbscUaa
|
||||
aaaaaabibubwbwbwbwbxbwbwaLbwbAbBbCbwvwRLvwbwbDbEbFcNaQbHxFbIcUaa
|
||||
aaaaaabJcNaQcfbKbLcAdgckbXcNcabXbXbXbXbXbXbXbXbXbXbXaQaQcUaQaQaa
|
||||
aaaaaaaabUclbJaQckbXcNaxbXclbVcbaacUcdcecfcgchbQcibXaxaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaackaaaabUaxaxbZcmcncocpDDxFcscNxFctcucGaaaaaaaaaa
|
||||
aaaaaaaaaaaaaacvcNcxaaaacNcycabXbXbXcAxFxFxFcNcNcCcDcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaxcEaacFcGcHcKcJcKcNcNcLcMcNxFpKcDcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaacvaxcNcOclbXbXbXcQcNcNcNcNcNpKcDcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaacRcEaxcScNcUaxcUcVcqcNcWxFcNcXcYcZaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaacvaaaabXcjcNcUaacUdbdcddududcNdebXdfaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaadgaxclckczdjbXbXbXbXdkdldmdldnbXbXcSaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaacxdodpacacacacacdqacacacdqacacafaaaaaaaaaa
|
||||
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
|
||||
"}
|
||||
212
modular_chomp/maps/overmap/space_pois/space_pois.dm
Normal file
212
modular_chomp/maps/overmap/space_pois/space_pois.dm
Normal file
@@ -0,0 +1,212 @@
|
||||
// This causes PoI maps to get 'checked' and compiled, when undergoing a unit test.
|
||||
// This is so CI can validate PoIs, and ensure future changes don't break PoIs, as PoIs are loaded at runtime and the compiler can't catch errors.
|
||||
// When adding a new PoI, please add it to this list.
|
||||
#if MAP_TEST
|
||||
#include "abandonedtele_13x12.dmm"
|
||||
#include "abandonedzoo_20x20.dmm"
|
||||
#include "asteroid1_20x20.dmm"
|
||||
#include "asteroid2_20x20.dmm"
|
||||
#include "asteroid3_20x20.dmm"
|
||||
#include "asteroid4_20x20.dmm"
|
||||
#include "asteroid5_40x40.dmm"
|
||||
#include "blowntcommsat_53x56.dmm"
|
||||
#include "clownmime_28x20.dmm"
|
||||
#include "debris1_20x20.dmm"
|
||||
#include "debris2_20x20.dmm"
|
||||
#include "debris3_30x20.dmm"
|
||||
#include "deepstorage_85x67.dmm"
|
||||
#include "derelict1_40x40.dmm"
|
||||
#include "derelict2_20x20.dmm"
|
||||
#include "derelict3_40x40.dmm"
|
||||
#include "derelict4_40x40.dmm"
|
||||
#include "derelict5_40x40.dmm"
|
||||
#include "dj_31x28.dmm"
|
||||
#include "druglab_16x14.dmm"
|
||||
#include "emptyshell_17x15.dmm"
|
||||
#include "gasthelizards_19x14.dmm"
|
||||
#include "golemtarget_30x30.dmm"
|
||||
#include "intactemptyship_13x11.dmm"
|
||||
#include "mechtransport_9x15.dmm"
|
||||
#include "oldstation_80x45.dmm"
|
||||
#include "onehalf_32x20.dmm"
|
||||
#include "spacebar_40x40.dmm"
|
||||
#include "syndiecakesfactory_40x40.dmm"
|
||||
#include "syndiedepot_57x49.dmm"
|
||||
#include "turretedoutpost_23x19.dmm"
|
||||
#include "ussp_84x90.dmm"
|
||||
#include "ussptele_21x12.dmm"
|
||||
#include "wayhome_30x30.dmm"
|
||||
#include "whiteship_55x30.dmm"
|
||||
#include "wizardcrash_20x35.dmm"
|
||||
#endif
|
||||
|
||||
// Vars (excluding mappath) are passed to the overmap object after scanning.
|
||||
// Every template MUST have a unique name both because of the mapping subsystem and the overmap system.
|
||||
/datum/map_template/dynamic_overmap
|
||||
name = "bluespace static"
|
||||
mappath = null
|
||||
annihilate = TRUE
|
||||
var/scanner_desc = "Unable to resolve bluespace fluctuations."
|
||||
var/poi_icon = "ring"
|
||||
var/active_icon = "ring_active" // Icon to use when the POI is loaded. Set to null to disable behavior.
|
||||
var/poi_color = null
|
||||
|
||||
// Stolen from map_template/shelter
|
||||
/datum/map_template/dynamic_overmap/proc/update_lighting(turf/deploy_location)
|
||||
var/affected = get_affected_turfs(deploy_location, centered=TRUE)
|
||||
for(var/turf/T in affected)
|
||||
T.lighting_build_overlay()
|
||||
|
||||
/datum/map_template/dynamic_overmap/abandonedtele_13x12
|
||||
name = "abandoned tele"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/abandonedtele_13x12.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/abandonedzoo_20x20
|
||||
name = "abandoned zoo"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/abandonedzoo_20x20.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/asteroid1_20x20
|
||||
name = "asteroid"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/asteroid1_20x20.dmm"
|
||||
poi_icon = "asteroid1"
|
||||
active_icon = "asteroid1_g"
|
||||
|
||||
/datum/map_template/dynamic_overmap/asteroid2_20x20
|
||||
name = "asteroider"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/asteroid2_20x20.dmm"
|
||||
poi_icon = "asteroid2"
|
||||
active_icon = "asteroid2_g"
|
||||
|
||||
/datum/map_template/dynamic_overmap/asteroid3_20x20
|
||||
name = "asteroidest"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/asteroid3_20x20.dmm"
|
||||
poi_icon = "asteroid3"
|
||||
active_icon = "asteroid3_g"
|
||||
|
||||
/datum/map_template/dynamic_overmap/asteroid4_20x20
|
||||
name = "asteroidester"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/asteroid4_20x20.dmm"
|
||||
poi_icon = "asteroid2"
|
||||
active_icon = "asteroid2_g"
|
||||
|
||||
/datum/map_template/dynamic_overmap/asteroid5_40x40
|
||||
name = "asteroidestest"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/asteroid5_40x40.dmm"
|
||||
poi_icon = "asteroid0"
|
||||
active_icon = "asteroid0_g"
|
||||
|
||||
/datum/map_template/dynamic_overmap/blowntcommsat_53x56
|
||||
name = "commsat"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/blowntcommsat_53x56.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/clownmime_28x20
|
||||
name = "honk"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/clownmime_28x20.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/debris1_20x20
|
||||
name = "debris"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/debris1_20x20.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/debris2_20x20
|
||||
name = "debriss"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/debris2_20x20.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/debris3_30x20
|
||||
name = "debrisss"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/debris3_30x20.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/deepstorage_85x67
|
||||
name = "storage facility"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/deepstorage_85x67.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/derelict1_40x40
|
||||
name = "ruins"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/derelict1_40x40.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/derelict2_20x20
|
||||
name = "ruins again"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/derelict2_20x20.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/derelict3_40x40
|
||||
name = "ruins three"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/derelict3_40x40.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/derelict4_40x40
|
||||
name = "ruins maybe"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/derelict4_40x40.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/derelict5_40x40
|
||||
name = "ruins?"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/derelict5_40x40.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/dj_31x28
|
||||
name = "DJ Grooves"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/dj_31x28.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/druglab_16x14
|
||||
name = "lab"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/druglab_16x14.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/emptyshell_17x15
|
||||
name = "ruins..."
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/emptyshell_17x15.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/gasthelizards_19x14
|
||||
name = "unknown"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/gasthelizards_19x14.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/golemtarget_30x30
|
||||
name = "unknown too"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/golemtarget_30x30.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/intactemptyship_13x11
|
||||
name = "ship"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/intactemptyship_13x11.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/mechtransport_9x15
|
||||
name = "transport"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/mechtransport_9x15.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/oldstation_80x45
|
||||
name = "station"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/oldstation_80x45.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/onehalf_32x20
|
||||
name = "lorem ipsum"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/onehalf_32x20.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/spacebar_40x40
|
||||
name = "alcohol"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/spacebar_40x40.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/syndiecakesfactory_40x40
|
||||
name = "land o' cakes"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/syndiecakesfactory_40x40.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/syndiedepot_57x49
|
||||
name = "depot"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/syndiedepot_57x49.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/turretedoutpost_23x19
|
||||
name = "gunpowder"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/turretedoutpost_23x19.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/ussp_84x90
|
||||
name = "facility"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/ussp_84x90.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/ussptele_21x12
|
||||
name = "facility but small"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/ussptele_21x12.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/wayhome_30x30
|
||||
name = "something"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/wayhome_30x30.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/whiteship_55x30
|
||||
name = "ship2"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/whiteship_55x30.dmm"
|
||||
|
||||
/datum/map_template/dynamic_overmap/wizardcrash_20x35
|
||||
name = "also something"
|
||||
mappath = "modular_chomp/maps/overmap/space_pois/wizardcrash_20x35.dmm"
|
||||
@@ -4587,6 +4587,7 @@
|
||||
#include "modular_chomp\code\modules\mob\new_player\sprite_accessories_wing.dm"
|
||||
#include "modular_chomp\code\modules\organs\organ_external.dm"
|
||||
#include "modular_chomp\code\modules\organs\organ_icon.dm"
|
||||
#include "modular_chomp\code\modules\overmap\dynamic_sector.dm"
|
||||
#include "modular_chomp\code\modules\power\cells\device_cells.dm"
|
||||
#include "modular_chomp\code\modules\power\cells\esoteric_cells.dm"
|
||||
#include "modular_chomp\code\modules\power\cells\power_cells.dm"
|
||||
@@ -4605,4 +4606,5 @@
|
||||
#include "modular_chomp\code\modules\vore\eating\exportpanel_ch.dm"
|
||||
#include "modular_chomp\code\modules\vore\resizing\resize.dm"
|
||||
#include "modular_chomp\code\modules\xenobio\machinery\monkey_processor.dm"
|
||||
#include "modular_chomp\maps\overmap\space_pois\space_pois.dm"
|
||||
// END_INCLUDE
|
||||
|
||||
Reference in New Issue
Block a user