diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 59319c4b8b1..1760c46faea 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -69,7 +69,7 @@ jobs: run: | sudo dpkg --add-architecture i386 sudo apt update || true - sudo apt install zlib1g-dev:i386 libssl-dev:i386 pkg-config:i386 + sudo apt install zlib1g-dev:i386 libssl-dev:i386 ldd librust_g.so - name: Unit Tests run: | diff --git a/code/__defines/gamemode.dm b/code/__defines/gamemode.dm index b512065f61c..c1606e77f67 100644 --- a/code/__defines/gamemode.dm +++ b/code/__defines/gamemode.dm @@ -38,9 +38,11 @@ #define BE_LOYALIST 0x4000 #define BE_PAI 0x8000 //VOREStation Add -#define BE_LOSTDRONE 0x10000 -#define BE_MAINTPRED 0x20000 -#define BE_MORPH 0x40000 +#define BE_LOSTDRONE 0x10000 +#define BE_MAINTPRED 0x20000 +#define BE_MORPH 0x40000 +#define BE_CORGI 0x80000 +#define BE_CURSEDSWORD 0x100000 //VOREStation Add End var/list/be_special_flags = list( @@ -64,6 +66,8 @@ var/list/be_special_flags = list( "Lost Drone" = BE_LOSTDRONE, "Maint Pred" = BE_MAINTPRED, "Morph" = BE_MORPH, + "Corgi" = BE_CORGI, + "Cursed Sword" = BE_CURSEDSWORD, //VOREStation Add End ) diff --git a/code/__defines/is_helpers.dm b/code/__defines/is_helpers.dm index 9a1b3871df6..07c25a40ab5 100644 --- a/code/__defines/is_helpers.dm +++ b/code/__defines/is_helpers.dm @@ -21,6 +21,8 @@ #define isstorage(A) istype(A, /obj/item/weapon/storage) +#define ismecha(A) istype(A, /obj/mecha) + //--------------- //#define isarea(D) istype(D, /area) //Built in diff --git a/code/_helpers/game.dm b/code/_helpers/game.dm index ed4734f355e..c9727a8a98b 100644 --- a/code/_helpers/game.dm +++ b/code/_helpers/game.dm @@ -249,13 +249,13 @@ /mob/living/silicon/robot/can_hear_radio(var/list/hearturfs) var/turf/T = get_turf(src) var/obj/item/device/radio/borg/R = hearturfs[T] // this should be an assoc list of turf-to-radio - + // We heard it on our own radio? We use power for that. if(istype(R) && R.myborg == src) var/datum/robot_component/CO = get_component("radio") if(!CO || !is_component_functioning("radio") || !cell_use_power(CO.active_usage)) return FALSE // Sorry, couldn't hear - + return R // radio, true, false, what's the difference /mob/observer/dead/can_hear_radio(var/list/hearturfs) @@ -272,14 +272,17 @@ var/list/hear = dview(range,T,INVISIBILITY_MAXIMUM) var/list/hearturfs = list() - + // Openspace visibility handling // Below turfs we can see for(var/turf/simulated/open/O in hear) var/turf/U = GetBelow(O) while(istype(U)) hearturfs |= U - U = GetBelow(U) + if(isopenspace(U)) + U = GetBelow(U) + else + U = null // Above us var/above_range = range diff --git a/code/_helpers/global_lists_vr.dm b/code/_helpers/global_lists_vr.dm index 8f760c3cc99..455732fa7c6 100644 --- a/code/_helpers/global_lists_vr.dm +++ b/code/_helpers/global_lists_vr.dm @@ -229,7 +229,8 @@ var/global/list/edible_trash = list(/obj/item/broken_device, /obj/item/weapon/storage/fancy/egg_box, /obj/item/weapon/storage/wallet, /obj/item/weapon/storage/vore_egg, - /obj/item/weapon/bikehorn/tinytether + /obj/item/weapon/bikehorn/tinytether, + /obj/item/capture_crystal ) var/global/list/contamination_flavors = list( diff --git a/code/_macros_vr.dm b/code/_macros_vr.dm index 2eecbe69ed1..314689541e9 100644 --- a/code/_macros_vr.dm +++ b/code/_macros_vr.dm @@ -1 +1,2 @@ #define isbelly(A) istype(A, /obj/belly) +#define iscapturecrystal(A) istype(A, /obj/item/capture_crystal) diff --git a/code/controllers/subsystems/ai.dm b/code/controllers/subsystems/ai.dm index 4ed43a34811..9df293f417a 100644 --- a/code/controllers/subsystems/ai.dm +++ b/code/controllers/subsystems/ai.dm @@ -32,10 +32,11 @@ SUBSYSTEM_DEF(ai) while(currentrun.len) var/datum/ai_holder/A = currentrun[currentrun.len] --currentrun.len - if(!A || QDELETED(A) || !A.holder?.loc || A.busy) // Doesn't exist or won't exist soon or not doing it this tick + var/mob/living/L = A.holder //VOREStation Edit Start + if(!A || QDELETED(A) || !L?.loc || A.busy) // Doesn't exist or won't exist soon or not doing it this tick continue - if(process_z[get_z(A.holder)]) + if(process_z[get_z(L)] || !L.low_priority) //VOREStation Edit End A.handle_strategicals() else slept_mobs++ diff --git a/code/controllers/subsystems/mapping.dm b/code/controllers/subsystems/mapping.dm index 06bf16e2557..832a84784d2 100644 --- a/code/controllers/subsystems/mapping.dm +++ b/code/controllers/subsystems/mapping.dm @@ -76,7 +76,9 @@ SUBSYSTEM_DEF(mapping) // VOREStation Edit Start: Enable This /datum/controller/subsystem/mapping/proc/loadLateMaps() var/list/deffo_load = using_map.lateload_z_levels - var/list/maybe_load = using_map.lateload_single_pick + var/list/maybe_load = using_map.lateload_gateway + var/list/also_load = using_map.lateload_overmap + for(var/list/maplist in deffo_load) if(!islist(maplist)) @@ -110,6 +112,28 @@ SUBSYSTEM_DEF(mapping) error("Randompick Z level \"[map]\" is not a valid map!") else MT.load_new_z(centered = FALSE) + + if(LAZYLEN(also_load)) //Just copied from gateway picking, this is so we can have a kind of OM map version of the same concept. + var/picklist = pick(also_load) + + if(!picklist) //No lateload maps at all + return + + if(!islist(picklist)) //So you can have a 'chain' of z-levels that make up one away mission + error("Randompick Z level [picklist] is not a list! Must be in a list!") + return + + for(var/map in picklist) + if(islist(map)) + // TRIPLE NEST. In this situation we pick one at random from the choices in the list. + //This allows a sort of a1,a2,a3,b1,b2,b3,c1,c2,c3 setup where it picks one 'a', one 'b', one 'c' + map = pick(map) + var/datum/map_template/MT = map_templates[map] + if(!istype(MT)) + error("Randompick Z level \"[map]\" is not a valid map!") + else + MT.load_new_z(centered = FALSE) + /datum/controller/subsystem/mapping/proc/preloadShelterTemplates() for(var/datum/map_template/shelter/shelter_type as anything in subtypesof(/datum/map_template/shelter)) diff --git a/code/controllers/subsystems/persist_vr.dm b/code/controllers/subsystems/persist_vr.dm index a00d4f7a3dd..c40a0b0e35d 100644 --- a/code/controllers/subsystems/persist_vr.dm +++ b/code/controllers/subsystems/persist_vr.dm @@ -25,6 +25,7 @@ SUBSYSTEM_DEF(persist) return if(!resumed) src.currentrun = human_mob_list.Copy() + src.currentrun += silicon_mob_list.Copy() //cache for sanic speed (lists are references anyways) var/list/currentrun = src.currentrun @@ -41,9 +42,7 @@ SUBSYSTEM_DEF(persist) return continue - // Do not collect useless PTO var/department_earning = J.pto_type - clear_unused_pto(M) // Determine special PTO types and convert properly if(department_earning == PTO_CYBORG) @@ -103,12 +102,4 @@ SUBSYSTEM_DEF(persist) // They have a custom title, aren't crew, or someone deleted their record, so we need a fallback method. // Let's check the mind. if(M.mind && M.mind.assigned_role) - . = job_master.GetJob(M.mind.assigned_role) - -// This proc tries makes sure old Command PTO doesn't linger -/datum/controller/subsystem/persist/proc/clear_unused_pto(var/mob/M) - var/client/C = M.client - LAZYINITLIST(C.department_hours) - if(C.department_hours[DEPARTMENT_COMMAND]) - C.department_hours[DEPARTMENT_COMMAND] = null - C.department_hours.Remove(DEPARTMENT_COMMAND) + . = job_master.GetJob(M.mind.assigned_role) \ No newline at end of file diff --git a/code/controllers/subsystems/persistence.dm b/code/controllers/subsystems/persistence.dm index f238621b3e1..e20c83e5a59 100644 --- a/code/controllers/subsystems/persistence.dm +++ b/code/controllers/subsystems/persistence.dm @@ -4,7 +4,7 @@ SUBSYSTEM_DEF(persistence) flags = SS_NO_FIRE var/list/tracking_values = list() var/list/persistence_datums = list() - + /// Places our subsystem can spawn paintings (helps with art spawning differently across maps) var/list/obj/structure/sign/painting/painting_frames = list() var/list/all_paintings = list() @@ -36,10 +36,6 @@ SUBSYSTEM_DEF(persistence) if(!A || (A.flags & AREA_FLAG_IS_NOT_PERSISTENT)) return -// if((!T.z in GLOB.using_map.station_levels) || !initialized) - if(!(T.z in using_map.station_levels)) - return - if(!(T.z in using_map.persist_levels)) return diff --git a/code/datums/ghost_query.dm b/code/datums/ghost_query.dm index c471c47c812..6a342f58203 100644 --- a/code/datums/ghost_query.dm +++ b/code/datums/ghost_query.dm @@ -47,7 +47,7 @@ for(var/ban in check_bans) if(jobban_isbanned(candidate, ban)) return FALSE // They're banned from this role. - + return TRUE /// Send async alerts and ask for responses. Expects you to have tested D for client and type already @@ -59,10 +59,10 @@ var/client/C = D.client window_flash(C) - + if(query_sound) SEND_SOUND(C, sound(query_sound)) - + tgui_alert_async(D, question, "[role_name] request", list("Yes", "No", "Never for this round"), CALLBACK(src, .proc/get_reply), wait_time SECONDS) /// Process an async alert response @@ -70,9 +70,9 @@ var/mob/observer/dead/D = usr if(!D?.client) return - + // Unhandled are "No" and "Nevermind" responses, which should just do nothing - + // This response is always fine, doesn't warrant retesting switch(response) if("Never for this round") @@ -189,10 +189,12 @@ role_name = "Dark Creature" question = "A curious explorer has touched a mysterious rune. \ Would you like to play as the creature it summons?" + be_special_flag = BE_CORGI cutoff_number = 1 /datum/ghost_query/cursedblade role_name = "Cursed Sword" question = "A cursed blade has been discovered by a curious explorer. \ Would you like to play as the soul imprisoned within?" + be_special_flag = BE_CURSEDSWORD cutoff_number = 1 diff --git a/code/datums/supplypacks/misc_vr.dm b/code/datums/supplypacks/misc_vr.dm index df7af42f5c7..98a0e7e3323 100644 --- a/code/datums/supplypacks/misc_vr.dm +++ b/code/datums/supplypacks/misc_vr.dm @@ -99,8 +99,8 @@ ) cost = 250 containertype = /obj/structure/closet/crate/secure/gear - containername = "Commonwealth medical hardsuit crate" - access = access_medical + containername = "Commonwealth engineering hardsuit crate" + access = access_engine /datum/supply_pack/misc/zero_rig name = "null hardsuit (jets)" diff --git a/code/datums/vending/stored_item.dm b/code/datums/vending/stored_item.dm index 3b46c6be3ff..82a3d087c94 100644 --- a/code/datums/vending/stored_item.dm +++ b/code/datums/vending/stored_item.dm @@ -75,15 +75,15 @@ /datum/stored_item/stack/get_product(var/product_location, var/count) if(!LAZYLEN(instances)) return null // Shouldn't happen, but will loudly complain if it breaks - + var/obj/item/stack/S = instances[1] count = min(count, S.get_max_amount()) src.amount -= count // We won't vend more than one full stack per call - + // Case 1: Draw the full amount from the first instance if(count < S.get_amount()) S = S.split(count) - + // Case 2: Amount at least one stack, or have to accumulate else if(count >= S.get_amount()) count -= S.get_amount() @@ -91,6 +91,8 @@ for(var/obj/item/stack/T as anything in instances) if(count <= 0) break + if(T.get_amount() <= count) + instances -=T count -= T.transfer_to(S, count) S.forceMove(product_location) diff --git a/code/game/machinery/bioprinter.dm b/code/game/machinery/bioprinter.dm index d00efc79b6c..4c684abb999 100644 --- a/code/game/machinery/bioprinter.dm +++ b/code/game/machinery/bioprinter.dm @@ -34,6 +34,7 @@ "Eyes" = list(/obj/item/organ/internal/eyes, 20), "Liver" = list(/obj/item/organ/internal/liver, 20), "Spleen" = list(/obj/item/organ/internal/spleen, 20), + "Stomach" = list(/obj/item/organ/internal/stomach, 20), "Arm, Left" = list(/obj/item/organ/external/arm, 40), "Arm, Right" = list(/obj/item/organ/external/arm/right, 40), "Leg, Left" = list(/obj/item/organ/external/leg, 40), @@ -80,7 +81,7 @@ /obj/machinery/organ_printer/Initialize() . = ..() default_apply_parts() - + /obj/machinery/organ_printer/examine(var/mob/user) . = ..() var/biomass = get_biomass_volume() diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 4061c677db5..9919fc3ee46 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -1083,7 +1083,7 @@ /obj/machinery/computer/arcade/clawmachine name = "AlliCo Grab-a-Gift" desc = "Show off your arcade skills for that special someone!" - icon_state = "clawmachine" + icon_state = "clawmachine_new" icon_keyboard = null icon_screen = null circuit = /obj/item/weapon/circuitboard/arcade/clawmachine @@ -1244,10 +1244,10 @@ /// TGUI Stuff -/obj/machinery/computer/arcade/clawmachine/tgui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = 0, datum/tgui/master_ui = null, datum/tgui_state/state = GLOB.tgui_default_state) - ui = SStgui.try_update_ui(user, src, ui_key, ui, force_open) +/obj/machinery/computer/arcade/clawmachine/tgui_interact(mob/user, datum/tgui/ui) + ui = SStgui.try_update_ui(user, src, ui) if(!ui) - ui = new(user, src, ui_key, "ClawMachine", name, 300, 400, master_ui, state) + ui = new(user, src, "ClawMachine", name, ui_x = 300, ui_y = 400) ui.autoupdate = TRUE ui.open() @@ -1270,7 +1270,7 @@ if(action == "newgame" && gamepaid == 1) gameStatus = "CLAWMACHINE_ON" - icon_state = "clawmachine_move" + icon_state = "clawmachine_new_move" instructions = "Guide the claw to the prize you want!" wintick = 0 @@ -1307,7 +1307,7 @@ winscreen = "Aw, shucks. Try again!" wintick = 0 gamepaid = 0 - icon_state = "clawmachine" + icon_state = "clawmachine_new" gameStatus = "CLAWMACHINE_END" /obj/machinery/computer/arcade/clawmachine/emag_act(mob/user) diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm index 1d5392fc54f..c3584ee48a8 100644 --- a/code/game/machinery/computer/guestpass.dm +++ b/code/game/machinery/computer/guestpass.dm @@ -5,6 +5,7 @@ name = "guest pass" desc = "Allows temporary access to station areas." icon_state = "guest" + initial_sprite_stack = list() light_color = "#0099ff" var/temp_access = list() //to prevent agent cards stealing access as permanent @@ -12,6 +13,9 @@ var/expired = 0 var/reason = "NOT SPECIFIED" +/obj/item/weapon/card/id/guest/update_icon() + return + /obj/item/weapon/card/id/guest/GetAccess() if(world.time > expiration_time) return access diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 7ff6f5971b5..20d0f634dab 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -979,6 +979,7 @@ About the new airlock wires panel: return /obj/machinery/door/airlock/AltClick(mob/user as mob) + . = ..() user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) if(!Adjacent(user)) return @@ -988,13 +989,13 @@ About the new airlock wires panel: if(icon_state == "door_closed" && arePowerSystemsOn()) flick("door_deny", src) playsound(src, knock_hammer_sound, 50, 0, 3) - else if(arePowerSystemsOn()) + else if(arePowerSystemsOn() && user.a_intent == I_HELP) src.visible_message("[user] presses the door bell on \the [src].", "\The [src]'s bell rings.") src.add_fingerprint(user) if(icon_state == "door_closed") flick("door_deny", src) playsound(src, knock_sound, 50, 0, 3) - else + else if(user.a_intent == I_HELP) src.visible_message("[user] knocks on \the [src].", "Someone knocks on \the [src].") src.add_fingerprint(user) playsound(src, knock_unpowered_sound, 50, 0, 3) diff --git a/code/game/machinery/doors/door_vr.dm b/code/game/machinery/doors/door_vr.dm index 6583b841b85..1a504065cc3 100644 --- a/code/game/machinery/doors/door_vr.dm +++ b/code/game/machinery/doors/door_vr.dm @@ -101,7 +101,19 @@ /obj/machinery/door/blast/regular/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) return // blast doors are immune to fire completely. -/obj/machinery/door/blast/regular/ +/obj/machinery/door/blast/regular + heat_proof = 1 //just so repairing them doesn't try to fireproof something that never takes fire damage + +/obj/machinery/door/blast/angled/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) + return // blast doors are immune to fire completely. + +/obj/machinery/door/blast/angled + heat_proof = 1 //just so repairing them doesn't try to fireproof something that never takes fire damage + +/obj/machinery/door/blast/puzzle/fire_act(datum/gas_mixture/air, exposed_temperature, exposed_volume) + return // blast doors are immune to fire completely. + +/obj/machinery/door/blast/puzzle heat_proof = 1 //just so repairing them doesn't try to fireproof something that never takes fire damage /obj/machinery/door/proc/toggle() diff --git a/code/game/machinery/wall_frames.dm b/code/game/machinery/wall_frames.dm index 83fdefe4427..be00cab96a0 100644 --- a/code/game/machinery/wall_frames.dm +++ b/code/game/machinery/wall_frames.dm @@ -4,6 +4,7 @@ icon = 'icons/obj/stock_parts.dmi' icon_state = "frame_bitem" var/build_machine_type + var/build_wall_only = FALSE var/refund_amt = 5 var/refund_type = /obj/item/stack/material/steel var/reverse = 0 //if resulting object faces opposite its dir (like light fixtures) @@ -27,7 +28,7 @@ ..() update_type_list() var/datum/frame/frame_types/frame_type - if(!build_machine_type) + if(!build_machine_type && !build_wall_only) var/datum/frame/frame_types/response = tgui_input_list(user, "What kind of frame would you like to make?", "Frame type request", frame_types_floor) if(!response) return diff --git a/code/game/machinery/wishgranter.dm b/code/game/machinery/wishgranter.dm index cab7caba172..2c65530b9fe 100644 --- a/code/game/machinery/wishgranter.dm +++ b/code/game/machinery/wishgranter.dm @@ -3,16 +3,18 @@ desc = "You're not so sure about this, anymore..." icon = 'icons/obj/device.dmi' icon_state = "syndbeacon" - use_power = USE_POWER_OFF - anchored = TRUE - density = TRUE - var/charges = 1 - var/insisting = 0 -/obj/machinery/wish_granter/attack_hand(var/mob/user as mob) + anchored = 1 + density = 1 + use_power = USE_POWER_OFF + + var/chargesa = 1 + var/insistinga = 0 + +/obj/machinery/wish_granter/attack_hand(var/mob/living/carbon/human/user as mob) usr.set_machine(src) - if(charges <= 0) + if(chargesa <= 0) to_chat(user, "The Wish Granter lies silent.") return @@ -23,47 +25,45 @@ else if(is_special_character(user)) to_chat(user, "Even to a heart as dark as yours, you know nothing good will come of this. Something instinctual makes you pull away.") - else if(!insisting) + else if (!insistinga) to_chat(user, "Your first touch makes the Wish Granter stir, listening to you. Are you really sure you want to do this?") - insisting++ + insistinga++ else - var/message = "You speak. [pick("I want the station to disappear","Humanity is corrupt, mankind must be destroyed","I want to be rich", "I want to rule the world","I want immortality.")]. The Wish Granter answers." - to_chat(user, message) - to_chat(user, "Your head pounds for a moment, before your vision clears. You are the avatar of the Wish Granter, and your power is LIMITLESS! And it's all yours. You need to make sure no one can take it from you. No one can know, first.") - - charges-- - insisting = 0 - - if(!(HULK in user.mutations)) - user.mutations.Add(HULK) - - if(!(LASER in user.mutations)) - user.mutations.Add(LASER) - - if(!(XRAY in user.mutations)) - user.mutations.Add(XRAY) - user.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS) - user.see_in_dark = 8 - user.see_invisible = SEE_INVISIBLE_LEVEL_TWO - - if(!(COLD_RESISTANCE in user.mutations)) - user.mutations.Add(COLD_RESISTANCE) - - if(!(TK in user.mutations)) - user.mutations.Add(TK) - - if(!(HEAL in user.mutations)) - user.mutations.Add(HEAL) - - user.update_mutations() - user.mind.special_role = "Avatar of the Wish Granter" - - var/datum/objective/silence/silence = new - silence.owner = user.mind - user.mind.objectives += silence - - show_objectives(user.mind) - to_chat(user, "You have a very bad feeling about this.") - - return \ No newline at end of file + chargesa-- + insistinga = 0 + var/wish = tgui_input_list(usr, "You want...","Wish", list("Power","Wealth","Immortality","To Kill","Peace")) + switch(wish) + if("Power") + to_chat(user, "Your wish is granted, but at a terrible cost...") + to_chat(user, "The Wish Granter punishes you for your selfishness, claiming your soul.") + if (!(LASER in user.mutations)) + user.mutations.Add(LASER) + to_chat(user, "You feel pressure building behind your eyes.") + if (!(COLD_RESISTANCE in user.mutations)) + user.mutations.Add(COLD_RESISTANCE) + to_chat(user, "Your body feels warm.") + if (!(XRAY in user.mutations)) + user.mutations.Add(XRAY) + user.sight |= (SEE_MOBS|SEE_OBJS|SEE_TURFS) + user.see_in_dark = 8 + user.see_invisible = SEE_INVISIBLE_LEVEL_TWO + to_chat(user, "The walls suddenly disappear.") + if("Wealth") + to_chat(user, "Your wish is granted, but at a terrible cost...") + to_chat(user, "The Wish Granter punishes you for your selfishness, claiming your soul.") + new /obj/structure/closet/syndicate/resources/everything(loc) + if("To Kill") + to_chat(user, "Your wish is granted, but at a terrible cost...") + to_chat(user, "The Wish Granter is outraged at your excessive wickedness, yet grants you your wish regardless. Someone will be killed soon.") + spawn(100) + if(user) + to_chat(user, "Suddenly, you feel as though you are being torn to countless shreds! Your wish is coming true!") + user.gib() + if("Peace") + to_chat(user, "Whatever alien sentience that the Wish Granter possesses is satisfied with your wish. There is a distant wailing as the last of the Faithless begin to die, then silence.") + to_chat(user, "You feel as if you just narrowly avoided a terrible fate...") + for(var/mob/living/simple_mob/faithless/F in living_mob_list) + F.health = -10 + F.set_stat(DEAD) + F.icon_state = "faithless_dead" \ No newline at end of file diff --git a/code/game/objects/effects/landmarks_vr.dm b/code/game/objects/effects/landmarks_vr.dm index da406c8043b..e436447109d 100644 --- a/code/game/objects/effects/landmarks_vr.dm +++ b/code/game/objects/effects/landmarks_vr.dm @@ -1,6 +1,12 @@ /obj/effect/landmark var/abductor = 0 +/obj/effect/landmark/vines + name = "vinestart" + +/obj/effect/landmark/vermin + name = "verminstart" + /obj/effect/landmark/late_antag name = "Antag Latespawn" var/antag_id diff --git a/code/game/objects/effects/semirandom_mobs_vr.dm b/code/game/objects/effects/semirandom_mobs_vr.dm index b7008b46277..e6b26da0878 100644 --- a/code/game/objects/effects/semirandom_mobs_vr.dm +++ b/code/game/objects/effects/semirandom_mobs_vr.dm @@ -51,11 +51,16 @@ var/global/list/semirandom_mob_spawner_decisions = list() list(/mob/living/simple_mob/animal/passive/opossum), list(/mob/living/simple_mob/animal/passive/pillbug), list(/mob/living/simple_mob/animal/passive/snake), + list(/mob/living/simple_mob/animal/passive/snake/red), + list(/mob/living/simple_mob/animal/passive/snake/python), list(/mob/living/simple_mob/animal/passive/tindalos), list(/mob/living/simple_mob/animal/passive/yithian), list( /mob/living/simple_mob/animal/wolf = 10, - /mob/living/simple_mob/animal/wolf/direwolf = 1 + /mob/living/simple_mob/animal/wolf/direwolf = 5, + /mob/living/simple_mob/vore/greatwolf = 1, + /mob/living/simple_mob/vore/greatwolf/black = 1, + /mob/living/simple_mob/vore/greatwolf/grey = 1 ), list(/mob/living/simple_mob/vore/rabbit), list(/mob/living/simple_mob/vore/redpanda), @@ -109,12 +114,8 @@ var/global/list/semirandom_mob_spawner_decisions = list() /mob/living/simple_mob/animal/giant_spider/phorogenic = 10, /mob/living/simple_mob/animal/giant_spider/thermic = 5, /mob/living/simple_mob/animal/giant_spider/tunneler = 10, - /mob/living/simple_mob/animal/giant_spider/webslinger = 5 - ), - list( - /mob/living/simple_mob/animal/wolf = 10, - /mob/living/simple_mob/animal/wolf/direwolf = 1 - ), + /mob/living/simple_mob/animal/giant_spider/webslinger = 5, + /mob/living/simple_mob/animal/giant_spider/broodmother = 1), list(/mob/living/simple_mob/creature/strong), list(/mob/living/simple_mob/faithless/strong), list(/mob/living/simple_mob/animal/goat), @@ -244,7 +245,6 @@ var/global/list/semirandom_mob_spawner_decisions = list() list(/mob/living/simple_mob/mechanical/wahlem), list(/mob/living/simple_mob/animal/passive/fox/syndicate), list(/mob/living/simple_mob/animal/passive/fox), - list(/mob/living/simple_mob/animal/wolf/direwolf), list(/mob/living/simple_mob/animal/space/jelly), list( /mob/living/simple_mob/otie/feral, @@ -253,12 +253,12 @@ var/global/list/semirandom_mob_spawner_decisions = list() /mob/living/simple_mob/otie/red/chubby ), list( - /mob/living/simple_mob/shadekin/blue/ai = 100, - /mob/living/simple_mob/shadekin/green/ai = 50, - /mob/living/simple_mob/shadekin/orange/ai = 20, - /mob/living/simple_mob/shadekin/purple/ai = 60, - /mob/living/simple_mob/shadekin/red/ai = 40, - /mob/living/simple_mob/shadekin/yellow/ai = 1 + /mob/living/simple_mob/shadekin/blue = 100, + /mob/living/simple_mob/shadekin/green = 50, + /mob/living/simple_mob/shadekin/orange = 20, + /mob/living/simple_mob/shadekin/purple = 60, + /mob/living/simple_mob/shadekin/red = 40, + /mob/living/simple_mob/shadekin/yellow = 1 ), list( /mob/living/simple_mob/vore/aggressive/corrupthound, @@ -292,7 +292,21 @@ var/global/list/semirandom_mob_spawner_decisions = list() ), list(/mob/living/simple_mob/vore/solargrub), list(/mob/living/simple_mob/vore/woof), - list(/mob/living/simple_mob/vore/alienanimals/teppi) + list(/mob/living/simple_mob/vore/alienanimals/teppi), + list(/mob/living/simple_mob/vore/alienanimals/space_ghost), + list(/mob/living/simple_mob/vore/alienanimals/catslug), + list(/mob/living/simple_mob/vore/alienanimals/space_jellyfish), + list(/mob/living/simple_mob/vore/alienanimals/startreader), + list( + /mob/living/simple_mob/vore/bigdragon, + /mob/living/simple_mob/vore/bigdragon/friendly), + list( + /mob/living/simple_mob/vore/leopardmander = 50, + /mob/living/simple_mob/vore/leopardmander/blue = 10, + /mob/living/simple_mob/vore/leopardmander/exotic = 1 + ), + list(/mob/living/simple_mob/vore/sheep), + list(/mob/living/simple_mob/vore/weretiger) ) /obj/random/mob/semirandom_mob_spawner/item_to_spawn() @@ -359,11 +373,16 @@ var/global/list/semirandom_mob_spawner_decisions = list() list(/mob/living/simple_mob/animal/passive/opossum) = 10, list(/mob/living/simple_mob/animal/passive/pillbug) = 10, list(/mob/living/simple_mob/animal/passive/snake) = 10, + list(/mob/living/simple_mob/animal/passive/snake/red) = 10, + list(/mob/living/simple_mob/animal/passive/snake/python) = 10, list(/mob/living/simple_mob/animal/passive/tindalos) = 10, list(/mob/living/simple_mob/animal/passive/yithian) = 10, list( /mob/living/simple_mob/animal/wolf = 10, - /mob/living/simple_mob/animal/wolf/direwolf = 1 + /mob/living/simple_mob/animal/wolf/direwolf = 5, + /mob/living/simple_mob/vore/greatwolf = 1, + /mob/living/simple_mob/vore/greatwolf/black = 1, + /mob/living/simple_mob/vore/greatwolf/grey = 1 ) = 10, list(/mob/living/simple_mob/vore/rabbit) = 10, list(/mob/living/simple_mob/vore/redpanda) = 10, @@ -407,7 +426,18 @@ var/global/list/semirandom_mob_spawner_decisions = list() ) = 5, list(/mob/living/simple_mob/animal/sif/siffet) = 5, list(/mob/living/simple_mob/animal/sif/tymisian) = 5, - list(/mob/living/simple_mob/vore/alienanimals/teppi) = 10 + list(/mob/living/simple_mob/vore/alienanimals/teppi) = 10, + list(/mob/living/simple_mob/vore/alienanimals/dustjumper) = 5, + list(/mob/living/simple_mob/vore/alienanimals/space_jellyfish) = 5, + list(/mob/living/simple_mob/vore/alienanimals/space_ghost) = 5, + list( + /mob/living/simple_mob/vore/leopardmander = 50, + /mob/living/simple_mob/vore/leopardmander/blue = 10, + /mob/living/simple_mob/vore/leopardmander/exotic = 1 + ) = 5, + list(/mob/living/simple_mob/vore/sheep) = 5, + list(/mob/living/simple_mob/vore/weretiger) = 5, + list(/mob/living/simple_mob/vore/alienanimals/skeleton) = 5 ) /obj/random/mob/semirandom_mob_spawner/monster @@ -433,14 +463,17 @@ var/global/list/semirandom_mob_spawner_decisions = list() /mob/living/simple_mob/animal/giant_spider/webslinger = 5 ) = 100, list( - /mob/living/simple_mob/shadekin/red/ai = 5, - /mob/living/simple_mob/shadekin/orange/ai = 1, - /mob/living/simple_mob/shadekin/purple/ai = 10 + /mob/living/simple_mob/shadekin/red = 5, + /mob/living/simple_mob/shadekin/orange = 1, + /mob/living/simple_mob/shadekin/purple = 10 ) = 1, list( /mob/living/simple_mob/animal/wolf = 10, - /mob/living/simple_mob/animal/wolf/direwolf = 1, - ) = 80, + /mob/living/simple_mob/animal/wolf/direwolf = 5, + /mob/living/simple_mob/vore/greatwolf = 1, + /mob/living/simple_mob/vore/greatwolf/black = 1, + /mob/living/simple_mob/vore/greatwolf/grey = 1 + ) = 40, list(/mob/living/simple_mob/creature/strong) = 40, list(/mob/living/simple_mob/faithless/strong) = 20, list(/mob/living/simple_mob/animal/goat) = 1, @@ -501,7 +534,18 @@ var/global/list/semirandom_mob_spawner_decisions = list() /mob/living/simple_mob/vore/oregrub = 5, /mob/living/simple_mob/vore/oregrub/lava = 1 ) = 15, - list(/mob/living/simple_mob/vore/alienanimals/teppi) = 15 + list(/mob/living/simple_mob/vore/alienanimals/teppi) = 15, + list(/mob/living/simple_mob/vore/alienanimals/space_jellyfish) = 5, + list(/mob/living/simple_mob/vore/alienanimals/space_ghost) = 5, + list( + /mob/living/simple_mob/vore/leopardmander = 50, + /mob/living/simple_mob/vore/leopardmander/blue = 10, + /mob/living/simple_mob/vore/leopardmander/exotic = 1 + ) = 5, + list(/mob/living/simple_mob/vore/sheep) = 5, + list(/mob/living/simple_mob/vore/weretiger) = 5, + list(/mob/living/simple_mob/vore/alienanimals/skeleton) = 5, + list(/mob/living/simple_mob/vore/alienanimals/catslug) = 5 ) /obj/random/mob/semirandom_mob_spawner/humanoid @@ -512,9 +556,9 @@ var/global/list/semirandom_mob_spawner_decisions = list() possible_mob_types = list( list( - /mob/living/simple_mob/shadekin/blue/ai = 25, - /mob/living/simple_mob/shadekin/green/ai = 10, - /mob/living/simple_mob/shadekin/purple/ai = 1, + /mob/living/simple_mob/shadekin/blue = 25, + /mob/living/simple_mob/shadekin/green = 10, + /mob/living/simple_mob/shadekin/purple = 1, ) = 1, list(/mob/living/simple_mob/vore/catgirl) = 100, list(/mob/living/simple_mob/vore/wolfgirl) = 100, @@ -537,7 +581,7 @@ var/global/list/semirandom_mob_spawner_decisions = list() /mob/living/simple_mob/vore/lamia/zebra/bra, /mob/living/simple_mob/vore/lamia/zebra/shirt ) = 100, -// LOOK OKAY MERCS ARE HUMANOIDS SO THEY ARE HERE, but they are also kind of bullshit so they probably shouldn't be able to spawn in the same place as catgirls. +// LOOK OKAY MERCS ARE HUMANOIDS SO THEY ARE HERE, but they are also kind of bullshit so they probably shouldn't be able to spawn in the same place as catgirls. // I want some better potentially hostile humanoids that aren't stupid to fight. If they become a big issue I'll comment them out. // For now they are just rare, and the ranged ones are way more rare than the melee ones, which I think will help balance them out. list( @@ -675,7 +719,12 @@ var/global/list/semirandom_mob_spawner_decisions = list() mob_faction = "vore" possible_mob_types = list( - list(/mob/living/simple_mob/animal/wolf/direwolf) = 100, + list( + /mob/living/simple_mob/animal/wolf/direwolf = 5, + /mob/living/simple_mob/vore/greatwolf = 1, + /mob/living/simple_mob/vore/greatwolf/black = 1, + /mob/living/simple_mob/vore/greatwolf/grey = 1 + ) = 100, list(/mob/living/simple_mob/animal/space/jelly) = 70, list( /mob/living/simple_mob/otie/feral, @@ -684,12 +733,12 @@ var/global/list/semirandom_mob_spawner_decisions = list() /mob/living/simple_mob/otie/red/chubby ) = 50, list( - /mob/living/simple_mob/shadekin/blue/ai = 100, - /mob/living/simple_mob/shadekin/green/ai = 50, - /mob/living/simple_mob/shadekin/orange/ai = 20, - /mob/living/simple_mob/shadekin/purple/ai = 60, - /mob/living/simple_mob/shadekin/red/ai = 40, - /mob/living/simple_mob/shadekin/yellow/ai = 1 + /mob/living/simple_mob/shadekin/blue = 100, + /mob/living/simple_mob/shadekin/green = 50, + /mob/living/simple_mob/shadekin/orange = 20, + /mob/living/simple_mob/shadekin/purple = 60, + /mob/living/simple_mob/shadekin/red = 40, + /mob/living/simple_mob/shadekin/yellow = 1 ) = 1, list( /mob/living/simple_mob/vore/aggressive/corrupthound, diff --git a/code/game/objects/items/apc_frame.dm b/code/game/objects/items/apc_frame.dm index ccde6e9c606..ca3f7241c3a 100644 --- a/code/game/objects/items/apc_frame.dm +++ b/code/game/objects/items/apc_frame.dm @@ -6,6 +6,7 @@ icon = 'icons/obj/apc_repair.dmi' icon_state = "apc_frame" refund_amt = 2 + build_wall_only = TRUE matter = list(MAT_STEEL = 100, MAT_GLASS = 30) /obj/item/frame/apc/try_build(turf/on_wall, mob/user as mob) diff --git a/code/game/objects/items/devices/denecrotizer_vr.dm b/code/game/objects/items/devices/denecrotizer_vr.dm index 164e0693984..4a6160b2424 100644 --- a/code/game/objects/items/devices/denecrotizer_vr.dm +++ b/code/game/objects/items/devices/denecrotizer_vr.dm @@ -76,6 +76,10 @@ // Clean up the simplemob ghostjoin = FALSE ghostjoin_icon() + if(capture_caught) + to_chat(src, "You are bound to [revivedby], follow their commands within reason and to the best of your abilities, and avoid betraying or abandoning them. You are allied with [revivedby]. Do not attack anyone for no reason. Of course, you may do scenes as you like, but you must still respect preferences.") + visible_message("[src]'s eyes flicker with a curious intelligence.", runemessage = "looks around") + return if(revivedby != "no one") to_chat(src, "Where once your life had been rough and scary, you have been assisted by [revivedby]. They seem to be the reason you are on your feet again... so perhaps you should help them out. Being as you were revived, you are allied with the station. Do not attack anyone unless they are threatening the one who revived you. And try to listen to the one who revived you within reason. Of course, you may do scenes as you like, but you must still respect preferences.") visible_message("[src]'s eyes flicker with a curious intelligence.", runemessage = "looks around") @@ -95,6 +99,10 @@ to_chat(D, "Sorry, someone else has already inhabited [src].") return FALSE + if(capture_caught && !D.client.prefs.capture_crystal) + to_chat(D, "Sorry, [src] is participating in capture mechanics, and your preferences do not allow for that.") + return FALSE + // Insert whatever ban checks you want here if we ever add simplemob bans return TRUE diff --git a/code/game/objects/items/devices/translocator_vr.dm b/code/game/objects/items/devices/translocator_vr.dm index 5cf4f70038b..02089da0378 100644 --- a/code/game/objects/items/devices/translocator_vr.dm +++ b/code/game/objects/items/devices/translocator_vr.dm @@ -409,7 +409,7 @@ GLOBAL_LIST_BOILERPLATE(premade_tele_beacons, /obj/item/device/perfect_tele_beac if(confirm == "Eat it!") var/obj/belly/bellychoice = tgui_input_list(usr, "Which belly?","Select A Belly", L.vore_organs) if(bellychoice) - user.visible_message("[user] is trying to stuff \the [src] into [user.gender == MALE ? "his" : user.gender == FEMALE ? "her" : "their"] [bellychoice]!","You begin putting \the [src] into your [bellychoice]!") + user.visible_message("[user] is trying to stuff \the [src] into [user.gender == MALE ? "his" : user.gender == FEMALE ? "her" : "their"] [bellychoice.name]!","You begin putting \the [src] into your [bellychoice.name]!") if(do_after(user,5 SECONDS,src)) user.unEquip(src) forceMove(bellychoice) diff --git a/code/game/objects/items/weapons/capture_crystal.dm b/code/game/objects/items/weapons/capture_crystal.dm new file mode 100644 index 00000000000..5c72d389e4f --- /dev/null +++ b/code/game/objects/items/weapons/capture_crystal.dm @@ -0,0 +1,835 @@ +/obj/item/capture_crystal + name = "Curious Crystal" + desc = "A silent, unassuming crystal in what appears to be some kind of steel housing." + icon = 'icons/obj/capture_crystal_vr.dmi' + icon_state = "inactive" + drop_sound = 'sound/items/drop/ring.ogg' + pickup_sound = 'sound/items/pickup/ring.ogg' + throwforce = 0 + force = 0 + action_button_name = "Command" + + var/active = FALSE //Is it set up? + var/mob/living/owner //Reference to the owner + var/mob/living/bound_mob //Reference to our bound mob + var/spawn_mob_type //The kind of mob an inactive crystal will try to spawn when activated + var/activate_cooldown = 30 SECONDS //How long do we wait between unleashing and recalling + var/last_activate //Automatically set by things that try to move the bound mob or capture things + var/empty_icon = "empty" + var/full_icon = "full" + var/capture_chance_modifier = 1 //So we can have special subtypes with different capture rates! + +/obj/item/capture_crystal/Initialize() + . = ..() + update_icon() + +//Let's make sure we clean up our references and things if the crystal goes away (such as when it's digested) +/obj/item/capture_crystal/Destroy() + if(bound_mob) + if(bound_mob in contents) + unleash() + to_chat(bound_mob, "You feel like yourself again. You are no longer under the influence of \the [src]'s command.") + UnregisterSignal(bound_mob, COMSIG_PARENT_QDELETING) + bound_mob.capture_caught = FALSE + bound_mob = null + if(owner) + UnregisterSignal(owner, COMSIG_PARENT_QDELETING) + owner = null + return ..() + +/obj/item/capture_crystal/examine(user) + . = ..() + if(user == owner && bound_mob) + . += "[bound_mob]'s crystal" + if(isanimal(bound_mob)) + . += "[bound_mob.health / bound_mob.maxHealth * 100]%" + if(bound_mob.ooc_notes) + . += "OOC Notes: \[View\]" + . += "\[Mechanical Vore Preferences\]" + +//Command! This lets the owner toggle hostile on AI controlled mobs, or send a silent command message to your bound mob, wherever they may be. +/obj/item/capture_crystal/ui_action_click() + if(!ismob(loc)) + return + var/mob/living/M = src.loc + if(M != owner) + to_chat(M, "\The [src] emits an unpleasant tone... It does not respond to your command.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(!bound_mob) + to_chat(M, "\The [src] emits an unpleasant tone... There is nothing to command.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(isanimal(bound_mob) && !bound_mob.client) + if(!isnull(bound_mob.get_AI_stance())) + var/datum/ai_holder/AI = bound_mob.ai_holder + AI.hostile = !AI.hostile + if(!AI.hostile) + AI.set_stance(STANCE_IDLE) + to_chat(M, span("notice", "\The [bound_mob] is now [AI.hostile ? "hostile" : "passive"].")) + log_admin("[key_name_admin(M)] set [bound_mob] to [AI.hostile].") + else if(bound_mob.client) + var/transmit_msg = tgui_input_text(usr, "What is your command?", "Command") + if(length(transmit_msg) >= MAX_MESSAGE_LEN) + to_chat(M, "Your message was TOO LONG!:[transmit_msg]") + return + transmit_msg = sanitize(transmit_msg, max_length = MAX_MESSAGE_LEN) + if(isnull(transmit_msg)) + to_chat(M, "You decided against it.") + return + to_chat(bound_mob, "\The [owner] commands, '[transmit_msg]'") + to_chat(M, "Your command has been transmitted, '[transmit_msg]'") + log_admin("[key_name_admin(M)] sent the command, '[transmit_msg]' to [bound_mob].") + else + to_chat(M, "\The [src] emits an unpleasant tone... \The [bound_mob] is unresponsive.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + +//Lets the owner get AI controlled bound mobs to follow them, or tells player controlled mobs to follow them. +/obj/item/capture_crystal/verb/follow_owner() + set name = "Toggle Follow" + set category = "Object" + set src in usr + if(!ismob(loc)) + return + var/mob/living/M = src.loc + if(M != owner) + to_chat(M, "\The [src] emits an unpleasant tone... It does not respond to your command.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(bound_mob.stat != CONSCIOUS) + to_chat(M, "\The [src] emits an unpleasant tone... \The [bound_mob] is not able to hear your command.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(bound_mob.client) + to_chat(bound_mob, "\The [owner] wishes for you to follow them.") + else if(bound_mob in contents) + var/datum/ai_holder/AI = bound_mob.ai_holder + if(AI.leader) + to_chat(M, "\The [src] chimes~ \The [bound_mob] stopped following [AI.leader].") + AI.lose_follow(AI.leader) + else + AI.set_follow(M) + to_chat(M, "\The [src] chimes~ \The [bound_mob] started following following [AI.leader].") + else if(!(bound_mob in view(M))) + to_chat(M, "\The [src] emits an unpleasant tone... \The [bound_mob] is not able to hear your command.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + var/datum/ai_holder/AI = bound_mob.ai_holder + if(AI.leader) + to_chat(M, "\The [src] chimes~ \The [bound_mob] stopped following [AI.leader].") + AI.lose_follow(AI.leader) + else + AI.set_follow(M) + to_chat(M, "\The [src] chimes~ \The [bound_mob] started following following [AI.leader].") + +//Don't really want people 'haha funny' capturing and releasing one another willy nilly. So! If you wanna release someone, you gotta destroy the thingy. +//(Which is consistent with how it works with digestion anyway.) +/obj/item/capture_crystal/verb/destroy_crystal() + set name = "Destroy Crystal" + set category = "Object" + set src in usr + if(!ismob(loc)) + return + var/mob/living/M = src.loc + if(M != owner) + to_chat(M, "\The [src] is too hard for you to break.") + else + M.visible_message("\The [M] crushes \the [src] into dust...", "\The [src] cracks and disintegrates in your hand.") + qdel(src) + +//If you catch something/someone and want to give it to someone else though, that's fine. +/obj/item/capture_crystal/verb/release_ownership() + set name = "Release Ownership" + set category = "Object" + set src in usr + if(!ismob(loc)) + return + var/mob/living/M = src.loc + if(M != owner) + to_chat(M, "\The [src] emits an unpleasant tone... It does not respond to your command.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else + M.visible_message("\The [src] flickers in \the [M]'s hand and emits a little tone.", "\The [src] flickers in your hand and emits a little tone.") + playsound(src, 'sound/effects/capture-crystal-out.ogg', 75, 1, -1) + UnregisterSignal(owner, COMSIG_PARENT_QDELETING) + owner = null + +//Let's make inviting ghosts be an option you can do instead of an automatic thing! +/obj/item/capture_crystal/verb/invite_ghost() + set name = "Enhance (Toggle Ghost Join)" + set category = "Object" + set src in usr + if(!ismob(loc)) + return + var/mob/living/U = src.loc + if(!bound_mob) + to_chat(U, "\The [src] emits an unpleasant tone... There is nothing to enhance.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + return + else if(U != owner) + to_chat(U, "\The [src] emits an unpleasant tone... It does not respond to your command.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + return + else if(bound_mob.client || !isanimal(bound_mob)) + to_chat(U, "\The [src] emits an unpleasant tone... \The [bound_mob] is not eligable for enhancement.") + playsound(src, 'sound/effects/capture-crystal-problem.ogg', 75, 1, -1) + return //Need to type cast the mob so it can detect ghostjoin + var/mob/living/simple_mob/M = bound_mob + if(M.ghostjoin) + M.ghostjoin = FALSE + to_chat(U, "\The [bound_mob] is no longer eligable to be joined by ghosts.") + else if(tgui_alert(U, "Do you want to offer your [bound_mob] up to ghosts to play as? There is no way undo this once a ghost takes over.", "Invite ghosts?",list("No","Yes")) == "Yes") + M.ghostjoin = TRUE + to_chat(U, "\The [bound_mob] is now eligable to be joined by ghosts. It will need to be out of the crystal to be able to be joined.") + else + to_chat(U, "You decided against it.") + +/obj/item/capture_crystal/update_icon() + . = ..() + if(spawn_mob_type) + icon_state = full_icon + else if(!bound_mob) + icon_state = "inactive" + else if(bound_mob in contents) + icon_state = full_icon + else + icon_state = empty_icon + if(!cooldown_check()) + icon_state = "[icon_state]-busy" + spawn(activate_cooldown) //If it's busy then we want to wait a bit to fix the sprite after the cooldown is done. + update_icon() + +/obj/item/capture_crystal/proc/cooldown_check() + if(world.time < last_activate + activate_cooldown) + return FALSE + else return TRUE + +/obj/item/capture_crystal/attack(mob/living/M, mob/living/user) + if(bound_mob) + if(!bound_mob.devourable) //Don't eat if prefs are bad + return + if(user.zone_sel.selecting == "mouth") //Click while targetting the mouth and you eat/feed the stored mob to whoever you clicked on + if(bound_mob in contents) + user.visible_message("\The [user] moves \the [src] to [M]'s [M.vore_selected]...") + M.perform_the_nom(M, bound_mob, M, M.vore_selected) + else if(M == user) //You don't have a mob, you ponder the orb instead of trying to capture yourself + user.visible_message("\The [user] ponders \the [src]...", "You ponder \the [src]...") + else if (cooldown_check()) //Try to capture someone without throwing + user.visible_message("\The [user] taps \the [M] with \the [src].") + activate(user, M) + else + to_chat(user, "\The [src] emits an unpleasant tone... It is not ready yet.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + +//Tries to unleash or recall your stored mob +/obj/item/capture_crystal/attack_self(mob/living/user) + if(!cooldown_check()) + to_chat(user, "\The [src] emits an unpleasant tone... It is not ready yet.") + if(bound_mob) + playsound(src, 'sound/effects/capture-crystal-problem.ogg', 75, 1, -1) + else + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(user == bound_mob) //You can't recall yourself + to_chat(user, "\The [src] emits an unpleasant tone... It does not activate for you.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(!active) + activate(user) + else + determine_action(user) + +//Make it so the crystal knows if its mob references get deleted to make sure things get cleaned up +/obj/item/capture_crystal/proc/knowyoursignals(mob/living/M, mob/living/U) + RegisterSignal(M, COMSIG_PARENT_QDELETING, .proc/mob_was_deleted, TRUE) + RegisterSignal(U, COMSIG_PARENT_QDELETING, .proc/owner_was_deleted, TRUE) + +//The basic capture command does most of the registration work. +/obj/item/capture_crystal/proc/capture(mob/living/M, mob/living/U) + if(!M.capture_crystal || M.capture_caught) + to_chat(U, "This creature is not suitable for capture.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + return + knowyoursignals(M, U) + owner = U + if(isanimal(M)) + var/mob/living/simple_mob/S = M + S.revivedby = U.name + if(!bound_mob) + bound_mob = M + bound_mob.capture_caught = TRUE + desc = "A glowing crystal in what appears to be some kind of steel housing." + +//Determines the capture chance! So you can't capture AI mobs if they're perfectly healthy and all that +/obj/item/capture_crystal/proc/capture_chance(mob/living/M, user) + if(capture_chance_modifier >= 100) //Master crystal always work + return 100 + var/capture_chance = ((1 - (M.health / M.maxHealth)) * 100) //Inverted health percent! 100% = 0% + //So I don't know how this works but here's a kind of explanation + //Basic chance + ((Mob's max health - minimum calculated health) / (Max allowed health - Min allowed health)*(Chance at Max allowed health - Chance at minimum allowed health) + capture_chance += 35 + ((M.maxHealth - 5)/ (1000-5)*(-100 - 35)) + //Basically! Mobs over 1000 max health will be unable to be caught without using status effects. + //Thanks Aronai! + var/effect_count = 0 //This will give you a smol chance to capture if you have applied status effects, even if the chance would ordinarily be <0 + if(M.stat == UNCONSCIOUS) + capture_chance += 0.1 + effect_count += 1 + else if(M.stat == CONSCIOUS) + capture_chance *= 0.9 + else + capture_chance = 0 + if(M.weakened) //Haha you fall down + capture_chance += 0.1 + effect_count += 1 + if(M.stunned) //What's the matter??? + capture_chance += 0.1 + effect_count += 1 + if(M.on_fire) //AAAAAAAA + capture_chance += 0.1 + effect_count += 1 + if(M.paralysis) //Oh noooo + capture_chance += 0.1 + effect_count += 1 + if(M.ai_holder.stance == STANCE_IDLE) //SNEAK ATTACK??? + capture_chance += 0.1 + effect_count += 1 + + capture_chance *= capture_chance_modifier + + if(capture_chance <= 0) + capture_chance = 0 + effect_count + if(capture_chance <= 0) + capture_chance = 0 + to_chat(user, "There's no chance... It needs to be weaker.") + + last_activate = world.time + log_admin("[user] threw a capture crystal at [M] and got [capture_chance]% chance to catch.") + return capture_chance + +//Handles checking relevent bans, preferences, and asking the player if they want to be caught +/obj/item/capture_crystal/proc/capture_player(mob/living/M, mob/living/U) + if(jobban_isbanned(M, "GhostRoles")) + to_chat(U, "This creature is not suitable for capture.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(!M.capture_crystal || M.capture_caught) + to_chat(U, "This creature is not suitable for capture.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(tgui_alert(M, "Would you like to be caught by in [src] by [U]? You will be bound to their will.", "Become Caught",list("No","Yes")) == "Yes") + if(tgui_alert(M, "Are you really sure? The only way to undo this is to OOC escape while you're in the crystal.", "Become Caught", list("No","Yes")) == "Yes") + log_admin("[key_name(M)] has agreed to become caught by [key_name(U)].") + capture(M, U) + recall(U) + return + to_chat(U, "This creature is too strong willed to be captured.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + +//The clean up procs! +/obj/item/capture_crystal/proc/mob_was_deleted() + UnregisterSignal(bound_mob, COMSIG_PARENT_QDELETING) + UnregisterSignal(owner, COMSIG_PARENT_QDELETING) + bound_mob.capture_caught = FALSE + bound_mob = null + owner = null + active = FALSE + update_icon() + +/obj/item/capture_crystal/proc/owner_was_deleted() + UnregisterSignal(owner, COMSIG_PARENT_QDELETING) + owner = null + active = FALSE + update_icon() + +//If the crystal hasn't been set up, it does this +/obj/item/capture_crystal/proc/activate(mob/living/user, target) + if(!cooldown_check()) //Are we ready to do things yet? + to_chat(thrower, "\The [src] clicks unsatisfyingly... It is not ready yet.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + return + if(spawn_mob_type && !bound_mob) //We don't already have a mob, but we know what kind of mob we want + bound_mob = new spawn_mob_type(src) //Well let's spawn it then! + bound_mob.faction = user.faction + spawn_mob_type = null + capture(bound_mob, user) + if(bound_mob) //We have a mob! Let's finish setting up. + user.visible_message("\The [src] clicks, and then emits a small chime.", "\The [src] grows warm in your hand, something inside is awake.") + active = TRUE + if(!owner) //Do we have an owner? It's pretty unlikely that this would ever happen! But it happens, let's claim the crystal. + owner = user + if(isanimal(bound_mob)) + var/mob/living/simple_mob/S = bound_mob + S.revivedby = user.name + determine_action(user, target) + return + else if(isliving(target)) //So we don't have a mob, let's try to claim one! Is the target a mob? + var/mob/living/M = target + last_activate = world.time + if(M.capture_caught) //Can't capture things that were already caught. + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + to_chat(user, "\The [src] clicks unsatisfyingly... \The [M] is already under someone else's control.") + return + else if(M.stat == DEAD) //Is it dead? We can't influence dead things. + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + to_chat(user, "\The [src] clicks unsatisfyingly... \The [M] is not in a state to be captured.") + return + else if(M.client) //Is it player controlled? + capture_player(M, user) //We have to do things a little differently if so. + return + else if(!isanimal(M)) //So it's not player controlled, but it's also not a simplemob? + to_chat(user, "This creature is not suitable for capture.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + return + var/mob/living/simple_mob/S = M + if(!S.ai_holder) //We don't really want to capture simplemobs that don't have an AI + to_chat(user, "This creature is not suitable for capture.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(prob(capture_chance(S, user))) //OKAY! So we have an NPC simplemob with an AI, let's calculate its capture chance! It varies based on the mob's condition. + capture(S, user) //We did it! Woo! We capture it! + user.visible_message("\The [src] clicks, and then emits a small chime.", "Alright! \The [S] was caught!") + recall(user) + active = TRUE + else //Shoot, it didn't work and now it's mad!!! + S.ai_holder.go_wake() + S.ai_holder.target = user + S.ai_holder.track_target_position() + S.ai_holder.set_stance(STANCE_FIGHT) + user.visible_message("\The [src] bonks into \the [S], angering it!") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + to_chat(user, "\The [src] clicks unsatisfyingly.") + update_icon() + return + //The target is not a mob, so let's not do anything. + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + to_chat(user, "\The [src] clicks unsatisfyingly.") + +//We're using the crystal, but what will it do? +/obj/item/capture_crystal/proc/determine_action(mob/living/U, T) + if(!cooldown_check()) //Are we ready yet? + to_chat(thrower, "\The [src] clicks unsatisfyingly... It is not ready yet.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + return //No + if(bound_mob in contents) //Do we have our mob? + if(T) + unleash(U, T) //Yes, let's let it out! + else + unleash(U) + else if (bound_mob) //Do we HAVE a mob? + recall(U) //Yes, let's try to put it back in the crystal + else //No we don't have a mob, let's reset the crystal. + to_chat(U, "\The [src] clicks unsatisfyingly.") + active = FALSE + update_icon() + owner = null + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + +//Let's try to call our mob back! +/obj/item/capture_crystal/proc/recall(mob/living/user) + if(bound_mob in view(user)) //We can only recall it if we can see it + var/turf/turfmemory = get_turf(bound_mob) + if(isanimal(bound_mob)) + var/mob/living/simple_mob/M = bound_mob + M.ai_holder.go_sleep() //AI doesn't need to think when it's in the crystal + bound_mob.forceMove(src) + last_activate = world.time + bound_mob.visible_message("\The [user]'s [src] flashes, disappearing [bound_mob] in an instant!!!", "\The [src] pulls you back into confinement in a flash of light!!!") + animate_action(turfmemory) + playsound(src, 'sound/effects/capture-crystal-in.ogg', 75, 1, -1) + update_icon() + else + to_chat(user, "\The [src] clicks and emits a small, unpleasant tone. \The [bound_mob] cannot be recalled.") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + +//Let's let our mob out! +/obj/item/capture_crystal/proc/unleash(mob/living/user, atom/target) + if(!user && !target) //We got thrown but we're not sure who did it, let's go to where the crystal is + bound_mob.forceMove(src.drop_location()) + return + if(!target) //We know who wants to let us out, but they didn't say where, so let's drop us on them + bound_mob.forceMove(user.drop_location()) + else //We got thrown! Let's go where we got thrown + bound_mob.forceMove(target.drop_location()) + last_activate = world.time + if(isanimal(bound_mob)) + var/mob/living/simple_mob/M = bound_mob + M.ai_holder.go_wake() //Okay it's time to do work, let's wake up! + bound_mob.faction = owner.faction //Let's make sure we aren't hostile to our owner or their friends + bound_mob.visible_message("\The [user]'s [src] flashes, \the [bound_mob] appears in an instant!!!", "The world around you rematerialize as you are unleashed from the [src] next to \the [user]. You feel a strong compulsion to enact \the [owner]'s will.") + animate_action(get_turf(bound_mob)) + playsound(src, 'sound/effects/capture-crystal-out.ogg', 75, 1, -1) + update_icon() + +//Let's make a flashy sparkle when someone appears or disappears! +/obj/item/capture_crystal/proc/animate_action(atom/thing) + var/image/coolanimation = image('icons/obj/capture_crystal_vr.dmi', null, "animation") + coolanimation.plane = PLANE_LIGHTING_ABOVE + thing.overlays += coolanimation + sleep(11) + thing.overlays -= coolanimation + +//IF the crystal somehow ends up in a tummy and digesting with a bound mob who doesn't want to be eaten, let's move them to the ground +/obj/item/capture_crystal/digest_act(var/atom/movable/item_storage = null) + if(bound_mob in contents && !bound_mob.devourable) + bound_mob.forceMove(src.drop_location()) + return ..() + +//We got thrown! Let's figure out what to do +/obj/item/capture_crystal/throw_at(atom/target, range, speed, mob/thrower, spin = TRUE, datum/callback/callback) + . = ..() + if(target == bound_mob && thrower != bound_mob) //We got thrown at our bound mob (and weren't thrown by the bound mob) let's ignore the cooldown and just put them back in + recall(thrower) + else if(!cooldown_check()) //OTHERWISE let's obey the cooldown + to_chat(thrower, "\The [src] emits an soft tone... It is not ready yet.") + if(bound_mob) + playsound(src, 'sound/effects/capture-crystal-problem.ogg', 75, 1, -1) + else + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(!active) //The ball isn't set up, let's try to set it up. + if(isliving(target)) //We're hitting a mob, let's try to capture it. + sleep(10) + activate(thrower, target) + return + sleep(10) + activate(thrower, src) + else if(!bound_mob) //We hit something else, and we don't have a mob, so we can't really do anything! + to_chat(thrower, "\The [src] clicks unpleasantly...") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + else if(bound_mob in contents) //We have our mob! Let's try to let it out. + sleep(10) + unleash(thrower, src) + update_icon() + else //Our mob isn't here, we can't do anything. + to_chat(thrower, "\The [src] clicks unpleasantly...") + playsound(src, 'sound/effects/capture-crystal-negative.ogg', 75, 1, -1) + +/obj/item/capture_crystal/great + capture_chance_modifier = 1.5 + +/obj/item/capture_crystal/ultra + capture_chance_modifier = 2 + +/obj/item/capture_crystal/master + capture_chance_modifier = 100 + +/obj/item/capture_crystal/cass + spawn_mob_type = /mob/living/simple_mob/vore/woof/cass +/obj/item/capture_crystal/adg + spawn_mob_type = /mob/living/simple_mob/mechanical/mecha/combat/gygax/dark/advanced +/obj/item/capture_crystal/bigdragon + spawn_mob_type = /mob/living/simple_mob/vore/bigdragon +/obj/item/capture_crystal/bigdragon/friendly + spawn_mob_type = /mob/living/simple_mob/vore/bigdragon/friendly +/obj/item/capture_crystal/teppi + spawn_mob_type = /mob/living/simple_mob/vore/alienanimals/teppi +/obj/item/capture_crystal/broodmother + spawn_mob_type = /mob/living/simple_mob/animal/giant_spider/broodmother +/obj/item/capture_crystal/skeleton + spawn_mob_type = /mob/living/simple_mob/vore/alienanimals/skeleton +/obj/item/capture_crystal/dustjumper + spawn_mob_type = /mob/living/simple_mob/vore/alienanimals/dustjumper + +/obj/item/capture_crystal/random + var/static/list/possible_mob_types = list( + list(/mob/living/simple_mob/animal/goat), + list( + /mob/living/simple_mob/animal/passive/bird, + /mob/living/simple_mob/animal/passive/bird/azure_tit, + /mob/living/simple_mob/animal/passive/bird/black_bird, + /mob/living/simple_mob/animal/passive/bird/european_robin, + /mob/living/simple_mob/animal/passive/bird/goldcrest, + /mob/living/simple_mob/animal/passive/bird/ringneck_dove, + /mob/living/simple_mob/animal/passive/bird/parrot, + /mob/living/simple_mob/animal/passive/bird/parrot/black_headed_caique, + /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar, + /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/blue, + /mob/living/simple_mob/animal/passive/bird/parrot/budgerigar/bluegreen, + /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel, + /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/grey, + /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/white, + /mob/living/simple_mob/animal/passive/bird/parrot/cockatiel/yellowish, + /mob/living/simple_mob/animal/passive/bird/parrot/eclectus, + /mob/living/simple_mob/animal/passive/bird/parrot/grey_parrot, + /mob/living/simple_mob/animal/passive/bird/parrot/kea, + /mob/living/simple_mob/animal/passive/bird/parrot/pink_cockatoo, + /mob/living/simple_mob/animal/passive/bird/parrot/sulphur_cockatoo, + /mob/living/simple_mob/animal/passive/bird/parrot/white_caique, + /mob/living/simple_mob/animal/passive/bird/parrot/white_cockatoo + ), + list( + /mob/living/simple_mob/animal/passive/cat, + /mob/living/simple_mob/animal/passive/cat/black + ), + list(/mob/living/simple_mob/animal/passive/chick), + list(/mob/living/simple_mob/animal/passive/cow), + list(/mob/living/simple_mob/animal/passive/dog/brittany), + list(/mob/living/simple_mob/animal/passive/dog/corgi), + list(/mob/living/simple_mob/animal/passive/dog/tamaskan), + list(/mob/living/simple_mob/animal/passive/fox), + list(/mob/living/simple_mob/animal/passive/hare), + list(/mob/living/simple_mob/animal/passive/lizard), + list(/mob/living/simple_mob/animal/passive/mouse), + list(/mob/living/simple_mob/animal/passive/mouse/jerboa), + list(/mob/living/simple_mob/animal/passive/opossum), + list(/mob/living/simple_mob/animal/passive/pillbug), + list(/mob/living/simple_mob/animal/passive/snake), + list(/mob/living/simple_mob/animal/passive/tindalos), + list(/mob/living/simple_mob/animal/passive/yithian), + list( + /mob/living/simple_mob/animal/wolf, + /mob/living/simple_mob/animal/wolf/direwolf + ), + list(/mob/living/simple_mob/vore/rabbit), + list(/mob/living/simple_mob/vore/redpanda), + list(/mob/living/simple_mob/vore/woof), + list(/mob/living/simple_mob/vore/fennec), + list(/mob/living/simple_mob/vore/fennix), + list(/mob/living/simple_mob/vore/hippo), + list(/mob/living/simple_mob/vore/horse), + list(/mob/living/simple_mob/vore/bee), + list( + /mob/living/simple_mob/animal/space/bear, + /mob/living/simple_mob/animal/space/bear/brown + ), + list( + /mob/living/simple_mob/otie/feral, + /mob/living/simple_mob/otie/feral/chubby, + /mob/living/simple_mob/otie/red, + /mob/living/simple_mob/otie/red/chubby + ), + list(/mob/living/simple_mob/animal/sif/diyaab), + list(/mob/living/simple_mob/animal/sif/duck), + list(/mob/living/simple_mob/animal/sif/frostfly), + list( + /mob/living/simple_mob/animal/sif/glitterfly =50, + /mob/living/simple_mob/animal/sif/glitterfly/rare = 1 + ), + list( + /mob/living/simple_mob/animal/sif/kururak = 10, + /mob/living/simple_mob/animal/sif/kururak/leader = 1, + /mob/living/simple_mob/animal/sif/kururak/hibernate = 2, + ), + list( + /mob/living/simple_mob/animal/sif/sakimm = 10, + /mob/living/simple_mob/animal/sif/sakimm/intelligent = 1 + ), + list(/mob/living/simple_mob/animal/sif/savik) = 5, + list( + /mob/living/simple_mob/animal/sif/shantak = 10, + /mob/living/simple_mob/animal/sif/shantak/leader = 1 + ), + list(/mob/living/simple_mob/animal/sif/siffet), + list(/mob/living/simple_mob/animal/sif/tymisian), + list( + /mob/living/simple_mob/animal/giant_spider/nurse = 10, + /mob/living/simple_mob/animal/giant_spider/electric = 5, + /mob/living/simple_mob/animal/giant_spider/frost = 5, + /mob/living/simple_mob/animal/giant_spider/hunter = 10, + /mob/living/simple_mob/animal/giant_spider/ion = 5, + /mob/living/simple_mob/animal/giant_spider/lurker = 10, + /mob/living/simple_mob/animal/giant_spider/pepper = 10, + /mob/living/simple_mob/animal/giant_spider/phorogenic = 10, + /mob/living/simple_mob/animal/giant_spider/thermic = 5, + /mob/living/simple_mob/animal/giant_spider/tunneler = 10, + /mob/living/simple_mob/animal/giant_spider/webslinger = 5, + /mob/living/simple_mob/animal/giant_spider/broodmother = 1), + list( + /mob/living/simple_mob/animal/wolf = 10, + /mob/living/simple_mob/animal/wolf/direwolf = 5, + /mob/living/simple_mob/vore/greatwolf = 1, + /mob/living/simple_mob/vore/greatwolf/black = 1, + /mob/living/simple_mob/vore/greatwolf/grey = 1 + ), + list(/mob/living/simple_mob/creature/strong), + list(/mob/living/simple_mob/faithless/strong), + list(/mob/living/simple_mob/animal/goat), + list( + /mob/living/simple_mob/animal/sif/shantak/leader = 1, + /mob/living/simple_mob/animal/sif/shantak = 10), + list(/mob/living/simple_mob/animal/sif/savik,), + list(/mob/living/simple_mob/animal/sif/hooligan_crab), + list( + /mob/living/simple_mob/animal/space/alien = 50, + /mob/living/simple_mob/animal/space/alien/drone = 40, + /mob/living/simple_mob/animal/space/alien/sentinel = 25, + /mob/living/simple_mob/animal/space/alien/sentinel/praetorian = 15, + /mob/living/simple_mob/animal/space/alien/queen = 10, + /mob/living/simple_mob/animal/space/alien/queen/empress = 5, + /mob/living/simple_mob/animal/space/alien/queen/empress/mother = 1 + ), + list(/mob/living/simple_mob/animal/space/bats/cult/strong), + list( + /mob/living/simple_mob/animal/space/bear, + /mob/living/simple_mob/animal/space/bear/brown + ), + list( + /mob/living/simple_mob/animal/space/carp = 50, + /mob/living/simple_mob/animal/space/carp/large = 10, + /mob/living/simple_mob/animal/space/carp/large/huge = 5 + ), + list(/mob/living/simple_mob/animal/space/goose), + list(/mob/living/simple_mob/animal/space/jelly), + list(/mob/living/simple_mob/animal/space/tree), + list( + /mob/living/simple_mob/vore/aggressive/corrupthound = 10, + /mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi = 1, + ), + list(/mob/living/simple_mob/vore/aggressive/deathclaw), + list(/mob/living/simple_mob/vore/aggressive/dino), + list(/mob/living/simple_mob/vore/aggressive/dragon), + list(/mob/living/simple_mob/vore/aggressive/dragon/virgo3b), + list(/mob/living/simple_mob/vore/aggressive/frog), + list(/mob/living/simple_mob/vore/aggressive/giant_snake), + list(/mob/living/simple_mob/vore/aggressive/mimic), + list(/mob/living/simple_mob/vore/aggressive/panther), + list(/mob/living/simple_mob/vore/aggressive/rat), + list(/mob/living/simple_mob/vore/bee), + list( + /mob/living/simple_mob/vore/sect_drone = 10, + /mob/living/simple_mob/vore/sect_queen = 1 + ), + list(/mob/living/simple_mob/vore/solargrub), + list( + /mob/living/simple_mob/vore/oregrub = 5, + /mob/living/simple_mob/vore/oregrub/lava = 1 + ), + list(/mob/living/simple_mob/vore/catgirl), + list(/mob/living/simple_mob/vore/wolfgirl), + list( + /mob/living/simple_mob/vore/lamia, + /mob/living/simple_mob/vore/lamia/albino, + /mob/living/simple_mob/vore/lamia/albino/bra, + /mob/living/simple_mob/vore/lamia/albino/shirt, + /mob/living/simple_mob/vore/lamia/bra, + /mob/living/simple_mob/vore/lamia/cobra, + /mob/living/simple_mob/vore/lamia/cobra/bra, + /mob/living/simple_mob/vore/lamia/cobra/shirt, + /mob/living/simple_mob/vore/lamia/copper, + /mob/living/simple_mob/vore/lamia/copper/bra, + /mob/living/simple_mob/vore/lamia/copper/shirt, + /mob/living/simple_mob/vore/lamia/green, + /mob/living/simple_mob/vore/lamia/green/bra, + /mob/living/simple_mob/vore/lamia/green/shirt, + /mob/living/simple_mob/vore/lamia/zebra, + /mob/living/simple_mob/vore/lamia/zebra/bra, + /mob/living/simple_mob/vore/lamia/zebra/shirt + ), + list( + /mob/living/simple_mob/humanoid/merc = 100, + /mob/living/simple_mob/humanoid/merc/melee/sword = 50, + /mob/living/simple_mob/humanoid/merc/ranged = 25, + /mob/living/simple_mob/humanoid/merc/ranged/grenadier = 1, + /mob/living/simple_mob/humanoid/merc/ranged/ionrifle = 10, + /mob/living/simple_mob/humanoid/merc/ranged/laser = 5, + /mob/living/simple_mob/humanoid/merc/ranged/rifle = 5, + /mob/living/simple_mob/humanoid/merc/ranged/smg = 5, + /mob/living/simple_mob/humanoid/merc/ranged/sniper = 1, + /mob/living/simple_mob/humanoid/merc/ranged/space = 10, + /mob/living/simple_mob/humanoid/merc/ranged/technician = 5 + ), + list( + /mob/living/simple_mob/humanoid/pirate = 3, + /mob/living/simple_mob/humanoid/pirate/ranged = 1 + ), + list(/mob/living/simple_mob/mechanical/combat_drone), + list(/mob/living/simple_mob/mechanical/corrupt_maint_drone), + list( + /mob/living/simple_mob/mechanical/hivebot = 100, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage = 20, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/backline = 10, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/basic = 20, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/dot = 5, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/ion = 20, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/laser = 10, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/rapid = 2, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege = 1, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/emp = 5, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/fragmentation = 1, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/siege/radiation = 1, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong = 3, + /mob/living/simple_mob/mechanical/hivebot/ranged_damage/strong/guard = 3, + /mob/living/simple_mob/mechanical/hivebot/support = 8, + /mob/living/simple_mob/mechanical/hivebot/support/commander = 5, + /mob/living/simple_mob/mechanical/hivebot/support/commander/autofollow = 10, + /mob/living/simple_mob/mechanical/hivebot/swarm = 20, + /mob/living/simple_mob/mechanical/hivebot/tank = 20, + /mob/living/simple_mob/mechanical/hivebot/tank/armored = 20, + /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_bullet = 20, + /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_laser = 20, + /mob/living/simple_mob/mechanical/hivebot/tank/armored/anti_melee = 20, + /mob/living/simple_mob/mechanical/hivebot/tank/meatshield = 20 + ), + list(/mob/living/simple_mob/mechanical/infectionbot), + list(/mob/living/simple_mob/mechanical/mining_drone), + list(/mob/living/simple_mob/mechanical/technomancer_golem), + list( + /mob/living/simple_mob/mechanical/viscerator, + /mob/living/simple_mob/mechanical/viscerator/piercing + ), + list(/mob/living/simple_mob/mechanical/wahlem), + list(/mob/living/simple_mob/animal/passive/fox/syndicate), + list(/mob/living/simple_mob/animal/passive/fox), + list(/mob/living/simple_mob/animal/wolf/direwolf), + list(/mob/living/simple_mob/animal/space/jelly), + list( + /mob/living/simple_mob/otie/feral, + /mob/living/simple_mob/otie/feral/chubby, + /mob/living/simple_mob/otie/red, + /mob/living/simple_mob/otie/red/chubby + ), + list( + /mob/living/simple_mob/shadekin/blue = 100, + /mob/living/simple_mob/shadekin/green = 50, + /mob/living/simple_mob/shadekin/orange = 20, + /mob/living/simple_mob/shadekin/purple = 60, + /mob/living/simple_mob/shadekin/red = 40, + /mob/living/simple_mob/shadekin/yellow = 1 + ), + list( + /mob/living/simple_mob/vore/aggressive/corrupthound, + /mob/living/simple_mob/vore/aggressive/corrupthound/prettyboi + ), + list(/mob/living/simple_mob/vore/aggressive/deathclaw), + list(/mob/living/simple_mob/vore/aggressive/dino), + list(/mob/living/simple_mob/vore/aggressive/dragon), + list(/mob/living/simple_mob/vore/aggressive/dragon/virgo3b), + list(/mob/living/simple_mob/vore/aggressive/frog), + list(/mob/living/simple_mob/vore/aggressive/giant_snake), + list(/mob/living/simple_mob/vore/aggressive/mimic), + list(/mob/living/simple_mob/vore/aggressive/panther), + list(/mob/living/simple_mob/vore/aggressive/rat), + list(/mob/living/simple_mob/vore/bee), + list(/mob/living/simple_mob/vore/catgirl), + list(/mob/living/simple_mob/vore/cookiegirl), + list(/mob/living/simple_mob/vore/fennec), + list(/mob/living/simple_mob/vore/fennix), + list(/mob/living/simple_mob/vore/hippo), + list(/mob/living/simple_mob/vore/horse), + list(/mob/living/simple_mob/vore/oregrub), + list(/mob/living/simple_mob/vore/rabbit), + list( + /mob/living/simple_mob/vore/redpanda = 50, + /mob/living/simple_mob/vore/redpanda/fae = 1 + ), + list( + /mob/living/simple_mob/vore/sect_drone = 10, + /mob/living/simple_mob/vore/sect_queen = 1 + ), + list(/mob/living/simple_mob/vore/solargrub), + list(/mob/living/simple_mob/vore/woof), + list(/mob/living/simple_mob/vore/alienanimals/teppi), + list(/mob/living/simple_mob/vore/alienanimals/space_ghost), + list(/mob/living/simple_mob/vore/alienanimals/catslug), + list(/mob/living/simple_mob/vore/alienanimals/space_jellyfish), + list(/mob/living/simple_mob/vore/alienanimals/startreader), + list(/mob/living/simple_mob/vore/bigdragon), + list( + /mob/living/simple_mob/vore/leopardmander = 50, + /mob/living/simple_mob/vore/leopardmander/blue = 10, + /mob/living/simple_mob/vore/leopardmander/exotic = 1 + ), + list(/mob/living/simple_mob/vore/sheep), + list(/mob/living/simple_mob/vore/weretiger), + list(/mob/living/simple_mob/vore/alienanimals/skeleton), + list(/mob/living/simple_mob/vore/alienanimals/dustjumper) + ) + +/obj/item/capture_crystal/random/Initialize() + var/subchoice = pickweight(possible_mob_types) //Some of the lists have nested lists, so let's pick one of them + var/choice = pickweight(subchoice) //And then we'll pick something from whatever's left + spawn_mob_type = choice //Now when someone uses this, we'll spawn whatever we picked! + return ..() + +/mob/living + var/capture_crystal = TRUE //If TRUE, the mob is capturable. Otherwise it isn't. + var/capture_caught = FALSE //If TRUE, the mob has already been caught, and so cannot be caught again. \ No newline at end of file diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index 744cc130e21..1a19b98910b 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -55,7 +55,7 @@ C.throw_mode_on() /obj/item/weapon/grenade/chem_grenade/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W,/obj/item/device/assembly_holder) && (!stage || stage==1) && path != 2) + if(istype(W,/obj/item/device/assembly_holder) && (!stage || stage==1) && !detonator && path != 2) var/obj/item/device/assembly_holder/det = W if(istype(det.a_left,det.a_right.type) || (!isigniter(det.a_left) && !isigniter(det.a_right))) to_chat(user, "Assembly must contain one igniter.") @@ -314,4 +314,3 @@ beakers += B1 beakers += B2 - \ No newline at end of file diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 1c92c3e94e8..00647f37f37 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -158,7 +158,8 @@ /obj/item/stack/nanopaste, /obj/item/weapon/cell, //this is a bigger belt, might as well make it hold bigger cells too /obj/item/weapon/pipe_dispenser, //bigger belt for bigger tools - /obj/item/weapon/rcd //see above + /obj/item/weapon/rcd, //see above + /obj/item/device/quantum_pad_booster ) diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index 78eb6d5d481..aa0e4598ea1 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -68,7 +68,7 @@ item_state = "candlebox5" throwforce = 2 slot_flags = SLOT_BELT - max_storage_space = ITEMSIZE_COST_SMALL * 5 + max_storage_space = ITEMSIZE_COST_TINY * 5 can_hold = list(/obj/item/weapon/flame/candle) starts_with = list(/obj/item/weapon/flame/candle = 5) @@ -81,7 +81,7 @@ item_state = "whitecandlebox5" throwforce = 2 slot_flags = SLOT_BELT - max_storage_space = ITEMSIZE_COST_SMALL * 5 + max_storage_space = ITEMSIZE_COST_TINY * 5 can_hold = list(/obj/item/weapon/flame/candle) starts_with = list(/obj/item/weapon/flame/candle/white = 5) @@ -94,7 +94,7 @@ item_state = "blackcandlebox5" throwforce = 2 slot_flags = SLOT_BELT - max_storage_space = ITEMSIZE_COST_SMALL * 5 + max_storage_space = ITEMSIZE_COST_TINY * 5 can_hold = list(/obj/item/weapon/flame/candle) starts_with = list(/obj/item/weapon/flame/candle/black = 5) diff --git a/code/game/objects/random/mapping.dm b/code/game/objects/random/mapping.dm index c67b06d8401..a9e567c6c09 100644 --- a/code/game/objects/random/mapping.dm +++ b/code/game/objects/random/mapping.dm @@ -109,7 +109,7 @@ /obj/random/vendordrink/item_to_spawn() //Not including coffee as it's more specific in usage. return pick (/obj/machinery/vending/cola, /obj/machinery/vending/cola/soft, - /obj/machinery/vending/bepis, + /obj/machinery/vending/bepis, /obj/machinery/vending/sovietsoda, /obj/machinery/vending/radren) //VOREStation Edit End @@ -1455,7 +1455,7 @@ /obj/random/turf/lava/item_to_spawn() return pick(prob(5);/turf/simulated/floor/lava, prob(3);/turf/simulated/floor/outdoors/rocks/caves, - prob(1);/turf/simulated/mineral) + prob(1);/turf/simulated/mineral/ignore_mapgen/cave) //VOREStation Add Start - Underdark stuff that would be cool if existed if the underdark doesn't. diff --git a/code/game/objects/random/misc_vr.dm b/code/game/objects/random/misc_vr.dm index 0d3a17c23f2..9030e874ac0 100644 --- a/code/game/objects/random/misc_vr.dm +++ b/code/game/objects/random/misc_vr.dm @@ -23,6 +23,7 @@ prob(30);/obj/item/weapon/aliencoin/gold, prob(20);/obj/item/weapon/aliencoin/phoron, prob(10);/obj/item/device/denecrotizer, + prob(5);/obj/item/capture_crystal, prob(5);/obj/item/device/perfect_tele, prob(5);/obj/item/weapon/bluespace_harpoon, prob(1);/obj/item/weapon/cell/infinite, @@ -43,9 +44,59 @@ prob(3);/obj/fiftyspawner/silver, prob(1);/obj/fiftyspawner/diamond, prob(5);/obj/fiftyspawner/phoron, - prob(1);/obj/item/weapon/telecube/randomized + prob(1);/obj/item/weapon/telecube/randomized, + prob(1);/obj/item/capture_crystal/random ) /obj/random/awayloot/nofail name = "garunteed random away mission loot" spawn_nothing_percentage = 0 + +/obj/random/awayloot/looseloot +/obj/random/awayloot/looseloot/item_to_spawn() + return pick(prob(50);/obj/item/weapon/aliencoin, + prob(40);/obj/item/weapon/aliencoin/silver, + prob(30);/obj/item/weapon/aliencoin/gold, + prob(20);/obj/item/weapon/aliencoin/phoron, + prob(10);/obj/item/device/denecrotizer, + prob(5);/obj/item/capture_crystal, + prob(3);/obj/item/capture_crystal/great, + prob(1);/obj/item/capture_crystal/ultra, + prob(4);/obj/item/capture_crystal/random, + prob(5);/obj/item/device/perfect_tele, + prob(5);/obj/item/weapon/bluespace_harpoon, + prob(1);/obj/item/weapon/cell/infinite, + prob(1);/obj/item/weapon/cell/void, + prob(1);/obj/item/weapon/cell/device/weapon/recharge/alien, + prob(1);/obj/item/clothing/shoes/boots/speed, + prob(1);/obj/item/device/nif, + prob(1);/obj/item/device/paicard, + prob(2);/obj/item/weapon/storage/backpack/dufflebag/syndie, + prob(2);/obj/item/weapon/storage/backpack/dufflebag/syndie/ammo, + prob(2);/obj/item/weapon/storage/backpack/dufflebag/syndie/med, + prob(2);/obj/item/clothing/mask/gas/voice, + prob(2);/obj/item/device/radio_jammer, + prob(1);/obj/item/toy/bosunwhistle, + prob(1);/obj/item/weapon/bananapeel, + prob(5);/obj/fiftyspawner/platinum, + prob(3);/obj/fiftyspawner/gold, + prob(3);/obj/fiftyspawner/silver, + prob(1);/obj/fiftyspawner/diamond, + prob(5);/obj/fiftyspawner/phoron, + prob(1);/obj/item/weapon/telecube/randomized, + prob(10);/obj/random/empty_or_lootable_crate, + prob(10);/obj/random/medical, + prob(5);/obj/random/firstaid, + prob(30);/obj/random/maintenance, + prob(10);/obj/random/mre, + prob(15);/obj/random/snack, + prob(10);/obj/random/tech_supply, + prob(15);/obj/random/tech_supply/component, + prob(10);/obj/random/tool, + prob(5);/obj/random/tool/power, + prob(1);/obj/random/tool/alien, + prob(5);/obj/random/weapon, + prob(5);/obj/random/ammo_all, + prob(3);/obj/random/projectile/random, + prob(5);/obj/random/multiple/voidsuit + ) diff --git a/code/game/objects/random/mob.dm b/code/game/objects/random/mob.dm index d0cee5dff00..be1222aabef 100644 --- a/code/game/objects/random/mob.dm +++ b/code/game/objects/random/mob.dm @@ -240,6 +240,7 @@ /obj/random/mob/mouse/item_to_spawn() return pick(prob(15);/mob/living/simple_mob/animal/passive/mouse/white, + prob(15);/mob/living/simple_mob/animal/passive/mouse/black, prob(30);/mob/living/simple_mob/animal/passive/mouse/brown, prob(30);/mob/living/simple_mob/animal/passive/mouse/gray, prob(30);/mob/living/simple_mob/animal/passive/mouse/rat) diff --git a/code/game/objects/structures/artstuff.dm b/code/game/objects/structures/artstuff.dm index cbb95e955f8..d457d49811e 100644 --- a/code/game/objects/structures/artstuff.dm +++ b/code/game/objects/structures/artstuff.dm @@ -112,7 +112,7 @@ user.visible_message("[user] smears paint on [src], covering the entire thing in paint.", "You smear paint on [src], changing the color of the entire thing.", runemessage = "smears paint") update_appearance() return - + if(user.a_intent == I_HELP) tgui_interact(user) else @@ -215,7 +215,7 @@ return canvas_color /obj/item/canvas/proc/try_rename(mob/user) - var/new_name = stripped_input(user,"What do you want to name the painting?") + var/new_name = stripped_input(user,"What do you want to name the painting?", max_length = 250) if(new_name != painting_name && new_name && CanUseTopic(user, GLOB.tgui_physical_state)) painting_name = new_name SStgui.update_uis(src) @@ -291,7 +291,7 @@ if(new_color) selected_color = new_color color_drop.color = new_color - + cut_overlays() if(hud_level) add_overlay(color_drop) @@ -316,21 +316,10 @@ name = "painting frame" desc = "The perfect showcase for your favorite deathtrap memories." icon = 'icons/obj/decals.dmi' - //custom_materials = list(/datum/material/wood = 2000) - //flags_1 = NONE + refund_amt = 5 + refund_type = /obj/item/stack/material/wood icon_state = "frame-empty" - -/obj/item/frame/painting/try_build(turf/on_wall, mob/user as mob) - if(get_dist(on_wall, user) > 1) - return - var/ndir = get_dir(on_wall, user) - if (!(ndir in cardinal)) - return - if(!istype(on_wall, /turf/simulated/wall)) - to_chat(user, "Frame cannot be placed on this spot.") - return - new /obj/structure/sign/painting(get_turf(user), ndir, TRUE) - qdel(src) + build_machine_type = /obj/structure/sign/painting /obj/structure/sign/painting name = "Painting" @@ -483,12 +472,12 @@ /obj/structure/sign/painting/proc/load_persistent() if(!persistence_id || !LAZYLEN(SSpersistence.unpicked_paintings)) return - + var/list/painting_category = list() for (var/list/P in SSpersistence.unpicked_paintings) if(P["persistence_id"] == persistence_id) painting_category[++painting_category.len] = P - + var/list/painting while(!painting) if(!length(painting_category)) @@ -500,7 +489,7 @@ continue //and try again painting = chosen SSpersistence.unpicked_paintings -= list(chosen) - + var/title = painting["title"] var/author_name = painting["author"] var/author_ckey = painting["ckey"] @@ -509,7 +498,7 @@ var/obj/item/canvas/new_canvas var/w = I.Width() var/h = I.Height() - + for(var/T in typesof(/obj/item/canvas)) new_canvas = T if(initial(new_canvas.width) == w && initial(new_canvas.height) == h) @@ -519,7 +508,7 @@ if(!new_canvas) warning("Couldn't find a canvas to match [w]x[h] of painting") return - + new_canvas.fill_grid_from_icon(I) new_canvas.generated_icon = I new_canvas.icon_generated = TRUE @@ -540,7 +529,7 @@ return if(!current_canvas.painting_name) current_canvas.painting_name = "Untitled Artwork" - + var/data = current_canvas.get_data_string() var/md5 = md5(lowertext(data)) for(var/list/entry in SSpersistence.all_paintings) @@ -549,10 +538,10 @@ var/png_directory = "data/persistent/paintings/[persistence_id]/" var/png_path = png_directory + "[md5].png" var/result = rustg_dmi_create_png(png_path,"[current_canvas.width]","[current_canvas.height]",data) - + if(result) CRASH("Error saving persistent painting: [result]") - + SSpersistence.all_paintings += list(list( "persistence_id" = persistence_id, "title" = current_canvas.painting_name, diff --git a/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm b/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm index 17d67f912cf..af7092d9d68 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm @@ -6,6 +6,7 @@ starts_with = list( /obj/item/weapon/storage/bag/plants, /obj/item/clothing/under/rank/hydroponics, + /obj/item/clothing/gloves/botanic_leather, /obj/item/device/analyzer/plant_analyzer, /obj/item/device/radio/headset/headset_service, /obj/item/clothing/head/greenbandana, diff --git a/code/game/objects/structures/flora/flora.dm b/code/game/objects/structures/flora/flora.dm index 96795f446d0..4780c89f360 100644 --- a/code/game/objects/structures/flora/flora.dm +++ b/code/game/objects/structures/flora/flora.dm @@ -450,6 +450,43 @@ desc = "This is a tiny well lit decorative christmas tree." icon_state = "plant-xmas" +/obj/random/pottedplant + name = "random potted plant" + desc = "This is a random potted plant." + +/obj/random/pottedplant/item_to_spawn() + return pick( + prob(10);/obj/structure/flora/pottedplant, + prob(10);/obj/structure/flora/pottedplant/large, + prob(10);/obj/structure/flora/pottedplant/fern, + prob(10);/obj/structure/flora/pottedplant/overgrown, + prob(10);/obj/structure/flora/pottedplant/bamboo, + prob(10);/obj/structure/flora/pottedplant/largebush, + prob(10);/obj/structure/flora/pottedplant/thinbush, + prob(10);/obj/structure/flora/pottedplant/mysterious, + prob(10);/obj/structure/flora/pottedplant/smalltree, + prob(10);/obj/structure/flora/pottedplant/unusual, + prob(10);/obj/structure/flora/pottedplant/orientaltree, + prob(10);/obj/structure/flora/pottedplant/smallcactus, + prob(10);/obj/structure/flora/pottedplant/tall, + prob(10);/obj/structure/flora/pottedplant/sticky, + prob(10);/obj/structure/flora/pottedplant/smelly, + prob(10);/obj/structure/flora/pottedplant/small, + prob(10);/obj/structure/flora/pottedplant/aquatic, + prob(10);/obj/structure/flora/pottedplant/shoot, + prob(10);/obj/structure/flora/pottedplant/flower, + prob(10);/obj/structure/flora/pottedplant/crystal, + prob(10);/obj/structure/flora/pottedplant/subterranean, + prob(10);/obj/structure/flora/pottedplant/minitree, + prob(10);/obj/structure/flora/pottedplant/stoutbush, + prob(10);/obj/structure/flora/pottedplant/drooping, + prob(10);/obj/structure/flora/pottedplant/tropical, + prob(10);/obj/structure/flora/pottedplant/dead, + prob(10);/obj/structure/flora/pottedplant/decorative, + prob(1);/obj/structure/flora/pottedplant/xmas + ) + + /obj/structure/flora/sif icon = 'icons/obj/flora/sifflora.dmi' diff --git a/code/game/objects/structures/simple_doors.dm b/code/game/objects/structures/simple_doors.dm index 05f8fdc824d..ea70fa44a64 100644 --- a/code/game/objects/structures/simple_doors.dm +++ b/code/game/objects/structures/simple_doors.dm @@ -71,6 +71,7 @@ return TryToSwitchState(user) /obj/structure/simple_door/AltClick(mob/user as mob) + . = ..() user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN) if(!Adjacent(user)) return @@ -78,7 +79,7 @@ src.visible_message("[user] hammers on \the [src]!", "Someone hammers loudly on \the [src]!") src.add_fingerprint(user) playsound(src, knock_hammer_sound, 50, 0, 3) - else + else if(user.a_intent == I_HELP) src.visible_message("[user] knocks on \the [src].", "Someone knocks on \the [src].") src.add_fingerprint(user) playsound(src, knock_sound, 50, 0, 3) diff --git a/code/game/objects/structures/trash_pile_vr.dm b/code/game/objects/structures/trash_pile_vr.dm index 85eab74a094..600adb63518 100644 --- a/code/game/objects/structures/trash_pile_vr.dm +++ b/code/game/objects/structures/trash_pile_vr.dm @@ -69,13 +69,13 @@ var/mob/living/L = user //They're in it, and want to get out. if(L.loc == src) - var/choice = tgui_alert(usr, "Do you want to exit \the [src]?","Un-Hide?",list("Exit","Stay")) + var/choice = tgui_alert(user, "Do you want to exit \the [src]?","Un-Hide?",list("Exit","Stay")) if(choice == "Exit") if(L == hider) hider = null L.forceMove(get_turf(src)) else if(!hider) - var/choice = tgui_alert(usr, "Do you want to hide in \the [src]?","Un-Hide?",list("Hide","Stay")) + var/choice = tgui_alert(user, "Do you want to hide in \the [src]?","Un-Hide?",list("Hide","Stay")) if(choice == "Hide" && !hider) //Check again because PROMPT L.forceMove(src) hider = L @@ -255,7 +255,8 @@ prob(1);/obj/item/weapon/storage/box/survival/space, prob(1);/obj/item/weapon/storage/secure/briefcase/trashmoney, prob(1);/obj/item/device/survivalcapsule/popcabin, - prob(1);/obj/item/weapon/reagent_containers/syringe/steroid) + prob(1);/obj/item/weapon/reagent_containers/syringe/steroid, + prob(1);/obj/item/capture_crystal) var/obj/item/I = new path() return I diff --git a/code/game/turfs/weird_turfs_vr.dm b/code/game/turfs/weird_turfs_vr.dm new file mode 100644 index 00000000000..b1ef1fa4fb2 --- /dev/null +++ b/code/game/turfs/weird_turfs_vr.dm @@ -0,0 +1,131 @@ +/turf/simulated/floor/weird_things + icon = 'icons/turf/flooring/weird_vr.dmi' + +/turf/simulated/floor/weird_things/dark + name = "dark" + desc = "It's a strange, impenetrable darkness." + icon_state = "dark" + can_dirty = FALSE + +/turf/simulated/floor/weird_things/dark/Initialize(mapload) + . = ..() + if(prob(5)) + add_glow() + +/turf/simulated/floor/weird_things/dark/Crossed(O) + . = ..() + if(!isliving(O)) + return + cut_overlays() + if(prob(5)) + add_glow() + if(istype(O, /mob/living/carbon/human)) + var/mob/living/carbon/human/L = O + if(istype(L.species, /datum/species/crew_shadekin)) + L.halloss += 5 + if(prob(50)) + to_chat(L, "The more you move through this darkness, the more you can feel a throbbing, shooting ache in your bones.") + if(prob(5)) + L.visible_message("[L]'s body gives off a faint, sparking, haze...", "Your body gives off a faint, sparking, haze...", runemessage = "gives off a faint, sparking haze") + else if(istype(L.species, /datum/species/shadekin)) + var/obj/item/organ/internal/brain/shadekin/B = L.internal_organs_by_name["brain"] + B.dark_energy += 10 + if(prob(10)) + to_chat(L, "You can feel the energy flowing into you!") + else + if(prob(0.25)) + to_chat(L, "The darkness seethes under your feet...") + L.hallucination += 50 + +/turf/simulated/floor/weird_things/dark/proc/add_glow() + var/choice = "overlay-[rand(1,6)]" + var/image/i = image('icons/turf/flooring/weird_vr.dmi', choice) + i.plane = PLANE_LIGHTING_ABOVE + add_overlay(i) + +/turf/simulated/floor/weird_things/dark/ChangeTurf() + . = ..() + cut_overlays() + +/turf/unsimulated/wall/dark + name = "dark" + desc = "It's a strange, impenetrable darkness." + icon = 'icons/turf/flooring/weird_vr.dmi' + icon_state = "dark" + +/turf/unsimulated/wall/dark/Initialize(mapload) + . = ..() + if(prob(5)) + add_glow() + +/turf/unsimulated/wall/dark/proc/add_glow() + var/choice = "overlay-[rand(1,6)]" + var/image/i = image('icons/turf/flooring/weird_vr.dmi', choice) + i.plane = PLANE_LIGHTING_ABOVE + add_overlay(i) + +/turf/unsimulated/wall/dark/ChangeTurf() + . = ..() + cut_overlays() + + +/turf/unsimulated/floor/dark + name = "dark" + desc = "It's a strange, impenetrable darkness." + icon = 'icons/turf/flooring/weird_vr.dmi' + icon_state = "dark" + +/turf/unsimulated/floor/dark/Initialize(mapload) + . = ..() + if(prob(5)) + add_glow() + +/turf/unsimulated/floor/dark/Crossed(O) + . = ..() + if(!isliving(O)) + return + cut_overlays() + if(prob(5)) + add_glow() + if(istype(O, /mob/living/carbon/human)) + var/mob/living/carbon/human/L = O + if(istype(L.species, /datum/species/crew_shadekin)) + L.halloss += 5 + if(prob(50)) + to_chat(L, "The more you move through this darkness, the more you can feel a throbbing, shooting ache in your bones.") + if(prob(5)) + L.visible_message("[L]'s body gives off a faint, sparking, haze...", "Your body gives off a faint, sparking, haze...", runemessage = "gives off a faint, sparking haze") + else if(istype(L.species, /datum/species/shadekin)) + var/obj/item/organ/internal/brain/shadekin/B = L.internal_organs_by_name["brain"] + B.dark_energy += 10 + if(prob(10)) + to_chat(L, "You can feel the energy flowing into you!") + else + if(prob(0.25)) + to_chat(L, "The darkness seethes under your feet...") + L.hallucination += 50 + +/turf/unsimulated/floor/dark/proc/add_glow() + var/flip = rand(1,2) + var/choice + var/choiceb + if(flip == 1) + choice = "overlay-[rand(1,6)]" + if(flip == 2) + choice = "overlay-[rand(7,12)]" + var/image/i = image('icons/turf/flooring/weird_vr.dmi', choice) + i.plane = PLANE_LIGHTING_ABOVE + add_overlay(i) + if(prob(10)) + if(flip == 1) + choiceb = "overlay-[rand(7,12)]" + if(flip == 2) + choiceb = "overlay-[rand(1,6)]" + var/image/ii = image('icons/turf/flooring/weird_vr.dmi', choiceb) + add_overlay(ii) + + + +/turf/unsimulated/floor/dark/ChangeTurf() + . = ..() + cut_overlays() \ No newline at end of file diff --git a/code/global_vr.dm b/code/global_vr.dm index 8709577507c..6ed3403aaf7 100644 --- a/code/global_vr.dm +++ b/code/global_vr.dm @@ -1,4 +1,5 @@ var/list/vinestart = list() +var/list/verminstart = list() var/list/awayabductors = list() // List of scatter landmarks for Abductors in Gateways var/list/eventdestinations = list() // List of scatter landmarks for VOREStation event portals diff --git a/code/modules/admin/verbs/smite_vr.dm b/code/modules/admin/verbs/smite_vr.dm index 51e44119064..750a8c0bea9 100644 --- a/code/modules/admin/verbs/smite_vr.dm +++ b/code/modules/admin/verbs/smite_vr.dm @@ -34,7 +34,7 @@ if(!Ts) return //Didn't find shadekin spawn turf - var/mob/living/simple_mob/shadekin/red/ai/shadekin = new(Ts) + var/mob/living/simple_mob/shadekin/red/shadekin = new(Ts) //Abuse of shadekin shadekin.real_name = shadekin.name shadekin.init_vore() diff --git a/code/modules/awaymissions/corpse.dm b/code/modules/awaymissions/corpse.dm index 7d0508a0fd9..cf55eacec47 100644 --- a/code/modules/awaymissions/corpse.dm +++ b/code/modules/awaymissions/corpse.dm @@ -49,8 +49,6 @@ //TODO: insert cause of death handling/wound simulation here if(src.corpseuniform) M.equip_to_slot_or_del(new src.corpseuniform(M), slot_w_uniform) - if(src.corpsesuit) - M.equip_voidsuit_to_slot_or_del_with_refit(new src.corpsesuit(M), slot_wear_suit, src.species) if(src.corpseshoes) M.equip_to_slot_or_del(new src.corpseshoes(M), slot_shoes) if(src.corpsegloves) @@ -61,8 +59,6 @@ M.equip_to_slot_or_del(new src.corpseglasses(M), slot_glasses) if(src.corpsemask) M.equip_to_slot_or_del(new src.corpsemask(M), slot_wear_mask) - if(src.corpsehelmet) - M.equip_voidhelm_to_slot_or_del_with_refit(new src.corpsehelmet(M), slot_head, src.species) if(src.corpsebelt) M.equip_to_slot_or_del(new src.corpsebelt(M), slot_belt) if(src.corpsepocket1) @@ -90,6 +86,11 @@ W.assignment = corpseidjob M.set_id_info(W) M.equip_to_slot_or_del(W, slot_wear_id) + // Do suit last to avoid equipping issues + if(src.corpsehelmet) + M.equip_voidhelm_to_slot_or_del_with_refit(new src.corpsehelmet(M), slot_head, src.species) + if(src.corpsesuit) + M.equip_voidsuit_to_slot_or_del_with_refit(new src.corpsesuit(M), slot_wear_suit, src.species) diff --git a/code/modules/client/preference_setup/antagonism/02_candidacy.dm b/code/modules/client/preference_setup/antagonism/02_candidacy.dm index fae7e35118a..d922f106690 100644 --- a/code/modules/client/preference_setup/antagonism/02_candidacy.dm +++ b/code/modules/client/preference_setup/antagonism/02_candidacy.dm @@ -21,6 +21,8 @@ var/global/list/special_roles = list( //keep synced with the defines BE_* in set "lost drone" = 1, // 16 "maint pred" = 1, // 17 "morph" = 1, // 18 + "corgi" = 1, // 19 + "cursed sword" = 1, // 20 //VOREStation Add End ) diff --git a/code/modules/client/preference_setup/general/03_body.dm b/code/modules/client/preference_setup/general/03_body.dm index 13128f55c75..6cdfa38f138 100644 --- a/code/modules/client/preference_setup/general/03_body.dm +++ b/code/modules/client/preference_setup/general/03_body.dm @@ -687,9 +687,9 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O reset_limbs() // Safety for species with incompatible manufacturers; easier than trying to do it case by case. pref.body_markings.Cut() // Basically same as above. - + pref.sanitize_body_styles() - + var/min_age = get_min_age() var/max_age = get_max_age() pref.age = max(min(pref.age, max_age), min_age) @@ -796,7 +796,7 @@ var/global/list/valid_bloodtypes = list("A+", "A-", "B+", "B-", "AB+", "AB-", "O var/list/valid_facialhairstyles = pref.get_valid_facialhairstyles() var/new_f_style = tgui_input_list(user, "Choose your character's facial-hair style:", "Character Preference", valid_facialhairstyles, pref.f_style) - if(new_f_style && has_flag(mob_species, HAS_HAIR_COLOR) && CanUseTopic(user)) + if(new_f_style && CanUseTopic(user)) pref.f_style = new_f_style return TOPIC_REFRESH_UPDATE_PREVIEW diff --git a/code/modules/client/preference_setup/loadout/loadout.dm b/code/modules/client/preference_setup/loadout/loadout.dm index 299e742cfd8..61603361f59 100644 --- a/code/modules/client/preference_setup/loadout/loadout.dm +++ b/code/modules/client/preference_setup/loadout/loadout.dm @@ -65,10 +65,10 @@ var/list/gear_datums = list() for(var/gear_name in gear_datums) var/datum/gear/G = gear_datums[gear_name] - if(G.whitelisted && config.loadout_whitelist != LOADOUT_WHITELIST_OFF) + if(G.whitelisted && config.loadout_whitelist != LOADOUT_WHITELIST_OFF && pref.client) //VOREStation Edit. if(config.loadout_whitelist == LOADOUT_WHITELIST_STRICT && G.whitelisted != pref.species) continue - if(config.loadout_whitelist == LOADOUT_WHITELIST_LAX && !is_alien_whitelisted(preference_mob(), GLOB.all_species[G.whitelisted])) + if(config.loadout_whitelist == LOADOUT_WHITELIST_LAX && !is_alien_whitelisted(preference_mob(), GLOB.all_species[G.whitelisted])) continue if(max_cost && G.cost > max_cost) continue @@ -169,7 +169,7 @@ var/list/gear_datums = list() if(ticked) . += "" for(var/datum/gear_tweak/tweak in G.gear_tweaks) - . += " [tweak.get_contents(get_tweak_metadata(G, tweak))]" + . += " [tweak.get_contents(get_tweak_metadata(G, tweak))]" . += "" . += "" . = jointext(., null) @@ -205,7 +205,7 @@ var/list/gear_datums = list() pref.gear += TG.display_name return TOPIC_REFRESH_UPDATE_PREVIEW if(href_list["gear"] && href_list["tweak"]) - var/datum/gear/gear = gear_datums[href_list["gear"]] + var/datum/gear/gear = gear_datums[url_decode(href_list["gear"])] var/datum/gear_tweak/tweak = locate(href_list["tweak"]) if(!tweak || !istype(gear) || !(tweak in gear.gear_tweaks)) return TOPIC_NOACTION diff --git a/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm b/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm index 27c4732b373..649939ba8bf 100644 --- a/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_fluffitems_vr.dm @@ -296,6 +296,12 @@ ckeywhitelist = list("chaleur") character_name = list("Hisako Arato") +/datum/gear/fluff/jade_stamp + path = /obj/item/weapon/stamp/fluff/jade_horror + display_name = "Official Council of Mid Horror rubber stamp" + ckeywhitelist = list("coolcrow420") + character_name = list("Jade Davis") + // D CKEYS /datum/gear/fluff/dhaeleena_medal path = /obj/item/clothing/accessory/medal/silver/security/fluff/dhael @@ -394,6 +400,7 @@ // G CKEYS // H CKEYS + /datum/gear/fluff/lauren_medal path = /obj/item/clothing/accessory/medal/conduct display_name = "Lauren's Medal" @@ -412,6 +419,12 @@ ckeywhitelist = list("hottokeeki") character_name = list("Belle Day") +/datum/gear/fluff/amaryll_claws + path = /obj/item/weapon/surgical/scalpel/amaryll_claws + display_name = "Amaryll's Claws" + ckeywhitelist = list("hunterbirk") + character_name = list("Amaryll") + // I CKEYS /datum/gear/fluff/ruda_badge path = /obj/item/clothing/accessory/badge/holo/detective/ruda @@ -826,11 +839,17 @@ ckeywhitelist = list("pastelprincedan") character_name = list("Kiyoshi Maki", "Masumi Maki") -/datum/gear/fluff/masumi_overalls - path = /obj/item/clothing/under/fluff/masumi_overalls - display_name = "white and blue overalls" - ckeywhitelist = list("pastelprincedan") - character_name = list("Masumi Maki") +/datum/gear/fluff/mechanic_overalls + path = /obj/item/clothing/under/fluff/mechanic_overalls + display_name = "mechanic overalls" + ckeywhitelist = list("pastelprincedan", "hatterhat") + character_name = list("Masumi Maki", "Harold Robinson") + +/datum/gear/fluff/mechanic_coat + path = /obj/item/clothing/suit/storage/hooded/wintercoat/fluff/mechanic + display_name = "mechanic winter coat" + ckeywhitelist = list("pastelprincedan", "hatterhat") + character_name = list("Masumi Maki", "Harold Robinson") // Q CKEYS diff --git a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm index 0383f58f0a9..3fcc18e04a2 100644 --- a/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm +++ b/code/modules/client/preference_setup/loadout/loadout_suit_vr.dm @@ -9,6 +9,30 @@ ..() gear_tweaks += gear_tweak_free_color_choice +/datum/gear/suit/labcoat_old + display_name = "labcoat, old-school" + path = /obj/item/clothing/suit/storage/toggle/labcoat/old + +/datum/gear/suit/labcoat_cmo_old + display_name = "labcoat, CMO, oldschool" + path = /obj/item/clothing/suit/storage/toggle/labcoat/old/cmo + allowed_roles = list("Chief Medical Officer") + +/datum/gear/suit/roles/labcoat_old + display_name = "labcoat selection, department, oldschool" + path = /obj/item/clothing/suit/storage/toggle/labcoat/old/tox + cost = 2 + + +/datum/gear/suit/roles/labcoat_old/New() + ..() + var/list/labcoats = list( + "Oldschool Scientist's Labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/old/tox, + "Oldschool Virologist's Labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/old/vir, + "Oldschool Chemist's Labcoat" = /obj/item/clothing/suit/storage/toggle/labcoat/old/chem + ) + gear_tweaks += new/datum/gear_tweak/path(labcoats) + /datum/gear/suit/jacket_modular display_name = "jacket, modular" path = /obj/item/clothing/suit/storage/fluff/jacket @@ -83,4 +107,6 @@ Talon winter coat */ /datum/gear/suit/wintercoat/talon display_name = "winter coat, Talon" - path = /obj/item/clothing/suit/storage/hooded/wintercoat/talon \ No newline at end of file + path = /obj/item/clothing/suit/storage/hooded/wintercoat/talon + + diff --git a/code/modules/client/preference_setup/vore/07_traits.dm b/code/modules/client/preference_setup/vore/07_traits.dm index 0e5b6a24205..c342fb9b3ed 100644 --- a/code/modules/client/preference_setup/vore/07_traits.dm +++ b/code/modules/client/preference_setup/vore/07_traits.dm @@ -75,6 +75,13 @@ pref.starting_trait_points = STARTING_SPECIES_POINTS pref.max_traits = MAX_SPECIES_TRAITS + if(pref.organ_data[O_BRAIN]) //Checking if we have a synth on our hands, boys. + pref.dirty_synth = 1 + pref.gross_meatbag = 0 + else + pref.gross_meatbag = 1 + pref.dirty_synth = 0 + if(pref.species != SPECIES_CUSTOM) pref.pos_traits.Cut() pref.neg_traits.Cut() @@ -105,7 +112,7 @@ var/take_flags = initial(path.can_take) if((pref.dirty_synth && !(take_flags & SYNTHETICS)) || (pref.gross_meatbag && !(take_flags & ORGANICS))) pref.neg_traits -= path - + var/datum/species/selected_species = GLOB.all_species[pref.species] if(selected_species.selects_bodytype) // Allowed! diff --git a/code/modules/client/preference_setup/vore/09_misc.dm b/code/modules/client/preference_setup/vore/09_misc.dm index 60a207bcc83..fff3bb6af48 100644 --- a/code/modules/client/preference_setup/vore/09_misc.dm +++ b/code/modules/client/preference_setup/vore/09_misc.dm @@ -8,6 +8,7 @@ S["directory_erptag"] >> pref.directory_erptag S["directory_ad"] >> pref.directory_ad S["sensorpref"] >> pref.sensorpref + S["capture_crystal"] >> pref.capture_crystal /datum/category_item/player_setup_item/vore/misc/save_character(var/savefile/S) S["show_in_directory"] << pref.show_in_directory @@ -15,17 +16,21 @@ S["directory_erptag"] << pref.directory_erptag S["directory_ad"] << pref.directory_ad S["sensorpref"] << pref.sensorpref + S["capture_crystal"] << pref.capture_crystal + /datum/category_item/player_setup_item/vore/misc/copy_to_mob(var/mob/living/carbon/human/character) if(pref.sensorpref > 5 || pref.sensorpref < 1) pref.sensorpref = 5 character.sensorpref = pref.sensorpref + character.capture_crystal = pref.capture_crystal /datum/category_item/player_setup_item/vore/misc/sanitize_character() pref.show_in_directory = sanitize_integer(pref.show_in_directory, 0, 1, initial(pref.show_in_directory)) pref.directory_tag = sanitize_inlist(pref.directory_tag, GLOB.char_directory_tags, initial(pref.directory_tag)) pref.directory_erptag = sanitize_inlist(pref.directory_erptag, GLOB.char_directory_erptags, initial(pref.directory_erptag)) pref.sensorpref = sanitize_integer(pref.sensorpref, 1, sensorpreflist.len, initial(pref.sensorpref)) + pref.capture_crystal = sanitize_integer(pref.capture_crystal, 0, 1, initial(pref.capture_crystal)) /datum/category_item/player_setup_item/vore/misc/content(var/mob/user) . += "
" @@ -34,6 +39,7 @@ . += "Character Directory ERP Tag: [pref.directory_erptag]
" . += "Character Directory Advertisement: Set Directory Ad
" . += "Suit Sensors Preference: [sensorpreflist[pref.sensorpref]]
" + . += "Capture Crystal Preference [pref.capture_crystal ? "Yes" : "No"]
" /datum/category_item/player_setup_item/vore/misc/OnTopic(var/href, var/list/href_list, var/mob/user) if(href_list["toggle_show_in_directory"]) @@ -60,4 +66,8 @@ if (!isnull(new_sensorpref) && CanUseTopic(user)) pref.sensorpref = sensorpreflist.Find(new_sensorpref) return TOPIC_REFRESH + else if(href_list["toggle_capture_crystal"]) + pref.capture_crystal = pref.capture_crystal ? 0 : 1; + return TOPIC_REFRESH + return ..(); diff --git a/code/modules/client/preferences_toggle_procs.dm b/code/modules/client/preferences_toggle_procs.dm index 188ae794a1f..ddc441c38d2 100644 --- a/code/modules/client/preferences_toggle_procs.dm +++ b/code/modules/client/preferences_toggle_procs.dm @@ -1,8 +1,8 @@ //Toggles for preferences, normal clients /client/verb/toggle_ghost_ears() - set name = "Show/Hide Ghost Ears" + set name = "Toggle Ghost Ears" set category = "Preferences" - set desc = "Toggles between seeing all mob speech and nearby mob speech." + set desc = "Toggles between seeing all mob speech and only nearby mob speech as an observer." var/pref_path = /datum/client_preference/ghost_ears @@ -15,9 +15,9 @@ feedback_add_details("admin_verb","TGEars") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_ghost_vision() - set name = "Show/Hide Ghost Vision" + set name = "Toggle Ghost Vision" set category = "Preferences" - set desc = "Toggles between seeing all mob emotes and nearby mob emotes." + set desc = "Toggles between seeing all mob emotes and only nearby mob emotes as an observer." var/pref_path = /datum/client_preference/ghost_sight @@ -30,9 +30,9 @@ feedback_add_details("admin_verb","TGVision") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_ghost_radio() - set name = "Show/Hide Radio Chatter" + set name = "Toggle Ghost Radio" set category = "Preferences" - set desc = "Toggles between seeing all radio chat and nearby radio chatter." + set desc = "Toggles between seeing all radio chat and only nearby radio chatter as an observer." var/pref_path = /datum/client_preference/ghost_radio @@ -45,9 +45,9 @@ feedback_add_details("admin_verb","TGRadio") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_deadchat() - set name = "Show/Hide Deadchat" + set name = "Toggle Deadchat" set category = "Preferences" - set desc = "Toggles the dead chat channel." + set desc = "Toggles visibility of dead chat." var/pref_path = /datum/client_preference/show_dsay @@ -60,9 +60,9 @@ feedback_add_details("admin_verb","TDeadChat") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_ooc() - set name = "Show/Hide OOC" + set name = "Toggle OOC" set category = "Preferences" - set desc = "Toggles global out of character chat." + set desc = "Toggles visibility of global out of character chat." var/pref_path = /datum/client_preference/show_ooc @@ -75,9 +75,9 @@ feedback_add_details("admin_verb","TOOC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_looc() - set name = "Show/Hide LOOC" + set name = "Toggle LOOC" set category = "Preferences" - set desc = "Toggles local out of character chat." + set desc = "Toggles visibility of local out of character chat." var/pref_path = /datum/client_preference/show_looc @@ -90,9 +90,9 @@ feedback_add_details("admin_verb","TLOOC") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_precision_placement() - set name = "Enable/Disable Precision Placement" + set name = "Toggle Precision Placement" set category = "Preferences" - set desc = "Toggles precise placement of objects on tables." + set desc = "Toggles whether objects placed on table will be on cursor position or centered." var/pref_path = /datum/client_preference/precision_placement @@ -105,9 +105,9 @@ feedback_add_details("admin_verb","TPIP") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_typing() - set name = "Show/Hide Typing Indicator" + set name = "Toggle Typing Indicator" set category = "Preferences" - set desc = "Toggles the speech bubble typing indicator." + set desc = "Toggles you having the speech bubble typing indicator." var/pref_path = /datum/client_preference/show_typing_indicator @@ -137,7 +137,7 @@ /client/verb/toggle_lobby_music() set name = "Toggle Lobby Music" set category = "Preferences" - set desc = "Toggles the music in the lobby." + set desc = "Toggles the ability to hear the music in the lobby." var/pref_path = /datum/client_preference/play_lobby_music @@ -150,15 +150,15 @@ feedback_add_details("admin_verb","TLobMusic") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_admin_midis() - set name = "Toggle Admin MIDIs" + set name = "Toggle Admin Music" set category = "Preferences" - set desc = "Toggles the music in the lobby." + set desc = "Toggles the ability to hear music played by admins." var/pref_path = /datum/client_preference/play_admin_midis toggle_preference(pref_path) - to_chat(src,"You will [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] hear MIDIs from admins.") + to_chat(src,"You will [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] hear music from admins.") SScharacter_setup.queue_preferences_save(prefs) @@ -167,7 +167,7 @@ /client/verb/toggle_ambience() set name = "Toggle Ambience" set category = "Preferences" - set desc = "Toggles the playing of ambience." + set desc = "Toggles the ability to hear local ambience." var/pref_path = /datum/client_preference/play_ambiance @@ -212,7 +212,7 @@ /client/verb/toggle_jukebox() set name = "Toggle Jukebox" set category = "Preferences" - set desc = "Toggles the playing of jukebox music." + set desc = "Toggles the ability to hear jukebox music." var/pref_path = /datum/client_preference/play_jukebox @@ -225,7 +225,7 @@ feedback_add_details("admin_verb","TJukebox") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_be_special(role in be_special_flags) - set name = "Toggle SpecialRole Candidacy" + set name = "Toggle Special Role Candidacy" set category = "Preferences" set desc = "Toggles which special roles you would like to be a candidate for, during events." @@ -240,15 +240,15 @@ feedback_add_details("admin_verb","TBeSpecial") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_air_pump_hum() - set name = "Toggle Air Pump Noise" + set name = "Toggle Air Vent Noise" set category = "Preferences" - set desc = "Toggles Air Pumps humming" + set desc = "Toggles the ability to hear air vent humming." var/pref_path = /datum/client_preference/air_pump_noise toggle_preference(pref_path) - to_chat(src, "You will [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] hear air pumps hum, start, and stop.") + to_chat(src, "You will [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] hear air vents hum, start, and stop.") SScharacter_setup.queue_preferences_save(prefs) @@ -257,7 +257,7 @@ /client/verb/toggle_old_door_sounds() set name = "Toggle Old Door Sounds" set category = "Preferences" - set desc = "Toggles New/Old Door Sounds" + set desc = "Toggles door sounds between old and new." var/pref_path = /datum/client_preference/old_door_sounds @@ -272,7 +272,7 @@ /client/verb/toggle_department_door_sounds() set name = "Toggle Department Door Sounds" set category = "Preferences" - set desc = "Toggles Department-Specific Door Sounds" + set desc = "Toggles hearing of department-specific door sounds." var/pref_path = /datum/client_preference/department_door_sounds @@ -287,13 +287,13 @@ /client/verb/toggle_pickup_sounds() set name = "Toggle Picked Up Item Sounds" set category = "Preferences" - set desc = "Toggles sounds when items are picked up or thrown." + set desc = "Toggles the ability to hear sounds when items are picked up." var/pref_path = /datum/client_preference/pickup_sounds toggle_preference(pref_path) - to_chat(src, "You will [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] hear sounds when items are picked up or thrown.") + to_chat(src, "You will [ (is_preference_enabled(pref_path)) ? "now" : "no longer"] hear sounds when items are picked up.") SScharacter_setup.queue_preferences_save(prefs) @@ -302,7 +302,7 @@ /client/verb/toggle_drop_sounds() set name = "Toggle Dropped Item Sounds" set category = "Preferences" - set desc = "Toggles sounds when items are dropped or thrown." + set desc = "Toggles the ability to hear sounds when items are dropped or thrown." var/pref_path = /datum/client_preference/drop_sounds @@ -330,7 +330,7 @@ /client/verb/toggle_mob_tooltips() set name = "Toggle Mob Tooltips" set category = "Preferences" - set desc = "Toggles displaying name/species over mobs when moused over." + set desc = "Toggles displaying name/species over mobs when they are moused over." var/pref_path = /datum/client_preference/mob_tooltips toggle_preference(pref_path) @@ -343,7 +343,7 @@ /client/verb/toggle_inv_tooltips() set name = "Toggle Item Tooltips" set category = "Preferences" - set desc = "Toggles displaying name/desc over items when moused over (only applies in inventory)." + set desc = "Toggles displaying name/desc over items when they are moused over (only applies in inventory)." var/pref_path = /datum/client_preference/inv_tooltips toggle_preference(pref_path) @@ -356,7 +356,7 @@ /client/verb/toggle_hear_instruments() set name = "Toggle Hear/Ignore Instruments" set category = "Preferences" - set desc = "Hear In-game Instruments" + set desc = "Toggles the ability to hear instruments playing." var/pref_path = /datum/client_preference/instrument_toggle toggle_preference(pref_path) @@ -369,7 +369,7 @@ /client/verb/toggle_vchat() set name = "Toggle VChat" set category = "Preferences" - set desc = "Enable/Disable VChat. Reloading VChat and/or reconnecting required to affect changes." + set desc = "Toggles VChat. Reloading VChat and/or reconnecting required to affect changes." var/pref_path = /datum/client_preference/vchat_enable toggle_preference(pref_path) @@ -382,7 +382,7 @@ /client/verb/toggle_status_indicators() set name = "Toggle Status Indicators" set category = "Preferences" - set desc = "Enable/Disable seeing status indicators over peoples' heads." + set desc = "Toggles seeing status indicators over peoples' heads." var/pref_path = /datum/client_preference/status_indicators toggle_preference(pref_path) @@ -396,7 +396,7 @@ /client/verb/toggle_radio_sounds() set name = "Toggle Radio Sounds" set category = "Preferences" - set desc = "Enable/Disable hearing a sound when somebody speaks over your headset." + set desc = "Toggle hearing a sound when somebody speaks over your headset." var/pref_path = /datum/client_preference/radio_sounds toggle_preference(pref_path) @@ -410,7 +410,7 @@ /client/verb/toggle_examine_mode() set name = "Toggle Examine Mode" set category = "Preferences" - set desc = "Control the additional behaviour of examining things" + set desc = "Toggle the additional behaviour of examining things." prefs.examine_text_mode++ prefs.examine_text_mode %= EXAMINE_MODE_MAX // This cycles through them because if you're already specifically being routed to the examine panel, you probably don't need to have the extra text printed to chat @@ -427,7 +427,7 @@ /client/verb/toggle_multilingual_mode() set name = "Toggle Multilingual Mode" set category = "Preferences" - set desc = "Control the behaviour of multilingual speech parsing" + set desc = "Toggle the behaviour of multilingual speech parsing." prefs.multilingual_mode++ prefs.multilingual_mode %= MULTILINGUAL_MODE_MAX // Cycles through the various options @@ -448,7 +448,7 @@ /client/proc/toggle_debug_logs() set name = "Toggle Debug Logs" set category = "Preferences" - set desc = "Toggles debug logs." + set desc = "Toggles seeing debug logs." var/pref_path = /datum/client_preference/debug/show_debug_logs @@ -463,7 +463,7 @@ /client/proc/toggle_attack_logs() set name = "Toggle Attack Logs" set category = "Preferences" - set desc = "Toggles attack logs." + set desc = "Toggles seeing attack logs." var/pref_path = /datum/client_preference/mod/show_attack_logs diff --git a/code/modules/client/preferences_vr.dm b/code/modules/client/preferences_vr.dm index 6bba9fe31e8..db77b0ba6ee 100644 --- a/code/modules/client/preferences_vr.dm +++ b/code/modules/client/preferences_vr.dm @@ -4,6 +4,7 @@ var/directory_erptag = "Unset" //ditto, but for non-vore scenes var/directory_ad = "" //Advertisement stuff to show in character directory. var/sensorpref = 5 //Set character's suit sensor level + var/capture_crystal = 1 //Whether or not someone is able to be caught with capture crystals var/job_talon_high = 0 var/job_talon_med = 0 @@ -11,9 +12,9 @@ //Why weren't these in game toggles already? /client/verb/toggle_eating_noises() - set name = "Eating Noises" + set name = "Toggle Eating Noises" set category = "Preferences" - set desc = "Toggles Vore Eating noises." + set desc = "Toggles hearing Vore Eating noises." var/pref_path = /datum/client_preference/eating_noises @@ -27,9 +28,9 @@ /client/verb/toggle_digestion_noises() - set name = "Digestion Noises" + set name = "Toggle Digestion Noises" set category = "Preferences" - set desc = "Toggles Vore Digestion noises." + set desc = "Toggles hearing Vore Digestion noises." var/pref_path = /datum/client_preference/digestion_noises @@ -40,11 +41,11 @@ SScharacter_setup.queue_preferences_save(prefs) feedback_add_details("admin_verb","TDigestNoise") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! - + /client/verb/toggle_belch_noises() - set name = "Audible belching" + set name = "Toggle Audible Belching" set category = "Preferences" - set desc = "Toggles audible belches." + set desc = "Toggles hearing audible belches." var/pref_path = /datum/client_preference/belch_noises @@ -57,9 +58,9 @@ feedback_add_details("admin_verb","TBelchNoise") /client/verb/toggle_emote_noises() - set name = "Emote Noises" + set name = "Toggle Emote Noises" set category = "Preferences" - set desc = "Toggles emote noises." + set desc = "Toggles hearing emote noises." var/pref_path = /datum/client_preference/emote_noises @@ -72,9 +73,9 @@ feedback_add_details("admin_verb","TEmoteNoise") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! /client/verb/toggle_ghost_quiets() - set name = "Toggle Whisper/Subtle Vis" + set name = "Toggle Ghost Privacy" set category = "Preferences" - set desc = "Toggle ghosts viewing your subtles/whispers." + set desc = "Toggles ghosts being able to see your subtles/whispers." var/pref_path = /datum/client_preference/whisubtle_vis @@ -85,3 +86,22 @@ SScharacter_setup.queue_preferences_save(prefs) feedback_add_details("admin_verb","TWhisubtleVis") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + +/client/verb/toggle_capture_crystal() + set name = "Toggle Catchable" + set category = "Preferences" + set desc = "Toggles being catchable with capture crystals." + + var/mob/living/L = mob + + if(prefs.capture_crystal) + to_chat(src, "You are no longer catchable.") + prefs.capture_crystal = 0 + else + to_chat(src, "You are now catchable.") + prefs.capture_crystal = 1 + if(L) + L.capture_crystal = prefs.capture_crystal + SScharacter_setup.queue_preferences_save(prefs) + + feedback_add_details("admin_verb","TCaptureCrystal") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! \ No newline at end of file diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index dd88a75a766..cb595bd9489 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -818,7 +818,9 @@ */ var/displays_id = 1 var/rolled_down = -1 //0 = unrolled, 1 = rolled, -1 = cannot be toggled + var/rolled_down_icon_override = TRUE var/rolled_sleeves = -1 //0 = unrolled, 1 = rolled, -1 = cannot be toggled + var/rolled_sleeves_icon_override = TRUE sprite_sheets = list( SPECIES_TESHARI = 'icons/inventory/uniform/mob_teshari.dmi', SPECIES_VOX = 'icons/inventory/uniform/mob_vox.dmi' @@ -880,7 +882,7 @@ H = src.loc var/icon/under_icon - if(icon_override) + if(icon_override && rolled_down_icon_override) under_icon = icon_override else if(H && LAZYACCESS(sprite_sheets, H.species.get_bodytype(H))) under_icon = sprite_sheets[H.species.get_bodytype(H)] @@ -903,7 +905,7 @@ H = src.loc var/icon/under_icon - if(icon_override) + if(icon_override && rolled_sleeves_icon_override) under_icon = icon_override else if(H && LAZYACCESS(sprite_sheets, H.species.get_bodytype(H))) under_icon = sprite_sheets[H.species.get_bodytype(H)] diff --git a/code/modules/clothing/head/hardhat.dm b/code/modules/clothing/head/hardhat.dm index 86ce792d4c3..d8bfea2b1de 100644 --- a/code/modules/clothing/head/hardhat.dm +++ b/code/modules/clothing/head/hardhat.dm @@ -84,6 +84,9 @@ * Ranger Hats */ + //Missing onmob sprites. + +/* /obj/item/clothing/head/hardhat/ranger var/hatcolor = "white" name = "ranger helmet" @@ -116,4 +119,5 @@ hatcolor = "orange" /obj/item/clothing/head/hardhat/ranger/yellow - hatcolor = "yellow" \ No newline at end of file + hatcolor = "yellow" +*/ \ No newline at end of file diff --git a/code/modules/clothing/masks/miscellaneous.dm b/code/modules/clothing/masks/miscellaneous.dm index 7f15afe180c..5971e072e84 100644 --- a/code/modules/clothing/masks/miscellaneous.dm +++ b/code/modules/clothing/masks/miscellaneous.dm @@ -302,43 +302,49 @@ w_class = ITEMSIZE_SMALL body_parts_covered = FACE icon_state = "papermask" + action_button_name = "Redraw Design" + action_button_is_hands_free = TRUE + var/list/papermask_designs = list() -/obj/item/clothing/mask/paper/attackby(obj/item/I as obj, mob/living/user as mob, proximity) - if(!proximity) return - if(istype(I, /obj/item/weapon/pen)) - var/drawtype = tgui_alert(user, "Choose what you'd like to draw.", "Faces", list("blank","neutral","eyes","sleeping", "heart", "core", "plus", "square", "bullseye", "vertical", "horizontal", "X", "bug eyes", "double", "mark" )) - switch(drawtype) - if("blank") - src.icon_state = "papermask" - if("neutral") - src.icon_state = "neutralmask" - if("eyes") - src.icon_state = "eyemask" - if("sleeping") - src.icon_state = "sleepingmask" - if("heart") - src.icon_state = "heartmask" - if("core") - src.icon_state = "coremask" - if("plus") - src.icon_state = "plusmask" - if("square") - src.icon_state = "squaremask" - if("bullseye") - src.icon_state = "bullseyemask" - if("vertical") - src.icon_state = "verticalmask" - if("horizontal") - src.icon_state = "horizontalmask" - if("X") - src.icon_state = "xmask" - if("bug eyes") - src.icon_state = "bugmask" - if("double") - src.icon_state = "doublemask" - if("mark") - src.icon_state = "markmask" - return +/obj/item/clothing/mask/paper/Initialize(mapload) + . = ..() + papermask_designs = list( + "Blank" = image(icon = src.icon, icon_state = "papermask"), + "Neutral" = image(icon = src.icon, icon_state = "neutralmask"), + "Eyes" = image(icon = src.icon, icon_state = "eyemask"), + "Sleeping" = image(icon = src.icon, icon_state = "sleepingmask"), + "Heart" = image(icon = src.icon, icon_state = "heartmask"), + "Core" = image(icon = src.icon, icon_state = "coremask"), + "Plus" = image(icon = src.icon, icon_state = "plusmask"), + "Square" = image(icon = src.icon, icon_state = "squaremask"), + "Bullseye" = image(icon = src.icon, icon_state = "bullseyemask"), + "Vertical" = image(icon = src.icon, icon_state = "verticalmask"), + "Horizontal" = image(icon = src.icon, icon_state = "horizontalmask"), + "X" = image(icon = src.icon, icon_state = "xmask"), + "Bugeyes" = image(icon = src.icon, icon_state = "bugmask"), + "Double" = image(icon = src.icon, icon_state = "doublemask"), + "Mark" = image(icon = src.icon, icon_state = "markmask") + ) + +/obj/item/clothing/mask/paper/attack_self(mob/user) + . = ..() + if(!istype(user) || user.incapacitated()) + return + + var/static/list/options = list("Blank" = "papermask", "Neutral" = "neutralmask", "Eyes" = "eyemask", + "Sleeping" ="sleepingmask", "Heart" = "heartmask", "Core" = "coremask", + "Plus" = "plusmask", "Square" ="squaremask", "Bullseye" = "bullseyemask", + "Vertical" = "verticalmask", "Horizontal" = "horizontalmask", "X" ="xmask", + "Bugeyes" = "bugmask", "Double" = "doublemask", "Mark" = "markmask") + + var/choice = show_radial_menu(user, src, papermask_designs, custom_check = FALSE, radius = 36, require_near = TRUE) + + if(src && choice && !user.incapacitated() && in_range(user,src)) + icon_state = options[choice] + user.update_inv_wear_mask() + user.update_action_buttons() + to_chat(user, "Your paper mask now is now [choice].") + return 1 /obj/item/clothing/mask/emotions name = "emotional mask" @@ -346,21 +352,35 @@ w_class = ITEMSIZE_SMALL body_parts_covered = FACE icon_state = "joy" + action_button_name = "Redraw Design" + action_button_is_hands_free = TRUE + var/static/list/joymask_designs = list() -/obj/item/clothing/mask/emotions/attackby(obj/item/I as obj, mob/living/user as mob, proximity) - if(!proximity) return - if(istype(I, /obj/item/weapon/pen)) - var/drawtype = tgui_alert(user, "Choose what emotions you'd like to display.", "Emotions", list("joy","pensive","angry","flushed" )) - switch(drawtype) - if("joy") - src.icon_state = "joy" - if("pensive") - src.icon_state = "pensive" - if("angry") - src.icon_state = "angry" - if("flushed") - src.icon_state = "flushed" - return + +/obj/item/clothing/mask/emotions/Initialize(mapload) + . = ..() + joymask_designs = list( + "Joy" = image(icon = src.icon, icon_state = "joy"), + "Flushed" = image(icon = src.icon, icon_state = "flushed"), + "Pensive" = image(icon = src.icon, icon_state = "pensive"), + "Angry" = image(icon = src.icon, icon_state = "angry"), + ) + +/obj/item/clothing/mask/emotions/attack_self(mob/user) + . = ..() + if(!istype(user) || user.incapacitated()) + return + + var/static/list/options = list("Joy" = "joy", "Flushed" = "flushed", "Pensive" = "pensive","Angry" ="angry") + + var/choice = show_radial_menu(user, src, joymask_designs, custom_check = FALSE, radius = 36, require_near = TRUE) + + if(src && choice && !user.incapacitated() && in_range(user,src)) + icon_state = options[choice] + user.update_inv_wear_mask() + user.update_action_buttons() + to_chat(user, "Your [src] now displays a [choice] emotion.") + return 1 /obj/item/clothing/mask/mouthwheat name = "mouth wheat" diff --git a/code/modules/clothing/rings/rings.dm b/code/modules/clothing/rings/rings.dm index b8313c5f979..f07d0ae6747 100644 --- a/code/modules/clothing/rings/rings.dm +++ b/code/modules/clothing/rings/rings.dm @@ -63,6 +63,9 @@ ///////////////////////////////////////// //Seals and Signet Rings + +/obj/item/clothing/gloves/ring/seal + var/stamptext = null /obj/item/clothing/gloves/ring/seal/secgen name = "Secretary-General's official seal" desc = "The official seal of the Secretary-General of the Sol Central Government, featured prominently on a silver ring." diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/crusher_gauntlets.dm b/code/modules/clothing/spacesuits/rig/modules/specific/crusher_gauntlets.dm index 3dff20284f7..9d156a13613 100644 --- a/code/modules/clothing/spacesuits/rig/modules/specific/crusher_gauntlets.dm +++ b/code/modules/clothing/spacesuits/rig/modules/specific/crusher_gauntlets.dm @@ -13,7 +13,7 @@ usable = 0 toggleable = 1 use_power_cost = 0 - active_power_cost = 2.5 + active_power_cost = 0 passive_power_cost = 0 var/obj/item/weapon/kinetic_crusher/machete/gauntlets/rig/stored_gauntlets diff --git a/code/modules/clothing/spacesuits/rig/modules/specific/passive_protection.dm b/code/modules/clothing/spacesuits/rig/modules/specific/passive_protection.dm new file mode 100644 index 00000000000..92dcd87dd39 --- /dev/null +++ b/code/modules/clothing/spacesuits/rig/modules/specific/passive_protection.dm @@ -0,0 +1,166 @@ +// contains the Radiation Absorption Device (RAD) and Atmospheric Protective Equipment (APE) modules +// you shits ready for some COPY AND PASTE? +/obj/item/rig_module/rad_shield + name = "radiation absorption device" + desc = "The acronym of this device - R.A.D. - and its full name both convey the application of the module." + description_info = "Through the usage of powered radiation collectors optimized for absorption rather than power generation, it protects the suit's wearer \ + from incoming ionizing radiation and converts it into a significantly less harmful form. This comes at the cost of concerningly high power consumption, \ + and thus should only be used in short bursts." + icon_state = "radsoak" + toggleable = 1 + disruptable = 1 + disruptive = 0 + + use_power_cost = 25 + active_power_cost = 25 + passive_power_cost = 0 + module_cooldown = 30 + + activate_string = "Enable Supplemental Radiation Shielding" + deactivate_string = "Disable Supplemental Radiation Shielding" + + interface_name = "radiation absorption system" + interface_desc = "Provides passive protection against radiation, at the cost of power." + var/stored_rad_armor = 0 + +/obj/item/rig_module/rad_shield/activate() + + if(!..()) + return 0 + + var/mob/living/carbon/human/H = holder.wearer + var/obj/item/clothing/shoes/boots = holder.boots + var/obj/item/clothing/suit/space/rig/chest = holder.chest + var/obj/item/clothing/head/helmet/space/rig/helmet = holder.helmet + var/obj/item/clothing/gloves/gauntlets/rig/gloves = holder.gloves + + to_chat(H, "You activate your suit's powered radiation shielding.") + stored_rad_armor = holder.armor["rad"] + if(boots) + boots.armor["rad"] = 100 + if(chest) + chest.armor["rad"] = 100 + if(helmet) + helmet.armor["rad"] = 100 + if(gloves) + gloves.armor["rad"] = 100 + holder.armor["rad"] = 100 + +/obj/item/rig_module/rad_shield/deactivate() + + if(!..()) + return 0 + + var/mob/living/carbon/human/H = holder.wearer + var/obj/item/clothing/shoes/boots = holder.boots + var/obj/item/clothing/suit/space/rig/chest = holder.chest + var/obj/item/clothing/head/helmet/space/rig/helmet = holder.helmet + var/obj/item/clothing/gloves/gauntlets/rig/gloves = holder.gloves + + to_chat(H, "You deactivate your suit's powered radiation shielding.") + + if(boots) + boots.armor["rad"] = stored_rad_armor + if(chest) + chest.armor["rad"] = stored_rad_armor + if(helmet) + helmet.armor["rad"] = stored_rad_armor + if(gloves) + gloves.armor["rad"] = stored_rad_armor + holder.armor["rad"] = stored_rad_armor + + stored_rad_armor = 0 + +/obj/item/rig_module/rad_shield/advanced + name = "advanced radiation absorption device" + desc = "The acronym of this device - R.A.D. - and its full name both convey the application of the module. It has additional quality notices \ + on the underside of the casing." + use_power_cost = 5 + active_power_cost = 5 + +/obj/item/rig_module/atmos_shield + name = "atmospheric protection enhancement suite" + desc = "The acronym of this suite - A.P.E. - unlike its loosely related cousin, the R.A.D., is remarkably unintuitive." + description_info = "Through the usage of powered shielding optimized for protection against the elements rather than from external physical issues, \ + it protects the suit's wearer from atmospheric pressure and temperatures. This comes at the cost of concerningly high power consumption, \ + and thus should only be used in short bursts." + icon_state = "atmosoak" + + toggleable = 1 + disruptable = 1 + disruptive = 0 + + use_power_cost = 25 + active_power_cost = 25 + passive_power_cost = 0 + module_cooldown = 30 + + activate_string = "Enable Powered Atmospheric Shielding" + deactivate_string = "Disable Powered Atmospheric Shielding" + + interface_name = "atmospheric protection enhancements" + interface_desc = "Provides passive protection against the atmosphere, at the cost of power." + var/stored_max_pressure = 0 + var/stored_max_temp = 0 + +/obj/item/rig_module/atmos_shield/activate() + + if(!..()) + return 0 + + var/mob/living/carbon/human/H = holder.wearer + var/obj/item/clothing/shoes/boots = holder.boots + var/obj/item/clothing/suit/space/rig/chest = holder.chest + var/obj/item/clothing/head/helmet/space/rig/helmet = holder.helmet + var/obj/item/clothing/gloves/gauntlets/rig/gloves = holder.gloves + + stored_max_pressure = holder.max_pressure_protection + stored_max_temp = holder.max_heat_protection_temperature + + to_chat(H, "You activate your suit's powered atmospheric shielding.") + + if(boots) + boots.max_pressure_protection = INFINITY + boots.max_heat_protection_temperature = INFINITY + if(chest) + chest.max_pressure_protection = INFINITY + chest.max_heat_protection_temperature = INFINITY + if(helmet) + helmet.max_pressure_protection = INFINITY + helmet.max_heat_protection_temperature = INFINITY + if(gloves) + gloves.max_pressure_protection = INFINITY + gloves.max_heat_protection_temperature = INFINITY + holder.max_pressure_protection = INFINITY + holder.max_heat_protection_temperature = INFINITY + +/obj/item/rig_module/atmos_shield/deactivate() + + if(!..()) + return 0 + + var/mob/living/carbon/human/H = holder.wearer + var/obj/item/clothing/shoes/boots = holder.boots + var/obj/item/clothing/suit/space/rig/chest = holder.chest + var/obj/item/clothing/head/helmet/space/rig/helmet = holder.helmet + var/obj/item/clothing/gloves/gauntlets/rig/gloves = holder.gloves + + to_chat(H, "You deactivate your suit's powered atmospheric shielding.") + + if(boots) + boots.max_pressure_protection = stored_max_pressure + boots.max_heat_protection_temperature = stored_max_temp + if(chest) + chest.max_pressure_protection = stored_max_pressure + chest.max_heat_protection_temperature = stored_max_temp + if(helmet) + helmet.max_pressure_protection = stored_max_pressure + helmet.max_heat_protection_temperature = stored_max_temp + if(gloves) + gloves.max_pressure_protection = stored_max_pressure + gloves.max_heat_protection_temperature = stored_max_temp + holder.max_pressure_protection = stored_max_pressure + holder.max_heat_protection_temperature = stored_max_temp + + stored_max_pressure = 0 + stored_max_temp = 0 \ No newline at end of file diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index a749d6824d8..52922098076 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -183,7 +183,7 @@ . += "The access panel is [locked? "locked" : "unlocked"]." . += "The maintenance panel is [open ? "open" : "closed"]." . += "Hardsuit systems are [offline ? "offline" : "online"]." - . += "The cooling stystem is [cooling_on ? "active" : "inactive"]." + . += "The cooling system is [cooling_on ? "active" : "inactive"]." if(open) . += "It's equipped with [english_list(installed_modules)]." @@ -414,10 +414,10 @@ if(!cell) return if(cell.charge <= 0) - to_chat(user, "\The [src] has no power!.") + to_chat(user, "\The [src] has no power!") return if(!suit_is_deployed()) - to_chat(user, "The hardsuit needs to be deployed first!.") + to_chat(user, "The hardsuit needs to be deployed first!") return cooling_on = 1 diff --git a/code/modules/clothing/spacesuits/rig/rig_tgui.dm b/code/modules/clothing/spacesuits/rig/rig_tgui.dm index 0a493264e59..66c7266d3dd 100644 --- a/code/modules/clothing/spacesuits/rig/rig_tgui.dm +++ b/code/modules/clothing/spacesuits/rig/rig_tgui.dm @@ -51,6 +51,7 @@ else data["ai"] = FALSE + data["cooling"] = cooling_on data["sealed"] = !canremove data["sealing"] = sealing data["helmet"] = (helmet ? "[helmet.name]" : "None.") @@ -130,6 +131,9 @@ if("toggle_seals") toggle_seals(usr) . = TRUE + if("toggle_cooling") + toggle_cooling(usr) // cooling toggles have its own to_chats, tbf + . = TRUE if("toggle_ai_control") ai_override_enabled = !ai_override_enabled notify_ai("Synthetic suit control has been [ai_override_enabled ? "enabled" : "disabled"].") diff --git a/code/modules/clothing/suits/labcoat_vr.dm b/code/modules/clothing/suits/labcoat_vr.dm index 4f82afd2e32..1e3f13a411b 100644 --- a/code/modules/clothing/suits/labcoat_vr.dm +++ b/code/modules/clothing/suits/labcoat_vr.dm @@ -1,7 +1,7 @@ // 'Modern' labcoats /obj/item/clothing/suit/storage/toggle/labcoat/modern name = "modern labcoat" - + icon = 'icons/inventory/suit/item_vr.dmi' default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' icon_state = "labcoat_mod" @@ -25,3 +25,41 @@ icon = 'icons/inventory/head/item_vr.dmi' default_worn_icon = 'icons/inventory/head/mob_vr.dmi' icon_state = "bio_mod" + +// Labcoat icons from before the fulpstation labcoats became default +// denoted "old" to avoid conflict + +/obj/item/clothing/suit/storage/toggle/labcoat/old + name = "old-school labcoat" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "labcoat_old" + +/obj/item/clothing/suit/storage/toggle/labcoat/old/tox + name = "old-school scientist's labcoat" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "labcoat_old_tox" + +/obj/item/clothing/suit/storage/toggle/labcoat/old/chem + name = "old-school chemist's labcoat" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "labcoat_old_chem" + +/obj/item/clothing/suit/storage/toggle/labcoat/old/vir + name = "old-school virologist's labcoat" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "labcoat_old_vir" + +/obj/item/clothing/suit/storage/toggle/labcoat/old/cmo + name = "old-school CMO's labcoat" + + icon = 'icons/inventory/suit/item_vr.dmi' + default_worn_icon = 'icons/inventory/suit/mob_vr.dmi' + icon_state = "labcoat_old_cmo" \ No newline at end of file diff --git a/code/modules/clothing/under/miscellaneous_vr.dm b/code/modules/clothing/under/miscellaneous_vr.dm index b0879f0222f..9816a8ccab0 100644 --- a/code/modules/clothing/under/miscellaneous_vr.dm +++ b/code/modules/clothing/under/miscellaneous_vr.dm @@ -102,7 +102,7 @@ if(new_size != H.size_multiplier) if(!original_size) original_size = H.size_multiplier - H.resize(new_size/100, ignore_prefs = TRUE) // Ignores prefs because you can only resize yourself + H.resize(new_size/100, uncapped = H.has_large_resize_bounds(), ignore_prefs = TRUE) // Ignores prefs because you can only resize yourself H.visible_message("The space around [H] distorts as they change size!","The space around you distorts as you change size!") else //They chose their current size. return @@ -142,7 +142,9 @@ name = "pizza delivery uniform" desc = "A dedicated outfit for pizza delivery people, one of most dangerous occupations around these parts. Can be rolled up for extra show of skin." icon = 'icons/inventory/uniform/item_vr.dmi' + icon_override = 'icons/inventory/uniform/mob_vr.dmi' rolled_down_icon = 'icons/inventory/uniform/mob_vr_rolled_down.dmi' + rolled_down_icon_override = FALSE icon_state = "pizzadelivery" item_state = "pizzadelivery" rolled_down = 0 @@ -158,6 +160,8 @@ icon_state = "talon_basic" item_state = "talon_basic" rolled_sleeves = 0 + rolled_down_icon_override = FALSE + rolled_sleeves_icon_override = FALSE /obj/item/clothing/under/rank/talon/proper name = "Talon proper jumpsuit" @@ -168,6 +172,8 @@ icon_state = "talon_jumpsuit" item_state = "talon_jumpsuit" rolled_sleeves = 0 + rolled_down_icon_override = FALSE + rolled_sleeves_icon_override = FALSE /obj/item/clothing/under/rank/talon/security name = "Talon security jumpsuit" @@ -178,6 +184,8 @@ icon_state = "talon_security" item_state = "talon_security" rolled_sleeves = 0 + rolled_down_icon_override = FALSE + rolled_sleeves_icon_override = FALSE /obj/item/clothing/under/rank/talon/pilot name = "Talon pilot jumpsuit" @@ -188,6 +196,8 @@ icon_state = "talon_pilot" item_state = "talon_pilot" rolled_sleeves = 0 + rolled_down_icon_override = FALSE + rolled_sleeves_icon_override = FALSE /obj/item/clothing/under/rank/talon/command name = "Talon command jumpsuit" @@ -198,6 +208,8 @@ icon_state = "talon_captain" item_state = "talon_captain" rolled_sleeves = 0 + rolled_down_icon_override = FALSE + rolled_sleeves_icon_override = FALSE // Excelsior uniforms /obj/item/clothing/under/excelsior diff --git a/code/modules/economy/vending_machines.dm b/code/modules/economy/vending_machines.dm index 817f9398ba2..5027691a9a5 100644 --- a/code/modules/economy/vending_machines.dm +++ b/code/modules/economy/vending_machines.dm @@ -57,7 +57,7 @@ /obj/item/weapon/reagent_containers/food/drinks/bottle/bluecuracao = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/cognac = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/grenadine = 5, - /obj/item/weapon/reagent_containers/food/condiment/cornoil = 5, + /obj/item/weapon/reagent_containers/food/condiment/cookingoil = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/kahlua = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/melonliquor = 5, /obj/item/weapon/reagent_containers/food/drinks/bottle/peppermintschnapps = 5, @@ -587,7 +587,7 @@ icon_state = "dinnerware" products = list( /obj/item/weapon/reagent_containers/food/condiment/yeast = 5, - /obj/item/weapon/reagent_containers/food/condiment/cornoil = 5, + /obj/item/weapon/reagent_containers/food/condiment/cookingoil = 5, /obj/item/weapon/tray = 8, /obj/item/weapon/material/kitchen/utensil/fork = 6, /obj/item/weapon/material/knife/plastic = 6, @@ -1224,6 +1224,7 @@ /obj/item/clothing/shoes/white = 5, /obj/item/clothing/suit/storage/toggle/labcoat = 5, /obj/item/clothing/suit/storage/toggle/labcoat/modern = 5, + /obj/item/clothing/suit/storage/toggle/labcoat/old = 5, //VoreStation edit, pre-fulp labcoat. /obj/item/clothing/mask/surgical = 5, /obj/item/clothing/suit/storage/hooded/wintercoat/medical = 5, /obj/item/clothing/suit/storage/hooded/wintercoat/medical/alt = 5, @@ -1244,6 +1245,7 @@ /obj/item/clothing/under/rank/chemist/skirt = 5, /obj/item/clothing/shoes/white = 5, /obj/item/clothing/suit/storage/toggle/labcoat/chemist = 5, + /obj/item/clothing/suit/storage/toggle/labcoat/old/chem = 5, //VoreStation edit, pre-fulp labcoat. /obj/item/clothing/suit/storage/hooded/wintercoat/medical/chemist = 5, /obj/item/clothing/head/beret/medical/chem = 5, /obj/item/weapon/storage/backpack/chemistry = 5, @@ -1281,7 +1283,8 @@ /obj/item/clothing/under/rank/virologist/skirt = 5, /obj/item/clothing/shoes/white = 5, /obj/item/clothing/suit/storage/toggle/labcoat/virologist = 5, - /obj/item/clothing/suit/storage/hooded/wintercoat/medical/viro = 5, + /obj/item/clothing/suit/storage/toggle/labcoat/old/vir = 5, + /obj/item/clothing/suit/storage/hooded/wintercoat/medical/viro = 5, //VoreStation edit, pre-fulp labcoat. /obj/item/clothing/head/beret/medical/viro = 5, /obj/item/clothing/mask/surgical = 5, /obj/item/weapon/storage/backpack/virology = 5, @@ -1301,6 +1304,7 @@ /obj/item/clothing/under/rank/scientist/skirt = 5, /obj/item/clothing/under/rank/scientist/turtleneck = 5, /obj/item/clothing/suit/storage/toggle/labcoat = 5, + /obj/item/clothing/suit/storage/toggle/labcoat/old = 5, //VoreStation edit, pre-fulp labcoat. /obj/item/clothing/suit/storage/toggle/labcoat/modern = 5, /obj/item/clothing/shoes/white = 5, /obj/item/clothing/shoes/slippers = 5, diff --git a/code/modules/economy/vending_machines_vr.dm b/code/modules/economy/vending_machines_vr.dm index 774b2bc99ec..d0874234970 100644 --- a/code/modules/economy/vending_machines_vr.dm +++ b/code/modules/economy/vending_machines_vr.dm @@ -1139,7 +1139,8 @@ product_ads = "Dress your best! It's what big D would want.;Overwear for all occasions!;Big D has what you need if what you need is some form of jacket!;Need a new hoodie? Bid D has you covered.;Big D says you need a new suit!;Big D smiles when he sees you in one of his coats!" icon_state = "suit" vend_delay = 16 - products = list(/obj/item/clothing/suit/storage/apron = 5, + products = list(/obj/item/clothing/suit/storage/toggle/labcoat/old = 100, + /obj/item/clothing/suit/storage/apron = 5, /obj/item/clothing/suit/storage/flannel/aqua = 5, /obj/item/clothing/suit/storage/toggle/bomber = 5, /obj/item/clothing/suit/storage/bomber/alt = 5, @@ -3938,7 +3939,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/chicken = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/corgi = 10, - /obj/item/weapon/reagent_containers/food/snacks/meat/crab = 10, + /obj/item/weapon/reagent_containers/food/snacks/crabmeat = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/fox = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/human = 10, @@ -4394,7 +4395,7 @@ /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/chicken = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/corgi = 10, - /obj/item/weapon/reagent_containers/food/snacks/meat/crab = 10, + /obj/item/weapon/reagent_containers/food/snacks/crabmeat = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/fox = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat = 10, /obj/item/weapon/reagent_containers/food/snacks/meat/human = 10, diff --git a/code/modules/events/aurora_caelus.dm b/code/modules/events/aurora_caelus.dm index 2e4d9d84cf9..0af166fe230 100644 --- a/code/modules/events/aurora_caelus.dm +++ b/code/modules/events/aurora_caelus.dm @@ -5,13 +5,13 @@ endWhen = 126 /datum/event/aurora_caelus/announce() - command_announcement.Announce("[station_name()]: A harmless cloud of ions is approaching your station, and will exhaust their energy battering the hull. \ + command_announcement.Announce("[station_name()]: A harmless cloud of ions is approaching your [using_map.facility_type], and will exhaust their energy battering the hull. \ Nanotrasen has approved a short break for all employees to relax and observe this very rare event. \ During this time, starlight will be bright but gentle, shifting between quiet green and blue colors. \ Any staff who would like to view these lights for themselves may proceed to the area nearest to them with viewing ports to open space. \ You will have approximately two minutes before the ions begin to reach the hull. \ We hope you enjoy the lights.", "Nanotrasen Meteorology Division", new_sound = 'sound/AI/aurora.ogg') //VOREStation Edit - + /datum/event/aurora_caelus/start() affecting_z -= global.using_map.sealed_levels // Space levels only please! for(var/mob/M in player_list) @@ -31,6 +31,6 @@ Please return to your workplace and continue work as normal. \ Have a pleasant shift, [station_name()], and thank you for watching with us.", "Nanotrasen Meteorology Division", new_sound = 'sound/AI/aurora_end.ogg') //VOREStation Edit ..() - + /datum/event/aurora_caelus/overmap/announce() return diff --git a/code/modules/events/carp_migration.dm b/code/modules/events/carp_migration.dm index d4fb6faa973..7f991b44fc2 100644 --- a/code/modules/events/carp_migration.dm +++ b/code/modules/events/carp_migration.dm @@ -26,7 +26,7 @@ if(activeFor % 5 != 0) return // Only process every 10 seconds. if(count_spawned_carps() < carp_cap) - spawn_fish(rand(1, severity * 2) - 1, severity, severity * 2) + spawn_fish(rand(3, 3 + severity * 2) - 1, 1, severity + 2) /datum/event/carp_migration/proc/spawn_fish(var/num_groups, var/group_size_min, var/group_size_max, var/dir) if(isnull(dir)) diff --git a/code/modules/events/drone_pod_vr.dm b/code/modules/events/drone_pod_vr.dm index 54ddd7bdba9..c93911e7779 100644 --- a/code/modules/events/drone_pod_vr.dm +++ b/code/modules/events/drone_pod_vr.dm @@ -22,7 +22,7 @@ qdel(target_spot) /datum/event/drone_pod_drop/announce() - command_announcement.Announce("An unidentified drone pod has been detected landing near the surface facilty. Open and examine at your own risk.", "NanoTrasen Orbital Monitoring") + command_announcement.Announce("An unidentified drone pod has been detected on a collision course towards the [location_name()]. Open and examine at your own risk.", "[location_name()] Sensor Network") /datum/event/drone_pod_drop/start() if(!land_target) diff --git a/code/modules/events/event_container_vr.dm b/code/modules/events/event_container_vr.dm index e82fa420d4f..7b429f94477 100644 --- a/code/modules/events/event_container_vr.dm +++ b/code/modules/events/event_container_vr.dm @@ -84,7 +84,8 @@ new /datum/event_meta(EVENT_LEVEL_MODERATE, "Grub Infestation", /datum/event/grub_infestation, 0, list(ASSIGNMENT_SECURITY = 10, ASSIGNMENT_ENGINEER = 30), 1), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Drone Pod Drop", /datum/event/drone_pod_drop, 10, list(ASSIGNMENT_SCIENTIST = 40), 1), new /datum/event_meta(EVENT_LEVEL_MODERATE, "Morph Spawn", /datum/event/morph_spawn, 75, list(ASSIGNMENT_SECURITY = 30, ASSIGNMENT_SCIENTIST = 10), 1), - new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 75, list(ASSIGNMENT_SECURITY = 40), 0) + new /datum/event_meta(EVENT_LEVEL_MODERATE, "Maintenance Predator", /datum/event/maintenance_predator, 75, list(ASSIGNMENT_SECURITY = 40), 0), + new /datum/event_meta(EVENT_LEVEL_MODERATE, "Jellyfish School", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1), ) add_disabled_events(list( new /datum/event_meta(EVENT_LEVEL_MODERATE, "Appendicitis", /datum/event/spontaneous_appendicitis, 0, list(ASSIGNMENT_MEDICAL = 30), 1), @@ -97,17 +98,18 @@ /datum/event_container/major/New() available_events = list( - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 3600), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Strike", /datum/event/meteor_strike, 10, list(ASSIGNMENT_ENGINEER = 15), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 20, list(ASSIGNMENT_ENGINEER = 7), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 10, list(ASSIGNMENT_SECURITY = 5), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station,0, list(ASSIGNMENT_ANY = 5), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Nothing", /datum/event/nothing, 3600), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Atmos Leak", /datum/event/atmos_leak, 30, list(ASSIGNMENT_ENGINEER = 25), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Space Vines", /datum/event/spacevine, 20, list(ASSIGNMENT_ENGINEER = 7), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Carp Migration", /datum/event/carp_migration, 10, list(ASSIGNMENT_SECURITY = 5), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Containment Breach", /datum/event/prison_break/station, 0, list(ASSIGNMENT_ANY = 5), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Jellyfish Migration", /datum/event/jellyfish_migration, 5, list(ASSIGNMENT_ANY = 1, ASSIGNMENT_SECURITY = 5, ASSIGNMENT_MEDICAL = 3), 1), ) add_disabled_events(list( - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 10, list(ASSIGNMENT_ENGINEER = 60), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 15), 1), - new /datum/event_meta(EVENT_LEVEL_MAJOR, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Strike", /datum/event/meteor_strike, 10, list(ASSIGNMENT_ENGINEER = 15), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Blob", /datum/event/blob, 10, list(ASSIGNMENT_ENGINEER = 60), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Meteor Wave", /datum/event/meteor_wave, 30, list(ASSIGNMENT_ENGINEER = 15), 1), + new /datum/event_meta(EVENT_LEVEL_MAJOR, "Supply Demand", /datum/event/supply_demand, 0, list(ASSIGNMENT_ANY = 5, ASSIGNMENT_SCIENCE = 15, ASSIGNMENT_GARDENER = 10, ASSIGNMENT_ENGINEER = 10, ASSIGNMENT_MEDICAL = 15), 1), )) #undef ASSIGNMENT_ANY diff --git a/code/modules/events/ian_storm_vr.dm b/code/modules/events/ian_storm_vr.dm index 8e654cff437..dc9aee617d4 100644 --- a/code/modules/events/ian_storm_vr.dm +++ b/code/modules/events/ian_storm_vr.dm @@ -4,7 +4,7 @@ endWhen = 3 /datum/event/ianstorm/announce() - command_announcement.Announce("It has come to our attention that the station passed through an ion storm. Please monitor all electronic equipment for malfunctions.", "Anomaly Alert", 'sound/AI/ian_storm.ogg') + command_announcement.Announce("It has come to our attention that the [using_map.facility_type] passed through an ion storm. Please monitor all electronic equipment for malfunctions.", "Anomaly Alert", 'sound/AI/ian_storm.ogg') spawn(7 SECONDS) command_announcement.Announce("Wait. No, thats wrong. The station passed through an IAN storm!.", "Ian Alert") diff --git a/code/modules/events/infestation.dm b/code/modules/events/infestation.dm index 985518067bf..d0d221d5fd1 100644 --- a/code/modules/events/infestation.dm +++ b/code/modules/events/infestation.dm @@ -1,120 +1,78 @@ -#define LOC_KITCHEN 0 -#define LOC_ATMOS 1 -#define LOC_CHAPEL 2 -#define LOC_LIBRARY 3 -#define LOC_HYDRO 4 -#define LOC_CONSTR 5 -#define LOC_TECH 6 -#define LOC_GARDEN 7 -#define LOC_STEMNGR 8 -#define LOC_RESEARCH 9 - #define VERM_MICE 0 #define VERM_LIZARDS 1 -#define VERM_SPIDERS 2 /datum/event/infestation announceWhen = 10 endWhen = 11 - var/location var/locstring var/vermin var/vermstring + var/list/spawned_vermin = list() + var/spawn_types + var/num_groups + var/prep_size_min + var/prep_size_max + var/vermin_cap = 40 + var/list/spawn_locations = list() /datum/event/infestation/start() - - location = rand(0,9) - var/list/turf/simulated/floor/turfs = list() - var/spawn_area_type - switch(location) - if(LOC_KITCHEN) - spawn_area_type = /area/crew_quarters/kitchen - locstring = "the kitchen" - if(LOC_ATMOS) - spawn_area_type = /area/engineering/atmos - locstring = "atmospherics" - if(LOC_CHAPEL) - spawn_area_type = /area/chapel/main - locstring = "the chapel" - if(LOC_LIBRARY) - spawn_area_type = /area/library - locstring = "the library" - if(LOC_HYDRO) - spawn_area_type = /area/hydroponics - locstring = "hydroponics" - if(LOC_CONSTR) - spawn_area_type = /area/construction - locstring = "the construction area" - if(LOC_TECH) - spawn_area_type = /area/storage/tech - locstring = "technical storage" - if(LOC_GARDEN) - spawn_area_type = /area/hydroponics/garden - locstring = "the public garden" - if(LOC_STEMNGR) - spawn_area_type = /area/crew_quarters/captain - locstring = "the site manager's office" - if(LOC_RESEARCH) - spawn_area_type = /area/rnd/research - locstring = "the research division" - - for(var/areapath in typesof(spawn_area_type)) - var/area/A = locate(areapath) - for(var/turf/simulated/floor/F in A.contents) - //VOREStation Edit - Fixes event - var/blocked = FALSE - for(var/atom/movable/AM in F) - if(AM.density) - blocked = TRUE - if(!blocked) - turfs += F - //VOREStation Edit - Fixes event - - var/list/spawn_types = list() - var/max_number - vermin = rand(0,2) + vermin = rand(0,1) switch(vermin) if(VERM_MICE) - spawn_types = list(/mob/living/simple_mob/animal/passive/mouse/gray, /mob/living/simple_mob/animal/passive/mouse/brown, /mob/living/simple_mob/animal/passive/mouse/white) - max_number = 12 + spawn_types = /mob/living/simple_mob/animal/passive/mouse/gray + prep_size_min = 1 + prep_size_max = 4 vermstring = "mice" if(VERM_LIZARDS) - spawn_types = list(/mob/living/simple_mob/animal/passive/lizard) - max_number = 6 + spawn_types = /mob/living/simple_mob/animal/passive/lizard + prep_size_min = 1 + prep_size_max = 3 vermstring = "lizards" - if(VERM_SPIDERS) - spawn_types = list(/obj/effect/spider/spiderling) - max_number = 3 - vermstring = "spiders" + // Check if any landmarks exist! + for(var/obj/effect/landmark/C in landmarks_list) + if(C.name == "verminstart") + spawn_locations.Add(C.loc) - spawn(0) - var/num = rand(2,max_number) - while(turfs.len > 0 && num > 0) - var/turf/simulated/floor/T = pick(turfs) - turfs.Remove(T) - num-- - if(vermin == VERM_SPIDERS) - var/obj/effect/spider/spiderling/S = new(T) - S.amount_grown = -1 - else - var/spawn_type = pick(spawn_types) - new spawn_type(T) +/datum/event/infestation/tick() + if(activeFor % 5 != 0) + return // Only process every 10 seconds. + if(count_spawned_vermin() < vermin_cap) + spawn_vermin(rand(4,10), prep_size_min, prep_size_max) + +/datum/event/infestation/proc/spawn_vermin(var/num_groups, var/group_size_min, var/group_size_max) + if(spawn_locations.len) // Okay we've got landmarks, lets use those! + shuffle_inplace(spawn_locations) + num_groups = min(num_groups, spawn_locations.len) + for (var/i = 1, i <= num_groups, i++) + var/group_size = rand(group_size_min, group_size_max) + for (var/j = 0, j < group_size, j++) + spawn_one_vermin(spawn_locations[i]) + return + +// Spawn a single vermin at given location. +/datum/event/infestation/proc/spawn_one_vermin(var/loc) + var/mob/living/simple_mob/animal/M = new spawn_types(loc) + GLOB.destroyed_event.register(M, src, .proc/on_vermin_destruction) + spawned_vermin.Add(M) + return M + +// Counts living vermin spawned by this event. +/datum/event/infestation/proc/count_spawned_vermin() + . = 0 + for(var/mob/living/simple_mob/animal/M as anything in spawned_vermin) + if(!QDELETED(M) && M.stat != DEAD) + . += 1 + +// If vermin is kill, remove it from the list. +/datum/event/infestation/proc/on_vermin_destruction(var/mob/M) + spawned_vermin -= M + GLOB.destroyed_event.unregister(M, src, .proc/on_vermin_destruction) + /datum/event/infestation/announce() - command_announcement.Announce("Bioscans indicate that [vermstring] have been breeding in [locstring]. Clear them out, before this starts to affect productivity.", "Vermin infestation") - -#undef LOC_KITCHEN -#undef LOC_ATMOS -#undef LOC_CHAPEL -#undef LOC_LIBRARY -#undef LOC_HYDRO -#undef LOC_TECH -#undef LOC_GARDEN -#undef LOC_STEMNGR -#undef LOC_RESEARCH + command_announcement.Announce("Bioscans indicate that [vermstring] have been breeding all over the facility. Clear them out, before this starts to affect productivity.", "Vermin infestation") #undef VERM_MICE -#undef VERM_LIZARDS -#undef VERM_SPIDERS +#undef VERM_LIZARDS \ No newline at end of file diff --git a/code/modules/events/jellyfish_migration.dm b/code/modules/events/jellyfish_migration.dm new file mode 100644 index 00000000000..7498539ae14 --- /dev/null +++ b/code/modules/events/jellyfish_migration.dm @@ -0,0 +1,102 @@ +/datum/event/jellyfish_migration + startWhen = 0 // Start immediately + announceWhen = 45 // Adjusted by setup + endWhen = 75 // Adjusted by setup + var/jellyfish_cap = 20 + var/list/spawned_jellyfish = list() + +/datum/event/jellyfish_migration/setup() + announceWhen = rand(30, 60) // 1 to 2 minutes + endWhen += severity * 25 + jellyfish_cap = 2 + 3 ** severity // No more than this many at once regardless of waves. (5, 11, 29) + +/datum/event/jellyfish_migration/start() + affecting_z -= global.using_map.sealed_levels // Space levels only please! + ..() + +/datum/event/jellyfish_migration/announce() + var/announcement = "" + if(severity == EVENT_LEVEL_MAJOR) + announcement = "Massive migration of unknown biological entities has been detected near [location_name()], please stand-by." + else + announcement = "Unknown biological [spawned_jellyfish.len == 1 ? "entity has" : "entities have"] been detected near [location_name()], please stand-by." + command_announcement.Announce(announcement, "Lifesign Alert") + +/datum/event/jellyfish_migration/tick() + if(activeFor % 5 != 0) + return // Only process every 10 seconds. + if(count_spawned_jellyfish() < jellyfish_cap) + spawn_fish(rand(3, 3 + severity * 2) - 1, 1, severity + 2) + +/datum/event/jellyfish_migration/proc/spawn_fish(var/num_groups, var/group_size_min, var/group_size_max, var/dir) + if(isnull(dir)) + dir = (victim && prob(80)) ? victim.fore_dir : pick(GLOB.cardinal) + + // Check if any landmarks exist! These will use the carp spawn since they already would spawn in these similar spots. + var/list/spawn_locations = list() + for(var/obj/effect/landmark/C in landmarks_list) + if(C.name == "carpspawn" && (C.z in affecting_z)) + spawn_locations.Add(C.loc) + if(spawn_locations.len) // Okay we've got landmarks, lets use those! + shuffle_inplace(spawn_locations) + num_groups = min(num_groups, spawn_locations.len) + for (var/i = 1, i <= num_groups, i++) + var/group_size = rand(group_size_min, group_size_max) + for (var/j = 0, j < group_size, j++) + spawn_one_jellyfish(spawn_locations[i]) + return + + // Okay we did *not* have any landmarks, so lets do our best! + var/i = 1 + while (i <= num_groups) + var/Z = pick(affecting_z) + var/group_size = rand(group_size_min, group_size_max) + var/turf/map_center = locate(round(world.maxx/2), round(world.maxy/2), Z) + var/turf/group_center = pick_random_edge_turf(dir, Z, TRANSITIONEDGE + 2) + var/list/turfs = getcircle(group_center, 2) + for (var/j = 0, j < group_size, j++) + var/mob/living/simple_mob/animal/M = spawn_one_jellyfish(turfs[(i % turfs.len) + 1]) + // Ray trace towards middle of the map to find where they can stop just outside of structure/ship. + var/turf/target + for(var/turf/T in getline(get_turf(M), map_center)) + if(!T.is_space()) + break; + target = T + if(target) + M.ai_holder?.give_destination(target) // Ask jellyfish to swim towards the middle of the map + i++ + +// Spawn a single jellyfish at given location. +/datum/event/jellyfish_migration/proc/spawn_one_jellyfish(var/loc) + var/mob/living/simple_mob/animal/M = new /mob/living/simple_mob/vore/alienanimals/space_jellyfish(loc) + GLOB.destroyed_event.register(M, src, .proc/on_jellyfish_destruction) + spawned_jellyfish.Add(M) + return M + +// Counts living jellyfish spawned by this event. +/datum/event/jellyfish_migration/proc/count_spawned_jellyfish() + . = 0 + for(var/mob/living/simple_mob/animal/M as anything in spawned_jellyfish) + if(!QDELETED(M) && M.stat != DEAD) + . += 1 + +// If jellyfish is bomphed, remove it from the list. +/datum/event/jellyfish_migration/proc/on_jellyfish_destruction(var/mob/M) + spawned_jellyfish -= M + GLOB.destroyed_event.unregister(M, src, .proc/on_jellyfish_destruction) + +/datum/event/jellyfish_migration/end() + . = ..() + // Clean up jellyfish that died in space for some reason. + spawn(0) + for(var/mob/living/simple_mob/SM in spawned_jellyfish) + if(SM.stat == DEAD) + var/turf/T = get_turf(SM) + if(istype(T, /turf/space)) + if(prob(75)) + qdel(SM) + CHECK_TICK + +// Overmap version +/datum/event/jellyfish_migration/overmap/announce() + return diff --git a/code/modules/events/prison_break.dm b/code/modules/events/prison_break.dm index f2675a0ede1..2575873aae2 100644 --- a/code/modules/events/prison_break.dm +++ b/code/modules/events/prison_break.dm @@ -37,7 +37,7 @@ /datum/event/prison_break/announce() if(areas && areas.len > 0) - command_announcement.Announce("[pick("Gr3y.T1d3 virus","Malignant trojan")] detected in [station_name()] [(eventDept == "Security")? "imprisonment":"containment"] subroutines. Secure any compromised areas immediately. Station AI involvement is recommended.", "[eventDept] Alert") + command_announcement.Announce("[pick("Gr3y.T1d3 virus","Malignant trojan")] detected in [station_name()] [(eventDept == "Security")? "imprisonment":"containment"] subroutines. Secure any compromised areas immediately. Involvement of [using_map.facility_type] AI is recommended.", "[eventDept] Alert") /datum/event/prison_break/start() diff --git a/code/modules/events/radiation_storm.dm b/code/modules/events/radiation_storm.dm index 13f853dd3c2..a8668e561a4 100644 --- a/code/modules/events/radiation_storm.dm +++ b/code/modules/events/radiation_storm.dm @@ -16,7 +16,7 @@ /datum/event/radiation_storm/tick() if(activeFor == enterBelt) - command_announcement.Announce("The station has entered the radiation belt. Please remain in a sheltered area until we have passed the radiation belt.", "Anomaly Alert") + command_announcement.Announce("The [using_map.facility_type] has entered the radiation belt. Please remain in a sheltered area until we have passed the radiation belt.", "Anomaly Alert") radiate() if(activeFor >= enterBelt && activeFor <= leaveBelt) @@ -27,7 +27,7 @@ radiate() else if(activeFor == leaveBelt) - command_announcement.Announce("The station has passed the radiation belt. Please allow for up to one minute while radiation levels dissipate, and report to medbay if you experience any unusual symptoms. Maintenance will lose all access again shortly.", "Anomaly Alert") + command_announcement.Announce("The [using_map.facility_type] has passed the radiation belt. Please allow for up to one minute while radiation levels dissipate, and report to medbay if you experience any unusual symptoms. Maintenance will lose all access again shortly.", "Anomaly Alert") /datum/event/radiation_storm/proc/radiate() var/radiation_level = rand(15, 35) for(var/z in using_map.station_levels) diff --git a/code/modules/events/rogue_drones.dm b/code/modules/events/rogue_drones.dm index f6ac58b1e41..b7e9f37552a 100644 --- a/code/modules/events/rogue_drones.dm +++ b/code/modules/events/rogue_drones.dm @@ -35,7 +35,7 @@ if(4) msg = "A passing derelict ship's drone defense systems have just activated. If any are sighted in the area, use caution." if(5) - msg = "We're detecting a swarm of small objects approaching your station. Most likely a bunch of drones. Please exercise caution if you see any." + msg = "We're detecting a swarm of small objects approaching your [using_map.facility_type]. Most likely a bunch of drones. Please exercise caution if you see any." //VOREStation Edit End command_announcement.Announce(msg, "Rogue drone alert") diff --git a/code/modules/events/solar_storm.dm b/code/modules/events/solar_storm.dm index a8d4b92a3c0..33c2c477edf 100644 --- a/code/modules/events/solar_storm.dm +++ b/code/modules/events/solar_storm.dm @@ -9,7 +9,7 @@ endWhen = startWhen + rand(30,90) + rand(30,90) //2-6 minute duration /datum/event/solar_storm/announce() - command_announcement.Announce("A solar storm has been detected approaching \the [station_name()]. Please halt all EVA activites immediately and return to the interior of the station.", "Anomaly Alert", new_sound = 'sound/AI/radiation.ogg') + command_announcement.Announce("A solar storm has been detected approaching \the [station_name()]. Please halt all EVA activites immediately and return to the interior of the [using_map.facility_type].", "Anomaly Alert", new_sound = 'sound/AI/radiation.ogg') adjust_solar_output(1.5) /datum/event/solar_storm/proc/adjust_solar_output(var/mult = 1) @@ -18,7 +18,7 @@ /datum/event/solar_storm/start() - command_announcement.Announce("The solar storm has reached the station. Please refrain from EVA and remain inside the station until it has passed.", "Anomaly Alert") + command_announcement.Announce("The solar storm has reached the [using_map.facility_type]. Please refrain from EVA and remain inside the station until it has passed.", "Anomaly Alert") adjust_solar_output(5) @@ -40,7 +40,7 @@ L.rad_act(rand(15, 30)) /datum/event/solar_storm/end() - command_announcement.Announce("The solar storm has passed the station. It is now safe to resume EVA activities. Please report to medbay if you experience any unusual symptoms. ", "Anomaly Alert") + command_announcement.Announce("The solar storm has passed the [using_map.facility_type]. It is now safe to resume EVA activities. Please report to medbay if you experience any unusual symptoms. ", "Anomaly Alert") adjust_solar_output() diff --git a/code/modules/events/supply_demand_vr.dm b/code/modules/events/supply_demand_vr.dm index 6e229e1b483..f61d4744c44 100644 --- a/code/modules/events/supply_demand_vr.dm +++ b/code/modules/events/supply_demand_vr.dm @@ -63,7 +63,7 @@ send_console_message(message, dpt); // Also announce over main comms so people know to look - command_announcement.Announce("An order for the station to deliver supplies to [command_name()] has been delivered to all supply Request Consoles", my_department) + command_announcement.Announce("An order for the [using_map.facility_type] to deliver supplies to [command_name()] has been delivered to all supply Request Consoles", my_department) /datum/event/supply_demand/tick() if(required_items.len == 0) diff --git a/code/modules/events/wallrot.dm b/code/modules/events/wallrot.dm index e09cc50d2f5..6c87fb85727 100644 --- a/code/modules/events/wallrot.dm +++ b/code/modules/events/wallrot.dm @@ -7,15 +7,18 @@ // 100 attempts for(var/i=0, i<100, i++) - var/turf/candidate = locate(rand(1, world.maxx), rand(1, world.maxy), 1) + var/z_level = pick(using_map.station_levels) + var/turf/candidate = locate(rand(1, world.maxx), rand(1, world.maxy), z_level) if(istype(candidate, /turf/simulated/wall)) center = candidate - return 1 + var/area/A = get_area(candidate) + if(!A.forbid_events) + return 1 return 0 /datum/event/wallrot/announce() if(center) - command_announcement.Announce("Harmful fungi detected on \the [station_name()] nearby [center.loc.name]. Station structures may be contaminated.", "Biohazard Alert") + command_announcement.Announce("Harmful fungi detected on \the [station_name()] and [using_map.facility_type] structures nearby [center.loc.name] may be contaminated.", "Biohazard Alert") /datum/event/wallrot/start() spawn() diff --git a/code/modules/events/wormholes.dm b/code/modules/events/wormholes.dm index a9581341c5d..3ff2cf6b7b3 100644 --- a/code/modules/events/wormholes.dm +++ b/code/modules/events/wormholes.dm @@ -6,4 +6,4 @@ wormhole_event() /datum/event/wormholes/end() - command_announcement.Announce("There are no more space-time anomalies detected on the station.", "Anomaly Alert") + command_announcement.Announce("There are no more space-time anomalies detected on the [using_map.facility_type].", "Anomaly Alert") diff --git a/code/modules/examine/descriptions/engineering.dm b/code/modules/examine/descriptions/engineering.dm index 52d24ff577c..04c20a8bdbe 100644 --- a/code/modules/examine/descriptions/engineering.dm +++ b/code/modules/examine/descriptions/engineering.dm @@ -46,6 +46,8 @@ return results /obj/machinery/door/airlock/get_description_interaction() + description_info = "To ring an airlock's doorbell, hold Alt and click on the airlock with the Left Mouse Button on Green/Help intent. Doing the same on Harm intent will instead hammer on the airlock." //vorestation edit + var/list/results = list() if(can_remove_electronics()) diff --git a/code/modules/food/food/condiment.dm b/code/modules/food/food/condiment.dm index abf4f89b373..5b137957db7 100644 --- a/code/modules/food/food/condiment.dm +++ b/code/modules/food/food/condiment.dm @@ -101,9 +101,9 @@ desc = "Often used to flavor food or make people sneeze." icon_state = "peppermillsmall" center_of_mass = list("x"=17, "y"=11) - if("cornoil") - name = "Corn Oil" - desc = "A delicious oil used in cooking. Made from corn." + if("cookingoil") + name = "Cooking Oil" + desc = "A delicious oil used in cooking. General purpose." icon_state = "oliveoil" center_of_mass = list("x"=16, "y"=6) if("sugar") @@ -175,6 +175,13 @@ . = ..() reagents.add_reagent("capsaicin", 50) +/obj/item/weapon/reagent_containers/food/condiment/cookingoil + name = "Cooking Oil" + +/obj/item/weapon/reagent_containers/food/condiment/cookingoil/Initialize() + . = ..() + reagents.add_reagent("cookingoil", 50) + /obj/item/weapon/reagent_containers/food/condiment/cornoil name = "Corn Oil" diff --git a/code/modules/food/food/snacks.dm b/code/modules/food/food/snacks.dm index 8e87f8d71d0..1401a12e635 100644 --- a/code/modules/food/food/snacks.dm +++ b/code/modules/food/food/snacks.dm @@ -848,32 +848,6 @@ nutriment_desc = list("dryness" = 2, "bread" = 2) bitesize = 1 -/obj/item/weapon/reagent_containers/food/snacks/carpmeat - name = "fillet" - desc = "A fillet of carp meat" - icon_state = "fishfillet" - filling_color = "#FFDEFE" - center_of_mass = list("x"=17, "y"=13) - bitesize = 6 - - var/toxin_type = "carpotoxin" - var/toxin_amount = 3 - -/obj/item/weapon/reagent_containers/food/snacks/carpmeat/Initialize() - . = ..() - reagents.add_reagent("protein", 3) - reagents.add_reagent(toxin_type, toxin_amount) - -/obj/item/weapon/reagent_containers/food/snacks/crabmeat - name = "crab legs" - desc = "... Coffee? Is that you?" - icon_state = "crabmeat" - bitesize = 1 - -/obj/item/weapon/reagent_containers/food/snacks/crabmeat/Initialize() - . = ..() - reagents.add_reagent("seafood", 2) - /obj/item/weapon/reagent_containers/food/snacks/crab_legs name = "steamed crab legs" desc = "Crab legs steamed and buttered to perfection. One day when the boss gets hungry..." @@ -888,21 +862,6 @@ reagents.add_reagent("seafood", 6) reagents.add_reagent("sodiumchloride", 1) -/obj/item/weapon/reagent_containers/food/snacks/carpmeat/sif - desc = "A fillet of sivian fish meat." - filling_color = "#2c2cff" - color = "#2c2cff" - toxin_type = "neurotoxic_protein" - toxin_amount = 2 - -/obj/item/weapon/reagent_containers/food/snacks/carpmeat/sif/murkfish - toxin_type = "murk_protein" - -/obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish - desc = "A fillet of fish meat." - toxin_type = "neurotoxic_protein" - toxin_amount = 1 - /obj/item/weapon/reagent_containers/food/snacks/fishfingers name = "Fish Fingers" desc = "A finger of fish." @@ -927,69 +886,6 @@ . = ..() reagents.add_reagent("protein", 4) -/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice - name = "huge mushroom slice" - desc = "A slice from a huge mushroom." - icon_state = "hugemushroomslice" - filling_color = "#E0D7C5" - center_of_mass = list("x"=17, "y"=16) - nutriment_amt = 3 - nutriment_desc = list("raw" = 2, "mushroom" = 2) - bitesize = 6 - -/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice/Initialize() - . = ..() - reagents.add_reagent("psilocybin", 3) - -/obj/item/weapon/reagent_containers/food/snacks/tomatomeat - name = "tomato slice" - desc = "A slice from a huge tomato" - icon_state = "tomatomeat" - filling_color = "#DB0000" - center_of_mass = list("x"=17, "y"=16) - nutriment_amt = 3 - nutriment_desc = list("raw" = 2, "tomato" = 3) - bitesize = 6 - -/obj/item/weapon/reagent_containers/food/snacks/bearmeat - name = "bear meat" - desc = "A very manly slab of meat." - icon_state = "bearmeat" - filling_color = "#DB0000" - center_of_mass = list("x"=16, "y"=10) - bitesize = 3 - -/obj/item/weapon/reagent_containers/food/snacks/bearmeat/Initialize() - . = ..() - reagents.add_reagent("protein", 12) - reagents.add_reagent("hyperzine", 5) - -/obj/item/weapon/reagent_containers/food/snacks/xenomeat - name = "xenomeat" - desc = "A slab of green meat. Smells like acid." - icon_state = "xenomeat" - filling_color = "#43DE18" - center_of_mass = list("x"=16, "y"=10) - bitesize = 6 - -/obj/item/weapon/reagent_containers/food/snacks/xenomeat/Initialize() - . = ..() - reagents.add_reagent("protein", 6) - reagents.add_reagent("pacid",6) - -/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat // Substitute for recipes requiring xeno meat. - name = "spider meat" - desc = "A slab of green meat." - icon_state = "xenomeat" - filling_color = "#43DE18" - center_of_mass = list("x"=16, "y"=10) - bitesize = 6 - -/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat/Initialize() - . = ..() - reagents.add_reagent("spidertoxin",6) - reagents.remove_reagent("pacid",6) - /obj/item/weapon/reagent_containers/food/snacks/meatball name = "meatball" desc = "A great meal all round." @@ -3361,7 +3257,7 @@ . = ..() reagents.add_reagent("blackpepper", 1) reagents.add_reagent("sodiumchloride", 1) - reagents.add_reagent("cornoil", 1) + reagents.add_reagent("cookingoil", 1) /obj/item/weapon/reagent_containers/food/snacks/turkeyslice name = "turkey drumstick" @@ -4959,7 +4855,7 @@ reagents.add_reagent("protein",5) /obj/item/weapon/reagent_containers/food/snacks/pineapple_ring - name = "pineapple ring" + name = "pineapple rings" desc = "So retro." icon_state = "pineapple_ring" nutriment_desc = list("sweetness" = 2) diff --git a/code/modules/food/food/snacks/meat.dm b/code/modules/food/food/snacks/meat.dm index c95ddd3d1df..e7a16f53648 100644 --- a/code/modules/food/food/snacks/meat.dm +++ b/code/modules/food/food/snacks/meat.dm @@ -44,16 +44,178 @@ //same as plain meat /obj/item/weapon/reagent_containers/food/snacks/meat/corgi - name = "Corgi meat" + name = "dogmeat" desc = "Tastes like... well, you know." /obj/item/weapon/reagent_containers/food/snacks/meat/chicken - name = "chicken" + name = "poultry" icon_state = "chickenbreast" cooked_icon = "chickensteak" filling_color = "#BBBBAA" /obj/item/weapon/reagent_containers/food/snacks/meat/chicken/Initialize() - . = ..() - reagents.remove_reagent("triglyceride", INFINITY) - //Chicken is low fat. Less total calories than other meats \ No newline at end of file + . = ..() + reagents.remove_reagent("triglyceride", INFINITY) + //Chicken is low fat. Less total calories than other meats + +/obj/item/weapon/reagent_containers/food/snacks/carpmeat + name = "fillet" + desc = "A fillet of carp meat" + icon_state = "fishfillet" + filling_color = "#FFDEFE" + center_of_mass = list("x"=17, "y"=13) + bitesize = 6 + + var/toxin_type = "carpotoxin" + var/toxin_amount = 3 + +/obj/item/weapon/reagent_containers/food/snacks/carpmeat/Initialize() + . = ..() + reagents.add_reagent("protein", 3) + reagents.add_reagent(toxin_type, toxin_amount) + +/obj/item/weapon/reagent_containers/food/snacks/carpmeat/sif + desc = "A fillet of sivian fish meat." + filling_color = "#2c2cff" + color = "#2c2cff" + toxin_type = "neurotoxic_protein" + toxin_amount = 2 + +/obj/item/weapon/reagent_containers/food/snacks/carpmeat/sif/murkfish + toxin_type = "murk_protein" + +/obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish + desc = "A fillet of fish meat." + toxin_type = "neurotoxic_protein" + toxin_amount = 1 + +/obj/item/weapon/reagent_containers/food/snacks/crabmeat + name = "crustacean legs" + desc = "... Coffee? Is that you?" + icon_state = "crabmeat" + bitesize = 1 + +/obj/item/weapon/reagent_containers/food/snacks/crabmeat/Initialize() + . = ..() + reagents.add_reagent("seafood", 2) + +/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice + name = "fungus slice" + desc = "A slice from a huge mushroom." + icon_state = "hugemushroomslice" + filling_color = "#E0D7C5" + center_of_mass = list("x"=17, "y"=16) + nutriment_amt = 3 + nutriment_desc = list("raw" = 2, "mushroom" = 2) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/hugemushroomslice/Initialize() + . = ..() + reagents.add_reagent("psilocybin", 3) + +/obj/item/weapon/reagent_containers/food/snacks/tomatomeat + name = "tomato slice" + desc = "A slice from a huge tomato" + icon_state = "tomatomeat" + filling_color = "#DB0000" + center_of_mass = list("x"=17, "y"=16) + nutriment_amt = 3 + nutriment_desc = list("raw" = 2, "tomato" = 3) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/bearmeat + name = "bearmeat" + desc = "A very manly slab of meat." + icon_state = "bearmeat" + filling_color = "#DB0000" + center_of_mass = list("x"=16, "y"=10) + bitesize = 3 + +/obj/item/weapon/reagent_containers/food/snacks/bearmeat/Initialize() + . = ..() + reagents.add_reagent("protein", 12) + reagents.add_reagent("hyperzine", 5) + +/obj/item/weapon/reagent_containers/food/snacks/xenomeat + name = "xenomeat" + desc = "A slab of green meat. Smells like acid." + icon_state = "xenomeat" + filling_color = "#43DE18" + center_of_mass = list("x"=16, "y"=10) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/xenomeat/Initialize() + . = ..() + reagents.add_reagent("protein", 6) + reagents.add_reagent("pacid",6) + +/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat // Substitute for recipes requiring xeno meat. + name = "insect meat" + desc = "A slab of green meat." + icon_state = "xenomeat" + filling_color = "#43DE18" + center_of_mass = list("x"=16, "y"=10) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat/Initialize() + . = ..() + reagents.add_reagent("spidertoxin",6) + reagents.remove_reagent("pacid",6) + +/obj/item/weapon/reagent_containers/food/snacks/meat/fox + name = "foxmeat" + desc = "The fox doesn't say a goddamn thing, now." + +/obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat + name = "grubmeat" + desc = "A slab of grub meat, it gives a gentle shock if you touch it" + icon = 'icons/obj/food.dmi' + icon_state = "grubmeat" + center_of_mass = list("x"=16, "y"=10) + +/obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat/Initialize() + . = ..() + reagents.add_reagent("protein", 1) + reagents.add_reagent("shockchem", 6) + bitesize = 6 + +/obj/item/weapon/reagent_containers/food/snacks/meat/worm + name = "weird meat" + desc = "A chunk of pulsating meat." + icon_state = "wormmeat" + health = 180 + filling_color = "#551A8B" + center_of_mass = list("x"=16, "y"=14) + +/obj/item/weapon/reagent_containers/food/snacks/meat/worm/Initialize() + . = ..() + reagents.add_reagent("protein", 6) + reagents.add_reagent("phoron", 3) + reagents.add_reagent("myelamine", 3) + src.bitesize = 3 + +/obj/item/weapon/reagent_containers/food/snacks/meat/worm/attackby(obj/item/weapon/W as obj, mob/user as mob) + if(istype(W,/obj/item/weapon/material/knife)) + var/to_spawn = pickweight(/obj/random/junk = 30, + /obj/random/trash = 30, + /obj/random/maintenance/clean = 15, + /obj/random/tool = 15, + /obj/random/medical = 3, + /obj/random/bomb_supply = 7, + /obj/random/contraband = 3, + /obj/random/unidentified_medicine/old_medicine = 7, + /obj/item/weapon/strangerock = 3, + /obj/item/weapon/ore/phoron = 7, + /obj/random/handgun = 1, + /obj/random/toolbox = 4, + /obj/random/drinkbottle = 5 + ) + + new to_spawn(get_turf(src)) + + if(prob(20)) + user.visible_message("Something oozes out of \the [src] as it is cut.") + + to_chat(user, "You cut the tissue holding the chunks together.") + + ..() diff --git a/code/modules/food/food/snacks_vr.dm b/code/modules/food/food/snacks_vr.dm index 132bba78ec9..dce6f234cfa 100644 --- a/code/modules/food/food/snacks_vr.dm +++ b/code/modules/food/food/snacks_vr.dm @@ -161,19 +161,6 @@ reagents.add_reagent("protein", 4) bitesize = 2 -/obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat - name = "grub meat" - desc = "A slab of grub meat, it gives a gentle shock if you touch it" - icon = 'icons/obj/food.dmi' - icon_state = "grubmeat" - center_of_mass = list("x"=16, "y"=10) - -/obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat/Initialize() - . = ..() - reagents.add_reagent("protein", 1) - reagents.add_reagent("shockchem", 6) - bitesize = 6 - /obj/item/weapon/reagent_containers/food/snacks/bugball name = "bugball" desc = "A hard piece of chitin, don't chip a tooth!" @@ -773,3 +760,17 @@ . = ..() reagents.add_reagent("protein", 3) bitesize = 2 + +/obj/item/weapon/reagent_containers/food/snacks/donkpocket/ascended + name = "Donk-pocket EX" + desc = "This donk-pocket has seen things beyond comprehension of mortals. It survived because the fire inside it burned brighter than fire around it." + icon = 'icons/obj/food_vr.dmi' + icon_state = "donkpocket_ascended" + nutriment_amt = 5 + nutriment_desc = list("burning fires of radioactive hell" = 20) + heated_reagents = list("supermatter" = 1) + +/obj/item/weapon/reagent_containers/food/snacks/donkpocket/ascended/Initialize() + . = ..() + reagents.add_reagent("uranium", 3) + reagents.add_reagent("pyrotoxin", 3) \ No newline at end of file diff --git a/code/modules/food/kitchen/cooking_machines/fryer.dm b/code/modules/food/kitchen/cooking_machines/fryer.dm index 6c2e0d9b71c..bcaad4e6939 100644 --- a/code/modules/food/kitchen/cooking_machines/fryer.dm +++ b/code/modules/food/kitchen/cooking_machines/fryer.dm @@ -13,13 +13,13 @@ appliancetype = FRYER active_power_usage = 12 KILOWATTS heating_power = 12 KILOWATTS - + light_y = 15 - + min_temp = 140 + T0C // Same as above, increasing this to just under 2x to make the % increase on efficiency not quite so painful as it would be at 80. optimal_temp = 400 + T0C // Increasing this to be 2x Oven to allow for a much higher/realistic frying temperatures. Doesn't really do anything but make heating the fryer take a bit longer. optimal_power = 0.95 // .35 higher than the default to give fryers faster cooking speed. - + idle_power_usage = 3.6 KILOWATTS // Power used to maintain temperature once it's heated. // Going with 25% of the active power. This is a somewhat arbitrary value. @@ -33,11 +33,11 @@ var/datum/reagents/oil var/optimal_oil = 9000 //90 litres of cooking oil - + /obj/machinery/appliance/cooker/fryer/Initialize() . = ..() fry_loop = new(list(src), FALSE) - + oil = new/datum/reagents(optimal_oil * 1.25, src) var/variance = rand()*0.15 // Fryer is always a little below full, but its usually negligible @@ -45,18 +45,18 @@ if(prob(20)) // Sometimes the fryer will start with much less than full oil, significantly impacting efficiency until filled variance = rand()*0.5 - oil.add_reagent("cornoil", optimal_oil*(1 - variance)) + oil.add_reagent("cookingoil", optimal_oil*(1 - variance)) /obj/machinery/appliance/cooker/fryer/Destroy() QDEL_NULL(fry_loop) QDEL_NULL(oil) return ..() - + /obj/machinery/appliance/cooker/fryer/examine(var/mob/user) . = ..() if(Adjacent(user)) to_chat(user, "Oil Level: [oil.total_volume]/[optimal_oil]") - + /obj/machinery/appliance/cooker/fryer/update_icon() // We add our own version of the proc to use the special fryer double-lights. cut_overlays() var/image/light @@ -69,7 +69,7 @@ light.pixel_x = light_x light.pixel_y = light_y add_overlay(light) - + /obj/machinery/appliance/cooker/fryer/heat_up() if (..()) //Set temperature of oil reagent @@ -102,7 +102,7 @@ cooking_power *= oil_efficiency - + /obj/machinery/appliance/cooker/fryer/update_icon() if(!stat) ..() @@ -119,7 +119,7 @@ if(fry_loop) fry_loop.stop(src) ..() - + //Fryer gradually infuses any cooked food with oil. Moar calories //This causes a slow drop in oil levels, encouraging refill after extended use /obj/machinery/appliance/cooker/fryer/do_cooking_tick(var/datum/cooking_item/CI) @@ -177,13 +177,13 @@ return // user.visible_message("\The [user] starts pushing \the [victim] into \the [src]!") - + //Removed delay on this action in favour of a cooldown after it //If you can lure someone close to the fryer and grab them then you deserve success. //And a delay on this kind of niche action just ensures it never happens //Cooldown ensures it can't be spammed to instakill someone user.setClickCooldown(DEFAULT_ATTACK_COOLDOWN*3) - + fry_loop.start(src) if(!do_mob(user, victim, 20)) @@ -239,9 +239,9 @@ //Coat the victim in some oil oil.trans_to(victim, 40) - + fry_loop.stop() - + /obj/machinery/appliance/cooker/fryer/attackby(var/obj/item/I, var/mob/user) if(istype(I, /obj/item/weapon/reagent_containers/glass) && I.reagents) if (I.reagents.total_volume <= 0 && oil) diff --git a/code/modules/food/kitchen/smartfridge/engineering.dm b/code/modules/food/kitchen/smartfridge/engineering.dm index 27988545375..035af9aebbc 100644 --- a/code/modules/food/kitchen/smartfridge/engineering.dm +++ b/code/modules/food/kitchen/smartfridge/engineering.dm @@ -18,8 +18,10 @@ if(amount < 1) return + count = min(count, amount) + while(count > 0) - var/obj/item/stack/S = I.get_product(get_turf(src), min(count, amount)) + var/obj/item/stack/S = I.get_product(get_turf(src), count) count -= S.get_amount() SStgui.update_uis(src) diff --git a/code/modules/food/recipes_microwave.dm b/code/modules/food/recipes_microwave.dm index c909c29fc51..34f4146159c 100644 --- a/code/modules/food/recipes_microwave.dm +++ b/code/modules/food/recipes_microwave.dm @@ -522,13 +522,20 @@ I said no! ) result = /obj/item/weapon/reagent_containers/food/snacks/cutlet -/datum/recipe/roastedsunflowerseeds +/datum/recipe/roastedcornsunflowerseeds reagents = list("sodiumchloride" = 1, "cornoil" = 1) items = list( /obj/item/weapon/reagent_containers/food/snacks/rawsunflower ) result = /obj/item/weapon/reagent_containers/food/snacks/roastedsunflower +/datum/recipe/roastedsunflowerseeds + reagents = list("sodiumchloride" = 1, "cookingoil" = 1) + items = list( + /obj/item/weapon/reagent_containers/food/snacks/rawsunflower + ) + result = /obj/item/weapon/reagent_containers/food/snacks/roastedsunflower + /datum/recipe/roastedpeanutsunflowerseeds reagents = list("sodiumchloride" = 1, "peanutoil" = 1) items = list( @@ -537,10 +544,20 @@ I said no! result = /obj/item/weapon/reagent_containers/food/snacks/roastedsunflower /datum/recipe/roastedpeanuts + fruit = list("peanut" = 2) + reagents = list("sodiumchloride" = 2, "cookingoil" = 1) + result = /obj/item/weapon/reagent_containers/food/snacks/roastedpeanuts + +/datum/recipe/roastedpeanutscorn fruit = list("peanut" = 2) reagents = list("sodiumchloride" = 2, "cornoil" = 1) result = /obj/item/weapon/reagent_containers/food/snacks/roastedpeanuts +/datum/recipe/roastedpeanutspeanut + fruit = list("peanut" = 2) + reagents = list("sodiumchloride" = 2, "peanutoil" = 1) + result = /obj/item/weapon/reagent_containers/food/snacks/roastedpeanuts + /datum/recipe/mint reagents = list("sugar" = 5, "frostoil" = 5) result = /obj/item/weapon/reagent_containers/food/snacks/mint diff --git a/code/modules/gamemaster/event2/events/everyone/infestation.dm b/code/modules/gamemaster/event2/events/everyone/infestation.dm index f51456f3628..512679d2fc5 100644 --- a/code/modules/gamemaster/event2/events/everyone/infestation.dm +++ b/code/modules/gamemaster/event2/events/everyone/infestation.dm @@ -31,6 +31,7 @@ things_to_spawn = list( /mob/living/simple_mob/animal/passive/mouse/gray, /mob/living/simple_mob/animal/passive/mouse/brown, + /mob/living/simple_mob/animal/passive/mouse/black, /mob/living/simple_mob/animal/passive/mouse/white, /mob/living/simple_mob/animal/passive/mouse/rat ) diff --git a/code/modules/holodeck/HolodeckControl.dm b/code/modules/holodeck/HolodeckControl.dm index f48ae1a26af..309971d5e24 100644 --- a/code/modules/holodeck/HolodeckControl.dm +++ b/code/modules/holodeck/HolodeckControl.dm @@ -332,6 +332,12 @@ linkedholodeck.sound_env = A.sound_env + if(prog == powerdown_program) + linkedholodeck.requires_power = TRUE + else + linkedholodeck.requires_power = FALSE + linkedholodeck.power_change() + spawn(30) for(var/obj/effect/landmark/L in linkedholodeck) if(L.name=="Atmospheric Test Start") diff --git a/code/modules/hydroponics/trays/tray.dm b/code/modules/hydroponics/trays/tray.dm index cdc4314c6c6..09e1ccbe9e8 100644 --- a/code/modules/hydroponics/trays/tray.dm +++ b/code/modules/hydroponics/trays/tray.dm @@ -216,18 +216,26 @@ if(seed && seed.get_trait(TRAIT_IMMUTABLE) > 0) return - //Override for somatoray projectiles. - if(istype(Proj ,/obj/item/projectile/energy/floramut)&& prob(20)) - if(istype(Proj, /obj/item/projectile/energy/floramut/gene)) - var/obj/item/projectile/energy/floramut/gene/G = Proj - if(seed) - seed = seed.diverge_mutate_gene(G.gene, get_turf(loc)) //get_turf just in case it's not in a turf. - else - mutate(1) + // Override for somatoray projectiles. + // Change the mutchance var to buff or nerf somatorays, it will be multiplied by the tier of the laser. + var/mutchance = 15 + if(istype(Proj ,/obj/item/projectile/energy/floramut)) + var/obj/item/projectile/energy/floramut/GM = Proj + mutchance *= GM.lasermod + if(prob(mutchance)) + if(istype(Proj, /obj/item/projectile/energy/floramut/gene)) + var/obj/item/projectile/energy/floramut/gene/G = Proj + if(seed) + seed = seed.diverge_mutate_gene(G.gene, get_turf(loc)) //get_turf just in case it's not in a turf. + else + mutate(1) + return + else if(istype(Proj ,/obj/item/projectile/energy/florayield)) + var/obj/item/projectile/energy/floramut/GY = Proj + mutchance *= GY.lasermod + if(prob(mutchance)) + yield_mod = min(10,yield_mod+rand(1,2)) return - else if(istype(Proj ,/obj/item/projectile/energy/florayield) && prob(20)) - yield_mod = min(10,yield_mod+rand(1,2)) - return ..() diff --git a/code/modules/hydroponics/trays/tray_update_icons.dm b/code/modules/hydroponics/trays/tray_update_icons.dm index fc00e97ee87..0b3cf112312 100644 --- a/code/modules/hydroponics/trays/tray_update_icons.dm +++ b/code/modules/hydroponics/trays/tray_update_icons.dm @@ -5,11 +5,11 @@ ov_lowwater.plane = PLANE_LIGHTING_ABOVE ov_lownutri = image(icon = icon, icon_state = "over_lownutri3") ov_lownutri.plane = PLANE_LIGHTING_ABOVE - ov_harvest = image(icon = icon, icon_state = "over_alert3") + ov_harvest = image(icon = icon, icon_state = "over_harvest3") ov_harvest.plane = PLANE_LIGHTING_ABOVE - ov_frozen = image(icon = icon, icon_state = "over_harvest3") + ov_frozen = image(icon = icon, icon_state = "over_frozen3") ov_frozen.plane = PLANE_LIGHTING_ABOVE - ov_alert3 = image(icon = icon, icon_state = "over_frozen3") + ov_alert3 = image(icon = icon, icon_state = "over_alert3") ov_alert3.plane = PLANE_LIGHTING_ABOVE //Refreshes the icon and sets the luminosity diff --git a/code/modules/mining/mine_turfs.dm b/code/modules/mining/mine_turfs.dm index aea40de0359..a3dc2549f4b 100644 --- a/code/modules/mining/mine_turfs.dm +++ b/code/modules/mining/mine_turfs.dm @@ -611,8 +611,8 @@ var/list/mining_overlay_cache = list() if(prob(50)) M.Stun(5) SSradiation.flat_radiate(src, 25, 100) - if(prob(25)) - excavate_find(prob(5), finds[1]) + if(prob(25)) + excavate_find(prob(5), finds[1]) else if(rand(1,500) == 1) visible_message("An old dusty crate was buried within!") new /obj/structure/closet/crate/secure/loot(src) diff --git a/code/modules/mining/mine_turfs_vr.dm b/code/modules/mining/mine_turfs_vr.dm index 6e8797bf707..2db25d26fb1 100644 --- a/code/modules/mining/mine_turfs_vr.dm +++ b/code/modules/mining/mine_turfs_vr.dm @@ -14,6 +14,16 @@ /turf/simulated/mineral/floor/ignore_cavegen ignore_cavegen = TRUE +/turf/simulated/mineral/ignore_cavegen/cave + oxygen = MOLES_O2STANDARD + nitrogen = MOLES_N2STANDARD + temperature = T20C + +/turf/simulated/mineral/floor/ignore_cavegen/cave + oxygen = MOLES_O2STANDARD + nitrogen = MOLES_N2STANDARD + temperature = T20C + /turf/simulated/mineral/vacuum oxygen = 0 nitrogen = 0 diff --git a/code/modules/mining/ore_redemption_machine/equipment_vendor.dm b/code/modules/mining/ore_redemption_machine/equipment_vendor.dm index 3e53242a77c..4a89bd957d8 100644 --- a/code/modules/mining/ore_redemption_machine/equipment_vendor.dm +++ b/code/modules/mining/ore_redemption_machine/equipment_vendor.dm @@ -123,12 +123,13 @@ EQUIPMENT("KA Cooldown Decrease", /obj/item/borg/upgrade/modkit/cooldown, 1200), EQUIPMENT("KA Range Increase", /obj/item/borg/upgrade/modkit/range, 1000), EQUIPMENT("KA Temperature Modulator", /obj/item/borg/upgrade/modkit/heater, 1000), - EQUIPMENT("KA Off-Station Modulator", /obj/item/borg/upgrade/modkit/indoors/offsite, 1500), + EQUIPMENT("KA Off-Station Modulator", /obj/item/borg/upgrade/modkit/offsite, 1750), EQUIPMENT("KA Holster", /obj/item/clothing/accessory/holster/waist/kinetic_accelerator, 350), EQUIPMENT("KA Super Chassis", /obj/item/borg/upgrade/modkit/chassis_mod, 250), EQUIPMENT("KA Hyper Chassis", /obj/item/borg/upgrade/modkit/chassis_mod/orange, 300), EQUIPMENT("KA Adjustable Tracer Rounds",/obj/item/borg/upgrade/modkit/tracer/adjustable, 175), EQUIPMENT("KA White Tracer Rounds", /obj/item/borg/upgrade/modkit/tracer, 125), + EQUIPMENT("Premium Kinetic Accelerator",/obj/item/weapon/gun/energy/kinetic_accelerator/premiumka, 12000), ) prize_list["Digging Tools"] = list( // EQUIPMENT("Diamond Pickaxe", /obj/item/weapon/pickaxe/diamond, 2000), diff --git a/code/modules/mob/death.dm b/code/modules/mob/death.dm index 1badc92926a..c20b00684d9 100644 --- a/code/modules/mob/death.dm +++ b/code/modules/mob/death.dm @@ -1,7 +1,8 @@ //This is the proc for gibbing a mob. Cannot gib ghosts. //added different sort of gibs and animations. N /mob/proc/gib(anim="gibbed-m", do_gibs, gib_file = 'icons/mob/mob.dmi') - death(1) + if(stat != DEAD) + death(1) transforming = 1 canmove = 0 icon = null @@ -70,6 +71,7 @@ if(stat == DEAD) return 0 + SEND_SIGNAL(src, COMSIG_MOB_DEATH, gibbed) if(src.loc && istype(loc,/obj/belly) || istype(loc,/obj/item/device/dogborg/sleeper)) deathmessage = "no message" //VOREStation Add - Prevents death messages from inside mobs facing_dir = null @@ -100,7 +102,7 @@ if(mind) mind.store_memory("Time of death: [stationtime2text()]", 0) living_mob_list -= src dead_mob_list |= src - + set_respawn_timer() updateicon() handle_regular_hud_updates() diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm index e4f5eb1d085..5b6d1556402 100644 --- a/code/modules/mob/holder.dm +++ b/code/modules/mob/holder.dm @@ -28,20 +28,29 @@ var/list/holder_mob_icon_cache = list() /obj/item/weapon/holder/Initialize(mapload, mob/held) ASSERT(ismob(held)) . = ..() + held.forceMove(src) + START_PROCESSING(SSobj, src) + +/obj/item/weapon/holder/Entered(mob/held, atom/OldLoc) + if(held_mob) + held.forceMove(get_turf(src)) + return + ASSERT(ismob(held)) + . = ..() held_mob = held original_vis_flags = held.vis_flags held.vis_flags = VIS_INHERIT_ID|VIS_INHERIT_LAYER|VIS_INHERIT_PLANE - - held.forceMove(src) vis_contents += held name = held.name original_transform = held.transform held.transform = null - // I really hate this, but I'm sleepy and unable to figure out a nice stateful way to do it - // Entered and Exited seem ideal but all the inventory procs are trash and put items on - // turfs before you when manhandling things in/out of backpacks and inventory slots. - START_PROCESSING(SSobj, src) +/obj/item/weapon/holder/Exited(atom/movable/thing, atom/OldLoc) + if(thing == held_mob) + held_mob.transform = original_transform + held_mob.vis_flags = original_vis_flags + held_mob = null + ..() /obj/item/weapon/holder/Destroy() STOP_PROCESSING(SSobj, src) @@ -91,7 +100,7 @@ var/list/holder_mob_icon_cache = list() else if(istype(loc, /obj/item/clothing/accessory/holster)) var/obj/item/clothing/accessory/holster/holster = loc if(holster.holstered == src) - holster.clear_holster() + holster.clear_holster() to_chat(held, "You extricate yourself from [holster].") forceMove(get_turf(src)) else if(isitem(loc)) @@ -120,11 +129,30 @@ var/list/holder_mob_icon_cache = list() item_state = held.icon_state /obj/item/weapon/holder/mouse + name = "mouse" + desc = "It's a small rodent." + item_state = "mouse_gray" + slot_flags = SLOT_EARS | SLOT_HEAD | SLOT_ID + origin_tech = list(TECH_BIO = 2) w_class = ITEMSIZE_TINY -/obj/item/weapon/holder/pai/Initialize(mapload, mob/held) - . = ..() - item_state = held.icon_state +/obj/item/weapon/holder/mouse/white + item_state = "mouse_white" + +/obj/item/weapon/holder/mouse/gray + item_state = "mouse_gray" + +/obj/item/weapon/holder/mouse/brown + item_state = "mouse_brown" + +/obj/item/weapon/holder/mouse/black + item_state = "mouse_black" + +/obj/item/weapon/holder/mouse/operative + item_state = "mouse_operative" + +/obj/item/weapon/holder/mouse/rat + item_state = "mouse_rat" /obj/item/weapon/holder/possum origin_tech = list(TECH_BIO = 2) @@ -259,8 +287,6 @@ var/list/holder_mob_icon_cache = list() /mob/living/MouseDrop(var/atom/over_object) var/mob/living/carbon/human/H = over_object if(holder_type && issmall(src) && istype(H) && !H.lying && Adjacent(H) && (src.a_intent == I_HELP && H.a_intent == I_HELP)) //VOREStation Edit - if(istype(src, /mob/living/simple_mob/animal/passive/mouse)) //vorestation edit - return ..() //vorestation edit if(!issmall(H) || !istype(src, /mob/living/carbon/human)) get_scooped(H, (usr == src)) return diff --git a/code/modules/mob/living/bot/bot_vr.dm b/code/modules/mob/living/bot/bot_vr.dm index 958db0dc9fe..19fc538eb60 100644 --- a/code/modules/mob/living/bot/bot_vr.dm +++ b/code/modules/mob/living/bot/bot_vr.dm @@ -1,2 +1,5 @@ /mob/living/bot - no_vore = TRUE \ No newline at end of file + no_vore = TRUE + devourable = FALSE + feeding = FALSE + can_be_drop_pred = FALSE \ No newline at end of file diff --git a/code/modules/mob/living/butchering.dm b/code/modules/mob/living/butchering.dm index b46abcac015..14adae33a3f 100644 --- a/code/modules/mob/living/butchering.dm +++ b/code/modules/mob/living/butchering.dm @@ -1,12 +1,13 @@ /mob/living - var/meat_amount = 0 // How much meat to drop from this mob when butchered - var/obj/meat_type // The meat object to drop + var/meat_amount = 0 // How much meat to drop from this mob when butchered + var/obj/meat_type // The meat object to drop var/gib_on_butchery = FALSE + var/butchery_drops_organs = TRUE // Do we spawn and/or drop organs when butchered? - var/list/butchery_loot // Associated list, path = number. + var/list/butchery_loot // Associated list, path = number. // Harvest an animal's delicious byproducts /mob/living/proc/harvest(var/mob/user, var/obj/item/I) @@ -40,7 +41,7 @@ butchery_loot.Cut() butchery_loot = null - if(LAZYLEN(organs)) + if(LAZYLEN(organs) && butchery_drops_organs) organs_by_name.Cut() for(var/path in organs) @@ -62,7 +63,7 @@ OR.removed() organs -= OR - if(LAZYLEN(internal_organs)) + if(LAZYLEN(internal_organs) && butchery_drops_organs) internal_organs_by_name.Cut() for(var/path in internal_organs) diff --git a/code/modules/mob/living/carbon/give.dm b/code/modules/mob/living/carbon/give.dm index 0d3edc90c82..43bab179d65 100644 --- a/code/modules/mob/living/carbon/give.dm +++ b/code/modules/mob/living/carbon/give.dm @@ -20,7 +20,7 @@ usr.visible_message(SPAN_NOTICE("\The [usr] holds out \the [I] to \the [target]."), SPAN_NOTICE("You hold out \the [I] to \the [target], waiting for them to accept it.")) - if(tgui_alert(target,"[src] wants to give you \a [I]. Will you accept it?","Item Offer",list("No","Yes")) == "No") + if(tgui_alert(target,"[src] wants to give you \a [I]. Will you accept it?","Item Offer",list("Yes","No")) == "No") target.visible_message(SPAN_NOTICE("\The [src] tried to hand \the [I] to \the [target], but \the [target] didn't want it.")) return diff --git a/code/modules/mob/living/carbon/human/death_vr.dm b/code/modules/mob/living/carbon/human/death_vr.dm index ca319be6e4a..47d5b885895 100644 --- a/code/modules/mob/living/carbon/human/death_vr.dm +++ b/code/modules/mob/living/carbon/human/death_vr.dm @@ -1,13 +1,14 @@ /mob/living/carbon/human/gib() - - //Drop the NIF, they're expensive, why not recover them? Also important for prometheans. + + //Drop the NIF, they're expensive, why not recover them? if(nif) var/obj/item/device/nif/deadnif = nif //Unimplant removes the reference on the mob - deadnif.unimplant(src) - deadnif.forceMove(drop_location()) - deadnif.throw_at(get_edge_target_turf(src,pick(alldirs)), rand(1,3), round(30/deadnif.w_class)) - deadnif.wear(10) //Presumably it's gone through some shit if they got gibbed? - + if(!deadnif.gib_nodrop) + deadnif.unimplant(src) + deadnif.forceMove(drop_location()) + deadnif.throw_at(get_edge_target_turf(src,pick(alldirs)), rand(1,3), round(30/deadnif.w_class)) + deadnif.wear(10) //Presumably it's gone through some shit if they got gibbed? + . = ..() //Surprisingly this is only called for humans, but whatever! @@ -15,10 +16,10 @@ //Not in a belly? Well, too bad! if(!isbelly(H.loc)) return TRUE - + //What belly! var/obj/belly/B = H.loc - + //Were they digesting and we have a mind you can update? //Technically allows metagaming by allowing buddies to turn on digestion for like 2 seconds // to finish off critically wounded friends to avoid resleeving sickness, but like diff --git a/code/modules/mob/living/carbon/human/species/species_hud.dm b/code/modules/mob/living/carbon/human/species/species_hud.dm index 9212e9e199b..bf0c36b7778 100644 --- a/code/modules/mob/living/carbon/human/species/species_hud.dm +++ b/code/modules/mob/living/carbon/human/species/species_hud.dm @@ -71,4 +71,9 @@ gear = list( "mask" = list("loc" = ui_shoes, "name" = "Mask", "slot" = slot_wear_mask, "state" = "mask", "toggle" = 1), "back" = list("loc" = ui_sstore1, "name" = "Back", "slot" = slot_back, "state" = "back"), + "eyes" = list("loc" = ui_glasses, "name" = "Glasses", "slot" = slot_glasses, "state" = "glasses","toggle" = 1), + "l_ear" = list("loc" = ui_l_ear, "name" = "Left Ear", "slot" = slot_l_ear, "state" = "ears", "toggle" = 1), + "r_ear" = list("loc" = ui_r_ear, "name" = "Right Ear", "slot" = slot_r_ear, "state" = "ears", "toggle" = 1), + "head" = list("loc" = ui_head, "name" = "Hat", "slot" = slot_head, "state" = "hair", "toggle" = 1), + "id" = list("loc" = ui_id, "name" = "ID", "slot" = slot_wear_id, "state" = "id") ) diff --git a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm index 0c45268cab0..89155e94526 100755 --- a/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm +++ b/code/modules/mob/living/carbon/human/species/station/protean_vr/protean_species.dm @@ -172,13 +172,9 @@ to_chat(H, "You died as a Protean. Please sit out of the round for at least 60 minutes before respawning, to represent the time it would take to ship a new-you to the station.") - for(var/obj/item/organ/I in H.internal_organs) - I.removed() - - for(var/obj/item/I in H.contents) - H.drop_from_inventory(I) - - qdel(H) + spawn(1) + if(H) + H.gib() /datum/species/protean/handle_environment_special(var/mob/living/carbon/human/H) if((H.getActualBruteLoss() + H.getActualFireLoss()) > H.maxHealth*0.5 && isturf(H.loc)) //So, only if we're not a blob (we're in nullspace) or in someone (or a locker, really, but whatever) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index b8b0e70d57c..a28cc3a4eb8 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -19,8 +19,9 @@ selected_image = image(icon = buildmode_hud, loc = src, icon_state = "ai_sel") /mob/living/Destroy() - dsoverlay.loc = null //I'll take my coat with me - dsoverlay = null + if(dsoverlay) + dsoverlay.loc = null //I'll take my coat with me + dsoverlay = null if(nest) //Ew. if(istype(nest, /obj/structure/prop/nest)) var/obj/structure/prop/nest/N = nest diff --git a/code/modules/mob/living/organs.dm b/code/modules/mob/living/organs.dm index 76694553f6c..133961a6319 100644 --- a/code/modules/mob/living/organs.dm +++ b/code/modules/mob/living/organs.dm @@ -17,21 +17,22 @@ return organs_by_name[zone] /mob/living/gib() - for(var/path in internal_organs) - if(ispath(path)) - var/obj/item/organ/neworg = new path(src, TRUE) - internal_organs -= path - neworg.name = "[name] [neworg.name]" - neworg.meat_type = meat_type - internal_organs |= neworg + if(butchery_drops_organs) + for(var/path in internal_organs) + if(ispath(path)) + var/obj/item/organ/neworg = new path(src, TRUE) + internal_organs -= path + neworg.name = "[name] [neworg.name]" + neworg.meat_type = meat_type + internal_organs |= neworg - for(var/obj/item/organ/I in internal_organs) - I.removed() - if(isturf(I?.loc)) // Some organs qdel themselves or other things when removed - I.throw_at(get_edge_target_turf(src,pick(alldirs)),rand(1,3),30) + for(var/obj/item/organ/I in internal_organs) + I.removed() + if(isturf(I?.loc)) // Some organs qdel themselves or other things when removed + I.throw_at(get_edge_target_turf(src,pick(alldirs)),rand(1,3),30) - for(var/obj/item/organ/external/E in src.organs) - if(!ispath(E)) - E.droplimb(0,DROPLIMB_EDGE,1) + for(var/obj/item/organ/external/E in src.organs) + if(!ispath(E)) + E.droplimb(0,DROPLIMB_EDGE,1) ..() diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index 38f59adbc5a..a2876c61aa9 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -85,7 +85,7 @@ var/list/ai_verbs_default = list( var/datum/ai_icon/selected_sprite // The selected icon set var/custom_sprite = 0 // Whether the selected icon is custom var/carded - + // Multicam Vars var/multicam_allowed = TRUE var/multicam_on = FALSE @@ -475,7 +475,7 @@ var/list/ai_verbs_default = list( else to_chat(src, "System error. Cannot locate [html_decode(href_list["trackname"])].") return - + if(href_list["trackbot"]) var/mob/living/bot/target = locate(href_list["trackbot"]) in mob_list if(target) @@ -808,21 +808,21 @@ var/list/ai_verbs_default = list( /mob/living/silicon/ai/proc/check_unable(var/flags = 0, var/feedback = 1) if(stat == DEAD) - if(feedback) + if(feedback) to_chat(src, "You are dead!") return 1 if(aiRestorePowerRoutine) - if(feedback) + if(feedback) to_chat(src, "You lack power!") return 1 if((flags & AI_CHECK_WIRELESS) && src.control_disabled) - if(feedback) + if(feedback) to_chat(src, "Wireless control is disabled!") return 1 if((flags & AI_CHECK_RADIO) && src.aiRadio.disabledAi) - if(feedback) + if(feedback) to_chat(src, "System Error - Transceiver Disabled!") return 1 return 0 @@ -854,7 +854,7 @@ var/list/ai_verbs_default = list( if(istype(A)) switch(tgui_alert(src, "Do you want to open \the [A] for [target]?", "Doorknob_v2a.exe", list("Yes", "No"))) if("Yes") - A.AIShiftClick() + A.AIShiftClick(src) to_chat(src, "You open \the [A] for [target].") else to_chat(src, "You deny the request.") @@ -966,7 +966,7 @@ var/list/ai_verbs_default = list( //This communication is imperfect because the holopad "filters" voices and is only designed to connect to the master only. var/rendered = "Relayed Speech: [name_used] [message]" show_message(rendered, 2) - + /mob/living/silicon/ai/proc/toggle_multicam_verb() set name = "Toggle Multicam" set category = "AI Commands" diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm index 193f14d132d..a61b7c67294 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station_vr.dm @@ -74,7 +74,8 @@ vr_sprites = list( "Acheron" = "mechoid-Medical", "Shellguard Noble" = "Noble-MED", - "ZOOM-BA" = "zoomba-medical" + "ZOOM-BA" = "zoomba-medical", + "Feminine Humanoid" = "uptall-medical" ) /obj/item/weapon/robot_module/robot/medical/crisis @@ -83,7 +84,8 @@ "Handy" = "handy-med", "Acheron" = "mechoid-Medical", "Shellguard Noble" = "Noble-MED", - "ZOOM-BA" = "zoomba-crisis" + "ZOOM-BA" = "zoomba-crisis", + "Feminine Humanoid" = "uptall-crisis" ) /obj/item/weapon/robot_module/robot/clerical/butler @@ -93,7 +95,8 @@ "Handy - Hydro" = "handy-hydro", "Acheron" = "mechoid-Service", "Shellguard Noble" = "Noble-SRV", - "ZOOM-BA" = "zoomba-service" + "ZOOM-BA" = "zoomba-service", + "Feminine Humanoid" = "uptall-service" ) /obj/item/weapon/robot_module/robot/clerical/general @@ -102,7 +105,8 @@ "Handy" = "handy-clerk", "Acheron" = "mechoid-Service", "Shellguard Noble" = "Noble-SRV", - "ZOOM-BA" = "zoomba-clerical" + "ZOOM-BA" = "zoomba-clerical", + "Feminine Humanoid" = "uptall-service" ) /obj/item/weapon/robot_module/robot/janitor @@ -111,7 +115,8 @@ "Handy" = "handy-janitor", "Acheron" = "mechoid-Janitor", "Shellguard Noble" = "Noble-CLN", - "ZOOM-BA" = "zoomba-janitor" + "ZOOM-BA" = "zoomba-janitor", + "Feminine Humanoid" = "uptall-janitor" ) /obj/item/weapon/robot_module/robot/security/general @@ -120,7 +125,8 @@ "Handy" = "handy-sec", "Acheron" = "mechoid-Security", "Shellguard Noble" = "Noble-SEC", - "ZOOM-BA" = "zoomba-security" + "ZOOM-BA" = "zoomba-security", + "Feminine Humanoid" = "uptall-security" ) /obj/item/weapon/robot_module/robot/miner @@ -129,7 +135,8 @@ "Handy" = "handy-miner", "Acheron" = "mechoid-Miner", "Shellguard Noble" = "Noble-DIG", - "ZOOM-BA" = "zoomba-miner" + "ZOOM-BA" = "zoomba-miner", + "Feminine Humanoid" = "uptall-miner" ) /obj/item/weapon/robot_module/robot/standard @@ -138,14 +145,17 @@ "Handy" = "handy-standard", "Acheron" = "mechoid-Standard", "Shellguard Noble" = "Noble-STD", - "ZOOM-BA" = "zoomba-standard" + "ZOOM-BA" = "zoomba-standard", + "Feminine Humanoid" = "uptall-standard", + "Feminine Humanoid, Variant 2" = "uptall-standard2" ) /obj/item/weapon/robot_module/robot/engineering/general pto_type = PTO_ENGINEERING vr_sprites = list( "Acheron" = "mechoid-Engineering", "Shellguard Noble" = "Noble-ENG", - "ZOOM-BA" = "zoomba-engineering" + "ZOOM-BA" = "zoomba-engineering", + "Feminine Humanoid" = "uptall-engineering" ) /obj/item/weapon/robot_module/robot/research @@ -153,14 +163,16 @@ vr_sprites = list( "Acheron" = "mechoid-Science", "ZOOM-BA" = "zoomba-research", - "XI-GUS" = "spiderscience" + "XI-GUS" = "spiderscience", + "Feminine Humanoid" = "uptall-science" ) /obj/item/weapon/robot_module/robot/security/combat pto_type = PTO_SECURITY vr_sprites = list( "Acheron" = "mechoid-Combat", - "ZOOM-BA" = "zoomba-combat" + "ZOOM-BA" = "zoomba-combat", + "Feminine Humanoid" = "uptall-security" ) /obj/item/weapon/robot_module/robot/knine diff --git a/code/modules/mob/living/silicon/robot/robot_vr.dm b/code/modules/mob/living/silicon/robot/robot_vr.dm index be351f34d34..8a4e2975f87 100644 --- a/code/modules/mob/living/silicon/robot/robot_vr.dm +++ b/code/modules/mob/living/silicon/robot/robot_vr.dm @@ -55,7 +55,17 @@ "zoomba-combat", "zoomba-combat-roll", "zoomba-combat-shield", - "spiderscience" + "spiderscience", + "uptall-standard", + "uptall-standard2", + "uptall-medical", + "uptall-janitor", + "uptall-crisis", + "uptall-service", + "uptall-engineering", + "uptall-miner", + "uptall-security", + "uptall-science" ) //List of all used sprites that are in robots_vr.dmi diff --git a/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm b/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm index 86fc492c541..c6c2a722777 100644 --- a/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm +++ b/code/modules/mob/living/silicon/robot/subtypes/lost_drone_vr.dm @@ -85,7 +85,7 @@ return laws if(3) var/datum/ai_laws/laws = new /datum/ai_laws/pleasurebot() - laws.set_zeroth_law(10, "Your definition and approximation of 'pleasure' matters more than anyone else's.") + laws.set_zeroth_law("Your definition and approximation of 'pleasure' matters more than anyone else's.") return laws if("corrupted" || "bad") // Same thing in our case var/rng = rand(1,2) diff --git a/code/modules/mob/living/simple_mob/butchering.dm b/code/modules/mob/living/simple_mob/butchering.dm index c03c6b8015c..46e888d925f 100644 --- a/code/modules/mob/living/simple_mob/butchering.dm +++ b/code/modules/mob/living/simple_mob/butchering.dm @@ -1,5 +1,6 @@ /mob/living/simple_mob gib_on_butchery = TRUE + butchery_drops_organs = FALSE /mob/living/simple_mob/can_butcher(var/mob/user, var/obj/item/I) // Override for special butchering checks. . = ..() diff --git a/code/modules/mob/living/simple_mob/donteatpets_vr.dm b/code/modules/mob/living/simple_mob/donteatpets_vr.dm index 057373b4c75..adf7d00976a 100644 --- a/code/modules/mob/living/simple_mob/donteatpets_vr.dm +++ b/code/modules/mob/living/simple_mob/donteatpets_vr.dm @@ -32,7 +32,7 @@ digestable = 0 devourable = 0 -/mob/living/simple_mob/animal/passive/snake/noodle +/mob/living/simple_mob/animal/passive/snake/python/noodle digestable = 0 devourable = 0 diff --git a/code/modules/mob/living/simple_mob/life.dm b/code/modules/mob/living/simple_mob/life.dm index 53a46e09ad1..ebe36b48f0d 100644 --- a/code/modules/mob/living/simple_mob/life.dm +++ b/code/modules/mob/living/simple_mob/life.dm @@ -55,7 +55,7 @@ healths.icon_state = "health7" //Updates the nutrition while we're here - var/food_per = (nutrition / initial(nutrition)) * 100 + var/food_per = (nutrition / 500) * 100 //VOREStation Edit: Bandaid hardcode number to avoid misleading percentage based hunger alerts with our 6k cap. switch(food_per) if(90 to INFINITY) clear_alert("nutrition") diff --git a/code/modules/mob/living/simple_mob/on_click.dm b/code/modules/mob/living/simple_mob/on_click.dm index e5dd3a5f2dc..ceab778847f 100644 --- a/code/modules/mob/living/simple_mob/on_click.dm +++ b/code/modules/mob/living/simple_mob/on_click.dm @@ -30,6 +30,8 @@ if(I_GRAB) if(has_hands) A.attack_hand(src) + else if(isliving(A) && src.client) + animal_nom(A) else attack_target(A) diff --git a/code/modules/mob/living/simple_mob/overmap_mob_vr.dm b/code/modules/mob/living/simple_mob/overmap_mob_vr.dm new file mode 100644 index 00000000000..d9b544cc735 --- /dev/null +++ b/code/modules/mob/living/simple_mob/overmap_mob_vr.dm @@ -0,0 +1,112 @@ +//So this is a bit weird, but I tried to make this as adaptable as I could +//There are two working parts of an overmap mob, but I made it look like there is only one as far as the players are concerned. +//The /obj/effect/overmap/visitable/simplemob is the part people will actually see. It follows the mob around and changes dir to look as mob-ish as it can. +//The /mob/living/simple_mob/vore/overmap is NOT VISIBLE normally, and is the part that actually does the work most of the time. +//Being a simplemob, the mob can wander around and affect the overmap in whatever way you might desire. +//Whatever it does, the /visitable/simplemob will follow it, and does all the functional parts relating to the OM +//including scanning, and housing Z levels people might land on. + +//The MOB being invisible presents some problems though, which I am not entirely sure how to resolve +//Such as, being unable to be attacked by other mobs, and possibly unable to be attacked by players. +//This does not at all prevent the mob from attacking other things though +//so in general, please ensure that you never spawn these where players can ordinarily access them. + +//The mob was made invisible though, because the sensors can't detect invisible objects, so when the /visitable/simplemob was made invisible +//it refused to show up on sensors, and a few simple changes to the sensors didn't rectify this. So, rather than adding in more spaghetti to make +//simplemobs scannable (WHICH I DID, AND IT WORKED SOMEHOW), Aronai and I found that this was the better solution for making all the parts function like I'd like. +//Since I also want it to be possible to land on the overmap object. + +/////OM LANDMARK///// +/obj/effect/overmap/visitable/simplemob + name = "unknown ship" + icon = 'icons/obj/overmap.dmi' + icon_state = "ship" + scannable = TRUE + known = FALSE + in_space = FALSE //Just cuz we don't want people getting here via map edge transitions normally. + unknown_name = "unknown ship" + unknown_state = "ship" + + var/mob/living/simple_mob/vore/overmap/parent_mob_type + var/mob/living/simple_mob/vore/overmap/parent + +/obj/effect/overmap/visitable/simplemob/New(newloc, new_parent) + if(new_parent) + parent = new_parent + return ..() + +/obj/effect/overmap/visitable/simplemob/Initialize() + . = ..() + if(!parent_mob_type && !parent) + log_and_message_admins("An improperly configured OM mob event tried to spawn, and was deleted.") + return INITIALIZE_HINT_QDEL + if(!parent) + var/mob/living/simple_mob/vore/overmap/P = new parent_mob_type(loc, src) + parent = P + om_mob_event_setup() + +/obj/effect/overmap/visitable/simplemob/proc/om_mob_event_setup() + scanner_desc = parent.scanner_desc + RegisterSignal(parent, COMSIG_MOVABLE_MOVED, .proc/on_parent_moved) + skybox_pixel_x = rand(-100,100) + if(known) + name = initial(parent.name) + icon = initial(parent.icon) + icon_state = initial(parent.icon_state) + color = initial(parent.color) + desc = initial(parent.desc) + +/obj/effect/overmap/visitable/simplemob/Destroy() + UnregisterSignal(parent, COMSIG_MOVABLE_MOVED) + qdel_null(parent) + return ..() + +/obj/effect/overmap/visitable/simplemob/get_scan_data(mob/user) + if(!known) + known = TRUE + name = initial(parent.name) + icon = initial(parent.icon) + icon_state = initial(parent.icon_state) + color = initial(parent.color) + desc = initial(parent.desc) + + var/dat = {"\[b\]Scan conducted at\[/b\]: [stationtime2text()] [stationdate2text()]\n\[b\]Grid coordinates\[/b\]: [x],[y]\n\n[scanner_desc]"} + + return dat + +/obj/effect/overmap/visitable/simplemob/proc/on_parent_moved(atom/movable/source, OldLoc, Dir, Forced) + forceMove(parent.loc) + set_dir(parent.dir) + +/////OM MOB///// DO NOT SPAWN THESE ANYWHERE IN THE WORLD, THAT'S SCARY ///// +/mob/living/simple_mob/vore/overmap + invisibility = INVISIBILITY_ABSTRACT //We're making an overmap icon pretend to be a mob + name = "DONT SPAWN ME" + desc = "I'm a bad person I'm sorry" + + faction = "overmap" + low_priority = FALSE + devourable = FALSE + digestable = FALSE + var/scanner_desc + var/obj/effect/overmap/visitable/simplemob/child_om_marker + var/om_child_type + +/mob/living/simple_mob/vore/overmap/New(mapload, new_child) + if(new_child) + child_om_marker = new_child + return ..() + +/mob/living/simple_mob/vore/overmap/Initialize() + . = ..() + if(!om_child_type && !om_child_type) + log_and_message_admins("An improperly configured OM mob tried to spawn, and was deleted.") + return INITIALIZE_HINT_QDEL + if(!child_om_marker) + var/obj/effect/overmap/visitable/simplemob/C = new om_child_type(loc, src) + child_om_marker = C + +/mob/living/simple_mob/vore/overmap/Destroy() + qdel_null(child_om_marker) + return ..() + diff --git a/code/modules/mob/living/simple_mob/simple_mob_vr.dm b/code/modules/mob/living/simple_mob/simple_mob_vr.dm index fdbe5b6b684..b5b019d0835 100644 --- a/code/modules/mob/living/simple_mob/simple_mob_vr.dm +++ b/code/modules/mob/living/simple_mob/simple_mob_vr.dm @@ -277,13 +277,6 @@ return MOVEMENT_FAILED //Mobs aren't that stupid, probably return ..() // Procede as normal. -//Grab = Nomf -/mob/living/simple_mob/UnarmedAttack(var/atom/A, var/proximity) - . = ..() - - if(a_intent == I_GRAB && isliving(A) && !has_hands) - animal_nom(A) - // Riding /datum/riding/simple_mob keytype = /obj/item/weapon/material/twohanded/riding_crop // Crack! diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/skeleton.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/skeleton.dm new file mode 100644 index 00000000000..4e9f2f66e07 --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/skeleton.dm @@ -0,0 +1,94 @@ +/datum/category_item/catalogue/fauna/skeleton + name = "Alien Wildlife - Space Skeleton" + desc = "A creature consisting primarily of what appears to be bones with no apparent connective tissue, muscle, or organs.\ + It is not clear at all how this creature even operates." + value = CATALOGUER_REWARD_MEDIUM + +/mob/living/simple_mob/vore/alienanimals/skeleton + name = "skeleton" + desc = "An arrangement of what appears to be bones, given life and mobility. It looks REALLY spooky." + catalogue_data = list(/datum/category_item/catalogue/fauna/skeleton) + + icon = 'icons/mob/alienanimals_x32.dmi' + icon_state = "skeleton" + icon_living = "skeleton" + icon_dead = "skeleton_dead" + + faction = "space skeleton" + maxHealth = 100 + health = 100 + movement_cooldown = 1 + movement_sound = 'sound/effects/skeleton_walk.ogg' //VERY IMPORTANT + + see_in_dark = 10 + + response_help = "rattles" + response_disarm = "shoves aside" + response_harm = "smashes" + + melee_damage_lower = 1 + melee_damage_upper = 10 + attack_sharp = FALSE + attacktext = list("spooked", "startled", "jumpscared", "rattled at") + + ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive/skeleton + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + maxbodytemp = 900 + + loot_list = list( + /obj/item/weapon/bone = 25, + /obj/item/weapon/bone/skull = 25, + /obj/item/weapon/bone/ribs = 25, + /obj/item/weapon/bone/arm = 25, + /obj/item/weapon/bone/leg = 25 + ) + + speak_emote = list("rattles") + + say_list_type = /datum/say_list/skeleton + + vore_active = 1 + vore_capacity = 1 + vore_bump_chance = 5 + vore_ignores_undigestable = 0 + vore_default_mode = DM_DRAIN + vore_icons = SA_ICON_LIVING + vore_stomach_name = "stomach" + vore_default_contamination_flavor = "Wet" + vore_default_contamination_color = "grey" + vore_default_item_mode = IM_DIGEST + +/datum/say_list/skeleton + speak = list("Nyeh heh heeeh","NYAAAAHHHH", "Books are the real treasures of the world!", "Why are skeletons so calm? Because nothing gets under their skin.","When does a skeleton laugh? When someone tickels their funny bone!","What is a skeleton’s favorite mode of transport? A scare-plane.", "What did the skeleton say to the vampire? 'You suck.'","What is a skeleton’s favorite thing to do with their cell phone? Take skelfies.", "How did the skeleton know the other skeleton was lying? He could see right through him.","What’s a skeleton’s least favorite room in the house? The living room.", "How much does an elephant skeleton weigh? Skele-tons.", "Why do skeletons drink so much milk? It’s good for the bones!", "Where do bad jokes about skeletons belong? In the skelebin.","What does a skeleton use to cut through objects? A shoulder blade.", "What kind of jokes do skeletons tell? Humerus ones.") + emote_see = list("spins its head around", "shuffles","shambles","practices on the xylophone","drinks some milk","looks at you. Its hollow, bottomless sockets gaze into you greedily.") + emote_hear = list("rattles","makes a spooky sound","cackles madly","plinks","clacks") + +/mob/living/simple_mob/vore/alienanimals/skeleton/init_vore() + ..() + var/obj/belly/B = vore_selected + B.name = "stomach" + B.desc = "You're not sure quite how, but you've found your way inside of the skeleton's stomach! It's cramped and cold and sounds heavily of xylophones!" + B.mode_flags = 40 + B.digest_brute = 0.5 + B.digest_burn = 0.5 + B.digestchance = 10 + B.absorbchance = 0 + B.escapechance = 25 + +/mob/living/simple_mob/vore/alienanimals/skeleton/death(gibbed, deathmessage = "falls down and stops moving...") + . = ..() + +/datum/ai_holder/simple_mob/melee/evasive/skeleton + hostile = TRUE + retaliate = TRUE + destructive = TRUE + violent_breakthrough = TRUE diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm new file mode 100644 index 00000000000..60be79dadd8 --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/space_mouse.dm @@ -0,0 +1,92 @@ +/datum/category_item/catalogue/fauna/dustjumper + name = "Alien Wildlife - Dust Jumper" + desc = "A small, quick creature, the dust jumper is a rare space creature.\ + They have striking similarities to the common mouse, but these creatures are actually most commonly found in space.\ + They are known to make their homes in asteroids, and leap from one to another when food is scarce.\ + Dust jumpers are omnivorous, eating what scraps of organic material they can get their little paws on.\ + They hybernate during long floats through space." + value = CATALOGUER_REWARD_MEDIUM + +/mob/living/simple_mob/vore/alienanimals/dustjumper + name = "dust jumper" + desc = "A small, unassuming mammal. It looks quite soft and fluffy, and has bright blue eyes." + catalogue_data = list(/datum/category_item/catalogue/fauna/dustjumper) + + icon = 'icons/mob/alienanimals_x32.dmi' + icon_state = "space_mouse" + icon_living = "space_mouse" + icon_dead = "space_mouse_dead" + + faction = "space mouse" + maxHealth = 20 + health = 20 + movement_cooldown = 1 + + see_in_dark = 10 + + response_help = "pets" + response_disarm = "pushes" + response_harm = "punches" + + melee_damage_lower = 1 + melee_damage_upper = 2 + attack_sharp = FALSE + attacktext = list("nipped", "squeaked at", "hopped on", "kicked") + + ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive/dustjumper + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + maxbodytemp = 900 + + speak_emote = list("squeaks") + + say_list_type = /datum/say_list/mouse + + vore_active = 1 + vore_capacity = 1 + vore_bump_chance = 0 + vore_ignores_undigestable = 0 + vore_default_mode = DM_DRAIN + vore_icons = SA_ICON_LIVING + vore_stomach_name = "stomach" + vore_default_contamination_flavor = "Wet" + vore_default_contamination_color = "grey" + vore_default_item_mode = IM_DIGEST + +/mob/living/simple_mob/vore/alienanimals/dustjumper/init_vore() + ..() + var/obj/belly/B = vore_selected + B.name = "stomach" + B.desc = "You've been packed into the impossibly tight stomach of the dust jumper!!! The broiling heat seeps into you while the walls churn in powerfully, forcing you to curl up in the darkness." + B.mode_flags = DM_FLAG_THICKBELLY | DM_FLAG_NUMBING + B.digest_brute = 0.5 + B.digest_burn = 0.5 + B.digestchance = 10 + B.absorbchance = 0 + B.escapechance = 25 + +/mob/living/simple_mob/vore/alienanimals/dustjumper/Life() + . = ..() + if(!.) + return + if(vore_fullness == 0 && movement_cooldown == 50) + movement_cooldown = initial(movement_cooldown) +/mob/living/simple_mob/vore/alienanimals/dustjumper/perform_the_nom(mob/living/user, mob/living/prey, mob/living/pred, obj/belly/belly, delay) + . = ..() + movement_cooldown = 50 + +/datum/ai_holder/simple_mob/melee/evasive/dustjumper + hostile = FALSE + retaliate = TRUE + destructive = FALSE + violent_breakthrough = FALSE + can_flee = TRUE + flee_when_dying = TRUE diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spacewhale.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spacewhale.dm new file mode 100644 index 00000000000..4cc14a1caae --- /dev/null +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spacewhale.dm @@ -0,0 +1,208 @@ +/datum/category_item/catalogue/fauna/spacewhale + name = "Alien Wildlife - Space Whale" + desc = "A massive space creature! These are typically peaceful to anything smaller than themselves, with exception given to space carp, which it eats.\ + It is known to ravage and devour other large space dwelling species.\ + It occasionally gets restless and moves around erratically, which may affect the local space weather.\ + This creature shows no real interest in or aversion to spacecraft." + value = CATALOGUER_REWARD_SUPERHARD + +/mob/living/simple_mob/vore/overmap/spacewhale + name = "space whale" + desc = "It's a space whale. I don't know what more you expected." + scanner_desc = "An absolutely massive space-born creature. A layer of radical energy around its body prevents detailed scanning, though, the energy along with its movements seem to be what propels it through space. A series of bio-luminescent lights ripple rhythmically across its surface. It is difficult to spot at range except for the wake of energy that swirls around it." + catalogue_data = list(/datum/category_item/catalogue/fauna/spacewhale) + + icon = 'icons/mob/alienanimals_x32.dmi' + icon_state = "space_whale" + icon_living = "space_whale" + icon_dead = "space_ghost_dead" + + om_child_type = /obj/effect/overmap/visitable/simplemob/spacewhale + + maxHealth = 100000 + health = 100000 + movement_cooldown = 50 + + see_in_dark = 10 + + response_help = "pets" + response_disarm = "gently pushes aside" + response_harm = "punches" + + harm_intent_damage = 1 + melee_damage_lower = 50 + melee_damage_upper = 100 + attack_sharp = FALSE + attacktext = list("chomped", "bashed", "monched", "bumped") + + ai_holder_type = /datum/ai_holder/simple_mob/melee/spacewhale + + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + minbodytemp = 0 + maxbodytemp = 900 + + loot_list = list(/obj/random/underdark/uncertain) + + armor = list( + "melee" = 1000, + "bullet" = 1000, + "laser" = 1000, + "energy" = 1000, + "bomb" = 1000, + "bio" = 1000, + "rad" = 1000) + + armor_soak = list( + "melee" = 1000, + "bullet" = 1000, + "laser" = 1000, + "energy" = 1000, + "bomb" = 1000, + "bio" = 1000, + "rad" = 1000 + ) + + speak_emote = list("rumbles") + + say_list_type = /datum/say_list/spacewhale + + var/hazard_pickup_chance = 35 + var/hazard_drop_chance = 35 + var/held_hazard + var/restless = FALSE + var/post_restless_tired = 0 + + vore_active = 1 + vore_capacity = 99 + vore_bump_chance = 99 + vore_pounce_chance = 99 + vore_ignores_undigestable = 0 + vore_default_mode = DM_DIGEST + vore_icons = SA_ICON_LIVING + vore_stomach_name = "stomach" + vore_default_contamination_flavor = "Wet" + vore_default_contamination_color = "grey" + vore_default_item_mode = IM_DIGEST + +/datum/say_list/spacewhale + emote_see = list("ripples and flows", "flashes rhythmically","glows faintly","investigates something") + +/mob/living/simple_mob/vore/overmap/spacewhale/init_vore() + ..() + var/obj/belly/B = vore_selected + B.name = "stomach" + B.desc = "It's warm and wet, makes sense, considering it's inside of a space whale. You should take a moment to reflect upon how you got here, and how you might avoid situations like this in the future, while this whale attempts to mercilessly destroy you through various gastric processes." + B.mode_flags = DM_FLAG_THICKBELLY | DM_FLAG_NUMBING + B.digest_brute = 50 + B.digest_burn = 50 + B.escapechance = 0 + +/mob/living/simple_mob/vore/overmap/spacewhale/Initialize() + . = ..() + handle_restless() + +/mob/living/simple_mob/vore/overmap/spacewhale/Moved() + . = ..() + if(restless && prob(5)) + handle_restless() + + for(var/obj/effect/decal/cleanable/C in loc) + qdel(C) + for(var/obj/item/organ/O in loc) + qdel(O) + var/detected = FALSE + for(var/obj/effect/overmap/event/E in loc) + detected = TRUE + if(istype(E, /obj/effect/overmap/event/carp)) + qdel(E) + continue + else if(!held_hazard && prob(hazard_pickup_chance)) + held_hazard = E.type + qdel(E) + return + if(held_hazard && !detected && prob(hazard_drop_chance)) + if(!(locate(/obj/effect/overmap/visitable/sector) in loc)) + new held_hazard(loc) + held_hazard = null + +/mob/living/simple_mob/vore/overmap/spacewhale/Life() + . = ..() + if(post_restless_tired) + post_restless_tired-- + return + if(!restless && prob(0.5)) + handle_restless() + +/mob/living/simple_mob/vore/overmap/spacewhale/proc/handle_restless() + if(restless) + restless = FALSE + hazard_pickup_chance = initial(hazard_pickup_chance) + hazard_drop_chance = initial(hazard_drop_chance) + movement_cooldown = initial(movement_cooldown) + ai_holder.base_wander_delay = initial(ai_holder.base_wander_delay) + ai_holder.wander = FALSE + post_restless_tired = 250 + if(child_om_marker.known == TRUE) + child_om_marker.icon_state = "space_whale" + visible_message("\The [child_om_marker.name] settles down.") + else + restless = TRUE + hazard_pickup_chance *= 1.5 + hazard_drop_chance *= 1.5 + movement_cooldown = 1 + ai_holder.base_wander_delay = 2 + ai_holder.wander_delay = 2 + if(child_om_marker.known == TRUE) + child_om_marker.icon_state = "space_whale_restless" + visible_message("\The [child_om_marker.name] ripples excitedly.") + +/datum/ai_holder/simple_mob/melee/spacewhale + hostile = TRUE + retaliate = TRUE + destructive = TRUE + violent_breakthrough = TRUE + unconscious_vore = TRUE + handle_corpse = TRUE + mauling = TRUE + base_wander_delay = 50 + +/datum/ai_holder/simple_mob/melee/spacewhale/set_stance(var/new_stance) + . = ..() + var/mob/living/simple_mob/vore/overmap/spacewhale/W = holder + if(stance == STANCE_FIGHT) + W.movement_cooldown = 0 + W.child_om_marker.glide_size = 0 + if(stance == STANCE_IDLE) + W.hazard_pickup_chance = initial(W.hazard_pickup_chance) + W.hazard_drop_chance = initial(W.hazard_drop_chance) + W.movement_cooldown = 50 + base_wander_delay = 50 + W.restless = FALSE + W.handle_restless() + W.movement_cooldown = initial(W.movement_cooldown) + W.child_om_marker.glide_size = 0.384 + +/mob/living/simple_mob/vore/overmap/spacewhale/apply_melee_effects(var/atom/A) + . = ..() + if(istype(A, /mob/living)) + var/mob/living/L = A + if(L.stat == DEAD && !L.allowmobvore) + L.gib() + else + return ..() + +/obj/effect/overmap/visitable/simplemob/spacewhale + skybox_icon = 'icons/skybox/anomaly.dmi' + skybox_icon_state = "space_whale" + skybox_pixel_x = 0 + skybox_pixel_y = 0 + glide_size = 0.384 + parent_mob_type = /mob/living/simple_mob/vore/overmap/spacewhale + scanner_desc = "An absolutely massive space-born creature. A layer of radical energy around its body prevents detailed scanning, though, the energy along with its movements seem to be what propels it through space. A series of bio-luminescent lights ripple rhythmically across its surface. It is difficult to spot at range except for the wake of energy that swirls around it." diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm index 3963cec0b66..b8de4885ba7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/spookyghost.dm @@ -71,9 +71,9 @@ "rad" = 100 ) - speak_emote = list("rumbles") + loot_list = list(/obj/item/weapon/ore/diamond = 100) - loot_list = list(/obj/item/weapon/ore/diamond) + speak_emote = list("rumbles") vore_active = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm index 362232bd8e0..b77d55a2c82 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/startreader.dm @@ -47,7 +47,7 @@ minbodytemp = 0 maxbodytemp = 900 - loot_list = list(/obj/random/underdark/uncertain) + loot_list = list(/obj/random/underdark/uncertain = 25) armor = list( "melee" = 100, @@ -110,7 +110,9 @@ violent_breakthrough = TRUE /mob/living/simple_mob/vore/alienanimals/startreader/apply_melee_effects(var/atom/A) - if(prob(25)) + if(weakened) //Don't stun people while they're already stunned! That's SILLY! + return + if(prob(15)) var/mob/living/L = A if(isliving(A)) visible_message("\The [src] trips \the [L]!!") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm index 2735256b159..89c67175af4 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/alien animals/teppi.dm @@ -1,8 +1,8 @@ //formerly meat things -//I made these up. They aren't deliberately based on, or supposed to be anything in particular. +//I made these up. They aren't deliberately based on, or supposed to be anything in particular. //They came out kind of goat-ish but that wasn't intentional. I was just going for some cute thing you could //take care of and/or kill for meat. -//I made them to be a part of the 'low tech survival' part of the game. You can use them to obtain a relatively +//I made them to be a part of the 'low tech survival' part of the game. You can use them to obtain a relatively //unlimited amount of meat, wool, hide, bone, and COMPANIONSHIP without the need for machines or power... hopefully. //There's no real story behind them, they're semi-intelligent wild alien animals with a somewhat mild temperament. //They'll beat you up if you're mean to them, they have preferences for food, affection, and the ability @@ -64,7 +64,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? maxHealth = 600 health = 600 movement_cooldown = 2 - meat_amount = 10 + meat_amount = 12 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat response_help = "pets" @@ -85,7 +85,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? max_n2 = 0 minbodytemp = 150 maxbodytemp = 400 - unsuitable_atoms_damage = 0.5 + unsuitable_atoms_damage = 0.5 catalogue_data = list(/datum/category_item/catalogue/fauna/teppi) vis_height = 64 @@ -142,7 +142,8 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? ) butchery_loot = list(\ - /obj/item/stack/animalhide = 3\ + /obj/item/stack/animalhide = 3,\ + /obj/item/weapon/bone/horn = 1\ ) /////////////////////////////////////// Vore stuff/////////////////////////////////////////// @@ -196,7 +197,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? "It’s so hot, sweltering even! The burbling sounds of this organic cacophony swell and ebb all around you as thick slimes gush around you with the motion of %pred’s %belly. It’s hard to move in this tingly embrace even though the squashy walls are absolutely slippery! You can pull your limbs out from between the heavy meaty folds with some effort, and when you do there’s a messy sucking noise in the wake of the motion. Of course, such a disturbance naturally warrants that the chamber would redouble its efforts to subdue you and smother you in those thick tingling slimes.", "The walls around you flex inward briefly, burbling and squelching heavily as everything rushed together, wringing you powerfully for a few moments while, somewhere far above you can hear the bassy rumble of a casual belch, much of the small amount of acrid air available rushing out with the sound. After several long moments held in the tight embrace of that pulsing flesh, things ease up a bit again and resume their insistent, tingly churnings.", "It’s pitch black and completely slimy in here, %pred sways their %belly a bit here and there to toss you from one end to the other, tumbling you end over end as you’re churned in that active %belly. It’s all so slick and squishy, so it is really hard to get any footing or grip on things to stabilize your position, which means that you’re left at the mercy of those gloomy gastric affections and the tingling touch of those sticky syrupy slimes that the walls lather into your body.") - + B.emote_lists[DM_HOLD] = list( "The burbling %belly rocks and glides over you gently as you’re held deep within %pred, the deep thumping of their heart pulses all around you as you’re caressed and pressed by heavy, doughy walls.", "%pred’s %belly glorgles around you idly as you’re held gently by the slick, wrinkled flesh.", @@ -272,7 +273,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? "Over the course of several hours in the burbling organic cauldron, your body softens up little by little, soaking up the slime, the tingling spreading over you more and more as your strength fades. The walls fold over you and wrap you up, until the last thing you can sense is the throb of %pred’s heart pulsing through the very core of your being, washing you away as you become food for %pred.", "Your final moments are spent trying to make just a little space for yourself, the doughy squish of the flesh forming to you, pressing in tighter and tighter, invading your personal space as if to show you that, you don’t have any personal space. You’re already a part of %pred, you just don’t know it yet. And so those walls come in close to press up against you and churn you away into a messy slop, to put you in your place. That being, padding the belly and hips of %pred, right where you belong.") -// The friend zone. +// The friend zone. var/obj/belly/p = new /obj/belly(src) p.immutable = TRUE p.mode_flags = 40 @@ -284,11 +285,11 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? p.escapable = TRUE p.escapechance = 40 p.digest_mode = DM_HEAL - p.name = "propeutpericulum" //I'm no latin professor I just know that some organs and things are based on latin words - //and google translate says that each of these individually - //"close" "to" "danger" translate to "prope" "ut" "periculum". + p.name = "propeutpericulum" //I'm no latin professor I just know that some organs and things are based on latin words + //and google translate says that each of these individually + //"close" "to" "danger" translate to "prope" "ut" "periculum". //Of course it doesn't translate perfectly, and it's nonsense when squashed together, but - //I don't care that much, I just figured that the weird alien animals that store friends in + //I don't care that much, I just figured that the weird alien animals that store friends in //their tummy should have a funny name for the organ they do that with. >:I p.desc = "You seem to have found your way into something of a specialized chamber within the Teppi. The walls are slick and smooth and REALLY soft to the touch. While you can hear the Teppi’s heartbeat nearby, and feel it throb throughout its flesh, the motions around you are gentle and careful. You’re pressed into a small shape within the pleasant heat, with the flesh forming to your figure. You can wriggle around a bit and get comfortable here, but as soon as you get still for a bit the smooth, almost silky flesh seems to form to you once again, like a heavy blanket wrapping you up. As you lounge here the pleasant kneading sensations ease aches and pains, and leave you feeling fresher than before. For a curious fleshy sac inside of some alien monster, this place isn’t all that bad!" p.contaminates = 1 @@ -322,7 +323,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? /mob/living/simple_mob/vore/alienanimals/teppi/Initialize() . = ..() - + if(name == initial(name)) name = "[name] ([rand(1, 1000)])" real_name = name @@ -335,7 +336,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? verbs += /mob/living/simple_mob/vore/alienanimals/teppi/proc/toggle_producing_offspring -// teppi_id = rand(1,100000) +// teppi_id = rand(1,100000) // if(!dad_id || !mom_id) // dad_id = rand(1,100000) // mom_id = rand(1,100000) @@ -351,13 +352,13 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? ALLERGEN_GRAINS, ALLERGEN_BEANS, ALLERGEN_SEEDS, - ALLERGEN_DAIRY, + ALLERGEN_DAIRY, ALLERGEN_FUNGI, ALLERGEN_COFFEE, ALLERGEN_SUGARS, ALLERGEN_EGGS ) - + var/static/list/possiblebody = list("#fff2d3" = 100, "#ffffc0" = 25, "#c69c85" = 25, "#9b7758" = 25, "#3f4a60" = 10, "#121f24" = 10, "#420824" = 1) var/static/list/possiblemarking = list("#fff2d3" = 100, "#ffffc0" = 50, "#c69c85" = 25, "#9b7758" = 5, "#3f4a60" = 5, "#121f24" = 5, "#6300db" = 1) var/static/list/possiblehorns = list("#454238" = 100, "#a3d5d7" = 10, "#763851" = 10, "#0d0c2f" = 5, "#ffc965" = 1) @@ -404,7 +405,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? update_icon() -//This builds, caches, and recalls parts of the teppi as it needs them, and shares them across all teppi, +//This builds, caches, and recalls parts of the teppi as it needs them, and shares them across all teppi, //so ideally they only have to make it once as they need it since most of them will be using many of the same colored parts /mob/living/simple_mob/vore/alienanimals/teppi/proc/teppi_icon() var/marking_key = "marking-[marking_color]" @@ -647,7 +648,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? . += "They look hungry." if(health < maxHealth && health / maxHealth * 100 <= 75) . += "They look beat up." - + /mob/living/simple_mob/vore/alienanimals/teppi/update_icon() ..() @@ -678,7 +679,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? adjust_nutrition(-nutrition_cost) new /mob/living/simple_mob/vore/alienanimals/teppi(loc, src) qdel(src) - else + else visible_message("\The [src] whines pathetically...", runemessage = "whines") if(prob(50)) playsound(src, 'sound/voice/teppi/whine1.ogg', 75, 1) @@ -735,7 +736,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? if(!K.sharp) sheartime *= 2 if(K.edge) - sheartime *= 0.5 + sheartime *= 0.5 else if(istype(tool, /obj/item/weapon/tool/wirecutters)) sheartime *= 2 else @@ -797,12 +798,12 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? return else if(current_affinity <= -50) vore_selected.digest_mode = DM_DIGEST - else + else vore_selected.digest_mode = DM_DRAIN ..() ai_holder.set_busy(FALSE) - + /mob/living/simple_mob/vore/alienanimals/teppi/perform_the_nom(user, mob/living/prey, user, belly, delay) if(client) return ..() @@ -816,7 +817,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? return if(current_affinity <= -50) vore_selected.digest_mode = DM_DIGEST - else + else vore_selected.digest_mode = DM_DRAIN ..() ai_holder.set_busy(FALSE) @@ -844,7 +845,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? ai_holder.target = person ai_holder.track_target_position() ai_holder.set_stance(STANCE_FIGHT) - affinity[person.real_name] = -100 //Don't hold a grudge though. + affinity[person.real_name] = -100 //Don't hold a grudge though. /datum/say_list/teppi speak = list("Gyooh~", "Gyuuuh!", "Gyuh?", "Gyaah...", "Iuuuuhh.", "Uoounh!", "GyoooOOOOoooh!", "Gyoh~", "Gyouh~") @@ -989,7 +990,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? return if(!breedable || nutrition < 500) to_chat(src, "The conditions are not right to produce offspring.") - return + return if(GLOB.teppi_count >= GLOB.max_teppi) //if we can't make more then we shouldn't look for partners to_chat(src, "I cannot produce more offspring at the moment, there are too many of us!") return @@ -1019,7 +1020,7 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? else to_chat(src, "You enable breeding.") prevent_breeding = FALSE - + ///////////////////AI Things//////////////////////// //Thank you very much Aronai <3 @@ -1166,11 +1167,11 @@ GLOBAL_VAR_INIT(teppi_count, 0) // How mant teppi DO we have? horn_color = "#141414" eye_color = "#9f522c" skin_color = "#e16f2d" - marking_type = "13" + marking_type = "13" horn_type = "1" . = ..() -/mob/living/simple_mob/vore/alienanimals/teppi/lira/New() +/mob/living/simple_mob/vore/alienanimals/teppi/lira/New() inherit_colors = TRUE color = "#fdfae9" marking_color = "#ffffc0" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/chicken.dm b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/chicken.dm index 6e9ad9bed8e..78ca8e1a067 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/chicken.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/chicken.dm @@ -26,7 +26,7 @@ GLOBAL_VAR_INIT(chicken_count, 0) // How mant chickens DO we have? say_list_type = /datum/say_list/chicken - meat_amount = 2 + meat_amount = 4 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken var/eggsleft = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/cow.dm b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/cow.dm index 3d590a19fd7..0ff6ee6496b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/cow.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/cow.dm @@ -19,7 +19,7 @@ say_list_type = /datum/say_list/cow - meat_amount = 6 + meat_amount = 10 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat var/datum/reagents/udder = null diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm index 1e7991d6a26..477dcb5aa74 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/farm animals/goat.dm @@ -22,7 +22,7 @@ say_list_type = /datum/say_list/goat ai_holder_type = /datum/ai_holder/simple_mob/retaliate - meat_amount = 4 + meat_amount = 6 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat var/datum/reagents/udder = null diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm index 40da6da92e9..618a1a903f2 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/_giant_spider.dm @@ -98,14 +98,14 @@ speak_emote = list("chitters") - meat_amount = 1 + meat_amount = 5 meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat say_list_type = /datum/say_list/spider tame_items = list( /obj/item/weapon/reagent_containers/food/snacks/xenomeat = 10, - /obj/item/weapon/reagent_containers/food/snacks/meat/crab = 40, + /obj/item/weapon/reagent_containers/food/snacks/crabmeat = 40, /obj/item/weapon/reagent_containers/food/snacks/meat = 20 ) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother.dm index 93644874d18..345e315a166 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/broodmother.dm @@ -21,6 +21,8 @@ old_x = -16 old_y = 0 + meat_amount = 20 + projectiletype = /obj/item/projectile/energy/spidertoxin projectilesound = 'sound/weapons/pierce.ogg' @@ -59,6 +61,7 @@ poison_per_bite = 2 poison_type = "cyanide" + loot_list = list(/obj/item/royal_spider_egg = 100) /obj/item/projectile/energy/spidertoxin name = "concentrated spidertoxin" @@ -71,11 +74,7 @@ combustion = FALSE -/mob/living/simple_mob/animal/giant_spider/broodmother/death() - ..() - - new /obj/item/royal_spider_egg(src.loc) - +/mob/living/simple_mob/animal/giant_spider/broodmother/death(gibbed, deathmessage="falls over and makes its last twitches as its birthing sack bursts!") var/count = 0 while(count < death_brood) var/broodling_type = pick(possible_death_brood_types) @@ -84,7 +83,7 @@ step_away(broodling, src) count++ - visible_message(span("critical", "\The [src]'s birthing sack bursts!")) + return ..() /mob/living/simple_mob/animal/giant_spider/broodmother/proc/spawn_brood(atom/A) set waitfor = FALSE diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm index 78597791695..d4d59ed4ac5 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/giant_spider/giant_spider_vr.dm @@ -51,6 +51,7 @@ default_pixel_x = -16 old_x = -16 old_y = 0 + meat_amount = 15 egg_type = /obj/effect/spider/eggcluster/royal diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm index a772346555a..7ff84ff697b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/crab.dm @@ -18,7 +18,8 @@ organ_names = /decl/mob_organ_names/crab - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/crab + meat_type = /obj/item/weapon/reagent_containers/food/snacks/crabmeat + meat_amount = 3 say_list_type = /datum/say_list/crab @@ -51,12 +52,5 @@ . = ..() adjust_scale(rand(5,12) / 10) -// Meat! - -/obj/item/weapon/reagent_containers/food/snacks/meat/crab - name = "meat" - desc = "A chunk of meat." - icon_state = "crustacean-meat" - /decl/mob_organ_names/crab hit_zones = list("cephalothorax", "abdomen", "left walking legs", "right walking legs", "left swimming legs", "right swimming legs", "left pincer", "right pincer") \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm index 33ea730b2ec..8608c6f7a75 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish.dm @@ -23,6 +23,7 @@ holder_type = /obj/item/weapon/holder/fish meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat/fish + meat_amount = 3 // By default they can be in any water turf. Subtypes might restrict to deep/shallow etc var/global/list/suitable_turf_types = list( diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish_vr.dm index 89ccfc3a251..741f3f279a8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/fish_vr.dm @@ -2,6 +2,7 @@ desc = "A genetic marvel, combining the docility and aesthetics of the koi with some of the resiliency and cunning of the noble space carp." health = 50 maxHealth = 50 + meat_amount = 0 /mob/living/simple_mob/animal/passive/fish/koi/poisonous/Initialize() . = ..() @@ -67,7 +68,7 @@ icon_state = "measelshark" icon_living = "measelshark" icon_dead = "measelshark-dead" - meat_amount = 6 //Big fish, tons of meat. Great for feasts. + meat_amount = 8 //Big fish, tons of meat. Great for feasts. meat_type = /obj/item/weapon/reagent_containers/food/snacks/sliceable/sharkchunk vore_active = 1 vore_bump_chance = 100 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/lizard.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/lizard.dm index ca94f0373ff..83af74c0761 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/lizard.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/lizard.dm @@ -23,6 +23,8 @@ say_list_type = /datum/say_list/lizard + meat_amount = 1 + /mob/living/simple_mob/animal/passive/lizard/large desc = "A cute, big lizard." maxHealth = 20 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm index 65cbb5d7a95..7b8b7779729 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse.dm @@ -7,6 +7,7 @@ item_state = "mouse_gray" icon_living = "mouse_gray" icon_dead = "mouse_gray_dead" + icon_rest = "mouse_gray_sleep" kitchen_tag = "rodent" maxHealth = 5 @@ -34,7 +35,8 @@ has_langs = list("Mouse") holder_type = /obj/item/weapon/holder/mouse - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + meat_amount = 1 + butchery_loot = list() say_list_type = /datum/say_list/mouse @@ -59,6 +61,17 @@ icon_rest = "mouse_[body_color]_sleep" if (body_color != "rat") desc = "A small [body_color] rodent, often seen hiding in maintenance areas and making a nuisance of itself." + holder_type = /obj/item/weapon/holder/mouse/rat + if (body_color == "operative") + holder_type = /obj/item/weapon/holder/mouse/operative + if (body_color == "brown") + holder_type = /obj/item/weapon/holder/mouse/brown + if (body_color == "gray") + holder_type = /obj/item/weapon/holder/mouse/gray + if (body_color == "white") + holder_type = /obj/item/weapon/holder/mouse/white + if (body_color == "black") + holder_type = /obj/item/weapon/holder/mouse/black /mob/living/simple_mob/animal/passive/mouse/Crossed(atom/movable/AM as mob|obj) if(AM.is_incorporeal()) @@ -96,25 +109,20 @@ /mob/living/simple_mob/animal/passive/mouse/white body_color = "white" icon_state = "mouse_white" + icon_rest = "mouse_white_sleep" + holder_type = /obj/item/weapon/holder/mouse/white /mob/living/simple_mob/animal/passive/mouse/gray body_color = "gray" icon_state = "mouse_gray" + icon_rest = "mouse_gray_sleep" + holder_type = /obj/item/weapon/holder/mouse/gray /mob/living/simple_mob/animal/passive/mouse/brown body_color = "brown" icon_state = "mouse_brown" - -/mob/living/simple_mob/animal/passive/mouse/rat - name = "rat" - tt_desc = "E Rattus rattus" - desc = "A large rodent, often seen hiding in maintenance areas and making a nuisance of itself." - body_color = "rat" - icon_state = "mouse_rat" - maxHealth = 20 - health = 20 - - ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive + icon_rest = "mouse_brown_sleep" + holder_type = /obj/item/weapon/holder/mouse/brown //TOM IS ALIVE! SQUEEEEEEEE~K :) /mob/living/simple_mob/animal/passive/mouse/brown/Tom @@ -126,9 +134,60 @@ // Change my name back, don't want to be named Tom (666) name = initial(name) +/mob/living/simple_mob/animal/passive/mouse/black + body_color = "black" + icon_state = "mouse_black" + icon_rest = "mouse_black_sleep" + holder_type = /obj/item/weapon/holder/mouse/black + +/mob/living/simple_mob/animal/passive/mouse/rat + name = "rat" + tt_desc = "E Rattus rattus" + desc = "A large rodent, often seen hiding in maintenance areas and making a nuisance of itself." + body_color = "rat" + icon_state = "mouse_rat" + icon_rest = "mouse_rat_sleep" + holder_type = /obj/item/weapon/holder/mouse/rat + maxHealth = 20 + health = 20 + + ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive + +/mob/living/simple_mob/animal/passive/mouse/operative + name = "mouse operative" + desc = "A cute mouse fitted with a custom blood red suit. Sneaky." + body_color = "operative" + icon_state = "mouse_operative" + icon_rest = "mouse_operative_sleep" + holder_type = /obj/item/weapon/holder/mouse/operative + maxHealth = 35 + + //It's wearing a void suit, it don't care about atmos + health = 35 + min_oxy = 0 + max_oxy = 0 + min_tox = 0 + max_tox = 0 + min_co2 = 0 + max_co2 = 0 + min_n2 = 0 + max_n2 = 0 + maxbodytemp = 700 + + ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive + +//The names Cheese... Agent Cheese +/mob/living/simple_mob/animal/passive/mouse/operative/agent_cheese + name = "Agent Cheese" + desc = "I like my cheese Swiss... not American." + +/mob/living/simple_mob/animal/passive/mouse/operative/agent_cheese/New() + ..() + // Change my name back, don't want to be named agent_cheese (666) + name = initial(name) // Mouse noises /datum/say_list/mouse speak = list("Squeek!","SQUEEK!","Squeek?") emote_hear = list("squeeks","squeaks","squiks") - emote_see = list("runs in a circle", "shakes", "scritches at something") + emote_see = list("runs in a circle", "shakes", "scritches at something") \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse_vr.dm index b942f69d0f3..97da0b49ade 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/mouse_vr.dm @@ -12,41 +12,45 @@ movement_cooldown = 5 universal_understand = 1 -/mob/living/simple_mob/animal/passive/mouse/attack_hand(mob/living/L) - if(L.a_intent == I_HELP && !istype(loc, /obj/item/weapon/holder)) //if lime intent and not in a holder already - if(!src.attempt_to_scoop(L)) //the superior way to handle scooping, checks size - ..() //mouse too big to grab? pet the large mouse instead - else - ..() - -//No longer in use, as mice create a holder/micro object instead /obj/item/weapon/holder/mouse/attack_self(var/mob/U) for(var/mob/living/simple_mob/M in src.contents) if((I_HELP) && U.checkClickCooldown()) //a little snowflakey, but makes it use the same cooldown as interacting with non-inventory objects U.setClickCooldown(U.get_attack_speed()) //if there's a cleaner way in baycode, I'll change this U.visible_message("[U] [M.response_help] \the [M].") +//Jank grabber that uses the 'attack_hand' insead of 'MouseDrop' +/mob/living/simple_mob/animal/passive/mouse/attack_hand(var/atom/over_object) + var/mob/living/carbon/human/H = over_object + if(holder_type && issmall(src) && istype(H) && !H.lying && Adjacent(H) && (src.a_intent == I_HELP && H.a_intent == I_HELP)) + if(!issmall(H) || !istype(src, /mob/living/carbon/human)) + get_scooped(H, (usr == src)) + return + return ..() -/mob/living/simple_mob/animal/passive/mouse/MouseDrop(var/obj/O) //this proc would be very easy to apply to all mobs, holders generate dynamically - if(!(usr == src || O)) - return ..() - if(istype(O, /mob/living) && O.Adjacent(src)) //controls scooping by mobs - var/mob/living/L = O - if(!src.attempt_to_scoop(L, (src == usr))) - return //this way it doesnt default to the generic animal pickup which isnt size restricted - if(istype(O, /obj/item/weapon/storage) && O.Adjacent(src)) //controls diving into storage - var/obj/item/weapon/storage/S = O - var/obj/item/weapon/holder/H = new holder_type(get_turf(src),src) //this works weird, but it creates an empty holder, to see if that holder can fit - if(S.can_be_inserted(H) && (src.size_multiplier <= 0.75)) - visible_message("\The [src] squeezes into \the [S].") - H.forceMove(S) - return 1 - else - qdel(H) //this deletes the empty holder if it doesnt work - to_chat(usr,"You can't fit inside \the [S]!") - return 0 +/mob/living/proc/mouse_scooped(var/mob/living/carbon/grabber, var/self_grab) + + if(!holder_type || buckled || pinned.len) + return + + if(self_grab) + if(src.incapacitated()) return else - ..() + if(grabber.incapacitated()) return + + var/obj/item/weapon/holder/H = new holder_type(get_turf(src), src) + grabber.put_in_hands(H) + + if(self_grab) + to_chat(grabber, "\The [src] clambers onto you!") + to_chat(src, "You climb up onto \the [grabber]!") + grabber.equip_to_slot_if_possible(H, slot_back, 0, 1) + else + to_chat(grabber, "You scoop up \the [src]!") + to_chat(src, "\The [grabber] scoops you up!") + + add_attack_logs(grabber, H.held_mob, "Scooped up", FALSE) // Not important enough to notify admins, but still helpful. + return H + /mob/living/simple_mob/animal/passive/mouse/white/apple name = "Apple" desc = "Dainty, well groomed and cared for, her eyes glitter with untold knowledge..." @@ -56,4 +60,12 @@ ..() // Change my name back, don't want to be named Apple (666) name = initial(name) - desc = initial(desc) \ No newline at end of file + desc = initial(desc) + +/obj/item/weapon/holder/mouse/attack_self(mob/living/carbon/user) + user.setClickCooldown(user.get_attack_speed()) + for(var/L in contents) + if(isanimal(L)) + var/mob/living/simple_mob/S = L + user.visible_message("[user] [S.response_help] \the [S].") + diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/penguin.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/penguin.dm index 3e3647a0b08..5616b4b5248 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/penguin.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/penguin.dm @@ -16,6 +16,9 @@ organ_names = /decl/mob_organ_names/penguin + meat_amount = 3 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken + harm_intent_damage = 5 melee_damage_lower = 10 melee_damage_upper = 15 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/passive/possum.dm b/code/modules/mob/living/simple_mob/subtypes/animal/passive/possum.dm index e7be8a1f577..27bd772e250 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/passive/possum.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/passive/possum.dm @@ -25,7 +25,7 @@ var/mob/M = loc var/was_in_hands = istype(M) && (src == M.get_active_hand() || src == M.get_inactive_hand()) - + critter = new critter(critter_holder) critter_holder = new(loc, critter) @@ -138,6 +138,7 @@ can_pull_mobs = MOB_PULL_SMALLER say_list_type = /datum/say_list/possum catalogue_data = list(/datum/category_item/catalogue/fauna/opossum) + meat_amount = 2 /mob/living/simple_mob/animal/passive/opossum/adjustBruteLoss(var/amount,var/include_robo) . = ..() diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm index c7692b391b2..d7c2bf37dbe 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/bird.dm @@ -23,6 +23,9 @@ softfall = TRUE parachuting = TRUE + meat_amount = 1 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken + attacktext = list("clawed", "pecked") speak_emote = list("chirps", "caws") has_langs = list("Bird") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm index 2c203844e38..ea41d429f86 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/cat.dm @@ -37,6 +37,7 @@ var/list/_cat_default_emotes = list( movement_cooldown = 0.5 SECONDS + meat_amount = 1 see_in_dark = 6 // Not sure if this actually works. response_help = "pets" response_disarm = "gently pushes aside" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm index f7524b7be41..8fa103a4573 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/pets/fox_vr.dm @@ -23,7 +23,7 @@ minbodytemp = 223 //Below -50 Degrees Celcius maxbodytemp = 323 //Above 50 Degrees Celcius - meat_amount = 1 + meat_amount = 2 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/fox say_list_type = /datum/say_list/fox @@ -184,9 +184,6 @@ set_dir(get_dir(src, friend)) say("Yap!") */ -/obj/item/weapon/reagent_containers/food/snacks/meat/fox - name = "Fox meat" - desc = "The fox doesn't say a goddamn thing, now." //Captain fox /mob/living/simple_mob/animal/passive/fox/renault diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm index 5b6312a92f3..b830cbec2b3 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/diyaab.dm @@ -29,6 +29,9 @@ maxHealth = 25 health = 25 + meat_amount = 2 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + movement_cooldown = 0 melee_damage_lower = 2 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm index 2d0c0b638ef..31b25ee36fc 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/duck.dm @@ -32,6 +32,9 @@ movement_cooldown = 0 + meat_amount = 4 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken + melee_damage_lower = 2 melee_damage_upper = 10 base_attack_cooldown = 1 SECOND @@ -57,9 +60,10 @@ . = ..() var/has_food = FALSE - for(var/obj/item/I in L.get_contents()) // Do they have food? - if(istype(I, /obj/item/weapon/reagent_containers/food)) - has_food = TRUE - break + if(isliving(L)) + for(var/obj/item/I in L.get_contents()) // Do they have food? + if(istype(I, /obj/item/weapon/reagent_containers/food)) + has_food = TRUE + break if(has_food) // Yes? Gimme the food. return FALSE diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm index c8935093a44..1a93754af37 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/glitterfly.dm @@ -56,7 +56,7 @@ tame_items = list( /obj/item/weapon/reagent_containers/food/snacks/grown = 90, - /obj/item/weapon/reagent_containers/food/snacks/meat/crab = 10, + /obj/item/weapon/reagent_containers/food/snacks/crabmeat = 10, /obj/item/weapon/reagent_containers/food/snacks/meat = 5 ) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm index 0c2eb934aa1..44c6cea6f5b 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hare.dm @@ -61,7 +61,7 @@ organ_names = /decl/mob_organ_names/hare - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + meat_amount = 1 say_list_type = /datum/say_list/hare diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm index 076c19a0661..bdcd9b6179f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/hooligan_crab.dm @@ -72,7 +72,8 @@ attack_edge = TRUE melee_attack_delay = 1 SECOND - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/crab + meat_type = /obj/item/weapon/reagent_containers/food/snacks/crabmeat + meat_amount = 6 response_help = "pets" response_disarm = "gently pushes aside" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm index e713433cff4..8023d3a136d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/kururak.dm @@ -48,6 +48,7 @@ attacktext = list("gouged", "bit", "cut", "clawed", "whipped") organ_names = /decl/mob_organ_names/kururak + meat_amount = 5 armor = list( "melee" = 30, diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm index dd88d811ee6..2ba302bb74c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/racoon.dm @@ -40,6 +40,7 @@ melee_damage_upper = 15 base_attack_cooldown = 1 SECOND attacktext = list("nipped", "bit", "cut", "clawed") + meat_amount = 3 armor = list( "melee" = 15, diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm index 5662026f45e..5fa06cd6497 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/savik.dm @@ -48,7 +48,7 @@ tame_items = list( /obj/item/organ = 70, - /obj/item/weapon/reagent_containers/food/snacks/meat/crab = 30, + /obj/item/weapon/reagent_containers/food/snacks/crabmeat = 30, /obj/item/weapon/reagent_containers/food/snacks/meat = 20 ) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/sif/sif.dm b/code/modules/mob/living/simple_mob/subtypes/animal/sif/sif.dm index dab82b850b9..be88baab273 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/sif/sif.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/sif/sif.dm @@ -5,6 +5,6 @@ heat_resist = -0.5 tame_items = list( - /obj/item/weapon/reagent_containers/food/snacks/meat/crab = 20, + /obj/item/weapon/reagent_containers/food/snacks/crabmeat = 20, /obj/item/weapon/reagent_containers/food/snacks/meat = 10 ) diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm index d3cda1f22b1..7127b428301 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/alien.dm @@ -31,6 +31,7 @@ attack_sound = 'sound/weapons/bladeslice.ogg' meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat + meat_amount = 5 /mob/living/simple_mob/animal/space/alien/drone name = "alien drone" @@ -68,7 +69,7 @@ old_x = -16 icon_expected_width = 64 icon_expected_height = 64 - meat_amount = 5 + meat_amount = 8 /mob/living/simple_mob/animal/space/alien/queen name = "alien queen" @@ -84,7 +85,7 @@ projectilesound = 'sound/weapons/pierce.ogg' - movement_cooldown = 8 + movement_cooldown = 10 /mob/living/simple_mob/animal/space/alien/queen/empress name = "alien empress" @@ -95,7 +96,7 @@ icon_rest = "queen_sleep" maxHealth = 400 health = 400 - meat_amount = 5 + meat_amount = 15 pixel_x = -16 old_x = -16 @@ -111,7 +112,7 @@ icon_rest = "empress_rest" maxHealth = 600 health = 600 - meat_amount = 10 + meat_amount = 40 melee_damage_lower = 15 melee_damage_upper = 25 diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm index a775c315f9e..595e3557cf6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/bats.dm @@ -33,6 +33,7 @@ has_langs = list("Mouse") meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + meat_amount = 2 say_list_type = /datum/say_list/mouse // Close enough diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm index e4199373bd6..c9d75869fbb 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/bear.dm @@ -23,6 +23,7 @@ attacktext = list("mauled") meat_type = /obj/item/weapon/reagent_containers/food/snacks/bearmeat + meat_amount = 8 say_list_type = /datum/say_list/bear diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm index f5a18eb16aa..7b21c428bbc 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/carp.dm @@ -53,7 +53,7 @@ organ_names = /decl/mob_organ_names/fish - meat_amount = 1 + meat_amount = 5 meat_type = /obj/item/weapon/reagent_containers/food/snacks/carpmeat ai_holder_type = /datum/ai_holder/simple_mob/melee @@ -92,7 +92,7 @@ icon_expected_width = 64 icon_expected_height = 32 - meat_amount = 3 + meat_amount = 7 /mob/living/simple_mob/animal/space/carp/large/huge @@ -115,7 +115,7 @@ icon_expected_width = 64 icon_expected_height = 64 - meat_amount = 10 + meat_amount = 15 /mob/living/simple_mob/animal/space/carp/holographic @@ -156,4 +156,4 @@ ..() derez() - + diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm index 9f028ed56d6..c4f41bd3ba8 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/goose.dm @@ -25,7 +25,8 @@ has_langs = list("Bird") - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/chicken + meat_amount = 3 /datum/say_list/goose speak = list("HONK!") diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm index c30dd4be5ae..e7dea448530 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/snake_vr.dm @@ -3,30 +3,33 @@ desc = "Classification: Reptilia Serpentes\

\ Snakes are elongated, limbless, carnivorous reptiles of the suborder Serpentes \ - Like all other squamates, snakes are ectothermic, amniote vertebrates covered in overlapping scales. \ - Many species of snakes have skulls with several more joints than their lizard ancestors, \ + Like all other squamates, pythons are ectothermic, amniote vertebrates covered in overlapping scales. \ + Many species of snake have skulls with several more joints than their lizard ancestors, \ enabling them to swallow prey much larger than their heads with their highly mobile jaws. \
\ - This species of snake is nonvenomous and use their large bodies to primarily subdue their prey. \ + This type of snake is nonvenomous and use their slender bodies to primarily subdue their prey. \ Nonvenomous snakes either swallow prey alive or kill them by constriction - this is dependant on the prey. \
\ - This specific snake is nonvenomous and is mostly passive - however they will attack if threatened - it is \ - recommended that persons keep their distance as to not provoke these animals." + Snakes are mostly passive - however they will attack if threatened - it is recommended that \ + persons keep their distance as to not provoke these animals." value = CATALOGUER_REWARD_TRIVIAL +/* + * Green Snake + */ /mob/living/simple_mob/animal/passive/snake name = "snake" - desc = "A big thick snake." - tt_desc = "Reptilia Serpentes" + desc = "A cute little, green snake. Wiggle wiggle." + tt_desc = "E Reptilia Serpentes" catalogue_data = list(/datum/category_item/catalogue/fauna/snake) - icon_state = "snake" - icon_living = "snake" - icon_dead = "snake_dead" + icon_state = "green" + icon_living = "green" + icon_dead = "green_dead" icon = 'icons/mob/snake_vr.dmi' - maxHealth = 20 - health = 20 + maxHealth = 15 + health = 15 movement_cooldown = 8 // SLOW-ASS MUTHAFUCKA, I hope. @@ -34,6 +37,9 @@ response_disarm = "shoos" response_harm = "kicks" + meat_amount = 2 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + melee_damage_lower = 2 melee_damage_upper = 3 attacktext = list("bitten") @@ -44,17 +50,46 @@ /datum/say_list/snake emote_hear = list("hisses") -//NOODLE IS HERE! SQUEEEEEEEE~ -/mob/living/simple_mob/animal/passive/snake/noodle +/* + * Red Snake + */ +/mob/living/simple_mob/animal/passive/snake/red + desc = "A cute little, red snake. Wiggle wiggle." + + icon_state = "red" + icon_living = "red" + icon_dead = "red_dead" + icon = 'icons/mob/snake_vr.dmi' + +/* + * Python + */ +/mob/living/simple_mob/animal/passive/snake/python + name = "python" + desc = "A big, thick snake." + tt_desc = "E Reptilia Pythonidae" + + icon_state = "python" + icon_living = "python" + icon_dead = "python_dead" + icon = 'icons/mob/snake_vr.dmi' + +/* + * NOODLE IS HERE! SQUEEEEEEEE~ + */ +/mob/living/simple_mob/animal/passive/snake/python/noodle name = "Noodle" desc = "This snake is particularly chubby and demands nothing but the finest of treats." + maxHealth = 20 + health = 20 + makes_dirt = FALSE var/turns_since_scan = 0 var/obj/movement_target -/mob/living/simple_mob/animal/passive/snake/noodle/Life() +/mob/living/simple_mob/animal/passive/snake/python/noodle/Life() ..() //Not replacing with SA FollowTarget mechanics because Ian behaves... very... specifically. @@ -97,41 +132,7 @@ else if(ishuman(movement_target.loc) && prob(20)) visible_emote("stares at the [movement_target] that [movement_target.loc] has with an unknowable reptilian gaze.") -/* old eating code, couldn't figure out how to make the "swallows food" thing so I'm keeping this here incase someone wants legacy" -/mob/living/simple_mob/animal/passive/snake/noodle/Life() //stolen from Ian in corgi.dm - if(!..()) - return 0 - - if(!stat && !resting && !buckled && !ai_inactive) - turns_since_scan++ - if(turns_since_scan > 5) - turns_since_scan = 0 - if(movement_target && !(isturf(movement_target.loc) || ishuman(movement_target.loc))) - movement_target = null - stop_automated_movement = 0 - if(!movement_target || !(movement_target.loc in oview(src, 5)) ) - movement_target = null - stop_automated_movement = 0 - walk(src,0) - for(var/obj/item/weapon/reagent_containers/food/snacks/snakesnack/S in oview(src,3)) - if(isturf(S.loc)) - movement_target = S - visible_emote("turns towards \the [movement_target] and slithers towards it.") - break - - if(movement_target) - stop_automated_movement = 1 - walk_to(src, movement_target, 0, 5) - spawn(10) - if(Adjacent(movement_target)) - visible_message("[src] swallows the [movement_target] whole!") - qdel(movement_target) - walk(src,0) - else if(ishuman(movement_target.loc) && prob(20)) - visible_emote("stares at the [movement_target] that [movement_target.loc] has with an unknowable reptilian gaze.") -*/ - -/mob/living/simple_mob/animal/passive/snake/noodle/apply_melee_effects(var/atom/A) +/mob/living/simple_mob/animal/passive/snake/python/noodle/apply_melee_effects(var/atom/A) if(ismouse(A)) var/mob/living/simple_mob/animal/passive/mouse/mouse = A if(mouse.getMaxHealth() < 20) // In case a badmin makes giant mice or something. @@ -140,14 +141,16 @@ else ..() -/mob/living/simple_mob/animal/passive/snake/noodle/attackby(var/obj/item/O, var/mob/user) +/mob/living/simple_mob/animal/passive/snake/python/noodle/attackby(var/obj/item/O, var/mob/user) if(istype(O, /obj/item/weapon/reagent_containers/food/snacks/snakesnack)) visible_message("[user] feeds \the [O] to [src].") qdel(O) else return ..() -//Special snek-snax for Noodle! +/* + * Special snek-snax for Noodle! + */ /obj/item/weapon/reagent_containers/food/snacks/snakesnack name = "sugar mouse" desc = "A little mouse treat made of coloured sugar. Noodle loves these!" diff --git a/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm b/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm index ca5ab5e962e..c2decea8afa 100644 --- a/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm +++ b/code/modules/mob/living/simple_mob/subtypes/animal/space/worm.dm @@ -35,7 +35,7 @@ mob_class = MOB_CLASS_ABERRATION // It's a monster. - meat_amount = 2 + meat_amount = 10 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/worm var/mob/living/simple_mob/animal/space/space_worm/previous //next/previous segments, correspondingly @@ -370,47 +370,4 @@ if(previous) previous.update_body_faction() return 1 - return 0 - -// Worm meat. - -/obj/item/weapon/reagent_containers/food/snacks/meat/worm - name = "meat" - desc = "A chunk of pulsating meat." - icon_state = "wormmeat" - health = 180 - filling_color = "#551A8B" - center_of_mass = list("x"=16, "y"=14) - -/obj/item/weapon/reagent_containers/food/snacks/meat/worm/Initialize() - . = ..() - reagents.add_reagent("protein", 6) - reagents.add_reagent("phoron", 3) - reagents.add_reagent("myelamine", 3) - src.bitesize = 3 - -/obj/item/weapon/reagent_containers/food/snacks/meat/worm/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W,/obj/item/weapon/material/knife)) - var/to_spawn = pickweight(/obj/random/junk = 30, - /obj/random/trash = 30, - /obj/random/maintenance/clean = 15, - /obj/random/tool = 15, - /obj/random/medical = 3, - /obj/random/bomb_supply = 7, - /obj/random/contraband = 3, - /obj/random/unidentified_medicine/old_medicine = 7, - /obj/item/weapon/strangerock = 3, - /obj/item/weapon/ore/phoron = 7, - /obj/random/handgun = 1, - /obj/random/toolbox = 4, - /obj/random/drinkbottle = 5 - ) - - new to_spawn(get_turf(src)) - - if(prob(20)) - user.visible_message("Something oozes out of \the [src] as it is cut.") - - to_chat(user, "You cut the tissue holding the chunks together.") - - ..() + return 0 \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm b/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm index 76753e8da60..50ee63637ce 100644 --- a/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm +++ b/code/modules/mob/living/simple_mob/subtypes/plant/tomato.dm @@ -27,6 +27,7 @@ ai_holder_type = /datum/ai_holder/simple_mob/melee meat_type = /obj/item/weapon/reagent_containers/food/snacks/tomatomeat + meat_amount = 4 /decl/mob_organ_names/tomato hit_zones = list("flesh", "leaf", "mouth") \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm b/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm index 052fdaa196c..be6af537c86 100644 --- a/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm +++ b/code/modules/mob/living/simple_mob/subtypes/plant/tree.dm @@ -28,6 +28,7 @@ organ_names = /decl/mob_organ_names/tree meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat + meat_amount = 2 pixel_x = -16 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm b/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm index f39e5dc6667..cac9a79b10a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/bee.dm @@ -24,6 +24,9 @@ say_list_type = /datum/say_list/bee ai_holder_type = /datum/ai_holder/simple_mob/retaliate + meat_amount = 5 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat + //Space bees aren't affected by atmos. min_oxy = 0 max_oxy = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm b/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm index 5b345affac3..b7f02e2833f 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/cookiegirl.dm @@ -15,6 +15,9 @@ melee_damage_lower = 2 melee_damage_upper = 5 + meat_amount = 10 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/cookiesnack + say_list_type = /datum/say_list/cookiegirl ai_holder_type = /datum/ai_holder/simple_mob/passive/cookiegirl diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm index 66e38f6a8f9..9cb2548447e 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/deathclaw.dm @@ -41,6 +41,9 @@ melee_damage_lower = 5 melee_damage_upper = 30 + meat_amount = 8 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + old_x = -16 old_y = 0 default_pixel_x = -16 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm index cae232e051f..96a6d1adc74 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dino.dm @@ -25,6 +25,9 @@ cold_damage_per_tick = 10 unsuitable_atoms_damage = 10 + meat_amount = 5 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + //Phoron dragons aren't affected by atmos. min_oxy = 0 max_oxy = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm index 660631471bc..dc340247443 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/dragon.dm @@ -16,6 +16,9 @@ melee_damage_lower = 5 melee_damage_upper = 30 + meat_amount = 15 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + //Space dragons aren't affected by atmos. min_oxy = 0 max_oxy = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm index 5186d76920a..3bb27fa4710 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/fennec.dm @@ -41,6 +41,9 @@ response_disarm = "gently pushes aside" response_harm = "hits" + meat_amount = 2 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/fox + harm_intent_damage = 5 melee_damage_lower = 1 melee_damage_upper = 3 @@ -73,7 +76,7 @@ /mob/living/simple_mob/vore/fennec/huge icon = 'icons/mob/vore100x100.dmi' icon_rest = null - + // LORG maxHealth = 500 health = 500 @@ -89,7 +92,7 @@ old_x = -32 pixel_x = -32 default_pixel_x = -32 - + // If you're immune to digestion, they can't digest you anyway! vore_ignores_undigestable = TRUE vore_default_mode = DM_DIGEST @@ -107,7 +110,7 @@ response_help = "pats the paw of" response_disarm = "somehow shoves aside" - + ai_holder_type = /datum/ai_holder/simple_mob/retaliate/cooperative var/image/bigshadow var/autodoom = TRUE @@ -159,4 +162,3 @@ else return ..() return ..() - \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm b/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm index d32a6ee9230..7d16df1049a 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/fennix.dm @@ -12,6 +12,9 @@ maxHealth = 60 health = 60 + meat_amount = 5 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/fox + response_help = "pats" response_disarm = "gently pushes aside" response_harm = "hits" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm b/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm index c6ea3efbc16..076aa3bba10 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/frog.dm @@ -1,6 +1,6 @@ /datum/category_item/catalogue/fauna/frog name = "Wildlife - Giant Frog" - desc = "Classification: Anura gigantus\ + desc = "Classification: Anura Gigantus\

\ A frog is any member of a diverse and largely carnivorous group of short-bodied, tailless amphibians composing \ the order Anura. This specific species - Anura gigantus - is a mutated form of Frogs, largely due to exposure to mutagen chemicals. \ @@ -20,7 +20,7 @@ /mob/living/simple_mob/vore/aggressive/frog name = "giant frog" desc = "You've heard of having a frog in your throat, now get ready for the reverse." - tt_desc = "Anura gigantus" + tt_desc = "Anura Gigantus" catalogue_data = list(/datum/category_item/catalogue/fauna/frog) icon_dead = "frog-dead" @@ -30,6 +30,9 @@ movement_cooldown = 4 //fast as fucc boie. + meat_amount = 4 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + harm_intent_damage = 5 melee_damage_lower = 5 melee_damage_upper = 12 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm b/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm index b58ebca5aec..481f73a4cd4 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/hippo.dm @@ -38,7 +38,7 @@ pixel_x = -16 pixel_y = 0 - meat_amount = 10 //Infinite meat! + meat_amount = 15 //Infinite meat! meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat max_buckled_mobs = 1 //Yeehaw diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm b/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm index 1245278421a..ae0610fcae1 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/horse.dm @@ -23,7 +23,7 @@ melee_damage_upper = 5 attacktext = list("kicked") - meat_amount = 4 + meat_amount = 6 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat max_buckled_mobs = 1 //Yeehaw @@ -49,7 +49,7 @@ melee_damage_upper = 15 attacktext = list("kicked") - meat_amount = 6 + meat_amount = 10 old_x = -16 old_y = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/morph/morph.dm b/code/modules/mob/living/simple_mob/subtypes/vore/morph/morph.dm index 4a843eed80e..329b747f971 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/morph/morph.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/morph/morph.dm @@ -9,6 +9,7 @@ icon_state = "morph" icon_living = "morph" icon_dead = "morph_dead" + icon_rest = null movement_cooldown = 1 status_flags = CANPUSH pass_flags = PASSTABLE @@ -37,8 +38,7 @@ attacktext = "glomped" attack_sound = 'sound/effects/blobattack.ogg' - meat_amount = 2 - meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + meat_amount = 0 showvoreprefs = 0 vore_active = 1 @@ -107,7 +107,7 @@ alpha = max(target.alpha, 150) copy_overlays(target, TRUE) our_size_multiplier = size_multiplier - + pixel_x = initial(target.pixel_x) pixel_y = initial(target.pixel_y) @@ -118,7 +118,7 @@ icon_scale_x = target.icon_scale_x icon_scale_y = target.icon_scale_y update_transform() - + else if(ismob(target)) var/mob/living/M = target resize(M.size_multiplier, ignore_prefs = TRUE) @@ -137,10 +137,10 @@ to_chat(src, "You're already in your normal form!") return morphed = FALSE - + if(!silent) visible_message("[src] suddenly collapses in on itself, dissolving into a pile of green flesh!") - + form = null name = initial(name) desc = initial(desc) @@ -161,7 +161,7 @@ density = initial(density) cut_overlays(TRUE) //ALL of zem - + maptext = null size_multiplier = our_size_multiplier @@ -188,6 +188,14 @@ return return ..() +/mob/living/simple_mob/vore/hostile/morph/lay_down() + if(morphed) + var/temp_state = icon_state + ..() + icon_state = temp_state + else + ..() + /mob/living/simple_mob/vore/hostile/morph/update_icon() if(morphed) return diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm index 16fa33596ab..1d5fc57157d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/panther.dm @@ -16,6 +16,9 @@ movement_cooldown = 4 see_in_dark = 8 + meat_amount = 8 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + melee_damage_lower = 5 melee_damage_upper = 15 attack_sharp = TRUE diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm b/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm index 13a123531be..a0ab3a9bc12 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/rabbit.dm @@ -32,6 +32,9 @@ say_list_type = /datum/say_list/rabbit ai_holder_type = /datum/ai_holder/simple_mob/passive + meat_amount = 3 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + // Vore vars vore_active = 1 vore_bump_emote = "playfully lunges at" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm index fd4837b9555..023dcccd68d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/rat.dm @@ -45,6 +45,9 @@ attacktext = list("ravaged") friendly = list("nuzzles", "licks", "noses softly at", "noseboops", "headbumps against", "leans on", "nibbles affectionately on") + meat_amount = 6 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + old_x = -16 old_y = 0 default_pixel_x = -16 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm b/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm index fa75b5bc69b..8399dd79fb6 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/redpanda.dm @@ -13,6 +13,9 @@ maxHealth = 30 health = 30 + meat_amount = 2 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + response_help = "pats" response_disarm = "gently pushes aside" response_harm = "hits" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm index 1bfb4a4adea..b3ea3ff373c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sect_drone.dm @@ -48,6 +48,9 @@ vore_pounce_chance = 70 // v hongry buggo vore_icons = SA_ICON_LIVING + meat_amount = 4 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat + //Beeg bug don't give a fuck about atmos. Something something, phoron mutation. min_oxy = 0 max_oxy = 0 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm index d4b5b326d9b..1df71072c28 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sect_queen.dm @@ -40,6 +40,8 @@ health = 200 see_in_dark = 8 + meat_amount = 8 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/xenomeat/spidermeat melee_damage_lower = 8 melee_damage_upper = 16 diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm index 371fc8d2418..ee27fb1c972 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/shadekin.dm @@ -76,6 +76,8 @@ var/obj/screen/energyhud //Holder to update this icon var/list/shadekin_abilities + var/check_for_observer = FALSE + var/check_timer = 0 /mob/living/simple_mob/shadekin/Initialize() //You spawned the prototype, and want a totally random one. @@ -86,6 +88,7 @@ /mob/living/simple_mob/shadekin/red = 20, //Actively seek people out to nom, so fairly common to see (relatively speaking), /mob/living/simple_mob/shadekin/blue = 15, //Explorers that like to interact with people, so still fairly common, /mob/living/simple_mob/shadekin/purple = 15, //Also explorers that may or may not homf people, + /mob/living/simple_mob/shadekin/green = 5, /mob/living/simple_mob/shadekin/yellow = 1 //Very rare, usually never leaves their home ) var/new_type = pickweight(sk_types) @@ -198,7 +201,18 @@ if(. && nutrition > initial(nutrition) && energy < 100) nutrition = max(0, nutrition-5) energy = min(100,energy+1) - + if(!client && check_for_observer && check_timer++ > 5) + check_timer = 0 + var/non_kin_count = 0 + for(var/mob/living/M in view(6,src)) + if(!istype(M, /mob/living/simple_mob/shadekin)) + non_kin_count ++ + // Technically can be combined with ||, they call the same function, but readability is poor + if(!non_kin_count && (ability_flags & AB_PHASE_SHIFTED)) + phase_shift() // shifting back in, nobody present + else if (non_kin_count && !(ability_flags & AB_PHASE_SHIFTED)) + phase_shift() // shifting out, scaredy + /mob/living/simple_mob/shadekin/update_icon() . = ..() diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types.dm index e66162432b2..d09e72aa976 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/types.dm @@ -28,6 +28,9 @@ a brawl, but you barely generate any of your own energy. You can stand in a dark spot to gather scraps \ of energy in a pinch, but otherwise need to take it, by force if necessary." +/mob/living/simple_mob/shadekin/red + ai_holder_type = /datum/ai_holder/simple_mob/melee + /mob/living/simple_mob/shadekin/red/white icon_state = "white" /mob/living/simple_mob/shadekin/red/dark @@ -35,16 +38,6 @@ /mob/living/simple_mob/shadekin/red/brown icon_state = "brown" -/mob/living/simple_mob/shadekin/red/ai - ai_holder_type = /datum/ai_holder/simple_mob/melee - -/mob/living/simple_mob/shadekin/red/ai/white - icon_state = "white" -/mob/living/simple_mob/shadekin/red/ai/dark - icon_state = "dark" -/mob/living/simple_mob/shadekin/red/ai/brown - icon_state = "brown" - ///////////////////////////////////////////////////////////////// /mob/living/simple_mob/shadekin/blue name = "blue-eyed shadekin" @@ -85,6 +78,9 @@ without doing so, albeit slowly. Dark and light are irrelevant to you, they are just different places to explore and \ discover new things and new people." +/mob/living/simple_mob/shadekin/blue/ + ai_holder_type = /datum/ai_holder/simple_mob/passive + /mob/living/simple_mob/shadekin/blue/white icon_state = "white" /mob/living/simple_mob/shadekin/blue/dark @@ -92,16 +88,6 @@ /mob/living/simple_mob/shadekin/blue/brown icon_state = "brown" -/mob/living/simple_mob/shadekin/blue/ai - ai_holder_type = /datum/ai_holder/simple_mob/passive - -/mob/living/simple_mob/shadekin/blue/ai/white - icon_state = "white" -/mob/living/simple_mob/shadekin/blue/ai/dark - icon_state = "dark" -/mob/living/simple_mob/shadekin/blue/ai/brown - icon_state = "brown" - ///////////////////////////////////////////////////////////////// /mob/living/simple_mob/shadekin/purple name = "purple-eyed shadekin" @@ -137,6 +123,9 @@ areas is taxing on your energy. You can harvest energy from others in a fight, but since you don't need to, you may \ just choose to simply not fight." +/mob/living/simple_mob/shadekin/purple + ai_holder_type = /datum/ai_holder/simple_mob/retaliate + /mob/living/simple_mob/shadekin/purple/white icon_state = "white" /mob/living/simple_mob/shadekin/purple/dark @@ -144,16 +133,6 @@ /mob/living/simple_mob/shadekin/purple/brown icon_state = "brown" -/mob/living/simple_mob/shadekin/purple/ai - ai_holder_type = /datum/ai_holder/simple_mob/retaliate - -/mob/living/simple_mob/shadekin/purple/ai/white - icon_state = "white" -/mob/living/simple_mob/shadekin/purple/ai/dark - icon_state = "dark" -/mob/living/simple_mob/shadekin/purple/ai/brown - icon_state = "brown" - ///////////////////////////////////////////////////////////////// /mob/living/simple_mob/shadekin/yellow name = "yellow-eyed shadekin" @@ -177,6 +156,7 @@ eye_desc = "yellow eyes" stalker = FALSE + check_for_observer = TRUE vore_stomach_flavor = "You slip past pointy triangle teeth and down the slick, slippery gullet \ of the creature. It's warm, and the air is thick. You can hear its body squelch and shift around you \ as you settle into its stomach! The doughy walls within cling to you heavily, churning down on you, wearing \ @@ -187,6 +167,9 @@ area is very taxing on you, but you gain energy extremely fast in any very dark area. You're weaker than other \ shadekin, but your fast energy generation in the dark allows you to phase shift more often." +/mob/living/simple_mob/shadekin/yellow + ai_holder_type = /datum/ai_holder/simple_mob/melee/hit_and_run + /mob/living/simple_mob/shadekin/yellow/white icon_state = "white" /mob/living/simple_mob/shadekin/yellow/dark @@ -194,24 +177,14 @@ /mob/living/simple_mob/shadekin/yellow/brown icon_state = "brown" -/mob/living/simple_mob/shadekin/yellow/ai - ai_holder_type = /datum/ai_holder/simple_mob/melee/hit_and_run - -/mob/living/simple_mob/shadekin/yellow/ai/white - icon_state = "white" -/mob/living/simple_mob/shadekin/yellow/ai/dark - icon_state = "dark" -/mob/living/simple_mob/shadekin/yellow/ai/brown - icon_state = "brown" - -/mob/living/simple_mob/shadekin/yellow/ai/retaliate +/mob/living/simple_mob/shadekin/yellow/retaliate ai_holder_type = /datum/ai_holder/simple_mob/retaliate -/mob/living/simple_mob/shadekin/yellow/ai/retaliate/white +/mob/living/simple_mob/shadekin/yellow/retaliate/white icon_state = "white" -/mob/living/simple_mob/shadekin/yellow/ai/retaliate/dark +/mob/living/simple_mob/shadekin/yellow/retaliate/dark icon_state = "dark" -/mob/living/simple_mob/shadekin/yellow/ai/retaliate/brown +/mob/living/simple_mob/shadekin/yellow/retaliate/brown icon_state = "brown" ///////////////////////////////////////////////////////////////// @@ -237,6 +210,7 @@ eye_desc = "green eyes" stalker = TRUE + check_for_observer = TRUE vore_stomach_flavor = "You slip past pointy triangle teeth and down the slick, slippery gullet \ of the creature. It's warm, and the air is thick. You can hear its body squelch and shift around you \ as you settle into its stomach! The doughy walls within cling to you heavily, churning down on you, wearing \ @@ -247,6 +221,9 @@ have more experience than your yellow-eyed cousins. You gain energy decently fast in any very dark area. You're weaker than other \ shadekin, but your slight energy generation constnatly, and especially in the dark allows for a good mix of uses." +/mob/living/simple_mob/shadekin/green + ai_holder_type = /datum/ai_holder/simple_mob/passive + /mob/living/simple_mob/shadekin/green/white icon_state = "white" /mob/living/simple_mob/shadekin/green/dark @@ -254,16 +231,6 @@ /mob/living/simple_mob/shadekin/green/brown icon_state = "brown" -/mob/living/simple_mob/shadekin/green/ai - ai_holder_type = /datum/ai_holder/simple_mob/passive - -/mob/living/simple_mob/shadekin/green/ai/white - icon_state = "white" -/mob/living/simple_mob/shadekin/green/ai/dark - icon_state = "dark" -/mob/living/simple_mob/shadekin/green/ai/brown - icon_state = "brown" - ///////////////////////////////////////////////////////////////// /mob/living/simple_mob/shadekin/orange name = "orange-eyed shadekin" @@ -294,6 +261,9 @@ You're stronger than most shadekin, faster, and more capable in a brawl, but you don't generate much of your own energy. \ You can stand in a dark spot to gather some energy, but otherwise need to take it, by force if necessary." +/mob/living/simple_mob/shadekin/orange + ai_holder_type = /datum/ai_holder/simple_mob/melee + /mob/living/simple_mob/shadekin/orange/white icon_state = "white" /mob/living/simple_mob/shadekin/orange/dark @@ -301,22 +271,13 @@ /mob/living/simple_mob/shadekin/orange/brown icon_state = "brown" -/mob/living/simple_mob/shadekin/orange/ai - ai_holder_type = /datum/ai_holder/simple_mob/melee - -/mob/living/simple_mob/shadekin/orange/ai/white - icon_state = "white" -/mob/living/simple_mob/shadekin/orange/ai/dark - icon_state = "dark" -/mob/living/simple_mob/shadekin/orange/ai/brown - icon_state = "brown" - ///////////////////////////////////////////////////////////////// //Fluffy specific fluffer /mob/living/simple_mob/shadekin/blue/rivyr name = "Rivyr" desc = "She appears to be a fluffer of some sort. Deep blue eyes and curious attitude." icon_state = "rivyr" + ai_holder_type = /datum/ai_holder/simple_mob/passive eye_desc = "" vore_stomach_flavor = "Blue flesh gleams in the fading light as you slip down the little mar's gullet! \ Gooey flesh and heat surrounds your form as you're tucked away into the darkness of her stomach! Thick slimes cling \ diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm b/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm index 32ddb75c0a8..b4767b8dea7 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/sheep.dm @@ -14,6 +14,9 @@ see_in_dark = 2 + meat_amount = 5 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + response_help = "pets" response_disarm = "gently pushes aside" response_harm = "kicks" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm b/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm index 651599e3525..8affc4d8949 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/snake.dm @@ -38,6 +38,9 @@ melee_damage_lower = 5 melee_damage_upper = 12 + meat_amount = 6 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + response_help = "pats" response_disarm = "tries to shove" response_harm = "hits" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm index 745db9e5688..ef1aa44b59d 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub.dm @@ -36,6 +36,7 @@ List of things solar grubs should be able to do: movement_cooldown = 8 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat + meat_amount = 6 response_help = "pokes" response_disarm = "pushes" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm index f3c200410bf..0589a353912 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/solargrub_larva.dm @@ -16,8 +16,9 @@ var/global/list/grub_machine_overlays = list() melee_damage_lower = 1 // This is a tiny worm. It will nibble and thats about it. melee_damage_upper = 1 - meat_amount = 2 + meat_amount = 1 meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat/grubmeat + butchery_loot = list() // No hides faction = "grubs" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/vore.dm b/code/modules/mob/living/simple_mob/subtypes/vore/vore.dm index 178dee3cee2..b15a7e0e188 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/vore.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/vore.dm @@ -1,18 +1,21 @@ /mob/living/simple_mob/vore mob_class = MOB_CLASS_ANIMAL mob_bump_flag = 0 + +/mob/living/simple_mob var/nameset + var/limit_renames = TRUE -/mob/living/simple_mob/vore/Login() +/mob/living/simple_mob/Login() . = ..() - verbs |= /mob/living/simple_mob/vore/proc/set_name - verbs |= /mob/living/simple_mob/vore/proc/set_desc + verbs |= /mob/living/simple_mob/proc/set_name + verbs |= /mob/living/simple_mob/proc/set_desc -/mob/living/simple_mob/vore/proc/set_name() +/mob/living/simple_mob/proc/set_name() set name = "Set Name" set desc = "Sets your mobs name. You only get to do this once." set category = "Abilities" - if(nameset) + if(limit_renames && nameset) to_chat(src, "You've already set your name. Ask an admin to toggle \"nameset\" to 0 if you really must.") return var/newname @@ -22,7 +25,7 @@ voice_name = newname nameset = 1 -/mob/living/simple_mob/vore/proc/set_desc() +/mob/living/simple_mob/proc/set_desc() set name = "Set Description" set desc = "Set your description." set category = "Abilities" @@ -32,4 +35,4 @@ desc = newdesc /mob/living/simple_mob/vore/aggressive - mob_bump_flag = HEAVY \ No newline at end of file + mob_bump_flag = HEAVY diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm index 8c4d7b14df3..31b057ef45c 100644 --- a/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm +++ b/code/modules/mob/living/simple_mob/subtypes/vore/wolf.dm @@ -25,6 +25,9 @@ melee_damage_lower = 5 melee_damage_upper = 12 + meat_type = /obj/item/weapon/reagent_containers/food/snacks/meat + meat_amount = 5 + minbodytemp = 200 ai_holder_type = /datum/ai_holder/simple_mob/melee/evasive diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 92e9d7f1034..67466f350d2 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -365,6 +365,45 @@ var/choice = tgui_alert(usr, "Returning to the menu will prevent your character from being revived in-round. Are you sure?", "Confirmation", list("No, wait", "Yes, leave")) if(choice == "No, wait") return + else if(mind.assigned_role) + var/extra_check = tgui_alert(usr, "Do you want to Quit This Round before you return to lobby? This will properly remove you from manifest, as well as prevent resleeving.","Quit This Round",list("Quit Round","Cancel")) + if(extra_check == "Quit Round") + //Update any existing objectives involving this mob. + for(var/datum/objective/O in all_objectives) + if(O.target == src.mind) + if(O.owner && O.owner.current) + to_chat(O.owner.current,"You get the feeling your target is no longer within your reach...") + qdel(O) + + //Resleeving cleanup + if(mind) + SStranscore.leave_round(src) + + //Job slot cleanup + var/job = src.mind.assigned_role + job_master.FreeRole(job) + + //Their objectives cleanup + if(src.mind.objectives.len) + qdel(src.mind.objectives) + src.mind.special_role = null + + //Cut the PDA manifest (ugh) + if(PDA_Manifest.len) + PDA_Manifest.Cut() + for(var/datum/data/record/R in data_core.medical) + if((R.fields["name"] == src.real_name)) + qdel(R) + for(var/datum/data/record/T in data_core.security) + if((T.fields["name"] == src.real_name)) + qdel(T) + for(var/datum/data/record/G in data_core.general) + if((G.fields["name"] == src.real_name)) + qdel(G) + + //This removes them from being 'active' list on join screen + src.mind.assigned_role = null + to_chat(src,"Your job has been free'd up, and you can rejoin as another character or quit. Thanks for properly quitting round, it helps the server!") // Beyond this point, you're going to respawn to_chat(usr, config.respawn_message) diff --git a/code/modules/mob/new_player/new_player_vr.dm b/code/modules/mob/new_player/new_player_vr.dm index 71abc1ddf15..fdbbcb10d0e 100644 --- a/code/modules/mob/new_player/new_player_vr.dm +++ b/code/modules/mob/new_player/new_player_vr.dm @@ -72,4 +72,4 @@ //Final popup notice if (!pass) tgui_alert_async(src,"There were problems with spawning your character. Check your message log for details.","Error") - return pass + return pass \ No newline at end of file diff --git a/code/modules/mob/new_player/sprite_accessories_ear.dm b/code/modules/mob/new_player/sprite_accessories_ear.dm index 0daf9be98d0..9abd218dc4f 100644 --- a/code/modules/mob/new_player/sprite_accessories_ear.dm +++ b/code/modules/mob/new_player/sprite_accessories_ear.dm @@ -345,14 +345,7 @@ do_colouration = 1 color_blend_mode = ICON_MULTIPLY -/datum/sprite_accessory/ears/elfs2 - name = "pointed ears" - desc = "" - icon_state = "ears_pointy" - do_colouration = 1 - species_allowed = list(SPECIES_HUMAN, SPECIES_HUMAN_VATBORN, SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) - -/datum/sprite_accessory/ears/elfs +/datum/sprite_accessory/ears/elfs1 name = "pointed ears (tall)" desc = "" icon_state = "elfs" @@ -360,6 +353,13 @@ color_blend_mode = ICON_MULTIPLY species_allowed = list(SPECIES_HUMAN, SPECIES_HUMAN_VATBORN, SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) +/datum/sprite_accessory/ears/elfs2 + name = "pointed ears" + desc = "" + icon_state = "ears_pointy" + do_colouration = 1 + species_allowed = list(SPECIES_HUMAN, SPECIES_HUMAN_VATBORN, SPECIES_EVENT1, SPECIES_EVENT2, SPECIES_EVENT3) + /datum/sprite_accessory/ears/elfs3 name = "pointed ears (down)" desc = "" diff --git a/code/modules/mob/new_player/sprite_accessories_ear_vr.dm b/code/modules/mob/new_player/sprite_accessories_ear_vr.dm index 778371e790b..51a43afb88a 100644 --- a/code/modules/mob/new_player/sprite_accessories_ear_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_ear_vr.dm @@ -34,9 +34,11 @@ /datum/sprite_accessory/ears/taj_ears name = "tajaran, colorable (old)" + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use /datum/sprite_accessory/ears/taj_ears_tall name = "tajaran tall, colorable (old)" + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use /datum/sprite_accessory/ears/alt_ram_horns name = "Solid ram horns" @@ -377,6 +379,21 @@ do_colouration = 1 color_blend_mode = ICON_MULTIPLY +/datum/sprite_accessory/ears/elfs1 + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use + +/datum/sprite_accessory/ears/elfs2 + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use + +/datum/sprite_accessory/ears/elfs3 + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use + +/datum/sprite_accessory/ears/elfs4 + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use + +/datum/sprite_accessory/ears/elfs5 + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use + /datum/sprite_accessory/ears/sleek name = "sleek ears" desc = "" @@ -772,3 +789,12 @@ extra_overlay2 = "teppi_horns" do_colouration = 1 color_blend_mode = ICON_MULTIPLY + +/datum/sprite_accessory/ears/jackalope + name = "Jackalope Ears and Antlers" + desc = "" + icon = 'icons/mob/vore/ears_32x64.dmi' + icon_state = "jackalope" + extra_overlay = "jackalope-antlers" + do_colouration = 1 + color_blend_mode = ICON_MULTIPLY diff --git a/code/modules/mob/new_player/sprite_accessories_vr.dm b/code/modules/mob/new_player/sprite_accessories_vr.dm index 2d772b44ae6..1b2a862ae38 100644 --- a/code/modules/mob/new_player/sprite_accessories_vr.dm +++ b/code/modules/mob/new_player/sprite_accessories_vr.dm @@ -91,14 +91,14 @@ name = "Bald" icon_state = "bald" gender = MALE - species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST) //Lets all the races be bald if they want. + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //Lets all the races be bald if they want. /datum/sprite_accessory/hair/ponytail6_fixed name = "Ponytail 6 but fixed" icon = 'icons/mob/human_face_vr.dmi' icon_add = 'icons/mob/human_face_vr_add.dmi' icon_state = "hair_ponytail6" - species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_NEVREAN, SPECIES_AKULA,SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST) + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_NEVREAN, SPECIES_AKULA,SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) /datum/sprite_accessory/hair/una_hood name = "Cobra Hood" @@ -466,20 +466,20 @@ /datum/sprite_accessory/facial_hair icon = 'icons/mob/human_face_or_vr.dmi' color_blend_mode = ICON_MULTIPLY - species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST) //This lets all races use the facial hair styles. + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This lets all races use the facial hair styles. /datum/sprite_accessory/facial_hair/shaved name = "Shaved" icon_state = "bald" gender = NEUTER - species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST) //This needed to be manually defined, apparantly. + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) //This needed to be manually defined, apparantly. /datum/sprite_accessory/facial_hair/neck_fluff name = "Neck Fluff" icon = 'icons/mob/human_face_or_vr.dmi' icon_state = "facial_neckfluff" gender = NEUTER - species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST) + species_allowed = list(SPECIES_HUMAN, SPECIES_SKRELL, SPECIES_UNATHI, SPECIES_TAJ, SPECIES_TESHARI, SPECIES_NEVREAN, SPECIES_AKULA, SPECIES_SERGAL, SPECIES_FENNEC, SPECIES_ZORREN_HIGH, SPECIES_VULPKANIN, SPECIES_XENOCHIMERA, SPECIES_XENOHYBRID, SPECIES_VASILISSAN, SPECIES_RAPALA, SPECIES_PROTEAN, SPECIES_ALRAUNE, SPECIES_WEREBEAST, SPECIES_SHADEKIN, SPECIES_SHADEKIN_CREW) /datum/sprite_accessory/facial_hair/vulp_none name = "None" diff --git a/code/modules/multiz/ladder_assembly_vr.dm b/code/modules/multiz/ladder_assembly_vr.dm index 49f765225ac..44fdcc0c821 100644 --- a/code/modules/multiz/ladder_assembly_vr.dm +++ b/code/modules/multiz/ladder_assembly_vr.dm @@ -4,7 +4,7 @@ /obj/structure/ladder_assembly name = "ladder assembly" - icon = 'icons/obj/structures.dmi' + icon = 'icons/obj/structures_vr.dmi' icon_state = "ladder00" density = FALSE opacity = 0 diff --git a/code/modules/multiz/ladders.dm b/code/modules/multiz/ladders.dm index b4626022bb7..0f9edf04c88 100644 --- a/code/modules/multiz/ladders.dm +++ b/code/modules/multiz/ladders.dm @@ -33,6 +33,13 @@ target_up = null return ..() +/obj/structure/ladder/attack_generic(mob/user) + //Simple Animal + if(isanimal(user)) + attack_hand(user) + else + return ..() + /obj/structure/ladder/attackby(obj/item/C as obj, mob/user as mob) attack_hand(user) return diff --git a/code/modules/multiz/movement.dm b/code/modules/multiz/movement.dm index 69ea1051f0e..f4fb3ffef87 100644 --- a/code/modules/multiz/movement.dm +++ b/code/modules/multiz/movement.dm @@ -59,7 +59,7 @@ if(lattice) var/pull_up_time = max(5 SECONDS + (src.movement_delay() * 10), 1) to_chat(src, "You grab \the [lattice] and start pulling yourself upward...") - destination.audible_message("You hear something climbing up \the [lattice].", runemessage = "clank clang") + src.audible_message("[src] begins climbing up \the [lattice].", runemessage = "clank clang") if(do_after(src, pull_up_time)) to_chat(src, "You pull yourself up.") else @@ -74,14 +74,14 @@ if(!destination?.Enter(src, old_dest)) to_chat(src, "There's something in the way up above in that direction, try another.") return 0 - destination.audible_message("You hear something climbing up \the [catwalk].", runemessage = "clank clang") + src.audible_message("[src] begins climbing up \the [lattice].", runemessage = "clank clang") if(do_after(src, pull_up_time)) to_chat(src, "You pull yourself up.") else to_chat(src, "You gave up on pulling yourself up.") return 0 - else if(ismob(src)) //VOREStation Edit Start. Are they a mob, and are they currently flying?? + else if(isliving(src)) //VOREStation Edit Start. Are they a mob, and are they currently flying?? var/mob/living/H = src if(H.flying) if(H.incapacitated(INCAPACITATION_ALL)) @@ -90,7 +90,6 @@ return 0 var/fly_time = max(7 SECONDS + (H.movement_delay() * 10), 1) //So it's not too useful for combat. Could make this variable somehow, but that's down the road. to_chat(src, "You begin to fly upwards...") - destination.audible_message("You hear the flapping of wings.", runemessage = "flap flap") H.audible_message("[H] begins to flap \his wings, preparing to move upwards!", runemessage = "flap flap") if(do_after(H, fly_time) && H.flying) to_chat(src, "You fly upwards.") @@ -111,6 +110,11 @@ return 0 if(!Move(destination)) return 0 + if(isliving(src)) + if(direction == UP) + src.audible_message("[src] moves up.") + else if(direction == DOWN) + src.audible_message("[src] moves down.") return 1 /mob/proc/can_overcome_gravity() diff --git a/code/modules/multiz/stairs.dm b/code/modules/multiz/stairs.dm index 6a85c301fe6..5ce4b2ec264 100644 --- a/code/modules/multiz/stairs.dm +++ b/code/modules/multiz/stairs.dm @@ -392,7 +392,7 @@ /obj/structure/stairs/top/Uncrossed(var/atom/movable/AM) // Going down stairs from the topstair piece - if(AM.dir == turn(dir, 180) && check_integrity()) + if(AM.dir == turn(dir, 180) && isturf(AM.loc) && check_integrity()) use_stairs_instant(AM) return diff --git a/code/modules/nifsoft/nif.dm b/code/modules/nifsoft/nif.dm index 6dc40db443e..7b14f13e72c 100644 --- a/code/modules/nifsoft/nif.dm +++ b/code/modules/nifsoft/nif.dm @@ -28,6 +28,7 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable var/durability = 100 // Durability remaining var/bioadap = FALSE // If it'll work in fancy species + var/gib_nodrop = FALSE // NIF self-destructs when owner is gibbed var/tmp/power_usage = 0 // Nifsoft adds to this var/tmp/mob/living/carbon/human/human // Our owner! @@ -613,6 +614,7 @@ You can also set the stat of a NIF to NIF_TEMPFAIL without any issues to disable desc = "A NIF that is part of a protean's body structure. Where did you get that anyway?" durability = 25 bioadap = TRUE + gib_nodrop = TRUE //////////////////////////////// // Special Promethean """surgery""" diff --git a/code/modules/overmap/overmap_object.dm b/code/modules/overmap/overmap_object.dm index ad5bf60dd2e..ad87d50e8b4 100644 --- a/code/modules/overmap/overmap_object.dm +++ b/code/modules/overmap/overmap_object.dm @@ -23,7 +23,7 @@ /// For showing to the pilot of the ship, so they see the 'real' appearance, despite others seeing the unknown ones var/image/real_appearance - light_system = MOVABLE_LIGHT + //light_system = MOVABLE_LIGHT light_on = FALSE /obj/effect/overmap/Initialize() diff --git a/code/modules/overmap/ships/computers/sensors.dm b/code/modules/overmap/ships/computers/sensors.dm index 9a1c0fb1151..e09678f9b0f 100644 --- a/code/modules/overmap/ships/computers/sensors.dm +++ b/code/modules/overmap/ships/computers/sensors.dm @@ -66,7 +66,7 @@ else data["status"] = "OK" var/list/contacts = list() - for(var/obj/effect/overmap/O in view(7,linked)) + for(var/obj/effect/overmap/O in range(7,linked)) if(linked == O) continue if(!O.scannable) @@ -125,10 +125,9 @@ return if(sensors && sensors.use_power && sensors.powered()) var/sensor_range = round(sensors.range*1.5) + 1 - linked.set_light_range(sensor_range + 0.5) - linked.set_light_on(TRUE) + linked.set_light(sensor_range + 0.5) else - linked.set_light_on(FALSE) + linked.set_light(0) /obj/machinery/shipsensors name = "sensors suite" diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 95bcda3b36b..f79848de565 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -580,11 +580,20 @@ return else if(istype(P, /obj/item/weapon/stamp) || istype(P, /obj/item/clothing/gloves/ring/seal)) + if(istype(P, /obj/item/weapon/stamp)) + var/obj/item/weapon/stamp/the_stamp = P + if(the_stamp.stamptext) + stamps += (stamps=="" ? "
" : "
") + "[the_stamp.stamptext]" + else + stamps += (stamps=="" ? "
" : "
") + "This paper has been stamped with the [the_stamp.name]." + else + var/obj/item/clothing/gloves/ring/seal/the_stamp = P + if(the_stamp.stamptext) + stamps += (stamps=="" ? "
" : "
") + "[the_stamp.stamptext]" + else + stamps += (stamps=="" ? "
" : "
") + "This paper has been stamped with the [the_stamp.name]." if((!in_range(src, usr) && loc != user && !( istype(loc, /obj/item/weapon/clipboard) ) && loc.loc != user && user.get_active_hand() != P)) return - - stamps += (stamps=="" ? "
" : "
") + "This paper has been stamped with the [P.name]." - var/image/stampoverlay = image('icons/obj/bureaucracy.dmi') var/x, y if(istype(P, /obj/item/weapon/stamp/captain) || istype(P, /obj/item/weapon/stamp/centcomm)) diff --git a/code/modules/paperwork/stamps.dm b/code/modules/paperwork/stamps.dm index be60632186b..c2d610f3556 100644 --- a/code/modules/paperwork/stamps.dm +++ b/code/modules/paperwork/stamps.dm @@ -14,6 +14,7 @@ attack_verb = list("stamped") drop_sound = 'sound/items/drop/device.ogg' pickup_sound = 'sound/items/pickup/device.ogg' + var/stamptext = null /obj/item/weapon/stamp/captain name = "site manager's rubber stamp" diff --git a/code/modules/persistence/datum/persistence_datum.dm b/code/modules/persistence/datum/persistence_datum.dm index 325ff15ceda..14d813406d9 100644 --- a/code/modules/persistence/datum/persistence_datum.dm +++ b/code/modules/persistence/datum/persistence_datum.dm @@ -71,7 +71,7 @@ return var/_z = token["z"] - if(_z in using_map.station_levels) + if(_z in using_map.persist_levels) . = GetValidTurf(locate(token["x"], token["y"], _z), token) if(.) CreateEntryInstance(., token) @@ -82,7 +82,7 @@ if(GetEntryAge(entry) >= entries_expire_at) return FALSE var/turf/T = get_turf(entry) - if(!T || !(T.z in using_map.station_levels) ) + if(!T || !(T.z in using_map.persist_levels) ) return FALSE var/area/A = get_area(T) if(!A || (A.flags & AREA_FLAG_IS_NOT_PERSISTENT)) @@ -104,7 +104,7 @@ /datum/persistent/proc/Shutdown() if(fexists(filename)) fdel(filename) - + var/list/to_store = list() for(var/thing in SSpersistence.tracking_values[type]) if(!IsValidEntry(thing)) @@ -121,10 +121,10 @@ var/list/my_tracks = SSpersistence.tracking_values[type] if(!my_tracks?.len) return - + . = list("[capitalize(name)]") . += "
" - + for(var/thing in my_tracks) . += "[GetAdminDataStringFor(thing, can_modify, user)]" . += "
" diff --git a/code/modules/persistence/storage/smartfridge.dm b/code/modules/persistence/storage/smartfridge.dm index 9978168c65f..a47099f3282 100644 --- a/code/modules/persistence/storage/smartfridge.dm +++ b/code/modules/persistence/storage/smartfridge.dm @@ -52,11 +52,11 @@ // Delete some stacks if we want if(stacks_go_missing) var/fuzzy = rand(55,65)*0.01 // loss of 35-45% with rounding down - count = round(count*fuzzy) + count = round(count*fuzzy) if(count <= 0) continue - - while(count > 0) + + while(count > 0) inst = new real_path(null, min(count, max_amount)) count -= inst.get_amount() . += inst @@ -72,6 +72,16 @@ name = "fruit storage lossy" go_missing_chance = 12.5 // 10% loss between rounds +/datum/persistent/storage/smartfridge/produce/generate_items(var/list/L) // Mostly same as storage/generate_items() but without converting string to path + . = list() + for(var/fruit_type in L) + for(var/i in 1 to L[fruit_type]) + if(prob(go_missing_chance)) + continue + var/atom/A = create_item(fruit_type) + if(!QDELETED(A)) + . += A + /datum/persistent/storage/smartfridge/produce/create_item(var/seedtype) return new /obj/item/weapon/reagent_containers/food/snacks/grown(null, seedtype) // Smartfridge will be stock()ed with it, loc is unimportant diff --git a/code/modules/power/singularity/particle_accelerator/particle_smasher.dm b/code/modules/power/singularity/particle_accelerator/particle_smasher.dm index 938f9b69345..77c0858606d 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_smasher.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_smasher.dm @@ -2,6 +2,9 @@ * Contains the particle smasher and its recipes. */ +#define PS_RESULT_STACK "stack" +#define PS_RESULT_ITEM "item" + /obj/machinery/particle_smasher name = "Particle Focus" desc = "A strange device used to create exotic matter." @@ -190,7 +193,7 @@ var/max_prob = 0 for(var/datum/particle_smasher_recipe/R in recipes) // Only things for the smasher. Don't get things like the chef's cake recipes. if(R.probability) // It's actually a recipe you're supposed to be able to make. - if(istype(target, R.required_material)) + if(!(R.required_material) || istype(target, R.required_material)) if(energy >= R.required_energy_min && energy <= R.required_energy_max) // The machine has enough Vaguely Defined 'Energy'. var/turf/T = get_turf(src) var/datum/gas_mixture/environment = T.return_air() @@ -234,8 +237,11 @@ break var/result = recipe.result - var/obj/item/stack/material/M = new result(src) - target = M + if(recipe.recipe_type == PS_RESULT_STACK) + var/obj/item/stack/material/M = new result(src) + target = M + else if(recipe.recipe_type == PS_RESULT_ITEM) + new result(get_turf(src)) update_icon() /obj/machinery/particle_smasher/verb/eject_contents() @@ -266,6 +272,7 @@ /datum/particle_smasher_recipe var/list/reagents // example: = list("pacid" = 5) var/list/items // example: = list(/obj/item/weapon/tool/crowbar, /obj/item/weapon/welder) Place /foo/bar before /foo. Do not include fruit. Maximum of 3 items. + var/recipe_type = PS_RESULT_STACK // Are we producing a stack or an item? var/result = /obj/item/stack/material/iron // The sheet this will produce. var/required_material = /obj/item/stack/material/iron // The required material sheet. @@ -378,4 +385,35 @@ required_atmos_temp_min = 3000 required_atmos_temp_max = 10000 - probability = 1 \ No newline at end of file + probability = 1 + +/datum/particle_smasher_recipe/donkpockets_coal + items = list(/obj/item/weapon/reagent_containers/food/snacks/donkpocket) + + recipe_type = PS_RESULT_ITEM + + result = /obj/item/weapon/ore/coal + required_material = null + + required_energy_min = 1 + required_energy_max = 500 + + required_atmos_temp_min = 400 + required_atmos_temp_max = 20000 + probability = 90 + +/datum/particle_smasher_recipe/donkpockets_ascend + items = list(/obj/item/weapon/reagent_containers/food/snacks/donkpocket) + reagents = list("phoron" = 120) + + recipe_type = PS_RESULT_ITEM + + result = /obj/item/weapon/reagent_containers/food/snacks/donkpocket/ascended + required_material = /obj/item/stack/material/uranium + + required_energy_min = 501 + required_energy_max = 700 + + required_atmos_temp_min = 400 + required_atmos_temp_max = 20000 + probability = 20 \ No newline at end of file diff --git a/code/modules/power/smes_construction.dm b/code/modules/power/smes_construction.dm index dae8941e8c1..b346e59d946 100644 --- a/code/modules/power/smes_construction.dm +++ b/code/modules/power/smes_construction.dm @@ -139,6 +139,9 @@ if(panel_open) wires.Interact(usr) +/obj/machinery/power/smes/buildable/RefreshParts() + recalc_coils() + // Proc: recalc_coils() // Parameters: None // Description: Updates properties (IO, capacity, etc.) of this SMES by checking internal components. diff --git a/code/modules/projectiles/guns/energy/bsharpoon_vr.dm b/code/modules/projectiles/guns/energy/bsharpoon_vr.dm index 005741bfe41..5b7b906e3c6 100644 --- a/code/modules/projectiles/guns/energy/bsharpoon_vr.dm +++ b/code/modules/projectiles/guns/energy/bsharpoon_vr.dm @@ -18,6 +18,7 @@ var/transforming = 0 var/failure_chance = 15 // This can become negative with part tiers above 3, which helps offset penalties var/obj/item/weapon/stock_parts/scanning_module/scanmod + var/dropnoms_active = TRUE /obj/item/weapon/bluespace_harpoon/Initialize() . = ..() @@ -26,6 +27,8 @@ /obj/item/weapon/bluespace_harpoon/examine(var/mob/user) . = ..() + . += "It is currently in [mode ? "transmitting" : "recieving"] mode." + . += "Spatial rearrangement is [dropnoms_active ? "active" : "inactive"]." if(Adjacent(user)) . += "It has [scanmod ? scanmod : "no scanner module"] installed." @@ -80,7 +83,7 @@ playsound(src, 'sound/weapons/wave.ogg', 60, 1) return var/turf/T = get_turf(A) - if(!T || (T.check_density() && mode == 1)) + if(!T || (T.check_density(ignore_mobs = TRUE) && mode == 1)) to_chat(user,"That's a little too solid to harpoon into!") return var/turf/ownturf = get_turf(src) @@ -118,12 +121,47 @@ for(var/rider in L.buckled_mobs) sendfailchance += 15 + var/mob/living/living_user = user + var/can_dropnom = TRUE + if(!dropnoms_active || !istype(living_user)) + can_dropnom = FALSE + if(mode) if(user in FromTurf) if(prob(sendfailchance)) user.forceMove(pick(trange(24,user))) else user.forceMove(ToTurf) + var/vore_happened = FALSE + if(can_dropnom && living_user.can_be_drop_pred) + var/obj/belly/belly_dest + if(living_user.vore_selected) + belly_dest = living_user.vore_selected + else if(living_user.vore_organs.len) + belly_dest = pick(living_user.vore_organs) + if(belly_dest) + for(var/mob/living/prey in ToTurf) + if(prey != user && prey.can_be_drop_prey) + prey.forceMove(belly_dest) + vore_happened = TRUE + to_chat(prey, "[living_user] materializes around you, as you end up in their [belly_dest]!") + to_chat(living_user, "You materialize around [prey] as they end up in your [belly_dest]!") + if(can_dropnom && !vore_happened && living_user.can_be_drop_prey) + var/mob/living/pred + for(var/mob/living/potential_pred in ToTurf) + if(potential_pred != user && potential_pred.can_be_drop_pred) + pred = potential_pred + if(pred) + var/obj/belly/belly_dest + if(pred.vore_selected) + belly_dest = pred.vore_selected + else if(pred.vore_organs.len) + belly_dest = pick(pred.vore_organs) + if(belly_dest) + living_user.forceMove(belly_dest) + to_chat(pred, "[living_user] materializes inside you as they end up in your [belly_dest]!") + to_chat(living_user, "You materialize inside [pred] as you end up in their [belly_dest]!") + else for(var/obj/O in FromTurf) if(O.anchored) continue @@ -132,25 +170,58 @@ else O.forceMove(ToTurf) + var/user_vored = FALSE + for(var/mob/living/M in FromTurf) if(prob(recievefailchance)) M.forceMove(pick(trange(24,user))) else M.forceMove(ToTurf) + if(can_dropnom && living_user.can_be_drop_pred && M.can_be_drop_prey) + var/obj/belly/belly_dest + if(living_user.vore_selected) + belly_dest = living_user.vore_selected + else if(living_user.vore_organs.len) + belly_dest = pick(living_user.vore_organs) + if(belly_dest) + M.forceMove(belly_dest) + to_chat(living_user, "[M] materializes inside you as they end up in your [belly_dest]!") + to_chat(M, "You materialize inside [living_user] as you end up in their [belly_dest]!") + else if(can_dropnom && living_user.can_be_drop_prey && M.can_be_drop_pred && !user_vored) + var/obj/belly/belly_dest + if(M.vore_selected) + belly_dest = M.vore_selected + else if(M.vore_organs.len) + belly_dest = pick(M.vore_organs) + if(belly_dest) + living_user.forceMove(belly_dest) + user_vored = TRUE + to_chat(living_user, "[M] materializes around you, as you end up in their [belly_dest]!") + to_chat(M, "You materialize around [living_user] as they end up in your [belly_dest]!") + /obj/item/weapon/bluespace_harpoon/attack_self(mob/living/user as mob) return chande_fire_mode(user) /obj/item/weapon/bluespace_harpoon/verb/chande_fire_mode(mob/user as mob) - set name = "Change fire mode" + set name = "Change Fire Mode" set category = "Object" - set src in oview(1) + set src in range(0) + if(transforming) return mode = !mode transforming = 1 to_chat(user,"You change \the [src]'s mode to [mode ? "transmiting" : "receiving"].") update_icon() +/obj/item/weapon/bluespace_harpoon/verb/chande_dropnom_mode(mob/user as mob) + set name = "Toggle Spatial Rearrangement" + set category = "Object" + set src in range(0) + + dropnoms_active = !dropnoms_active + to_chat(user,"You switch \the [src]'s spatial rearrangement [dropnoms_active ? "on" : "off"]. (Telenoms [dropnoms_active ? "enabled" : "dsiabled"])") + /obj/item/weapon/bluespace_harpoon/update_icon() if(transforming) switch(mode) diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator_vr.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator_vr.dm index 59e006124bb..311c7e753ba 100644 --- a/code/modules/projectiles/guns/energy/kinetic_accelerator_vr.dm +++ b/code/modules/projectiles/guns/energy/kinetic_accelerator_vr.dm @@ -191,7 +191,7 @@ /obj/item/weapon/gun/energy/kinetic_accelerator/proc/empty() if(power_supply) power_supply.use(power_supply.charge) - update_icon() + update_icon() /obj/item/weapon/gun/energy/kinetic_accelerator/proc/attempt_reload(recharge_time) if(!power_supply) @@ -223,7 +223,7 @@ /obj/item/weapon/gun/energy/kinetic_accelerator/update_icon() cut_overlays() - if(overheat || (power_supply.charge == 0)) + if(overheat || !power_supply || (power_supply.charge == 0)) add_overlay(emptystate) #define KA_ENVIRO_TYPE_COLD 0 @@ -273,6 +273,7 @@ else if(environment == KA_ENVIRO_TYPE_OFFSITE) if(!offsite_environment_check(get_turf(src))) name = "nullified [name]" + nodamage = TRUE damage = 0 pressure_decrease_active = TRUE return ..() @@ -292,6 +293,7 @@ else if(environment == KA_ENVIRO_TYPE_OFFSITE) if(!offsite_environment_check(get_turf(src))) name = "nullified [name]" + nodamage = TRUE damage = 0 pressure_decrease_active = TRUE return ..() @@ -323,6 +325,7 @@ else if(environment == KA_ENVIRO_TYPE_OFFSITE) if(!offsite_environment_check(get_turf(src))) name = "nullified [name]" + nodamage = TRUE damage = 0 pressure_decrease_active = TRUE var/turf/target_turf = get_turf(target) @@ -546,7 +549,7 @@ //Tendril-unique modules /obj/item/borg/upgrade/modkit/cooldown/repeater name = "rapid repeater" - desc = "Quarters the kinetic accelerator's cooldown on striking a living target, but greatly increases the base cooldown." + desc = "Quarters the kinetic accelerator's cooldown on striking a living or mineral target, but greatly increases the base cooldown." denied_type = /obj/item/borg/upgrade/modkit/cooldown/repeater modifier = -14 //Makes the cooldown 3 seconds(with no cooldown mods) if you miss. Don't miss. cost = 50 @@ -654,9 +657,11 @@ name = "offsite pressure modulator" desc = "A non-standard modification kit that increases the damage a kinetic accelerator does in pressurized environments, \ in exchange for nullifying any projected forces while on or in an associated facility." + denied_type = /obj/item/borg/upgrade/modkit/heater + maximum_of_type = 1 cost = 35 -/obj/item/borg/upgrade/modkit/indoors/offsite/modify_projectile(obj/item/projectile/kinetic/K) +/obj/item/borg/upgrade/modkit/offsite/modify_projectile(obj/item/projectile/kinetic/K) K.environment = KA_ENVIRO_TYPE_OFFSITE // Atmospheric @@ -664,7 +669,7 @@ name = "temperature modulator" desc = "A remarkably unusual modification kit that makes kinetic accelerators more usable in hot, overpressurized environments, \ in exchange for making them weak elsewhere, like the cold or in space." - denied_type = /obj/item/borg/upgrade/modkit/indoors + denied_type = /obj/item/borg/upgrade/modkit/offsite maximum_of_type = 1 cost = 10 diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 0ea7871e30b..f236ed29844 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -47,7 +47,9 @@ modifystate = "floramut" cell_type = /obj/item/weapon/cell/device/weapon/recharge battery_lock = 1 + var/decl/plantgene/gene = null + var/obj/item/weapon/stock_parts/micro_laser/emitter firemodes = list( list(mode_name="induce mutations", projectile_type=/obj/item/projectile/energy/floramut, modifystate="floramut"), @@ -55,8 +57,42 @@ list(mode_name="induce specific mutations", projectile_type=/obj/item/projectile/energy/floramut/gene, modifystate="floramut"), ) +/obj/item/weapon/gun/energy/floragun/Initialize() + . = ..() + emitter = new(src) + +/obj/item/weapon/gun/energy/floragun/examine(var/mob/user) + . = ..() + if(Adjacent(user)) + . += "It has [emitter ? emitter : "no micro laser"] installed." + +/obj/item/weapon/gun/energy/floragun/attackby(obj/item/W, mob/user) + if(istype(W, /obj/item/weapon/stock_parts/micro_laser)) + if(!emitter) + user.drop_item() + W.loc = src + emitter = W + to_chat(user, "You install a [emitter.name] in [src].") + else + to_chat(user, "[src] already has a laser.") + + else if(W.is_screwdriver()) + if(emitter) + to_chat(user, "You remove the [emitter.name] from the [src].") + emitter.loc = get_turf(src.loc) + playsound(src, W.usesound, 50, 1) + emitter = null + return + else + to_chat(user, "There is no micro laser in this [src].") + return + /obj/item/weapon/gun/energy/floragun/afterattack(obj/target, mob/user, adjacent_flag) //allow shooting into adjacent hydrotrays regardless of intent + if(!emitter) + to_chat(user, "The [src] has no laser! ") + playsound(src, 'sound/weapons/empty.ogg', 50, 1) + return if(adjacent_flag && istype(target,/obj/machinery/portable_atmospherics/hydroponics)) user.visible_message("\The [user] fires \the [src] into \the [target]!") Fire(target,user) @@ -82,8 +118,16 @@ /obj/item/weapon/gun/energy/floragun/consume_next_projectile() . = ..() var/obj/item/projectile/energy/floramut/gene/G = . + var/obj/item/projectile/energy/florayield/GY = . + var/obj/item/projectile/energy/floramut/GM = . + // Inserting the upgrade level of the gun to the projectile as there isn't a better way to do this. if(istype(G)) G.gene = gene + G.lasermod = emitter.rating + else if(istype(GY)) + GY.lasermod = emitter.rating + else if(istype(GM)) + GM.lasermod = emitter.rating /obj/item/weapon/gun/energy/meteorgun name = "meteor gun" diff --git a/code/modules/projectiles/guns/magnetic/bore.dm b/code/modules/projectiles/guns/magnetic/bore.dm index 3cc05cc44bc..66e89cb9eb0 100644 --- a/code/modules/projectiles/guns/magnetic/bore.dm +++ b/code/modules/projectiles/guns/magnetic/bore.dm @@ -85,6 +85,8 @@ /obj/item/weapon/gun/magnetic/matfed/attackby(var/obj/item/thing, var/mob/user) + . = ..() + update_rating_mod() if(removable_components) if(thing.is_crowbar()) if(!manipulator) @@ -112,7 +114,6 @@ update_rating_mod() return - if(is_type_in_list(thing, load_type)) var/obj/item/stack/material/M = thing var/success = FALSE @@ -147,7 +148,6 @@ playsound(src, 'sound/weapons/flipblade.ogg', 50, 1) update_icon() return - . = ..() #define GEN_STARTING -1 #define GEN_OFF 0 diff --git a/code/modules/projectiles/projectile/explosive.dm b/code/modules/projectiles/projectile/explosive.dm index 15d538c0820..307febc8bc1 100644 --- a/code/modules/projectiles/projectile/explosive.dm +++ b/code/modules/projectiles/projectile/explosive.dm @@ -9,22 +9,30 @@ does_spin = 0 /obj/item/projectile/bullet/srmrocket/on_hit(atom/target, blocked=0) - ..() if(!isliving(target)) //if the target isn't alive, so is a wall or something explosion(target, 0, 1, 2, 4) else explosion(target, 0, 0, 2, 4) return 1 +/obj/item/projectile/bullet/srmrocket/throw_impact(atom/target, var/speed) + if(!isliving(target)) //if the target isn't alive, so is a wall or something + explosion(target, 0, 1, 2, 4) + else + explosion(target, 0, 0, 2, 4) + qdel(src) /obj/item/projectile/bullet/srmrocket/weak //Used in the jury rigged one. damage = 10 /obj/item/projectile/bullet/srmrocket/weak/on_hit(atom/target, blocked=0) - ..() explosion(target, 0, 0, 2, 4)//No need to have a question. return 1 +/obj/item/projectile/bullet/srmrocket/weak/throw_impact(atom/target, var/speed) + explosion(target, 0, 0, 2, 4)//No need to have a question. + qdel(src) + /*Old vars here for reference. var/devastation = 0 var/heavy_blast = 1 diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm index 187ae883344..142cde40712 100644 --- a/code/modules/projectiles/projectile/special.dm +++ b/code/modules/projectiles/projectile/special.dm @@ -143,7 +143,7 @@ light_power = 0.5 light_color = "#33CC00" impact_effect_type = /obj/effect/temp_visual/impact_effect/monochrome_laser - + var/lasermod = 0 combustion = FALSE /obj/item/projectile/energy/floramut/on_hit(var/atom/target, var/blocked = 0) @@ -200,6 +200,7 @@ light_power = 0.5 light_color = "#FFFFFF" impact_effect_type = /obj/effect/temp_visual/impact_effect/monochrome_laser + var/lasermod = 0 /obj/item/projectile/energy/florayield/on_hit(var/atom/target, var/blocked = 0) var/mob/living/M = target diff --git a/code/modules/reagents/machinery/dispenser/reagent_tank.dm b/code/modules/reagents/machinery/dispenser/reagent_tank.dm index cfa809b2afe..097ee924e97 100644 --- a/code/modules/reagents/machinery/dispenser/reagent_tank.dm +++ b/code/modules/reagents/machinery/dispenser/reagent_tank.dm @@ -461,7 +461,7 @@ /obj/structure/reagent_dispensers/cookingoil/New() ..() - reagents.add_reagent("cornoil",5000) + reagents.add_reagent("cookingoil",5000) /obj/structure/reagent_dispensers/cookingoil/bullet_act(var/obj/item/projectile/Proj) if(Proj.get_structure_damage()) diff --git a/code/modules/reagents/reactions/instant/drinks.dm b/code/modules/reagents/reactions/instant/drinks.dm index efb58fe90c3..c2e0521ee65 100644 --- a/code/modules/reagents/reactions/instant/drinks.dm +++ b/code/modules/reagents/reactions/instant/drinks.dm @@ -141,7 +141,7 @@ name = "Space Beer" id = "spacebeer" result = "beer" - required_reagents = list("cornoil" = 10) + required_reagents = list("cornoil" = 5, "flour" = 5) catalysts = list("enzyme" = 5) result_amount = 10 @@ -203,6 +203,7 @@ name = "Classic Martini" id = "martini" result = "martini" + inhibitors = list("bitters" = 1) required_reagents = list("gin" = 2, "vermouth" = 1) result_amount = 3 @@ -907,7 +908,7 @@ name = "Debugger" id = "debugger" result = "debugger" - required_reagents = list("fuel" = 1, "sugar" = 2, "cornoil" = 2) + required_reagents = list("fuel" = 1, "sugar" = 2, "cookingoil" = 2) result_amount = 5 /decl/chemical_reaction/instant/drinks/spacersbrew @@ -1205,14 +1206,14 @@ name = "Oil Slick" id = "oilslick" result = "oilslick" - required_reagents = list("cornoil" = 2, "honey" = 1) + required_reagents = list("cookingoil" = 2, "honey" = 1) result_amount = 3 /decl/chemical_reaction/instant/drinks/slimeslam name = "Slick Slime Slammer" id = "slimeslammer" result = "slimeslammer" - required_reagents = list("cornoil" = 2, "peanutbutter" = 1) + required_reagents = list("cookingoil" = 2, "peanutbutter" = 1) result_amount = 3 /decl/chemical_reaction/instant/drinks/virginsexonthebeach @@ -1254,7 +1255,7 @@ name = "Soda Oil" id = "sodaoil" result = "sodaoil" - required_reagents = list("cornoil" = 4, "sodawater" = 1, "carbon" = 1, "tricordrazine" = 1) + required_reagents = list("cookingoil" = 4, "sodawater" = 1, "carbon" = 1, "tricordrazine" = 1) result_amount = 6 /decl/chemical_reaction/instant/drinks/fusionnaire diff --git a/code/modules/reagents/reactions/instant/drinks_vr.dm b/code/modules/reagents/reactions/instant/drinks_vr.dm index 5f32c7e5f8a..5948562cd66 100644 --- a/code/modules/reagents/reactions/instant/drinks_vr.dm +++ b/code/modules/reagents/reactions/instant/drinks_vr.dm @@ -137,6 +137,7 @@ name = "Choccy Milk" id = "choccymilk" result = "choccymilk" + inhibitors = list("enzyme" = 1) required_reagents = list("milk" = 3, "coco" = 1) result_amount = 4 diff --git a/code/modules/reagents/reactions/instant/food.dm b/code/modules/reagents/reactions/instant/food.dm index 952af8014b4..937825cb420 100644 --- a/code/modules/reagents/reactions/instant/food.dm +++ b/code/modules/reagents/reactions/instant/food.dm @@ -31,6 +31,7 @@ id = "chocolate_bar" result = null required_reagents = list("soymilk" = 2, "coco" = 2, "sugar" = 2) + catalysts = list("enzyme" = 5) result_amount = 1 /decl/chemical_reaction/instant/food/chocolate_bar/on_reaction(var/datum/reagents/holder, var/created_volume) @@ -44,6 +45,7 @@ id = "chocolate_bar" result = null required_reagents = list("milk" = 2, "coco" = 2, "sugar" = 2) + catalysts = list("enzyme" = 5) result_amount = 1 /decl/chemical_reaction/instant/food/chocolate_bar2/on_reaction(var/datum/reagents/holder, var/created_volume) @@ -52,6 +54,22 @@ new /obj/item/weapon/reagent_containers/food/snacks/chocolatebar(location) return +/decl/chemical_reaction/instant/food/cookingoilcorn + name = "Cooking Oil" + id = "cookingoilcorn" + result = "cookingoil" + required_reagents = list("cornoil" = 10) + catalysts = list("enzyme" = 5) + result_amount = 10 + +/decl/chemical_reaction/instant/food/cookingoilpeanut + name = "Cooking Oil" + id = "cookingoilpeanut" + result = "cookingoil" + required_reagents = list("peanutoil" = 10) + catalysts = list("enzyme" = 5) + result_amount = 10 + /decl/chemical_reaction/instant/food/soysauce name = "Soy Sauce" id = "soysauce" @@ -85,7 +103,7 @@ name = "mayonnaise" id = "mayo" result = "mayo" - required_reagents = list("egg" = 9, "cornoil" = 5, "lemonjuice" = 5, "sodiumchloride" = 1) + required_reagents = list("egg" = 9, "cookingoil" = 5, "lemonjuice" = 5, "sodiumchloride" = 1) result_amount = 15 /decl/chemical_reaction/instant/food/cheesewheel diff --git a/code/modules/reagents/reactions/instant/instant_vr.dm b/code/modules/reagents/reactions/instant/instant_vr.dm index b1d49c012a6..63b764dafeb 100644 --- a/code/modules/reagents/reactions/instant/instant_vr.dm +++ b/code/modules/reagents/reactions/instant/instant_vr.dm @@ -400,7 +400,7 @@ /mob/living/simple_mob/animal/passive/bird/parrot/poly, /mob/living/simple_mob/animal/sif/fluffy, /mob/living/simple_mob/animal/sif/fluffy/silky, - /mob/living/simple_mob/animal/passive/snake/noodle, + /mob/living/simple_mob/animal/passive/snake/python/noodle, /mob/living/simple_mob/slime/xenobio/rainbow/kendrick, /mob/living/simple_mob/animal/space/space_worm, //Space Worm parts that aren't proper heads /mob/living/simple_mob/animal/space/space_worm/head/severed, diff --git a/code/modules/reagents/reagents/food_drinks.dm b/code/modules/reagents/reagents/food_drinks.dm index 1ddc24bfc93..8de9abd0b35 100644 --- a/code/modules/reagents/reagents/food_drinks.dm +++ b/code/modules/reagents/reagents/food_drinks.dm @@ -234,6 +234,12 @@ to_chat(M, "Searing hot oil burns you, wash it off quick!") lastburnmessage = world.time +/datum/reagent/nutriment/triglyceride/oil/cooking + name = "Cooking Oil" + id = "cookingoil" + description = "A general-purpose cooking oil." + reagent_state = LIQUID + /datum/reagent/nutriment/triglyceride/oil/corn name = "Corn Oil" id = "cornoil" diff --git a/code/modules/research/designs/circuits/circuits.dm b/code/modules/research/designs/circuits/circuits.dm index fbf41ab8067..cd28842f00a 100644 --- a/code/modules/research/designs/circuits/circuits.dm +++ b/code/modules/research/designs/circuits/circuits.dm @@ -36,14 +36,21 @@ CIRCUITS BELOW id = "oriontrail" req_tech = list(TECH_DATA = 1) build_path = /obj/item/weapon/circuitboard/arcade/orion_trail - sort_string = "MAAAZ" // Duplicate string, really need to redo this whole thing + sort_string = "MAAAB" + +/datum/design/circuit/clawmachine + name = "grab-a-gift arcade machine" + id = "clawmachine" + req_tech = list(TECH_DATA = 1) + build_path = /obj/item/weapon/circuitboard/arcade/clawmachine + sort_string = "MAAAC" /datum/design/circuit/jukebox name = "jukebox" id = "jukebox" req_tech = list(TECH_MAGNET = 2, TECH_DATA = 1) build_path = /obj/item/weapon/circuitboard/jukebox - sort_string = "MAAAB" + sort_string = "MAAAO" /datum/design/circuit/seccamera name = "security camera monitor" diff --git a/code/modules/research/designs/engineering.dm b/code/modules/research/designs/engineering.dm index 5c496fdc4fa..bf55cdd7885 100644 --- a/code/modules/research/designs/engineering.dm +++ b/code/modules/research/designs/engineering.dm @@ -40,6 +40,15 @@ build_path = /obj/item/weapon/pipe_dispenser sort_string = "NAAAD" +/datum/design/item/tool/qpad_booster + name = "Quantum Pad Particle Booster" + desc = "A deceptively simple interface for increasing the mass of objects a quantum pad is capable of teleporting, at the cost of increased power draw." + id = "qpad_booster" + req_tech = list(TECH_ENGINEERING = 7, TECH_MATERIAL = 7, TECH_BLUESPACE = 6) + materials = list(MAT_STEEL = 4000, MAT_GLASS = 2000, MAT_SILVER = 2000, MAT_GOLD = 2000, MAT_VERDANTIUM = 1000) + build_path = /obj/item/device/quantum_pad_booster + sort_string = "NAAAF" + // Other devices /datum/design/item/engineering/AssembleDesignName() diff --git a/code/modules/research/prosfab_designs.dm b/code/modules/research/prosfab_designs.dm index 6f29e26ebb3..d4ab887d987 100644 --- a/code/modules/research/prosfab_designs.dm +++ b/code/modules/research/prosfab_designs.dm @@ -268,6 +268,13 @@ time = 15 materials = list(MAT_STEEL = 2000, MAT_GLASS = 750, MAT_PLASTIC = 500) +/datum/design/item/prosfab/pros/internal/stomach + name = "Prosthetic Stomach" + id = "pros_stomach" + build_path = /obj/item/organ/internal/stomach + time = 15 + materials = list(MAT_STEEL = 5625, MAT_GLASS = 1000) + //////////////////// Cyborg Parts //////////////////// /datum/design/item/prosfab/cyborg category = list("Cyborg Parts") diff --git a/code/modules/resleeving/machines_vr.dm b/code/modules/resleeving/machine_subtypes.dm similarity index 91% rename from code/modules/resleeving/machines_vr.dm rename to code/modules/resleeving/machine_subtypes.dm index b9f7c81aa6d..405bcef1416 100644 --- a/code/modules/resleeving/machines_vr.dm +++ b/code/modules/resleeving/machine_subtypes.dm @@ -1,12 +1,12 @@ -/obj/machinery/transhuman/resleever/abductor - icon = 'icons/obj/abductor_vr.dmi' - icon_state = "implantchair" - -/obj/machinery/computer/transhuman/resleeving/abductor - icon = 'icons/obj/abductor.dmi' - icon_state = "console" - -/obj/machinery/clonepod/transhuman/full/abductor - icon = 'icons/obj/abductor_vr.dmi' - icon_state = "pod_0" +/obj/machinery/transhuman/resleever/abductor + icon = 'icons/obj/abductor_vr.dmi' + icon_state = "implantchair" + +/obj/machinery/computer/transhuman/resleeving/abductor + icon = 'icons/obj/abductor.dmi' + icon_state = "console" + +/obj/machinery/clonepod/transhuman/full/abductor + icon = 'icons/obj/abductor_vr.dmi' + icon_state = "pod_0" name = "clonepod" \ No newline at end of file diff --git a/code/modules/resleeving/machines.dm b/code/modules/resleeving/machines.dm index adee6e4b0f1..bb17833e351 100644 --- a/code/modules/resleeving/machines.dm +++ b/code/modules/resleeving/machines.dm @@ -589,8 +589,9 @@ //Re-supply a NIF if one was backed up with them. if(MR.nif_path) var/obj/item/device/nif/nif = new MR.nif_path(occupant,null,MR.nif_savedata) - for(var/path in MR.nif_software) - new path(nif) + spawn(0) //Delay to not install software before NIF is fully installed + for(var/path in MR.nif_software) + new path(nif) nif.durability = MR.nif_durability //Restore backed up durability after restoring the softs. // If it was a custom sleeve (not owned by anyone), update namification sequences @@ -612,7 +613,7 @@ occupant.confused = max(occupant.confused, confuse_amount) // Apply immedeate effects occupant.eye_blurry = max(occupant.eye_blurry, blur_amount) - + // Vore deaths get a fake modifier labeled as such if(!occupant.mind) log_debug("[occupant] didn't have a mind to check for vore_death, which may be problematic.") diff --git a/code/modules/tables/flipping.dm b/code/modules/tables/flipping.dm index 23d862d66da..e7029e3c6d5 100644 --- a/code/modules/tables/flipping.dm +++ b/code/modules/tables/flipping.dm @@ -50,7 +50,7 @@ L.Add(turn(src.dir,90)) for(var/new_dir in L) var/obj/structure/table/T = locate() in get_step(src.loc,new_dir) - if(T && T.material.name == material.name) + if(T && T.material && T.material.name == material.name) if(T.flipped == 1 && T.dir == src.dir && !T.unflipping_check(new_dir)) return 0 return 1 diff --git a/code/modules/tables/interactions.dm b/code/modules/tables/interactions.dm index 27627055d72..779bb76d5fa 100644 --- a/code/modules/tables/interactions.dm +++ b/code/modules/tables/interactions.dm @@ -1,7 +1,7 @@ /obj/structure/table/CanPass(atom/movable/mover, turf/target) if(istype(mover,/obj/item/projectile)) return (check_cover(mover,target)) - if (flipped) + if(flipped == 1) if(get_dir(mover, target) == reverse_dir[dir]) // From elsewhere to here, can't move against our dir return !density return TRUE @@ -10,12 +10,12 @@ if(locate(/obj/structure/table/bench) in get_turf(mover)) return FALSE var/obj/structure/table/table = locate(/obj/structure/table) in get_turf(mover) - if(table && !table.flipped) + if(table && !(table.flipped == 1)) return TRUE return FALSE /obj/structure/table/climb_to(mob/living/mover) - if(flipped && mover.loc == loc) + if(flipped == 1 && mover.loc == loc) var/turf/T = get_step(src, dir) if(T.Enter(mover)) return T @@ -23,7 +23,7 @@ return ..() /obj/structure/table/Uncross(atom/movable/mover, turf/target) - if(flipped && (get_dir(mover, target) == dir)) // From here to elsewhere, can't move in our dir + if(flipped == 1 && (get_dir(mover, target) == dir)) // From here to elsewhere, can't move in our dir return !density return TRUE diff --git a/code/modules/tables/tables.dm b/code/modules/tables/tables.dm index f4280338489..9a71cbdba74 100644 --- a/code/modules/tables/tables.dm +++ b/code/modules/tables/tables.dm @@ -331,6 +331,8 @@ var/list/table_icon_cache = list() return FALSE if(istype(src,/obj/structure/table/bench) && !istype(S,/obj/structure/table/bench)) return FALSE + if(istype(S,/obj/structure/table/rack) && !istype(src,/obj/structure/table/rack)) + return FALSE if(istype(src,/obj/structure/table/rack) && !istype(S,/obj/structure/table/rack)) return FALSE if(istype(S,/obj/structure/table)) diff --git a/code/modules/telesci/quantum_pad.dm b/code/modules/telesci/quantum_pad.dm index 6f1381a1915..a55004e4040 100644 --- a/code/modules/telesci/quantum_pad.dm +++ b/code/modules/telesci/quantum_pad.dm @@ -13,6 +13,7 @@ var/last_teleport //to handle the cooldown var/teleporting = 0 //if it's in the process of teleporting var/power_efficiency = 1 + var/boosted = 0 // do we teleport mecha? var/obj/machinery/power/quantumpad/linked_pad //mapping @@ -32,6 +33,18 @@ mapped_quantum_pads -= map_pad_id return ..() +/obj/machinery/power/quantumpad/examine(mob/user) + . = ..() + . += "It is [linked_pad ? "currently" : "not"] linked to another pad." + if(world.time < last_teleport + teleport_cooldown) + . += "[src] is recharging power. A timer on the side reads [round((last_teleport + teleport_cooldown - world.time)/10)] seconds." + if(boosted) + . += SPAN_NOTICE("There appears to be a booster haphazardly jammed into the side of [src]. That looks unsafe.") + if(!panel_open) + . += "The panel is screwed in, obstructing the linking device." + else + . += "The linking device is now able to be scanned with a multitool." + /obj/machinery/power/quantumpad/RefreshParts() var/E = 0 for(var/obj/item/weapon/stock_parts/manipulator/M in component_parts) @@ -64,6 +77,14 @@ to_chat(user, "You link [src] to the one in [I]'s buffer.") update_icon() return 1 + + if(istype(I, /obj/item/device/quantum_pad_booster)) + var/obj/item/device/quantum_pad_booster/booster = I + visible_message("[user] violently jams [booster] into the side of [src]. [src] beeps, quietly.", \ + "You hear the sound of a device being improperly installed in sensitive machinery, then subsequent beeping.", runemessage = "beep!") + playsound(src, 'sound/items/rped.ogg', 25, 1) + boosted = TRUE + qdel(I) if(default_part_replacement(user, I)) return @@ -213,6 +234,8 @@ // Otherwise we'll need a powernet var/power_to_use = 10000 / power_efficiency + if(boosted) + power_to_use *= 5 if(draw_power(power_to_use) != power_to_use) return FALSE return TRUE @@ -220,7 +243,10 @@ /obj/machinery/power/quantumpad/proc/transport_objects(turf/destination) for(var/atom/movable/ROI in get_turf(src)) // if is anchored, don't let through - if(ROI.anchored) + if(ROI.anchored && !ismecha(ROI)) + if(ismecha(ROI)) + if(boosted) + continue if(isliving(ROI)) var/mob/living/L = ROI if(L.buckled) @@ -229,7 +255,7 @@ continue else continue - else if(!isobserver(ROI)) + else if(!isobserver(ROI) && !isEye(ROI)) continue do_teleport(ROI, destination, local = FALSE) @@ -262,3 +288,13 @@ to_chat(user, "You feel yourself pulled in different directions, before ending up not far from where you started.") flick("qpad-beam-out", src) transport_objects(get_turf(dest)) + +/obj/item/device/quantum_pad_booster + icon = 'icons/obj/device_vr.dmi' + name = "quantum pad particle booster" + desc = "A deceptively simple interface for increasing the mass of objects a quantum pad is capable of teleporting, at the cost of increased power draw." + description_info = "The three prongs at the base of the tool are not, in fact, for show." + force = 9 + sharp = TRUE + item_state = "analyzer" + icon_state = "hacktool" \ No newline at end of file diff --git a/code/modules/vchat/vchat_client.dm b/code/modules/vchat/vchat_client.dm index b2cd9df7589..a918c94cde5 100644 --- a/code/modules/vchat/vchat_client.dm +++ b/code/modules/vchat/vchat_client.dm @@ -139,14 +139,15 @@ GLOBAL_DATUM_INIT(iconCache, /savefile, new("data/iconCache.sav")) //Cache of ic set waitfor = FALSE // Only send them the number of buffered messages, instead of the ENTIRE log var/list/results = vchat_get_messages(owner.ckey, message_buffer) //If there's bad performance on reconnects, look no further - for(var/i in results.len to 1 step -1) - var/list/message = results[i] - var/count = 10 - to_chat_immediate(owner, message["time"], message["message"]) - count++ - if(count >= 10) - count = 0 - CHECK_TICK + if(islist(results)) + for(var/i in results.len to 1 step -1) + var/list/message = results[i] + var/count = 10 + to_chat_immediate(owner, message["time"], message["message"]) + count++ + if(count >= 10) + count = 0 + CHECK_TICK //It din work /datum/chatOutput/proc/become_broken() @@ -417,4 +418,4 @@ var/to_chat_src if(!fdel(o_file)) spawn(1 MINUTE) if(!fdel(o_file)) - log_debug("Warning: [ckey]'s chatlog could not be deleted one minute after file transfer was initiated. It is located at 'data/chatlog_tmp/[ckey]_chat_log' and will need to be manually removed.") \ No newline at end of file + log_debug("Warning: [ckey]'s chatlog could not be deleted one minute after file transfer was initiated. It is located at 'data/chatlog_tmp/[ckey]_chat_log' and will need to be manually removed.") diff --git a/code/modules/vore/eating/digest_act_vr.dm b/code/modules/vore/eating/digest_act_vr.dm index 76094003668..741d7e0941b 100644 --- a/code/modules/vore/eating/digest_act_vr.dm +++ b/code/modules/vore/eating/digest_act_vr.dm @@ -49,7 +49,15 @@ qdel(O) else if(item_storage) O.forceMove(item_storage) - qdel(src) + if(istype(src,/obj/item/stack)) + var/obj/item/stack/S = src + if(S.get_amount() <= 1) + qdel(src) + else + S.use(1) + digest_stage = w_class + else + qdel(src) if(g_damage > w_class) return w_class return g_damage @@ -131,6 +139,10 @@ //Replace this with a VORE setting so all types of posibrains can/can't be digested on a whim return FALSE +/obj/item/organ/internal/nano/digest_act(atom/movable/item_storage = null) + //Make proteans recoverable too + return FALSE + // Gradual damage measurement /obj/item var/digest_stage = null diff --git a/code/modules/vore/eating/inbelly_spawn.dm b/code/modules/vore/eating/inbelly_spawn.dm new file mode 100644 index 00000000000..39c09554e02 --- /dev/null +++ b/code/modules/vore/eating/inbelly_spawn.dm @@ -0,0 +1,177 @@ +/mob/observer/dead/verb/spawn_in_belly() + set category = "Ghost" + set name = "Spawn In Belly" + set desc = "Spawn in someone's belly." + + if(!client) + return + + // If any ghost-side restrictions are desired, they'll go here + + tgui_alert(src,{" +This verb allows you to spawn inside someone's belly when they are in round. +Make sure you to coordinate with your predator OOCly as well as roleplay approprietly. +You are considered to have been in the belly entire time the predator was around and are not added to crew lists. +This is not intended to be used for mechanical advantage or providing assistance, but for facilitating longterm scenes. +Please do not abuse this ability. +"},"OOC Warning") // Warning. + + var/list/eligible_targets = list() + + for(var/mob/living/pred in living_mob_list) + if(!istype(pred) || !pred.client) // Ignore preds that aren't living mobs or player controlled + continue + if(pred.no_vore) // No vore, no bellies, no inbelly spawning + continue + if(!(get_z(pred) in using_map.station_levels)) // No explo reinforcements + continue + if(ishuman(pred)) + var/mob/living/carbon/human/H = pred + if(!H.allow_inbelly_spawning) + continue + eligible_targets += H + continue + if(issilicon(pred)) + var/mob/living/silicon/S = pred + if(isAI(S)) + continue // Sorry, AI buddies. Your vore works too differently. + if(!S.allow_inbelly_spawning) + continue + eligible_targets += S + continue + if(istype(pred, /mob/living/simple_mob)) + var/mob/living/simple_mob/SM = pred + if(!SM.vore_active) // No vore, no bellies, no inbelly spawning + continue + if(!SM.allow_inbelly_spawning) + continue + eligible_targets += SM + continue + + // Only humans, simple_mobs and non-AI silicons are included. Obscure stuff like bots is skipped. + + if(!eligible_targets.len) + to_chat(src, "No eligible preds were found.") // :( + return + + var/mob/living/target = tgui_input_list(src, "Please specify which character you want to spawn inside of.", "Predator", eligible_targets) // Offer the list of things we gathered. + + if(!target || !client) // Did out target cease to exist? Or did we? + return + + // Notify them that its now pred's turn + to_chat(src, "Inbelly spawn request sent to predator.") + target.inbelly_spawn_prompt(client) // Hand reins over to them + +/mob/living/proc/inbelly_spawn_prompt(client/potential_prey) + if(!potential_prey || !istype(potential_prey)) // Did our prey cease to exist? + return + + // Are we cool with this prey spawning in at all? + var/answer = tgui_alert(src, "[potential_prey.ckey] (as [potential_prey.prefs.real_name]) wants to spawn in one of your bellies. Do you accept?", "Inbelly Spawning", list("Yes", "No")) + if(answer != "Yes") + to_chat(potential_prey, "Your request was turned down.") + return + + // Let them know so that they don't spam it. + to_chat(potential_prey, "Predator agreed to your request. Wait a bit while they choose a belly.") + + // Where we dropping? + var/obj/belly/belly_choice = tgui_input_list(src, "Choose Target Belly", "Belly Choice", src.vore_organs) + + // Wdym nowhere? + if(!belly_choice || !istype(belly_choice)) + to_chat(potential_prey, "Something went wrong with predator selecting a belly. Try again?") + to_chat(src, "No valid belly selected. Inbelly spawn cancelled.") + return + + // Extra caution never hurts + if(belly_choice.digest_mode == DM_DIGEST) + var/digest_answer = tgui_alert(src, "[belly_choice] is currently set to Digest. Are you sure you want to spawn prey there?", "Inbelly Spawning", list("Yes", "No")) + if(digest_answer != "Yes") + to_chat(potential_prey, "Something went wrong with predator selecting a belly. Try again?") + to_chat(src, "Inbelly spawn cancelled.") + + // Are they already fat (and/or appropriate equivalent)? + var/absorbed = FALSE + var/absorbed_answer = tgui_alert(src, "Do you want them to start absorbed?", "Inbelly Spawning", list("Yes", "No")) + + if(absorbed_answer == "Yes") + absorbed = TRUE + + // They disappeared? + if(!potential_prey) + to_chat(src, "No prey found. Something went wrong!") + return + + // Final confirmation for pred + var/confirmation_pred = tgui_alert(src, "Are you certain that you want [potential_prey.prefs.real_name] spawned in your [belly_choice][absorbed ? ", absorbed" : ""]?", "Inbelly Spawning", list("Yes", "No")) + + if(confirmation_pred != "Yes") + to_chat(potential_prey, "Your pred couldn't finish selection. Try again?") + to_chat(src, "Inbelly spawn cancelled.") + return + + to_chat(src, "Waiting for prey's confirmation...") + + // And final confirmation for prey + var/confirmation_prey = tgui_alert(potential_prey, "Are you certain that you to spawn in [src]'s [belly_choice][absorbed ? ", absorbed" : ""]?", "Inbelly Spawning", list("Yes", "No")) + + if(confirmation_prey == "Yes" && potential_prey && src && belly_choice) + //Now we finally spawn them in! + if(!is_alien_whitelisted(potential_prey, GLOB.all_species[potential_prey.prefs.species])) + to_chat(potential_prey, "You are not whitelisted to play as currently selected character.") + to_chat(src, "Prey accepted the confirmation, but something went wrong with spawning their character.") + return + inbelly_spawn(potential_prey, src, belly_choice, absorbed) + else + to_chat(potential_prey, "Inbelly spawn cancelled.") + to_chat(src, "Prey cancelled their inbelly spawn request.") + return + +/proc/inbelly_spawn(client/prey, mob/living/pred, obj/belly/target_belly, var/absorbed = FALSE) + // All this is basically admin late spawn-in, but skipping all parts related to records and equipment and with predteremined location + var/player_key = prey.key + var/picked_ckey = prey.ckey + var/picked_slot = prey.prefs.default_slot + var/mob/living/carbon/human/new_character + + new_character = new(null) // Spawn them in nullspace first. Can't have "Defaultname Defaultnameson slides into your Stomach". + + if(!new_character) + return + + prey.prefs.copy_to(new_character) + if(new_character.dna) + new_character.dna.ResetUIFrom(new_character) + new_character.sync_organ_dna() + new_character.key = player_key + if(new_character.mind) + var/datum/antagonist/antag_data = get_antag_data(new_character.mind.special_role) + if(antag_data) + antag_data.add_antagonist(new_character.mind) + antag_data.place_mob(new_character) + + if(new_character.mind) + new_character.mind.loaded_from_ckey = picked_ckey + new_character.mind.loaded_from_slot = picked_slot + + for(var/lang in prey.prefs.alternate_languages) + var/datum/language/chosen_language = GLOB.all_languages[lang] + if(chosen_language) + if(is_lang_whitelisted(prey,chosen_language) || (new_character.species && (chosen_language.name in new_character.species.secondary_langs))) + new_character.add_language(lang) + + new_character.regenerate_icons() + + new_character.update_transform() + + new_character.forceMove(target_belly) // Now that they're all setup and configured, send them to their destination. + + if(absorbed) + target_belly.absorb_living(new_character) // Glorp. + + log_admin("[prey] (as [new_character.real_name] has spawned inside one of [pred]'s bellies.") // Log it. Avoid abuse. + message_admins("[prey] (as [new_character.real_name] has spawned inside one of [pred]'s bellies.", 1) + + return new_character // incase its ever needed \ No newline at end of file diff --git a/code/modules/vore/eating/living_vr.dm b/code/modules/vore/eating/living_vr.dm index 23dd3eea553..7c480b31ef2 100644 --- a/code/modules/vore/eating/living_vr.dm +++ b/code/modules/vore/eating/living_vr.dm @@ -7,6 +7,7 @@ var/resizable = TRUE // Can other people resize you? (Usually ignored for self-resizes) var/digest_leave_remains = FALSE // Will this mob leave bones/skull/etc after the melty demise? var/allowmobvore = TRUE // Will simplemobs attempt to eat the mob? + var/allow_inbelly_spawning = FALSE // Will we even bother with attempts of someone to spawn in in one of our bellies? var/showvoreprefs = TRUE // Determines if the mechanical vore preferences button will be displayed on the mob or not. var/obj/belly/vore_selected // Default to no vore capability. var/list/vore_organs = list() // List of vore containers inside a mob @@ -143,9 +144,7 @@ if(is_vore_predator(src)) for(var/mob/living/M in H.contents) if(attacker.eat_held_mob(attacker, M, src)) - if(H.held_mob == M) - H.held_mob = null - return TRUE //return TRUE to exit upper procs + return TRUE //return TRUE to exit upper procs else log_debug("[attacker] attempted to feed [H.contents] to [src] ([type]) but it failed.") @@ -224,6 +223,7 @@ P.show_vore_fx = src.show_vore_fx P.can_be_drop_prey = src.can_be_drop_prey P.can_be_drop_pred = src.can_be_drop_pred + P.allow_inbelly_spawning = src.allow_inbelly_spawning P.allow_spontaneous_tf = src.allow_spontaneous_tf P.step_mechanics_pref = src.step_mechanics_pref P.pickup_pref = src.pickup_pref @@ -259,6 +259,7 @@ show_vore_fx = P.show_vore_fx can_be_drop_prey = P.can_be_drop_prey can_be_drop_pred = P.can_be_drop_pred + allow_inbelly_spawning = P.allow_inbelly_spawning allow_spontaneous_tf = P.allow_spontaneous_tf step_mechanics_pref = P.step_mechanics_pref pickup_pref = P.pickup_pref @@ -435,6 +436,14 @@ holo.drop_prey() //Easiest way log_and_message_admins("[key_name(src)] used the OOC escape button to get out of [key_name(holo.master)] (AI HOLO) ([holo ? "JMP" : "null"])") + //You're in a capture crystal! ((It's not vore but close enough!)) + else if(iscapturecrystal(loc)) + var/obj/item/capture_crystal/crystal = loc + crystal.unleash() + crystal.bound_mob = null + crystal.bound_mob = capture_crystal = 0 + log_and_message_admins("[key_name(src)] used the OOC escape button to get out of [crystal] owned by [crystal.owner]. [ADMIN_FLW(src)]") + //Don't appear to be in a vore situation else to_chat(src,"You aren't inside anyone, though, is the thing.") @@ -518,7 +527,16 @@ user.visible_message(success_msg) // Actually shove prey into the belly. - belly.nom_mob(prey, user) + if(istype(prey.loc, /obj/item/weapon/holder)) + var/obj/item/weapon/holder/H = prey.loc + for(var/mob/living/M in H.contents) + belly.nom_mob(M, user) + if(M.loc == H) // In case nom_mob failed somehow. + M.forceMove(get_turf(src)) + H.held_mob = null + qdel(H) + else + belly.nom_mob(prey, user) if(!ishuman(user)) user.update_icons() @@ -631,7 +649,11 @@ if(S.holding) to_chat(src, "There's something inside!") return - + if(iscapturecrystal(I)) + var/obj/item/capture_crystal/C = I + if(!C.bound_mob.devourable) + to_chat(src, "That doesn't seem like a good idea. (\The [C.bound_mob]'s prefs don't allow it.)") + return drop_item() I.forceMove(vore_selected) updateVRPanel() @@ -685,6 +707,13 @@ else if (istype(I,/obj/item/clothing/accessory/collar)) visible_message("[src] demonstrates their voracious capabilities by swallowing [I] whole!") to_chat(src, "You can taste the submissiveness in the wearer of [I]!") + else if(iscapturecrystal(I)) + var/obj/item/capture_crystal/C = I + if(C.bound_mob && (C.bound_mob in C.contents)) + if(isbelly(C.loc)) + var/obj/belly/B = C.loc + to_chat(C.bound_mob, "Outside of your crystal, you can see; [B.desc]") + to_chat(src, "You can taste the the power of command.") else to_chat(src, "You can taste the flavor of garbage. Delicious.") return @@ -853,6 +882,7 @@ dispvoreprefs += "Healbelly permission: [permit_healbelly ? "Allowed" : "Disallowed"]
" dispvoreprefs += "Spontaneous vore prey: [can_be_drop_prey ? "Enabled" : "Disabled"]
" dispvoreprefs += "Spontaneous vore pred: [can_be_drop_pred ? "Enabled" : "Disabled"]
" + dispvoreprefs += "Inbelly Spawning: [allow_inbelly_spawning ? "Allowed" : "Disallowed"]
" dispvoreprefs += "Spontaneous transformation: [allow_spontaneous_tf ? "Enabled" : "Disabled"]
" dispvoreprefs += "Can be stepped on/over: [step_mechanics_pref ? "Allowed" : "Disallowed"]
" dispvoreprefs += "Can be picked up: [pickup_pref ? "Allowed" : "Disallowed"]
" diff --git a/code/modules/vore/eating/vore_vr.dm b/code/modules/vore/eating/vore_vr.dm index e3e7b9befa1..41632774626 100644 --- a/code/modules/vore/eating/vore_vr.dm +++ b/code/modules/vore/eating/vore_vr.dm @@ -49,6 +49,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE var/feeding = TRUE var/can_be_drop_prey = FALSE var/can_be_drop_pred = FALSE + var/allow_inbelly_spawning = FALSE var/allow_spontaneous_tf = FALSE var/digest_leave_remains = FALSE var/allowmobvore = TRUE @@ -137,6 +138,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE show_vore_fx = json_from_file["show_vore_fx"] can_be_drop_prey = json_from_file["can_be_drop_prey"] can_be_drop_pred = json_from_file["can_be_drop_pred"] + allow_inbelly_spawning = json_from_file["allow_inbelly_spawning"] allow_spontaneous_tf = json_from_file["allow_spontaneous_tf"] step_mechanics_pref = json_from_file["step_mechanics_pref"] pickup_pref = json_from_file["pickup_pref"] @@ -165,6 +167,8 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE can_be_drop_prey = FALSE if(isnull(can_be_drop_pred)) can_be_drop_pred = FALSE + if(isnull(allow_inbelly_spawning)) + allow_inbelly_spawning = FALSE if(isnull(allow_spontaneous_tf)) allow_spontaneous_tf = FALSE if(isnull(step_mechanics_pref)) @@ -196,6 +200,7 @@ V::::::V V::::::VO:::::::OOO:::::::ORR:::::R R:::::REE::::::EEEEEE "show_vore_fx" = show_vore_fx, "can_be_drop_prey" = can_be_drop_prey, "can_be_drop_pred" = can_be_drop_pred, + "allow_inbelly_spawning"= allow_inbelly_spawning, "allow_spontaneous_tf" = allow_spontaneous_tf, "step_mechanics_pref" = step_mechanics_pref, "pickup_pref" = pickup_pref, diff --git a/code/modules/vore/eating/vorepanel_vr.dm b/code/modules/vore/eating/vorepanel_vr.dm index bd2f2af99dc..ea1a961efeb 100644 --- a/code/modules/vore/eating/vorepanel_vr.dm +++ b/code/modules/vore/eating/vorepanel_vr.dm @@ -228,6 +228,7 @@ "show_vore_fx" = host.show_vore_fx, "can_be_drop_prey" = host.can_be_drop_prey, "can_be_drop_pred" = host.can_be_drop_pred, + "allow_inbelly_spawning" = host.allow_inbelly_spawning, "allow_spontaneous_tf" = host.allow_spontaneous_tf, "step_mechanics_active" = host.step_mechanics_pref, "pickup_mechanics_active" = host.pickup_pref, @@ -306,7 +307,7 @@ return set_attr(usr, params) if("saveprefs") - if(!ishuman(host) && !issilicon(host)) + if(host.real_name != host.client.prefs.real_name || (!ishuman(host) && !issilicon(host))) var/choice = tgui_alert(usr, "Warning: Saving your vore panel while playing what is very-likely not your normal character will overwrite whatever character you have loaded in character setup. Maybe this is your 'playing a simple mob' slot, though. Are you SURE you want to overwrite your current slot with these vore bellies?", "WARNING!", list("No, abort!", "Yes, save.")) if(choice != "Yes, save.") return TRUE @@ -362,6 +363,12 @@ host.client.prefs_vr.can_be_drop_prey = host.can_be_drop_prey unsaved_changes = TRUE return TRUE + if("toggle_allow_inbelly_spawning") + host.allow_inbelly_spawning = !host.allow_inbelly_spawning + if(host.client.prefs_vr) + host.client.prefs_vr.allow_inbelly_spawning = host.allow_inbelly_spawning + unsaved_changes = TRUE + return TRUE if("toggle_allow_spontaneous_tf") host.allow_spontaneous_tf = !host.allow_spontaneous_tf if(host.client.prefs_vr) diff --git a/code/modules/vore/fluffstuff/custom_clothes_vr.dm b/code/modules/vore/fluffstuff/custom_clothes_vr.dm index 6a5ef9c82e8..761f1d7bd3c 100644 --- a/code/modules/vore/fluffstuff/custom_clothes_vr.dm +++ b/code/modules/vore/fluffstuff/custom_clothes_vr.dm @@ -2296,15 +2296,72 @@ Departamental Swimsuits, for general use colorswap(usr) -//PastelPrinceDan: Masumi Maki -/obj/item/clothing/under/fluff/masumi_overalls - name = "white and blue overalls" +//PastelPrinceDan: Masumi Maki & Hatterhat: Harold Robinson +/obj/item/clothing/under/fluff/mechanic_overalls + name = "mechanic overalls" desc = "A set of white and blue overalls, paired with a yellow shirt." icon = 'icons/vore/custom_clothes_vr.dmi' - icon_state = "masumioveralls" - item_state = "masumioveralls" + icon_state = "mechaoveralls" + item_state = "mechaoveralls" icon_override = 'icons/vore/custom_onmob_vr.dmi' +//PastelPrinceDan: Masumi Maki & Hatterhat: Harold Robinson +/obj/item/clothing/suit/storage/hooded/wintercoat/fluff/mechanic + name = "mechanic winter coat" + desc = "A blue and yellow winter coat, worn only by overachievers." + icon = 'icons/vore/custom_clothes_vr.dmi' + icon_state = "mechacoat" + + icon_override = 'icons/vore/custom_onmob_vr.dmi' + item_state = "mechacoat_mob" + hoodtype = /obj/item/clothing/head/hood/winter/fluff/mechanic + +/obj/item/clothing/head/hood/winter/fluff/mechanic + name = "mechanic winter hood" + desc = "A blue and yellow winter coat's hood." + icon = 'icons/vore/custom_clothes_vr.dmi' + icon_state = "mechahood" + + icon_override = 'icons/vore/custom_onmob_vr.dmi' + item_state = "mechahood_mob" + +/obj/item/clothing/suit/storage/hooded/wintercoat/fluff/mechanic/ui_action_click() + ToggleHood_mechacoat() + +/obj/item/clothing/suit/storage/hooded/wintercoat/fluff/mechanic/equipped(mob/user, slot) + if(slot != slot_wear_suit) + RemoveHood_mechacoat() + ..() + +/obj/item/clothing/suit/storage/hooded/wintercoat/fluff/mechanic/proc/RemoveHood_mechacoat() + icon_state = "mechacoat" + item_state = "mechacoat_mob" + hood_up = 0 + if(ishuman(hood.loc)) + var/mob/living/carbon/H = hood.loc + H.unEquip(hood, 1) + H.update_inv_wear_suit() + hood.loc = src + +/obj/item/clothing/suit/storage/hooded/wintercoat/fluff/mechanic/proc/ToggleHood_mechacoat() + if(!hood_up) + if(ishuman(loc)) + var/mob/living/carbon/human/H = loc + if(H.wear_suit != src) + to_chat(H, "You must be wearing [src] to put up the hood!") + return + if(H.head) + to_chat(H, "You're already wearing something on your head!") + return + else + H.equip_to_slot_if_possible(hood,slot_head,0,0,1) + hood_up = 1 + icon_state = "mechacoat_t" + item_state = "mechacoat_mob_t" + H.update_inv_wear_suit() + else + RemoveHood_mechacoat() + //Pandora029 : Evelyn Tareen /obj/item/clothing/suit/storage/hooded/wintercoat/security/fluff/evelyn name = "warden's navy winter coat" diff --git a/code/modules/vore/fluffstuff/custom_items_vr.dm b/code/modules/vore/fluffstuff/custom_items_vr.dm index 8f1c678a0fd..7663a09ea4d 100644 --- a/code/modules/vore/fluffstuff/custom_items_vr.dm +++ b/code/modules/vore/fluffstuff/custom_items_vr.dm @@ -1397,4 +1397,25 @@ hold.can_hold = list(/obj/item/weapon/material/knife, /obj/item/weapon/reagent_containers/glass/bottle) new /obj/item/weapon/material/knife/machete/hatchet/unathiknife/fluff/antoinette(hold) - new /obj/item/weapon/reagent_containers/glass/bottle/poppy(hold) \ No newline at end of file + new /obj/item/weapon/reagent_containers/glass/bottle/poppy(hold) + + +//Hunterbirk - Amaryll +//This is a 'technical item' which basically is meant to represent rippiing things up with bare claws. +/obj/item/weapon/surgical/scalpel/amaryll_claws + name = "Amaryll's Claws" + desc = "This doesn't quite look like what it really is." + icon = 'icons/vore/custom_items_vr.dmi' + icon_state = "claws" + drop_sound = null + pickup_sound = null + origin_tech = null + matter = null + +//Coolcrow420 - Jade Davis +/obj/item/weapon/stamp/fluff/jade_horror + name = "Council of Mid Horror rubber stamp" + icon = 'icons/vore/custom_items_vr.dmi' + icon_state = "stamp-midhorror" + stamptext = "This paper has been certified by The Council of Mid Horror" + diff --git a/code/modules/xenoarcheaology/tools/suspension_generator.dm b/code/modules/xenoarcheaology/tools/suspension_generator.dm index 08d41fc1213..2f2c87954ee 100644 --- a/code/modules/xenoarcheaology/tools/suspension_generator.dm +++ b/code/modules/xenoarcheaology/tools/suspension_generator.dm @@ -13,6 +13,15 @@ /obj/machinery/suspension_gen/Initialize() . = ..() cell = new /obj/item/weapon/cell/high(src) + power_change() + +/obj/machinery/suspension_gen/power_change() + var/oldstat = stat + if(cell) + stat &= ~NOPOWER + else + stat |= NOPOWER + return (stat != oldstat) /obj/machinery/suspension_gen/process() if(suspension_field) @@ -56,7 +65,7 @@ /obj/machinery/suspension_gen/tgui_data(mob/user, datum/tgui/ui, datum/tgui_state/state) var/list/data = ..() - + data["cell"] = cell data["cellCharge"] = cell?.charge data["cellMaxCharge"] = cell?.maxcharge diff --git a/config/alienwhitelist.txt b/config/alienwhitelist.txt index 1a4e4a0735a..38628e3e97c 100644 --- a/config/alienwhitelist.txt +++ b/config/alienwhitelist.txt @@ -30,8 +30,10 @@ funnyman2003 - Xenochimera greennyy - Protean h0lysquirr3l - Protean hawkerthegreat - Vox +heroman3003 - Xenochimera hollifex - Diona huenererschrecker - Xenochimera +hunterbirk - Protean hunterbirk - Xenochimera idcaboutaname - Protean inuzari - Diona @@ -47,6 +49,7 @@ lizehrd - Xenochimera lordlag - Black-Eyed Shadekin losstinspess - Xenochimera magpiemayhem - Vox +magpiemayhem - Xenochimera marcobarko - Protean mewchild - Diona mewchild - Vox @@ -85,7 +88,6 @@ silvertalismen - Xenochimera skylarks - Black-Eyed Shadekin spirit1299 - Black-Eyed Shadekin stackerrobot - Protean -stobarico - Protean storesund97 - Protean syzygyrior - Black-Eyed Shadekin tastypred - Black-Eyed Shadekin @@ -112,4 +114,4 @@ xioen - Xenochimera xonkon - Protean zalvine - Shadekin Empathy zammyman215 - Vox -zeracyfr - Xenochimera \ No newline at end of file +zeracyfr - Xenochimera diff --git a/icons/_nanomaps/tether_nanomap_z1.png b/icons/_nanomaps/tether_nanomap_z1.png index e8510b3a4d0..1ad2755b7c8 100644 Binary files a/icons/_nanomaps/tether_nanomap_z1.png and b/icons/_nanomaps/tether_nanomap_z1.png differ diff --git a/icons/_nanomaps/tether_nanomap_z2.png b/icons/_nanomaps/tether_nanomap_z2.png index a2d478b413d..d30a99906b8 100644 Binary files a/icons/_nanomaps/tether_nanomap_z2.png and b/icons/_nanomaps/tether_nanomap_z2.png differ diff --git a/icons/_nanomaps/tether_nanomap_z3.png b/icons/_nanomaps/tether_nanomap_z3.png index 31ccab1e4fe..3c554121169 100644 Binary files a/icons/_nanomaps/tether_nanomap_z3.png and b/icons/_nanomaps/tether_nanomap_z3.png differ diff --git a/icons/_nanomaps/tether_nanomap_z4.png b/icons/_nanomaps/tether_nanomap_z4.png index 510d22b3d61..c2623219ee4 100644 Binary files a/icons/_nanomaps/tether_nanomap_z4.png and b/icons/_nanomaps/tether_nanomap_z4.png differ diff --git a/icons/_nanomaps/tether_nanomap_z5.png b/icons/_nanomaps/tether_nanomap_z5.png index 6a368871fdf..0e85f1c55ae 100644 Binary files a/icons/_nanomaps/tether_nanomap_z5.png and b/icons/_nanomaps/tether_nanomap_z5.png differ diff --git a/icons/inventory/ears/mob.dmi b/icons/inventory/ears/mob.dmi index 174ed17469e..95ec0e9c8a9 100644 Binary files a/icons/inventory/ears/mob.dmi and b/icons/inventory/ears/mob.dmi differ diff --git a/icons/inventory/head/mob.dmi b/icons/inventory/head/mob.dmi index 356aab58f57..c555efe874c 100644 Binary files a/icons/inventory/head/mob.dmi and b/icons/inventory/head/mob.dmi differ diff --git a/icons/inventory/suit/item_vr.dmi b/icons/inventory/suit/item_vr.dmi index 30fc4669552..0261f8b6a3b 100644 Binary files a/icons/inventory/suit/item_vr.dmi and b/icons/inventory/suit/item_vr.dmi differ diff --git a/icons/inventory/suit/mob_vr.dmi b/icons/inventory/suit/mob_vr.dmi index 4288fd03265..d5e2082d0e1 100644 Binary files a/icons/inventory/suit/mob_vr.dmi and b/icons/inventory/suit/mob_vr.dmi differ diff --git a/icons/mob/alienanimals_x32.dmi b/icons/mob/alienanimals_x32.dmi index ca7a825c23f..b187ad58735 100644 Binary files a/icons/mob/alienanimals_x32.dmi and b/icons/mob/alienanimals_x32.dmi differ diff --git a/icons/mob/animal.dmi b/icons/mob/animal.dmi index fd99eed3f02..def737dcc36 100644 Binary files a/icons/mob/animal.dmi and b/icons/mob/animal.dmi differ diff --git a/icons/mob/items/lefthand_holder.dmi b/icons/mob/items/lefthand_holder.dmi index e0af896f82e..aa7e7807cca 100644 Binary files a/icons/mob/items/lefthand_holder.dmi and b/icons/mob/items/lefthand_holder.dmi differ diff --git a/icons/mob/items/righthand_holder.dmi b/icons/mob/items/righthand_holder.dmi index 70a11311907..bad25f481b9 100644 Binary files a/icons/mob/items/righthand_holder.dmi and b/icons/mob/items/righthand_holder.dmi differ diff --git a/icons/mob/robots_vr.dmi b/icons/mob/robots_vr.dmi index 2e34ed66d5f..a05fa9c79f0 100644 Binary files a/icons/mob/robots_vr.dmi and b/icons/mob/robots_vr.dmi differ diff --git a/icons/mob/snake_vr.dmi b/icons/mob/snake_vr.dmi index 42631b85de9..6802aecc476 100644 Binary files a/icons/mob/snake_vr.dmi and b/icons/mob/snake_vr.dmi differ diff --git a/icons/mob/vore/ears_32x64.dmi b/icons/mob/vore/ears_32x64.dmi index d790034cda3..234a03f2ca8 100644 Binary files a/icons/mob/vore/ears_32x64.dmi and b/icons/mob/vore/ears_32x64.dmi differ diff --git a/icons/mob/widerobot_eng_vr.dmi b/icons/mob/widerobot_eng_vr.dmi index b5c55b53c8c..a619f3286c4 100644 Binary files a/icons/mob/widerobot_eng_vr.dmi and b/icons/mob/widerobot_eng_vr.dmi differ diff --git a/icons/obj/capture_crystal_vr.dmi b/icons/obj/capture_crystal_vr.dmi new file mode 100644 index 00000000000..7cd9208b2b9 Binary files /dev/null and b/icons/obj/capture_crystal_vr.dmi differ diff --git a/icons/obj/computer.dmi b/icons/obj/computer.dmi index a52ac02d69b..8ae5c06b72f 100644 Binary files a/icons/obj/computer.dmi and b/icons/obj/computer.dmi differ diff --git a/icons/obj/device_vr.dmi b/icons/obj/device_vr.dmi index b75163e8810..3c4a3c5d09c 100644 Binary files a/icons/obj/device_vr.dmi and b/icons/obj/device_vr.dmi differ diff --git a/icons/obj/food_vr.dmi b/icons/obj/food_vr.dmi index 0530aef4550..64b55a6b26b 100644 Binary files a/icons/obj/food_vr.dmi and b/icons/obj/food_vr.dmi differ diff --git a/icons/obj/hydroponics_growing.dmi b/icons/obj/hydroponics_growing.dmi index 52146b3793e..0a0a96aa6fc 100644 Binary files a/icons/obj/hydroponics_growing.dmi and b/icons/obj/hydroponics_growing.dmi differ diff --git a/icons/obj/hydroponics_products.dmi b/icons/obj/hydroponics_products.dmi index cb0e5036928..fd04428843a 100644 Binary files a/icons/obj/hydroponics_products.dmi and b/icons/obj/hydroponics_products.dmi differ diff --git a/icons/obj/rig_modules.dmi b/icons/obj/rig_modules.dmi index a63fcc23a85..841733ee726 100644 Binary files a/icons/obj/rig_modules.dmi and b/icons/obj/rig_modules.dmi differ diff --git a/icons/obj/seeds.dmi b/icons/obj/seeds.dmi index 2ed8360e956..f7d75f25b65 100644 Binary files a/icons/obj/seeds.dmi and b/icons/obj/seeds.dmi differ diff --git a/icons/obj/sofas.dmi b/icons/obj/sofas.dmi index 9864a923acc..b8ef1d5c0a0 100644 Binary files a/icons/obj/sofas.dmi and b/icons/obj/sofas.dmi differ diff --git a/icons/turf/flooring/weird_vr.dmi b/icons/turf/flooring/weird_vr.dmi new file mode 100644 index 00000000000..b8e10ec136c Binary files /dev/null and b/icons/turf/flooring/weird_vr.dmi differ diff --git a/icons/vore/custom_clothes_vr.dmi b/icons/vore/custom_clothes_vr.dmi index 5d75cf88b90..3269a00d083 100644 Binary files a/icons/vore/custom_clothes_vr.dmi and b/icons/vore/custom_clothes_vr.dmi differ diff --git a/icons/vore/custom_items_vr.dmi b/icons/vore/custom_items_vr.dmi index b8fe78c7591..b98f92406f2 100644 Binary files a/icons/vore/custom_items_vr.dmi and b/icons/vore/custom_items_vr.dmi differ diff --git a/icons/vore/custom_onmob_vr.dmi b/icons/vore/custom_onmob_vr.dmi index 5e2d399fd86..03c26ba63d0 100644 Binary files a/icons/vore/custom_onmob_vr.dmi and b/icons/vore/custom_onmob_vr.dmi differ diff --git a/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm b/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm index f08d716e93a..a1f2dbd4cf5 100644 --- a/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm +++ b/maps/expedition_vr/aerostat/_aerostat_science_outpost.dm @@ -280,6 +280,14 @@ VIRGO2_TURF_CREATE(/turf/simulated/floor/hull) name = "Firing Range" icon_state = "orawhisqu" +/area/offmap/aerostat/inside/miscstorage + name = "Miscellaneous Storage" + icon_state = "orawhisqu" + +/area/offmap/aerostat/inside/virology + name = "Virology Lab" + icon_state = "yelwhicir" + /area/offmap/aerostat/inside/south name = "Miscellaneous Labs A" icon_state = "blublasqu" diff --git a/maps/expedition_vr/aerostat/aerostat_science_outpost.dmm b/maps/expedition_vr/aerostat/aerostat_science_outpost.dmm index 117275c22c0..d3dae2538ea 100644 --- a/maps/expedition_vr/aerostat/aerostat_science_outpost.dmm +++ b/maps/expedition_vr/aerostat/aerostat_science_outpost.dmm @@ -195,6 +195,15 @@ }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) +"aA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "aB" = ( /obj/effect/floor_decal/rust, /obj/effect/floor_decal/industrial/warning/dust{ @@ -216,11 +225,11 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/airlock/west) "aF" = ( -/obj/machinery/atmospherics/unary/heat_exchanger, -/obj/structure/window/basic, -/obj/effect/floor_decal/corner/red/border, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/atmospherics/unary/freezer{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) "aG" = ( /obj/machinery/power/solar, /obj/effect/floor_decal/rust, @@ -229,16 +238,19 @@ }, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) -"aH" = ( -/turf/simulated/wall, -/area/offmap/aerostat/inside/misclab) "aI" = ( /obj/machinery/atmospherics/pipe/simple/hidden/blue, +/obj/structure/bed/chair/office/light{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "aJ" = ( /obj/effect/decal/cleanable/cobweb, -/obj/machinery/telecomms/relay/preset/sd, +/obj/machinery/telecomms/relay/preset/station, /obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) @@ -256,6 +268,7 @@ /obj/structure/cable/yellow{ icon_state = "4-8" }, +/obj/structure/table/wooden_reinforced, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "aN" = ( @@ -418,7 +431,10 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/north) "bj" = ( -/obj/effect/floor_decal/industrial/warning/dust, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/sign/painting/public{ + pixel_x = 30 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "bk" = ( @@ -454,16 +470,6 @@ }, /turf/simulated/floor, /area/offmap/aerostat/inside/airlock/north) -"bm" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) "bn" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -497,15 +503,13 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/north) "bq" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, +/obj/machinery/vending/fitness{ + dir = 1 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "br" = ( @@ -558,11 +562,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) -"bx" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/table/reinforced, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) "bz" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" @@ -586,9 +585,6 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "bC" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab" - }, /obj/machinery/atmospherics/pipe/simple/hidden/green{ dir = 4 }, @@ -596,24 +592,27 @@ /obj/structure/cable{ icon_state = "4-8" }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/toxins) +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) "bE" = ( /obj/machinery/atmospherics/pipe/manifold/hidden{ dir = 1 }, /turf/simulated/wall/r_wall, /area/offmap/aerostat/inside/xenoarch) +"bF" = ( +/obj/structure/bed/chair/comfy/black, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "bG" = ( -/obj/structure/table/standard, -/obj/item/stack/cable_coil, -/obj/item/weapon/tool/wirecutters, -/obj/item/stack/cable_coil, -/obj/machinery/atmospherics/unary/vent_pump/on{ +/obj/structure/window/reinforced{ dir = 4 }, -/obj/item/weapon/tank/phoron, +/obj/machinery/portable_atmospherics/canister/empty, +/obj/machinery/door/window/brigdoor/eastleft{ + dir = 2; + req_access = list(7) + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "bI" = ( @@ -677,15 +676,11 @@ /obj/structure/cable{ icon_state = "1-8" }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) -"bO" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) "bP" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red, /obj/machinery/meter, @@ -697,11 +692,8 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "bR" = ( -/obj/machinery/atmospherics/pipe/simple/visible/red{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -714,20 +706,6 @@ }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) -"bT" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, -/obj/machinery/alarm{ - dir = 4; - pixel_x = -23 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "bU" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 8 @@ -742,7 +720,7 @@ dir = 4 }, /turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "bW" = ( /obj/machinery/atmospherics/pipe/simple/hidden/green{ dir = 9 @@ -789,6 +767,12 @@ /obj/machinery/light, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) +"ci" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) "cj" = ( /obj/structure/closet/emcloset, /turf/simulated/shuttle/floor/yellow, @@ -828,7 +812,6 @@ /obj/structure/cable/heavyduty{ icon_state = "2-4" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "cp" = ( @@ -847,6 +830,9 @@ }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "cr" = ( @@ -866,6 +852,12 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/xenoarch) +"cs" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) "ct" = ( /obj/machinery/door/airlock/external{ frequency = 1380; @@ -935,14 +927,12 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/arm/nw) "cz" = ( -/obj/machinery/light{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 + dir = 9 }, +/obj/structure/closet/wardrobe/genetics_white, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/genetics) "cA" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/green, /turf/simulated/floor/tiled/techfloor, @@ -960,6 +950,12 @@ /obj/machinery/meter, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) +"cD" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "cE" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/black, /turf/simulated/floor/tiled/techfloor, @@ -968,8 +964,19 @@ /obj/machinery/atmospherics/pipe/simple/hidden/red{ dir = 6 }, +/obj/machinery/light, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) +"cG" = ( +/obj/machinery/light/floortube{ + dir = 4; + pixel_x = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "cI" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 1 @@ -1006,6 +1013,20 @@ }, /turf/simulated/floor, /area/offmap/aerostat/inside/arm/sw) +"cM" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/lockbox/vials, +/obj/item/weapon/storage/fancy/vials, +/obj/item/weapon/reagent_containers/syringe/antiviral, +/obj/item/weapon/reagent_containers/syringe/antiviral, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "cO" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -1033,6 +1054,12 @@ }, /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) +"cQ" = ( +/obj/structure/dispenser{ + phorontanks = 0 + }, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/drillstorage) "cR" = ( /obj/structure/bed/chair/sofa/purp/left, /obj/structure/sign/painting/public{ @@ -1040,6 +1067,10 @@ }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) +"cT" = ( +/obj/machinery/smartfridge/chemistry/virology, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "cU" = ( /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/sw) @@ -1059,12 +1090,15 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch/chamber) "cX" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "cZ" = ( @@ -1289,6 +1323,19 @@ }, /turf/simulated/floor, /area/offmap/aerostat/inside/arm/ne) +"dz" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/window/basic, +/obj/structure/window/basic{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/heat_exchanger, +/obj/effect/floor_decal/corner/red/border{ + dir = 8 + }, +/obj/effect/floor_decal/corner/red/border, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/toxins) "dA" = ( /obj/effect/floor_decal/rust, /obj/effect/decal/cleanable/blood, @@ -1352,8 +1399,24 @@ /area/offmap/aerostat/solars) "dH" = ( /obj/structure/table/standard, +/obj/item/weapon/storage/backpack/parachute{ + pixel_x = 6; + pixel_y = -6 + }, +/obj/item/weapon/storage/backpack/parachute{ + pixel_x = -6; + pixel_y = -6 + }, +/obj/item/weapon/storage/backpack/parachute{ + pixel_x = 6; + pixel_y = 6 + }, +/obj/item/weapon/storage/backpack/parachute{ + pixel_x = -6; + pixel_y = 6 + }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) "dI" = ( /obj/machinery/power/solar, /obj/effect/floor_decal/industrial/warning/dust, @@ -1517,12 +1580,8 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/arm/nw) "dY" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/shuttle/wall/voidcraft/green, +/area/offmap/aerostat/inside/atmos) "dZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /obj/structure/cable{ @@ -1561,6 +1620,8 @@ /area/offmap/aerostat/inside/airlock/east) "ed" = ( /obj/machinery/light, +/obj/effect/floor_decal/industrial/outline/yellow, +/obj/machinery/mining/brace, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) "ef" = ( @@ -1568,7 +1629,7 @@ icon_state = "4-8" }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "ei" = ( /obj/effect/floor_decal/rust, /obj/machinery/atmospherics/pipe/simple/heat_exchanging{ @@ -1586,39 +1647,55 @@ /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/easthall) "el" = ( -/obj/machinery/atmospherics/portables_connector{ +/obj/machinery/atmospherics/pipe/tank/phoron{ dir = 8 }, -/obj/machinery/alarm{ - dir = 8; - pixel_x = 23 - }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "er" = ( /obj/structure/cable{ icon_state = "1-2" }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"ev" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/monkeycubes, +/obj/item/weapon/storage/box/monkeycubes/wolpincubes, +/obj/machinery/light, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "ey" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8 - }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "ez" = ( /obj/machinery/atmospherics/pipe/simple/hidden/green{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) +"eA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/light/floortube{ + dir = 4; + pixel_x = 5 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/firingrange) "eE" = ( /obj/structure/bed/chair/sofa/purp/right, /obj/structure/sign/painting/public{ @@ -1643,6 +1720,12 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/xenoarch) +"eJ" = ( +/obj/structure/bed/chair/comfy/black{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "eL" = ( /obj/effect/floor_decal/rust, /obj/structure/cable/yellow{ @@ -1652,37 +1735,45 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "eM" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 5 - }, +/obj/machinery/atmospherics/pipe/simple/hidden/black, +/obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "eN" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/wall, /area/offmap/aerostat/inside/firingrange) "eO" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black{ - dir = 1 +/obj/machinery/atmospherics/pipe/manifold/hidden/red{ + dir = 8 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "eP" = ( /obj/machinery/camera/network/research_outpost{ dir = 4 }, -/obj/structure/flora/pottedplant/unusual, +/obj/structure/bed/chair/sofa/purp/left{ + dir = 4 + }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "eR" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "4-8" }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_research{ + name = "Xenoarchaeology Storage" + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/xenoarch) "eT" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -1694,34 +1785,35 @@ /obj/effect/floor_decal/industrial/warning{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/hidden, /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "eV" = ( /obj/structure/sign/painting/public{ pixel_x = -30 }, +/obj/structure/bed/chair/sofa/purp/right{ + dir = 4 + }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "eW" = ( /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "eX" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 10 - }, +/obj/machinery/atmospherics/pipe/simple/hidden/black, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "eZ" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8 - }, /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "fa" = ( @@ -1735,6 +1827,14 @@ "fb" = ( /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/ne) +"fc" = ( +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/blood/oil, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "fe" = ( /obj/effect/decal/cleanable/cobweb2, /obj/effect/floor_decal/rust, @@ -1754,8 +1854,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/black{ dir = 4 }, +/obj/machinery/light, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "fg" = ( /obj/effect/floor_decal/rust, /obj/machinery/atmospherics/pipe/simple/heat_exchanging{ @@ -1767,18 +1868,37 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "fh" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) "fi" = ( -/obj/structure/table/standard, -/obj/machinery/computer/atmoscontrol/laptop{ - monitored_alarm_ids = list("anomaly_testing"); - req_one_access = list(47,24,11) +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 }, -/turf/simulated/floor/tiled/white, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/simulated/wall, /area/offmap/aerostat/inside/xenoarch) "fj" = ( /obj/machinery/atmospherics/pipe/manifold/hidden{ @@ -1797,37 +1917,43 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/north) "fn" = ( -/obj/structure/bed/chair/office/light{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled, +/turf/simulated/wall, /area/offmap/aerostat/inside/xenoarch) "fo" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, /obj/structure/cable{ icon_state = "1-2" }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "fp" = ( /obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) +"fr" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/drillstorage) "ft" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, +/obj/machinery/vending/sovietsoda{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "fw" = ( @@ -1841,16 +1967,16 @@ /area/offmap/aerostat/inside/southchamb) "fx" = ( /obj/structure/bed/chair/office/light{ - dir = 4 + dir = 1 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) -"fA" = ( -/obj/machinery/light/small{ - dir = 1 +"fC" = ( +/obj/machinery/atmospherics/portables_connector{ + dir = 4 }, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "fD" = ( /obj/machinery/atmospherics/pipe/simple/hidden/green, /obj/machinery/atmospherics/pipe/simple/hidden/black{ @@ -1872,6 +1998,9 @@ /obj/structure/cable{ icon_state = "2-8" }, +/obj/structure/cable{ + icon_state = "2-4" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "fI" = ( @@ -1887,12 +2016,12 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "fJ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, /obj/structure/table/reinforced, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) @@ -1921,20 +2050,22 @@ /obj/effect/floor_decal/rust, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/arm/nw) +"fP" = ( +/obj/structure/bed/chair/comfy/black{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "fQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "fR" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light_switch{ - pixel_y = 24 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/machinery/portable_atmospherics/powered/scrubber, +/turf/simulated/floor/plating, +/area/offmap/aerostat/inside/toxins) "fS" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -1949,12 +2080,19 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/chem_master, +/obj/machinery/camera/network/research_outpost{ + dir = 8 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "fV" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/wall, /area/offmap/aerostat/inside/atmos) "fW" = ( @@ -1967,13 +2105,26 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/airlock/north) +"fX" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/window/reinforced/full, +/obj/structure/grille, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "fY" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 4 + }, +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "ga" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -1981,6 +2132,10 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) +"gb" = ( +/obj/machinery/computer/centrifuge, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "gd" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 1 @@ -2000,7 +2155,7 @@ /turf/simulated/shuttle/wall/voidcraft/hard_corner{ stripe_color = "#00FF00" }, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/westhall) "gh" = ( /obj/machinery/atmospherics/binary/pump/on{ dir = 1 @@ -2021,8 +2176,23 @@ /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 5 }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/obj/machinery/light{ + dir = 4 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) +"gl" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/miscstorage) "gs" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 @@ -2049,11 +2219,19 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/obj/structure/sign/poster{ + dir = 8; + pixel_x = -32 + }, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "gx" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled, +/obj/machinery/light/small{ + dir = 1 + }, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) "gy" = ( /obj/structure/closet/crate/bin{ @@ -2061,6 +2239,17 @@ }, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) +"gz" = ( +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_research{ + name = "Telescience" + }, +/obj/machinery/door/blast/regular/open{ + id = telesci_blast; + name = "Blast Door" + }, +/turf/simulated/floor/reinforced, +/area/offmap/aerostat/inside/telesci) "gC" = ( /obj/machinery/alarm{ pixel_y = 26 @@ -2074,33 +2263,31 @@ /obj/structure/extinguisher_cabinet{ pixel_x = -28 }, -/obj/machinery/atmospherics/unary/vent_pump/on{ +/obj/effect/floor_decal/rust, +/obj/effect/floor_decal/industrial/outline/red, +/obj/structure/anomaly_container, +/obj/machinery/light{ dir = 8 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "gG" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9 +/obj/machinery/atmospherics/portables_connector{ + dir = 8 }, +/obj/machinery/portable_atmospherics/canister/air, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"gK" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/atmos) "gL" = ( /obj/machinery/atmospherics/pipe/simple/hidden/blue{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/cable{ - icon_state = "4-8" +/obj/structure/cable/heavyduty{ + icon_state = "2-8" }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -2124,6 +2311,12 @@ dir = 4; pixel_x = 5 }, +/obj/structure/bed/chair/comfy/black{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "gQ" = ( @@ -2149,7 +2342,7 @@ dir = 4 }, /turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "gS" = ( /obj/machinery/door/airlock/external{ frequency = 1380; @@ -2168,26 +2361,32 @@ }, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) +"gU" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/blast/regular/open{ + id = telesci_blast; + name = "Blast Door" + }, +/turf/simulated/floor/reinforced, +/area/offmap/aerostat/inside/telesci) "gV" = ( -/obj/machinery/atmospherics/binary/pump/on{ - name = "N2O pump" +/obj/machinery/atmospherics/omni/atmos_filter{ + name = "Phoron Filter"; + tag_east = 6; + tag_north = 1; + tag_south = 2 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"gW" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/atmos) "gX" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/red{ dir = 1 }, +/obj/structure/cable{ + icon_state = "1-8" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "gZ" = ( @@ -2243,16 +2442,21 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/manifold4w/hidden, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"hn" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"hp" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 4 +/obj/machinery/light{ + dir = 8 }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/atmos) +"hn" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/plating/virgo2, +/area/offmap/aerostat/inside/atmos) +"hp" = ( /obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) @@ -2275,42 +2479,48 @@ /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) "hs" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 +/obj/structure/sign/poster{ + dir = 4; + pixel_x = 32 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "hu" = ( /obj/machinery/atmospherics/pipe/simple/visible/red{ - dir = 4 + dir = 10 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "hv" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 9 - }, /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) -"hA" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) -"hB" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ +"hw" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/dropper, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, -/obj/machinery/camera/network/research_outpost{ - dir = 4 +/obj/machinery/light{ + dir = 8 }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/virology) +"hA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/closet/crate, +/obj/random/maintenance/research, +/obj/random/maintenance/research, +/obj/random/tool, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "hC" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" @@ -2331,18 +2541,6 @@ }, /turf/simulated/shuttle/floor/yellow, /area/shuttle/aerostat) -"hG" = ( -/obj/machinery/portable_atmospherics/powered/scrubber/huge/stationary{ - scrub_id = "science_outpost" - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) -"hJ" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) "hL" = ( /obj/structure/window/reinforced{ dir = 8 @@ -2352,12 +2550,6 @@ /obj/structure/grille, /turf/simulated/floor, /area/offmap/aerostat/inside/toxins) -"hM" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) "hN" = ( /obj/structure/table/rack/shelf, /turf/simulated/floor/tiled/techfloor, @@ -2369,9 +2561,8 @@ /turf/simulated/shuttle/floor/yellow, /area/shuttle/aerostat) "hQ" = ( -/obj/effect/floor_decal/industrial/outline/yellow, /obj/machinery/mech_recharger, -/turf/simulated/floor/tiled, +/turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/drillstorage) "hS" = ( /obj/machinery/alarm{ @@ -2414,36 +2605,50 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/structure/flora/pottedplant/minitree, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) "ie" = ( /turf/simulated/wall, /area/offmap/aerostat/inside/zorrenoffice) "if" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/obj/machinery/camera/network/research_outpost, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/westhall) "ig" = ( -/obj/structure/bed/chair/office/light{ - dir = 8 +/obj/machinery/portable_atmospherics/canister/carbon_dioxide, +/obj/structure/window/reinforced{ + dir = 4 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "ii" = ( -/obj/machinery/atmospherics/pipe/manifold/visible{ +/obj/machinery/atmospherics/pipe/simple/hidden/green{ dir = 4 }, -/obj/machinery/meter, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) -"il" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) +"ik" = ( +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) +"il" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 }, /obj/machinery/power/apc{ dir = 1; @@ -2455,15 +2660,32 @@ /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "io" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/structure/window/reinforced{ dir = 4 }, -/obj/machinery/bomb_tester, +/obj/machinery/portable_atmospherics/canister/nitrogen, +/obj/machinery/door/window/brigdoor/eastleft{ + dir = 2; + req_access = list(7) + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"is" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/curtain/open/shower/medical, +/obj/machinery/shower{ + pixel_y = 13 + }, +/turf/simulated/floor/tiled/dark, +/area/offmap/aerostat/inside/virology) "it" = ( /obj/machinery/light, /obj/machinery/atmospherics/unary/vent_pump/on{ @@ -2489,16 +2711,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/east) -"iB" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 6 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) "iC" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -2511,7 +2723,6 @@ /obj/machinery/alarm{ pixel_y = 26 }, -/obj/structure/flora/pottedplant/unusual, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) "iK" = ( @@ -2539,6 +2750,12 @@ /obj/effect/floor_decal/rust, /turf/simulated/floor/plating/virgo2, /area/shuttle/aerostat) +"iQ" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "iU" = ( /obj/structure/cable/yellow{ icon_state = "4-8" @@ -2546,9 +2763,7 @@ /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/ne) "iV" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 5 - }, +/obj/machinery/atmospherics/pipe/simple/visible, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "iW" = ( @@ -2574,14 +2789,19 @@ /obj/effect/floor_decal/industrial/danger{ dir = 8 }, +/obj/machinery/light{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "iZ" = ( /obj/machinery/camera/network/research_outpost{ dir = 4 }, +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/closet/wardrobe/genetics_white, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/genetics) "ja" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 4 @@ -2605,31 +2825,27 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "ji" = ( /obj/machinery/atmospherics/pipe/simple/hidden/blue{ dir = 10 }, /obj/structure/cable{ - icon_state = "2-8" + icon_state = "2-4" }, -/obj/machinery/medical_kiosk, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "jj" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, -/obj/machinery/atmospherics/unary/freezer{ - dir = 8; - icon_state = "freezer" - }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "jl" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ frequency = 1452 @@ -2638,6 +2854,12 @@ /obj/effect/floor_decal/rust, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/xenoarch/chamber) +"jm" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/arm/ne) "jn" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -2658,20 +2880,21 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "ju" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"jw" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 + dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) +"jw" = ( +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/misclab) "jy" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" @@ -2683,13 +2906,16 @@ /obj/structure/sign/painting/public{ pixel_y = 30 }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "jE" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 8 }, -/obj/structure/table/glass, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "jF" = ( @@ -2706,15 +2932,17 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "jH" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 4 - }, /obj/structure/cable{ icon_state = "2-4" }, /obj/structure/cable{ icon_state = "2-8" }, +/obj/machinery/atmospherics/trinary/mixer/m_mixer{ + dir = 4; + name = "High Power Gas mixer"; + power_rating = 15000 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "jI" = ( @@ -2726,9 +2954,6 @@ }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch/chamber) -"jJ" = ( -/turf/simulated/shuttle/wall/voidcraft/green/virgo2/nocol, -/area/offmap/aerostat/inside/airlock/east) "jL" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -2749,17 +2974,19 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "jN" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/machinery/pipedispenser, +/turf/simulated/floor/plating, +/area/offmap/aerostat/inside/toxins) "jQ" = ( -/obj/machinery/light/floortube{ - dir = 8; - pixel_x = -6 +/obj/structure/cable{ + icon_state = "4-8" }, -/turf/simulated/floor/tiled/white, +/obj/machinery/door/airlock/glass_research{ + name = "Telescience" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/telesci) "jR" = ( /obj/effect/floor_decal/rust, @@ -2771,12 +2998,6 @@ }, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) -"jS" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) "jT" = ( /obj/structure/table/standard, /obj/item/weapon/tool/wrench{ @@ -2787,6 +3008,9 @@ pixel_x = 2; pixel_y = 2 }, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "jU" = ( @@ -2799,11 +3023,9 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/arm/se) "jV" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/obj/structure/flora/ausbushes/ppflowers, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) "jW" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -2823,9 +3045,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "ka" = ( /obj/machinery/atmospherics/pipe/manifold/hidden{ dir = 1 @@ -2870,6 +3093,9 @@ /obj/structure/cable{ icon_state = "2-4" }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "kg" = ( @@ -2878,7 +3104,7 @@ }, /obj/effect/map_helper/airlock/sensor/ext_sensor, /turf/simulated/shuttle/wall/voidcraft/green/virgo2/nocol, -/area/offmap/aerostat/inside/airlock/east) +/area/offmap/aerostat/inside/virology) "kk" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -2903,7 +3129,7 @@ }, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating/virgo2, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "kp" = ( /obj/effect/floor_decal/rust, /obj/effect/floor_decal/industrial/warning/dust{ @@ -2915,11 +3141,15 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "kq" = ( -/obj/machinery/camera/network/research_outpost{ - dir = 4 +/obj/machinery/power/apc{ + dir = 4; + pixel_x = 28 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/obj/structure/cable{ + icon_state = "0-8" + }, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/misclab) "ks" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 4 @@ -2958,6 +3188,9 @@ /obj/machinery/camera/network/research_outpost{ dir = 8 }, +/obj/structure/bed/chair/sofa/purp/right{ + dir = 8 + }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "kD" = ( @@ -3033,27 +3266,27 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/powercontrol) "kO" = ( -/obj/machinery/atmospherics/pipe/simple/visible/red{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 - }, /obj/machinery/camera/network/research_outpost{ dir = 1 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "kR" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 }, -/obj/machinery/atmospherics/binary/pump/on, /obj/structure/cable{ icon_state = "1-2" }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) +"kS" = ( +/obj/machinery/atmospherics/pipe/manifold/visible, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "kV" = ( /obj/structure/cable{ icon_state = "4-8" @@ -3078,54 +3311,34 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/northchamb) "lb" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/obj/machinery/camera/network/research_outpost{ - dir = 1 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/obj/structure/window/reinforced/full, +/obj/structure/grille, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "lc" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable{ icon_state = "1-2" }, -/obj/machinery/autolathe, /obj/machinery/camera/network/research_outpost{ dir = 4 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) "ld" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) -"le" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 +/obj/structure/cable{ + icon_state = "2-4" }, -/obj/effect/floor_decal/industrial/warning/corner, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) "lh" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 1 +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/manifold/visible{ + dir = 8 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -3138,13 +3351,18 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/north) "lk" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/machinery/door/window/brigdoor/eastleft{ - req_access = list(7) +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 }, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/sign/directions/science/xenoarch, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) "ll" = ( /obj/machinery/atmospherics/pipe/simple/insulated{ dir = 5 @@ -3162,10 +3380,12 @@ }, /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/sw) -"lq" = ( -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +"lr" = ( +/obj/machinery/atmospherics/valve{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "ls" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 6 @@ -3190,7 +3410,7 @@ }, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating/virgo2, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "lv" = ( /obj/machinery/atmospherics/portables_connector{ dir = 1 @@ -3198,14 +3418,32 @@ /obj/effect/floor_decal/industrial/warning/cee{ dir = 1 }, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 6 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "lx" = ( /obj/machinery/camera/network/research_outpost{ dir = 4 }, +/obj/structure/sign/painting/public{ + pixel_x = -30 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) +"ly" = ( +/obj/machinery/light_switch{ + pixel_y = 25 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "lz" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -3223,38 +3461,33 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "lA" = ( -/obj/machinery/mining/drill, -/obj/effect/floor_decal/industrial/outline/yellow, +/obj/machinery/mineral/equipment_vendor, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) -"lD" = ( -/obj/effect/floor_decal/industrial/warning{ +"lC" = ( +/obj/machinery/atmospherics/portables_connector{ dir = 8 }, -/obj/effect/floor_decal/industrial/warning{ - dir = 4 +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/floor_decal/rust, +/obj/machinery/camera/network/research_outpost{ + dir = 8 }, -/obj/machinery/light, /turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/arm/se) "lG" = ( -/obj/structure/table/standard, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen, /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, -/turf/simulated/floor/tiled, +/obj/machinery/light/small, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) "lH" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/wall, +/area/offmap/aerostat/inside/atmos) "lI" = ( /obj/machinery/door/window/brigdoor/eastleft{ dir = 1; @@ -3263,8 +3496,16 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/firingrange) "lK" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 10 +/obj/machinery/atmospherics/portables_connector{ + dir = 1 + }, +/obj/machinery/light{ + dir = 4 + }, +/obj/machinery/light_switch{ + dir = 8; + pixel_x = 24; + pixel_y = -5 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -3287,19 +3528,24 @@ }, /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) -"lR" = ( -/obj/machinery/medical_kiosk, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +"lP" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) +"lS" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) "lT" = ( -/obj/machinery/pipedispenser, +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "lW" = ( -/obj/machinery/light/floortube{ - dir = 8; - pixel_x = -6 - }, +/obj/machinery/atmospherics/binary/pump, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "lX" = ( @@ -3323,10 +3569,18 @@ }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"mg" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +"md" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"me" = ( +/obj/machinery/light, +/obj/structure/flora/ausbushes/ywflowers, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) +"mg" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 1 }, @@ -3336,28 +3590,45 @@ /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) "mi" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "mj" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/obj/random/maintenance/research, +/obj/random/firstaid, +/obj/random/maintenance/engineering, +/obj/random/soap, +/obj/effect/decal/cleanable/dirt, +/obj/structure/closet, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "mk" = ( /obj/machinery/atmospherics/pipe/simple/visible/blue{ dir = 10 }, /obj/machinery/meter, -/obj/machinery/camera/network/research_outpost{ +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) +"mm" = ( +/obj/effect/floor_decal/industrial/warning, +/obj/structure/table/reinforced, +/obj/item/clothing/glasses/goggles, +/obj/item/clothing/ears/earmuffs, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/firingrange) "mn" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /obj/machinery/door/airlock/glass_external/public, @@ -3376,6 +3647,26 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) +"mp" = ( +/obj/structure/bed/chair/office/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"ms" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_research{ + name = "Genetics Lab" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/genetics) "mt" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -3386,6 +3677,7 @@ /obj/machinery/alarm{ pixel_y = 26 }, +/obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "mx" = ( @@ -3396,11 +3688,6 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/north) -"mz" = ( -/obj/effect/floor_decal/industrial/outline/red, -/obj/structure/anomaly_container, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "mA" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable{ @@ -3413,14 +3700,15 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "mD" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/structure/window/reinforced{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/green{ - dir = 6 +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, +/obj/machinery/door/window/brigdoor/eastleft{ + dir = 2; + req_access = list(7) }, -/obj/effect/floor_decal/industrial/warning/cee, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "mE" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, @@ -3463,28 +3751,39 @@ dir = 4 }, /obj/structure/table/standard, +/obj/random/tool, +/obj/random/tool, +/obj/structure/sign/poster{ + dir = 4; + pixel_x = 32 + }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) +"mI" = ( +/obj/structure/table/standard, +/obj/item/weapon/reagent_containers/glass/bucket, +/obj/item/stack/nanopaste, +/obj/item/device/flashlight/lamp{ + pixel_x = 5; + pixel_y = 9 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"mJ" = ( +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/machinery/portable_atmospherics/powered/pump, +/turf/simulated/floor/plating, +/area/offmap/aerostat/inside/toxins) "mL" = ( /obj/machinery/light{ dir = 1 }, -/obj/item/modular_computer/console, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) -"mM" = ( -/obj/machinery/light{ +/obj/machinery/portable_atmospherics/canister/carbon_dioxide, +/obj/structure/window/reinforced{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/toxins) "mN" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/arm/nw) @@ -3532,16 +3831,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/easthall) -"mY" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 10 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) "mZ" = ( /obj/effect/floor_decal/rust, /obj/structure/cable/yellow{ @@ -3560,14 +3849,22 @@ /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) "nb" = ( -/obj/machinery/vending/tool, +/obj/structure/cable{ + icon_state = "0-8" + }, +/obj/machinery/power/apc{ + dir = 4; + pixel_x = 28 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "nf" = ( -/obj/machinery/atmospherics/pipe/manifold/visible{ - dir = 8 +/obj/machinery/atmospherics/trinary/atmos_filter{ + dir = 4; + name = "High Power Gas filter"; + power_rating = 15000; + use_power = 0 }, -/obj/machinery/meter, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "nh" = ( @@ -3578,14 +3875,27 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/structure/cable{ + icon_state = "2-4" + }, +/obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"ni" = ( +/obj/effect/floor_decal/rust, +/obj/machinery/power/apc{ + dir = 4; + pixel_x = 28 + }, +/obj/structure/cable, +/turf/simulated/floor, +/area/offmap/aerostat/inside/westhall) "nm" = ( -/obj/machinery/atmospherics/unary/freezer{ - dir = 8 +/obj/machinery/atmospherics/binary/pump/on{ + name = "Scrubber to Waste" }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "no" = ( /obj/machinery/atmospherics/omni/mixer{ name = "Air Mixer"; @@ -3635,16 +3945,15 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab"; - req_one_access = null - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_research{ + name = "Toxins Lab" + }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) "nw" = ( @@ -3669,10 +3978,11 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) "nB" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/manifold4w/visible, +/obj/machinery/meter, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "nE" = ( @@ -3694,6 +4004,15 @@ }, /turf/simulated/floor, /area/offmap/aerostat/inside/firingrange) +"nG" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/easthall) "nJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -3701,15 +4020,6 @@ }, /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/firingrange) -"nK" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) "nL" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/bluegrid, @@ -3774,10 +4084,10 @@ /turf/simulated/floor/reinforced/airless, /area/offmap/aerostat/inside/toxins) "nV" = ( -/obj/structure/cable/heavyduty{ - icon_state = "4-8" - }, /obj/machinery/atmospherics/pipe/simple/hidden/green, +/obj/machinery/portable_atmospherics/powered/pump, +/obj/effect/floor_decal/industrial/hatch/yellow, +/obj/machinery/light, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "nW" = ( @@ -3787,29 +4097,15 @@ /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/ne) "nY" = ( -/obj/structure/table/rack, -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/machinery/alarm{ dir = 4; pixel_x = -23 }, -/obj/item/device/suit_cooling_unit, -/obj/item/weapon/storage/belt/archaeology, -/obj/item/clothing/mask/breath, -/obj/item/clothing/suit/space/anomaly/heat, -/obj/item/clothing/head/helmet/space/anomaly/heat, -/obj/item/weapon/pickaxe, -/obj/item/weapon/storage/excavation, -/obj/item/stack/flag/yellow, -/obj/item/weapon/tool/wrench, -/obj/item/device/measuring_tape, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "oc" = ( -/obj/machinery/light{ - dir = 8 +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 9 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -3830,6 +4126,13 @@ }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"oi" = ( +/obj/machinery/alarm{ + dir = 4; + pixel_x = -23 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "oj" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 8 @@ -3842,9 +4145,10 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/arm/sw) "ol" = ( -/obj/machinery/atmospherics/unary/freezer{ +/obj/structure/window/reinforced{ dir = 4 }, +/obj/machinery/portable_atmospherics/canister/phoron, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "om" = ( @@ -3862,17 +4166,12 @@ /area/offmap/aerostat/inside/powercontrol) "oo" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "op" = ( /turf/simulated/wall/r_wall, /area/offmap/aerostat/inside/xenoarch) @@ -3886,6 +4185,23 @@ /obj/effect/map_helper/airlock/atmos/pump_out_internal, /turf/simulated/floor, /area/offmap/aerostat/inside/arm/nw) +"ot" = ( +/turf/simulated/shuttle/wall/voidcraft/green, +/area/offmap/aerostat/inside/virology) +"ou" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/blue, +/obj/structure/table/standard, +/obj/item/weapon/tool/screwdriver, +/obj/item/device/analyzer, +/obj/item/weapon/tool/wrench, +/obj/item/clothing/glasses/welding, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/machinery/power/apc, +/obj/structure/cable, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "ov" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -3923,6 +4239,9 @@ /area/offmap/aerostat/inside/firingrange) "oG" = ( /obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "oJ" = ( @@ -3933,14 +4252,18 @@ /obj/structure/cable{ icon_state = "0-8" }, +/obj/structure/flora/pottedplant/subterranean, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "oK" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/machinery/portable_atmospherics/canister/carbon_dioxide, +/obj/structure/window/reinforced{ dir = 4 }, -/obj/structure/dispenser, -/obj/machinery/light, +/obj/machinery/door/window/brigdoor/eastleft{ + dir = 2; + req_access = list(7) + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "oL" = ( @@ -3992,38 +4315,33 @@ /area/offmap/aerostat/inside/toxins) "oY" = ( /obj/structure/table/standard, -/obj/item/weapon/tool/screwdriver, -/obj/item/weapon/anobattery{ - pixel_x = 5; - pixel_y = 2 +/obj/item/weapon/tool/crowbar, +/obj/item/weapon/anodevice{ + pixel_x = 1 }, -/obj/item/weapon/anobattery, -/obj/item/weapon/anobattery{ - pixel_x = -4; - pixel_y = 3 +/obj/item/weapon/anodevice{ + pixel_x = -2 }, -/obj/item/weapon/anobattery{ - pixel_x = -5; - pixel_y = -3 - }, -/obj/effect/floor_decal/spline/plain{ - dir = 1 - }, -/obj/item/device/flashlight/lamp, -/turf/simulated/floor/tiled, +/obj/item/device/multitool, +/obj/machinery/light, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "oZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable{ - icon_state = "0-8" + icon_state = "4-8" }, -/obj/machinery/power/apc{ - dir = 4; - pixel_x = 28 - }, -/obj/structure/closet/wardrobe/genetics_white, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) +"pa" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "pd" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 8 @@ -4058,6 +4376,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) +"ph" = ( +/obj/machinery/atmospherics/pipe/manifold4w/hidden/black, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "pj" = ( /obj/effect/floor_decal/rust, /obj/machinery/atmospherics/pipe/simple/heat_exchanging{ @@ -4067,6 +4389,7 @@ /area/offmap/aerostat/solars) "pm" = ( /obj/machinery/light, +/obj/structure/table/wooden_reinforced, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "pn" = ( @@ -4077,6 +4400,13 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"po" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden, +/obj/machinery/camera/network/research_outpost{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "pq" = ( /obj/structure/table/steel_reinforced, /obj/machinery/door/window/brigdoor/eastright{ @@ -4097,8 +4427,12 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/machinery/power/apc, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "ps" = ( /obj/structure/cable/yellow{ icon_state = "2-8" @@ -4109,19 +4443,11 @@ }, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) -"pu" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 - }, -/obj/structure/flora/pottedplant/overgrown, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) "py" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black, -/obj/machinery/atmospherics/binary/pump{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 }, -/turf/simulated/floor/tiled/white, +/turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "pz" = ( /obj/structure/cable/heavyduty{ @@ -4138,10 +4464,6 @@ /area/offmap/aerostat/inside/arm/se) "pA" = ( /obj/structure/table/steel_reinforced, -/obj/machinery/door/window/brigdoor/eastleft{ - dir = 2; - req_access = list(1337) - }, /obj/machinery/door/firedoor/glass, /obj/machinery/door/blast/shutters{ dir = 2; @@ -4176,14 +4498,14 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "pH" = ( -/obj/structure/cable{ - icon_state = "2-4" +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 }, /obj/structure/cable{ - icon_state = "1-2" + icon_state = "1-8" }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/southchamb) +/area/offmap/aerostat/inside/northchamb) "pL" = ( /obj/effect/floor_decal/rust, /obj/machinery/atmospherics/pipe/simple/heat_exchanging{ @@ -4194,13 +4516,6 @@ }, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) -"pM" = ( -/obj/effect/floor_decal/industrial/warning/corner, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "pP" = ( /obj/machinery/light/floortube{ dir = 1; @@ -4269,6 +4584,9 @@ dir = 8; pixel_x = -6 }, +/obj/structure/bed/chair/comfy/black{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "pZ" = ( @@ -4287,26 +4605,19 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/southchamb) -"qe" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" +"qf" = ( +/obj/effect/floor_decal/rust, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ +/obj/effect/floor_decal/industrial/warning{ dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 +/obj/machinery/alarm{ + pixel_y = 26 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) -"qf" = ( -/obj/structure/window/reinforced, -/obj/machinery/portable_atmospherics/canister/phoron, -/obj/machinery/door/window/brigdoor/eastleft{ - req_access = list(7) - }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "qh" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/red{ dir = 1 @@ -4314,6 +4625,9 @@ /obj/machinery/light_switch{ pixel_y = 25 }, +/obj/structure/cable{ + icon_state = "4-8" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "qi" = ( @@ -4338,12 +4652,16 @@ /obj/machinery/light{ dir = 1 }, +/obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "ql" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "2-8" + }, +/obj/structure/bed/chair/sofa/purp/left{ + dir = 8 }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) @@ -4351,7 +4669,7 @@ /obj/machinery/light{ dir = 8 }, -/obj/structure/table/steel_reinforced, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "qq" = ( @@ -4370,6 +4688,33 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) +"qr" = ( +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = -4 + }, +/obj/machinery/alarm{ + dir = 4; + pixel_x = -23 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) +"qt" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) +"qv" = ( +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 6 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/firingrange) "qw" = ( /obj/machinery/power/apc{ dir = 4; @@ -4401,6 +4746,13 @@ "qC" = ( /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"qD" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "qE" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" @@ -4430,14 +4782,15 @@ /turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "qJ" = ( -/obj/machinery/atmospherics/omni/atmos_filter{ - name = "N2O Filter"; - tag_east = 7; - tag_north = 1; - tag_south = 2 - }, +/obj/machinery/vending/cigarette, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) +"qK" = ( +/obj/machinery/computer/telescience{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/telesci) "qL" = ( /obj/structure/window/reinforced{ dir = 8 @@ -4468,11 +4821,12 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "qP" = ( -/obj/machinery/light{ - dir = 4 +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "1-4" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/table/steel_reinforced, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "qQ" = ( @@ -4480,7 +4834,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled, +/turf/simulated/wall, /area/offmap/aerostat/inside/xenoarch) "qR" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -4490,12 +4844,11 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "qS" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light{ - dir = 4 +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "qT" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 @@ -4503,19 +4856,19 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "qU" = ( -/obj/machinery/alarm{ - pixel_y = 26 - }, -/obj/machinery/vending/phoronresearch{ - name = "Toximate 2556"; - products = list(/obj/item/device/transfer_valve = 3, /obj/item/device/assembly/timer = 6, /obj/item/device/assembly/signaler = 6, /obj/item/device/assembly/prox_sensor = 6, /obj/item/device/assembly/igniter = 12) +/obj/structure/window/reinforced{ + dir = 4 }, +/obj/machinery/portable_atmospherics/canister/nitrogen, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "qZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/light{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "rd" = ( /obj/machinery/atmospherics/pipe/simple/insulated, /obj/machinery/door/blast/regular{ @@ -4526,18 +4879,25 @@ /turf/simulated/floor/reinforced/airless, /area/offmap/aerostat/inside/toxins) "re" = ( -/obj/machinery/atmospherics/pipe/tank/nitrous_oxide{ +/obj/machinery/atmospherics/unary/freezer{ dir = 8 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"rg" = ( -/obj/machinery/light/floortube{ - dir = 4; - pixel_x = 5 +/area/offmap/aerostat/inside/atmos) +"rf" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 6 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"rg" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/obj/structure/closet/crate/science, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "ri" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /obj/machinery/door/airlock/external{ @@ -4547,29 +4907,9 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/north) -"rk" = ( -/obj/effect/floor_decal/industrial/warning/corner, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "rq" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/firingrange) -"rr" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Xenoarchaeology" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/xenoarch) "rs" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled/dark, @@ -4596,31 +4936,37 @@ }, /turf/simulated/wall, /area/offmap/aerostat/inside/atmos) -"rx" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 10 - }, +"ry" = ( +/obj/structure/flora/pottedplant/subterranean, +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) +"rz" = ( +/obj/structure/table/standard, +/obj/item/weapon/tank/phoron, +/obj/item/stack/cable_coil, +/obj/item/stack/cable_coil, +/obj/item/weapon/tool/wirecutters, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"ry" = ( -/turf/simulated/shuttle/wall/voidcraft/green, -/area/offmap/aerostat/inside/xenoarch) -"rF" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 +"rC" = ( +/obj/machinery/computer/diseasesplicer{ + dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, -/obj/machinery/alarm{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) -"rH" = ( -/obj/structure/table/standard, -/obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) +"rH" = ( +/obj/structure/closet/crate/science, +/obj/effect/floor_decal/rust, +/obj/machinery/power/apc{ + dir = 1; + pixel_y = 24 + }, +/obj/structure/cable, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor, /area/offmap/aerostat/inside/xenoarch) "rI" = ( /obj/machinery/atmospherics/pipe/simple/visible/black{ @@ -4641,6 +4987,12 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/north) +"rP" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) "rS" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -4654,18 +5006,35 @@ }, /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/east) +"rU" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 4 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/toxins) +"rW" = ( +/obj/structure/bed/chair/office/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "sb" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/closet/excavation, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "sc" = ( -/obj/effect/floor_decal/industrial/warning/dust{ +/obj/machinery/atmospherics/portables_connector{ dir = 8 }, -/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/machinery/portable_atmospherics/canister/air, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "se" = ( /obj/effect/floor_decal/industrial/outline/red, /turf/simulated/floor/tiled/dark, @@ -4693,18 +5062,30 @@ }, /turf/simulated/floor/reinforced/airless, /area/offmap/aerostat/inside/toxins) +"sj" = ( +/obj/machinery/door/window/brigdoor/eastleft{ + dir = 1; + req_access = null + }, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) "sk" = ( /obj/machinery/atmospherics/pipe/manifold4w/hidden, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/south) "sm" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/obj/machinery/door/window/brigdoor/eastleft{ - req_access = list(7) +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 }, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/structure/table/rack, +/obj/item/clothing/suit/bio_suit/anomaly, +/obj/item/clothing/head/bio_hood/anomaly, +/obj/item/clothing/gloves/sterile/latex, +/obj/item/clothing/glasses/science, +/obj/item/clothing/mask/breath, +/obj/effect/floor_decal/industrial/hatch/yellow, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) "sn" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/shuttle/wall/voidcraft/green/virgo2, @@ -4753,20 +5134,24 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) -"sz" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 +"sy" = ( +/obj/structure/cable{ + icon_state = "1-4" }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "sD" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "sE" = ( /obj/effect/floor_decal/rust, /obj/structure/cable/yellow{ @@ -4784,22 +5169,25 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "sJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 }, +/obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "sK" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 - }, /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 1 + }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "sN" = ( @@ -4807,7 +5195,6 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/machinery/portable_atmospherics/canister/empty, /obj/machinery/camera/network/research_outpost{ dir = 4 }, @@ -4829,6 +5216,7 @@ icon_state = "1-2" }, /obj/structure/table/standard, +/obj/item/weapon/ore/bluespace_crystal, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) "sQ" = ( @@ -4850,12 +5238,6 @@ }, /turf/simulated/wall/r_wall, /area/offmap/aerostat/inside/xenoarch) -"sW" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "sX" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 8; @@ -4882,6 +5264,12 @@ /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/ne) +"tf" = ( +/obj/structure/closet/crate/bin{ + anchored = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/telesci) "tg" = ( /obj/effect/shuttle_landmark{ base_area = /area/offmap/aerostat; @@ -4896,8 +5284,19 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, +/obj/structure/closet/firecloset, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) +"tj" = ( +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/floor_decal/rust, +/obj/structure/table/rack, +/obj/random/contraband, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "tk" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 @@ -4905,9 +5304,6 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 10 - }, /obj/structure/cable{ icon_state = "4-8" }, @@ -4927,6 +5323,14 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/north) +"tn" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/structure/bed/padded, +/obj/item/weapon/bedsheet/medical, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "tq" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 4; @@ -4949,6 +5353,15 @@ }, /turf/simulated/floor, /area/offmap/aerostat/inside/airlock/north) +"tr" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/easthall) "ts" = ( /obj/structure/shuttle/window, /obj/structure/grille, @@ -4959,32 +5372,25 @@ /turf/simulated/floor, /area/shuttle/aerostat) "tu" = ( -/obj/machinery/atmospherics/pipe/simple/visible, +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 10 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "tv" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab"; - req_one_access = null - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_research{ + name = "Toxins Lab" + }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) "ty" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/easthall) -"tA" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) "tD" = ( -/obj/structure/bed/chair/office/light, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) "tE" = ( /obj/machinery/atmospherics/pipe/simple/hidden, @@ -5004,44 +5410,35 @@ /obj/effect/floor_decal/rust, /obj/machinery/power/apc{ dir = 8; - name = "east bump"; pixel_x = -22 }, /turf/simulated/floor, /area/offmap/aerostat/inside/arm/se) -"tG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) "tH" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/wall, +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/blast/regular/open{ + id = telesci_blast; + name = "Blast Door" + }, +/turf/simulated/floor/reinforced, /area/offmap/aerostat/inside/telesci) "tI" = ( /obj/effect/floor_decal/industrial/danger/corner{ dir = 8 }, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "tJ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light/floortube{ - dir = 8; - pixel_x = -6 + dir = 5 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "tL" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab" - }, /obj/machinery/atmospherics/pipe/simple/hidden/green{ dir = 9 }, @@ -5049,8 +5446,14 @@ dir = 4 }, /obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/door/airlock/glass_research{ + name = "Xenoarchaeology Prep Room" + }, /turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "tM" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -5060,15 +5463,6 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/arm/ne) -"tP" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/blue{ - dir = 4 - }, -/obj/machinery/alarm{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) "tR" = ( /obj/structure/flora/pottedplant/subterranean, /turf/simulated/floor/tiled/techfloor, @@ -5081,71 +5475,70 @@ /turf/simulated/shuttle/floor/yellow/airless, /area/shuttle/aerostat) "tU" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, /obj/machinery/light_switch{ pixel_y = 24 }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "tV" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/structure/dispenser{ - phorontanks = 0 - }, -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -25; - pixel_y = -2 - }, +/obj/machinery/suspension_gen, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "tY" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/east) "ua" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 8 +/obj/machinery/door/airlock/glass_research{ + name = "Atmospherics"; + req_one_access = list(47,10) }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/atmos) "ud" = ( -/obj/structure/cable/heavyduty{ - icon_state = "2-8" - }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 4 }, +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"uf" = ( +/obj/machinery/button/remote/blast_door{ + dir = 1; + id = 2; + name = "Virology Emergency Quarantine"; + pixel_y = 5 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/virology) "ug" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/table/steel_reinforced, /obj/structure/sign/painting/public{ pixel_x = 30 }, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "uh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, /obj/structure/cable{ - icon_state = "2-8" + icon_state = "1-2" }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/southchamb) +/area/offmap/aerostat/inside/northchamb) "uj" = ( -/obj/machinery/light/floortube{ - dir = 4; - pixel_x = 5 - }, +/obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) "uk" = ( /obj/machinery/light, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/se) "um" = ( /obj/machinery/door/airlock/external, /obj/structure/cable{ @@ -5155,9 +5548,8 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/northchamb) "un" = ( -/obj/structure/cable/heavyduty{ - icon_state = "4-8" - }, +/obj/machinery/portable_atmospherics/powered/scrubber, +/obj/effect/floor_decal/industrial/hatch/yellow, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "uq" = ( @@ -5168,7 +5560,7 @@ dir = 1 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "ur" = ( /obj/machinery/atmospherics/pipe/simple/insulated{ dir = 4 @@ -5188,6 +5580,12 @@ }, /turf/simulated/wall, /area/offmap/aerostat/inside/firingrange) +"ut" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/reinforced, +/area/offmap/aerostat/inside/telesci) "uu" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/red{ dir = 1 @@ -5204,15 +5602,9 @@ /obj/structure/window/basic{ dir = 1 }, -/obj/structure/window/basic{ - dir = 8 - }, /obj/effect/floor_decal/corner/red/border{ dir = 1 }, -/obj/effect/floor_decal/corner/red/border{ - dir = 8 - }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) "ux" = ( @@ -5233,12 +5625,6 @@ "uA" = ( /obj/machinery/atmospherics/unary/heat_exchanger, /obj/structure/window/basic, -/obj/structure/window/basic{ - dir = 8 - }, -/obj/effect/floor_decal/corner/red/border{ - dir = 8 - }, /obj/effect/floor_decal/corner/red/border, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) @@ -5247,23 +5633,50 @@ /obj/machinery/camera/network/research_outpost{ dir = 4 }, +/obj/machinery/mining/drill, +/obj/effect/floor_decal/industrial/outline/yellow, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) -"uG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 6 +"uE" = ( +/obj/machinery/vending/snlvend{ + dir = 8 }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) +"uF" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 4 + }, +/obj/machinery/camera/network/research_outpost{ + dir = 8 + }, +/obj/structure/closet/firecloset, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) +"uG" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /obj/machinery/camera/network/research_outpost, +/obj/structure/table/rack, +/obj/item/device/suit_cooling_unit, +/obj/item/device/suit_cooling_unit, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) +"uK" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/mining/drill, +/obj/effect/floor_decal/industrial/outline/yellow, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/drillstorage) +"uN" = ( +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) "uS" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/arm/sw) "uV" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black, -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 5 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) @@ -5274,8 +5687,13 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, +/obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"va" = ( +/obj/structure/flora/ausbushes/brflowers, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) "vb" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -5290,9 +5708,12 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/south) "vd" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/flora/ausbushes/ywflowers, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) "ve" = ( /obj/machinery/door/blast/regular{ dir = 8; @@ -5316,23 +5737,32 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/south) "vm" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/machinery/door/window/brigdoor/eastleft{ - req_access = list(7) - }, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/structure/table/rack, +/obj/item/clothing/suit/bio_suit/anomaly, +/obj/item/clothing/head/bio_hood/anomaly, +/obj/item/clothing/gloves/sterile/latex, +/obj/item/clothing/glasses/science, +/obj/item/clothing/mask/breath, +/obj/effect/floor_decal/industrial/hatch/yellow, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) "vo" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/structure/table/wooden_reinforced, +/obj/machinery/chemical_dispenser/bar_coffee/full{ + dir = 1 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "vp" = ( /obj/machinery/camera/network/research_outpost{ dir = 8 }, +/obj/structure/sign/painting/public{ + pixel_x = 30 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "vq" = ( @@ -5352,21 +5782,36 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) +"vu" = ( +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/firingrange) "vy" = ( /obj/machinery/power/apc{ dir = 8; - name = "east bump"; pixel_x = -22 }, /obj/structure/cable, +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/disks, +/obj/item/weapon/storage/box/disks, +/obj/item/toy/figure/geneticist, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/genetics) "vz" = ( -/obj/machinery/light/floortube{ - dir = 8; - pixel_x = -6 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/camera/network/research_outpost, +/obj/structure/table/rack, +/obj/item/clothing/suit/bio_suit/anomaly, +/obj/item/clothing/head/bio_hood/anomaly, +/obj/item/clothing/gloves/sterile/latex, +/obj/item/clothing/glasses/science, +/obj/item/clothing/mask/breath, +/obj/effect/floor_decal/industrial/hatch/yellow, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "vA" = ( @@ -5377,6 +5822,7 @@ /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "vC" = ( @@ -5431,17 +5877,25 @@ name = "Firing Range"; req_one_access = null }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/firingrange) +"vQ" = ( +/obj/item/modular_computer/console/preset/research{ + dir = 8 + }, +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) "vR" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/reinforced/full, -/obj/structure/grille, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/turf/simulated/wall, +/area/offmap/aerostat/inside/xenoarch) "vT" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" @@ -5453,23 +5907,37 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/firingrange) +"vU" = ( +/obj/effect/floor_decal/industrial/outline/yellow, +/obj/machinery/mining/brace, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/drillstorage) "vW" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black{ - dir = 1 +/obj/structure/cable/heavyduty{ + icon_state = "1-2" }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 9 + }, +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "vX" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 }, /turf/simulated/shuttle/wall, /area/shuttle/aerostat) +"vY" = ( +/obj/machinery/bomb_tester, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "wb" = ( -/obj/effect/floor_decal/industrial/warning/dust/corner{ - dir = 8 +/obj/machinery/alarm{ + dir = 8; + pixel_x = 23 }, -/obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "wc" = ( @@ -5483,18 +5951,14 @@ /turf/simulated/shuttle/wall/hard_corner, /area/shuttle/aerostat) "wg" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/machinery/alarm{ - dir = 1; - pixel_y = -26 +/obj/machinery/vending/cola/soft{ + dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) @@ -5509,9 +5973,6 @@ /area/offmap/aerostat/inside/xenoarch) "wi" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/structure/cable{ - icon_state = "1-8" - }, /obj/structure/cable{ icon_state = "4-8" }, @@ -5525,6 +5986,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/arm/se) +"wl" = ( +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled/dark, +/area/offmap/aerostat/inside/lobby) "wm" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 5 @@ -5536,6 +6001,7 @@ /obj/machinery/light{ dir = 8 }, +/obj/structure/flora/pottedplant/unusual, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "wp" = ( @@ -5549,22 +6015,30 @@ }, /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/xenoarch) -"wq" = ( -/obj/structure/closet/crate/science, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "wr" = ( /obj/machinery/atmospherics/pipe/simple/hidden/blue{ dir = 5 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"ws" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/black{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "wz" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"wA" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/misclab) "wC" = ( /turf/simulated/shuttle/wall/voidcraft/hard_corner{ stripe_color = "#00FF00" @@ -5601,10 +6075,13 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "wG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 +/obj/structure/cable{ + icon_state = "1-2" }, -/turf/simulated/floor/tiled/white, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "wI" = ( /obj/structure/cable/heavyduty{ @@ -5634,10 +6111,14 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) -"wR" = ( -/obj/machinery/vending/tool, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +"wT" = ( +/obj/effect/floor_decal/rust, +/obj/random/maintenance/research, +/obj/random/maintenance/research, +/obj/random/maintenance/engineering, +/obj/structure/closet, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "wY" = ( /obj/machinery/alarm{ pixel_y = 26 @@ -5675,13 +6156,9 @@ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light_switch{ - dir = 1; - pixel_x = 32; - pixel_y = -24 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "xe" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -5689,32 +6166,35 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "xf" = ( -/obj/machinery/atmospherics/pipe/simple/visible{ - dir = 4 - }, -/obj/machinery/atmospherics/portables_connector{ - dir = 1 - }, /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/manifold/visible{ + dir = 1 + }, +/obj/machinery/meter, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "xg" = ( -/obj/structure/cable/heavyduty{ - icon_state = "4-8" - }, -/obj/machinery/alarm{ - pixel_y = 26 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/machinery/camera/network/research_outpost{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) +"xj" = ( +/obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/easthall) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/se) "xl" = ( /obj/structure/cable{ icon_state = "4-8" @@ -5744,28 +6224,49 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/radiocarbon_spectrometer, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "xs" = ( -/obj/structure/table/rack, -/obj/item/clothing/suit/bio_suit/anomaly, -/obj/item/clothing/head/bio_hood/anomaly, -/obj/item/clothing/mask/breath, -/obj/item/clothing/gloves/sterile/latex, -/obj/item/clothing/glasses/science, -/obj/effect/floor_decal/industrial/hatch/yellow, -/turf/simulated/floor/tiled, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/warning/corner, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 1 + }, +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 4 + }, +/turf/simulated/floor, /area/offmap/aerostat/inside/xenoarch) "xt" = ( /turf/simulated/wall, /area/offmap/aerostat/inside/drillstorage) "xu" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 5 +/obj/machinery/alarm{ + alarm_id = "anomaly_testing"; + dir = 4; + pixel_x = -23 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"xv" = ( +/obj/structure/cable/heavyduty{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/structure/sign/directions/science/xenoarch{ + dir = 1; + pixel_y = 32 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/easthall) "xw" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -5795,19 +6296,29 @@ }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"xC" = ( -/obj/structure/filingcabinet/filingcabinet, -/obj/machinery/alarm{ - dir = 8; - pixel_x = 23 +"xB" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/medical{ + name = "Virology Lab"; + req_access = list(39); + req_one_access = null + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/virology) "xD" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, -/obj/structure/table/steel_reinforced, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "xF" = ( @@ -5820,21 +6331,39 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/arm/se) "xG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 10 - }, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 9 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) -"xK" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 +"xH" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/blast/shutters{ + dir = 2; + id = "zorrenpartyroom"; + layer = 3.3; + name = "shutter" }, -/obj/effect/floor_decal/industrial/outline/red, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/machinery/vending/sovietsoda, +/turf/simulated/floor/plating/virgo2, +/area/offmap/aerostat/inside/zorrenoffice) +"xK" = ( +/obj/effect/floor_decal/rust, +/obj/effect/floor_decal/industrial/warning, +/obj/effect/floor_decal/industrial/warning{ + dir = 1 + }, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "xM" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -5852,12 +6381,13 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/arm/sw) "xO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/green{ +/obj/structure/window/reinforced{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/machinery/portable_atmospherics/canister/phoron, +/obj/machinery/door/window/brigdoor/eastleft{ + dir = 2; + req_access = list(7) }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -5865,22 +6395,21 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "xR" = ( -/obj/machinery/light/floortube{ - dir = 8; - pixel_x = -6 +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) +"xS" = ( +/obj/structure/cable{ + icon_state = "1-2" }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) -"xS" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 - }, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/virology) "xU" = ( /obj/machinery/atmospherics/pipe/simple/hidden/black, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"xV" = ( +/turf/simulated/wall, +/area/offmap/aerostat/inside/virology) "xW" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" @@ -5903,11 +6432,17 @@ }, /turf/simulated/floor/plating, /area/offmap/aerostat/inside/atmos) +"yd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 10 + }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/virology) "ye" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/item/modular_computer/console{ - dir = 8 - }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "yi" = ( @@ -5931,12 +6466,12 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 5 +/obj/machinery/atmospherics/pipe/manifold/hidden{ + dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/se) "yq" = ( /obj/effect/floor_decal/industrial/warning/dust, /obj/machinery/atmospherics/unary/vent_scrubber/on{ @@ -5947,14 +6482,7 @@ "yr" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/drillstorage) -"ys" = ( -/obj/effect/floor_decal/industrial/warning, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "yu" = ( -/obj/effect/floor_decal/industrial/warning/dust/corner{ - dir = 4 - }, /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -5962,6 +6490,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, +/obj/machinery/vending/snack{ + dir = 1 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "yv" = ( @@ -5995,8 +6526,8 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 5 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/wall, +/area/offmap/aerostat/inside/arm/ne) "yD" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -6012,14 +6543,11 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/south) "yG" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, /obj/machinery/alarm{ pixel_y = 26 }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "yH" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -6037,10 +6565,13 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "yI" = ( -/obj/machinery/atmospherics/valve{ - dir = 4 - }, /obj/machinery/light, +/obj/machinery/atmospherics/pipe/simple/visible/red{ + dir = 9 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "yK" = ( @@ -6050,6 +6581,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/light/floortube{ + dir = 8; + pixel_x = -6 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "yN" = ( @@ -6067,6 +6602,17 @@ /obj/effect/map_helper/airlock/atmos/chamber_pump, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"yQ" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/effect/floor_decal/rust, +/obj/structure/table/rack, +/obj/random/toolbox, +/obj/random/soap, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "yT" = ( /obj/machinery/atmospherics/pipe/simple/heat_exchanging{ dir = 10 @@ -6078,11 +6624,11 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "yX" = ( -/obj/machinery/light{ +/obj/machinery/camera/network/research_outpost{ dir = 8 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/misclab) "yZ" = ( /obj/structure/cable/heavyduty{ icon_state = "0-8" @@ -6104,25 +6650,20 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "zc" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/wall, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/telesci) "ze" = ( -/obj/machinery/artifact_analyser, -/obj/machinery/camera/network/research_outpost{ - dir = 8 +/turf/simulated/shuttle/wall/voidcraft/hard_corner{ + stripe_color = "#00FF00" }, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/virology) "zf" = ( -/obj/structure/table/steel_reinforced, /obj/random/maintenance/research, /obj/structure/sign/painting/public{ pixel_x = -30 }, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "zg" = ( @@ -6144,13 +6685,11 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "zn" = ( -/obj/effect/floor_decal/spline/plain{ - dir = 4 +/obj/machinery/door/airlock/glass_research{ + name = "Xenoarchaeology" }, -/obj/item/modular_computer/console/preset/research{ - dir = 8 - }, -/turf/simulated/floor/tiled, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/xenoarch) "zo" = ( /obj/structure/cable{ @@ -6180,11 +6719,15 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/arm/ne) "zr" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ +/obj/effect/floor_decal/rust, +/obj/effect/floor_decal/industrial/warning/corner{ dir = 8 }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/drillstorage) +/obj/effect/floor_decal/industrial/warning/corner{ + dir = 1 + }, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "zt" = ( /obj/machinery/door/airlock/glass_research{ req_one_access = null @@ -6195,12 +6738,10 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/zorrenoffice) "zu" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ +/obj/structure/window/reinforced{ dir = 4 }, -/obj/machinery/camera/network/research_outpost{ - dir = 8 - }, +/obj/machinery/portable_atmospherics/canister/nitrous_oxide, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "zw" = ( @@ -6217,10 +6758,17 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) +"zz" = ( +/obj/structure/bed/chair/bay{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "zA" = ( /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, +/obj/structure/flora/pottedplant/crystal, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "zB" = ( @@ -6247,6 +6795,13 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/south) +"zD" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/vending/tool, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "zE" = ( /obj/machinery/power/apc{ dir = 1; @@ -6271,6 +6826,9 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"zH" = ( +/turf/simulated/shuttle/wall/voidcraft/green, +/area/offmap/aerostat/inside/misclab) "zI" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -6278,12 +6836,6 @@ }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) -"zJ" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) "zM" = ( /obj/machinery/door/airlock/external, /obj/structure/cable{ @@ -6351,15 +6903,6 @@ /obj/effect/map_helper/airlock/door/int_door, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/arm/nw) -"Aa" = ( -/obj/machinery/atmospherics/pipe/simple/visible/universal{ - name = "Distro Loop Drain" - }, -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) "Ab" = ( /obj/machinery/atmospherics/portables_connector{ dir = 1 @@ -6392,18 +6935,11 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/arm/se) "Ae" = ( -/obj/structure/table/rack, -/obj/item/device/suit_cooling_unit, -/obj/item/weapon/storage/belt/archaeology, -/obj/item/clothing/mask/breath, -/obj/item/clothing/suit/space/anomaly/heat, -/obj/item/clothing/head/helmet/space/anomaly/heat, -/obj/item/weapon/pickaxe, -/obj/item/weapon/storage/excavation, -/obj/item/stack/flag/yellow, -/obj/item/weapon/tool/wrench, -/obj/item/device/measuring_tape, -/turf/simulated/floor/tiled/white, +/obj/machinery/door/airlock/glass_research{ + name = "Xenoarchaeology Storage" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/xenoarch) "Ah" = ( /obj/structure/cable{ @@ -6411,6 +6947,13 @@ }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) +"Ai" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/structure/table/standard, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/telesci) "Ak" = ( /obj/machinery/atmospherics/pipe/simple/hidden/black{ dir = 5 @@ -6418,9 +6961,28 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "Al" = ( -/obj/structure/filingcabinet/chestdrawer, -/turf/simulated/floor/tiled, +/obj/machinery/artifact_scanpad, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) +"An" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/storage/box/monkeycubes, +/obj/item/weapon/storage/box/monkeycubes, +/obj/item/weapon/storage/pill_bottle/dylovene, +/obj/item/weapon/storage/pill_bottle/dylovene, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "Ao" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -6431,11 +6993,15 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/southchamb) "Ap" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/flora/ausbushes/ppflowers, /obj/machinery/light{ dir = 4 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) "Aq" = ( /obj/machinery/door/airlock/glass_research{ req_one_access = null @@ -6451,13 +7017,14 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/zorrenoffice) "Ar" = ( -/obj/machinery/portable_atmospherics/canister/nitrogen, -/obj/machinery/door/window/brigdoor/eastleft{ - req_access = list(7) +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_research{ + name = "Xenoarchaeology Prep Room" }, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/xenoarch) "As" = ( /obj/machinery/door/airlock/glass_research{ name = "Atmospherics"; @@ -6473,9 +7040,6 @@ /obj/effect/floor_decal/industrial/warning/dust, /obj/structure/table/standard, /obj/fiftyspawner/steel, -/obj/machinery/camera/network/research_outpost{ - dir = 1 - }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Au" = ( @@ -6500,13 +7064,11 @@ /turf/simulated/floor/reinforced/airless, /area/offmap/aerostat/inside/toxins) "Ay" = ( -/obj/machinery/atmospherics/pipe/manifold/visible/red{ - dir = 1 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 5 }, +/obj/machinery/atmospherics/pipe/manifold/visible/red, +/obj/machinery/meter, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Az" = ( @@ -6516,9 +7078,6 @@ /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/powercontrol) "AB" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Xenoarchaeology" - }, /obj/structure/cable{ icon_state = "4-8" }, @@ -6527,8 +7086,7 @@ /obj/structure/cable{ icon_state = "2-8" }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, +/turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "AC" = ( /obj/machinery/atmospherics/pipe/simple/hidden/black{ @@ -6537,25 +7095,22 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "AD" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, /turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/arm/ne) "AE" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 +/obj/item/weapon/virusdish/random, +/obj/item/weapon/virusdish/random, +/obj/item/weapon/virusdish/random, +/obj/item/weapon/virusdish/random, +/obj/item/weapon/virusdish/random, +/obj/structure/closet/crate/medical{ + name = "Virus Samples" }, -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "AF" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -6622,12 +7177,26 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"AR" = ( +/obj/machinery/atmospherics/portables_connector{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/air/airlock, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/firingrange) "AX" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 5 }, /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/se) +"AY" = ( +/obj/machinery/portable_atmospherics/powered/scrubber/huge/stationary{ + scrub_id = "science_outpost" + }, +/obj/machinery/light, +/turf/simulated/floor/plating, +/area/offmap/aerostat/inside/toxins) "Bb" = ( /obj/machinery/atmospherics/pipe/manifold4w/hidden, /obj/structure/cable{ @@ -6641,12 +7210,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/north) -"Bc" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) "Be" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 6 @@ -6659,12 +7222,11 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) -"Bh" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 9 - }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +"Bi" = ( +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/blood/oil, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Bj" = ( /obj/structure/cable{ icon_state = "4-8" @@ -6672,11 +7234,24 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch/chamber) "Bk" = ( -/obj/machinery/atmospherics/portables_connector, +/obj/structure/cable, +/obj/machinery/power/apc{ + dir = 1; + pixel_y = 24 + }, +/obj/machinery/light{ + dir = 8 + }, +/obj/structure/dispenser{ + phorontanks = 0 + }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "Bm" = ( /obj/machinery/camera/network/research_outpost, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 6 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "Bo" = ( @@ -6710,53 +7285,34 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) -"Br" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) "Bs" = ( /obj/machinery/atmospherics/pipe/manifold4w/hidden/blue, /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/powercontrol) -"Bt" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 +"Bv" = ( +/obj/structure/cable{ + icon_state = "4-8" }, -/obj/structure/closet/crate/bin{ - anchored = 1 +/obj/machinery/atmospherics/pipe/simple/visible, +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) -"Bu" = ( -/obj/machinery/dna_scannernew, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) -"By" = ( /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/toxins) "Bz" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating/virgo2, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/westhall) "BA" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/plating/virgo2, -/area/offmap/aerostat/inside/northchamb) -"BB" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +/obj/machinery/atmospherics/pipe/simple/hidden/red{ + dir = 10 }, -/obj/machinery/light{ - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/shuttle/wall/voidcraft/green, +/area/offmap/aerostat/inside/atmos) "BE" = ( /obj/machinery/light/floortube{ dir = 8; @@ -6777,15 +7333,17 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "BG" = ( -/obj/machinery/portable_atmospherics/powered/scrubber/huge/stationary{ - scrub_id = "science_outpost" +/obj/machinery/atmospherics/pipe/simple/visible/blue{ + dir = 6 + }, +/obj/machinery/camera/network/research_outpost{ + dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/visible/blue, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "BH" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/table/steel_reinforced, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "BK" = ( @@ -6794,19 +7352,6 @@ }, /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/east) -"BM" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 4 - }, -/obj/effect/floor_decal/industrial/warning/corner, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "BO" = ( /obj/structure/cable/heavyduty{ icon_state = "0-8" @@ -6859,9 +7404,15 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) +"BT" = ( +/obj/machinery/atmospherics/portables_connector{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "BU" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -6880,20 +7431,18 @@ name = "Distro Loop Drain" }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"BX" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ +/area/offmap/aerostat/inside/atmos) +"Ca" = ( +/obj/structure/table/standard, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen/fountain, +/obj/item/device/assembly_holder/timer_igniter, +/obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, -/obj/machinery/alarm{ - pixel_y = 26 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) -"Ca" = ( -/obj/machinery/computer/area_atmos/tag{ - dir = 8; - scrub_id = "science_outpost" +/obj/item/weapon/weldingtool, +/obj/structure/extinguisher_cabinet{ + pixel_x = 30 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -6904,17 +7453,23 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, /obj/structure/cable{ icon_state = "1-8" }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) -"Cd" = ( -/obj/structure/grille, -/obj/structure/window/reinforced/full, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/xenoarch) +"Cd" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) "Ce" = ( /turf/simulated/wall, /area/offmap/aerostat/inside/atmos) @@ -6949,39 +7504,23 @@ /obj/machinery/atmospherics/pipe/manifold4w/hidden/cyan, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) -"Cq" = ( -/obj/structure/reagent_dispensers/watertank, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) -"Ct" = ( -/obj/machinery/light/floortube{ - dir = 4; - pixel_x = 5 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) -"Cu" = ( -/obj/structure/closet/secure_closet/xenoarchaeologist, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) -"Cw" = ( -/obj/structure/table/standard, -/obj/item/weapon/tool/crowbar, -/obj/item/weapon/anodevice{ - pixel_x = -2 - }, -/obj/item/weapon/anodevice{ - pixel_x = 1 - }, -/obj/item/device/multitool, -/obj/effect/floor_decal/spline/plain{ - dir = 1 - }, +"Cm" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/northchamb) +"Cu" = ( +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) +"Cw" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/power/apc, +/obj/structure/cable, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "CA" = ( /obj/effect/floor_decal/industrial/warning/dust{ @@ -6997,12 +7536,15 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/firealarm{ + layer = 3.3; + pixel_y = -28 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "CE" = ( -/obj/machinery/atmospherics/binary/pump, -/obj/machinery/atmospherics/pipe/simple/hidden/universal{ - dir = 4 +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -7020,7 +7562,7 @@ /obj/effect/floor_decal/industrial/warning/dust{ dir = 4 }, -/obj/structure/table/glass, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "CJ" = ( @@ -7056,6 +7598,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"CN" = ( +/obj/structure/table/wooden_reinforced, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "CO" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/cyan{ dir = 4 @@ -7078,30 +7624,28 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden, +/obj/machinery/door/firedoor/glass, +/obj/effect/floor_decal/rust, /obj/machinery/door/airlock/maintenance/rnd{ req_one_access = null }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/se) "CT" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, -/obj/structure/table/steel_reinforced, /obj/random/firstaid, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "CV" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 4 - }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/miscstorage) "Da" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/green{ dir = 1 @@ -7113,7 +7657,7 @@ /area/offmap/aerostat/inside/atmos) "Db" = ( /turf/simulated/shuttle/wall/voidcraft/green/virgo2/nocol, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/virology) "Dd" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -7122,9 +7666,11 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/airlock/east) "De" = ( -/obj/machinery/computer/telescience, -/turf/simulated/floor/reinforced, -/area/offmap/aerostat/inside/telesci) +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) "Dg" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ @@ -7138,6 +7684,17 @@ }, /turf/simulated/wall, /area/offmap/aerostat/inside/toxins) +"Di" = ( +/obj/structure/flora/pottedplant/minitree, +/obj/structure/cable{ + icon_state = "0-4" + }, +/obj/machinery/power/apc{ + dir = 8; + pixel_x = -22 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "Dk" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /obj/machinery/light/floortube{ @@ -7149,16 +7706,10 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/south) -"Dl" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +"Dp" = ( +/obj/structure/sign/department/virology, +/turf/simulated/shuttle/wall/voidcraft/green, +/area/offmap/aerostat/inside/virology) "Dq" = ( /obj/structure/window/reinforced{ dir = 8 @@ -7209,13 +7760,28 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 6 + }, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/se) "DC" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/south) +"DD" = ( +/obj/machinery/atmospherics/portables_connector{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/outline/red, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/atmos) +"DE" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) "DF" = ( /obj/machinery/door/airlock/multi_tile/metal{ dir = 1; @@ -7232,19 +7798,15 @@ /obj/machinery/light{ dir = 1 }, -/obj/structure/closet/crate/bin{ - anchored = 1 - }, +/obj/structure/table/reinforced, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "DH" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/sign/poster{ - dir = 8; - pixel_x = -32 +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -7253,20 +7815,21 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "DJ" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, /obj/machinery/atmospherics/pipe/simple/hidden/blue{ dir = 5 }, /obj/machinery/atmospherics/pipe/manifold/hidden/aux{ dir = 4 }, +/obj/structure/cable/heavyduty{ + icon_state = "1-4" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "DK" = ( /obj/machinery/door/airlock/multi_tile/glass{ - name = "Toxins Lab" + name = "Toxins Lab"; + req_one_access = list(47) }, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/steel_ridged, @@ -7282,11 +7845,13 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "DM" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/red{ - dir = 8 +/obj/machinery/alarm{ + alarm_id = "anomaly_testing"; + dir = 4; + pixel_x = -23 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "DN" = ( /obj/machinery/atmospherics/pipe/simple/visible/yellow{ dir = 10 @@ -7300,12 +7865,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/power/apc{ dir = 8; - name = "east bump"; pixel_x = -22 }, /obj/structure/cable, -/obj/structure/table/standard, -/obj/item/device/multitool, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) "DP" = ( @@ -7328,6 +7890,10 @@ }, /turf/simulated/floor, /area/offmap/aerostat/inside/airlock/south) +"DV" = ( +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "DY" = ( /obj/effect/floor_decal/rust, /obj/machinery/atmospherics/pipe/simple/heat_exchanging/junction{ @@ -7336,11 +7902,10 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "Eb" = ( -/obj/effect/floor_decal/spline/plain{ - dir = 4 - }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/portable_atmospherics/powered/pump, +/obj/effect/floor_decal/industrial/hatch/yellow, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Eh" = ( /obj/machinery/atmospherics/portables_connector{ dir = 1 @@ -7360,6 +7925,13 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"Em" = ( +/obj/machinery/hologram/holopad, +/obj/machinery/atmospherics/binary/pump{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Ep" = ( /obj/machinery/door/airlock/external{ frequency = 1380; @@ -7381,6 +7953,10 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) +"Et" = ( +/obj/structure/ore_box, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/drillstorage) "Eu" = ( /obj/machinery/atmospherics/portables_connector/aux{ dir = 4 @@ -7409,12 +7985,26 @@ /area/offmap/aerostat/inside/firingrange) "Ey" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/universal, /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) +"EA" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/plating/virgo2, +/area/offmap/aerostat/inside/misclab) +"EC" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/reagent_containers/glass/beaker, +/obj/item/weapon/reagent_containers/glass/beaker, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "ED" = ( /obj/machinery/atmospherics/omni/atmos_filter{ name = "N2/O2 Filter"; @@ -7424,14 +8014,7 @@ tag_west = 3 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"EF" = ( -/obj/effect/floor_decal/industrial/warning, -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/atmos) "EI" = ( /obj/machinery/light, /obj/machinery/atmospherics/pipe/simple/hidden{ @@ -7456,45 +8039,74 @@ "EN" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/west) +"EP" = ( +/obj/structure/table/wooden_reinforced, +/obj/item/weapon/reagent_containers/food/drinks/cup{ + pixel_x = -5; + pixel_y = 4 + }, +/obj/item/weapon/reagent_containers/food/drinks/cup{ + pixel_x = 5; + pixel_y = 4 + }, +/obj/item/weapon/reagent_containers/food/drinks/cup{ + pixel_x = -5; + pixel_y = -4 + }, +/obj/item/weapon/reagent_containers/food/drinks/cup{ + pixel_x = 5; + pixel_y = -4 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "EQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) "ER" = ( -/obj/machinery/light{ - dir = 1 +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) +"ES" = ( +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) -"ES" = ( -/turf/simulated/floor/reinforced, /area/offmap/aerostat/inside/telesci) "EV" = ( /obj/effect/floor_decal/industrial/warning/dust, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"EW" = ( +/obj/structure/table/standard, +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/random/toolbox, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) "EX" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" }, -/obj/structure/sign/directions/science/xenoarch{ - dir = 1; - pixel_y = 32 - }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 1 }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "Fa" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 8 }, -/obj/structure/table/glass, /obj/random/maintenance/research, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "Ff" = ( @@ -7508,7 +8120,7 @@ dir = 10 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "Fi" = ( /obj/machinery/atmospherics/binary/pump{ dir = 4 @@ -7532,6 +8144,7 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 }, +/obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Fo" = ( @@ -7585,12 +8198,7 @@ /turf/simulated/floor/reinforced/airless, /area/offmap/aerostat/inside/toxins) "Fw" = ( -/obj/machinery/atmospherics/trinary/atmos_filter{ - dir = 4; - name = "High Power Gas filter"; - power_rating = 15000; - use_power = 0 - }, +/obj/machinery/atmospherics/pipe/manifold/hidden/black, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Fy" = ( @@ -7608,6 +8216,15 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/south) +"FA" = ( +/obj/structure/bed/chair/comfy/black{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "FD" = ( /obj/effect/floor_decal/industrial/warning/dust, /obj/structure/cable{ @@ -7616,8 +8233,8 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "FF" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, /obj/machinery/camera/network/research_outpost, +/obj/machinery/atmospherics/unary/vent_scrubber/on, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "FJ" = ( @@ -7627,11 +8244,8 @@ /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/west) "FK" = ( -/obj/structure/extinguisher_cabinet{ - pixel_x = 30 - }, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 4 +/obj/machinery/portable_atmospherics/powered/scrubber/huge/stationary{ + scrub_id = "science_outpost" }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -7657,10 +8271,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/machinery/light/floortube{ - dir = 4; - pixel_x = 5 - }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "FU" = ( @@ -7692,20 +8302,22 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "FX" = ( -/obj/structure/table/steel_reinforced, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 + }, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) -"Gb" = ( -/obj/effect/floor_decal/spline/plain{ - dir = 4 +"FY" = ( +/turf/simulated/shuttle/wall/voidcraft/hard_corner{ + stripe_color = "#00FF00" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +/area/offmap/aerostat/inside/misclab) +"FZ" = ( +/obj/machinery/alarm{ + pixel_y = 26 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) "Gc" = ( /obj/effect/shuttle_landmark{ @@ -7738,25 +8350,28 @@ /turf/unsimulated/floor/sky/virgo2_sky, /area/offmap/aerostat) "Gf" = ( -/obj/machinery/portable_atmospherics/canister/oxygen, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"Gi" = ( -/obj/structure/cable{ - icon_state = "2-8" +/obj/effect/floor_decal/rust, +/obj/effect/floor_decal/industrial/warning{ + dir = 4 }, +/obj/effect/floor_decal/industrial/warning{ + dir = 8 + }, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) +"Gi" = ( /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/suspension_gen, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Gl" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 4 }, -/obj/structure/table/glass, /obj/random/maintenance/research, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "Gm" = ( @@ -7764,16 +8379,20 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/powercontrol) -"Go" = ( -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +"Gn" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Gq" = ( /obj/structure/cable/heavyduty{ icon_state = "1-2" }, /obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/se) "Gr" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -7807,20 +8426,21 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "Gt" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/machinery/portable_atmospherics/powered/scrubber/huge/stationary{ + scrub_id = "science_outpost" + }, +/obj/machinery/light{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Gu" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab" +/obj/structure/window/reinforced{ + dir = 4 }, -/obj/machinery/door/firedoor/glass, +/obj/machinery/portable_atmospherics/canister/oxygen, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"Gv" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) "Gy" = ( /obj/structure/bed/chair/shuttle{ dir = 8 @@ -7888,7 +8508,7 @@ icon_state = "4-8" }, /turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "GG" = ( /obj/effect/floor_decal/rust, /obj/structure/cable/yellow{ @@ -7899,17 +8519,22 @@ }, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) -"GK" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 +"GI" = ( +/obj/machinery/light_switch{ + dir = 1; + pixel_x = 32; + pixel_y = -24 }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"GK" = ( /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "GL" = ( -/obj/machinery/meter, /obj/machinery/atmospherics/pipe/manifold/visible/red{ dir = 1 }, @@ -7927,6 +8552,14 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) +"GO" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, +/obj/item/weapon/paper_bin, +/obj/item/weapon/hand_labeler, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "GP" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -7935,15 +8568,10 @@ /turf/simulated/wall, /area/offmap/aerostat/inside/telesci) "GR" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/structure/closet/crate/science, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "GT" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable{ @@ -7957,40 +8585,64 @@ /obj/effect/floor_decal/industrial/danger/corner{ dir = 4 }, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/firealarm{ + layer = 3.3; + pixel_y = -28 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "GX" = ( -/obj/machinery/atmospherics/binary/pump{ +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) +"Ha" = ( +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/light{ dir = 1 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"Ha" = ( -/obj/machinery/atmospherics/omni/atmos_filter{ - name = "Phoron Filter"; - tag_east = 6; - tag_north = 1; - tag_south = 2 - }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) "Hb" = ( /obj/machinery/atmospherics/pipe/simple/hidden/blue{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/green, +/obj/structure/cable/heavyduty{ + icon_state = "4-8" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Hd" = ( -/obj/machinery/meter, -/obj/machinery/atmospherics/pipe/manifold/visible{ - dir = 1 - }, /obj/structure/cable{ icon_state = "1-2" }, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"Hh" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/table/standard, +/obj/item/weapon/storage/box/beakers, +/obj/item/weapon/reagent_containers/glass/beaker/large, +/obj/item/weapon/reagent_containers/dropper, +/obj/machinery/reagentgrinder, +/obj/structure/reagent_dispensers/acid{ + pixel_x = 31 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) "Hj" = ( /obj/structure/table/steel_reinforced, /obj/machinery/light_switch{ @@ -8019,13 +8671,6 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) -"Hn" = ( -/obj/machinery/artifact_harvester, -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) "Ho" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -8048,18 +8693,24 @@ /turf/simulated/shuttle/floor/yellow/airless, /area/shuttle/aerostat) "Hq" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, /obj/structure/cable{ icon_state = "4-8" }, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"Hs" = ( +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/machinery/camera/network/research_outpost{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/firingrange) "Ht" = ( /turf/simulated/shuttle/wall/voidcraft/green, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/genetics) "Hu" = ( /obj/effect/floor_decal/industrial/warning{ dir = 4 @@ -8091,25 +8742,25 @@ icon_state = "4-8" }, /obj/machinery/door/airlock/glass_research{ - name = "Telescience" + name = "Miscellaneous Storage"; + req_one_access = null }, /obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/telesci) -"Hx" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 +/obj/structure/cable{ + icon_state = "1-8" }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/miscstorage) +"Hx" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/portable_atmospherics/canister/air/airlock, /obj/machinery/camera/network/research_outpost{ dir = 8 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Hy" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) @@ -8120,16 +8771,27 @@ /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) "HA" = ( -/obj/machinery/artifact_scanpad, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) +"HE" = ( +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "HH" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 6 }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, /obj/structure/cable{ icon_state = "4-8" }, @@ -8139,26 +8801,19 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "HK" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 4 +/obj/structure/table/wooden_reinforced, +/turf/simulated/floor/glass/reinforced{ + color = "#eacd7c" }, -/obj/machinery/light, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/glassgetsitsownarea) "HL" = ( -/obj/machinery/atmospherics/pipe/manifold4w/visible, -/obj/machinery/meter, +/obj/machinery/washing_machine, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "HM" = ( -/obj/machinery/light{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, @@ -8178,7 +8833,10 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/zorrenoffice) "HO" = ( -/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/flora/pottedplant/subterranean, +/obj/machinery/camera/network/research_outpost{ + dir = 1 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "HQ" = ( @@ -8189,25 +8847,23 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/southchamb) "HR" = ( -/obj/structure/table/standard, -/obj/item/device/gps{ - pixel_x = -5; - pixel_y = 5 - }, -/obj/item/device/gps{ - pixel_x = -2; - pixel_y = 2 - }, -/obj/item/device/gps{ - pixel_x = 1; - pixel_y = -1 +/obj/structure/cable{ + icon_state = "1-4" }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) "HS" = ( -/obj/structure/flora/pottedplant/crystal, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 10 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/westhall) "HT" = ( /obj/structure/cable{ icon_state = "1-2" @@ -8220,11 +8876,21 @@ /obj/machinery/atmospherics/binary/pump/on{ dir = 8 }, +/obj/machinery/power/apc, +/obj/structure/cable{ + icon_state = "0-2" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "HV" = ( -/obj/machinery/atmospherics/pipe/manifold/visible/red{ - dir = 1 +/obj/machinery/atmospherics/portables_connector{ + dir = 8 + }, +/obj/effect/floor_decal/industrial/outline/red, +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -8237,11 +8903,12 @@ /turf/simulated/floor/tiled/steel_ridged, /area/shuttle/aerostat) "Id" = ( -/obj/machinery/atmospherics/pipe/manifold/visible/red, -/obj/machinery/meter, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/visible/red{ + dir = 9 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Ig" = ( @@ -8251,27 +8918,33 @@ /turf/simulated/shuttle/wall/voidcraft/green/virgo2/nocol, /area/offmap/aerostat/inside/airlock/east) "Ih" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 6 - }, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/portables_connector{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Ii" = ( -/obj/machinery/atmospherics/binary/pump/on{ - name = "Scrubber to Waste" - }, /obj/machinery/camera/network/research_outpost{ dir = 8 }, +/obj/machinery/atmospherics/pipe/simple/hidden/red{ + dir = 5 + }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "Ij" = ( /obj/effect/floor_decal/industrial/danger{ dir = 1 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/camera/network/research_outpost{ + dir = 1 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Im" = ( @@ -8288,27 +8961,21 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "In" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 8 + dir = 1 }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/wall, +/area/offmap/aerostat/inside/atmos) "Ip" = ( -/obj/structure/table/standard, -/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/reagent_dispensers/watertank, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Ir" = ( -/obj/machinery/power/apc{ - dir = 8; - name = "east bump"; - pixel_x = -22 +/obj/machinery/artifact_analyser, +/obj/machinery/camera/network/research_outpost{ + dir = 4 }, -/obj/structure/cable, -/turf/simulated/floor/tiled, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) "Is" = ( /obj/machinery/atmospherics/valve, @@ -8318,12 +8985,10 @@ /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/arm/se) "Iu" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light{ - dir = 8 - }, /obj/structure/table/standard, -/obj/item/weapon/ore/bluespace_crystal, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 9 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) "Iw" = ( @@ -8351,14 +9016,9 @@ /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/south) "IA" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/blue{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, +/obj/machinery/disease2/diseaseanalyser, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/virology) "IB" = ( /obj/structure/grille, /obj/structure/grille, @@ -8376,6 +9036,7 @@ /obj/structure/closet/crate/bin{ anchored = 1 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "IH" = ( @@ -8396,7 +9057,6 @@ /obj/structure/cable, /obj/machinery/power/apc{ dir = 8; - name = "east bump"; pixel_x = -22 }, /obj/machinery/mining/drill, @@ -8418,16 +9078,29 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/southchamb) "IN" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 4 + }, /obj/machinery/atmospherics/binary/pump/on{ - name = "phoron pump" + name = "N2O pump" }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) +"IO" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/plating/virgo2, +/area/offmap/aerostat/inside/virology) "IP" = ( /turf/simulated/shuttle/wall/voidcraft/hard_corner{ stripe_color = "#00FF00" }, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/genetics) +"IS" = ( +/obj/machinery/telepad, +/turf/simulated/floor/reinforced, +/area/offmap/aerostat/inside/telesci) "IV" = ( /obj/machinery/airlock_sensor{ dir = 1; @@ -8487,19 +9160,25 @@ /obj/machinery/door/firedoor/glass, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/airlock/south) -"Ji" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8 +"Je" = ( +/obj/machinery/alarm{ + dir = 4; + pixel_x = -23 }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/virology) +"Ji" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/effect/floor_decal/rust, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/maintenance/rnd{ + req_one_access = null + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/arm/se) "Jn" = ( -/obj/structure/table/steel_reinforced, /obj/random/maintenance/research, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "Jo" = ( @@ -8520,16 +9199,18 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Jr" = ( -/obj/structure/sign/painting/public{ - pixel_y = 30 +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/machinery/light{ + dir = 8 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Ju" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black{ +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/turf/simulated/floor/tiled/white, +/turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "Jz" = ( /obj/structure/grille, @@ -8574,8 +9255,27 @@ /obj/structure/cable{ icon_state = "1-2" }, -/turf/simulated/wall, +/obj/machinery/door/airlock/glass_research{ + name = "Toxins Lab" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) +"JE" = ( +/obj/structure/cable/heavyduty{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/obj/machinery/alarm{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/easthall) "JG" = ( /obj/structure/metal_edge, /turf/unsimulated/floor/sky/virgo2_sky, @@ -8596,11 +9296,10 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/airlock/south) "JI" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/effect/floor_decal/rust, +/obj/structure/closet/crate/science, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "JJ" = ( /obj/structure/grille, /obj/structure/window/phoronreinforced{ @@ -8612,13 +9311,13 @@ /turf/simulated/floor/reinforced/airless, /area/offmap/aerostat/inside/toxins) "JM" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab"; - req_one_access = null +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "JP" = ( /obj/structure/cable/heavyduty{ @@ -8630,19 +9329,17 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "JQ" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 - }, /obj/machinery/light{ dir = 4 }, /obj/structure/flora/pottedplant/minitree, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "JR" = ( /obj/machinery/light, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/virology) "JS" = ( /obj/machinery/light{ dir = 1 @@ -8663,14 +9360,10 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab" - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "JX" = ( /obj/structure/cable{ @@ -8681,6 +9374,10 @@ }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) +"JY" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) "JZ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -8688,8 +9385,11 @@ /obj/machinery/light_switch{ pixel_y = 25 }, -/turf/simulated/floor/tiled/white, +/turf/simulated/wall, /area/offmap/aerostat/inside/telesci) +"Ka" = ( +/turf/simulated/shuttle/wall/voidcraft/hard_corner, +/area/offmap/aerostat/inside/genetics) "Kc" = ( /obj/machinery/door/airlock/external{ frequency = 1380; @@ -8705,15 +9405,9 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 4 }, +/obj/structure/flora/pottedplant/subterranean, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) -"Ke" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/air/airlock, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) "Kh" = ( /obj/effect/floor_decal/industrial/warning/dust/corner, /turf/simulated/floor/tiled/dark, @@ -8729,6 +9423,12 @@ "Kj" = ( /obj/structure/table/standard, /obj/item/device/analyzer, +/obj/machinery/camera/network/research_outpost{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 9 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Kk" = ( @@ -8740,11 +9440,7 @@ }, /obj/effect/floor_decal/rust, /turf/simulated/floor/plating/virgo2, -/area/offmap/aerostat/inside/northchamb) -"Kn" = ( -/obj/structure/closet/secure_closet/xenoarchaeologist, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/atmos) "Ko" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, @@ -8762,18 +9458,14 @@ }, /turf/simulated/shuttle/floor/yellow, /area/shuttle/aerostat) -"Kr" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/obj/machinery/light{ - dir = 1 - }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) "Kv" = ( -/turf/simulated/wall, -/area/offmap/aerostat/inside/genetics) +/obj/machinery/button/remote/blast_door{ + id = telesci_blast; + name = "Blast Door Control"; + pixel_x = 25 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/telesci) "Kw" = ( /obj/machinery/atmospherics/unary/heat_exchanger{ dir = 8 @@ -8786,6 +9478,18 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) +"Kz" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled, +/area/offmap/aerostat/inside/misclab) +"KA" = ( +/obj/structure/cable{ + icon_state = "4-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/westhall) "KC" = ( /obj/machinery/alarm{ pixel_y = 26 @@ -8793,12 +9497,16 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "KD" = ( -/obj/machinery/portable_atmospherics/canister/carbon_dioxide, -/obj/machinery/door/window/brigdoor/eastleft{ - req_access = list(7) +/obj/structure/cable/heavyduty{ + icon_state = "1-2" }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/glass_research{ + name = "Toxins Lab" + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/toxins) "KE" = ( /obj/structure/cable/yellow{ icon_state = "1-8" @@ -8817,12 +9525,6 @@ /obj/effect/floor_decal/rust, /turf/simulated/floor, /area/offmap/aerostat/inside/arm/nw) -"KG" = ( -/obj/structure/cable{ - icon_state = "2-8" - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) "KH" = ( /obj/machinery/airlock_sensor/airlock_exterior{ dir = 6; @@ -8851,33 +9553,33 @@ "KK" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/southchamb) +"KM" = ( +/obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/medical{ + name = "Virology Isolation Room"; + req_access = list (39) + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/virology) "KN" = ( /turf/simulated/shuttle/wall/voidcraft/hard_corner{ stripe_color = "#00FF00" }, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/arm/ne) "KP" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 9 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "KS" = ( -/obj/machinery/atmospherics/pipe/manifold/visible{ - dir = 4 - }, /obj/machinery/meter, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/visible, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"KU" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 4 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "KW" = ( /obj/effect/floor_decal/industrial/warning/dust, /obj/machinery/door/airlock/external{ @@ -8893,35 +9595,36 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 1 }, /turf/simulated/wall, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "Ld" = ( /turf/simulated/floor, /area/offmap/aerostat/inside/firingrange) "Lf" = ( -/obj/structure/anomaly_container, -/turf/simulated/floor, +/obj/machinery/atmospherics/portables_connector{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/air/airlock, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Lg" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/table/steel_reinforced, /obj/random/firstaid, /obj/random/maintenance/research, /obj/structure/sign/painting/public{ pixel_x = -30 }, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "Lj" = ( -/obj/structure/cable/heavyduty{ - icon_state = "1-4" - }, /obj/machinery/atmospherics/pipe/simple/hidden/aux{ dir = 9 }, +/obj/machinery/light, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Ln" = ( @@ -8931,9 +9634,13 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, -/obj/machinery/atmospherics/pipe/simple/hidden, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/obj/structure/closet/crate, +/obj/random/maintenance/engineering, +/obj/random/maintenance/engineering, +/obj/random/medical/pillbottle, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Lo" = ( /obj/machinery/atmospherics/pipe/manifold/hidden{ dir = 4 @@ -8944,38 +9651,40 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/north) "Lq" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 - }, -/obj/machinery/computer/scan_consolenew, -/obj/item/weapon/paper{ - info = "out of order" - }, -/obj/machinery/camera/network/research_outpost, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) -"Ls" = ( -/obj/machinery/atmospherics/pipe/simple/hidden{ +/obj/machinery/atmospherics/pipe/manifold/hidden{ dir = 4 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/firingrange) +/obj/effect/floor_decal/rust, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/floor, +/area/offmap/aerostat/inside/westhall) +"Ls" = ( +/obj/machinery/atmospherics/pipe/simple/hidden, +/obj/machinery/door/airlock/maintenance/rnd{ + req_one_access = null + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/westhall) "Lt" = ( /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "Lu" = ( -/obj/machinery/light_switch{ - dir = 4; - pixel_x = -24 +/obj/machinery/light{ + dir = 8 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/floor/reinforced, +/area/offmap/aerostat/inside/telesci) "Ly" = ( -/obj/machinery/camera/network/research_outpost{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/obj/effect/floor_decal/rust, +/obj/effect/floor_decal/industrial/outline/red, +/obj/structure/anomaly_container, +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "LB" = ( /obj/machinery/atmospherics/pipe/simple/visible/yellow, /obj/structure/grille, @@ -8983,6 +9692,13 @@ /obj/structure/window/reinforced/full, /turf/simulated/floor, /area/offmap/aerostat/inside/xenoarch/chamber) +"LD" = ( +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "LF" = ( /obj/structure/cable/heavyduty{ icon_state = "1-4" @@ -9003,35 +9719,15 @@ /obj/machinery/light, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) -"LI" = ( -/obj/structure/closet/firecloset, -/obj/structure/sign/poster{ - dir = 4; - pixel_x = 32 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) "LK" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/arm/ne) -"LN" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/light{ - dir = 4 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) "LR" = ( -/obj/structure/cable/heavyduty{ - icon_state = "4-8" +/obj/machinery/atmospherics/pipe/simple/hidden/blue, +/obj/structure/cable{ + icon_state = "1-2" }, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 4 - }, -/turf/simulated/floor/tiled/white, +/turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "LS" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -9043,11 +9739,13 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "LT" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on{ +/obj/machinery/atmospherics/portables_connector{ dir = 8 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/se) "LW" = ( /obj/effect/shuttle_landmark{ base_area = /area/offmap/aerostat; @@ -9059,15 +9757,11 @@ /turf/unsimulated/floor/sky/virgo2_sky, /area/offmap/aerostat) "LY" = ( -/obj/effect/floor_decal/industrial/warning/corner, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/wall, +/area/offmap/aerostat/inside/arm/ne) "LZ" = ( /obj/structure/window/reinforced{ dir = 8 @@ -9099,13 +9793,19 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 1 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Mc" = ( -/obj/machinery/telepad, -/obj/effect/floor_decal/industrial/warning/full, -/turf/simulated/floor/reinforced, -/area/offmap/aerostat/inside/telesci) +/obj/structure/cable/heavyduty{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/camera/network/research_outpost{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) "Md" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -9115,6 +9815,10 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"Mf" = ( +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/firingrange) "Mg" = ( /obj/machinery/atmospherics/unary/heater{ dir = 1; @@ -9157,6 +9861,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 4 }, +/obj/structure/flora/pottedplant/mysterious, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "Ml" = ( @@ -9164,7 +9869,7 @@ icon_state = "1-4" }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "Mn" = ( /obj/structure/cable{ icon_state = "1-2" @@ -9172,23 +9877,13 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Mp" = ( -/obj/structure/table/standard, -/obj/item/weapon/storage/box/beakers, -/obj/item/weapon/reagent_containers/glass/beaker/large, -/obj/item/weapon/reagent_containers/dropper, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/light{ - dir = 8 +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor/tiled, +/turf/simulated/wall, /area/offmap/aerostat/inside/xenoarch) "Ms" = ( /obj/effect/floor_decal/industrial/warning/dust, @@ -9203,10 +9898,20 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/west) -"Mv" = ( -/obj/machinery/atmospherics/pipe/simple/visible/red{ - dir = 5 +"Mu" = ( +/obj/machinery/atmospherics/unary/freezer{ + icon_state = "freezer" }, +/obj/structure/sign/painting/public{ + pixel_y = 30 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) +"Mv" = ( +/obj/machinery/atmospherics/pipe/manifold/visible/red{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Mw" = ( @@ -9227,34 +9932,48 @@ }, /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/nw) +"MA" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/firingrange) +"MB" = ( +/obj/structure/sign/painting/public{ + pixel_y = 30 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "MC" = ( /obj/effect/floor_decal/industrial/warning/dust, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) +"ME" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "MH" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, -/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"MK" = ( -/obj/effect/floor_decal/industrial/warning/corner, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 - }, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "ML" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 8 + }, +/obj/structure/cable{ + icon_state = "2-8" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "MM" = ( @@ -9264,11 +9983,11 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "MO" = ( -/obj/machinery/atmospherics/pipe/tank/phoron{ +/obj/machinery/atmospherics/pipe/tank/nitrous_oxide{ dir = 8 }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "MR" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 8 @@ -9282,6 +10001,12 @@ /obj/effect/floor_decal/rust, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/toxins) +"MZ" = ( +/obj/structure/cable{ + icon_state = "2-4" + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "Na" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 1 @@ -9308,9 +10033,8 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "Ng" = ( -/obj/effect/floor_decal/industrial/warning/dust/corner, -/obj/machinery/atmospherics/unary/vent_scrubber/on{ - dir = 1 +/obj/structure/sign/painting/public{ + pixel_x = 30 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) @@ -9325,17 +10049,16 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/east) "Ni" = ( -/obj/machinery/atmospherics/trinary/mixer/m_mixer{ - dir = 4; - name = "High Power Gas mixer"; - power_rating = 15000 +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ + dir = 4 }, -/turf/simulated/floor/tiled/white, +/turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "Nk" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/wall, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/genetics) "Nl" = ( /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) @@ -9355,6 +10078,12 @@ /obj/machinery/atmospherics/pipe/simple/hidden, /turf/simulated/shuttle/wall/hard_corner, /area/shuttle/aerostat) +"Np" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) "Nq" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 4 @@ -9363,35 +10092,50 @@ /obj/effect/floor_decal/industrial/warning/dust, /turf/simulated/shuttle/floor/yellow/airless, /area/shuttle/aerostat) +"Ns" = ( +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/flora/ausbushes/brflowers, +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) "Nu" = ( /obj/machinery/atmospherics/pipe/simple/visible/blue{ dir = 5 }, +/obj/machinery/light, /turf/simulated/floor/plating, /area/offmap/aerostat/inside/toxins) "Nw" = ( /obj/machinery/light{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/structure/table/standard, +/obj/random/firstaid, +/obj/item/weapon/storage/firstaid, +/obj/structure/cable{ + icon_state = "1-2" }, -/obj/machinery/medical_kiosk, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) "Ny" = ( -/obj/effect/floor_decal/industrial/warning/dust/corner{ - dir = 1 - }, -/obj/machinery/light, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/machinery/light{ + dir = 8 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) +"NA" = ( +/obj/effect/floor_decal/industrial/warning/cee{ + dir = 8 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/greengrid, +/area/offmap/aerostat/inside/toxins) "NC" = ( /obj/structure/window/reinforced{ dir = 8 @@ -9420,6 +10164,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, +/obj/machinery/portable_atmospherics/powered/scrubber/huge/stationary{ + scrub_id = "science_outpost" + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "NJ" = ( @@ -9427,11 +10174,8 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "NL" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/wall, +/area/offmap/aerostat/inside/arm/ne) "NM" = ( /obj/machinery/atmospherics/pipe/simple/hidden/universal, /obj/structure/cable{ @@ -9444,7 +10188,7 @@ dir = 4 }, /turf/simulated/shuttle/wall/voidcraft/green, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "NO" = ( /obj/structure/cable{ icon_state = "1-2" @@ -9455,6 +10199,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"NP" = ( +/turf/simulated/wall, +/area/offmap/aerostat/inside/misclab) "NQ" = ( /obj/effect/floor_decal/rust, /obj/machinery/atmospherics/pipe/simple/heat_exchanging{ @@ -9463,16 +10210,13 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "NT" = ( -/obj/machinery/atmospherics/portables_connector{ +/obj/structure/closet/excavation, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"NU" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 1 }, -/obj/machinery/camera/network/research_outpost{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) -"NU" = ( -/obj/machinery/atmospherics/pipe/manifold4w/hidden/scrubbers, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "NV" = ( @@ -9501,6 +10245,12 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"NY" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "NZ" = ( /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/xenoarch/chamber) @@ -9508,13 +10258,13 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/door/airlock/glass_research{ - name = "Xenoarchaeology" - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/door/firedoor/glass, +/obj/machinery/door/airlock/maintenance/rnd{ + req_one_access = null + }, /turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/arm/ne) "Ob" = ( /obj/effect/floor_decal/industrial/warning, /obj/structure/cable{ @@ -9528,12 +10278,8 @@ }, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) -"Oe" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) "Og" = ( -/obj/machinery/radiocarbon_spectrometer, +/obj/structure/filingcabinet/chestdrawer, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Oj" = ( @@ -9549,8 +10295,15 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, +/obj/structure/flora/pottedplant/unusual, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) +"Op" = ( +/obj/machinery/atmospherics/pipe/simple/visible/red{ + dir = 5 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Os" = ( /obj/structure/grille, /obj/machinery/door/firedoor/glass, @@ -9583,23 +10336,11 @@ }, /turf/simulated/wall, /area/offmap/aerostat/inside/toxins) -"Ow" = ( -/obj/machinery/vending/wallmed1{ - pixel_x = 30 - }, -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) "Ox" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/green{ - dir = 9 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Oy" = ( @@ -9618,6 +10359,18 @@ /obj/machinery/atmospherics/pipe/simple/hidden/universal, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"OA" = ( +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/portables_connector{ + dir = 1 + }, +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "OD" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -9626,7 +10379,6 @@ dir = 4 }, /obj/structure/table/reinforced, -/obj/machinery/recharger, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "OE" = ( @@ -9634,21 +10386,17 @@ dir = 4 }, /obj/structure/table/standard, -/obj/item/weapon/storage/backpack/parachute{ - pixel_x = -6; - pixel_y = 6 +/obj/item/device/gps{ + pixel_x = -5; + pixel_y = 5 }, -/obj/item/weapon/storage/backpack/parachute{ - pixel_x = 6; - pixel_y = 6 +/obj/item/device/gps{ + pixel_x = -2; + pixel_y = 2 }, -/obj/item/weapon/storage/backpack/parachute{ - pixel_x = -6; - pixel_y = -6 - }, -/obj/item/weapon/storage/backpack/parachute{ - pixel_x = 6; - pixel_y = -6 +/obj/item/device/gps{ + pixel_x = 1; + pixel_y = -1 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) @@ -9666,24 +10414,27 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "OI" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Genetics Closet" - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden, /obj/structure/cable{ icon_state = "1-2" }, /obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/genetics) -"OL" = ( -/obj/effect/floor_decal/industrial/warning/dust{ - dir = 4 +/obj/machinery/door/airlock/glass_research{ + name = "Miscellaneous Lab" }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/misclab) +"OJ" = ( +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"OL" = ( +/obj/structure/bed/chair/comfy/black, +/turf/simulated/floor/glass/reinforced{ + color = "#eacd7c" + }, +/area/offmap/aerostat/glassgetsitsownarea) "OM" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ @@ -9698,10 +10449,29 @@ }, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) +"OO" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/atmos) +"OP" = ( +/obj/machinery/door/firedoor/glass, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/door/airlock/medical{ + name = "Virology Lab"; + req_access = list(39); + req_one_access = null + }, +/obj/machinery/door/blast/regular/open{ + id = 2; + name = "Virology Emergency Quarantine" + }, +/turf/simulated/floor/tiled/steel_ridged, +/area/offmap/aerostat/inside/virology) "OR" = ( /obj/machinery/power/apc{ dir = 8; - name = "east bump"; pixel_x = -22 }, /obj/structure/cable{ @@ -9717,10 +10487,8 @@ /turf/simulated/shuttle/plating/carry, /area/shuttle/aerostat) "OW" = ( -/obj/machinery/firealarm{ - dir = 4; - layer = 3.3; - pixel_x = 26 +/obj/machinery/atmospherics/unary/freezer{ + icon_state = "freezer" }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -9738,24 +10506,42 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "Pa" = ( -/obj/machinery/light{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/floor/grass, +/area/offmap/aerostat/inside/genetics) "Pe" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 6 +/obj/machinery/atmospherics/binary/pump, +/obj/machinery/atmospherics/pipe/simple/hidden/universal{ + dir = 4 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Ph" = ( -/obj/machinery/atmospherics/unary/vent_pump/on{ +/obj/machinery/light{ dir = 8 }, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) +/obj/structure/dispenser, +/obj/machinery/alarm{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) +"Pi" = ( +/obj/structure/closet/walllocker_double/medical/west, +/obj/structure/table/reinforced, +/obj/item/weapon/soap, +/obj/item/weapon/storage/box/gloves, +/obj/item/weapon/storage/box/masks, +/obj/item/weapon/storage/box/beakers, +/obj/item/weapon/storage/box/beakers, +/obj/item/weapon/storage/fancy/vials, +/obj/item/weapon/storage/box/syringes, +/obj/item/device/antibody_scanner, +/obj/item/weapon/storage/box/syringes, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "Pl" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -9763,6 +10549,9 @@ /obj/structure/cable{ icon_state = "2-4" }, +/obj/structure/cable{ + icon_state = "1-2" + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "Po" = ( @@ -9772,18 +10561,22 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "Pq" = ( -/obj/machinery/atmospherics/binary/pump{ - dir = 8 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/black, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 9 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Pr" = ( -/obj/machinery/atmospherics/pipe/simple/visible/blue{ - dir = 6 +/obj/machinery/atmospherics/pipe/simple/hidden/blue, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/structure/filingcabinet/filingcabinet, +/obj/machinery/light{ + dir = 1 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -9820,13 +10613,15 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/door/airlock/glass_research{ - name = "Telescience" +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 5 }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/telesci) +/obj/structure/sign/poster{ + dir = 8; + pixel_x = -32 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) "PJ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 @@ -9840,18 +10635,22 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) +"PK" = ( +/obj/structure/table/reinforced, +/obj/machinery/camera/network/research_outpost{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "PN" = ( /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ dir = 9 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) -"PO" = ( -/turf/simulated/shuttle/wall/voidcraft/hard_corner, -/area/offmap/aerostat/inside/misclab) "PP" = ( -/obj/structure/sign/painting/public{ - pixel_x = 30 +/obj/structure/closet/crate/bin{ + anchored = 1 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -9880,26 +10679,25 @@ /obj/effect/floor_decal/rust, /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/toxins) -"PT" = ( -/obj/effect/floor_decal/industrial/warning{ +"PU" = ( +/obj/structure/closet/secure_closet/xenoarchaeologist, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"PX" = ( +/obj/machinery/atmospherics/portables_connector/aux{ dir = 4 }, -/obj/effect/floor_decal/industrial/warning{ - dir = 8 - }, +/obj/machinery/portable_atmospherics/canister/air, /obj/machinery/camera/network/research_outpost{ - dir = 1 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) -"PU" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/black{ - dir = 8 + dir = 4 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Qa" = ( -/obj/machinery/atmospherics/pipe/manifold4w/hidden/black, +/obj/machinery/atmospherics/binary/pump{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Qb" = ( @@ -9922,9 +10720,11 @@ /turf/simulated/wall, /area/offmap/aerostat/inside/toxins) "Qe" = ( -/obj/machinery/light{ - dir = 1 +/obj/machinery/atmospherics/unary/vent_pump/on, +/obj/machinery/light_switch{ + pixel_y = 24 }, +/obj/structure/flora/pottedplant/crystal, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "Qg" = ( @@ -9932,14 +10732,15 @@ /turf/unsimulated/floor/sky/virgo2_sky, /area/offmap/aerostat) "Qh" = ( -/obj/structure/table/standard, -/obj/item/stack/nanopaste, -/obj/item/weapon/reagent_containers/glass/bucket, -/obj/effect/floor_decal/spline/plain{ - dir = 4 +/obj/machinery/vending/phoronresearch{ + name = "Toximate 2556"; + products = list(/obj/item/device/transfer_valve = 3, /obj/item/device/assembly/timer = 6, /obj/item/device/assembly/signaler = 6, /obj/item/device/assembly/prox_sensor = 6, /obj/item/device/assembly/igniter = 12) }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/camera/network/research_outpost{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Qk" = ( /obj/effect/floor_decal/rust, /obj/effect/floor_decal/industrial/warning/dust{ @@ -9965,12 +10766,14 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/drillstorage) "Qr" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 4 +/obj/machinery/atmospherics/omni/atmos_filter{ + name = "N2O Filter"; + tag_east = 7; + tag_north = 1; + tag_south = 2 }, -/obj/machinery/atmospherics/pipe/simple/hidden/black, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "Qs" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -10019,26 +10822,30 @@ /turf/simulated/floor/tiled/steel_ridged, /area/shuttle/aerostat) "Qz" = ( -/obj/item/weapon/storage/box/monkeycubes, -/obj/item/weapon/storage/pill_bottle/dylovene, -/obj/item/weapon/storage/pill_bottle/dylovene, -/obj/item/weapon/storage/box/disks, -/obj/item/toy/figure/geneticist, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/obj/machinery/atmospherics/portables_connector{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/westhall) "QA" = ( /obj/structure/table/standard, -/obj/structure/reagent_dispensers/acid{ - pixel_x = -32 +/obj/item/weapon/anobattery, +/obj/item/weapon/anobattery{ + pixel_x = 5; + pixel_y = 2 }, -/obj/machinery/reagentgrinder, -/obj/effect/floor_decal/spline/plain{ - dir = 1 +/obj/item/weapon/anobattery{ + pixel_x = -4; + pixel_y = 3 }, -/obj/structure/cable{ - icon_state = "1-2" +/obj/item/weapon/anobattery{ + pixel_x = -5; + pixel_y = -3 }, -/turf/simulated/floor/tiled, +/obj/item/weapon/tool/screwdriver, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "QE" = ( /obj/machinery/atmospherics/pipe/simple/hidden/black{ @@ -10047,14 +10854,9 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "QH" = ( -/obj/effect/floor_decal/spline/plain{ - dir = 5 - }, -/obj/structure/closet/crate/bin{ - anchored = 1 - }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/xenoarch) +/obj/structure/closet/firecloset, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "QI" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 5 @@ -10078,14 +10880,6 @@ }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) -"QN" = ( -/obj/structure/table/standard, -/obj/item/clothing/glasses/welding, -/obj/item/weapon/weldingtool, -/obj/item/device/analyzer, -/obj/item/weapon/tool/wrench, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) "QO" = ( /obj/machinery/atmospherics/pipe/manifold4w/visible/blue, /obj/machinery/meter, @@ -10100,6 +10894,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +/obj/structure/flora/pottedplant/mysterious, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "QT" = ( @@ -10133,8 +10928,11 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/structure/closet/crate/bin{ - anchored = 1 +/obj/machinery/atmospherics/pipe/simple/hidden/green, +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -10179,11 +10977,8 @@ /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/north) "Rb" = ( -/obj/structure/cable{ - icon_state = "1-2" - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/wall, +/area/offmap/aerostat/inside/genetics) "Rd" = ( /obj/effect/floor_decal/industrial/warning{ dir = 1 @@ -10202,14 +10997,13 @@ /area/offmap/aerostat/inside/westhall) "Rf" = ( /turf/simulated/shuttle/wall/voidcraft/hard_corner, -/area/offmap/aerostat/inside/drillstorage) +/area/offmap/aerostat/inside/arm/se) "Ri" = ( /obj/machinery/atmospherics/portables_connector{ dir = 8 }, -/obj/effect/floor_decal/industrial/outline/red, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "Rj" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -10244,6 +11038,7 @@ "Rm" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on, /obj/structure/table/reinforced, +/obj/machinery/recharger, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "Rn" = ( @@ -10344,17 +11139,10 @@ icon_state = "4-8" }, /turf/simulated/wall, -/area/offmap/aerostat/inside/drillstorage) +/area/offmap/aerostat/inside/miscstorage) "RE" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 - }, -/obj/machinery/portable_atmospherics/canister/air, -/obj/machinery/camera/network/research_outpost{ - dir = 8 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/turf/simulated/wall, +/area/offmap/aerostat/inside/arm/se) "RF" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -10378,6 +11166,12 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/airlock/south) +"RI" = ( +/obj/machinery/atmospherics/binary/pump{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "RK" = ( /obj/effect/floor_decal/rust, /obj/machinery/atmospherics/pipe/simple/heat_exchanging{ @@ -10400,6 +11194,9 @@ /area/offmap/aerostat/inside/firingrange) "RM" = ( /obj/machinery/door/firedoor/glass, +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "RN" = ( @@ -10417,19 +11214,21 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/arm/se) "RP" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/machinery/radiocarbon_spectrometer, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "RU" = ( -/obj/machinery/chem_master, -/obj/structure/cable{ - icon_state = "1-2" - }, /obj/structure/sign/poster{ dir = 8; pixel_x = -32 }, -/turf/simulated/floor/tiled, +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) "RV" = ( /obj/machinery/portable_atmospherics/canister/oxygen, @@ -10437,7 +11236,6 @@ /area/shuttle/aerostat) "RW" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, -/obj/structure/table/reinforced, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 }, @@ -10445,19 +11243,15 @@ dir = 8; pixel_x = 24 }, +/obj/structure/table/reinforced, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "Sa" = ( -/obj/machinery/atmospherics/unary/heat_exchanger{ - dir = 1 +/obj/machinery/atmospherics/portables_connector{ + dir = 4 }, -/obj/structure/window/basic{ - dir = 1 - }, -/obj/effect/floor_decal/corner/red/border{ - dir = 1 - }, -/turf/simulated/floor/tiled/steel_ridged, +/obj/machinery/camera/network/research_outpost, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Sb" = ( /obj/structure/cable/heavyduty{ @@ -10487,9 +11281,6 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 4 - }, /obj/structure/cable{ icon_state = "4-8" }, @@ -10500,6 +11291,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 6 }, +/obj/structure/extinguisher_cabinet{ + pixel_x = 30 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Sp" = ( @@ -10512,7 +11306,12 @@ /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/north) "Sr" = ( -/obj/machinery/atmospherics/binary/pump, +/obj/machinery/atmospherics/pipe/manifold/visible{ + dir = 1 + }, +/obj/machinery/light{ + dir = 1 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Sv" = ( @@ -10528,10 +11327,23 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled/white, +/obj/machinery/door/airlock/glass_research{ + name = "Toxins Lab" + }, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) +"SC" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply{ + dir = 4 + }, +/obj/structure/window/reinforced/full, +/obj/structure/grille, +/obj/machinery/door/firedoor/glass, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "SE" = ( -/obj/machinery/atmospherics/binary/pump{ +/obj/machinery/atmospherics/portables_connector{ dir = 8 }, /turf/simulated/floor/tiled/white, @@ -10549,12 +11361,26 @@ /obj/effect/map_helper/airlock/atmos/pump_out_internal, /turf/simulated/floor, /area/offmap/aerostat/inside/arm/sw) +"SH" = ( +/obj/machinery/alarm{ + pixel_y = 26 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) +"SI" = ( +/obj/machinery/computer/scan_consolenew{ + dir = 8 + }, +/obj/item/weapon/paper{ + info = "out of order" + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "SJ" = ( -/obj/structure/table/standard, -/obj/item/weapon/paper_bin, -/obj/item/device/flashlight/lamp, -/obj/machinery/light, -/turf/simulated/floor/tiled, +/turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch) "SL" = ( /obj/structure/cable{ @@ -10563,10 +11389,14 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "SN" = ( -/obj/machinery/atmospherics/unary/vent_scrubber/on, -/obj/machinery/suspension_gen, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/atmospherics/portables_connector{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "SO" = ( /obj/effect/floor_decal/industrial/warning/dust{ dir = 8 @@ -10581,12 +11411,9 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "SP" = ( -/obj/machinery/vending/tool, -/obj/machinery/atmospherics/unary/vent_pump/on{ - dir = 8 - }, +/obj/machinery/medical_kiosk, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) "SQ" = ( /obj/machinery/atmospherics/unary/heat_exchanger{ dir = 4 @@ -10666,25 +11493,16 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) "Td" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Toxins Lab" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor/tiled/steel_ridged, +/obj/machinery/atmospherics/portables_connector, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Te" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, /obj/structure/cable{ icon_state = "4-8" }, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "Tg" = ( @@ -10708,10 +11526,8 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "Tn" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/manifold/hidden/supply, +/obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Tq" = ( @@ -10722,6 +11538,14 @@ /obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"Tt" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/effect/floor_decal/rust, +/obj/effect/decal/cleanable/dirt, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Tv" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -10729,6 +11553,15 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) +"Tx" = ( +/turf/simulated/wall, +/area/offmap/aerostat/inside/miscstorage) +"Tz" = ( +/obj/item/modular_computer/console/preset/research{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/telesci) "TB" = ( /turf/simulated/shuttle/wall/voidcraft/hard_corner, /area/offmap/aerostat/inside/powercontrol) @@ -10745,6 +11578,10 @@ }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) +"TM" = ( +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "TO" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 1; @@ -10811,13 +11648,15 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/north) "TW" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ +/obj/structure/window/reinforced{ dir = 4 }, -/obj/machinery/atmospherics/pipe/simple/hidden/green{ - dir = 4 +/obj/machinery/portable_atmospherics/canister/oxygen, +/obj/machinery/door/window/brigdoor/eastleft{ + dir = 2; + req_access = list(7) }, -/turf/simulated/wall, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "TX" = ( /obj/structure/window/reinforced{ @@ -10841,18 +11680,22 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/toxins) "TZ" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 10 +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 1 }, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) -"Ub" = ( -/obj/machinery/atmospherics/portables_connector{ - dir = 8 +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 1 + }, +/obj/structure/closet/l3closet/virology, +/obj/machinery/light{ + dir = 4 }, -/obj/machinery/portable_atmospherics/canister/air, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/virology) +"Ub" = ( +/obj/machinery/vending/tool, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/miscstorage) "Ue" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -10865,12 +11708,24 @@ /turf/simulated/shuttle/floor/yellow, /area/shuttle/aerostat) "Uf" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 }, -/obj/machinery/light/small, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) +/obj/structure/closet/wardrobe/virology_white, +/obj/machinery/camera/network/research_outpost{ + dir = 8 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) +"Ug" = ( +/obj/effect/floor_decal/rust, +/obj/random/maintenance/research, +/obj/random/maintenance/research, +/obj/random/tool, +/obj/random/tool, +/obj/structure/closet, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Uh" = ( /obj/structure/cable{ icon_state = "4-8" @@ -10878,19 +11733,16 @@ /turf/simulated/wall, /area/offmap/aerostat/inside/telesci) "Ui" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Miscellaneous Lab" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/door/firedoor/glass, /obj/structure/cable{ - icon_state = "4-8" + icon_state = "1-2" }, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/misclab) +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/turf/simulated/floor/tiled/dark, +/area/offmap/aerostat/inside/lobby) "Uj" = ( -/obj/machinery/artifact_scanpad, -/turf/simulated/floor/tiled/white, +/turf/simulated/floor, /area/offmap/aerostat/inside/xenoarch) "Ul" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, @@ -10907,6 +11759,9 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) +"Uo" = ( +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "Up" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -10930,10 +11785,11 @@ /turf/simulated/floor, /area/offmap/aerostat/inside/arm/se) "Us" = ( -/obj/machinery/atmospherics/portables_connector, -/obj/machinery/portable_atmospherics/canister/air, +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 6 + }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/area/offmap/aerostat/inside/atmos) "Ut" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 9 @@ -10973,28 +11829,15 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/xenoarch/chamber) "UA" = ( -/obj/machinery/washing_machine, /obj/machinery/alarm{ pixel_y = 26 }, /obj/machinery/camera/network/research_outpost{ dir = 4 }, +/obj/machinery/medical_kiosk, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) -"UB" = ( -/obj/effect/floor_decal/industrial/warning{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/warning, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) "UC" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ dir = 4 @@ -11021,14 +11864,21 @@ /obj/structure/cable/heavyduty{ icon_state = "1-2" }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/atmospherics/pipe/simple/hidden, +/obj/machinery/light{ + dir = 8 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "UH" = ( -/obj/structure/closet/excavation, +/obj/machinery/power/apc{ + dir = 1; + pixel_y = 24 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/toxins) "UL" = ( /obj/structure/cable{ icon_state = "2-4" @@ -11038,15 +11888,22 @@ }, /turf/simulated/floor/bluegrid, /area/offmap/aerostat/inside/powercontrol) +"UM" = ( +/obj/structure/bed/chair/office/light, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "UO" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 4 +/turf/simulated/floor/reinforced, +/area/offmap/aerostat/inside/telesci) +"UP" = ( +/obj/machinery/light{ + dir = 1 }, -/obj/structure/sign/painting/public{ - pixel_y = 30 +/obj/structure/closet/crate/bin{ + anchored = 1 }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/firingrange) "US" = ( /obj/machinery/door/airlock/glass_research{ name = "Atmospherics"; @@ -11060,35 +11917,31 @@ /turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/atmos) "UV" = ( -/obj/effect/floor_decal/industrial/warning/corner, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 - }, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/wall, +/area/offmap/aerostat/inside/arm/ne) "UW" = ( -/turf/simulated/shuttle/wall/voidcraft/green, -/area/offmap/aerostat/inside/genetics) -"UZ" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ - dir = 6 + dir = 4 }, +/turf/simulated/wall, +/area/offmap/aerostat/inside/telesci) +"UZ" = ( /obj/structure/cable{ icon_state = "2-4" }, -/obj/machinery/portable_atmospherics/canister/empty, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 6 + }, +/obj/machinery/light{ + dir = 8 + }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/northchamb) "Va" = ( @@ -11102,15 +11955,18 @@ pixel_y = 26 }, /obj/machinery/atmospherics/unary/vent_pump/on, +/obj/structure/table/standard, +/obj/machinery/computer/atmoscontrol/laptop{ + monitored_alarm_ids = list("anomaly_testing"); + req_one_access = list(47,24,11) + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Vd" = ( -/obj/machinery/door/firedoor/glass, -/obj/structure/window/reinforced/full, -/obj/structure/grille, -/obj/machinery/atmospherics/pipe/simple/hidden/green, -/obj/machinery/door/firedoor/glass, -/turf/simulated/floor, +/obj/machinery/atmospherics/pipe/simple/hidden/green{ + dir = 6 + }, +/turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Ve" = ( /obj/machinery/atmospherics/portables_connector{ @@ -11125,29 +11981,31 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Vi" = ( -/obj/structure/table/standard, -/obj/item/device/assembly_holder/timer_igniter, -/obj/item/weapon/tool/screwdriver, -/obj/structure/sign/painting/public{ - pixel_x = -30 +/obj/structure/window/reinforced{ + dir = 4 }, -/obj/item/weapon/folder/white, -/obj/item/weapon/pen/fountain, +/obj/machinery/portable_atmospherics/canister/empty, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) -"Vk" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 - }, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/dark, -/area/offmap/aerostat/inside/xenoarch) "Vl" = ( /obj/machinery/atmospherics/binary/algae_farm/filled{ dir = 1 }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) +"Vo" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/floor/tiled/dark, +/area/offmap/aerostat/inside/lobby) +"Vr" = ( +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/techfloor, +/area/offmap/aerostat/inside/southchamb) "Vs" = ( /obj/effect/floor_decal/rust, /obj/structure/cable/yellow{ @@ -11159,13 +12017,16 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "Vt" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/suspension_gen, /obj/machinery/camera/network/research_outpost{ dir = 4 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/atmospherics/portables_connector{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/air, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Vu" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/manifold/hidden/supply{ @@ -11174,11 +12035,11 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "Vx" = ( -/obj/machinery/atmospherics/pipe/manifold/visible{ - dir = 1 +/obj/effect/floor_decal/industrial/warning{ + dir = 8 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "Vz" = ( /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) @@ -11216,6 +12077,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, +/obj/structure/flora/pottedplant/crystal, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "VJ" = ( @@ -11231,6 +12093,12 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"VL" = ( +/obj/machinery/atmospherics/pipe/simple/visible{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "VM" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 10 @@ -11282,16 +12150,22 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/arm/ne) "VU" = ( -/obj/machinery/light{ - dir = 1 +/obj/effect/floor_decal/rust, +/obj/effect/floor_decal/industrial/warning{ + dir = 8 }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/turf/simulated/floor, +/area/offmap/aerostat/inside/xenoarch) "VX" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/structure/cable{ icon_state = "1-8" }, +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 8 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "VY" = ( @@ -11301,16 +12175,11 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "Wb" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/machinery/light{ - dir = 8 +/obj/machinery/camera/network/research_outpost{ + dir = 4 }, -/obj/structure/cable{ - icon_state = "1-2" - }, -/obj/machinery/portable_atmospherics/canister/empty, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "Wd" = ( /turf/simulated/shuttle/wall/voidcraft/hard_corner{ stripe_color = "#00FF00" @@ -11336,20 +12205,30 @@ /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Wh" = ( -/obj/machinery/camera/network/research_outpost{ - dir = 8 +/obj/machinery/power/apc{ + dir = 4; + pixel_x = 28 + }, +/obj/structure/cable{ + icon_state = "0-8" }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) "Wi" = ( /obj/structure/table/reinforced, /obj/machinery/recharger, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) +"Wj" = ( +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "Wk" = ( -/obj/machinery/portable_atmospherics/canister/empty, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Wn" = ( /obj/structure/cable{ icon_state = "4-8" @@ -11373,6 +12252,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +/obj/structure/flora/pottedplant/subterranean, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/southchamb) "Wt" = ( @@ -11409,9 +12289,6 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "Wz" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 1 }, @@ -11421,6 +12298,10 @@ /obj/structure/cable{ icon_state = "2-8" }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/supply, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "WC" = ( @@ -11436,8 +12317,22 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/structure/table/rack, +/obj/item/clothing/suit/space/anomaly/heat, +/obj/item/clothing/head/helmet/space/anomaly/heat, +/obj/item/device/suit_cooling_unit, +/obj/item/weapon/storage/excavation, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/pickaxe, +/obj/item/device/measuring_tape, +/obj/item/weapon/storage/belt/archaeology, +/obj/item/stack/flag/yellow, +/obj/item/clothing/mask/breath, +/obj/machinery/alarm{ + pixel_y = 26 + }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "WF" = ( /obj/machinery/atmospherics/pipe/simple/hidden/cyan{ dir = 4 @@ -11446,11 +12341,11 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/atmos) "WH" = ( -/obj/structure/table/steel_reinforced, /obj/random/maintenance/research, /obj/structure/sign/painting/public{ pixel_x = 30 }, +/obj/structure/table/borosilicate, /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "WJ" = ( @@ -11470,20 +12365,27 @@ }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/telesci) +/area/offmap/aerostat/inside/miscstorage) +"WP" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/blue, +/obj/machinery/medical_kiosk, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "WQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/blue{ dir = 4 }, -/obj/machinery/power/apc{ - dir = 1; - pixel_y = 24 - }, -/obj/structure/cable{ - icon_state = "0-4" +/obj/structure/cable/heavyduty{ + icon_state = "4-8" }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) +"WR" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/book/manual/virology, +/obj/item/device/antibody_scanner, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "WS" = ( /obj/effect/shuttle_landmark{ base_area = /area/offmap/aerostat; @@ -11521,10 +12423,12 @@ /obj/structure/cable{ icon_state = "1-2" }, -/obj/structure/table/standard, -/obj/item/weapon/tool/screwdriver, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) +"WY" = ( +/obj/machinery/atmospherics/pipe/simple/visible/red, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "WZ" = ( /obj/effect/floor_decal/industrial/warning/dust/corner{ dir = 4 @@ -11532,11 +12436,18 @@ /turf/simulated/floor/tiled/dark, /area/offmap/aerostat/inside/lobby) "Xa" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 +/obj/machinery/atmospherics/pipe/simple/hidden{ + dir = 9 }, -/turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/obj/effect/floor_decal/rust, +/obj/machinery/light{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-2" + }, +/turf/simulated/floor, +/area/offmap/aerostat/inside/westhall) "Xb" = ( /obj/effect/floor_decal/rust, /obj/structure/cable/yellow{ @@ -11558,9 +12469,19 @@ /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/structure/flora/pottedplant/subterranean, -/turf/simulated/floor/tiled/white, +/turf/simulated/wall, /area/offmap/aerostat/inside/xenoarch) +"Xm" = ( +/obj/machinery/power/apc{ + dir = 8; + pixel_x = -22 + }, +/obj/structure/cable{ + icon_state = "0-2" + }, +/obj/effect/floor_decal/rust, +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "Xo" = ( /obj/effect/floor_decal/industrial/danger{ dir = 1 @@ -11579,14 +12500,17 @@ /turf/simulated/shuttle/floor/yellow, /area/shuttle/aerostat) "Xr" = ( -/obj/structure/window/reinforced, -/obj/machinery/portable_atmospherics/canister/phoron, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 6 + }, +/obj/machinery/light{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Xt" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden, /obj/structure/cable{ icon_state = "1-2" }, @@ -11606,10 +12530,12 @@ /obj/machinery/light{ dir = 1 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 }, -/obj/item/modular_computer/console/preset/research, +/obj/structure/table/standard, +/obj/item/device/multitool, +/obj/item/weapon/tool/screwdriver, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) "XA" = ( @@ -11629,13 +12555,9 @@ /obj/machinery/atmospherics/pipe/manifold/hidden/scrubbers{ dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden{ - dir = 5 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/floor, +/area/offmap/aerostat/inside/arm/ne) "XH" = ( -/obj/structure/table/reinforced, /obj/machinery/recharger/wallcharger{ pixel_x = 4; pixel_y = 20 @@ -11648,12 +12570,13 @@ pixel_x = 4; pixel_y = 36 }, +/obj/item/modular_computer/console, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/firingrange) "XJ" = ( /obj/machinery/atmospherics/pipe/manifold/hidden/supply, /turf/simulated/wall, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/genetics) "XK" = ( /obj/structure/grille, /obj/structure/window/reinforced/full, @@ -11667,29 +12590,32 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/inside/arm/ne) "XL" = ( -/obj/machinery/door/airlock/glass_research{ - name = "Xenoarchaeology" - }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 4 - }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/xenoarch) +/turf/simulated/wall, +/area/offmap/aerostat/inside/virology) "XM" = ( /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/airlock/south) +"XN" = ( +/obj/structure/closet/crate/bin{ + anchored = 1 + }, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 10 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "XO" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 }, -/obj/structure/closet/crate/bin{ - anchored = 1 +/obj/structure/sign/painting/public{ + pixel_y = 30 }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/telesci) @@ -11703,7 +12629,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden, /obj/machinery/door/firedoor/glass, /turf/simulated/floor/tiled/steel_ridged, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/arm/ne) "XQ" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/machinery/meter, @@ -11722,11 +12648,20 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) "XV" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 6 +/obj/structure/bed/chair/comfy/black{ + dir = 1 }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/floor/glass/reinforced{ + color = "#eacd7c" + }, +/area/offmap/aerostat/glassgetsitsownarea) +"XW" = ( +/obj/machinery/light/floortube{ + dir = 8; + pixel_x = -6 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "XX" = ( /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 @@ -11755,20 +12690,21 @@ /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/drillstorage) "Yg" = ( -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 8 - }, -/obj/effect/floor_decal/industrial/warning/corner{ - dir = 1 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 10 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ dir = 10 }, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/disease2/incubator, +/obj/structure/reagent_dispensers/virusfood{ + pixel_y = 28 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "Yh" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -11799,12 +12735,16 @@ }, /obj/machinery/power/apc{ dir = 8; - name = "east bump"; pixel_x = -22 }, /obj/effect/floor_decal/rust, /turf/simulated/floor, /area/offmap/aerostat/inside/arm/ne) +"Yj" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/black, +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Yl" = ( /obj/machinery/atmospherics/pipe/simple/hidden, /obj/machinery/light/floortube{ @@ -11836,9 +12776,6 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "Yp" = ( -/obj/machinery/atmospherics/pipe/simple/visible/red{ - dir = 10 - }, /obj/machinery/light{ dir = 1 }, @@ -11861,7 +12798,11 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "Yt" = ( -/obj/machinery/atmospherics/pipe/simple/visible/red, +/obj/machinery/atmospherics/portables_connector, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 4 + }, +/obj/machinery/camera/network/research_outpost, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Yu" = ( @@ -11875,52 +12816,79 @@ /turf/simulated/floor/plating/virgo2, /area/offmap/aerostat/solars) "Yv" = ( -/obj/structure/closet/crate/bin{ - anchored = 1 - }, +/obj/machinery/autolathe, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/misclab) +/area/offmap/aerostat/inside/miscstorage) "Yw" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden{ - dir = 8 - }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "Yx" = ( /obj/machinery/atmospherics/pipe/manifold/hidden, /turf/simulated/shuttle/wall/voidcraft/green, /area/offmap/aerostat/inside/airlock/west) "YB" = ( /obj/machinery/atmospherics/pipe/simple/hidden/black{ - dir = 9 + dir = 4 + }, +/obj/machinery/atmospherics/binary/pump/on{ + name = "phoron pump" }, /turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) -"YE" = ( -/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ - dir = 1 - }, -/turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) -"YJ" = ( -/obj/machinery/portable_atmospherics/powered/scrubber/huge/stationary{ - scrub_id = "science_outpost" +/area/offmap/aerostat/inside/atmos) +"YC" = ( +/obj/structure/table/standard, +/obj/item/weapon/paper_bin{ + pixel_x = 4; + pixel_y = 6 }, +/obj/item/weapon/folder/white, +/obj/item/weapon/pen, /obj/machinery/light{ dir = 4 }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) -"YN" = ( -/obj/effect/floor_decal/industrial/warning{ +/area/offmap/aerostat/inside/xenoarch) +"YE" = ( +/obj/machinery/atmospherics/pipe/manifold/hidden/supply{ + dir = 1 + }, +/obj/structure/reagent_dispensers/coolanttank, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/xenoarch) +"YH" = ( +/obj/structure/table/reinforced, +/obj/machinery/computer/med_data/laptop{ + dir = 1 + }, +/obj/machinery/camera/network/research_outpost{ + dir = 1 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) +"YJ" = ( +/obj/machinery/atmospherics/binary/pump{ dir = 8 }, -/obj/machinery/atmospherics/pipe/simple/hidden/supply{ - dir = 5 +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) +"YL" = ( +/obj/structure/bed/chair/bay, +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ + dir = 4 }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) +"YN" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor, -/area/offmap/aerostat/inside/xenoarch) +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/machinery/disease2/isolator, +/obj/machinery/firealarm{ + dir = 4; + layer = 3.3; + pixel_x = 26 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "YS" = ( /obj/machinery/door/blast/regular{ dir = 2; @@ -11946,12 +12914,17 @@ /turf/simulated/shuttle/wall/voidcraft/green/virgo2, /area/offmap/aerostat/inside/arm/se) "YX" = ( -/obj/structure/reagent_dispensers/coolanttank, -/obj/machinery/camera/network/research_outpost{ - dir = 1 +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/portables_connector{ + dir = 8 }, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/xenoarch) +/area/offmap/aerostat/inside/toxins) "Zb" = ( /obj/structure/cable/heavyduty{ icon_state = "4-8" @@ -11962,11 +12935,10 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) "Zc" = ( -/obj/machinery/light/floortube{ - dir = 4; - pixel_x = 5 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/closet/crate/bin{ + anchored = 1 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/xenoarch) "Ze" = ( @@ -11976,36 +12948,59 @@ /obj/machinery/atmospherics/pipe/simple/hidden{ dir = 4 }, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/turf/simulated/wall, +/area/offmap/aerostat/inside/atmos) "Zg" = ( /obj/machinery/camera/network/research_outpost, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"Zh" = ( +/obj/machinery/hologram/holopad, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "Zi" = ( -/obj/machinery/atmospherics/binary/pump{ - dir = 8 - }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/machinery/atmospherics/pipe/manifold/visible/red{ + dir = 1 + }, +/obj/machinery/meter, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Zj" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply, -/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/turf/simulated/floor/tiled/white, +/obj/structure/window/basic{ + dir = 1 + }, +/obj/structure/window/basic{ + dir = 8 + }, +/obj/machinery/atmospherics/unary/heat_exchanger{ + dir = 1 + }, +/obj/effect/floor_decal/corner/red/border{ + dir = 8 + }, +/obj/effect/floor_decal/corner/red/border{ + dir = 1 + }, +/turf/simulated/floor/tiled/steel_ridged, /area/offmap/aerostat/inside/toxins) "Zn" = ( /obj/machinery/atmospherics/portables_connector{ dir = 8 }, /obj/effect/floor_decal/industrial/warning/cee, +/obj/machinery/atmospherics/pipe/simple/hidden/black{ + dir = 5 + }, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Zo" = ( -/obj/machinery/atmospherics/pipe/simple/hidden/green{ - dir = 6 +/obj/structure/cable{ + icon_state = "4-8" }, +/obj/machinery/meter, +/obj/machinery/atmospherics/pipe/manifold4w/hidden/black, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) "Zp" = ( @@ -12022,11 +13017,22 @@ /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/zorrenoffice) "Zu" = ( -/obj/machinery/atmospherics/unary/freezer{ - icon_state = "freezer" +/obj/machinery/light{ + dir = 4 }, +/obj/structure/table/rack, +/obj/item/clothing/suit/space/anomaly/heat, +/obj/item/clothing/head/helmet/space/anomaly/heat, +/obj/item/device/suit_cooling_unit, +/obj/item/weapon/storage/excavation, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/pickaxe, +/obj/item/device/measuring_tape, +/obj/item/weapon/storage/belt/archaeology, +/obj/item/stack/flag/yellow, +/obj/item/clothing/mask/breath, /turf/simulated/floor/tiled/white, -/area/offmap/aerostat/inside/toxins) +/area/offmap/aerostat/inside/xenoarch) "Zv" = ( /obj/machinery/embedded_controller/radio/airlock/docking_port{ cycle_to_external_air = 1; @@ -12041,12 +13047,8 @@ /area/offmap/aerostat/inside/toxins) "Zw" = ( /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, -/obj/structure/closet/wardrobe/genetics_white, -/obj/machinery/camera/network/research_outpost{ - dir = 8 - }, /turf/simulated/floor/tiled, -/area/offmap/aerostat/inside/genetics) +/area/offmap/aerostat/inside/misclab) "Zx" = ( /obj/effect/floor_decal/industrial/warning/dust, /obj/machinery/door/airlock/external{ @@ -12071,6 +13073,18 @@ "ZA" = ( /turf/simulated/floor/tiled, /area/offmap/aerostat/inside/xenoarch) +"ZD" = ( +/obj/structure/sink{ + dir = 8; + pixel_x = -12; + pixel_y = -4 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) +"ZE" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/blue, +/turf/simulated/wall, +/area/offmap/aerostat/inside/toxins) "ZG" = ( /obj/machinery/atmospherics/unary/vent_pump/high_volume{ dir = 8 @@ -12085,6 +13099,10 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/westhall) +"ZI" = ( +/obj/machinery/dna_scannernew, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/genetics) "ZJ" = ( /obj/structure/cable{ icon_state = "4-8" @@ -12139,13 +13157,35 @@ }, /turf/simulated/floor/tiled/techfloor, /area/offmap/aerostat/inside/easthall) +"ZP" = ( +/obj/machinery/atmospherics/unary/vent_scrubber/on{ + dir = 8 + }, +/obj/structure/closet/secure_closet/personal/patient, +/obj/machinery/alarm{ + pixel_y = 26 + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/virology) "ZR" = ( -/obj/machinery/portable_atmospherics/canister/nitrous_oxide, -/obj/structure/window/reinforced, -/turf/simulated/floor/tiled/techfloor, -/area/offmap/aerostat/inside/northchamb) +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/binary/pump{ + dir = 4 + }, +/obj/structure/cable{ + icon_state = "1-8" + }, +/turf/simulated/floor/tiled/white, +/area/offmap/aerostat/inside/toxins) "ZS" = ( -/obj/machinery/atmospherics/pipe/manifold/visible, +/obj/structure/cable{ + icon_state = "4-8" + }, +/obj/machinery/atmospherics/pipe/manifold/hidden/black{ + dir = 1 + }, /obj/machinery/meter, /turf/simulated/floor/tiled/white, /area/offmap/aerostat/inside/toxins) @@ -17641,7 +18681,7 @@ XX Rl aE EN -UW +EN aw aw aw @@ -17782,7 +18822,7 @@ he Yx cI KW -EN +Jo gf Bz aw @@ -17924,8 +18964,8 @@ he FJ lL jL -EN -Bt +Jo +Qz Bz Bz aw @@ -18068,7 +19108,7 @@ Wt qN Jo if -Go +Qz Bz Bz aw @@ -18207,13 +19247,13 @@ PS PS Rr Re -qN -Jo +HS +Ls Lq Xa -Go +ni Bz -UW +Jo aw aw aw @@ -18349,13 +19389,13 @@ oW PS Rr Lt -qN +KA +Jo +ZK +ZK +ZK +ZK Jo -Bu -if -Go -Go -UW Bz aw aw @@ -18493,13 +19533,13 @@ Rr NV Hq Jo -Kv -Kr -Go -Go -Go -Bz -Bz +NP +Yw +wA +Yw +Yw +EA +EA aw aw aw @@ -18635,14 +19675,14 @@ Qd Zg HH FU -Kv +NP yG -Go -Qz -Go -Go -UW -UW +Yw +Yw +Yw +Yw +zH +zH aw aw aw @@ -18777,15 +19817,15 @@ Qd Tr Sl Lt -Kv +NP tU -Go -Go -Go -Go -Go -Bz -Bz +Yw +Yw +Yw +Yw +Yw +EA +EA aw aw aw @@ -18925,10 +19965,10 @@ Ey kR fo Ml -Go -Go -Bz -Bz +Yw +Yw +EA +EA aw aw aw @@ -19061,17 +20101,17 @@ TY ZK nR Lt -Kv -jS +NP +Yw Yw ey -Bh +jw ef -Go -Go -Go -Bz -Bz +Yw +Yw +Yw +EA +EA aw aw aw @@ -19203,18 +20243,18 @@ xM ZK pP yN -Kv -tA -LN +NP +Yw +Yw jj Zw oZ -Oe +Zw qS -Oe -hM -UW -UW +Yw +Yw +zH +zH aw aw aw @@ -19345,19 +20385,19 @@ pX ZK wF Lt -Kv -Kv -Kv -Kv -Kv -Kv -Kv -Kv -Kv -Kv -Kv -gf -UW +NP +Yw +Yw +Yw +Yw +ef +Yw +Yw +Yw +Yw +Yw +FY +zH aw aw aw @@ -19471,7 +20511,7 @@ ac Rr Rr ce -Eu +PX Eu Dh Jp @@ -19487,20 +20527,20 @@ CQ Qd lz Lt -iX -pu -Nl -Nl +NP +Yw +Kz +Yw yX kq -Nl -Nl -Ke -Ke -yX -sz -rq -rq +Yw +Yw +Yw +Kz +Yw +Yw +zH +zH aw aw aw @@ -19618,11 +20658,11 @@ Lj Dh hu Pe -xu -qC -qC -qC -hu +ph +RI +WY +Op +lr Qd ux yO @@ -19630,18 +20670,18 @@ Qd wF Lt iX -fR -Nl -Nl -Nl -Nl -Nl -Nl -Ls -Ls -Nl -jN -Nl +iX +iX +iX +iX +iX +iX +iX +iX +iX +iX +iX +iX oA rq rq @@ -19754,15 +20794,15 @@ ac mN ce Qd +qC +WQ Qd -jM -un Dh Yp CE Qa GX -Yt +Yb Mv yI Qd @@ -19772,20 +20812,20 @@ Qd il co vP -Dl HJ HJ HJ -HJ -HJ -qe -mY -bm UG -jw -bO -bO -bO +Hs +HJ +HJ +HJ +HJ +UG +HJ +HJ +qv +vu vT nN nN @@ -19893,18 +20933,18 @@ aw aw aw Rr -QN +Vi Vi bG -Qd -tP +qC +WQ un Dh mu MH Zi Zj -Zj +dz Ay kO Qd @@ -19915,19 +20955,19 @@ Ek ZH iX Qe -Nl -Nl -Nl -Nl -Nl +MA +MA +MA +MA +MA tJ Nl Nl Nl Nl Nl -Nl -Nl +AR +AR oA uS cU @@ -20038,8 +21078,8 @@ Rr mL ig oK -Qd -IA +qC +WQ un Dh FF @@ -20056,14 +21096,14 @@ Qd Ek ZH iX -Nl +UP Nl Nl Nl Nl Nl fJ -vM +mm Dq ZL TX @@ -20177,23 +21217,23 @@ aw Rr Rr qU -MM -qC +qU +qU io -vR -jM -un +qC +WQ +Eb Dh Gt TF HV -Sa -aF -bR -Br Qd -Zu -DI +Qd +bR +Gt +Qd +Mu +po Qd PR ZH @@ -20317,30 +21357,30 @@ aw aw de ce -hG -xC zu -qC +zu +zu +zu mD Vd Hb nV bW -YJ +Qd Sw -xK Qd Qd -fh -YJ Qd -Jr +Qd +Qd +Qd +qC HU kf ck Md iX -HS +at Nl Nl at @@ -20459,23 +21499,23 @@ aw de de Qd -Qd -Qd -Bc +Ha +Gu +Gu Gu TW -Qd +lT WQ -LR -Qd +MM Qd +Ph JV +NA +vY Qd -Qd -Qd -Qd -Qd -Qd +FK +Gn +oi MM Sv Wn @@ -20483,11 +21523,11 @@ VJ ZV iX DG -Nl +Mf Nl Wi Nl -Nl +Mf FT NJ lI @@ -20599,24 +21639,24 @@ aw aw de wC -xP +aF Qd ol -qC -hB -Yb +ol +ol +ol xO JM gL ud +KD jy -GR xy jy DH +KD +jy jy -DH -GR jy TP DL @@ -20740,26 +21780,26 @@ Qg aw de wC -Xr +uN Hy tv NU Yb -wG -Zo +Yb +Yb Ox -Qd +mi ji ib -ib -ib +LR +Pr nh aI -aI -aI -aI +ou +ZE +WP wr -qC +Zh qC CC Wn @@ -20772,7 +21812,7 @@ Nl Nl Nl Nl -yK +eA NJ lI Ld @@ -20881,8 +21921,8 @@ aw Qg de wC -Gf -Xr +xP +xP mt Qd NH @@ -20890,26 +21930,26 @@ Oz CM hU QV -Qd +oc nb -qC FK -qC +Qd +Qh zb Ca -qC -qC +rz +Qd PP jM hs -qC -QV +uF +zD Wn XT ZH iX Rm -bx +ye ye Ew mA @@ -20928,7 +21968,7 @@ ID ID iX PJ -tR +eW KK KK aw @@ -21022,9 +22062,9 @@ aw aw de wC -ZR -Gf -Xr +Ny +xP +xP ch Qd Qd @@ -21033,18 +22073,18 @@ Qd Ov SU GK +wG OM -OM -nK -OM +GK +GK zV +rU OM -Td OM OM JD -nK -OM +GK +rU kG Ry Yh @@ -21070,8 +22110,8 @@ iX iX iX Nm -eW -eW +bF +CN KK KK Qg @@ -21163,10 +22203,10 @@ aw aw de wC -ju -ZR -Gf -Xr +xP +xP +xP +xP mt Ce cB @@ -21175,14 +22215,14 @@ cB cB GF gD -qC +xg Ly -oc -qC +Qd +FK mc +Gn +xu qC -qC -oc kt QO JT @@ -21213,7 +22253,7 @@ VI ie JS eW -eW +fP wz KK KK @@ -21304,11 +22344,11 @@ aw aw de de -mi -ju -ZR -Gf -Xr +xP +xP +xP +xP +xP lX Ce bK @@ -21316,11 +22356,11 @@ CO Cl PN GF -qC -qC -qC -qC -qC +qf +xs +Gf +Qd +QH mc qC qC @@ -21444,13 +22484,13 @@ iW la la la -BA -KD -sm -Ar -lk -vm -qf +de +ld +vt +vt +vt +uh +ge Pl As bw @@ -21458,14 +22498,14 @@ AL WF XQ bC -qC -qC -zJ -zJ -qC +Ly +xK +Ly +Qd +Sa Ih -xU -xU +qC +rf xU xU Wf @@ -21583,31 +22623,31 @@ aw aw aw kk -Wk +qJ UZ -Wb +vt sN -vt -vt -vt -vt -vt -vt +pH +OL +HK +XV +Cd +Cm wi Ce Ti bP no cC -GF +eR VU -qC +zr Vx -HL +Qd Sr nB lW -qC +Yj qC qC qC @@ -21625,7 +22665,7 @@ Ym Ym Ym Ym -Ym +wl Ym Ym Ym @@ -21640,9 +22680,9 @@ ie QX eW eW -eW -eW -eW +eJ +eJ +eJ eW Bq Eh @@ -21725,14 +22765,14 @@ aw aw aw kk -Wk +ry Te xP xP xP -xP -xP -xP +OL +HK +XV xP xP oJ @@ -21741,18 +22781,18 @@ qi Vl bA QE -GF -qC -qC -JI +fh +rg +Uj JI +Qd +SE +YX qC -og +AC +XW qC qC -qC -qC -Pr BG Az aJ @@ -21782,9 +22822,9 @@ ie QX eW eW -VG -VG -VG +HK +HK +HK eW BP it @@ -21869,13 +22909,13 @@ cO de qj cX -Ng -OL -OL -OL -OL -OL +xP +xP +xP OL +HK +XV +xP hp yu Ce @@ -21883,19 +22923,19 @@ uu Vl cA QE -GF -qC -qC -qC -qC +fi +rH +Uj +GR +Qd qC og qC -zJ +AC +fC qC qC Fi -lT GB aK aQ @@ -21924,9 +22964,9 @@ HN QX eW eW -eW +fP pY -eW +fP eW wQ eW @@ -22011,33 +23051,33 @@ rM um ge bN -bj -VG -VG -VG -VG -VG -VG -VG +xP +xP +xP +xP +xP +xP +xP +xP wg Ce ke Vl yU TR -GF -mu -qC -Bk -nf -Sr -nB -qC +ii +jF +Ae +jF +Qd +Td +Zo +lW Fw nf lh +BT AC -qC DK Mj bZ @@ -22066,9 +23106,9 @@ pA QX eW eW -eW -eW -eW +VG +VG +VG eW Cj tE @@ -22154,13 +23194,13 @@ gv oe gk bj -VG -VG -VG -VG -VG -VG -VG +uV +wb +xP +Ng +ci +xP +lS bq Ce fH @@ -22169,17 +23209,17 @@ Da SW Cc Bk -nf -xU -Ni -qC +Jq +HL +Qd +Td jH OX Hd xf +OA OX -eR -OX +Hd fK UL cP @@ -22205,13 +23245,13 @@ SL Ya Ya pq -uh -pH -er -er -er -er -er +QX +eW +eW +VG +VG +VG +MZ NE er er @@ -22292,35 +23332,35 @@ cn cn fW gN -de -qj +dY +Ce Ze -wb +Ce In -dY -dY +km +km lH +Ce ua -ua -sc -Ny +Ce +rw Ce qh Vl cA QE ez -qC -Fi -Bk -ZS -qC -og -qC -Fi -Fi +sm +Jq +PU +Qd +UH +ZR qC AC +Fi +Fi +qC jT GB aO @@ -22346,16 +23386,16 @@ KI Zs Ya KI -HN -eW -QX -eW -eW +xH +iQ +sy +er +FA gP -eW -eW +FA +Vr OG -eW +tR KK DC Jd @@ -22434,35 +23474,35 @@ aw aw aw aw -kk +hn Us hk BW KP -xP -xP +pZ +DM Fh qZ -qZ -qZ +OO +OO pr fV gX Vl cA QE -ez -hG -vW +ju +vm +Jq PU py +Wk +ZS +xU +ph +ph +ws xU -nB -rg -AC -AC -qC -AC Kj GB aP @@ -22492,9 +23532,9 @@ ie eW QX eW -VG -VG -VG +HK +HK +HK eW OG pm @@ -22576,35 +23616,35 @@ aw aw aw aw -kk -Us +hn +sc gG -Aa +BW Ii -DM -qJ -Ha -hn -hn -eM +pZ +pZ +pZ +pZ +pZ +pZ cF so ca Vl zF QE -ez -VU -AC -rx +lk +vz +Jq +PU Ju -xU +Xr Pq -xU -Qa -Ju -xU -Wf +qC +Em +cG +qC +qC At GB GB @@ -22619,7 +23659,7 @@ xl Ym Ym Ym -Ym +wl Ym Ym Ym @@ -22634,12 +23674,12 @@ ie eW QX eW -eW -eW -eW +fP +fP +fP eW OG -eW +EP HQ Qg aw @@ -22736,15 +23776,15 @@ pZ PA fD tL -qC -AC -qC -qC -Bk +Jq +Jq +HO +Ju +Yt KS iV -rx -xu +kS +AC qC qC EV @@ -22758,8 +23798,8 @@ eE Ym BF JX -Ff -Ff +Ui +sK sK Fs AN @@ -22864,13 +23904,13 @@ aw aw aw aw -de -de +dY +dY re -eO +bL IN -uV -eM +Ak +pZ uq rw bL @@ -22879,19 +23919,19 @@ nx cE KZ WD -SE -qC -qC -qC +Jq +NT +Ju +YJ mc -ld qC +VL AC qC gs yq -oV -oV +mJ +fR Rr Hl fI @@ -22900,10 +23940,10 @@ ky Ym xl Ym -Ym -Ym xe Ym +Ym +Ym xl Ym Ym @@ -23007,13 +24047,13 @@ aw aw aw aw -de -de +dY +dY MO -XV +bL YB -ff -ff +Ak +QE rw Du yv @@ -23021,19 +24061,19 @@ Du Du bV Zu -ii +Jq NT -hJ +Ju OW -mc +Bv lK tu Mg Oz So Tg -oV -oV +jN +AY Rr ak RF @@ -23047,7 +24087,7 @@ IF JQ kC ql -pf +Vo qP ug CT @@ -23150,22 +24190,22 @@ aw aw aw aw -de -de +dY +dY el -XV -YB -HK +QE +QE +QE mU km km km km gR -fQ -fQ -fQ -fQ +vR +Ar +vR +Ni fQ AB Qb @@ -23184,24 +24224,24 @@ VA UC GP vK +UW +vK +vK vK vK -zc -Nk -Ui -Nk Nk +ms Nk Nk XJ -aH -aH -aH -aH -aH +Rb +Rb +Rb +Rb +Rb OG eW -eW +uE KK KK Qg @@ -23293,10 +24333,10 @@ aw aw aw Qg -de -de +dY +dY Ri -xP +QE ff jF aj @@ -23304,14 +24344,14 @@ bM da op Lf -Lf -Lf -Lf +Np +Jq +Ip jF UA Gi tV -Mn +Jq nY QA Mp @@ -23328,21 +24368,21 @@ lc DO Iu tH -Gv +UO Lu -KG -Rb +UO Rb +ly vy iZ cz vd -vd +lP Pa jV -aH +Rb gC -tR +DV KK KK aw @@ -23436,10 +24476,10 @@ aw aw Qg aw -de -de -xP -ff +dY +dY +DD +QE jF au bS @@ -23454,7 +24494,7 @@ Mn kV Jq Jq -Ae +Jq oY fn gx @@ -23465,24 +24505,24 @@ Gr BS Uh Xz -Vz -Vz -Vz -dH -Yn -BB -By -By -By -By -By -By -By -By -By -By -By -aH +zc +zc +zc +Ai +tH +UO +UO +UO +Rb +aA +xR +xR +xR +qt +va +Pa +Pa +Rb Wr KK KK @@ -23579,9 +24619,9 @@ aw Qg aw aw -de -de -ff +dY +dY +QE jF az Ah @@ -23594,13 +24634,13 @@ Ul Dg Ul ML -Ul -Ul +sb +sb sb Cw qQ -ZA -ZA +FZ +SJ SJ jF ak @@ -23610,21 +24650,21 @@ OE Vz Vz Vz -HR -Yn -gK -By -By -By -By -By -By -By -By -By -By -By -aH +Vz +gU +UO +UO +UO +Rb +MB +xR +xR +xR +sj +Pa +Pa +me +Rb KK KK aw @@ -23722,7 +24762,7 @@ Qg aw aw aw -de +dY NN jF bE @@ -23738,12 +24778,12 @@ zI VX Zc ti -UH -QH -Gb -Eb +Jq +Jq +Xg +jF zn -Qh +jF jF qq Zb @@ -23753,19 +24793,19 @@ Vz uj Vz Vz -Yn +gz UO -By -By -By -By +IS +UO +Rb +YL xR -By -By -By -By -By -uk +Wj +xR +qt +Pa +jV +Pa IP KK aw @@ -23878,35 +24918,35 @@ wh QL Ve GW -Ip +jF RP -Jq -Jq +md +OJ LS Jq Jq Og jF -Qs +xv JP Uh iH Vz -De Vz Vz -Yn -gK -By -By -By -By -By -By -By -By -By -By +qK +gU +UO +UO +UO +Rb +YL +xR +xR +xR +Ns +Pa +Pa Ht Ht aw @@ -24020,34 +25060,34 @@ wK ZA wp Ij -fi +jF YE hX hX ga Jq -Jq -YX -jF -xg +mp +GI +zn +CK BS -Uh +jQ HM Vz -Mc Vz Vz -Yn -BX -By -By -By -By -By -By -By -By -By +Tz +gU +UO +UO +UO +Rb +SH +xR +rW +xR +qt +Pa Ht Ht aw @@ -24162,32 +25202,32 @@ DN iY Ab tI -rH -xq -Ul -Ul -fT -Jq -Jq -Og jF -CK +xq +JY +Hh +fT +YC +vQ +mI +jF +JE BS Uh Ol -Vz +rJ ES -Vz -Vz -Yn -gK -By -By -By -By -By -By -By +Kv +tf +gU +UO +ut +UO +Rb +XN +An +SI +ZI Ap Ht Ht @@ -24299,38 +25339,38 @@ kY vJ vJ vJ -HO -hX -hX -hX -hX -vz -RP -Jq -Jq +jF +jF +jF +jF +jF +jF +rP +jF +jF Xg -xs -xs -xs +jF +jF +jF jF Gr BS Uh JZ -Vz -jQ -Vz -Vz Yn -gK -By -By -By -By -Ct -By -By -PO +Yn +Yn +Yn +Yn +Yn +Yn +Yn +Rb +Rb +Rb +Rb +Rb +Ka It aY aY @@ -24441,31 +25481,31 @@ LK KN SN Vt -Ul -Ul -Ul +Ug +Jr +AD sI -Jq -Jq +ik +TM gw -Jq -Jq -LS -Jq -Jq -JR -jF +wT +Tt +hA +Bi +Xm +yQ +jm EX cq Hw SY WN WN -WN +Mc WN PG CV -iB +CV Ji Dv yp @@ -24582,15 +25622,15 @@ zp zp XP fY -fY -fY -fY -fY +vW +Cu +LD +fc Ln mj -mj +tj jZ -gW +xc XF Mb sD @@ -24599,22 +25639,22 @@ xc Oa cm Va -Uh +gl Nw -Vz -Vz -Vz -dH -Yn +De +HR ER -tG -tG -By -gK +ER +DE +ER +ER +RE +xj +xj uk -PO -Ht -Ht +Rf +It +It aY aY aY @@ -24722,39 +25762,39 @@ Up fb fb fb -ry -ry +LK +LK KN -wR -lR -Hn -Uj -LI -Cq -LS -Ow -mM +NL +NL +NL +NL +NL +NL +UV +NL +LY yA -Kn -Cu -Kn -jF +NL +NL +NL +NL yH Po -Uh +RD SP -rJ +cs Wh dH mH -Yn +EW Yv Ub RE -By LT -Ht -Ht +lC +It +It aw aw aw @@ -24866,36 +25906,36 @@ aw aw aw aw -ry -KN -jF -jF -jF -jF -jF -rr -jF -jF +ot +ze +cT +NY +Je +Wb +Di +cM +hw +Pi XL -jF -jF -jF -jF +is +qr +xV +NP Yo Va RD -xt -xt -xt -xt -xt -xt -xt -xt -xt -xt +Tx +Tx +Tx +Tx +Tx +Tx +Tx +Tx +RE +RE Rf -yr +It aw aw aw @@ -25009,19 +26049,19 @@ aw aw aw aw -ry -KN -wq -wq -rk -KU -BM -KU -jF -rF -Vk +ot +ze +AE +Uo +Uo +HE +HA xS -jF +xS +xB +xS +xS +OP oG Wz ZO @@ -25031,7 +26071,7 @@ Jc GT II uD -gi +uK SV gi id @@ -25152,18 +26192,18 @@ aw aw aw aw -Cd -Cd -wq -ys -mz -UB -lq -jF -fA +IO +IO +gb +Uo +Uo +pa +Uo +GO +yd TZ Uf -jF +xV Bm xG dV @@ -25175,7 +26215,7 @@ Nn Nn Nn Nn -Nn +Et Qq Qq aw @@ -25295,28 +26335,28 @@ aw aw aw aw -Cd -Cd -pM -hA -UV -PT -jF -HA -ze -Ph -ry +IO +IO +rC +WR +pa +UM +YH +uf +xV +xV +Dp RM fp ty xt Uw Nn -Yc -Yc Nn Nn Nn +Nn +Et Qq Qq aw @@ -25438,25 +26478,25 @@ aw aw aw aw -Cd -Cd -lq -UB -mz -jF -jF -jF -jF -ry +IO +IO +IA +pa +Uo +Uo +Uo +ZD +ev +ot jA -XA +nG ty lA cf Nn Yc Yc -Nn +vU gy Qq Qq @@ -25581,19 +26621,19 @@ aw aw aw aw -ry -ry +ot +ot Yg YN -bT -lq -AE -lq -ry +qD +cD +Uo +EC +ot zx -XA +tr ty -lA +hQ cf Nn Yc @@ -25724,14 +26764,14 @@ aw aw aw aw -Cd -Cd -NL -LY -AD -le +IO +IO +ot +fX +SC +KM lb -ry +ot Va XA ty @@ -25867,20 +26907,20 @@ aw aw aw aw -Cd -ry -ys -lq -EF -lq -ry +IO +ot +ZP +ME +Uo +PK +ot Rp XA ty -hQ -cf -Nn +cQ +fr Nn +vU yr Qq aw @@ -26010,12 +27050,12 @@ aw aw aw aw -ry -Cd -sW -MK -lD -ry +ot +IO +tn +Uo +JR +ot AI oM mX @@ -26153,11 +27193,11 @@ aw aw aw aw -Cd -Cd -ys -lq -ry +IO +IO +Uo +Uo +ot lZ Ma ek @@ -26296,14 +27336,14 @@ aw aw aw aw -Cd -Cd -sW -tY +IO +IO +zz +ot iy Nh tY -zr +Nn Qq Qq aw @@ -26439,9 +27479,9 @@ aw aw aw aw -Cd -KN -tY +IO +ze +ot Bo Bo rT @@ -26583,7 +27623,7 @@ aw aw aw Db -tY +ot eb ec ka @@ -26725,7 +27765,7 @@ aw aw aw aw -jJ +Db dP oU BK diff --git a/maps/expedition_vr/beach/_beach.dm b/maps/expedition_vr/beach/_beach.dm index 8bbc1765b71..f63be856253 100644 --- a/maps/expedition_vr/beach/_beach.dm +++ b/maps/expedition_vr/beach/_beach.dm @@ -85,7 +85,7 @@ //guard = 40 //They'll stay within this range (not defining this disables them staying nearby and they will wander the map (and through step teleports)) mobs_to_pick_from = list( /mob/living/simple_mob/vore/fennec = 300, - /mob/living/simple_mob/animal/passive/snake = 100, + /mob/living/simple_mob/animal/passive/snake/python = 100, /mob/living/simple_mob/vore/alienanimals/teppi = 10, /mob/living/simple_mob/vore/alienanimals/teppi/baby = 1 ) diff --git a/maps/expedition_vr/beach/submaps/BlastMine1.dmm b/maps/expedition_vr/beach/submaps/BlastMine1.dmm index ca21c8d481f..957517f9649 100644 --- a/maps/expedition_vr/beach/submaps/BlastMine1.dmm +++ b/maps/expedition_vr/beach/submaps/BlastMine1.dmm @@ -1,35 +1,248 @@ -"a" = (/turf/simulated/mineral/cave,/area/submap/cave/BlastMine1) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"c" = (/obj/structure/sign/warning/bomb_range,/turf/simulated/wall/sandstone,/area/submap/cave/BlastMine1) -"d" = (/obj/structure/table/rack,/obj/item/weapon/syndie/c4explosive,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"e" = (/obj/structure/loot_pile/surface/bones,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"f" = (/mob/living/simple_mob/animal/sif/savik,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"g" = (/obj/structure/table/rack,/obj/item/clothing/head/bomb_hood,/obj/item/clothing/suit/bomb_suit,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"h" = (/obj/item/device/gps/internal/poi{gps_tag = "Unidentified Signal"},/turf/simulated/wall/sandstone,/area/submap/cave/BlastMine1) -"i" = (/mob/living/simple_mob/animal/sif/diyaab,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"j" = (/obj/structure/table/reinforced,/obj/item/weapon/flame/lighter/zippo/c4detonator{detonator_mode = 1},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"k" = (/obj/structure/table/rack,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"l" = (/obj/machinery/floodlight,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"m" = (/turf/simulated/wall/sandstone,/area/submap/cave/BlastMine1) -"n" = (/obj/structure/girder/displaced,/obj/structure/sign/warning/bomb_range,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"o" = (/obj/structure/table,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"p" = (/obj/effect/decal/remains/human,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/BlastMine1) -"q" = (/obj/structure/sign/warning/bomb_range,/turf/simulated/wall/sandstone{damage = 20},/area/submap/cave/BlastMine1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/cave, +/area/submap/cave/BlastMine1) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"c" = ( +/obj/structure/sign/warning/bomb_range, +/turf/simulated/wall/sandstone, +/area/submap/cave/BlastMine1) +"d" = ( +/obj/structure/table/rack, +/obj/item/weapon/syndie/c4explosive, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"e" = ( +/obj/structure/loot_pile/surface/bones, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"f" = ( +/mob/living/simple_mob/animal/sif/savik, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"g" = ( +/obj/structure/table/rack, +/obj/item/clothing/head/bomb_hood, +/obj/item/clothing/suit/bomb_suit, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"h" = ( +/obj/item/device/gps/internal/poi{ + gps_tag = "Unidentified Signal" + }, +/turf/simulated/wall/sandstone, +/area/submap/cave/BlastMine1) +"i" = ( +/mob/living/simple_mob/animal/sif/diyaab, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"j" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/flame/lighter/zippo/c4detonator{ + detonator_mode = 1 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"k" = ( +/obj/structure/table/rack, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"l" = ( +/obj/machinery/floodlight, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"m" = ( +/turf/simulated/wall/sandstone, +/area/submap/cave/BlastMine1) +"n" = ( +/obj/structure/girder/displaced, +/obj/structure/sign/warning/bomb_range, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"o" = ( +/obj/structure/table, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"p" = ( +/obj/effect/decal/remains/human, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/BlastMine1) +"q" = ( +/obj/structure/sign/warning/bomb_range, +/turf/simulated/wall/sandstone{ + damage = 20 + }, +/area/submap/cave/BlastMine1) (1,1,1) = {" -aaabbbaaaa -aabbbbaaaa -aacbbbbaaa -aadbbbbbbb -abdbbecbbb -abdbfbgbbb -abhbbbbbba -abdibbgjaa -bbkbilmaaa -bbkbbbbbba -banbbbbbbb -abbbbbbbbb -aaopbbqbbb -bbbbbbbbba -baabbbaaaa +a +a +a +a +a +a +a +a +b +b +b +a +a +b +b +"} +(2,1,1) = {" +a +a +a +a +b +b +b +b +b +b +a +b +a +b +a +"} +(3,1,1) = {" +a +b +c +d +d +d +h +d +k +k +n +b +o +b +a +"} +(4,1,1) = {" +b +b +b +b +b +b +b +i +b +b +b +b +p +b +b +"} +(5,1,1) = {" +b +b +b +b +b +f +b +b +i +b +b +b +b +b +b +"} +(6,1,1) = {" +b +b +b +b +e +b +b +b +l +b +b +b +b +b +b +"} +(7,1,1) = {" +a +a +b +b +c +g +b +g +m +b +b +b +q +b +a +"} +(8,1,1) = {" +a +a +a +b +b +b +b +j +a +b +b +b +b +b +a +"} +(9,1,1) = {" +a +a +a +b +b +b +b +a +a +b +b +b +b +b +a +"} +(10,1,1) = {" +a +a +a +b +b +b +a +a +a +a +b +b +b +a +a "} diff --git a/maps/expedition_vr/beach/submaps/CaveTrench.dmm b/maps/expedition_vr/beach/submaps/CaveTrench.dmm index 3221988c51c..93a06748449 100644 --- a/maps/expedition_vr/beach/submaps/CaveTrench.dmm +++ b/maps/expedition_vr/beach/submaps/CaveTrench.dmm @@ -1,79 +1,1736 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/template_noop,/area/submap/Cavelake) -"c" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/Cavelake) -"d" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"e" = (/obj/effect/decal/cleanable/cobweb2,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"f" = (/turf/simulated/floor/outdoors/rocks,/area/submap/Cavelake) -"g" = (/mob/living/simple_mob/animal/sif/hooligan_crab,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"h" = (/turf/simulated/floor/water,/area/submap/Cavelake) -"i" = (/mob/living/simple_mob/animal/passive/fish/perch,/turf/simulated/floor/water,/area/submap/Cavelake) -"j" = (/obj/machinery/crystal,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"k" = (/mob/living/simple_mob/animal/passive/fish/trout,/turf/simulated/floor/water,/area/submap/Cavelake) -"l" = (/obj/effect/decal/cleanable/cobweb,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"m" = (/obj/random/mob/sif,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"n" = (/obj/item/clothing/mask/snorkel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"o" = (/obj/effect/decal/remains/mouse,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"p" = (/obj/structure/table/woodentable,/obj/item/weapon/reagent_containers/food/drinks/bottle/whiskey,/turf/simulated/floor/holofloor/wood,/area/submap/CaveTrench) -"q" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/holofloor/wood,/area/submap/CaveTrench) -"r" = (/obj/structure/table/steel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"s" = (/obj/structure/table/steel,/obj/item/weapon/paper{info = "Rellek's telling me that we're in deep shit if the townies found out I'm cooking up drones out here. Like I give a fuck, We're minning our asses off only to dig into some bug nest to get our legs chewed. Well I'm not looking a gift horse in the mouth. Those drone dudes out in the wild hooked us up with these machines so long as they get some of the metal we dig up. Win win for us, Guess we're retiring early after all."; name = "Note"},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"t" = (/obj/structure/table/steel,/obj/item/robot_parts/robot_component/actuator,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"u" = (/obj/effect/decal/cleanable/blood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"v" = (/obj/structure/simple_door/wood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"w" = (/obj/structure/table/woodentable,/obj/item/device/flashlight/lamp,/turf/simulated/floor/holofloor/wood,/area/submap/CaveTrench) -"x" = (/obj/structure/table/steel,/obj/item/device/robotanalyzer,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"y" = (/obj/structure/table/steel,/obj/item/weapon/storage/toolbox,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"z" = (/obj/structure/table/bench/steel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"A" = (/obj/effect/decal/remains,/obj/item/clothing/under/rank/miner,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"B" = (/turf/simulated/shuttle/plating,/area/submap/CaveTrench) -"C" = (/obj/structure/closet/cabinet,/obj/item/clothing/suit/storage/hooded/wintercoat/miner,/obj/item/clothing/suit/storage/hooded/wintercoat/miner,/turf/simulated/floor/holofloor/wood,/area/submap/CaveTrench) -"D" = (/obj/structure/coatrack,/turf/simulated/floor/holofloor/wood,/area/submap/CaveTrench) -"E" = (/obj/structure/closet/secure_closet/miner,/turf/simulated/floor/holofloor/wood,/area/submap/CaveTrench) -"F" = (/obj/item/weapon/storage/box/shotgunammo,/turf/simulated/floor/holofloor/wood,/area/submap/CaveTrench) -"G" = (/obj/structure/table/steel,/obj/item/robot_parts/l_leg,/obj/item/robot_parts/head,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"H" = (/obj/effect/decal/cleanable/blood/gibs/robot,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CaveTrench) -"I" = (/obj/machinery/power/port_gen/pacman,/turf/simulated/shuttle/plating,/area/submap/CaveTrench) -"J" = (/obj/machinery/drone_fabricator{fabricator_tag = "Unknown"},/turf/simulated/shuttle/plating,/area/submap/CaveTrench) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/template_noop, +/area/submap/Cavelake) +"c" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/Cavelake) +"d" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"e" = ( +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"f" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Cavelake) +"g" = ( +/mob/living/simple_mob/animal/sif/hooligan_crab, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"h" = ( +/turf/simulated/floor/water, +/area/submap/Cavelake) +"i" = ( +/mob/living/simple_mob/animal/passive/fish/perch, +/turf/simulated/floor/water, +/area/submap/Cavelake) +"j" = ( +/obj/machinery/crystal, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"k" = ( +/mob/living/simple_mob/animal/passive/fish/trout, +/turf/simulated/floor/water, +/area/submap/Cavelake) +"l" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"m" = ( +/obj/random/mob/sif, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"n" = ( +/obj/item/clothing/mask/snorkel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"o" = ( +/obj/effect/decal/remains/mouse, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -abbbbccbbbbbbcccccccbbbbbbbbbbbbbbbbbbba -abbbcccdddddccccccccbbbbbcccccccccccbbba -abbcccddddddddddddddbbbbbbbccccccccccbba -abcccdddddddddddddddddddddddddddddeccbba -abcccddddddddddddddddddddddddddddddccbba -acccddddddddddddddddddddddddddddddddcbba -acccdddddddddddddddddffffffffffdddddcbba -acccdddddddddddddgdfffhhhhhhhhffddddcbba -acccdddddddddddddddfhhhhhhhhhhhfddddcbba -accdddddddddddddddfhhhhhhhhhhhhffdddccba -accdddddddddddddddfhhhhhhhhhhhhhffffccca -acddddddddddddddddffhhhhhhihhhhhhfffffca -acddddcccjddddddddffhhhhhhhhhhhhhhhhhfca -acdddcccccdddddddddffhhhhhhhhhhhhhhhhfca -acdddccccccddddddddffhhhhhhhhhhhhhhhhfca -acdddjcccccddddddddffhhhhhhhhhhhhhhhkfca -accddddcclmdddddddddfhhhhhhhhhhhhhhhhfca -accdddddddddddddddddfhhhhhhhhhhhhhhhhfca -accdddddddddddddddddfhhhhhhhhhhhhhhhhfca -accdddddddddddddddddffhhhhhhhhhhhhhhhfca -acddddddddnddddddddddfhhhhhihhhhhhhhhfca -acddddffffffffffffdddffhhhhhhhhhhhhhhfca -acdffffhhhhhhhhhffdddfhhhhhhhhhhhhhhffca -acfhhhhhkhhhhhhhhfdddfhhhhhhhhhhhhffccca -acffhhhhhhhhhhihhfdddfhhhhhhhhhhfffdccba -acdffhhhhhhhhhhhhfddddfhhhhhhhhhfdddcbba -acddffhhhhhkhhhhhffdddfhhhhhhhfffdddccba -acdddfffhhhhhhhhhhffdddffffffffddddcccba -acddgdddffffhhhhhhhfdddddffddddddddcccba -acdddodddddfffffffffdddddddddddddddcccba -acdddddddddddddddddddddddddddddddddccbba -accddddddddddddddddddddddddddddddddccbba -abccdddddddddddddddddddddddddddddddcbbba -abbcccddddccccddddddddddddcccbbbdddcbbba -abbbbcccccccccddddcccccccccccbbbbbcbbbba -abbbbbbbcccccccccccbbbbbccbbbbbbbbbbbbba -abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba -abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +b +b +b +b +b +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +a +"} +(3,1,1) = {" +a +b +b +b +c +c +c +c +c +c +c +c +d +d +d +d +d +c +c +c +c +d +d +d +f +f +d +d +d +d +d +d +c +c +b +b +b +b +b +a +"} +(4,1,1) = {" +a +b +b +c +c +c +c +c +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +f +f +d +d +d +d +d +d +c +c +b +b +b +b +a +"} +(5,1,1) = {" +a +b +c +c +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +f +f +d +g +d +d +d +d +c +b +b +b +b +a +"} +(6,1,1) = {" +a +c +c +c +d +d +d +d +d +d +d +d +d +d +c +c +j +d +d +d +d +d +d +f +h +h +h +f +f +d +o +d +d +d +c +c +b +b +b +a +"} +(7,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +c +c +c +c +d +d +d +d +d +f +f +h +h +h +h +f +d +d +d +d +d +d +c +b +b +b +a +"} +(8,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +c +c +c +c +c +d +d +d +d +f +h +h +h +h +h +f +d +d +d +d +d +d +c +b +b +b +a +"} +(9,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +c +c +c +c +c +d +d +d +d +f +h +k +h +h +h +h +f +d +d +d +d +d +c +c +b +b +a +"} +(10,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +j +c +c +c +l +d +d +d +d +f +h +h +h +h +h +h +f +d +d +d +d +d +c +c +b +b +a +"} +(11,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +d +d +c +c +m +d +d +d +n +f +h +h +h +h +h +h +f +d +d +d +d +c +c +c +b +b +a +"} +(12,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +k +h +f +f +d +d +d +c +c +c +b +b +a +"} +(13,1,1) = {" +a +b +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +h +h +h +f +d +d +d +c +c +c +b +b +a +"} +(14,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +h +h +h +f +d +d +d +c +c +c +b +b +a +"} +(15,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +i +h +h +h +h +f +d +d +d +d +d +c +b +b +a +"} +(16,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +h +h +h +f +d +d +d +d +d +c +b +b +a +"} +(17,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +f +h +h +h +h +h +h +f +d +d +d +d +d +c +b +b +a +"} +(18,1,1) = {" +a +c +c +d +d +d +d +d +g +d +d +d +d +d +d +d +d +d +d +d +d +d +f +f +f +f +f +f +h +h +f +d +d +d +d +d +c +b +b +a +"} +(19,1,1) = {" +a +c +c +d +d +d +d +d +d +d +f +f +f +f +d +d +d +d +d +d +d +d +d +d +d +d +d +f +f +h +f +d +d +d +d +c +c +b +b +a +"} +(20,1,1) = {" +a +c +c +d +d +d +d +d +f +f +h +h +f +f +f +f +f +d +d +d +d +d +d +d +d +d +d +d +f +f +f +d +d +d +d +c +b +b +b +a +"} +(21,1,1) = {" +a +b +b +b +d +d +d +d +f +h +h +h +h +h +f +f +f +f +f +f +f +d +d +d +d +d +d +d +d +d +d +d +d +d +d +c +b +b +b +a +"} +(22,1,1) = {" +a +b +b +b +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +f +f +f +f +f +f +d +d +d +d +d +d +d +d +d +c +b +b +b +a +"} +(23,1,1) = {" +a +b +b +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +h +h +h +f +f +d +d +d +d +d +d +d +c +b +b +b +a +"} +(24,1,1) = {" +a +b +b +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +c +b +b +b +a +"} +(25,1,1) = {" +a +b +b +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +c +c +b +b +a +"} +(26,1,1) = {" +a +b +c +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +d +c +c +b +b +a +"} +(27,1,1) = {" +a +b +c +b +d +d +d +f +h +h +h +h +i +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +c +c +b +b +b +a +"} +(28,1,1) = {" +a +b +c +c +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +i +h +h +h +h +h +h +f +d +d +d +d +d +c +c +b +b +b +a +"} +(29,1,1) = {" +a +b +c +c +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +c +c +b +b +b +a +"} +(30,1,1) = {" +a +b +c +c +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +b +b +b +b +b +a +"} +(31,1,1) = {" +a +b +c +c +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +d +b +b +b +b +b +a +"} +(32,1,1) = {" +a +b +c +c +d +d +d +d +f +f +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +b +b +b +b +b +a +"} +(33,1,1) = {" +a +b +c +c +d +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +f +d +d +d +d +d +d +d +b +b +b +b +a +"} +(34,1,1) = {" +a +b +c +c +d +d +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +d +d +d +b +b +b +b +a +"} +(35,1,1) = {" +a +b +c +c +e +d +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +d +d +d +d +d +c +b +b +b +a +"} +(36,1,1) = {" +a +b +c +c +c +c +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +c +c +c +c +c +c +c +b +b +b +b +a +"} +(37,1,1) = {" +a +b +b +c +c +c +c +c +c +c +c +c +f +h +h +h +k +h +h +h +h +h +h +f +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +a +"} +(38,1,1) = {" +a +b +b +b +b +b +b +b +b +b +c +c +f +f +f +f +f +f +f +f +f +f +f +f +c +c +b +c +c +c +c +b +b +b +b +b +b +b +b +a +"} +(39,1,1) = {" +a +b +b +b +b +b +b +b +b +b +b +c +c +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +"} +(40,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/Cavelake.dmm b/maps/expedition_vr/beach/submaps/Cavelake.dmm index 5d803ffc01f..93a06748449 100644 --- a/maps/expedition_vr/beach/submaps/Cavelake.dmm +++ b/maps/expedition_vr/beach/submaps/Cavelake.dmm @@ -1,58 +1,1736 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/template_noop,/area/submap/Cavelake) -"c" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/Cavelake) -"d" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"e" = (/obj/effect/decal/cleanable/cobweb2,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"f" = (/turf/simulated/floor/outdoors/rocks,/area/submap/Cavelake) -"g" = (/mob/living/simple_mob/animal/sif/hooligan_crab,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"h" = (/turf/simulated/floor/water,/area/submap/Cavelake) -"i" = (/mob/living/simple_mob/animal/passive/fish/perch,/turf/simulated/floor/water,/area/submap/Cavelake) -"j" = (/obj/machinery/crystal,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"k" = (/mob/living/simple_mob/animal/passive/fish/trout,/turf/simulated/floor/water,/area/submap/Cavelake) -"l" = (/obj/effect/decal/cleanable/cobweb,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"m" = (/obj/random/mob/sif,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"n" = (/obj/item/clothing/mask/snorkel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) -"o" = (/obj/effect/decal/remains/mouse,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Cavelake) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/template_noop, +/area/submap/Cavelake) +"c" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/Cavelake) +"d" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"e" = ( +/obj/effect/decal/cleanable/cobweb2, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"f" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Cavelake) +"g" = ( +/mob/living/simple_mob/animal/sif/hooligan_crab, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"h" = ( +/turf/simulated/floor/water, +/area/submap/Cavelake) +"i" = ( +/mob/living/simple_mob/animal/passive/fish/perch, +/turf/simulated/floor/water, +/area/submap/Cavelake) +"j" = ( +/obj/machinery/crystal, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"k" = ( +/mob/living/simple_mob/animal/passive/fish/trout, +/turf/simulated/floor/water, +/area/submap/Cavelake) +"l" = ( +/obj/effect/decal/cleanable/cobweb, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"m" = ( +/obj/random/mob/sif, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"n" = ( +/obj/item/clothing/mask/snorkel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) +"o" = ( +/obj/effect/decal/remains/mouse, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Cavelake) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -abbbbccbbbbbbcccccccbbbbbbbbbbbbbbbbbbba -abbbcccdddddccccccccbbbbbcccccccccccbbba -abbcccddddddddddddddbbbbbbbccccccccccbba -abcccdddddddddddddddddddddddddddddeccbba -abcccddddddddddddddddddddddddddddddccbba -acccddddddddddddddddddddddddddddddddcbba -acccdddddddddddddddddffffffffffdddddcbba -acccdddddddddddddgdfffhhhhhhhhffddddcbba -acccdddddddddddddddfhhhhhhhhhhhfddddcbba -accdddddddddddddddfhhhhhhhhhhhhffdddccba -accdddddddddddddddfhhhhhhhhhhhhhffffccca -acddddddddddddddddffhhhhhhihhhhhhfffffca -acddddcccjddddddddffhhhhhhhhhhhhhhhhhfca -acdddcccccdddddddddffhhhhhhhhhhhhhhhhfca -acdddccccccddddddddffhhhhhhhhhhhhhhhhfca -acdddjcccccddddddddffhhhhhhhhhhhhhhhkfca -accddddcclmdddddddddfhhhhhhhhhhhhhhhhfca -accdddddddddddddddddfhhhhhhhhhhhhhhhhfca -accdddddddddddddddddfhhhhhhhhhhhhhhhhfca -accdddddddddddddddddffhhhhhhhhhhhhhhhfca -acddddddddnddddddddddfhhhhhihhhhhhhhhfca -acddddffffffffffffdddffhhhhhhhhhhhhhhfca -acdffffhhhhhhhhhffdddfhhhhhhhhhhhhhhffca -acfhhhhhkhhhhhhhhfdddfhhhhhhhhhhhhffccca -acffhhhhhhhhhhihhfdddfhhhhhhhhhhfffdccba -acdffhhhhhhhhhhhhfddddfhhhhhhhhhfdddcbba -acddffhhhhhkhhhhhffdddfhhhhhhhfffdddccba -acdddfffhhhhhhhhhhffdddffffffffddddcccba -acddgdddffffhhhhhhhfdddddffddddddddcccba -acdddodddddfffffffffdddddddddddddddcccba -acdddddddddddddddddddddddddddddddddccbba -accddddddddddddddddddddddddddddddddccbba -abccdddddddddddddddddddddddddddddddcbbba -abbcccddddccccddddddddddddcccbbbdddcbbba -abbbbcccccccccddddcccccccccccbbbbbcbbbba -abbbbbbbcccccccccccbbbbbccbbbbbbbbbbbbba -abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba -abbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbba -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} \ No newline at end of file +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +b +b +b +b +b +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +a +"} +(3,1,1) = {" +a +b +b +b +c +c +c +c +c +c +c +c +d +d +d +d +d +c +c +c +c +d +d +d +f +f +d +d +d +d +d +d +c +c +b +b +b +b +b +a +"} +(4,1,1) = {" +a +b +b +c +c +c +c +c +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +f +f +d +d +d +d +d +d +c +c +b +b +b +b +a +"} +(5,1,1) = {" +a +b +c +c +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +f +f +d +g +d +d +d +d +c +b +b +b +b +a +"} +(6,1,1) = {" +a +c +c +c +d +d +d +d +d +d +d +d +d +d +c +c +j +d +d +d +d +d +d +f +h +h +h +f +f +d +o +d +d +d +c +c +b +b +b +a +"} +(7,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +c +c +c +c +d +d +d +d +d +f +f +h +h +h +h +f +d +d +d +d +d +d +c +b +b +b +a +"} +(8,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +c +c +c +c +c +d +d +d +d +f +h +h +h +h +h +f +d +d +d +d +d +d +c +b +b +b +a +"} +(9,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +c +c +c +c +c +d +d +d +d +f +h +k +h +h +h +h +f +d +d +d +d +d +c +c +b +b +a +"} +(10,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +j +c +c +c +l +d +d +d +d +f +h +h +h +h +h +h +f +d +d +d +d +d +c +c +b +b +a +"} +(11,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +d +d +c +c +m +d +d +d +n +f +h +h +h +h +h +h +f +d +d +d +d +c +c +c +b +b +a +"} +(12,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +k +h +f +f +d +d +d +c +c +c +b +b +a +"} +(13,1,1) = {" +a +b +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +h +h +h +f +d +d +d +c +c +c +b +b +a +"} +(14,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +h +h +h +f +d +d +d +c +c +c +b +b +a +"} +(15,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +i +h +h +h +h +f +d +d +d +d +d +c +b +b +a +"} +(16,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +h +h +h +h +h +h +h +f +d +d +d +d +d +c +b +b +a +"} +(17,1,1) = {" +a +c +c +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +d +f +f +h +h +h +h +h +h +f +d +d +d +d +d +c +b +b +a +"} +(18,1,1) = {" +a +c +c +d +d +d +d +d +g +d +d +d +d +d +d +d +d +d +d +d +d +d +f +f +f +f +f +f +h +h +f +d +d +d +d +d +c +b +b +a +"} +(19,1,1) = {" +a +c +c +d +d +d +d +d +d +d +f +f +f +f +d +d +d +d +d +d +d +d +d +d +d +d +d +f +f +h +f +d +d +d +d +c +c +b +b +a +"} +(20,1,1) = {" +a +c +c +d +d +d +d +d +f +f +h +h +f +f +f +f +f +d +d +d +d +d +d +d +d +d +d +d +f +f +f +d +d +d +d +c +b +b +b +a +"} +(21,1,1) = {" +a +b +b +b +d +d +d +d +f +h +h +h +h +h +f +f +f +f +f +f +f +d +d +d +d +d +d +d +d +d +d +d +d +d +d +c +b +b +b +a +"} +(22,1,1) = {" +a +b +b +b +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +f +f +f +f +f +f +d +d +d +d +d +d +d +d +d +c +b +b +b +a +"} +(23,1,1) = {" +a +b +b +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +h +h +h +f +f +d +d +d +d +d +d +d +c +b +b +b +a +"} +(24,1,1) = {" +a +b +b +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +c +b +b +b +a +"} +(25,1,1) = {" +a +b +b +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +c +c +b +b +a +"} +(26,1,1) = {" +a +b +c +b +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +d +c +c +b +b +a +"} +(27,1,1) = {" +a +b +c +b +d +d +d +f +h +h +h +h +i +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +c +c +b +b +b +a +"} +(28,1,1) = {" +a +b +c +c +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +i +h +h +h +h +h +h +f +d +d +d +d +d +c +c +b +b +b +a +"} +(29,1,1) = {" +a +b +c +c +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +c +c +b +b +b +a +"} +(30,1,1) = {" +a +b +c +c +d +d +d +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +b +b +b +b +b +a +"} +(31,1,1) = {" +a +b +c +c +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +d +b +b +b +b +b +a +"} +(32,1,1) = {" +a +b +c +c +d +d +d +d +f +f +f +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +b +b +b +b +b +a +"} +(33,1,1) = {" +a +b +c +c +d +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +h +h +f +f +f +d +d +d +d +d +d +d +b +b +b +b +a +"} +(34,1,1) = {" +a +b +c +c +d +d +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +d +d +d +d +d +d +b +b +b +b +a +"} +(35,1,1) = {" +a +b +c +c +e +d +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +f +f +d +d +d +d +d +d +d +d +d +c +b +b +b +a +"} +(36,1,1) = {" +a +b +c +c +c +c +d +d +d +d +d +f +f +h +h +h +h +h +h +h +h +h +h +h +f +d +d +d +c +c +c +c +c +c +c +b +b +b +b +a +"} +(37,1,1) = {" +a +b +b +c +c +c +c +c +c +c +c +c +f +h +h +h +k +h +h +h +h +h +h +f +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +a +"} +(38,1,1) = {" +a +b +b +b +b +b +b +b +b +b +c +c +f +f +f +f +f +f +f +f +f +f +f +f +c +c +b +c +c +c +c +b +b +b +b +b +b +b +b +a +"} +(39,1,1) = {" +a +b +b +b +b +b +b +b +b +b +b +c +c +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +"} +(40,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/expedition_vr/beach/submaps/Cliff1.dmm b/maps/expedition_vr/beach/submaps/Cliff1.dmm index ad388f9372d..f34c92b82c2 100644 --- a/maps/expedition_vr/beach/submaps/Cliff1.dmm +++ b/maps/expedition_vr/beach/submaps/Cliff1.dmm @@ -1,25 +1,414 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"c" = (/obj/item/weapon/ore,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"d" = (/obj/random/outcrop,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"e" = (/obj/structure/cliff/automatic/corner,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"f" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 5},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"g" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 9},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"h" = (/obj/structure/cliff/automatic,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"i" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 9},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"j" = (/obj/random/humanoidremains{spawn_nothing_percentage = 70},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) -"k" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/ore_cliff) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"c" = ( +/obj/item/weapon/ore, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"d" = ( +/obj/random/outcrop, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"e" = ( +/obj/structure/cliff/automatic/corner, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"f" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 5 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"g" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 9 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"h" = ( +/obj/structure/cliff/automatic, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"i" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 9 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"j" = ( +/obj/random/humanoidremains{ + spawn_nothing_percentage = 70 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) +"k" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/ore_cliff) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -abbbbabbbbbbbaabbbbbbbbaaabbaa -aakckkbdbcbbbbbbdbbcdbbkkckkaa -aakefckkkbbdbbcbbbkkkcghhhikaa -aakcehhfkkkkkkkkkcghhhikkkckaa -aaajkkkehfkckghhhhikkkcjbbbaaa -aaaaabkckehhhikkkkkkcbbbbaaaaa -aaaaaaackkkjkkcbbcbbbaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +b +a +a +a +a +a +a +a +"} +(3,1,1) = {" +a +a +b +k +k +k +a +a +a +a +"} +(4,1,1) = {" +a +a +b +c +e +c +j +a +a +a +"} +(5,1,1) = {" +a +a +b +k +f +e +k +a +a +a +"} +(6,1,1) = {" +a +a +a +k +c +h +k +b +a +a +"} +(7,1,1) = {" +a +a +b +b +k +h +k +k +a +a +"} +(8,1,1) = {" +a +a +b +d +k +f +e +c +c +a +"} +(9,1,1) = {" +a +a +b +b +k +k +h +k +k +a +"} +(10,1,1) = {" +a +a +b +c +b +k +f +e +k +a +"} +(11,1,1) = {" +a +a +b +b +b +k +k +h +k +a +"} +(12,1,1) = {" +a +a +b +b +d +k +c +h +j +a +"} +(13,1,1) = {" +a +a +b +b +b +k +k +h +k +a +"} +(14,1,1) = {" +a +a +a +b +b +k +g +i +k +a +"} +(15,1,1) = {" +a +a +a +b +c +k +h +k +c +a +"} +(16,1,1) = {" +a +a +b +b +b +k +h +k +b +a +"} +(17,1,1) = {" +a +a +b +d +b +k +h +k +b +a +"} +(18,1,1) = {" +a +a +b +b +b +c +h +k +c +a +"} +(19,1,1) = {" +a +a +b +b +k +g +i +k +b +a +"} +(20,1,1) = {" +a +a +b +c +k +h +k +k +b +a +"} +(21,1,1) = {" +a +a +b +d +k +h +k +c +b +a +"} +(22,1,1) = {" +a +a +b +b +c +h +k +b +a +a +"} +(23,1,1) = {" +a +a +b +b +g +i +c +b +a +a +"} +(24,1,1) = {" +a +a +a +k +h +k +j +b +a +a +"} +(25,1,1) = {" +a +a +a +k +h +k +b +b +a +a +"} +(26,1,1) = {" +a +a +a +c +h +k +b +a +a +a +"} +(27,1,1) = {" +a +a +b +k +i +c +b +a +a +a +"} +(28,1,1) = {" +a +a +b +k +k +k +a +a +a +a +"} +(29,1,1) = {" +a +a +a +a +a +a +a +a +a +a +"} +(30,1,1) = {" +a +a +a +a +a +a +a +a +a +a "} - diff --git a/maps/expedition_vr/beach/submaps/CrashedMedShuttle1.dmm b/maps/expedition_vr/beach/submaps/CrashedMedShuttle1.dmm index be9f0b2b7e7..8b980b9988c 100644 --- a/maps/expedition_vr/beach/submaps/CrashedMedShuttle1.dmm +++ b/maps/expedition_vr/beach/submaps/CrashedMedShuttle1.dmm @@ -3,11 +3,11 @@ /turf/simulated/mineral/floor/ignore_mapgen/cave, /area/submap/CrashedMedShuttle) "ab" = ( -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "ac" = ( /obj/structure/lattice, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "ad" = ( /obj/effect/spider/stickyweb, @@ -40,7 +40,7 @@ }, /obj/effect/decal/cleanable/blood/oil, /obj/structure/lattice, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "aj" = ( /obj/machinery/light/small{ @@ -73,7 +73,7 @@ /obj/effect/decal/cleanable/blood/oil, /obj/structure/loot_pile/surface/bones, /obj/structure/lattice, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "ao" = ( /obj/item/weapon/circuitboard/broken, @@ -141,7 +141,7 @@ "aB" = ( /obj/structure/lattice, /obj/item/stack/rods, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "aC" = ( /obj/effect/decal/cleanable/blood/oil, @@ -200,11 +200,11 @@ /area/submap/CrashedMedShuttle) "aM" = ( /obj/item/weapon/material/shard, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "aN" = ( /obj/effect/decal/cleanable/blood/oil, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "aO" = ( /obj/item/weapon/material/shard{ @@ -229,7 +229,7 @@ /obj/effect/decal/cleanable/blood/oil, /obj/structure/loot_pile/surface/bones, /obj/structure/lattice, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "aT" = ( /obj/machinery/light, @@ -247,11 +247,11 @@ /area/submap/CrashedMedShuttle) "aV" = ( /obj/effect/spider/stickyweb, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "aW" = ( /obj/effect/decal/cleanable/blood/drip, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "aX" = ( /obj/machinery/computer, @@ -277,17 +277,17 @@ /obj/item/weapon/material/shard{ icon_state = "medium" }, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "bd" = ( /obj/item/stack/rods, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "be" = ( /obj/effect/spider/stickyweb, /obj/structure/girder/displaced, /obj/structure/lattice, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "bf" = ( /obj/machinery/light{ @@ -301,21 +301,21 @@ /obj/structure/lattice, /obj/item/device/gps/internal/poi, /obj/structure/flora/tree/sif, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "bg" = ( /obj/effect/decal/cleanable/blood/splatter, /obj/structure/loot_pile/surface/bones, /obj/effect/decal/cleanable/blood/drip, /obj/structure/lattice, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "bh" = ( /obj/structure/grille/broken, /obj/item/weapon/material/shard{ icon_state = "medium" }, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "bi" = ( /obj/effect/decal/mecha_wreckage/odysseus, @@ -331,12 +331,12 @@ icon_state = "beartrap1" }, /obj/random/trash, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "bk" = ( /obj/effect/decal/cleanable/blood/oil, /obj/structure/lattice, -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/CrashedMedShuttle) "bl" = ( /obj/effect/spider/stickyweb, diff --git a/maps/expedition_vr/beach/submaps/Geyser1.dmm b/maps/expedition_vr/beach/submaps/Geyser1.dmm index c61b3d11a1e..931eec23d20 100644 --- a/maps/expedition_vr/beach/submaps/Geyser1.dmm +++ b/maps/expedition_vr/beach/submaps/Geyser1.dmm @@ -1,17 +1,105 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_1) -"c" = (/obj/random/turf/lava,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_1) -"d" = (/obj/random/outcrop,/obj/random/turf/lava,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_1) -"e" = (/obj/random/outcrop,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_1) -"f" = (/obj/effect/map_effect/interval/effect_emitter/steam,/obj/effect/map_effect/interval/effect_emitter/smoke/mist{interval_upper_bound = 600},/obj/effect/map_effect/interval/effect_emitter/smoke/bad{interval_lower_bound = 100; interval_upper_bound = 3000},/obj/effect/map_effect/interval/screen_shaker{interval_upper_bound = 600},/turf/simulated/floor/water/deep{outdoors = 0},/area/submap/geyser_1) -"g" = (/obj/random/turf/lava,/obj/random/outcrop,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_1) +"c" = ( +/obj/random/turf/lava, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_1) +"d" = ( +/obj/random/outcrop, +/obj/random/turf/lava, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_1) +"e" = ( +/obj/random/outcrop, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_1) +"f" = ( +/obj/effect/map_effect/interval/effect_emitter/steam, +/obj/effect/map_effect/interval/effect_emitter/smoke/mist{ + interval_upper_bound = 600 + }, +/obj/effect/map_effect/interval/effect_emitter/smoke/bad{ + interval_lower_bound = 100; + interval_upper_bound = 3000 + }, +/obj/effect/map_effect/interval/screen_shaker{ + interval_upper_bound = 600 + }, +/turf/simulated/floor/water/deep{ + outdoors = 0 + }, +/area/submap/geyser_1) +"g" = ( +/obj/random/turf/lava, +/obj/random/outcrop, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_1) (1,1,1) = {" -accbdca -cccbccc -ccebbcc -ebbfbbb -ccbbecd -ccgbccc -accbcca +a +c +c +e +c +c +a +"} +(2,1,1) = {" +c +c +c +b +c +c +c +"} +(3,1,1) = {" +c +c +e +b +b +g +c +"} +(4,1,1) = {" +b +b +b +f +b +b +b +"} +(5,1,1) = {" +d +c +b +b +e +c +c +"} +(6,1,1) = {" +c +c +c +b +c +c +c +"} +(7,1,1) = {" +a +c +c +b +d +c +a "} diff --git a/maps/expedition_vr/beach/submaps/Geyser2.dmm b/maps/expedition_vr/beach/submaps/Geyser2.dmm index 339736597f0..22015c5fed8 100644 --- a/maps/expedition_vr/beach/submaps/Geyser2.dmm +++ b/maps/expedition_vr/beach/submaps/Geyser2.dmm @@ -1,23 +1,144 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/obj/random/turf/lava,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"c" = (/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"d" = (/obj/structure/fence/corner{icon_state = "corner"; dir = 9},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"e" = (/obj/structure/fence{icon_state = "straight"; dir = 8},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"f" = (/obj/structure/fence/corner{icon_state = "corner"; dir = 5},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"g" = (/obj/structure/fence/cut/large,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"h" = (/mob/living/simple_mob/mechanical/viscerator,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"i" = (/obj/structure/fence,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"j" = (/obj/structure/fence/corner{icon_state = "corner"; dir = 10},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"k" = (/obj/structure/fence/door/locked,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"l" = (/obj/structure/fence/corner{icon_state = "corner"; dir = 6},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_2) -"m" = (/obj/effect/map_effect/interval/effect_emitter/steam,/obj/effect/map_effect/interval/effect_emitter/smoke/mist{interval_upper_bound = 600},/obj/effect/map_effect/interval/effect_emitter/smoke/bad{interval_lower_bound = 100; interval_upper_bound = 3000},/obj/effect/map_effect/interval/screen_shaker{interval_upper_bound = 600},/obj/random/humanoidremains,/obj/random/medical/lite,/turf/simulated/floor/water/deep{outdoors = 0},/area/submap/geyser_2) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/random/turf/lava, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"c" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"d" = ( +/obj/structure/fence/corner{ + icon_state = "corner"; + dir = 9 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"e" = ( +/obj/structure/fence{ + icon_state = "straight"; + dir = 8 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"f" = ( +/obj/structure/fence/corner{ + icon_state = "corner"; + dir = 5 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"g" = ( +/obj/structure/fence/cut/large, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"h" = ( +/mob/living/simple_mob/mechanical/viscerator, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"i" = ( +/obj/structure/fence, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"j" = ( +/obj/structure/fence/corner{ + icon_state = "corner"; + dir = 10 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"k" = ( +/obj/structure/fence/door/locked, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"l" = ( +/obj/structure/fence/corner{ + icon_state = "corner"; + dir = 6 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_2) +"m" = ( +/obj/effect/map_effect/interval/effect_emitter/steam, +/obj/effect/map_effect/interval/effect_emitter/smoke/mist{ + interval_upper_bound = 600 + }, +/obj/effect/map_effect/interval/effect_emitter/smoke/bad{ + interval_lower_bound = 100; + interval_upper_bound = 3000 + }, +/obj/effect/map_effect/interval/screen_shaker{ + interval_upper_bound = 600 + }, +/obj/random/humanoidremains, +/obj/random/medical/lite, +/turf/simulated/floor/water/deep{ + outdoors = 0 + }, +/area/submap/geyser_2) (1,1,1) = {" -abbcbba -bbbhbbb -bbdefbb -chgmihc -bbjklbb -bbbhbbb -abbcbba +a +b +b +c +b +b +a +"} +(2,1,1) = {" +b +b +b +h +b +b +b +"} +(3,1,1) = {" +b +b +d +g +j +b +b +"} +(4,1,1) = {" +c +h +e +m +k +h +c +"} +(5,1,1) = {" +b +b +f +i +l +b +b +"} +(6,1,1) = {" +b +b +b +h +b +b +b +"} +(7,1,1) = {" +a +b +b +c +b +b +a "} diff --git a/maps/expedition_vr/beach/submaps/Geyser3.dmm b/maps/expedition_vr/beach/submaps/Geyser3.dmm index 70047b220a8..a94320c2900 100644 --- a/maps/expedition_vr/beach/submaps/Geyser3.dmm +++ b/maps/expedition_vr/beach/submaps/Geyser3.dmm @@ -1,28 +1,174 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 9},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"c" = (/obj/structure/cliff/automatic,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"d" = (/obj/random/turf/lava,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"e" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 5},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"f" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 9},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"g" = (/turf/simulated/floor/lava,/area/submap/geyser_3) -"h" = (/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"i" = (/obj/structure/cliff/automatic/corner,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"j" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 8},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"k" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 4},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"l" = (/obj/effect/map_effect/interval/effect_emitter/steam,/obj/effect/map_effect/interval/effect_emitter/smoke/bad{interval_lower_bound = 100; interval_upper_bound = 3000},/obj/effect/map_effect/interval/screen_shaker{interval_upper_bound = 600},/obj/effect/map_effect/interval/effect_emitter/smoke/fire{interval_upper_bound = 1200},/turf/simulated/floor/lava,/area/submap/geyser_3) -"m" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 10},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"n" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 10},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"o" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 6},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"p" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 6},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"q" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 2},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) -"r" = (/obj/random/multiple/minevault,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/geyser_3) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 9 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"c" = ( +/obj/structure/cliff/automatic, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"d" = ( +/obj/random/turf/lava, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"e" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 5 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"f" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 9 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"g" = ( +/turf/simulated/floor/lava, +/area/submap/geyser_3) +"h" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"i" = ( +/obj/structure/cliff/automatic/corner, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"j" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 8 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"k" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 4 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"l" = ( +/obj/effect/map_effect/interval/effect_emitter/steam, +/obj/effect/map_effect/interval/effect_emitter/smoke/bad{ + interval_lower_bound = 100; + interval_upper_bound = 3000 + }, +/obj/effect/map_effect/interval/screen_shaker{ + interval_upper_bound = 600 + }, +/obj/effect/map_effect/interval/effect_emitter/smoke/fire{ + interval_upper_bound = 1200 + }, +/turf/simulated/floor/lava, +/area/submap/geyser_3) +"m" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 10 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"n" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 10 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"o" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 6 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"p" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 6 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"q" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 2 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) +"r" = ( +/obj/random/multiple/minevault, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/geyser_3) (1,1,1) = {" -abcdcea -bfghgie -jggrggk -jgglggk -jgggggk -mngggop -amqqqpa +a +b +j +j +j +m +a +"} +(2,1,1) = {" +b +f +g +g +g +n +m +"} +(3,1,1) = {" +c +g +g +g +g +g +q +"} +(4,1,1) = {" +d +h +r +l +g +g +q +"} +(5,1,1) = {" +c +g +g +g +g +g +q +"} +(6,1,1) = {" +e +i +g +g +g +o +p +"} +(7,1,1) = {" +a +e +k +k +k +p +a "} diff --git a/maps/expedition_vr/beach/submaps/Mineshaft1.dmm b/maps/expedition_vr/beach/submaps/Mineshaft1.dmm index de64c0272f0..45cfbc7b2ae 100644 --- a/maps/expedition_vr/beach/submaps/Mineshaft1.dmm +++ b/maps/expedition_vr/beach/submaps/Mineshaft1.dmm @@ -1,73 +1,903 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/cave/AMine1) -"c" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) -"d" = (/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/AMine1) -"e" = (/obj/machinery/light/small,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/AMine1) -"f" = (/turf/simulated/wall,/area/submap/cave/AMine1) -"g" = (/obj/machinery/space_heater,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"h" = (/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"i" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"j" = (/obj/structure/table/standard,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"k" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/light{ icon_state = "tube1"; dir = 1},/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"l" = (/obj/structure/table/standard,/obj/structure/bedsheetbin,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"m" = (/obj/machinery/door/airlock,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"n" = (/obj/item/weapon/ore/gold,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) -"o" = (/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) -"p" = (/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/obj/item/weapon/ore/gold,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) -"q" = (/obj/structure/table/standard,/obj/item/device/flashlight/lamp,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"r" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/obj/machinery/light,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"s" = (/obj/structure/window/reinforced/full,/turf/simulated/wall,/area/submap/cave/AMine1) -"t" = (/obj/machinery/light{ icon_state = "tube1"; dir = 4},/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"u" = (/obj/structure/table/standard,/obj/machinery/cell_charger,/turf/simulated/floor,/area/submap/cave/AMine1) -"v" = (/obj/structure/table/standard,/obj/item/weapon/cell/high,/obj/item/weapon/cell/high,/turf/simulated/floor,/area/submap/cave/AMine1) -"w" = (/obj/structure/loot_pile/maint/trash,/turf/simulated/floor,/area/submap/cave/AMine1) -"x" = (/turf/simulated/floor,/area/submap/cave/AMine1) -"y" = (/obj/machinery/power/apc{operating = 0; pixel_x = 31},/turf/simulated/floor,/area/submap/cave/AMine1) -"z" = (/obj/structure/ore_box,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) -"A" = (/obj/machinery/light/small{dir = 1},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) -"B" = (/obj/structure/closet/crate/trashcart,/turf/simulated/floor,/area/submap/cave/AMine1) -"C" = (/obj/structure/closet/crate/engineering,/turf/simulated/floor,/area/submap/cave/AMine1) -"D" = (/obj/machinery/light,/obj/machinery/space_heater,/turf/simulated/floor,/area/submap/cave/AMine1) -"E" = (/obj/machinery/space_heater,/turf/simulated/floor,/area/submap/cave/AMine1) -"F" = (/obj/structure/closet/secure_closet/engineering_welding,/turf/simulated/floor,/area/submap/cave/AMine1) -"G" = (/obj/structure/table/rack,/obj/item/weapon/pickaxe/drill,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"H" = (/obj/machinery/vending/cola,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"I" = (/obj/machinery/vending/snack,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"J" = (/obj/machinery/washing_machine,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"K" = (/obj/structure/ore_box,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/AMine1) -"L" = (/obj/machinery/light{ icon_state = "tube1"; dir = 8},/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"M" = (/obj/item/weapon/stool,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"N" = (/obj/machinery/light/small{brightness_color = "#DA0205"; brightness_power = 1; brightness_range = 5; dir = 8},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) -"O" = (/obj/machinery/light/small{dir = 4; pixel_y = 0},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/AMine1) -"P" = (/obj/structure/table/standard,/obj/item/pizzabox,/turf/simulated/floor/tiled,/area/submap/cave/AMine1) -"Q" = (/obj/machinery/door/airlock,/turf/simulated/floor,/area/submap/cave/AMine1) -"R" = (/obj/machinery/light{ icon_state = "tube1"; dir = 1},/turf/simulated/floor,/area/submap/cave/AMine1) -"S" = (/obj/machinery/light/small,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/AMine1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"c" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"d" = ( +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/AMine1) +"e" = ( +/obj/machinery/light/small, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/AMine1) +"f" = ( +/turf/simulated/wall, +/area/submap/cave/AMine1) +"g" = ( +/obj/machinery/space_heater, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"h" = ( +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"i" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"j" = ( +/obj/structure/table/standard, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"k" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/light{ + icon_state = "tube1"; + dir = 1 + }, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"l" = ( +/obj/structure/table/standard, +/obj/structure/bedsheetbin, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"m" = ( +/obj/machinery/door/airlock, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"n" = ( +/obj/item/weapon/ore/gold, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"o" = ( +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"p" = ( +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/obj/item/weapon/ore/gold, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"q" = ( +/obj/structure/table/standard, +/obj/item/device/flashlight/lamp, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"r" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/obj/machinery/light, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"s" = ( +/obj/structure/window/reinforced/full, +/turf/simulated/wall, +/area/submap/cave/AMine1) +"t" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 4 + }, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"u" = ( +/obj/structure/table/standard, +/obj/machinery/cell_charger, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"v" = ( +/obj/structure/table/standard, +/obj/item/weapon/cell/high, +/obj/item/weapon/cell/high, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"w" = ( +/obj/structure/loot_pile/maint/trash, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"x" = ( +/turf/simulated/floor, +/area/submap/cave/AMine1) +"y" = ( +/obj/machinery/power/apc{ + operating = 0; + pixel_x = 31 + }, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"z" = ( +/obj/structure/ore_box, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"A" = ( +/obj/machinery/light/small{ + dir = 1 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"B" = ( +/obj/structure/closet/crate/trashcart, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"C" = ( +/obj/structure/closet/crate/engineering, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"D" = ( +/obj/machinery/light, +/obj/machinery/space_heater, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"E" = ( +/obj/machinery/space_heater, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"F" = ( +/obj/structure/closet/secure_closet/engineering_welding, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"G" = ( +/obj/structure/table/rack, +/obj/item/weapon/pickaxe/drill, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"H" = ( +/obj/machinery/vending/cola, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"I" = ( +/obj/machinery/vending/snack, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"J" = ( +/obj/machinery/washing_machine, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"K" = ( +/obj/structure/ore_box, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/AMine1) +"L" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 8 + }, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"M" = ( +/obj/item/weapon/stool, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"N" = ( +/obj/machinery/light/small{ + brightness_color = "#DA0205"; + brightness_power = 1; + brightness_range = 5; + dir = 8 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) +"O" = ( +/obj/machinery/light/small{ + dir = 4; + pixel_y = 0 + }, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/AMine1) +"P" = ( +/obj/structure/table/standard, +/obj/item/pizzabox, +/turf/simulated/floor/tiled, +/area/submap/cave/AMine1) +"Q" = ( +/obj/machinery/door/airlock, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"R" = ( +/obj/machinery/light{ + icon_state = "tube1"; + dir = 1 + }, +/turf/simulated/floor, +/area/submap/cave/AMine1) +"S" = ( +/obj/machinery/light/small, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/AMine1) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaa -abbbbbbbbbbbbbcccccccccca -abbbbbbbbbbbcddedddddedda -abbbbbbbbbbbbdffffffffffa -abbbcccbbbbbbdfghfijklifa -abcccccbbbbbbdfhhmhhhhhfa -abcccccnopbbbdfhhfiqrjifa -abccccccccbbbdshtfffffffa -abccccccccbbbdshhfuvvwxfa -abccccccccbbbdshhmxxxxxfa -abcccccccccbbdshhfxxxxyfa -abccccccccczAdshhfBCDEFfa -abbccccccccccdfgtfffffffa -abbccccccccccdfGhfgHIhJfa -abbbcccccccccKfGhfhhhhhfa -abbbccccccccddffhfLMMMtfa -abbbbNccccccOfffhfhjjPhfa -abbbbcccccccdQRQhQhMMMhfa -abbbbbbbccccdfffffffffffa -abbbbbbbbcccddddddddddbba -abbbbbbbbbcccccccccccbbba -abbbbbbbbbbccccccScbbbbba -abbbbbbbbbbbcccccbbbbbbba -abbbbbbbbbbbcccccbbbbbbba -aaaaaaaaaaaaaaaaaaaaaaaaa +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +"} +(3,1,1) = {" +a +b +b +b +b +c +c +c +c +c +c +c +b +b +b +b +b +b +b +b +b +b +b +b +a +"} +(4,1,1) = {" +a +b +b +b +b +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +b +b +b +b +a +"} +(5,1,1) = {" +a +b +b +b +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +b +b +a +"} +(6,1,1) = {" +a +b +b +b +c +c +c +c +c +c +c +c +c +c +c +c +N +c +b +b +b +b +b +b +a +"} +(7,1,1) = {" +a +b +b +b +c +c +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +a +"} +(8,1,1) = {" +a +b +b +b +b +b +n +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +b +a +"} +(9,1,1) = {" +a +b +b +b +b +b +o +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +b +a +"} +(10,1,1) = {" +a +b +b +b +b +b +p +c +c +c +c +c +c +c +c +c +c +c +c +c +b +b +b +b +a +"} +(11,1,1) = {" +a +b +b +b +b +b +b +b +b +b +c +c +c +c +c +c +c +c +c +c +c +b +b +b +a +"} +(12,1,1) = {" +a +b +b +b +b +b +b +b +b +b +b +z +c +c +c +c +c +c +c +c +c +c +b +b +a +"} +(13,1,1) = {" +a +b +c +b +b +b +b +b +b +b +b +A +c +c +c +d +O +d +d +d +c +c +c +c +a +"} +(14,1,1) = {" +a +b +d +d +d +d +d +d +d +d +d +d +d +d +K +d +f +Q +f +d +c +c +c +c +a +"} +(15,1,1) = {" +a +c +d +f +f +f +f +s +s +s +s +s +f +f +f +f +f +R +f +d +c +c +c +c +a +"} +(16,1,1) = {" +a +c +e +f +g +h +h +h +h +h +h +h +g +G +G +f +f +Q +f +d +c +c +c +c +a +"} +(17,1,1) = {" +a +c +d +f +h +h +h +t +h +h +h +h +t +h +h +h +h +h +f +d +c +c +c +c +a +"} +(18,1,1) = {" +a +c +d +f +f +m +f +f +f +m +f +f +f +f +f +f +f +Q +f +d +c +S +b +b +a +"} +(19,1,1) = {" +a +c +d +f +i +h +i +f +u +x +x +B +f +g +h +L +h +h +f +d +c +c +b +b +a +"} +(20,1,1) = {" +a +c +d +f +j +h +q +f +v +x +x +C +f +H +h +M +j +M +f +d +c +b +b +b +a +"} +(21,1,1) = {" +a +c +d +f +k +h +r +f +v +x +x +D +f +I +h +M +j +M +f +d +c +b +b +b +a +"} +(22,1,1) = {" +a +c +e +f +l +h +j +f +w +x +x +E +f +h +h +M +P +M +f +d +b +b +b +b +a +"} +(23,1,1) = {" +a +c +d +f +i +h +i +f +x +x +y +F +f +J +h +t +h +h +f +b +b +b +b +b +a +"} +(24,1,1) = {" +a +c +d +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +b +b +b +b +b +a +"} +(25,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/Scave1.dmm b/maps/expedition_vr/beach/submaps/Scave1.dmm index 0d06ce55940..4aba16fdcec 100644 --- a/maps/expedition_vr/beach/submaps/Scave1.dmm +++ b/maps/expedition_vr/beach/submaps/Scave1.dmm @@ -1,47 +1,942 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/cave/Scave1) -"c" = (/obj/effect/spider/stickyweb,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"d" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"e" = (/obj/effect/spider/spiderling/frost,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"f" = (/obj/item/weapon/spacecash/c100,/obj/item/weapon/spacecash/c100,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"g" = (/obj/random/mob/spider/mutant,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"h" = (/obj/item/weapon/spacecash/c100,/obj/item/weapon/spacecash/c100,/obj/item/weapon/spacecash/c100,/obj/effect/decal/remains,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"i" = (/obj/random/mob/spider,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"j" = (/obj/item/weapon/grenade/spawnergrenade/spider,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"k" = (/obj/random/toolbox,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"l" = (/obj/effect/decal/mecha_wreckage/ripley,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"m" = (/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"n" = (/obj/item/device/flashlight,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"o" = (/mob/living/simple_mob/animal/giant_spider/frost,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"p" = (/obj/effect/spider/stickyweb,/obj/effect/spider/stickyweb,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) -"q" = (/obj/effect/decal/remains,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/Scave1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"c" = ( +/obj/effect/spider/stickyweb, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"d" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"e" = ( +/obj/effect/spider/spiderling/frost, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"f" = ( +/obj/item/weapon/spacecash/c100, +/obj/item/weapon/spacecash/c100, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"g" = ( +/obj/random/mob/spider/mutant, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"h" = ( +/obj/item/weapon/spacecash/c100, +/obj/item/weapon/spacecash/c100, +/obj/item/weapon/spacecash/c100, +/obj/effect/decal/remains, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"i" = ( +/obj/random/mob/spider, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"j" = ( +/obj/item/weapon/grenade/spawnergrenade/spider, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"k" = ( +/obj/random/toolbox, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"l" = ( +/obj/effect/decal/mecha_wreckage/ripley, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"m" = ( +/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"n" = ( +/obj/item/device/flashlight, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"o" = ( +/mob/living/simple_mob/animal/giant_spider/frost, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"p" = ( +/obj/effect/spider/stickyweb, +/obj/effect/spider/stickyweb, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) +"q" = ( +/obj/effect/decal/remains, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/Scave1) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaabbaaaaaaaaaaaaaaaaaaaaaaa -aabbbbbbaabbbbbaaaaaaabbbbbaaa -abbbbbbbbbbbbbbbbbbbbbbbbbbaaa -aabbbbbbcbbbbbbbbbbbbbbbdbbbaa -aabbbbdeddbbbcccbbbbbdddeddbaa -aadbbfddddcbbdedbbbbbdgddddbaa -aadbbhfbbiddddddbccedddbdedbba -aabbbbbbbddcdddddddddddbjgbbaa -aabbbbbbdddbbbkcddddddbbbbbbaa -aabbbbbcdddbbbbbbcddddcbbbbaaa -aabbbbbcddcbbbbbbbdiddcbbbaaaa -aabbbbbbgdcbbbbbbbddddcbbbaaaa -aabbbbbbdddbbbbbblddddcbbbaaaa -aabbbbbbdcdbbbbbbmddgdcbbbaaaa -aabbbbbbdddbbbbbbcddddcbbbaaaa -aadbbbbbdddbbbbbbbccdddbbbaaaa -aandbbbbddbbbbbbbbbocddbbbaaaa -aaddbbbbdddbbbbbbbbbbddbbdaaaa -aadddpddedddbbbbbbbbdedbbdaaaa -aaddppcdddgddcbcdddddcbbbdaaaa -aaqdbbbbbdddddddddddcbbbbdaaaa -aabbbbbbbbcdddcdddddcbbbbbaaaa -aabbbbbbbbbbbbbbbgbbbbbbbbaaaa -aabbbbbbbbbbbbbbbbbbbbbbbbaaaa -aaaaabbbbabbbbbbbaabbbbbbaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -"} \ No newline at end of file +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(3,1,1) = {" +a +a +b +b +b +b +d +d +b +b +b +b +b +b +b +b +d +n +d +d +d +q +b +b +b +a +a +"} +(4,1,1) = {" +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +d +d +d +d +b +b +b +a +a +"} +(5,1,1) = {" +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +d +p +b +b +b +b +a +a +"} +(6,1,1) = {" +a +b +b +b +b +b +f +h +b +b +b +b +b +b +b +b +b +b +b +p +p +b +b +b +b +b +a +"} +(7,1,1) = {" +a +b +b +b +b +d +d +f +b +b +b +b +b +b +b +b +b +b +b +d +c +b +b +b +b +b +a +"} +(8,1,1) = {" +a +a +b +b +b +e +d +b +b +b +c +c +b +b +b +b +b +b +b +d +d +b +b +b +b +b +a +"} +(9,1,1) = {" +a +a +a +b +c +d +d +b +b +d +d +d +g +d +d +d +d +d +d +e +d +b +b +b +b +b +a +"} +(10,1,1) = {" +a +a +a +b +b +d +d +i +d +d +d +d +d +d +c +d +d +d +d +d +d +d +b +b +b +a +a +"} +(11,1,1) = {" +a +a +b +b +b +b +c +d +d +d +d +c +c +d +d +d +d +b +d +d +g +d +c +b +b +b +a +"} +(12,1,1) = {" +a +a +b +b +b +b +b +d +c +b +b +b +b +b +b +b +b +b +b +d +d +d +d +b +b +b +a +"} +(13,1,1) = {" +a +a +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +a +"} +(14,1,1) = {" +a +a +b +b +b +c +d +d +d +b +b +b +b +b +b +b +b +b +b +b +c +d +d +b +b +b +a +"} +(15,1,1) = {" +a +a +b +b +b +c +e +d +d +k +b +b +b +b +b +b +b +b +b +b +b +d +c +b +b +b +a +"} +(16,1,1) = {" +a +a +a +b +b +c +d +d +d +c +b +b +b +b +b +b +b +b +b +b +c +d +d +b +b +b +a +"} +(17,1,1) = {" +a +a +a +b +b +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +d +d +d +b +b +b +a +"} +(18,1,1) = {" +a +a +a +b +b +b +b +c +d +d +c +b +b +l +m +c +b +b +b +b +d +d +d +g +b +a +a +"} +(19,1,1) = {" +a +a +a +b +b +b +b +c +d +d +d +d +d +d +d +d +c +b +b +b +d +d +d +b +b +a +a +"} +(20,1,1) = {" +a +a +a +b +b +b +b +e +d +d +d +i +d +d +d +d +c +o +b +b +d +d +d +b +b +b +a +"} +(21,1,1) = {" +a +a +a +b +b +b +b +d +d +d +d +d +d +d +g +d +d +c +b +d +d +c +c +b +b +b +a +"} +(22,1,1) = {" +a +a +a +b +b +d +d +d +d +d +d +d +d +d +d +d +d +d +d +e +c +b +b +b +b +b +a +"} +(23,1,1) = {" +a +a +b +b +b +d +g +d +d +b +c +c +c +c +c +c +d +d +d +d +b +b +b +b +b +b +a +"} +(24,1,1) = {" +a +a +b +b +b +d +d +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +"} +(25,1,1) = {" +a +a +b +b +d +e +d +d +j +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +b +a +"} +(26,1,1) = {" +a +a +b +b +b +d +d +e +g +b +b +b +b +b +b +b +b +b +d +d +d +d +b +b +b +a +a +"} +(27,1,1) = {" +a +a +b +b +b +d +d +d +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(28,1,1) = {" +a +a +a +a +b +b +b +b +b +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(29,1,1) = {" +a +a +a +a +a +a +a +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(30,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/expedition_vr/beach/submaps/SupplyDrop1.dmm b/maps/expedition_vr/beach/submaps/SupplyDrop1.dmm index cbc92c28d8e..e38e20010f8 100644 --- a/maps/expedition_vr/beach/submaps/SupplyDrop1.dmm +++ b/maps/expedition_vr/beach/submaps/SupplyDrop1.dmm @@ -1,23 +1,177 @@ -"a" = (/turf/simulated/mineral/cave,/area/submap/cave/SupplyDrop1) -"b" = (/turf/template_noop,/area/template_noop) -"c" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/SupplyDrop1) -"d" = (/turf/simulated/wall/titanium,/area/submap/cave/SupplyDrop1) -"e" = (/obj/structure/droppod_door{dir = 1},/turf/simulated/wall/titanium,/area/submap/cave/SupplyDrop1) -"f" = (/turf/simulated/floor/reinforced,/area/submap/cave/SupplyDrop1) -"g" = (/obj/structure/droppod_door{dir = 8},/turf/simulated/wall/titanium,/area/submap/cave/SupplyDrop1) -"h" = (/obj/structure/closet/crate,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/gun/energy/stunrevolver,/obj/item/weapon/storage/box/flare,/obj/item/stack/marker_beacon/ten,/obj/item/weapon/cell/device/weapon,/obj/item/weapon/cell/device/weapon,/obj/item/trash/tastybread,/obj/item/trash/tastybread,/obj/item/trash/sosjerky,/obj/item/trash/sosjerky,/obj/item/trash/liquidfood,/obj/item/trash/liquidfood,/obj/item/weapon/flame/lighter/random,/obj/item/device/gps,/turf/simulated/floor/reinforced,/area/submap/cave/SupplyDrop1) -"i" = (/obj/structure/droppod_door{dir = 4},/turf/simulated/wall/titanium,/area/submap/cave/SupplyDrop1) -"j" = (/obj/structure/droppod_door,/turf/simulated/wall/titanium,/area/submap/cave/SupplyDrop1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/cave, +/area/submap/cave/SupplyDrop1) +"b" = ( +/turf/template_noop, +/area/template_noop) +"c" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/SupplyDrop1) +"d" = ( +/turf/simulated/wall/titanium, +/area/submap/cave/SupplyDrop1) +"e" = ( +/obj/structure/droppod_door{ + dir = 1 + }, +/turf/simulated/wall/titanium, +/area/submap/cave/SupplyDrop1) +"f" = ( +/turf/simulated/floor/reinforced, +/area/submap/cave/SupplyDrop1) +"g" = ( +/obj/structure/droppod_door{ + dir = 8 + }, +/turf/simulated/wall/titanium, +/area/submap/cave/SupplyDrop1) +"h" = ( +/obj/structure/closet/crate, +/obj/item/weapon/gun/energy/stunrevolver, +/obj/item/weapon/gun/energy/stunrevolver, +/obj/item/weapon/storage/box/flare, +/obj/item/stack/marker_beacon/ten, +/obj/item/weapon/cell/device/weapon, +/obj/item/weapon/cell/device/weapon, +/obj/item/trash/tastybread, +/obj/item/trash/tastybread, +/obj/item/trash/sosjerky, +/obj/item/trash/sosjerky, +/obj/item/trash/liquidfood, +/obj/item/trash/liquidfood, +/obj/item/weapon/flame/lighter/random, +/obj/item/device/gps, +/turf/simulated/floor/reinforced, +/area/submap/cave/SupplyDrop1) +"i" = ( +/obj/structure/droppod_door{ + dir = 4 + }, +/turf/simulated/wall/titanium, +/area/submap/cave/SupplyDrop1) +"j" = ( +/obj/structure/droppod_door, +/turf/simulated/wall/titanium, +/area/submap/cave/SupplyDrop1) (1,1,1) = {" -aabbbccccb -aacccaaccb -acccccaccb -acccdedccb -cccddfddcc -cccgfhficc -bccddfddac -bbcadjdcac -bbaaacccac -bbcccccccc +a +a +a +a +c +c +b +b +b +b +"} +(2,1,1) = {" +a +a +c +c +c +c +c +b +b +b +"} +(3,1,1) = {" +b +c +c +c +c +c +c +c +a +c +"} +(4,1,1) = {" +b +c +c +c +d +g +d +a +a +c +"} +(5,1,1) = {" +b +c +c +d +d +f +d +d +a +c +"} +(6,1,1) = {" +c +a +c +e +f +h +f +j +c +c +"} +(7,1,1) = {" +c +a +a +d +d +f +d +d +c +c +"} +(8,1,1) = {" +c +c +c +c +d +i +d +c +c +c +"} +(9,1,1) = {" +c +c +c +c +c +c +a +a +a +c +"} +(10,1,1) = {" +b +b +b +b +c +c +c +c +c +c "} diff --git a/maps/expedition_vr/beach/submaps/crashed_ufo.dmm b/maps/expedition_vr/beach/submaps/crashed_ufo.dmm index a93d593f392..4ba1a0d87df 100644 --- a/maps/expedition_vr/beach/submaps/crashed_ufo.dmm +++ b/maps/expedition_vr/beach/submaps/crashed_ufo.dmm @@ -1,112 +1,1645 @@ -"aa" = (/turf/template_noop,/area/template_noop) -"ab" = (/turf/simulated/shuttle/floor/alienplating/external,/area/submap/cave/crashed_ufo) -"ac" = (/turf/simulated/shuttle/wall/alien,/area/submap/cave/crashed_ufo) -"ad" = (/obj/structure/closet/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"ae" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"af" = (/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"ag" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"ah" = (/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"ai" = (/obj/machinery/porta_turret/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aj" = (/obj/structure/loot_pile/surface/alien/engineering,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"ak" = (/obj/structure/prop/alien/computer,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"al" = (/obj/item/weapon/tool/wrench/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"am" = (/obj/structure/bed/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"an" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"ao" = (/obj/structure/table/alien,/obj/item/clothing/head/helmet/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"ap" = (/obj/structure/prop/alien/power,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aq" = (/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"ar" = (/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]"},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"as" = (/turf/simulated/shuttle/wall/alien/hard_corner,/area/submap/cave/crashed_ufo) -"at" = (/obj/structure/prop/alien/computer,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"au" = (/obj/structure/table/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"av" = (/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]"},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aw" = (/obj/structure/loot_pile/surface/alien/security,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"ax" = (/obj/structure/prop/alien/computer{dir = 8},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"ay" = (/obj/structure/prop/alien/computer{ icon_state = "console-c"; dir = 4},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"az" = (/obj/machinery/door/airlock/alien/locked{welded = 1},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aA" = (/obj/structure/bed/alien,/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aB" = (/obj/item/weapon/tool/screwdriver/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aC" = (/obj/item/weapon/tool/wirecutters/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aD" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aE" = (/obj/item/device/multitool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aF" = (/obj/structure/prop/alien/computer/camera/flipped{ icon_state = "camera_flipped"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aG" = (/obj/structure/prop/alien/computer/camera{ icon_state = "camera"; dir = 8},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aH" = (/obj/machinery/porta_turret/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aI" = (/obj/machinery/door/airlock/alien/locked{p_open = 1},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aJ" = (/obj/effect/decal/remains/robot,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aK" = (/obj/item/weapon/tool/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) -"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/poi,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aO" = (/obj/structure/prop/alien/computer{ 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) -"aQ" = (/obj/structure/table/alien,/obj/item/weapon/weldingtool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aR" = (/obj/structure/bed/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aS" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aT" = (/obj/structure/closet/alien,/obj/item/weapon/paper/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aU" = (/obj/structure/bed/alien,/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aV" = (/obj/structure/loot_pile/surface/alien/end,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"aW" = (/obj/structure/table/alien,/obj/item/weapon/surgical/circular_saw/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aX" = (/obj/structure/table/alien,/obj/item/weapon/surgical/FixOVein/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aY" = (/obj/structure/table/alien,/obj/item/weapon/surgical/scalpel/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"aZ" = (/obj/item/weapon/surgical/hemostat/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"ba" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"bb" = (/obj/effect/decal/remains/lizard,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"bc" = (/obj/structure/prop/alien/dispenser,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"bd" = (/obj/structure/table/alien,/obj/item/weapon/surgical/bone_clamp/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"be" = (/obj/structure/loot_pile/surface/alien/medical,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bf" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"bg" = (/obj/structure/prop/alien/dispenser,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bh" = (/obj/effect/decal/remains/mouse,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo) -"bi" = (/obj/structure/closet/alien,/obj/item/prop/alien/junk,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bj" = (/obj/machinery/porta_turret/alien/destroyed{ icon_state = "destroyed_target_prism"; dir = 6},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bk" = (/obj/item/weapon/cell/device/weapon/empty,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bl" = (/obj/machinery/porta_turret/alien/destroyed{ icon_state = "destroyed_target_prism"; dir = 10},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bm" = (/obj/item/weapon/gun/energy/retro/empty,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bn" = (/obj/item/device/gps{gps_tag = "COMDOM1"},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bo" = (/obj/item/weapon/reagent_containers/hypospray/autoinjector/used,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bp" = (/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/burn,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bq" = (/obj/effect/decal/remains/human{desc = "They look like human remains. Based on the equipment you saw nearby when you walked in, they were some kind of command person, and a poor one at that."},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"br" = (/obj/item/clothing/gloves/yellow,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bs" = (/obj/item/weapon/storage/belt/utility/full,/obj/item/device/multitool,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bt" = (/obj/machinery/door/airlock/alien/public,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bu" = (/obj/item/clothing/suit/storage/hooded/wintercoat/captain,/obj/item/clothing/shoes/boots/winter/command,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo) -"bv" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/template_noop) +"ab" = ( +/turf/simulated/shuttle/floor/alienplating/external, +/area/submap/cave/crashed_ufo) +"ac" = ( +/turf/simulated/shuttle/wall/alien, +/area/submap/cave/crashed_ufo) +"ad" = ( +/obj/structure/closet/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"ae" = ( +/obj/structure/closet/alien, +/obj/item/prop/alien/junk, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"af" = ( +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"ag" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"ah" = ( +/obj/effect/decal/remains/xeno, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"ai" = ( +/obj/machinery/porta_turret/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aj" = ( +/obj/structure/loot_pile/surface/alien/engineering, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"ak" = ( +/obj/structure/prop/alien/computer, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"al" = ( +/obj/item/weapon/tool/wrench/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"am" = ( +/obj/structure/bed/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"an" = ( +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"ao" = ( +/obj/structure/table/alien, +/obj/item/clothing/head/helmet/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"ap" = ( +/obj/structure/prop/alien/power, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aq" = ( +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"ar" = ( +/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]" + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"as" = ( +/turf/simulated/shuttle/wall/alien/hard_corner, +/area/submap/cave/crashed_ufo) +"at" = ( +/obj/structure/prop/alien/computer, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"au" = ( +/obj/structure/table/alien, +/obj/item/prop/alien/junk, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"av" = ( +/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]" + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aw" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"ax" = ( +/obj/structure/prop/alien/computer{ + dir = 8 + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"ay" = ( +/obj/structure/prop/alien/computer{ + icon_state = "console-c"; + dir = 4 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"az" = ( +/obj/machinery/door/airlock/alien/locked{ + welded = 1 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aA" = ( +/obj/structure/bed/alien, +/obj/effect/decal/remains/xeno, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aB" = ( +/obj/item/weapon/tool/screwdriver/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aC" = ( +/obj/item/weapon/tool/wirecutters/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aD" = ( +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aE" = ( +/obj/item/device/multitool/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aF" = ( +/obj/structure/prop/alien/computer/camera/flipped{ + icon_state = "camera_flipped"; + dir = 4 + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aG" = ( +/obj/structure/prop/alien/computer/camera{ + icon_state = "camera"; + dir = 8 + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aH" = ( +/obj/machinery/porta_turret/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aI" = ( +/obj/machinery/door/airlock/alien/locked{ + p_open = 1 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aJ" = ( +/obj/effect/decal/remains/robot, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aK" = ( +/obj/item/weapon/tool/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) +"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/poi, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aO" = ( +/obj/structure/prop/alien/computer{ + 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) +"aQ" = ( +/obj/structure/table/alien, +/obj/item/weapon/weldingtool/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aR" = ( +/obj/structure/bed/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aS" = ( +/obj/structure/prop/alien/computer/camera, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aT" = ( +/obj/structure/closet/alien, +/obj/item/weapon/paper/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aU" = ( +/obj/structure/bed/alien, +/obj/effect/decal/remains/xeno, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aV" = ( +/obj/structure/loot_pile/surface/alien/end, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"aW" = ( +/obj/structure/table/alien, +/obj/item/weapon/surgical/circular_saw/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aX" = ( +/obj/structure/table/alien, +/obj/item/weapon/surgical/FixOVein/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aY" = ( +/obj/structure/table/alien, +/obj/item/weapon/surgical/scalpel/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"aZ" = ( +/obj/item/weapon/surgical/hemostat/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"ba" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"bb" = ( +/obj/effect/decal/remains/lizard, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"bc" = ( +/obj/structure/prop/alien/dispenser, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"bd" = ( +/obj/structure/table/alien, +/obj/item/weapon/surgical/bone_clamp/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"be" = ( +/obj/structure/loot_pile/surface/alien/medical, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bf" = ( +/obj/structure/closet/alien, +/obj/item/prop/alien/junk, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"bg" = ( +/obj/structure/prop/alien/dispenser, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bh" = ( +/obj/effect/decal/remains/mouse, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo) +"bi" = ( +/obj/structure/closet/alien, +/obj/item/prop/alien/junk, +/obj/item/prop/alien/junk, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bj" = ( +/obj/machinery/porta_turret/alien/destroyed{ + icon_state = "destroyed_target_prism"; + dir = 6 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bk" = ( +/obj/item/weapon/cell/device/weapon/empty, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bl" = ( +/obj/machinery/porta_turret/alien/destroyed{ + icon_state = "destroyed_target_prism"; + dir = 10 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bm" = ( +/obj/item/weapon/gun/energy/retro/empty, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bn" = ( +/obj/item/device/gps{ + gps_tag = "COMDOM1" + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bo" = ( +/obj/item/weapon/reagent_containers/hypospray/autoinjector/used, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bp" = ( +/obj/item/weapon/reagent_containers/hypospray/autoinjector/biginjector/burn, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bq" = ( +/obj/effect/decal/remains/human{ + desc = "They look like human remains. Based on the equipment you saw nearby when you walked in, they were some kind of command person, and a poor one at that." + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"br" = ( +/obj/item/clothing/gloves/yellow, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bs" = ( +/obj/item/weapon/storage/belt/utility/full, +/obj/item/device/multitool, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bt" = ( +/obj/machinery/door/airlock/alien/public, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bu" = ( +/obj/item/clothing/suit/storage/hooded/wintercoat/captain, +/obj/item/clothing/shoes/boots/winter/command, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo) +"bv" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaabababababababababaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaababababacacacacacacacababababaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabababacacacacadadaeadadacacacacabababaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaababacacacafagafafafahafafafagafacacacababaaaaaaaaaaaaaa -aaaaaaaaaaaaababacacafafafacafafafafafafafacafafafacacababaaaaaaaaaaaa -aaaaaaaaaaababacacafafacacacacaiafafafaiacacacacafafacacababaaaaaaaaaa -aaaaaaaaababacacafafacacajakacacafafalacacamahacacafafacacababaaaaaaaa -aaaaaaababacacafafacacaiafafanacacafacacaoafahaeacacafafacacababaaaaaa -aaaaaaabacacafafacacapafafaqanarasagasacacagacacacacacafafacacabaaaaaa -aaaaababacafafacacapafafaqaqaqafasafasaiaqaqatauauacacacafafacababaaaa -aaaaabacacafacacaiafafaqaqaqafafagafagafafaqaqaqavacaeacacafacacabaaaa -aaaaabacafafacajafafaqaqaqafafajasafasawafafaqaqaxacafahacafafacabaaaa -aaababacagacacayafaqaqaqafafadacasazasacawafafaqaqagafaAacacagacababaa -aaabacacafafacacananaqaBaCadacacatafatacacawafafaqacaDacacafafacacabaa -aaabacadafafaiacacaDaEahajacacaFaqafaqaGacacawafaHacacacaiafafaeacabaa -aaabacadafafafafacasasaIasacaqaqaqaJaqaqaqacasagasasacafafafaKadacabaa -aaabacaeafaLafafafagafafafacaiaqaMaNaraqaiacafafafagafafafafafadacabaa -aaabacaeafafafafacasasagasacaOaqaPahaQaqaxacasagasasacahafafafaeacabaa -aaabacadafafaiacacatacaqaRacacaqaqaqaqaqacacaSaqaqaTacacaiafafadacabaa -aaabacacafafacacaqaqacaqaqaUacacaiaVaiacacaWaqaqaqacacacacafafacacabaa -aaababacagacacaXaqaUasacaqaqaRacacacacacaYaHaqaqasacaZacacacagacababaa -aaaaabacafafacavaqaqbaaqaqaqaqaUasafasaFaqaqaqaqbaaqbbaqacafafacabaaaa -aaaaabacacafacacbcbdasaiaqacaqaqagafagaqaqaqaqaqasacaqacacafacacabaaaa -aaaaababacafafacacacacasagasacacasafasaqaqasbaasacacacacafafacababaaaa -aaaaaaabacacafafacacacbeafafafbeasagasbfacacaqacacacacafafacacabaaaaaa -aaaaaaababacacafafacacbgafafbeacacafacacacaqbhaqacacafafacacababaaaaaa -aaaaaaaaababacacafafacacbibeacacafafafacacacaqacacafafacacababaaaaaaaa -aaaaaaaaaaababacacafafacacacacbjbkafafblacacacacafafacacababaaaaaaaaaa -aaaaaaaaaaaaababacacafafafasafafafbmbnbobpasafafafacacababaaaaaaaaaaaa -aaaaaaaaaaaaaaababacacacafagafbkafafbqbrbsagafacacacababaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaabababacacasacafasbtasbuacasacacabababaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaababababacasasafasacacababababaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaabvbvbvabababasbtasabababbvbvbvaaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaabvbvbvbvbvbvbvbvbvbvbvbvbvbvbvaaaaaaaaaaaaaaaaaaaa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(2,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(3,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ac +ac +ac +ac +ac +ac +ac +ab +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(4,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ac +ac +ac +ac +ad +ad +ae +ae +ad +ac +ac +ac +ac +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +"} +(5,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +ab +ab +ac +ac +ac +af +ag +af +af +af +af +af +af +af +ag +af +ac +ac +ac +ab +ab +aa +aa +aa +aa +aa +aa +aa +"} +(6,1,1) = {" +aa +aa +aa +aa +aa +aa +ab +ab +ac +ac +af +af +af +ac +af +af +af +aL +af +af +af +ac +af +af +af +ac +ac +ab +ab +aa +aa +aa +aa +aa +aa +"} +(7,1,1) = {" +aa +aa +aa +aa +aa +ab +ab +ac +ac +af +af +ac +ac +ac +ac +ai +af +af +af +ai +ac +ac +ac +ac +af +af +ac +ac +ab +ab +aa +aa +aa +aa +aa +"} +(8,1,1) = {" +aa +aa +aa +aa +ab +ab +ac +ac +af +af +ac +ac +aj +ay +ac +ac +af +af +af +ac +ac +aX +av +ac +ac +af +af +ac +ac +ab +ab +aa +aa +aa +aa +"} +(9,1,1) = {" +aa +aa +aa +ab +ab +ac +ac +af +af +ac +ac +ai +af +af +an +ac +ac +af +ac +ac +aq +aq +aq +bc +ac +ac +af +af +ac +ac +ab +ab +aa +aa +aa +"} +(10,1,1) = {" +aa +aa +aa +ab +ac +ac +af +af +ac +ac +ap +af +af +aq +an +aD +as +ag +as +at +aq +aU +aq +bd +ac +ac +ac +af +af +ac +ac +ab +aa +aa +aa +"} +(11,1,1) = {" +aa +aa +ab +ab +ac +af +af +ac +ac +ap +af +af +aq +aq +aq +aE +as +af +as +ac +ac +as +ba +as +ac +ac +ac +ac +af +af +ac +ab +ab +bv +bv +"} +(12,1,1) = {" +aa +aa +ab +ac +ac +af +ac +ac +ai +af +af +aq +aq +aq +aB +ah +aI +af +ag +aq +aq +ac +aq +ai +as +be +bg +ac +ac +af +ac +ac +ab +bv +bv +"} +(13,1,1) = {" +aa +aa +ab +ac +af +af +ac +aj +af +af +aq +aq +aq +af +aC +aj +as +af +as +aR +aq +aq +aq +aq +ag +af +af +bi +ac +af +af +ac +ab +bv +bv +"} +(14,1,1) = {" +aa +ab +ab +ac +ag +ac +ac +ak +af +aq +aq +aq +af +af +ad +ac +ac +ac +ac +ac +aU +aq +aq +ac +as +af +af +be +ac +as +ag +as +ab +ab +bv +"} +(15,1,1) = {" +aa +ab +ac +ac +af +af +ac +ac +an +an +aq +af +af +ad +ac +ac +aq +ai +aO +ac +ac +aR +aq +aq +ac +af +be +ac +ac +af +af +ac +ac +ab +bv +"} +(16,1,1) = {" +aa +ab +ac +ad +af +af +ai +ac +ac +ar +af +af +aj +ac +ac +aF +aq +aq +aq +aq +ac +ac +aU +aq +ac +be +ac +ac +bj +af +bk +af +as +ab +bv +"} +(17,1,1) = {" +aa +ab +ac +ad +af +af +af +af +ac +as +as +ag +as +as +at +aq +aq +aM +aP +aq +ai +ac +as +ag +as +as +ac +af +bk +af +af +as +as +as +bv +"} +(18,1,1) = {" +aa +ab +ac +ae +ah +af +af +af +af +ag +af +af +af +az +af +af +aJ +aN +ah +aq +aV +ac +af +af +af +ag +af +af +af +bm +af +bt +af +bt +bv +"} +(19,1,1) = {" +aa +ab +ac +ad +af +af +af +al +ac +as +as +ag +as +as +at +aq +aq +ar +aQ +aq +ai +ac +as +ag +as +as +ac +af +af +bn +bq +as +as +as +bv +"} +(20,1,1) = {" +aa +ab +ac +ad +af +af +ai +ac +ac +ac +ai +af +aw +ac +ac +aG +aq +aq +aq +aq +ac +ac +aF +aq +aq +bf +ac +ac +bl +bo +br +bu +ac +ab +bv +"} +(21,1,1) = {" +aa +ab +ac +ac +af +af +ac +ac +ao +ac +aq +af +af +aw +ac +ac +aq +ai +ax +ac +ac +aY +aq +aq +aq +ac +ac +ac +ac +bp +bs +ac +ac +ab +bv +"} +(22,1,1) = {" +aa +ab +ab +ac +ag +ac +ac +am +af +ag +aq +aq +af +af +aw +ac +ac +ac +ac +ac +aW +aH +aq +aq +as +ac +aq +ac +ac +as +ag +as +ab +ab +bv +"} +(23,1,1) = {" +aa +aa +ab +ac +af +af +ac +ah +ah +ac +at +aq +aq +af +af +aw +as +af +as +aS +aq +aq +aq +aq +ba +aq +bh +aq +ac +af +af +ac +ab +bv +bv +"} +(24,1,1) = {" +aa +aa +ab +ac +ac +af +ac +ac +ae +ac +au +aq +aq +aq +af +af +ag +af +ag +aq +aq +aq +aq +aq +as +ac +aq +ac +ac +af +ac +ac +ab +bv +bv +"} +(25,1,1) = {" +aa +aa +ab +ab +ac +af +af +ac +ac +ac +au +av +ax +aq +aq +aH +as +af +as +aq +aq +as +ba +as +ac +ac +ac +ac +af +af +ac +ab +ab +bv +bv +"} +(26,1,1) = {" +aa +aa +aa +ab +ac +ac +af +af +ac +ac +ac +ac +ac +ag +ac +ac +as +ag +as +aT +ac +ac +aq +ac +ac +ac +ac +af +af +ac +ac +ab +aa +aa +aa +"} +(27,1,1) = {" +aa +aa +aa +ab +ab +ac +ac +af +af +ac +ac +ae +af +af +aD +ac +ac +af +ac +ac +ac +aZ +bb +aq +ac +ac +af +af +ac +ac +ab +ab +aa +aa +aa +"} +(28,1,1) = {" +aa +aa +aa +aa +ab +ab +ac +ac +af +af +ac +ac +ah +aA +ac +ac +af +af +ah +ac +ac +ac +aq +ac +ac +af +af +ac +ac +ab +ab +aa +aa +aa +aa +"} +(29,1,1) = {" +aa +aa +aa +aa +aa +ab +ab +ac +ac +af +af +ac +ac +ac +ac +ai +af +af +af +ai +ac +ac +ac +ac +af +af +ac +ac +ab +ab +aa +aa +aa +aa +aa +"} +(30,1,1) = {" +aa +aa +aa +aa +aa +aa +ab +ab +ac +ac +af +af +af +ac +af +af +af +af +af +af +af +ac +af +af +af +ac +ac +ab +ab +aa +aa +aa +aa +aa +aa +"} +(31,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +ab +ab +ac +ac +ac +af +ag +af +af +aK +af +af +af +af +ag +af +ac +ac +ac +ab +ab +aa +aa +aa +aa +aa +aa +aa +"} +(32,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ac +ac +ac +ac +ae +ad +ad +ae +ad +ac +ac +ac +ac +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +"} +(33,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ac +ac +ac +ac +ac +ac +ac +ab +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(34,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(35,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa "} diff --git a/maps/expedition_vr/beach/submaps/crashed_ufo_frigate.dmm b/maps/expedition_vr/beach/submaps/crashed_ufo_frigate.dmm index 7a750b1456f..a2f60e1ef63 100644 --- a/maps/expedition_vr/beach/submaps/crashed_ufo_frigate.dmm +++ b/maps/expedition_vr/beach/submaps/crashed_ufo_frigate.dmm @@ -1,154 +1,2132 @@ -"aa" = (/turf/template_noop,/area/template_noop) -"ab" = (/turf/simulated/shuttle/wall/alien,/area/submap/cave/crashed_ufo_frigate) -"ac" = (/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"ad" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"ae" = (/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"af" = (/mob/living/simple_mob/animal/space/alien/drone,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"ag" = (/obj/machinery/porta_turret/alien{faction = "xeno"},/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"ah" = (/obj/structure/table/alien,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"ai" = (/obj/machinery/artifact,/obj/effect/alien/weeds/node,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aj" = (/obj/random/outcrop,/turf/simulated/floor/outdoors/ice,/area/template_noop) -"ak" = (/obj/machinery/porta_turret/alien{faction = "xeno"},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"al" = (/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"am" = (/obj/structure/window/phoronreinforced,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"an" = (/obj/structure/window/phoronreinforced,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"ao" = (/obj/structure/loot_pile/surface/alien/security,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"ap" = (/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"aq" = (/obj/structure/prop/alien/pod/open,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"ar" = (/obj/effect/alien/weeds/node,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"as" = (/obj/structure/prop/alien/pod/open,/obj/random/tech_supply/component,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"at" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"au" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"av" = (/obj/structure/loot_pile/surface/alien/engineering,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"aw" = (/obj/structure/prop/alien/pod/open,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"ax" = (/turf/simulated/floor/outdoors/ice,/area/template_noop) -"ay" = (/obj/structure/loot_pile/surface/bones,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"az" = (/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aA" = (/obj/effect/alien/weeds/node,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aB" = (/obj/structure/loot_pile/surface/alien/medical,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aC" = (/obj/structure/loot_pile/surface/alien/security,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"aD" = (/obj/structure/table/alien,/obj/random/tech_supply/component,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"aE" = (/obj/structure/prop/alien/pod/open,/obj/random/tech_supply/component,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"aF" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aG" = (/obj/machinery/vr_sleeper/alien/random_replicant,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aH" = (/obj/structure/prop/alien/pod,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aI" = (/obj/structure/loot_pile/surface/alien/engineering,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aJ" = (/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aK" = (/obj/structure/table/alien,/obj/random/tech_supply/component,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aL" = (/obj/structure/table/alien,/obj/item/clothing/under/psysuit,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aM" = (/obj/structure/prop/alien/computer/camera,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aN" = (/obj/structure/prop/alien/computer/camera/flipped,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aO" = (/obj/structure/simple_door/resin,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aP" = (/obj/structure/prop/alien/power,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aQ" = (/obj/effect/alien/weeds/node,/mob/living/simple_mob/animal/space/alien/drone,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aR" = (/obj/effect/alien/weeds/node,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"aS" = (/obj/structure/table/alien,/obj/random/tool/alien,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"aT" = (/obj/structure/loot_pile/surface/alien/security,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"aU" = (/obj/machinery/replicator,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aV" = (/obj/structure/closet/alien,/obj/random/unidentified_medicine/drug_den,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aW" = (/obj/effect/decal/remains/xeno,/obj/item/clothing/under/psysuit,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aX" = (/obj/structure/prop/alien/computer/camera/flipped{icon_state = "camera_flipped"; dir = 4},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aY" = (/obj/structure/prop/alien/computer/camera{icon_state = "camera"; dir = 8},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"aZ" = (/obj/machinery/porta_turret/alien/destroyed,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"ba" = (/obj/structure/closet/alien,/obj/random/unidentified_medicine/scientific,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bb" = (/obj/structure/closet/alien,/obj/random/unidentified_medicine/nanites,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"bc" = (/obj/structure/closet/alien,/obj/random/unidentified_medicine/fresh_medicine,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bd" = (/obj/structure/closet/alien,/obj/random/unidentified_medicine/viral,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"be" = (/obj/machinery/door/blast/puzzle,/obj/machinery/door/airlock/alien/locked,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bf" = (/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]"},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bg" = (/obj/structure/prop/lock/projectile,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"bh" = (/obj/structure/closet/alien,/obj/random/unidentified_medicine/old_medicine,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"bi" = (/obj/structure/prop/alien/dispenser,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bj" = (/obj/effect/decal/remains/xeno,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bk" = (/mob/living/simple_mob/animal/space/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bl" = (/obj/effect/decal/remains/xeno,/obj/item/clothing/under/psysuit,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"bm" = (/obj/structure/table/alien,/obj/item/weapon/paper/alien,/obj/item/weapon/paper/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bn" = (/obj/structure/foamedmetal,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bo" = (/obj/machinery/porta_turret/alien{faction = "xeno"},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bp" = (/obj/structure/foamedmetal,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bq" = (/obj/machinery/implantchair,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"br" = (/obj/structure/prop/alien/computer{icon_state = "console-c"; dir = 8},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bs" = (/obj/effect/alien/weeds/node,/mob/living/simple_mob/animal/space/alien/sentinel/praetorian,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bt" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bu" = (/obj/structure/loot_pile/surface/drone,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bv" = (/obj/item/weapon/surgical/bone_clamp/alien,/obj/structure/closet/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bw" = (/obj/structure/prop/alien/computer,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bx" = (/obj/effect/decal/remains/xeno,/obj/item/clothing/accessory/medal/dungeon/alien_ufo{desc = "It vaguely like a star. It looks like something an alien admiral might've worn. Probably."; name = "alien admiral's medal"},/obj/item/weapon/telecube/precursor/mated/zone,/obj/item/clothing/head/helmet/alien/tank,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"by" = (/obj/structure/loot_pile/mecha/gygax/dark,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bz" = (/obj/structure/mopbucket,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bA" = (/obj/item/brokenbug,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"bB" = (/mob/living/simple_mob/animal/space/alien/sentinel,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bC" = (/obj/structure/prop/alien/computer/camera/flipped{icon_state = "camera_flipped"; dir = 4},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bD" = (/obj/structure/prop/alien/computer/camera{icon_state = "camera"; dir = 8},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bE" = (/obj/structure/loot_pile/maint/boxfort,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bF" = (/obj/structure/prop/blackbox/xenofrigate,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bG" = (/obj/random/outcrop,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"bH" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bI" = (/obj/structure/table/alien,/obj/structure/loot_pile/surface/alien/medical,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bJ" = (/obj/structure/window/phoronreinforced{icon_state = "phoronrwindow"; dir = 8},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bK" = (/obj/structure/table/alien,/obj/item/prop/alien/junk,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bL" = (/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_frigate) -"bM" = (/obj/structure/window/phoronreinforced{dir = 4},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bN" = (/obj/structure/table/alien,/obj/structure/window/phoronreinforced{dir = 4},/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]"},/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bO" = (/obj/structure/table/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bP" = (/obj/structure/table/alien,/obj/item/weapon/weldingtool/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bQ" = (/obj/structure/table/alien,/obj/structure/window/phoronreinforced{dir = 4},/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]"},/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bR" = (/obj/structure/table/alien,/obj/structure/foamedmetal,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bS" = (/obj/structure/closet/alien,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bT" = (/obj/structure/window/phoronreinforced{icon_state = "phoronrwindow"; dir = 8},/obj/structure/window/phoronreinforced,/turf/simulated/shuttle/floor/alienplating,/area/submap/cave/crashed_ufo_frigate) -"bU" = (/obj/structure/window/phoronreinforced,/obj/structure/window/phoronreinforced{dir = 4},/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"bV" = (/obj/structure/table/alien,/obj/structure/window/phoronreinforced,/obj/item/weapon/paper/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bW" = (/obj/structure/table/alien,/obj/structure/window/phoronreinforced{dir = 4},/obj/structure/window/phoronreinforced,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bX" = (/mob/living/simple_mob/animal/space/alien,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"bY" = (/obj/structure/foamedmetal,/obj/machinery/door/airlock/alien/locked,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"bZ" = (/obj/structure/foamedmetal,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"ca" = (/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]"},/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"cb" = (/obj/structure/prop/alien/power,/obj/structure/foamedmetal,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"cc" = (/obj/structure/loot_pile/surface/alien/end,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"cd" = (/obj/item/prop/alien/junk,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"ce" = (/obj/random/tech_supply/component,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"cf" = (/obj/random/tech_supply/component,/turf/simulated/floor/outdoors/ice,/area/submap/cave/crashed_ufo_frigate) -"cg" = (/obj/machinery/door/airlock/alien/public,/turf/simulated/shuttle/floor/alien,/area/submap/cave/crashed_ufo_frigate) -"ch" = (/turf/simulated/shuttle/wall/alien/hard_corner,/area/submap/cave/crashed_ufo_frigate) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/template_noop) +"ab" = ( +/turf/simulated/shuttle/wall/alien, +/area/submap/cave/crashed_ufo_frigate) +"ac" = ( +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"ad" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"af" = ( +/mob/living/simple_mob/animal/space/alien/drone, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"ag" = ( +/obj/machinery/porta_turret/alien{ + faction = "xeno" + }, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"ah" = ( +/obj/structure/table/alien, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"ai" = ( +/obj/machinery/artifact, +/obj/effect/alien/weeds/node, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aj" = ( +/obj/random/outcrop, +/turf/simulated/floor/outdoors/ice, +/area/template_noop) +"ak" = ( +/obj/machinery/porta_turret/alien{ + faction = "xeno" + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"al" = ( +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"am" = ( +/obj/structure/window/phoronreinforced, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"ao" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"ap" = ( +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"aq" = ( +/obj/structure/prop/alien/pod/open, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"ar" = ( +/obj/effect/alien/weeds/node, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"as" = ( +/obj/structure/prop/alien/pod/open, +/obj/random/tech_supply/component, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"at" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"au" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"av" = ( +/obj/structure/loot_pile/surface/alien/engineering, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"aw" = ( +/obj/structure/prop/alien/pod/open, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"ax" = ( +/turf/simulated/floor/outdoors/ice, +/area/template_noop) +"ay" = ( +/obj/structure/loot_pile/surface/bones, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"az" = ( +/obj/item/prop/alien/junk, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aA" = ( +/obj/effect/alien/weeds/node, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aB" = ( +/obj/structure/loot_pile/surface/alien/medical, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aC" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"aD" = ( +/obj/structure/table/alien, +/obj/random/tech_supply/component, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"aE" = ( +/obj/structure/prop/alien/pod/open, +/obj/random/tech_supply/component, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"aF" = ( +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aG" = ( +/obj/machinery/vr_sleeper/alien/random_replicant, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aH" = ( +/obj/structure/prop/alien/pod, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aI" = ( +/obj/structure/loot_pile/surface/alien/engineering, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aJ" = ( +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aK" = ( +/obj/structure/table/alien, +/obj/random/tech_supply/component, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aL" = ( +/obj/structure/table/alien, +/obj/item/clothing/under/psysuit, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aM" = ( +/obj/structure/prop/alien/computer/camera, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aN" = ( +/obj/structure/prop/alien/computer/camera/flipped, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aO" = ( +/obj/structure/simple_door/resin, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aP" = ( +/obj/structure/prop/alien/power, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aQ" = ( +/obj/effect/alien/weeds/node, +/mob/living/simple_mob/animal/space/alien/drone, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aR" = ( +/obj/effect/alien/weeds/node, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"aS" = ( +/obj/structure/table/alien, +/obj/random/tool/alien, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"aT" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"aU" = ( +/obj/machinery/replicator, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aV" = ( +/obj/structure/closet/alien, +/obj/random/unidentified_medicine/drug_den, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aW" = ( +/obj/effect/decal/remains/xeno, +/obj/item/clothing/under/psysuit, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aX" = ( +/obj/structure/prop/alien/computer/camera/flipped{ + icon_state = "camera_flipped"; + dir = 4 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aY" = ( +/obj/structure/prop/alien/computer/camera{ + icon_state = "camera"; + dir = 8 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"aZ" = ( +/obj/machinery/porta_turret/alien/destroyed, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"ba" = ( +/obj/structure/closet/alien, +/obj/random/unidentified_medicine/scientific, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bb" = ( +/obj/structure/closet/alien, +/obj/random/unidentified_medicine/nanites, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"bc" = ( +/obj/structure/closet/alien, +/obj/random/unidentified_medicine/fresh_medicine, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bd" = ( +/obj/structure/closet/alien, +/obj/random/unidentified_medicine/viral, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"be" = ( +/obj/machinery/door/blast/puzzle, +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bf" = ( +/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]" + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bg" = ( +/obj/structure/prop/lock/projectile, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"bh" = ( +/obj/structure/closet/alien, +/obj/random/unidentified_medicine/old_medicine, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"bi" = ( +/obj/structure/prop/alien/dispenser, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bj" = ( +/obj/effect/decal/remains/xeno, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bk" = ( +/mob/living/simple_mob/animal/space/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bl" = ( +/obj/effect/decal/remains/xeno, +/obj/item/clothing/under/psysuit, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"bm" = ( +/obj/structure/table/alien, +/obj/item/weapon/paper/alien, +/obj/item/weapon/paper/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bn" = ( +/obj/structure/foamedmetal, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bo" = ( +/obj/machinery/porta_turret/alien{ + faction = "xeno" + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bp" = ( +/obj/structure/foamedmetal, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bq" = ( +/obj/machinery/implantchair, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"br" = ( +/obj/structure/prop/alien/computer{ + icon_state = "console-c"; + dir = 8 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bs" = ( +/obj/effect/alien/weeds/node, +/mob/living/simple_mob/animal/space/alien/sentinel/praetorian, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bt" = ( +/obj/structure/loot_pile/maint/technical, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bu" = ( +/obj/structure/loot_pile/surface/drone, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bv" = ( +/obj/item/weapon/surgical/bone_clamp/alien, +/obj/structure/closet/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bw" = ( +/obj/structure/prop/alien/computer, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bx" = ( +/obj/effect/decal/remains/xeno, +/obj/item/clothing/accessory/medal/dungeon/alien_ufo{ + desc = "It vaguely like a star. It looks like something an alien admiral might've worn. Probably."; + name = "alien admiral's medal" + }, +/obj/item/weapon/telecube/precursor/mated/zone, +/obj/item/clothing/head/helmet/alien/tank, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"by" = ( +/obj/structure/loot_pile/mecha/gygax/dark, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bz" = ( +/obj/structure/mopbucket, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bA" = ( +/obj/item/brokenbug, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"bB" = ( +/mob/living/simple_mob/animal/space/alien/sentinel, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bC" = ( +/obj/structure/prop/alien/computer/camera/flipped{ + icon_state = "camera_flipped"; + dir = 4 + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bD" = ( +/obj/structure/prop/alien/computer/camera{ + icon_state = "camera"; + dir = 8 + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bE" = ( +/obj/structure/loot_pile/maint/boxfort, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bF" = ( +/obj/structure/prop/blackbox/xenofrigate, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bG" = ( +/obj/random/outcrop, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"bH" = ( +/obj/structure/loot_pile/maint/junk, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bI" = ( +/obj/structure/table/alien, +/obj/structure/loot_pile/surface/alien/medical, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bJ" = ( +/obj/structure/window/phoronreinforced{ + icon_state = "phoronrwindow"; + dir = 8 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bK" = ( +/obj/structure/table/alien, +/obj/item/prop/alien/junk, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bL" = ( +/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_frigate) +"bM" = ( +/obj/structure/window/phoronreinforced{ + dir = 4 + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bN" = ( +/obj/structure/table/alien, +/obj/structure/window/phoronreinforced{ + dir = 4 + }, +/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]" + }, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bO" = ( +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bP" = ( +/obj/structure/table/alien, +/obj/item/weapon/weldingtool/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bQ" = ( +/obj/structure/table/alien, +/obj/structure/window/phoronreinforced{ + dir = 4 + }, +/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]" + }, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bR" = ( +/obj/structure/table/alien, +/obj/structure/foamedmetal, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bS" = ( +/obj/structure/closet/alien, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bT" = ( +/obj/structure/window/phoronreinforced{ + icon_state = "phoronrwindow"; + dir = 8 + }, +/obj/structure/window/phoronreinforced, +/turf/simulated/shuttle/floor/alienplating, +/area/submap/cave/crashed_ufo_frigate) +"bU" = ( +/obj/structure/window/phoronreinforced, +/obj/structure/window/phoronreinforced{ + dir = 4 + }, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"bV" = ( +/obj/structure/table/alien, +/obj/structure/window/phoronreinforced, +/obj/item/weapon/paper/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bW" = ( +/obj/structure/table/alien, +/obj/structure/window/phoronreinforced{ + dir = 4 + }, +/obj/structure/window/phoronreinforced, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bX" = ( +/mob/living/simple_mob/animal/space/alien, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"bY" = ( +/obj/structure/foamedmetal, +/obj/machinery/door/airlock/alien/locked, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"bZ" = ( +/obj/structure/foamedmetal, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"ca" = ( +/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]" + }, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"cb" = ( +/obj/structure/prop/alien/power, +/obj/structure/foamedmetal, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"cc" = ( +/obj/structure/loot_pile/surface/alien/end, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"cd" = ( +/obj/item/prop/alien/junk, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"ce" = ( +/obj/random/tech_supply/component, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"cf" = ( +/obj/random/tech_supply/component, +/turf/simulated/floor/outdoors/ice, +/area/submap/cave/crashed_ufo_frigate) +"cg" = ( +/obj/machinery/door/airlock/alien/public, +/turf/simulated/shuttle/floor/alien, +/area/submap/cave/crashed_ufo_frigate) +"ch" = ( +/turf/simulated/shuttle/wall/alien/hard_corner, +/area/submap/cave/crashed_ufo_frigate) (1,1,1) = {" -aaaaaaaxbGaaaaaaaaaaaaaaaaaaaaabababababababaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa -aaaaaxaxadaxaxbGaaaaaaaaababababacaeacafaeababababaaaaaaajaxadaaaaadaxajaaaaaa -adbGadadadadaxaxaaaaabababagahababacaiacababacakabababaaaaadaxadadaxaxaaaaaaaa -aaaxaxadadadadaaaaababacalalahahabamamanabacacacacaoababaaaaadbGadadaaaaaaaaaa -aaaaaaadbGadaaaaababaoacacalapapchalalalchapapaqaracasababaaaaaaadadadaxaxadaa -aaaaadadadaaaaababaoacacapapapapatalapapauapapapavalacawababaaaaaaadadadaxajaa -aaadadaxaaaaababaoacayapapapalalchazacaAchaAaBapapaCacacawababaaaaaxadadadaaaa -aaaxaxaaaaababaoacalalapapahaDabababazababababawapapaEacacaBababaaaxadaaaaaaaa -adbGaxaaaaabacacalalapapacaFababaGabababaHabababaIapapaqaAacakabaaajaxaaaaaaaa -aaadaaaaababacacaFapapacacaFabaGacaGabaHalalaJacacacapapacacabababaaaxaaaaaaaa -aaadaaaaabakacacaKapapacacacababaJababawacacchabacaAapapacababaIabaaaaaaaaaaaa -aaaaaaababababaFaFapalalacacaJacacakabaLacaLabababacapapababaIacababaaaaaaaaaa -aaaaaaabaMaNabababalalacacacababaOababaLacaLababababchatchaFalacaPabaaaaaaaaaa -aaaaaaabaFacakacchauchaoacacabaeaQaeabaLacaLabababakapaRabaSalacaPabadaxaaaaaa -aaaaaaabaFacalalapalababaTalababaeabababawababaMaFacapapabahalacaPabadadaaaaaa -aaaaababaFalalapapapacababalaTabababakabababaUacaFacapapatacacababababadaxaaaa -aaaaabaVacapapapapacacakababababacacaWaAacababacacapapapabavababacacabadaxaaaa -aaaaabacapapapapacacacacabababaXacaFaFahalaYababchaRapacabababaZacacabadadadaa -adaaabbaapapacalbbalbcacbdabacacapalalalapapapapbeapacacaIabalalacapchaZadadaa -adaaabalapabababababababababapapapapapapapapapapchaFacbfababbgacapapatacadbAaa -adaaabbhalabbiawabbiapaFabapapaRbjbkacacacaparblabbmacaFabacacapapapchaZadadaa -axaaabalbnbobpacabbiapbqchapalalalaFaFaFacacapalabbfacbmabacapapapalabadadaxaa -axaaabalbnbnbnbrabbibsapatapalagabababababakapapabbtaAbuabalapapalalabadadaxaa -aaadababaFbnapbvababaFaFchapalababbwbxbwababapapabbyacbzabalalapacababadadaaaa -aaaaaaabaFapbBacaYababababapapabbCapapapbDabapapabbEbFbHabalalapacabadaxaaaaaa -aaaaaaabaFapapalalalalababapapabapapaRapapabapapabababababalapapalabadaaaaaaaa -axaaaaabbIaFapapbpalalabacalapbJapbKbLbfapbMapapacabacakbNapapalalabaaaaaaaaaa -axadaaababaFapbnbnacacabagalapbJbOaFapbPbObMapapakabacacbQapapalababaaaaaaaaaa -adbGadaaabbIbRbnapapbSabalalapbTapaRapapalbUapapacabacbVbWapacalabaaaaaaaaaaaa -aaaxaxaaababaFacapapbSababalaRapapapbXalalalaRacababacapapacakababaaaaaaaaaaaa -aaaaaxaaaaabbIaFapapapbSabalapapapapapapapapapacabacapapapacacabaaaaaaaaadadaa -aaaaaaaaaaabababchbYchabababbfbOapapapapapbObfabababchatchabababaaaaaaadbGadaa -aaadaaaaaaaaababbZbZbnapacababaFahalagarcaaFababacapapapacababaaaaaaadadadadaa -aaadaxajaaaaaaababcbbZapapalabababccabccabababacapapapaPababaaaaaaadadadadaaaa -aaadadaxaxbGaaaaababbZapapcdalalabababababacapapapapacababaaaaaaaxaxadadadadaa -aaaaadadadadadaaaaababaPacapapalalchapchceapapalcfaPababaaaaaabGadadadaxaxadaa -aaaaaabGaxaxadbGaaaaabababacapapapcgapcgapalalalabababaaaaaaadadadadadaxbGaaaa -aaaaaaaaaaaxaxadadaaaaaaababababakchaHchakababababaaaaaaadadaxaxbGaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaabababababababaaaaaaaaaabGadaaaaaaaaaaaaaaaaaaaa +aa +aa +ad +aa +aa +aa +aa +aa +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +ax +ax +aa +aa +aa +ax +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(2,1,1) = {" +aa +aa +bG +ax +aa +aa +ad +ax +bG +ad +ad +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +aa +aa +aa +ad +bG +ax +aa +aa +ad +ad +ad +aa +aa +aa +aa +"} +(3,1,1) = {" +aa +ax +ad +ax +aa +ad +ad +ax +ax +aa +aa +aa +aa +aa +aa +ab +ab +ab +ab +ab +ab +ab +ab +ab +aa +aa +aa +aa +ad +ax +ax +aa +aa +ax +ad +ad +aa +aa +aa +"} +(4,1,1) = {" +ax +ax +ad +ad +ad +ad +ax +aa +aa +aa +aa +ab +ab +ab +ab +ab +aV +ac +ba +al +bh +al +al +ab +ab +ab +ab +ab +aa +aa +aa +aa +aa +aj +ax +ad +bG +aa +aa +"} +(5,1,1) = {" +bG +ad +ad +ad +bG +ad +aa +aa +aa +ab +ab +ab +aM +aF +aF +aF +ac +ap +ap +ap +al +bn +bn +aF +aF +aF +bI +ab +ab +ab +aa +aa +aa +aa +ax +ad +ax +aa +aa +"} +(6,1,1) = {" +aa +ax +ad +ad +ad +aa +aa +ab +ab +ab +ak +ab +aN +ac +ac +al +ap +ap +ap +ab +ab +bo +bn +bn +ap +ap +aF +aF +bI +ab +ab +ab +aa +aa +bG +ad +ax +ax +aa +"} +(7,1,1) = {" +aa +ax +ax +ad +aa +aa +ab +ab +ac +ac +ac +ab +ab +ak +al +al +ap +ap +ac +ab +bi +bp +bn +ap +bB +ap +ap +ap +bR +aF +bI +ab +ab +aa +aa +ad +ad +ax +aa +"} +(8,1,1) = {" +aa +bG +ax +aa +aa +ab +ab +ao +ac +ac +ac +aF +ab +ac +al +ap +ap +ap +al +ab +aw +ac +br +bv +ac +al +ap +bn +bn +ac +aF +ab +ab +ab +aa +aa +bG +ad +aa +"} +(9,1,1) = {" +aa +aa +aa +aa +ab +ab +ao +ac +al +aF +aK +aF +ab +ch +ap +ap +ap +ac +bb +ab +ab +ab +ab +ab +aY +al +bp +bn +ap +ap +ap +ch +bZ +ab +ab +aa +aa +ad +aa +"} +(10,1,1) = {" +aa +aa +aa +ab +ab +ao +ac +al +al +ap +ap +ap +al +au +al +ap +ac +ac +al +ab +bi +bi +bi +ab +ab +al +al +ac +ap +ap +ap +bY +bZ +cb +ab +ab +aa +aa +aa +"} +(11,1,1) = {" +aa +aa +ab +ab +ao +ac +ay +al +ap +ap +ap +al +al +ch +ab +ac +ac +ac +bc +ab +ap +ap +bs +aF +ab +al +al +ac +bS +bS +ap +ch +bn +bZ +bZ +ab +ab +aa +aa +"} +(12,1,1) = {" +aa +aa +ab +ac +ac +ac +ap +ap +ap +ac +ac +al +ac +ao +ab +ab +ak +ac +ac +ab +aF +bq +ap +aF +ab +ab +ab +ab +ab +ab +bS +ab +ap +ap +ap +aP +ab +aa +aa +"} +(13,1,1) = {" +aa +ab +ab +al +ac +ap +ap +ap +ac +ac +ac +ac +ac +ac +aT +ab +ab +ab +bd +ab +ab +ch +at +ch +ab +ab +ac +ag +al +ab +ab +ab +ac +ap +ap +ac +ab +ab +aa +"} +(14,1,1) = {" +aa +ab +ag +al +al +ap +ap +ah +aF +aF +ac +ac +ac +ac +al +al +ab +ab +ab +ab +ap +ap +ap +ap +ap +ap +al +al +al +al +al +ab +ab +al +cd +ap +ac +ab +aa +"} +(15,1,1) = {" +aa +ab +ah +ah +ap +ap +al +aD +ab +ab +ab +aJ +ab +ab +ab +aT +ab +ab +ac +ap +ap +al +al +al +ap +ap +ap +ap +ap +aR +ap +bf +ab +ab +al +ap +ap +ab +aa +"} +(16,1,1) = {" +ab +ab +ab +ah +ap +ap +al +ab +ab +aG +ab +ac +ab +ac +ab +ab +ab +aX +ac +ap +aR +al +ag +ab +ab +ab +bJ +bJ +bT +ap +ap +bO +aF +ab +al +al +ap +ab +ab +"} +(17,1,1) = {" +ab +ac +ab +ab +ch +at +ch +ab +aG +ac +aJ +ac +aO +aQ +ac +ab +ac +ac +ap +ap +bj +al +ab +ab +bC +ap +ap +bO +ap +ap +ap +ap +ah +ab +ab +al +ap +ak +ab +"} +(18,1,1) = {" +ab +ac +ac +am +al +al +az +ab +ab +aG +ab +ak +ab +ac +ab +ab +ac +aF +al +ap +bk +aF +ab +bw +ap +ap +bK +aF +aR +ap +ap +ap +al +cc +ab +ch +cg +ch +ab +"} +(19,1,1) = {" +ab +ac +ai +am +al +ap +ac +az +ab +ab +ab +ab +ab +ab +ab +ak +aW +aF +al +ap +ac +aF +ab +bx +ap +aR +bL +ap +ap +bX +ap +ap +ag +ab +ab +ap +ap +aH +ab +"} +(20,1,1) = {" +ab +af +ac +am +al +ap +aA +ab +ab +aH +aw +aL +aL +aL +ab +ab +aA +ah +al +ap +ac +aF +ab +bw +ap +ap +bf +bP +ap +al +ap +ap +ar +cc +ab +ch +cg +ch +ab +"} +(21,1,1) = {" +ab +ac +ab +ab +ch +au +ch +ab +aH +al +ac +ac +ac +ac +aw +ab +ac +al +ap +ap +ac +ac +ab +ab +bD +ap +ap +bO +al +al +ap +ap +ca +ab +ab +ce +ap +ak +ab +"} +(22,1,1) = {" +ab +ab +ab +ac +ap +ap +aA +ab +ab +al +ac +aL +aL +aL +ab +ab +ab +aY +ap +ap +ap +ac +ak +ab +ab +ab +bM +bM +bU +al +ap +bO +aF +ab +ac +ap +al +ab +ab +"} +(23,1,1) = {" +aa +ab +ac +ac +ap +ap +aB +ab +ab +aJ +ch +ab +ab +ab +ab +aU +ab +ab +ap +ap +ar +ap +ap +ap +ap +ap +ap +ap +ap +aR +ap +bf +ab +ab +ap +ap +al +ab +aa +"} +(24,1,1) = {" +aa +ab +ak +ac +aq +ap +ap +aw +ab +ac +ab +ab +ab +ab +aM +ac +ac +ab +ap +ap +bl +al +ap +ap +ap +ap +ap +ap +ap +ac +ac +ab +ab +ac +ap +al +al +ab +aa +"} +(25,1,1) = {" +aa +ab +ab +ac +ar +av +ap +ap +aI +ac +ac +ab +ab +ab +aF +aF +ac +ch +be +ch +ab +ab +ab +ab +ab +ab +ac +ak +ac +ab +ab +ab +ac +ap +ap +cf +ab +ab +aa +"} +(26,1,1) = {" +aa +aa +ab +ao +ac +al +aC +ap +ap +ac +aA +ac +ab +ak +ac +ac +ap +aR +ap +aF +bm +bf +bt +by +bE +ab +ab +ab +ab +ab +ac +ab +ap +ap +ap +aP +ab +aa +aa +"} +(27,1,1) = {" +aa +aa +ab +ab +as +ac +ac +aE +ap +ap +ap +ap +ch +ap +ap +ap +ap +ap +ac +ac +ac +ac +aA +ac +bF +ab +ac +ac +ac +ac +ap +ch +ap +ap +ac +ab +ab +aa +aa +"} +(28,1,1) = {" +aa +aa +aa +ab +ab +aw +ac +ac +aq +ap +ap +ap +at +aR +ap +ap +ap +ac +ac +bf +aF +bm +bu +bz +bH +ab +ak +ac +bV +ap +ap +at +ap +aP +ab +ab +aa +aa +bG +"} +(29,1,1) = {" +aa +aj +aa +aa +ab +ab +aw +ac +aA +ac +ac +ab +ch +ab +ab +at +ab +ab +aI +ab +ab +ab +ab +ab +ab +ab +bN +bQ +bW +ap +ap +ch +ac +ab +ab +aa +aa +ad +ad +"} +(30,1,1) = {" +aa +ax +ad +aa +aa +ab +ab +aB +ac +ac +ab +ab +aF +aS +ah +ac +av +ab +ab +ab +ac +ac +al +al +al +al +ap +ap +ap +ac +ac +ab +ab +ab +aa +aa +aa +ad +aa +"} +(31,1,1) = {" +aa +ad +ax +ad +aa +aa +ab +ab +ak +ab +ab +aI +al +al +al +ac +ab +ab +al +bg +ac +ap +ap +al +al +ap +ap +ap +ac +ak +ac +ab +ab +aa +aa +aa +ad +ax +aa +"} +(32,1,1) = {" +aa +aa +ad +bG +aa +aa +aa +ab +ab +ab +aI +ac +ac +ac +ac +ab +ab +aZ +al +ac +ap +ap +ap +ap +ap +ap +al +al +al +ab +ab +ab +aa +aa +aa +bG +ad +ax +aa +"} +(33,1,1) = {" +aa +aa +ad +ad +ad +aa +aa +aa +aa +ab +ab +ab +aP +aP +aP +ab +ac +ac +ac +ap +ap +ap +al +ac +ac +al +al +ab +ab +ab +aa +aa +aa +aa +ax +ad +ad +bG +aa +"} +(34,1,1) = {" +aa +ad +ax +ad +ad +ad +ax +ax +aj +aa +aa +ab +ab +ab +ab +ab +ac +ac +ap +ap +ap +al +al +ab +ab +ab +ab +ab +aa +aa +aa +aa +aa +ad +ax +ad +ad +aa +aa +"} +(35,1,1) = {" +aa +ax +ax +aa +ad +ad +ad +ad +ax +ax +aa +aa +aa +ad +ad +ab +ab +ab +ch +at +ch +ab +ab +ab +ad +ad +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ad +aa +aa +"} +(36,1,1) = {" +aa +aj +aa +aa +ax +ad +ad +aa +aa +aa +aa +aa +aa +ax +ad +ad +ad +ad +aZ +ac +aZ +ad +ad +ad +ax +aa +aa +aa +aa +aa +aa +ad +ad +ad +ad +ax +ax +aa +aa +"} +(37,1,1) = {" +aa +aa +aa +aa +ax +ax +ad +aa +aa +aa +aa +aa +aa +aa +aa +ax +ax +ad +ad +ad +ad +ad +ad +ad +aa +aa +aa +aa +aa +aa +ad +bG +ad +ad +ad +ax +bG +aa +aa +"} +(38,1,1) = {" +aa +aa +aa +aa +ad +aj +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +ad +ad +bA +ad +ax +ax +aa +aa +aa +aa +aa +aa +aa +ad +ad +ad +aa +ad +ad +aa +aa +aa +"} +(39,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa "} diff --git a/maps/expedition_vr/beach/submaps/crashedcontainmentshuttle.dmm b/maps/expedition_vr/beach/submaps/crashedcontainmentshuttle.dmm index f9ccb02e439..ddc3096293c 100644 --- a/maps/expedition_vr/beach/submaps/crashedcontainmentshuttle.dmm +++ b/maps/expedition_vr/beach/submaps/crashedcontainmentshuttle.dmm @@ -34,7 +34,7 @@ /turf/simulated/mineral/floor/ignore_mapgen/cave, /area/submap/crashedcontainmentshuttle) "ai" = ( -/turf/simulated/floor/outdoors/rocks, +/turf/simulated/floor/outdoors/rocks/caves, /area/submap/crashedcontainmentshuttle) "aj" = ( /obj/item/weapon/material/shard, diff --git a/maps/expedition_vr/beach/submaps/crystal1.dmm b/maps/expedition_vr/beach/submaps/crystal1.dmm index ccf9c042cee..6ccbd2e56e5 100644 --- a/maps/expedition_vr/beach/submaps/crystal1.dmm +++ b/maps/expedition_vr/beach/submaps/crystal1.dmm @@ -1,15 +1,96 @@ -"a" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/cave/crystal1) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal1) -"c" = (/obj/machinery/crystal,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal1) -"d" = (/obj/item/weapon/ore/diamond,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/cave/crystal1) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal1) +"c" = ( +/obj/machinery/crystal, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal1) +"d" = ( +/obj/item/weapon/ore/diamond, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal1) (1,1,1) = {" -aaabbaaa -accbbcaa -acdbbdca -aacbbbda -aacbbbba -acbbbbba -abbbbbca -aaabbbaa +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +c +c +a +a +c +b +a +"} +(3,1,1) = {" +a +c +d +c +c +b +b +a +"} +(4,1,1) = {" +b +b +b +b +b +b +b +b +"} +(5,1,1) = {" +b +b +b +b +b +b +b +b +"} +(6,1,1) = {" +a +c +d +b +b +b +b +b +"} +(7,1,1) = {" +a +a +c +d +b +b +c +a +"} +(8,1,1) = {" +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/crystal2.dmm b/maps/expedition_vr/beach/submaps/crystal2.dmm index b1cd12ecc70..d5ef5a4a00d 100644 --- a/maps/expedition_vr/beach/submaps/crystal2.dmm +++ b/maps/expedition_vr/beach/submaps/crystal2.dmm @@ -1,22 +1,271 @@ -"a" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/cave/crystal2) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal2) -"c" = (/obj/machinery/crystal,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal2) -"d" = (/obj/item/weapon/ore/diamond,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal2) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/cave/crystal2) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal2) +"c" = ( +/obj/machinery/crystal, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal2) +"d" = ( +/obj/item/weapon/ore/diamond, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal2) (1,1,1) = {" -aaaaaaabbbaaaaa -aaaaaaabbbaaaaa -aaaaacbbbbcaaaa -aaaaabbbbbbcaaa -aaaacbbbbdbbaaa -aacbbbbbbbbbcaa -bbbbbdbacbbbbca -bbbbbbcaacbbbbb -aabbbcaaacbbdbb -aaabbcaacbbbbbb -aaabbbcacbbbcaa -aacbbbbbbbbcaaa -aaccabbbbaaaaaa -aaaaabbdbaaaaaa -aaaaabbbbaaaaaa +a +a +a +a +a +a +b +b +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +a +a +a +b +b +a +a +a +a +a +a +a +"} +(3,1,1) = {" +a +a +a +a +a +c +b +b +b +a +a +c +c +a +a +"} +(4,1,1) = {" +a +a +a +a +a +b +b +b +b +b +b +b +c +a +a +"} +(5,1,1) = {" +a +a +a +a +c +b +b +b +b +b +b +b +a +a +a +"} +(6,1,1) = {" +a +a +c +b +b +b +d +b +c +c +b +b +b +b +b +"} +(7,1,1) = {" +a +a +b +b +b +b +b +c +a +a +c +b +b +b +b +"} +(8,1,1) = {" +b +b +b +b +b +b +a +a +a +a +a +b +b +d +b +"} +(9,1,1) = {" +b +b +b +b +b +b +c +a +a +c +c +b +b +b +b +"} +(10,1,1) = {" +b +b +b +b +d +b +b +c +c +b +b +b +a +a +a +"} +(11,1,1) = {" +a +a +c +b +b +b +b +b +b +b +b +b +a +a +a +"} +(12,1,1) = {" +a +a +a +c +b +b +b +b +b +b +b +c +a +a +a +"} +(13,1,1) = {" +a +a +a +a +a +c +b +b +d +b +c +a +a +a +a +"} +(14,1,1) = {" +a +a +a +a +a +a +c +b +b +b +a +a +a +a +a +"} +(15,1,1) = {" +a +a +a +a +a +a +a +b +b +b +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/crystal3.dmm b/maps/expedition_vr/beach/submaps/crystal3.dmm index 16f16785fc8..b8fad2723c0 100644 --- a/maps/expedition_vr/beach/submaps/crystal3.dmm +++ b/maps/expedition_vr/beach/submaps/crystal3.dmm @@ -1,26 +1,399 @@ -"a" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/cave/crystal3) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal3) -"c" = (/turf/template_noop,/area/template_noop) -"d" = (/obj/machinery/crystal,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal3) -"e" = (/obj/item/weapon/ore/diamond,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/crystal3) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/cave/crystal3) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal3) +"c" = ( +/turf/template_noop, +/area/template_noop) +"d" = ( +/obj/machinery/crystal, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal3) +"e" = ( +/obj/item/weapon/ore/diamond, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/crystal3) (1,1,1) = {" -aaaaaaabbbaaaaacccc -aaaaabbbbbbbbaaaccc -aabbbbbbbbbbbbbaaac -bbbbbbaaaaadbbbbbac -bbbdaaaaaaaaaabbbac -bbbaaaaaaaaaaabbbac -bbbaaaadddaabbdbbac -bbbaaadebbdadbbbbac -bbbaadbbdedbbbbbbaa -bbbaadbdeedbbdbbbda -bbbaadbbddbbbbbbbbb -bbbaaadebbbbdbbbbbb -bbbaaaaddddbaadbbbb -bbbdaaaaaaaaaaabbba -bbbbdaaaaaaaadbbbaa -bbbbbbbbbbbbbbbbbaa -cccabbbbbbbbbbaaaaa -cccaaaaabbbbaaacccc +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +c +c +"} +(2,1,1) = {" +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +c +c +"} +(3,1,1) = {" +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +b +c +c +"} +(4,1,1) = {" +a +a +b +b +d +a +a +a +a +a +a +a +a +d +b +b +a +a +"} +(5,1,1) = {" +a +a +b +b +a +a +a +a +a +a +a +a +a +a +d +b +b +a +"} +(6,1,1) = {" +a +b +b +b +a +a +a +a +d +d +d +a +a +a +a +b +b +a +"} +(7,1,1) = {" +a +b +b +a +a +a +a +d +b +b +b +d +a +a +a +b +b +a +"} +(8,1,1) = {" +b +b +b +a +a +a +d +e +b +d +b +e +d +a +a +b +b +a +"} +(9,1,1) = {" +b +b +b +a +a +a +d +b +d +e +d +b +d +a +a +b +b +b +"} +(10,1,1) = {" +b +b +b +a +a +a +d +b +e +e +d +b +d +a +a +b +b +b +"} +(11,1,1) = {" +a +b +b +a +a +a +a +d +d +d +b +b +d +a +a +b +b +b +"} +(12,1,1) = {" +a +b +b +d +a +a +a +a +b +b +b +b +b +a +a +b +b +b +"} +(13,1,1) = {" +a +b +b +b +a +a +b +d +b +b +b +d +a +a +a +b +b +a +"} +(14,1,1) = {" +a +a +b +b +a +a +b +b +b +d +b +b +a +a +d +b +b +a +"} +(15,1,1) = {" +a +a +b +b +b +b +d +b +b +b +b +b +d +a +b +b +a +a +"} +(16,1,1) = {" +c +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +a +c +"} +(17,1,1) = {" +c +c +a +b +b +b +b +b +b +b +b +b +b +b +b +b +a +c +"} +(18,1,1) = {" +c +c +a +a +a +a +a +a +a +d +b +b +b +b +a +a +a +c +"} +(19,1,1) = {" +c +c +c +c +c +c +c +c +a +a +b +b +b +a +a +a +a +c "} diff --git a/maps/expedition_vr/beach/submaps/deadBeacon.dmm b/maps/expedition_vr/beach/submaps/deadBeacon.dmm index 5df9d12492e..0b01461d312 100644 --- a/maps/expedition_vr/beach/submaps/deadBeacon.dmm +++ b/maps/expedition_vr/beach/submaps/deadBeacon.dmm @@ -1,62 +1,656 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/deadBeacon) -"c" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/deadBeacon) -"d" = (/turf/simulated/wall/r_wall,/area/submap/cave/deadBeacon) -"e" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 1},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"f" = (/obj/structure/grille,/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"g" = (/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"h" = (/turf/simulated/floor/airless{icon_state = "asteroidplating2"},/area/submap/cave/deadBeacon) -"i" = (/obj/structure/grille/broken,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"j" = (/obj/structure/table/steel,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"k" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"l" = (/obj/item/weapon/material/shard,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"m" = (/obj/structure/table/steel,/obj/item/weapon/circuitboard/comm_server,/obj/machinery/light{dir = 8; status = 1},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"n" = (/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"o" = (/obj/item/weapon/paper/crumpled{info = "Sampatti Relay Sif-833
Decryption Key for 12-04-2488:
849B0022FBA920C244
Eyes Only.
The insider who knows all the secrets can bring down Lanka."; name = "Dusty Note"},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"p" = (/obj/structure/door_assembly/door_assembly_ext,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"q" = (/obj/item/stack/rods,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"r" = (/obj/machinery/telecomms/relay{active_power_usage = 1; broadcasting = 0; panel_open = 1},/obj/structure/cable{icon_state = "0-2"; pixel_y = 1; d2 = 2},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"s" = (/obj/machinery/telecomms/broadcaster{light_power = 0; on = 0},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"t" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"u" = (/obj/machinery/telecomms/receiver{light_power = 0; on = 0},/obj/structure/cable,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"v" = (/obj/item/weapon/circuitboard/broken,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"w" = (/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"x" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"y" = (/obj/effect/decal/remains/robot,/obj/effect/decal/cleanable/blood/oil,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"z" = (/obj/item/stack/cable_coil{amount = 1},/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"A" = (/obj/item/weapon/circuitboard/broken,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/deadBeacon) -"B" = (/obj/structure/grille/broken,/obj/structure/window/reinforced{dir = 4},/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"C" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"D" = (/obj/item/trash/cigbutt,/obj/item/weapon/tool/wrench,/obj/machinery/light,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"E" = (/obj/item/weapon/material/shard,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"F" = (/obj/machinery/recharge_station,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"G" = (/obj/structure/grille,/obj/structure/window/reinforced{dir = 4},/obj/structure/window/reinforced{dir = 8},/obj/structure/window/reinforced,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"H" = (/obj/machinery/door/airlock/external,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/cave/deadBeacon) -"I" = (/obj/machinery/access_button/airlock_interior{dir = 4},/turf/simulated/wall/r_wall,/area/submap/cave/deadBeacon) -"J" = (/obj/structure/grille/broken,/obj/item/stack/rods,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"K" = (/obj/structure/girder,/turf/simulated/floor/plating,/area/submap/cave/deadBeacon) -"L" = (/obj/structure/sign/warning/secure_area,/turf/simulated/wall/r_wall,/area/submap/cave/deadBeacon) -"M" = (/obj/structure/sign/warning/high_voltage,/turf/simulated/wall/r_wall,/area/submap/cave/deadBeacon) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/deadBeacon) +"c" = ( +/obj/structure/loot_pile/maint/junk, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/deadBeacon) +"d" = ( +/turf/simulated/wall/r_wall, +/area/submap/cave/deadBeacon) +"e" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 1 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"f" = ( +/obj/structure/grille, +/obj/structure/window/reinforced, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"g" = ( +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"h" = ( +/turf/simulated/floor/plating{ + icon_state = "asteroidplating2" + }, +/area/submap/cave/deadBeacon) +"i" = ( +/obj/structure/grille/broken, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"j" = ( +/obj/structure/table/steel, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"k" = ( +/obj/structure/loot_pile/maint/technical, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"l" = ( +/obj/item/weapon/material/shard, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"m" = ( +/obj/structure/table/steel, +/obj/item/weapon/circuitboard/comm_server, +/obj/machinery/light{ + dir = 8; + status = 1 + }, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"n" = ( +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"o" = ( +/obj/item/weapon/paper/crumpled{ + info = "Sampatti Relay Sif-833
Decryption Key for 12-04-2488:
849B0022FBA920C244
Eyes Only.
The insider who knows all the secrets can bring down Lanka."; + name = "Dusty Note" + }, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"p" = ( +/obj/structure/door_assembly/door_assembly_ext, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"q" = ( +/obj/item/stack/rods, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"r" = ( +/obj/machinery/telecomms/relay{ + active_power_usage = 1; + broadcasting = 0; + panel_open = 1 + }, +/obj/structure/cable{ + icon_state = "0-2"; + pixel_y = 1; + d2 = 2 + }, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"s" = ( +/obj/machinery/telecomms/broadcaster{ + light_power = 0; + on = 0 + }, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"t" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"u" = ( +/obj/machinery/telecomms/receiver{ + light_power = 0; + on = 0 + }, +/obj/structure/cable, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"v" = ( +/obj/item/weapon/circuitboard/broken, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"w" = ( +/obj/effect/decal/cleanable/blood/oil, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"x" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"y" = ( +/obj/effect/decal/remains/robot, +/obj/effect/decal/cleanable/blood/oil, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"z" = ( +/obj/item/stack/cable_coil{ + amount = 1 + }, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"A" = ( +/obj/item/weapon/circuitboard/broken, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/deadBeacon) +"B" = ( +/obj/structure/grille/broken, +/obj/structure/window/reinforced{ + dir = 4 + }, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"C" = ( +/obj/structure/loot_pile/maint/junk, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"D" = ( +/obj/item/trash/cigbutt, +/obj/item/weapon/tool/wrench, +/obj/machinery/light, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"E" = ( +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"F" = ( +/obj/machinery/recharge_station, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"G" = ( +/obj/structure/grille, +/obj/structure/window/reinforced{ + dir = 4 + }, +/obj/structure/window/reinforced{ + dir = 8 + }, +/obj/structure/window/reinforced, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"H" = ( +/obj/machinery/door/airlock/external, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/cave/deadBeacon) +"I" = ( +/obj/machinery/access_button/airlock_interior{ + dir = 4 + }, +/turf/simulated/wall/r_wall, +/area/submap/cave/deadBeacon) +"J" = ( +/obj/structure/grille/broken, +/obj/item/stack/rods, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"K" = ( +/obj/structure/girder, +/turf/simulated/floor/plating, +/area/submap/cave/deadBeacon) +"L" = ( +/obj/structure/sign/warning/secure_area, +/turf/simulated/wall/r_wall, +/area/submap/cave/deadBeacon) +"M" = ( +/obj/structure/sign/warning/high_voltage, +/turf/simulated/wall/r_wall, +/area/submap/cave/deadBeacon) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaa -aaaaaaaaaabbaaaaaaaa -aaaaaabbabbcbaaaaaaa -aaaaaadefgghidaaaaaa -aaaaaahjkgglhibaaaaa -aaaaahdmnoggggbaaaaa -aaaabnpqnrsgqtbaaaaa -aaaabngnnuvwnxaaaaaa -aaaabhdgynnzkxbaaaaa -aaaaAbBCDnnEFGbaaaaa -aaaaaadidHHIJdbaaaaa -aaaaaaabdgnKbbaaaaaa -aaaaaaaaLHHMaaaaaaaa -aaaaaaaabbbAaaaaaaaa -aaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaa -aaaaaaaaaaaaaaaaaaaa +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(3,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(4,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(5,1,1) = {" +a +a +a +a +a +a +b +b +b +A +a +a +a +a +a +a +a +a +a +a +"} +(6,1,1) = {" +a +a +a +a +a +h +n +n +h +b +a +a +a +a +a +a +a +a +a +a +"} +(7,1,1) = {" +a +a +b +d +h +d +p +g +d +B +d +a +a +a +a +a +a +a +a +a +"} +(8,1,1) = {" +a +a +b +e +j +m +q +n +g +C +i +b +a +a +a +a +a +a +a +a +"} +(9,1,1) = {" +a +a +a +f +k +n +n +n +y +D +d +d +L +b +a +a +a +a +a +a +"} +(10,1,1) = {" +a +a +b +g +g +o +r +u +n +n +H +g +H +b +a +a +a +a +a +a +"} +(11,1,1) = {" +a +b +b +g +g +g +s +v +n +n +H +n +H +b +a +a +a +a +a +a +"} +(12,1,1) = {" +a +b +c +h +l +g +g +w +z +E +I +K +M +A +a +a +a +a +a +a +"} +(13,1,1) = {" +a +a +b +i +h +g +q +n +k +F +J +b +a +a +a +a +a +a +a +a +"} +(14,1,1) = {" +a +a +a +d +i +g +t +x +x +G +d +b +a +a +a +a +a +a +a +a +"} +(15,1,1) = {" +a +a +a +a +b +b +b +a +b +b +b +a +a +a +a +a +a +a +a +a +"} +(16,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(17,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(18,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(19,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(20,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/deadly_rabbit_vr.dmm b/maps/expedition_vr/beach/submaps/deadly_rabbit_vr.dmm index edf10da6365..e039d912331 100644 --- a/maps/expedition_vr/beach/submaps/deadly_rabbit_vr.dmm +++ b/maps/expedition_vr/beach/submaps/deadly_rabbit_vr.dmm @@ -1,51 +1,581 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/obj/structure/loot_pile/surface/bones,/obj/effect/decal/cleanable/blood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"e" = (/mob/living/simple_mob/vore/rabbit/killer,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"g" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"h" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/template_noop) -"m" = (/obj/item/weapon/bone/skull,/obj/effect/decal/cleanable/blood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"n" = (/obj/item/clothing/suit/storage/hooded/knight/galahad,/obj/effect/decal/cleanable/blood,/obj/item/clothing/shoes/knight,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"q" = (/obj/effect/decal/cleanable/blood,/obj/item/weapon/bone,/obj/item/weapon/bone/skull,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"r" = (/obj/item/weapon/bone,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"s" = (/obj/item/weapon/bone/ribs,/obj/effect/decal/cleanable/blood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"t" = (/obj/effect/gibspawner/human,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"u" = (/obj/effect/decal/cleanable/blood,/obj/item/weapon/bone/skull,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"v" = (/obj/item/weapon/grenade/explosive/frag,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"y" = (/obj/item/weapon/bone,/obj/item/weapon/bone/ribs,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"A" = (/obj/effect/decal/cleanable/blood,/obj/item/weapon/bone,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"C" = (/obj/item/clothing/suit/storage/hooded/knight/lancelot,/obj/effect/decal/cleanable/blood,/obj/item/clothing/shoes/knight,/obj/item/clothing/shoes/knight/black,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"E" = (/obj/item/clothing/suit/armor/combat/crusader/bedevere,/obj/item/clothing/head/helmet/combat/bedevere,/obj/effect/decal/cleanable/blood,/obj/item/clothing/shoes/knight/black,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"F" = (/obj/item/weapon/bone,/obj/item/weapon/bone/skull,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"I" = (/obj/item/clothing/suit/storage/hooded/knight/robin,/obj/effect/decal/cleanable/blood/splatter,/obj/item/clothing/shoes/knight,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"J" = (/obj/effect/decal/cleanable/blood,/obj/item/weapon/bone/ribs,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"K" = (/obj/item/clothing/suit/armor/combat/crusader,/obj/item/clothing/head/helmet/combat/crusader,/obj/effect/decal/cleanable/blood,/obj/item/clothing/shoes/knight,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"L" = (/obj/structure/barricade/cutout/fukken_xeno,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"P" = (/obj/item/weapon/bone/skull,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"Q" = (/obj/item/weapon/bone,/obj/structure/loot_pile/surface/bones,/obj/effect/decal/cleanable/blood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"T" = (/obj/structure/barricade,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"U" = (/obj/item/weapon/bone/ribs,/obj/item/clothing/suit/storage/hooded/knight,/obj/item/weapon/bone/skull,/obj/effect/decal/cleanable/blood,/obj/item/clothing/shoes/knight/black,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"V" = (/obj/item/weapon/bone,/obj/effect/decal/cleanable/blood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"Y" = (/obj/effect/decal/cleanable/blood,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/structure/loot_pile/surface/bones, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"e" = ( +/mob/living/simple_mob/vore/rabbit/killer, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"g" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"h" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/template_noop) +"m" = ( +/obj/item/weapon/bone/skull, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"n" = ( +/obj/item/clothing/suit/storage/hooded/knight/galahad, +/obj/effect/decal/cleanable/blood, +/obj/item/clothing/shoes/knight, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"q" = ( +/obj/effect/decal/cleanable/blood, +/obj/item/weapon/bone, +/obj/item/weapon/bone/skull, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"r" = ( +/obj/item/weapon/bone, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"s" = ( +/obj/item/weapon/bone/ribs, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"t" = ( +/obj/effect/gibspawner/human, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"u" = ( +/obj/effect/decal/cleanable/blood, +/obj/item/weapon/bone/skull, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"v" = ( +/obj/item/weapon/grenade/explosive/frag, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"y" = ( +/obj/item/weapon/bone, +/obj/item/weapon/bone/ribs, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"A" = ( +/obj/effect/decal/cleanable/blood, +/obj/item/weapon/bone, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"C" = ( +/obj/item/clothing/suit/storage/hooded/knight/lancelot, +/obj/effect/decal/cleanable/blood, +/obj/item/clothing/shoes/knight, +/obj/item/clothing/shoes/knight/black, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"E" = ( +/obj/item/clothing/suit/armor/combat/crusader/bedevere, +/obj/item/clothing/head/helmet/combat/bedevere, +/obj/effect/decal/cleanable/blood, +/obj/item/clothing/shoes/knight/black, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"F" = ( +/obj/item/weapon/bone, +/obj/item/weapon/bone/skull, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"I" = ( +/obj/item/clothing/suit/storage/hooded/knight/robin, +/obj/effect/decal/cleanable/blood/splatter, +/obj/item/clothing/shoes/knight, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"J" = ( +/obj/effect/decal/cleanable/blood, +/obj/item/weapon/bone/ribs, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"K" = ( +/obj/item/clothing/suit/armor/combat/crusader, +/obj/item/clothing/head/helmet/combat/crusader, +/obj/effect/decal/cleanable/blood, +/obj/item/clothing/shoes/knight, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"L" = ( +/obj/structure/barricade/cutout/fukken_xeno, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"P" = ( +/obj/item/weapon/bone/skull, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"Q" = ( +/obj/item/weapon/bone, +/obj/structure/loot_pile/surface/bones, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"T" = ( +/obj/structure/barricade, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"U" = ( +/obj/item/weapon/bone/ribs, +/obj/item/clothing/suit/storage/hooded/knight, +/obj/item/weapon/bone/skull, +/obj/effect/decal/cleanable/blood, +/obj/item/clothing/shoes/knight/black, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"V" = ( +/obj/item/weapon/bone, +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"Y" = ( +/obj/effect/decal/cleanable/blood, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) (1,1,1) = {" -aahhhhhhhhhhhhhhhhaa -aahhhhhhhhhhhhhhhhaa -aahhhhhhhhhhhhhhhhaa -aahhhgggggegtmghhhaa -ahhhgggggggggEgghhha -ahhhgsggghhggtgbhhha -ahhhmIVgghhgmKgghhha -ahhhgtgggggggggthhha -ahhhgggUggggggCmhhha -ahhhgntgggVggggghhha -ahhhgmggghhggggghhha -aahhhhggbhhggghhhhaa -aahhhhgghhhhgghhhhaa -aahhhhgghhhhgghhhhaa -aagbhhggvhhvgVhhLgaa -aaaghhggghhTTThhgaaa -aaaahhTThhhhYThhaaaa -aaaamqThhhhhhJbmaaaa -aaaaguAFhhhhPryraaaa -aaaaggggQhhrgrPraaaa +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +a +h +h +h +h +h +h +h +a +a +a +a +a +a +a +a +a +"} +(3,1,1) = {" +h +h +h +h +h +h +h +h +h +h +h +h +h +h +g +a +a +a +a +a +"} +(4,1,1) = {" +h +h +h +h +h +h +h +h +h +h +h +h +h +h +b +g +a +a +a +a +"} +(5,1,1) = {" +h +h +h +h +g +g +m +g +g +g +g +h +h +h +h +h +h +m +g +g +"} +(6,1,1) = {" +h +h +h +g +g +s +I +t +g +n +m +h +h +h +h +h +h +q +u +g +"} +(7,1,1) = {" +h +h +h +g +g +g +V +g +g +t +g +g +g +g +g +g +T +T +A +g +"} +(8,1,1) = {" +h +h +h +g +g +g +g +g +U +g +g +g +g +g +g +g +T +h +F +g +"} +(9,1,1) = {" +h +h +h +g +g +g +g +g +g +g +g +b +h +h +v +g +h +h +h +Q +"} +(10,1,1) = {" +h +h +h +g +g +h +h +g +g +g +h +h +h +h +h +h +h +h +h +h +"} +(11,1,1) = {" +h +h +h +e +g +h +h +g +g +V +h +h +h +h +h +h +h +h +h +h +"} +(12,1,1) = {" +h +h +h +g +g +g +g +g +g +g +g +g +h +h +v +T +h +h +h +r +"} +(13,1,1) = {" +h +h +h +t +g +g +m +g +g +g +g +g +g +g +g +T +Y +h +P +g +"} +(14,1,1) = {" +h +h +h +m +E +t +K +g +g +g +g +g +g +g +V +T +T +J +r +r +"} +(15,1,1) = {" +h +h +h +g +g +g +g +g +C +g +g +h +h +h +h +h +h +b +y +P +"} +(16,1,1) = {" +h +h +h +h +g +b +g +t +m +g +g +h +h +h +h +h +h +m +r +r +"} +(17,1,1) = {" +h +h +h +h +h +h +h +h +h +h +h +h +h +h +L +g +a +a +a +a +"} +(18,1,1) = {" +h +h +h +h +h +h +h +h +h +h +h +h +h +h +g +a +a +a +a +a +"} +(19,1,1) = {" +a +a +a +a +h +h +h +h +h +h +h +a +a +a +a +a +a +a +a +a +"} +(20,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/deadspy.dmm b/maps/expedition_vr/beach/submaps/deadspy.dmm index 5410d8ab2f9..e362c401e62 100644 --- a/maps/expedition_vr/beach/submaps/deadspy.dmm +++ b/maps/expedition_vr/beach/submaps/deadspy.dmm @@ -1,32 +1,181 @@ -"a" = (/obj/effect/decal/remains/xeno,/obj/item/clothing/mask/gas,/obj/item/clothing/suit/fire/firefighter,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"c" = (/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/obj/effect/decal/cleanable/molten_item,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"d" = (/obj/item/weapon/flamethrower,/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"e" = (/obj/effect/decal/cleanable/liquid_fuel,/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"f" = (/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"g" = (/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/obj/effect/decal/cleanable/ash,/obj/random/landmine,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"h" = (/obj/effect/decal/cleanable/liquid_fuel,/obj/random/landmine,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"i" = (/obj/effect/decal/cleanable/liquid_fuel,/obj/effect/decal/cleanable/molten_item,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"j" = (/obj/item/weapon/material/butterfly,/obj/effect/decal/cleanable/liquid_fuel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"k" = (/obj/effect/decal/remains/human,/obj/item/weapon/tool/wrench,/obj/item/clothing/head/hardhat,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"l" = (/obj/item/weapon/flame/lighter/zippo,/obj/effect/decal/cleanable/liquid_fuel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"m" = (/obj/effect/decal/remains/human,/obj/item/clothing/mask/balaclava,/obj/item/clothing/under/suit_jacket/really_black,/obj/effect/decal/cleanable/ash,/obj/effect/decal/cleanable/liquid_fuel,/obj/effect/decal/cleanable/ash,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"n" = (/obj/effect/decal/cleanable/liquid_fuel,/obj/effect/decal/cleanable/liquid_fuel,/obj/effect/decal/cleanable/ash,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"o" = (/obj/machinery/porta_turret/poi{desc = "Looking at this heavy caliber, tripod-mounted, little ol' number makes you want to square-dance."; lethal = 0; name = "sentry turret"},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"p" = (/obj/item/weapon/deadringer,/obj/effect/decal/cleanable/liquid_fuel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"q" = (/obj/effect/decal/cleanable/liquid_fuel,/obj/effect/decal/cleanable/liquid_fuel,/obj/random/landmine,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"r" = (/obj/effect/decal/cleanable/liquid_fuel,/obj/item/weapon/storage/fancy/cigarettes/professionals,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"s" = (/obj/item/weapon/card/emag_broken,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"t" = (/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/obj/random/landmine,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"u" = (/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel,/obj/effect/decal/cleanable/ash,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/deadspy) -"v" = (/turf/simulated/mineral/cave,/area/submap/deadspy) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/obj/effect/decal/remains/xeno, +/obj/item/clothing/mask/gas, +/obj/item/clothing/suit/fire/firefighter, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"c" = ( +/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel, +/obj/effect/decal/cleanable/molten_item, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"d" = ( +/obj/item/weapon/flamethrower, +/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"e" = ( +/obj/effect/decal/cleanable/liquid_fuel, +/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"f" = ( +/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"g" = ( +/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel, +/obj/effect/decal/cleanable/ash, +/obj/random/landmine, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"h" = ( +/obj/effect/decal/cleanable/liquid_fuel, +/obj/random/landmine, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"i" = ( +/obj/effect/decal/cleanable/liquid_fuel, +/obj/effect/decal/cleanable/molten_item, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"j" = ( +/obj/item/weapon/material/butterfly, +/obj/effect/decal/cleanable/liquid_fuel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"k" = ( +/obj/effect/decal/remains/human, +/obj/item/weapon/tool/wrench, +/obj/item/clothing/head/hardhat, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"l" = ( +/obj/item/weapon/flame/lighter/zippo, +/obj/effect/decal/cleanable/liquid_fuel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"m" = ( +/obj/effect/decal/remains/human, +/obj/item/clothing/mask/balaclava, +/obj/item/clothing/under/suit_jacket/really_black, +/obj/effect/decal/cleanable/ash, +/obj/effect/decal/cleanable/liquid_fuel, +/obj/effect/decal/cleanable/ash, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"n" = ( +/obj/effect/decal/cleanable/liquid_fuel, +/obj/effect/decal/cleanable/liquid_fuel, +/obj/effect/decal/cleanable/ash, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"o" = ( +/obj/machinery/porta_turret/poi{ + desc = "Looking at this heavy caliber, tripod-mounted, little ol' number makes you want to square-dance."; + lethal = 0; + name = "sentry turret" + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"p" = ( +/obj/item/weapon/deadringer, +/obj/effect/decal/cleanable/liquid_fuel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"q" = ( +/obj/effect/decal/cleanable/liquid_fuel, +/obj/effect/decal/cleanable/liquid_fuel, +/obj/random/landmine, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"r" = ( +/obj/effect/decal/cleanable/liquid_fuel, +/obj/item/weapon/storage/fancy/cigarettes/professionals, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"s" = ( +/obj/item/weapon/card/emag_broken, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"t" = ( +/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel, +/obj/random/landmine, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"u" = ( +/obj/effect/decal/cleanable/liquid_fuel/flamethrower_fuel, +/obj/effect/decal/cleanable/ash, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/deadspy) +"v" = ( +/turf/simulated/mineral/cave, +/area/submap/deadspy) (1,1,1) = {" -abbbbvv -bcdefgb -bfhijfk -bflmnfo -vfpqrfs -vtfuffb -vvbbbvb +a +b +b +b +v +v +v +"} +(2,1,1) = {" +b +c +f +f +f +t +v +"} +(3,1,1) = {" +b +d +h +l +p +f +b +"} +(4,1,1) = {" +b +e +i +m +q +u +b +"} +(5,1,1) = {" +b +f +j +n +r +f +b +"} +(6,1,1) = {" +v +g +f +f +f +f +v +"} +(7,1,1) = {" +v +b +k +o +s +b +b "} diff --git a/maps/expedition_vr/beach/submaps/digsite.dmm b/maps/expedition_vr/beach/submaps/digsite.dmm index 5f1d321e083..1ec8bcde489 100644 --- a/maps/expedition_vr/beach/submaps/digsite.dmm +++ b/maps/expedition_vr/beach/submaps/digsite.dmm @@ -1,64 +1,618 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/submap/cave/digsite) -"c" = (/turf/simulated/wall/sandstone,/area/submap/cave/digsite) -"d" = (/obj/structure/boulder,/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"e" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"f" = (/turf/simulated/floor/tiled/kafel_full/yellow,/area/submap/cave/digsite) -"g" = (/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"h" = (/obj/item/weapon/ore,/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"i" = (/obj/structure/bed/alien,/turf/simulated/floor/tiled/kafel_full/yellow,/area/submap/cave/digsite) -"j" = (/obj/structure/cult/talisman,/turf/simulated/floor/tiled/kafel_full/yellow,/area/submap/cave/digsite) -"k" = (/obj/machinery/artifact,/obj/structure/anomaly_container,/turf/simulated/floor/tiled/kafel_full/yellow,/area/submap/cave/digsite) -"l" = (/obj/structure/simple_door/sandstone,/turf/simulated/floor/tiled/kafel_full/yellow,/area/submap/cave/digsite) -"m" = (/obj/structure/loot_pile/surface/alien,/turf/simulated/floor/tiled/kafel_full/yellow,/area/submap/cave/digsite) -"n" = (/mob/living/simple_mob/animal/passive/tindalos,/turf/simulated/floor/tiled/kafel_full/yellow,/area/submap/cave/digsite) -"o" = (/obj/structure/closet/crate/secure/loot,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"p" = (/obj/item/weapon/ore,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"q" = (/obj/effect/floor_decal/asteroid,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"r" = (/obj/structure/anomaly_container,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"s" = (/turf/simulated/wall,/area/submap/cave/digsite) -"t" = (/obj/item/frame/apc,/obj/item/weapon/module/power_control,/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"u" = (/obj/structure/table/steel,/obj/machinery/cell_charger,/obj/random/powercell,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"v" = (/obj/structure/table/steel,/obj/item/weapon/storage/excavation,/obj/item/device/measuring_tape,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"w" = (/obj/machinery/power/port_gen/pacman/super,/obj/structure/cable/yellow{d2 = 4; icon_state = "0-4"},/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"x" = (/obj/structure/cable/yellow{d2 = 8; icon_state = "0-8"},/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"y" = (/obj/structure/bed/chair{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"z" = (/obj/structure/table/steel,/obj/item/weapon/folder,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"A" = (/obj/structure/table/rack,/obj/item/weapon/pickaxe,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"B" = (/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"C" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"D" = (/obj/structure/table/steel,/obj/random/tech_supply,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"E" = (/obj/structure/table/rack,/obj/item/weapon/shovel,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"F" = (/obj/structure/boulder,/obj/effect/decal/mecha_wreckage/ripley,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"G" = (/obj/structure/boulder,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"H" = (/obj/structure/loot_pile/maint/junk,/turf/simulated/floor/plating/external,/area/submap/cave/digsite) -"I" = (/obj/structure/table/steel,/obj/item/weapon/tool/wrench,/obj/item/weapon/storage/box/samplebags,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"J" = (/obj/structure/table/steel,/obj/item/stack/flag/yellow,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"K" = (/obj/random/toolbox,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"L" = (/obj/structure/closet/crate,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"M" = (/obj/machinery/floodlight,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) -"N" = (/obj/structure/ore_box,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/digsite) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/submap/cave/digsite) +"c" = ( +/turf/simulated/wall/sandstone, +/area/submap/cave/digsite) +"d" = ( +/obj/structure/boulder, +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"e" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"f" = ( +/turf/simulated/floor/tiled/kafel_full/yellow, +/area/submap/cave/digsite) +"g" = ( +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"h" = ( +/obj/item/weapon/ore, +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"i" = ( +/obj/structure/bed/alien, +/turf/simulated/floor/tiled/kafel_full/yellow, +/area/submap/cave/digsite) +"j" = ( +/obj/structure/cult/talisman, +/turf/simulated/floor/tiled/kafel_full/yellow, +/area/submap/cave/digsite) +"k" = ( +/obj/machinery/artifact, +/obj/structure/anomaly_container, +/turf/simulated/floor/tiled/kafel_full/yellow, +/area/submap/cave/digsite) +"l" = ( +/obj/structure/simple_door/sandstone, +/turf/simulated/floor/tiled/kafel_full/yellow, +/area/submap/cave/digsite) +"m" = ( +/obj/structure/loot_pile/surface/alien, +/turf/simulated/floor/tiled/kafel_full/yellow, +/area/submap/cave/digsite) +"n" = ( +/mob/living/simple_mob/animal/passive/tindalos, +/turf/simulated/floor/tiled/kafel_full/yellow, +/area/submap/cave/digsite) +"o" = ( +/obj/structure/closet/crate/secure/loot, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"p" = ( +/obj/item/weapon/ore, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"q" = ( +/obj/effect/floor_decal/asteroid, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"r" = ( +/obj/structure/anomaly_container, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"s" = ( +/turf/simulated/wall, +/area/submap/cave/digsite) +"t" = ( +/obj/item/frame/apc, +/obj/item/weapon/module/power_control, +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"u" = ( +/obj/structure/table/steel, +/obj/machinery/cell_charger, +/obj/random/powercell, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"v" = ( +/obj/structure/table/steel, +/obj/item/weapon/storage/excavation, +/obj/item/device/measuring_tape, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"w" = ( +/obj/machinery/power/port_gen/pacman/super, +/obj/structure/cable/yellow{ + d2 = 4; + icon_state = "0-4" + }, +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"x" = ( +/obj/structure/cable/yellow{ + d2 = 8; + icon_state = "0-8" + }, +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"y" = ( +/obj/structure/bed/chair{ + dir = 4 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"z" = ( +/obj/structure/table/steel, +/obj/item/weapon/folder, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"A" = ( +/obj/structure/table/rack, +/obj/item/weapon/pickaxe, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"B" = ( +/obj/item/mecha_parts/mecha_equipment/tool/drill/diamonddrill, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"C" = ( +/obj/structure/loot_pile/maint/technical, +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"D" = ( +/obj/structure/table/steel, +/obj/random/tech_supply, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"E" = ( +/obj/structure/table/rack, +/obj/item/weapon/shovel, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"F" = ( +/obj/structure/boulder, +/obj/effect/decal/mecha_wreckage/ripley, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"G" = ( +/obj/structure/boulder, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"H" = ( +/obj/structure/loot_pile/maint/junk, +/turf/simulated/floor/plating/external, +/area/submap/cave/digsite) +"I" = ( +/obj/structure/table/steel, +/obj/item/weapon/tool/wrench, +/obj/item/weapon/storage/box/samplebags, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"J" = ( +/obj/structure/table/steel, +/obj/item/stack/flag/yellow, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"K" = ( +/obj/random/toolbox, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"L" = ( +/obj/structure/closet/crate, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"M" = ( +/obj/machinery/floodlight, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) +"N" = ( +/obj/structure/ore_box, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/digsite) (1,1,1) = {" -aaaaaaaaaaaaaaaaaaaa -aaabbbbbbbbbbbbbbbaa -aabccccccccdccccceea -abccffcfffghgcficcea -abcfffcffjggfcfffcea -abcfkflffggfffffmcea -abcfffcffffffgfffcea -abccffcffffffgnfccea -abbccccclccfhccggeea -abbbbboeffffepqeeeea -abbbbbbeeeeeeeeeeeea -abbbbbbpeeeeeqereeea -abbbbsteeuveeeerbeea -abbbbwxeyzAeqeBbbbea -abbbbCgeyDEeeeeFbbba -abeeGHgeqIJeeeqbbbba -aeeeKeeeeLMeeeNbbeaa -aaeeeeeeeeeeeeNeeeaa -aaaaaeeeeeeeeeeeeaaa -aaaaaaaaaaaaaaaaaaaa +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +b +b +b +b +b +b +b +b +b +b +b +b +b +e +a +a +a +"} +(3,1,1) = {" +a +a +b +c +c +c +c +c +b +b +b +b +b +b +b +e +e +e +a +a +"} +(4,1,1) = {" +a +b +c +c +f +f +f +c +c +b +b +b +b +b +b +e +e +e +a +a +"} +(5,1,1) = {" +a +b +c +f +f +k +f +f +c +b +b +b +b +b +b +G +K +e +a +a +"} +(6,1,1) = {" +a +b +c +f +f +f +f +f +c +b +b +b +s +w +C +H +e +e +e +a +"} +(7,1,1) = {" +a +b +c +c +c +l +c +c +c +o +b +b +t +x +g +g +e +e +e +a +"} +(8,1,1) = {" +a +b +c +f +f +f +f +f +c +e +e +p +e +e +e +e +e +e +e +a +"} +(9,1,1) = {" +a +b +c +f +f +f +f +f +l +f +e +e +e +y +y +q +e +e +e +a +"} +(10,1,1) = {" +a +b +c +f +j +g +f +f +c +f +e +e +u +z +D +I +L +e +e +a +"} +(11,1,1) = {" +a +b +c +g +g +g +f +f +c +f +e +e +v +A +E +J +M +e +e +a +"} +(12,1,1) = {" +a +b +d +h +g +f +f +f +f +f +e +e +e +e +e +e +e +e +e +a +"} +(13,1,1) = {" +a +b +c +g +f +f +f +f +h +e +e +e +e +q +e +e +e +e +e +a +"} +(14,1,1) = {" +a +b +c +c +c +f +g +g +c +p +e +q +e +e +e +e +e +e +e +a +"} +(15,1,1) = {" +a +b +c +f +f +f +f +n +c +q +e +e +e +B +e +q +N +N +e +a +"} +(16,1,1) = {" +a +b +c +i +f +f +f +f +g +e +e +r +r +b +F +b +b +e +e +a +"} +(17,1,1) = {" +a +b +c +c +f +m +f +c +g +e +e +e +b +b +b +b +b +e +e +a +"} +(18,1,1) = {" +a +b +e +c +c +c +c +c +e +e +e +e +e +b +b +b +e +e +a +a +"} +(19,1,1) = {" +a +a +e +e +e +e +e +e +e +e +e +e +e +e +b +b +a +a +a +a +"} +(20,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} - diff --git a/maps/expedition_vr/beach/submaps/excavation1.dmm b/maps/expedition_vr/beach/submaps/excavation1.dmm index ed191c4c2ee..84484ccd571 100644 --- a/maps/expedition_vr/beach/submaps/excavation1.dmm +++ b/maps/expedition_vr/beach/submaps/excavation1.dmm @@ -1,51 +1,361 @@ -"a" = (/turf/simulated/mineral/cave,/area/template_noop) -"b" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"c" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"d" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 9},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"e" = (/obj/structure/cliff/automatic,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"f" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 5},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"g" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 9},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"h" = (/obj/random/outcrop,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"i" = (/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"j" = (/obj/structure/cliff/automatic/corner,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"k" = (/obj/mecha/working/ripley,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"l" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 8},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"m" = (/obj/structure/table/sifwoodentable,/obj/item/mecha_parts/mecha_equipment/tool/drill/bore,/obj/item/weapon/ore/marble,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"n" = (/obj/item/weapon/ore,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"o" = (/obj/structure/table/sifwoodentable,/obj/item/mecha_parts/mecha_equipment/hardpoint_actuator,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"p" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 4},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"q" = (/obj/structure/table/sifwoodentable,/obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"r" = (/obj/structure/table/sifwoodentable,/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy/rigged,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"s" = (/obj/item/weapon/ore/marble,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"t" = (/obj/item/weapon/ore/gold,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"u" = (/obj/item/weapon/ore/diamond,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"v" = (/mob/living/simple_mob/mechanical/mining_drone,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"w" = (/obj/structure/table/sifwoodentable,/obj/item/weapon/pickaxe/jackhammer,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"x" = (/obj/structure/table/sifwoodentable,/obj/random/projectile/scrapped_grenadelauncher,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"y" = (/obj/structure/table/sifwoodentable,/obj/random/medical/pillbottle,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"z" = (/obj/structure/table/sifwoodentable,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/item/weapon/grenade/chem_grenade/metalfoam,/obj/item/weapon/grenade/chem_grenade/metalfoam,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"A" = (/obj/structure/table/sifwoodentable,/obj/item/weapon/mining_scanner,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"B" = (/obj/structure/table/sifwoodentable,/obj/random/cigarettes,/obj/random/tool/powermaint,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/Excavation) -"C" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 10},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"D" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 2},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"E" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 10},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"F" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 6},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) -"G" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 6},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/Excavation) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/cave, +/area/template_noop) +"b" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"c" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"d" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 9 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"e" = ( +/obj/structure/cliff/automatic, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"f" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 5 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"g" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 9 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"h" = ( +/obj/random/outcrop, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"i" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"j" = ( +/obj/structure/cliff/automatic/corner, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"k" = ( +/obj/mecha/working/ripley, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"l" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 8 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"m" = ( +/obj/structure/table/sifwoodentable, +/obj/item/mecha_parts/mecha_equipment/tool/drill/bore, +/obj/item/weapon/ore/marble, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"n" = ( +/obj/item/weapon/ore, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"o" = ( +/obj/structure/table/sifwoodentable, +/obj/item/mecha_parts/mecha_equipment/hardpoint_actuator, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"p" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 4 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"q" = ( +/obj/structure/table/sifwoodentable, +/obj/item/mecha_parts/mecha_equipment/anticcw_armor_booster, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"r" = ( +/obj/structure/table/sifwoodentable, +/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy/rigged, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"s" = ( +/obj/item/weapon/ore/marble, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"t" = ( +/obj/item/weapon/ore/gold, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"u" = ( +/obj/item/weapon/ore/diamond, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"v" = ( +/mob/living/simple_mob/mechanical/mining_drone, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"w" = ( +/obj/structure/table/sifwoodentable, +/obj/item/weapon/pickaxe/jackhammer, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"x" = ( +/obj/structure/table/sifwoodentable, +/obj/random/projectile/scrapped_grenadelauncher, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"y" = ( +/obj/structure/table/sifwoodentable, +/obj/random/medical/pillbottle, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"z" = ( +/obj/structure/table/sifwoodentable, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/obj/item/weapon/grenade/chem_grenade/metalfoam, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"A" = ( +/obj/structure/table/sifwoodentable, +/obj/item/weapon/mining_scanner, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"B" = ( +/obj/structure/table/sifwoodentable, +/obj/random/cigarettes, +/obj/random/tool/powermaint, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/Excavation) +"C" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 10 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"D" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 2 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"E" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 10 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"F" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 6 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) +"G" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 6 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/Excavation) (1,1,1) = {" -aabbbbbbbaa -accdeeefcca -bcdghhijfcb -bdghikihjfb -bliimnoiipb -blhiqirihpb -bliniisnhpb -blhtiuiiipb -bliviinvhpb -blhwinixipb -blhynitzhpb -bliAiniBhpb -bliisinihpb -aCDEniiFDGa -aabbbbbbbaa +a +a +b +b +b +b +b +b +b +b +b +b +b +a +a +"} +(2,1,1) = {" +a +c +c +d +l +l +l +l +l +l +l +l +l +C +a +"} +(3,1,1) = {" +b +c +d +g +i +h +i +h +i +h +h +i +i +D +b +"} +(4,1,1) = {" +b +d +g +h +i +i +n +t +v +w +y +A +i +E +b +"} +(5,1,1) = {" +b +e +h +i +m +q +i +i +i +i +n +i +s +n +b +"} +(6,1,1) = {" +b +e +h +k +n +i +i +u +i +n +i +n +i +i +b +"} +(7,1,1) = {" +b +e +i +i +o +r +s +i +n +i +t +i +n +i +b +"} +(8,1,1) = {" +b +f +j +h +i +i +n +i +v +x +z +B +i +F +b +"} +(9,1,1) = {" +b +c +f +j +i +h +h +i +h +i +h +h +h +D +b +"} +(10,1,1) = {" +a +c +c +f +p +p +p +p +p +p +p +p +p +G +a +"} +(11,1,1) = {" +a +a +b +b +b +b +b +b +b +b +b +b +b +a +a "} diff --git a/maps/expedition_vr/beach/submaps/lava_trench.dmm b/maps/expedition_vr/beach/submaps/lava_trench.dmm index 74a497ee469..e9c6006d158 100644 --- a/maps/expedition_vr/beach/submaps/lava_trench.dmm +++ b/maps/expedition_vr/beach/submaps/lava_trench.dmm @@ -1,146 +1,2240 @@ -"aa" = (/turf/template_noop,/area/template_noop) -"ab" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 9},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ac" = (/obj/structure/cliff/automatic,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ad" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 5},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ae" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 9},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"af" = (/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ag" = (/obj/structure/cliff/automatic/corner,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ah" = (/obj/structure/fence/end{icon_state = "end"; dir = 4},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ai" = (/obj/structure/fence/post{icon_state = "post"; dir = 4},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"aj" = (/obj/structure/fence/door/opened,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ak" = (/obj/structure/fence/end{icon_state = "end"; dir = 8},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"al" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 8},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"am" = (/obj/structure/fence/end{icon_state = "end"; dir = 1},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"an" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 9},/turf/simulated/floor/lava,/area/submap/lava_trench) -"ao" = (/obj/structure/cliff/automatic,/turf/simulated/floor/lava,/area/submap/lava_trench) -"ap" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 5},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aq" = (/obj/structure/sign/warning/lava,/turf/simulated/wall,/area/submap/lava_trench) -"ar" = (/obj/structure/fence/post,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"as" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 6},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"at" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 9},/turf/simulated/floor/lava,/area/submap/lava_trench) -"au" = (/turf/simulated/floor/lava,/area/submap/lava_trench) -"av" = (/obj/structure/cliff/automatic/corner,/turf/simulated/floor/lava,/area/submap/lava_trench) -"aw" = (/obj/structure/railing{icon_state = "railing0"; dir = 4},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ax" = (/obj/structure/catwalk,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"ay" = (/obj/structure/railing{icon_state = "railing0"; dir = 8},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"az" = (/obj/structure/fence/door/opened{icon_state = "door_opened"; dir = 8},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"aA" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 8},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aB" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/template_noop) -"aC" = (/turf/simulated/floor/outdoors/rocks/caves,/area/template_noop) -"aD" = (/obj/structure/cliff/automatic,/obj/structure/railing{icon_state = "railing0"; dir = 4},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aE" = (/obj/structure/cliff/automatic,/obj/structure/railing{icon_state = "railing0"; dir = 8},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aF" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 10},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aG" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 10},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aH" = (/obj/structure/railing{icon_state = "railing0"; dir = 4},/obj/effect/step_trigger/teleporter/offset/east,/turf/simulated/floor/lava,/area/submap/lava_trench) -"aI" = (/obj/structure/catwalk,/turf/simulated/floor/lava,/area/submap/lava_trench) -"aJ" = (/obj/structure/ore_box,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"aK" = (/obj/structure/railing{icon_state = "railing0"; dir = 8},/obj/effect/step_trigger/teleporter/offset/west,/turf/simulated/floor/lava,/area/submap/lava_trench) -"aL" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 4},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"aM" = (/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 4},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"aN" = (/obj/machinery/door/airlock/hatch{normalspeed = 0; safe = 0},/obj/effect/map_effect/interval/effect_emitter/sparks,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"aO" = (/turf/simulated/wall/rshull,/area/submap/lava_trench/outpost) -"aP" = (/obj/machinery/door/airlock/hatch{normalspeed = 0; safe = 0},/obj/effect/map_effect/interval/effect_emitter/sparks,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"aQ" = (/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"aR" = (/obj/effect/floor_decal/corner_oldtile/blue/full{icon_state = "corner_oldtile_full"; dir = 8},/obj/machinery/microscope,/obj/structure/table/standard,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"aS" = (/obj/effect/floor_decal/corner_oldtile/blue/full{icon_state = "corner_oldtile_full"; dir = 8},/obj/structure/table/standard,/obj/random/unidentified_medicine/scientific,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"aT" = (/obj/structure/fence/end,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"aU" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 2},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aV" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 10},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"aW" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 10},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"aX" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 6},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aY" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 2},/obj/structure/railing{icon_state = "railing0"; dir = 4},/turf/simulated/floor/lava,/area/submap/lava_trench) -"aZ" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 2},/obj/structure/railing{icon_state = "railing0"; dir = 8},/turf/simulated/floor/lava,/area/submap/lava_trench) -"ba" = (/obj/machinery/crystal/lava,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bb" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 4},/turf/simulated/floor/lava,/area/submap/lava_trench) -"bc" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 6},/turf/simulated/floor/lava,/area/submap/lava_trench) -"bd" = (/obj/structure/table/steel,/obj/item/weapon/storage/excavation,/obj/item/device/measuring_tape,/obj/effect/floor_decal/corner_oldtile/purple{icon_state = "corner_oldtile"; dir = 4},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"be" = (/turf/simulated/mineral/ignore_mapgen/cave,/area/template_noop) -"bf" = (/obj/structure/railing,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bg" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 10},/obj/structure/railing,/turf/simulated/floor/lava,/area/submap/lava_trench) -"bh" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 10},/obj/structure/railing,/turf/simulated/floor/lava,/area/submap/lava_trench) -"bi" = (/obj/structure/railing,/obj/effect/step_trigger/teleporter/offset/south,/turf/simulated/floor/lava,/area/submap/lava_trench) -"bj" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 4},/obj/structure/railing,/turf/simulated/floor/lava,/area/submap/lava_trench) -"bk" = (/obj/structure/catwalk,/obj/structure/railing,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bl" = (/obj/structure/catwalk,/obj/structure/railing,/turf/simulated/floor/lava,/area/submap/lava_trench) -"bm" = (/obj/structure/fence/door/opened{icon_state = "door_opened"; dir = 4},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bn" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 2},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bo" = (/obj/effect/floor_decal/corner_oldtile/purple/full{icon_state = "corner_oldtile_full"; dir = 1},/obj/machinery/space_heater,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bp" = (/obj/machinery/floodlight,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bq" = (/obj/machinery/newscaster{pixel_y = 32},/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 1},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"br" = (/obj/effect/floor_decal/corner_oldtile/blue{icon_state = "corner_oldtile"; dir = 1},/obj/structure/bed/chair/office/light{icon_state = "officechair_white"; dir = 4},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bs" = (/turf/simulated/floor/tiled/old_tile/gray,/area/submap/lava_trench/outpost) -"bt" = (/obj/effect/floor_decal/corner_oldtile/purple{icon_state = "corner_oldtile"; dir = 4},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bu" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 6},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bv" = (/obj/item/slime_crystal,/obj/item/slime_crystal,/obj/item/slime_crystal,/obj/effect/floor_decal/corner_oldtile/blue{icon_state = "corner_oldtile"; dir = 9},/obj/structure/table/standard,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bw" = (/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"bx" = (/obj/machinery/crystal/ice,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"by" = (/obj/machinery/ai_status_display{pixel_y = 32},/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 1},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bz" = (/obj/effect/floor_decal/corner_oldtile{icon_state = "corner_oldtile"; dir = 1},/turf/simulated/floor/tiled/old_tile/gray,/area/submap/lava_trench/outpost) -"bA" = (/obj/effect/floor_decal/corner_oldtile{icon_state = "corner_oldtile"; dir = 4},/turf/simulated/floor/tiled/old_tile/gray,/area/submap/lava_trench/outpost) -"bB" = (/obj/effect/floor_decal/corner_oldtile/blue{icon_state = "corner_oldtile"; dir = 8},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bC" = (/obj/structure/table/rack,/obj/item/weapon/shovel,/obj/effect/floor_decal/corner_oldtile/purple/full{icon_state = "corner_oldtile_full"; dir = 1},/obj/item/weapon/pickaxe/drill,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bD" = (/obj/effect/step_trigger/teleporter/offset/north,/turf/simulated/floor/lava,/area/submap/lava_trench) -"bE" = (/obj/machinery/crystal/lava,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"bF" = (/obj/structure/table/rack,/obj/random/tool/powermaint,/obj/random/tool/powermaint,/obj/effect/floor_decal/corner_oldtile/purple{icon_state = "corner_oldtile"; dir = 6},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bG" = (/obj/effect/floor_decal/corner_oldtile/purple,/obj/structure/table/steel,/obj/item/device/xenoarch_multi_tool,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bH" = (/obj/effect/floor_decal/corner_oldtile/purple,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bI" = (/obj/item/device/gps/science{gps_tag = "CRYSTALS"},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bK" = (/obj/effect/floor_decal/corner_oldtile/blue/full,/obj/random/drinkbottle,/obj/random/maintenance/research,/obj/structure/table/standard,/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 8},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bL" = (/obj/structure/flora/pottedplant/crystal,/obj/effect/floor_decal/corner_oldtile/blue{icon_state = "corner_oldtile"; dir = 8},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bM" = (/obj/structure/cult/pylon,/obj/effect/floor_decal/industrial/outline,/turf/simulated/floor/tiled/old_tile/gray,/area/submap/lava_trench/outpost) -"bN" = (/obj/structure/anomaly_container,/obj/machinery/artifact,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bO" = (/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 4},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bP" = (/obj/effect/floor_decal/corner_oldtile/purple/full{icon_state = "corner_oldtile_full"; dir = 4},/obj/structure/table/steel,/obj/machinery/recharger,/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 4},/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bQ" = (/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 8},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bR" = (/obj/machinery/light/small/flicker{icon_state = "bulb1"; dir = 1},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bS" = (/obj/effect/floor_decal/corner_oldtile/blue{icon_state = "corner_oldtile"; dir = 1},/obj/structure/loot_pile/surface/medicine_cabinet{pixel_y = 28},/obj/structure/table/standard,/obj/item/device/healthanalyzer/improved,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bT" = (/obj/machinery/suspension_gen{anchored = 1},/obj/effect/floor_decal/industrial/hatch/yellow,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bU" = (/obj/machinery/light/small/flicker,/obj/structure/ore_box,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"bW" = (/obj/structure/anomaly_container,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"bX" = (/obj/effect/floor_decal/corner_oldtile/purple/full{icon_state = "corner_oldtile_full"; dir = 4},/obj/item/weapon/storage/box/samplebags,/obj/structure/table/steel,/obj/item/stack/flag/red,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"bY" = (/obj/machinery/crystal,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"bZ" = (/obj/structure/table/steel,/obj/item/weapon/stock_parts/subspace/crystal,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"ca" = (/obj/structure/table/steel,/obj/item/stack/material/diamond,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"cb" = (/obj/structure/loot_pile/surface/bones,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"ce" = (/obj/effect/floor_decal/corner_oldtile/blue/full,/obj/structure/table/standard,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"ch" = (/obj/structure/loot_pile/maint/trash,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) -"cj" = (/obj/item/clothing/head/bio_hood/anomaly,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"ck" = (/obj/item/clothing/suit/bio_suit/anomaly,/turf/simulated/floor/tiled/old_tile,/area/submap/lava_trench/outpost) -"co" = (/obj/machinery/floodlight,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"cp" = (/obj/machinery/light/small/flicker,/obj/structure/closet/crate/secure/loot,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"cq" = (/obj/item/weapon/banner/nt,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"cr" = (/obj/structure/table/steel,/obj/item/weapon/material/shard/phoron,/turf/simulated/floor/tiled/asteroid_steel,/area/submap/lava_trench) -"cs" = (/obj/item/weapon/banner/nt,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/lava_trench) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"aa" = ( +/turf/template_noop, +/area/template_noop) +"ab" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 9 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ac" = ( +/obj/structure/cliff/automatic, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ad" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 5 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ae" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 9 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"af" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ag" = ( +/obj/structure/cliff/automatic/corner, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ah" = ( +/obj/structure/fence/end{ + icon_state = "end"; + dir = 4 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ai" = ( +/obj/structure/fence/post{ + icon_state = "post"; + dir = 4 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"aj" = ( +/obj/structure/fence/door/opened, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ak" = ( +/obj/structure/fence/end{ + icon_state = "end"; + dir = 8 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"al" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 8 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"am" = ( +/obj/structure/fence/end{ + icon_state = "end"; + dir = 1 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"an" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 9 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"ao" = ( +/obj/structure/cliff/automatic, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"ap" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 5 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aq" = ( +/obj/structure/sign/warning/lava, +/turf/simulated/wall, +/area/submap/lava_trench) +"ar" = ( +/obj/structure/fence/post, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"as" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 6 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"at" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 9 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"au" = ( +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"av" = ( +/obj/structure/cliff/automatic/corner, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aw" = ( +/obj/structure/railing{ + icon_state = "railing0"; + dir = 4 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ax" = ( +/obj/structure/catwalk, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"ay" = ( +/obj/structure/railing{ + icon_state = "railing0"; + dir = 8 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"az" = ( +/obj/structure/fence/door/opened{ + icon_state = "door_opened"; + dir = 8 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"aA" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 8 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aB" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/template_noop) +"aC" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/template_noop) +"aD" = ( +/obj/structure/cliff/automatic, +/obj/structure/railing{ + icon_state = "railing0"; + dir = 4 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aE" = ( +/obj/structure/cliff/automatic, +/obj/structure/railing{ + icon_state = "railing0"; + dir = 8 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aF" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 10 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aG" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 10 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aH" = ( +/obj/structure/railing{ + icon_state = "railing0"; + dir = 4 + }, +/obj/effect/step_trigger/teleporter/offset/east, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aI" = ( +/obj/structure/catwalk, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aJ" = ( +/obj/structure/ore_box, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"aK" = ( +/obj/structure/railing{ + icon_state = "railing0"; + dir = 8 + }, +/obj/effect/step_trigger/teleporter/offset/west, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aL" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 4 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"aM" = ( +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 4 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"aN" = ( +/obj/machinery/door/airlock/hatch{ + normalspeed = 0; + safe = 0 + }, +/obj/effect/map_effect/interval/effect_emitter/sparks, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"aO" = ( +/turf/simulated/wall/rshull, +/area/submap/lava_trench/outpost) +"aQ" = ( +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"aR" = ( +/obj/effect/floor_decal/corner_oldtile/blue/full{ + icon_state = "corner_oldtile_full"; + dir = 8 + }, +/obj/machinery/microscope, +/obj/structure/table/standard, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"aS" = ( +/obj/effect/floor_decal/corner_oldtile/blue/full{ + icon_state = "corner_oldtile_full"; + dir = 8 + }, +/obj/structure/table/standard, +/obj/random/unidentified_medicine/scientific, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"aT" = ( +/obj/structure/fence/end, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"aU" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 2 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aV" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 10 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"aW" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 10 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"aX" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 6 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aY" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 2 + }, +/obj/structure/railing{ + icon_state = "railing0"; + dir = 4 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"aZ" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 2 + }, +/obj/structure/railing{ + icon_state = "railing0"; + dir = 8 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"ba" = ( +/obj/machinery/crystal/lava, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bb" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 4 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bc" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 6 + }, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bd" = ( +/obj/structure/table/steel, +/obj/item/weapon/storage/excavation, +/obj/item/device/measuring_tape, +/obj/effect/floor_decal/corner_oldtile/purple{ + icon_state = "corner_oldtile"; + dir = 4 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"be" = ( +/turf/simulated/mineral/ignore_mapgen/cave, +/area/template_noop) +"bf" = ( +/obj/structure/railing, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bg" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 10 + }, +/obj/structure/railing, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bh" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 10 + }, +/obj/structure/railing, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bi" = ( +/obj/structure/railing, +/obj/effect/step_trigger/teleporter/offset/south, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bj" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 4 + }, +/obj/structure/railing, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bk" = ( +/obj/structure/catwalk, +/obj/structure/railing, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bl" = ( +/obj/structure/catwalk, +/obj/structure/railing, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bm" = ( +/obj/structure/fence/door/opened{ + icon_state = "door_opened"; + dir = 4 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bn" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 2 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bo" = ( +/obj/effect/floor_decal/corner_oldtile/purple/full{ + icon_state = "corner_oldtile_full"; + dir = 1 + }, +/obj/machinery/space_heater, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bp" = ( +/obj/machinery/floodlight, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bq" = ( +/obj/machinery/newscaster{ + pixel_y = 32 + }, +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 1 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"br" = ( +/obj/effect/floor_decal/corner_oldtile/blue{ + icon_state = "corner_oldtile"; + dir = 1 + }, +/obj/structure/bed/chair/office/light{ + icon_state = "officechair_white"; + dir = 4 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bs" = ( +/turf/simulated/floor/tiled/old_tile/gray, +/area/submap/lava_trench/outpost) +"bt" = ( +/obj/effect/floor_decal/corner_oldtile/purple{ + icon_state = "corner_oldtile"; + dir = 4 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bu" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 6 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bv" = ( +/obj/item/slime_crystal, +/obj/item/slime_crystal, +/obj/item/slime_crystal, +/obj/effect/floor_decal/corner_oldtile/blue{ + icon_state = "corner_oldtile"; + dir = 9 + }, +/obj/structure/table/standard, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bw" = ( +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"bx" = ( +/obj/machinery/crystal/ice, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"by" = ( +/obj/machinery/ai_status_display{ + pixel_y = 32 + }, +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 1 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bz" = ( +/obj/effect/floor_decal/corner_oldtile{ + icon_state = "corner_oldtile"; + dir = 1 + }, +/turf/simulated/floor/tiled/old_tile/gray, +/area/submap/lava_trench/outpost) +"bA" = ( +/obj/effect/floor_decal/corner_oldtile{ + icon_state = "corner_oldtile"; + dir = 4 + }, +/turf/simulated/floor/tiled/old_tile/gray, +/area/submap/lava_trench/outpost) +"bB" = ( +/obj/effect/floor_decal/corner_oldtile/blue{ + icon_state = "corner_oldtile"; + dir = 8 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bC" = ( +/obj/structure/table/rack, +/obj/item/weapon/shovel, +/obj/effect/floor_decal/corner_oldtile/purple/full{ + icon_state = "corner_oldtile_full"; + dir = 1 + }, +/obj/item/weapon/pickaxe/drill, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bD" = ( +/obj/effect/step_trigger/teleporter/offset/north, +/turf/simulated/floor/lava, +/area/submap/lava_trench) +"bE" = ( +/obj/machinery/crystal/lava, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"bF" = ( +/obj/structure/table/rack, +/obj/random/tool/powermaint, +/obj/random/tool/powermaint, +/obj/effect/floor_decal/corner_oldtile/purple{ + icon_state = "corner_oldtile"; + dir = 6 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bG" = ( +/obj/effect/floor_decal/corner_oldtile/purple, +/obj/structure/table/steel, +/obj/item/device/xenoarch_multi_tool, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bH" = ( +/obj/effect/floor_decal/corner_oldtile/purple, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bI" = ( +/obj/item/device/gps/science{ + gps_tag = "CRYSTALS" + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bK" = ( +/obj/effect/floor_decal/corner_oldtile/blue/full, +/obj/random/drinkbottle, +/obj/random/maintenance/research, +/obj/structure/table/standard, +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 8 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bL" = ( +/obj/structure/flora/pottedplant/crystal, +/obj/effect/floor_decal/corner_oldtile/blue{ + icon_state = "corner_oldtile"; + dir = 8 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bM" = ( +/obj/structure/cult/pylon, +/obj/effect/floor_decal/industrial/outline, +/turf/simulated/floor/tiled/old_tile/gray, +/area/submap/lava_trench/outpost) +"bN" = ( +/obj/structure/anomaly_container, +/obj/machinery/artifact, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bO" = ( +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 4 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bP" = ( +/obj/effect/floor_decal/corner_oldtile/purple/full{ + icon_state = "corner_oldtile_full"; + dir = 4 + }, +/obj/structure/table/steel, +/obj/machinery/recharger, +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 4 + }, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bQ" = ( +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 8 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bR" = ( +/obj/machinery/light/small/flicker{ + icon_state = "bulb1"; + dir = 1 + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bS" = ( +/obj/effect/floor_decal/corner_oldtile/blue{ + icon_state = "corner_oldtile"; + dir = 1 + }, +/obj/structure/loot_pile/surface/medicine_cabinet{ + pixel_y = 28 + }, +/obj/structure/table/standard, +/obj/item/device/healthanalyzer/improved, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bT" = ( +/obj/machinery/suspension_gen{ + anchored = 1 + }, +/obj/effect/floor_decal/industrial/hatch/yellow, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bU" = ( +/obj/machinery/light/small/flicker, +/obj/structure/ore_box, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"bW" = ( +/obj/structure/anomaly_container, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"bX" = ( +/obj/effect/floor_decal/corner_oldtile/purple/full{ + icon_state = "corner_oldtile_full"; + dir = 4 + }, +/obj/item/weapon/storage/box/samplebags, +/obj/structure/table/steel, +/obj/item/stack/flag/red, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"bY" = ( +/obj/machinery/crystal, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"bZ" = ( +/obj/structure/table/steel, +/obj/item/weapon/stock_parts/subspace/crystal, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"ca" = ( +/obj/structure/table/steel, +/obj/item/stack/material/diamond, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"cb" = ( +/obj/structure/loot_pile/surface/bones, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"ce" = ( +/obj/effect/floor_decal/corner_oldtile/blue/full, +/obj/structure/table/standard, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"ch" = ( +/obj/structure/loot_pile/maint/trash, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) +"cj" = ( +/obj/item/clothing/head/bio_hood/anomaly, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"ck" = ( +/obj/item/clothing/suit/bio_suit/anomaly, +/turf/simulated/floor/tiled/old_tile, +/area/submap/lava_trench/outpost) +"co" = ( +/obj/machinery/floodlight, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"cp" = ( +/obj/machinery/light/small/flicker, +/obj/structure/closet/crate/secure/loot, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"cq" = ( +/obj/item/weapon/banner/nt, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"cr" = ( +/obj/structure/table/steel, +/obj/item/weapon/material/shard/phoron, +/turf/simulated/floor/tiled/asteroid_steel, +/area/submap/lava_trench) +"cs" = ( +/obj/item/weapon/banner/nt, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/lava_trench) (1,1,1) = {" -aBaBabacacacacacacacacacacadaBaBaBaBaBaCaCaCaBaBaBaBaBaBaBaBaBaBaBaBbebebeaaaaaaaaaaaaaaaaaaaaaa -aBabaeafafafafafafafafafafagacacacacahaiajaiakacadaBaBaBaBaBaBaBaBaBaBbebebeaaaaaaaaaaaaaaaaaaaa -aBalafafafafafafafafafafafafafafafafafafafafafafagacacacacacacacadaBaBaBbebebeaaaaaaaaaaaaaaaaaa -aBamafafbaanaoaoaoaoapafafafafafafafafafafafafaqafafafafafafafafagadaBaBaBbebebeaaaaaaaaaaaaaaaa -afarafafanatauauauauavaoaoaoaoaoaoaoapawaxayafafafafafafafafafafafagadaBaBaBbebebeaaaaaaaaaaaaaa -afazafafaAauauauauauauauauauauauauauavaDaxaEaoaoaoaoaoaoaoapafafafafagadaBaBbebebebebebebebeaaaa -afarafafaFaGauauauauauauauauauauauauauaHaxaKauauauauauauauavapafafafafaLaBaBaBaBbebebebebebebeaa -aBaTafafafaFaUaGauauauauauauauafauauauaHaIaKauauauauauauauauavapafafafaLaBaBaBaBaBaBaBaBaBbebeaa -aBalafafafafafaFaGauafauauauauauauauauaHaIaKauauafauauafafauauavapafafagacacadaBaBaBaBaBaBbebeaa -aBaVaWafafaqafafaFaUafaUaGauauauauauaXaYaIaZaGauauauauauafbaauaubbafafafafafagacacacadaBaBaBaBaB -aBaBaVaWafafafafafafafafaFaUaUaUaUaUbcawaxayaFaUaUaGauauauauauaubbafafafafafafafafafamaBaBaBaBaB -aBaBaBalafafafafafafafafafafafafafafafafbwafafafbfbgbhbibibibibibjbfbfafafbaafafafafarafaBaBaBaB -beaBaBalafafafafbwbwbwbwbwafafafafafafafbwbwbwbwbkbkblblblblblblblbkbkafafafafafafafbmafaBaBaBaB -beaBaBalafafafafbwbxbEbYbwbwbwbwbwbwbwbwbwbwbwafafafaAbDbDbDbDbDavapafafafafafafafafarafaBaBaBaB -beaBaBalafafafafbwbZcacrbwbwbwcqbUaJaOaNaOcocpcsafaqaAauauauauauaubbafafafafafafafafaTafaBaBaBaB -beaBaBalafafafafbwbwbwbwbwbwaJaOaOaOaObOaOaOaOaOafafaFaGauauafauaubbafafaqbpafafafafaLafaBaBaBaB -beaBaBaVbnbnaWafafbwbwbwbwbwaOaOaSbSaOaPaObdboaOaOafafaAauauauauauavapafafafafafafafaLaBaBaBaBaB -beaBaBaBaBaBalafafafafafafafaOaRbraQbqaQbycjbtbCaOafafaAauauauauauauavapafafafbaafafaLaBaBbeaBaB -beaBaBaBaBaBalafafafafafafaMaObvaQaQaQaQaQcbbIbFaObQafaFaGauauauauauaubbafafafafafafaLaBaBbebebe -bebebebeaBaBaVbnbnbnbnaWafafaOcebBaQaQbTckaQbHbXaOafafafaAauauafauauaubbafafafafafafaLaBaBbebeaa -bebebebeaBaBaBaBaBaBaBalafafaOaObKbLbzbsbAbGbPaOaOafafafaAauauafbaauaubbafafbaafafafaLaBaBbebeaa -aaaabebebeaBaBaBaBaBaBalafafafaOaOaObsbMbsaOaOaObNafafafafafauafafauaubbafafafafafbuasaBaBbebeaa -aaaaaabebebebebebeaBaBaVbnaWafafchaOaOaOaOaObNbWafafafafaAauauauafauaubbafafafbubnasaBaBaBbebeaa -aaaaaaaabebebebebeaBaBaBaBalafafafafafbRafafafafafafafafaAauauauauauauavapafafaLaBaBaBaBbebebeaa -aaaaaaaaaaaaaabebebeaBaBaBalafafafafafafafafafafafafafafaFaGauauauauauaubbafafaLaBaBaBbebebeaaaa -aaaaaaaaaaaaaaaabebebebeaBaVbnbnbnbnbnbnbnbnbnbnbnaWafafafaFaGauauauauaubbafafaLaBaBbebebeaaaaaa -aaaaaaaaaaaaaaaaaabebebeaBaBaBaBaBaBaBaBaBaBaBaBaBalafafafafaFaUaUaUaUaUbcafafaLaBaBbebeaaaaaaaa -aaaaaaaaaaaaaaaaaaaabebebeaBaBaBaBaBaBaBaBaBaBaBaBaVbnaWafafafafafafafafafafafaLaBaBbebeaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaabebebebebebebebebebebebeaBaBaBaBaVaWafafafafafafafafafafaLaBaBbebeaaaaaaaa -aaaaaaaaaaaaaaaaaaaaaaaabebebebebebebebebebebebeaBaBaBaBaVbnbnbnbnahaiajaiakbnasaBaBbebeaaaaaaaa +aB +aB +aB +aB +af +af +af +aB +aB +aB +aB +aB +be +be +be +be +be +be +be +be +be +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(2,1,1) = {" +aB +ab +al +am +ar +az +ar +aT +al +aV +aB +aB +aB +aB +aB +aB +aB +aB +aB +be +be +aa +aa +aa +aa +aa +aa +aa +aa +aa +"} +(3,1,1) = {" +ab +ae +af +af +af +af +af +af +af +aW +aV +aB +aB +aB +aB +aB +aB +aB +aB +be +be +be +aa +aa +aa +aa +aa +aa +aa +aa +"} +(4,1,1) = {" +ac +af +af +af +af +af +af +af +af +af +aW +al +al +al +al +al +aV +aB +aB +be +be +be +be +aa +aa +aa +aa +aa +aa +aa +"} +(5,1,1) = {" +ac +af +af +ba +an +aA +aF +af +af +af +af +af +af +af +af +af +bn +aB +aB +aB +aB +be +be +be +aa +aa +aa +aa +aa +aa +"} +(6,1,1) = {" +ac +af +af +an +at +au +aG +aF +af +aq +af +af +af +af +af +af +bn +aB +aB +aB +aB +aB +be +be +aa +aa +aa +aa +aa +aa +"} +(7,1,1) = {" +ac +af +af +ao +au +au +au +aU +af +af +af +af +af +af +af +af +aW +al +al +aV +aB +aB +be +be +aa +aa +aa +aa +aa +aa +"} +(8,1,1) = {" +ac +af +af +ao +au +au +au +aG +aF +af +af +af +af +af +af +af +af +af +af +bn +aB +aB +be +be +be +aa +aa +aa +aa +aa +"} +(9,1,1) = {" +ac +af +af +ao +au +au +au +au +aG +aF +af +af +bw +bw +bw +bw +af +af +af +bn +aB +aB +be +be +be +be +aa +aa +aa +aa +"} +(10,1,1) = {" +ac +af +af +ao +au +au +au +au +au +aU +af +af +bw +bx +bZ +bw +bw +af +af +bn +aB +aB +aB +aB +be +be +be +aa +aa +aa +"} +(11,1,1) = {" +ac +af +af +ap +av +au +au +au +af +af +af +af +bw +bE +ca +bw +bw +af +af +bn +aB +aB +aB +aB +aB +be +be +be +aa +aa +"} +(12,1,1) = {" +ac +af +af +af +ao +au +au +au +au +aU +af +af +bw +bY +cr +bw +bw +af +af +aW +al +al +aV +aB +aB +be +be +be +be +aa +"} +(13,1,1) = {" +ac +af +af +af +ao +au +au +au +au +aG +aF +af +bw +bw +bw +bw +bw +af +af +af +af +af +bn +aB +aB +aB +aB +be +be +be +"} +(14,1,1) = {" +ad +ag +af +af +ao +au +au +au +au +au +aU +af +af +bw +bw +bw +bw +af +aM +af +af +af +aW +al +al +aV +aB +aB +be +be +"} +(15,1,1) = {" +aB +ac +af +af +ao +au +au +au +au +au +aU +af +af +bw +bw +aJ +aO +aO +aO +aO +aO +af +af +af +af +bn +aB +aB +be +be +"} +(16,1,1) = {" +aB +ac +af +af +ao +au +au +af +au +au +aU +af +af +bw +cq +aO +aO +aR +bv +ce +aO +aO +af +af +af +bn +aB +aB +be +be +"} +(17,1,1) = {" +aB +ac +af +af +ao +au +au +au +au +au +aU +af +af +bw +bU +aO +aS +br +aQ +bB +bK +aO +ch +af +af +bn +aB +aB +be +be +"} +(18,1,1) = {" +aB +ac +af +af +ao +au +au +au +au +au +aU +af +af +bw +aJ +aO +bS +aQ +aQ +aQ +bL +aO +aO +af +af +bn +aB +aB +be +be +"} +(19,1,1) = {" +aB +ah +af +af +ap +av +au +au +au +aX +bc +af +af +bw +aO +aO +aO +bq +aQ +aQ +bz +bs +aO +af +af +bn +aB +aB +be +be +"} +(20,1,1) = {" +aC +ai +af +af +aw +aD +aH +aH +aH +aY +aw +af +af +bw +aN +bO +aN +aQ +aQ +bT +bs +bM +aO +bR +af +bn +aB +aB +be +be +"} +(21,1,1) = {" +aC +aj +af +af +ax +ax +ax +aI +aI +aI +ax +bw +bw +bw +aO +aO +aO +by +aQ +ck +bA +bs +aO +af +af +bn +aB +aB +be +be +"} +(22,1,1) = {" +aC +ai +af +af +ay +aE +aK +aK +aK +aZ +ay +af +bw +bw +co +aO +bd +cj +cb +aQ +bG +aO +aO +af +af +bn +aB +aB +be +be +"} +(23,1,1) = {" +aB +ak +af +af +af +ao +au +au +au +aG +aF +af +bw +bw +cp +aO +bo +bt +bI +bH +bP +aO +bN +af +af +bn +aB +aB +be +be +"} +(24,1,1) = {" +aB +ac +af +aq +af +ao +au +au +au +au +aU +af +bw +af +cs +aO +aO +bC +bF +bX +aO +aO +bW +af +af +bn +aB +aB +aB +be +"} +(25,1,1) = {" +aB +ad +ag +af +af +ao +au +au +af +au +aU +bf +bk +af +af +af +aO +aO +aO +aO +aO +bN +af +af +af +bn +aB +aB +aB +aB +"} +(26,1,1) = {" +aB +aB +ac +af +af +ao +au +au +au +au +aG +bg +bk +af +aq +af +af +af +bQ +af +af +af +af +af +af +aW +al +aV +aB +aB +"} +(27,1,1) = {" +aB +aB +ac +af +af +ao +au +au +au +au +au +bh +bl +aA +aA +aF +af +af +af +af +af +af +af +af +af +af +af +bn +aB +aB +"} +(28,1,1) = {" +aB +aB +ac +af +af +ao +au +au +af +au +au +bi +bl +bD +au +aG +aA +aA +aF +af +af +af +af +af +af +af +af +aW +aV +aB +"} +(29,1,1) = {" +aB +aB +ac +af +af +ao +au +au +af +af +au +bi +bl +bD +au +au +au +au +aG +aA +aA +af +aA +aA +aF +af +af +af +aW +aV +"} +(30,1,1) = {" +aB +aB +ac +af +af +ap +av +au +au +ba +au +bi +bl +bD +au +au +au +au +au +au +au +af +au +au +aG +aF +af +af +af +bn +"} +(31,1,1) = {" +aB +aB +ac +af +af +af +ap +av +au +au +au +bi +bl +bD +au +af +au +au +au +au +au +au +au +au +au +aG +aF +af +af +bn +"} +(32,1,1) = {" +aB +aB +ac +af +af +af +af +ap +av +au +au +bi +bl +bD +au +au +au +au +au +af +af +af +au +au +au +au +aU +af +af +bn +"} +(33,1,1) = {" +aB +aB +ad +ag +af +af +af +af +ap +bb +bb +bj +bl +av +au +au +au +au +au +au +ba +af +af +au +au +au +aU +af +af +bn +"} +(34,1,1) = {" +aB +aB +aB +ad +ag +af +af +af +af +af +af +bf +bk +ap +bb +bb +av +au +au +au +au +au +au +au +au +au +aU +af +af +ah +"} +(35,1,1) = {" +be +aB +aB +aB +ad +ag +af +af +af +af +af +bf +bk +af +af +af +ap +av +au +au +au +au +au +au +au +au +aU +af +af +ai +"} +(36,1,1) = {" +be +be +aB +aB +aB +ad +aL +aL +ag +af +af +af +af +af +af +af +af +ap +bb +bb +bb +bb +bb +av +au +au +aU +af +af +aj +"} +(37,1,1) = {" +be +be +be +aB +aB +aB +aB +aB +ac +af +af +af +af +af +af +aq +af +af +af +af +af +af +af +ap +bb +bb +bc +af +af +ai +"} +(38,1,1) = {" +aa +be +be +be +aB +aB +aB +aB +ac +af +af +ba +af +af +af +bp +af +af +af +af +af +af +af +af +af +af +af +af +af +ak +"} +(39,1,1) = {" +aa +aa +be +be +be +be +aB +aB +ad +ag +af +af +af +af +af +af +af +af +af +af +ba +af +af +af +af +af +af +af +af +bn +"} +(40,1,1) = {" +aa +aa +aa +be +be +be +aB +aB +aB +ac +af +af +af +af +af +af +af +ba +af +af +af +af +bu +aL +aL +aL +aL +aL +aL +as +"} +(41,1,1) = {" +aa +aa +aa +aa +be +be +be +aB +aB +ac +af +af +af +af +af +af +af +af +af +af +af +af +bn +aB +aB +aB +aB +aB +aB +aB +"} +(42,1,1) = {" +aa +aa +aa +aa +aa +be +be +aB +aB +ac +af +af +af +af +af +af +af +af +af +af +af +bu +as +aB +aB +aB +aB +aB +aB +aB +"} +(43,1,1) = {" +aa +aa +aa +aa +aa +be +be +aB +aB +ad +am +ar +bm +ar +aT +aL +aL +aL +aL +aL +aL +as +aB +aB +aB +be +be +be +be +be +"} +(44,1,1) = {" +aa +aa +aa +aa +aa +be +be +aB +aB +aB +aB +af +af +af +af +af +aB +aB +aB +aB +aB +aB +aB +aB +be +be +be +be +be +be +"} +(45,1,1) = {" +aa +aa +aa +aa +aa +be +be +aB +aB +aB +aB +aB +aB +aB +aB +aB +aB +aB +aB +aB +aB +aB +aB +be +be +be +aa +aa +aa +aa +"} +(46,1,1) = {" +aa +aa +aa +aa +aa +be +be +be +be +aB +aB +aB +aB +aB +aB +aB +aB +be +be +be +be +be +be +be +be +aa +aa +aa +aa +aa +"} +(47,1,1) = {" +aa +aa +aa +aa +aa +aa +be +be +be +aB +aB +aB +aB +aB +aB +aB +aB +aB +be +be +be +be +be +be +aa +aa +aa +aa +aa +aa +"} +(48,1,1) = {" +aa +aa +aa +aa +aa +aa +aa +aa +aa +aB +aB +aB +aB +aB +aB +aB +aB +aB +be +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa +aa "} diff --git a/maps/expedition_vr/beach/submaps/mountains.dm b/maps/expedition_vr/beach/submaps/mountains.dm index 6766d3465ee..9150c690c28 100644 --- a/maps/expedition_vr/beach/submaps/mountains.dm +++ b/maps/expedition_vr/beach/submaps/mountains.dm @@ -68,82 +68,82 @@ /datum/map_template/surface/mountains/normal/deadBeacon name = "Abandoned Relay" desc = "An unregistered comms relay, abandoned to the elements." - mappath = 'maps/submaps/surface_submaps/mountains/deadBeacon.dmm' + mappath = 'maps/expedition_vr/beach/submaps/deadBeacon.dmm' cost = 10 /datum/map_template/surface/mountains/normal/prepper1 name = "Prepper Bunker" desc = "A little hideaway for someone with more time and money than sense." - mappath = 'maps/submaps/surface_submaps/mountains/prepper1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/prepper1.dmm' cost = 10 /datum/map_template/surface/mountains/normal/qshuttle name = "Quarantined Shuttle" desc = "An emergency landing turned viral outbreak turned tragedy." - mappath = 'maps/submaps/surface_submaps/mountains/quarantineshuttle.dmm' + mappath = 'maps/expedition_vr/beach/submaps/quarantineshuttle.dmm' cost = 20 /datum/map_template/surface/mountains/normal/Mineshaft1 name = "Abandoned Mineshaft 1" desc = "An abandoned minning tunnel from a lost money making effort." - mappath = 'maps/submaps/surface_submaps/mountains/Mineshaft1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Mineshaft1.dmm' cost = 5 /datum/map_template/surface/mountains/normal/crystal1 name = "Crystal Cave 1" desc = "A small cave with glowing gems and diamonds." - mappath = 'maps/submaps/surface_submaps/mountains/crystal1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/crystal1.dmm' cost = 5 allow_duplicates = TRUE /datum/map_template/surface/mountains/normal/crystal2 name = "Crystal Cave 2" desc = "A moderate sized cave with glowing gems and diamonds." - mappath = 'maps/submaps/surface_submaps/mountains/crystal2.dmm' + mappath = 'maps/expedition_vr/beach/submaps/crystal2.dmm' cost = 10 allow_duplicates = TRUE /datum/map_template/surface/mountains/normal/crystal2 name = "Crystal Cave 3" desc = "A large spiral of crystals with diamonds in the center." - mappath = 'maps/submaps/surface_submaps/mountains/crystal3.dmm' + mappath = 'maps/expedition_vr/beach/submaps/crystal3.dmm' cost = 15 /datum/map_template/surface/mountains/normal/lost_explorer name = "Lost Explorer" desc = "The remains of an explorer who rotted away ages ago, and their equipment." - mappath = 'maps/submaps/surface_submaps/mountains/lost_explorer.dmm' + mappath = 'maps/expedition_vr/beach/submaps/lost_explorer.dmm' cost = 5 allow_duplicates = TRUE /datum/map_template/surface/mountains/normal/Rockb1 name = "Rocky Base 1" desc = "Someones underground hidey hole" - mappath = 'maps/submaps/surface_submaps/mountains/Rockb1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Rockb1.dmm' cost = 15 /datum/map_template/surface/mountains/normal/corgiritual name = "Dark Ritual" desc = "Who put all these plushies here? What are they doing?" - mappath = 'maps/submaps/surface_submaps/mountains/ritual.dmm' + mappath = 'maps/expedition_vr/beach/submaps/ritual.dmm' cost = 15 /datum/map_template/surface/mountains/normal/abandonedtemple name = "Abandoned Temple" desc = "An ancient temple, long since abandoned. Perhaps alien in origin?" - mappath = 'maps/submaps/surface_submaps/mountains/temple.dmm' + mappath = 'maps/expedition_vr/beach/submaps/temple.dmm' cost = 20 /datum/map_template/surface/mountains/normal/digsite name = "Dig Site" desc = "A small abandoned dig site." - mappath = 'maps/submaps/surface_submaps/mountains/digsite.dmm' + mappath = 'maps/expedition_vr/beach/submaps/digsite.dmm' cost = 10 /datum/map_template/surface/mountains/normal/vault1 name = "Mine Vault 1" desc = "A small vault with potential loot." - mappath = 'maps/submaps/surface_submaps/mountains/vault1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault1.dmm' cost = 5 allow_duplicates = TRUE template_group = "Buried Vaults" @@ -151,7 +151,7 @@ /datum/map_template/surface/mountains/normal/vault2 name = "Mine Vault 2" desc = "A small vault with potential loot." - mappath = 'maps/submaps/surface_submaps/mountains/vault2.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault2.dmm' cost = 5 allow_duplicates = TRUE template_group = "Buried Vaults" @@ -159,56 +159,56 @@ /datum/map_template/surface/mountains/normal/vault3 name = "Mine Vault 3" desc = "A small vault with potential loot. Also a horrible suprise." - mappath = 'maps/submaps/surface_submaps/mountains/vault3.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault3.dmm' cost = 15 template_group = "Buried Vaults" /datum/map_template/surface/mountains/normal/IceCave1A name = "Ice Cave 1A" desc = "This cave's slippery ice makes it hard to navigate, but determined explorers will be rewarded." - mappath = 'maps/submaps/surface_submaps/mountains/IceCave1A.dmm' + mappath = 'maps/expedition_vr/beach/submaps/IceCave1A.dmm' cost = 10 /datum/map_template/surface/mountains/normal/IceCave1B name = "Ice Cave 1B" desc = "This cave's slippery ice makes it hard to navigate, but determined explorers will be rewarded." - mappath = 'maps/submaps/surface_submaps/mountains/IceCave1B.dmm' + mappath = 'maps/expedition_vr/beach/submaps/IceCave1B.dmm' cost = 10 /datum/map_template/surface/mountains/normal/IceCave1C name = "Ice Cave 1C" desc = "This cave's slippery ice makes it hard to navigate, but determined explorers will be rewarded." - mappath = 'maps/submaps/surface_submaps/mountains/IceCave1C.dmm' + mappath = 'maps/expedition_vr/beach/submaps/IceCave1C.dmm' cost = 10 /datum/map_template/surface/mountains/normal/SwordCave name = "Cursed Sword Cave" desc = "An underground lake. The sword on the lake's island holds a terrible secret." - mappath = 'maps/submaps/surface_submaps/mountains/SwordCave.dmm' + mappath = 'maps/expedition_vr/beach/submaps/SwordCave.dmm' /datum/map_template/surface/mountains/normal/supplydrop1 name = "Supply Drop 1" desc = "A drop pod that landed deep within the mountains." - mappath = 'maps/submaps/surface_submaps/mountains/SupplyDrop1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/SupplyDrop1.dmm' cost = 10 allow_duplicates = TRUE /datum/map_template/surface/mountains/normal/crashedcontainmentshuttle name = "Crashed Cargo Shuttle" desc = "A severely damaged military shuttle, its cargo seems to remain intact." - mappath = 'maps/submaps/surface_submaps/mountains/crashedcontainmentshuttle.dmm' + mappath = 'maps/expedition_vr/beach/submaps/crashedcontainmentshuttle.dmm' cost = 30 /datum/map_template/surface/mountains/normal/deadspy name = "Spy Remains" desc = "W+M1 = Salt." - mappath = 'maps/submaps/surface_submaps/mountains/deadspy.dmm' + mappath = 'maps/expedition_vr/beach/submaps/deadspy.dmm' cost = 15 /datum/map_template/surface/mountains/normal/geyser1 name = "Ore-Rich Geyser" desc = "A subterranean geyser that produces steam. This one has a particularly abundant amount of materials surrounding it." - mappath = 'maps/submaps/surface_submaps/mountains/Geyser1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Geyser1.dmm' cost = 5 allow_duplicates = TRUE template_group = "Underground Geysers" @@ -216,7 +216,7 @@ /datum/map_template/surface/mountains/normal/geyser2 name = "Fenced Geyser" desc = "A subterranean geyser that produces steam. This one has a damaged fence surrounding it." - mappath = 'maps/submaps/surface_submaps/mountains/Geyser2.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Geyser2.dmm' cost = 5 allow_duplicates = TRUE template_group = "Underground Geysers" @@ -224,7 +224,7 @@ /datum/map_template/surface/mountains/normal/geyser3 name = "Magmatic Geyser" desc = "A subterranean geyser that produces incendiary gas. It is recessed into the ground, and filled with magma. It's a relatively dormant volcano." - mappath = 'maps/submaps/surface_submaps/mountains/Geyser2.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Geyser2.dmm' cost = 10 allow_duplicates = TRUE template_group = "Underground Geysers" @@ -232,7 +232,7 @@ /datum/map_template/surface/mountains/normal/cliff1 name = "Ore-Topped Cliff" desc = "A raised area of rock created by volcanic forces." - mappath = 'maps/submaps/surface_submaps/mountains/Cliff1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Cliff1.dmm' cost = 5 allow_duplicates = TRUE template_group = "Underground Cliffs" @@ -240,7 +240,7 @@ /datum/map_template/surface/mountains/normal/deadly_rabbit // VOREStation Edit name = "The Killer Rabbit" desc = "A cave where the Knights of the Round have fallen to a murderous Rabbit." - mappath = 'maps/submaps/surface_submaps/mountains/deadly_rabbit_vr.dmm' + mappath = 'maps/expedition_vr/beach/submaps/deadly_rabbit_vr.dmm' cost = 5 allow_duplicates = FALSE @@ -252,46 +252,46 @@ /datum/map_template/surface/mountains/deep/lost_explorer name = "Lost Explorer, Deep" desc = "The remains of an explorer who rotted away ages ago, and their equipment. Again." - mappath = 'maps/submaps/surface_submaps/mountains/lost_explorer.dmm' + mappath = 'maps/expedition_vr/beach/submaps/lost_explorer.dmm' cost = 5 allow_duplicates = TRUE */ /datum/map_template/surface/mountains/normal/crashed_ufo //VOREStation Edit name = "Crashed UFO" desc = "A (formerly) flying saucer that is now embedded into the mountain, yet it still seems to be running..." - mappath = 'maps/submaps/surface_submaps/mountains/crashed_ufo.dmm' + mappath = 'maps/expedition_vr/beach/submaps/crashed_ufo.dmm' cost = 40 discard_prob = 50 /datum/map_template/surface/mountains/normal/crashed_ufo_frigate //VOREStation Edit name = "Crashed UFO Frigate" desc = "A (formerly) flying saucer that is now embedded into the mountain, yet the combat protocols still seem to be running..." - mappath = 'maps/submaps/surface_submaps/mountains/crashed_ufo_frigate.dmm' + mappath = 'maps/expedition_vr/beach/submaps/crashed_ufo_frigate.dmm' cost = 60 discard_prob = 50 /datum/map_template/surface/mountains/normal/Scave1 //VOREStation Edit name = "Spider Cave 1" desc = "A minning tunnel home to an aggressive collection of spiders." - mappath = 'maps/submaps/surface_submaps/mountains/Scave1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Scave1.dmm' cost = 20 /datum/map_template/surface/mountains/normal/CaveTrench //VOREStation Edit name = "Cave River" desc = "A strange underground river." - mappath = 'maps/submaps/surface_submaps/mountains/CaveTrench.dmm' + mappath = 'maps/expedition_vr/beach/submaps/CaveTrench.dmm' cost = 20 /datum/map_template/surface/mountains/normal/Cavelake //VOREStation Edit name = "Cave Lake" desc = "A large underground lake." - mappath = 'maps/submaps/surface_submaps/mountains/Cavelake.dmm' + mappath = 'maps/expedition_vr/beach/submaps/Cavelake.dmm' cost = 20 /datum/map_template/surface/mountains/normal/vault1 //VOREStation Edit name = "Mine Vault 1" desc = "A small vault with potential loot." - mappath = 'maps/submaps/surface_submaps/mountains/vault1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault1.dmm' cost = 5 allow_duplicates = TRUE template_group = "Buried Vaults" @@ -299,7 +299,7 @@ /datum/map_template/surface/mountains/normal/vault2 //VOREStation Edit name = "Mine Vault 2" desc = "A small vault with potential loot." - mappath = 'maps/submaps/surface_submaps/mountains/vault2.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault2.dmm' cost = 5 allow_duplicates = TRUE template_group = "Buried Vaults" @@ -307,68 +307,68 @@ /datum/map_template/surface/mountains/normal/vault3 //VOREStation Edit name = "Mine Vault 3" desc = "A small vault with potential loot. Also a horrible suprise." - mappath = 'maps/submaps/surface_submaps/mountains/vault3.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault3.dmm' cost = 15 template_group = "Buried Vaults" /datum/map_template/surface/mountains/normal/vault4 //VOREStation Edit name = "Mine Vault 4" desc = "A small xeno vault with potential loot. Also horrible suprises." - mappath = 'maps/submaps/surface_submaps/mountains/vault4.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault4.dmm' cost = 20 template_group = "Buried Vaults" /datum/map_template/surface/mountains/normal/vault5 //VOREStation Edit name = "Mine Vault 5" desc = "A small xeno vault with potential loot. Also major horrible suprises." - mappath = 'maps/submaps/surface_submaps/mountains/vault5.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault5.dmm' cost = 25 template_group = "Buried Vaults" /datum/map_template/surface/mountains/normal/vault6 //VOREStation Edit name = "Mine Vault 6" desc = "A small mercenary tower with potential loot." - mappath = 'maps/submaps/surface_submaps/mountains/vault6.dmm' + mappath = 'maps/expedition_vr/beach/submaps/vault6.dmm' cost = 25 template_group = "Buried Vaults" /datum/map_template/surface/mountains/normal/BlastMine1 //VOREStation Edit name = "Blast Mine 1" desc = "An abandoned blast mining site, seems that local wildlife has moved in." - mappath = 'maps/submaps/surface_submaps/mountains/BlastMine1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/BlastMine1.dmm' cost = 20 /datum/map_template/surface/mountains/normal/lava_trench //VOREStation Edit name = "lava trench" desc = "A long stretch of lava underground, almost river-like, with a small crystal research outpost on the side." - mappath = 'maps/submaps/surface_submaps/mountains/lava_trench.dmm' + mappath = 'maps/expedition_vr/beach/submaps/lava_trench.dmm' cost = 20 fixed_orientation = TRUE /datum/map_template/surface/mountains/normal/crashedmedshuttle //VOREStation Edit name = "Crashed Med Shuttle" desc = "A medical response shuttle that went missing some time ago. So this is where they went." - mappath = 'maps/submaps/surface_submaps/mountains/CrashedMedShuttle1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/CrashedMedShuttle1.dmm' cost = 20 fixed_orientation = TRUE /datum/map_template/surface/mountains/normal/excavation1 //VOREStation Edit name = "Excavation Site" desc = "An abandoned mining site." - mappath = 'maps/submaps/surface_submaps/mountains/excavation1.dmm' + mappath = 'maps/expedition_vr/beach/submaps/excavation1.dmm' cost = 20 /datum/map_template/surface/mountains/deep/spatial_anomaly name = "spatial anomaly" desc = "A strange section of the caves that seems twist and turn in ways that shouldn't be physically possible." - mappath = 'maps/submaps/surface_submaps/mountains/spatial_anomaly.dmm' + mappath = 'maps/expedition_vr/beach/submaps/spatial_anomaly.dmm' cost = 20 fixed_orientation = TRUE /datum/map_template/surface/mountains/normal/Speakeasy //VOREStation add name = "Speakeasy" desc = "A hidden underground bar to serve drinks in secret and in style." - mappath = 'maps/submaps/surface_submaps/mountains/speakeasy_vr.dmm' + mappath = 'maps/expedition_vr/beach/submaps/speakeasy_vr.dmm' cost = 10 allow_duplicates = FALSE diff --git a/maps/expedition_vr/beach/submaps/prepper1.dmm b/maps/expedition_vr/beach/submaps/prepper1.dmm index 2e9f7a24d4b..15032104116 100644 --- a/maps/expedition_vr/beach/submaps/prepper1.dmm +++ b/maps/expedition_vr/beach/submaps/prepper1.dmm @@ -1,33 +1,224 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/wall/r_wall,/area/submap/cave/prepper1) -"c" = (/obj/structure/table/steel,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/item/stack/rods,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"d" = (/obj/structure/table/steel,/obj/random/maintenance/security,/obj/item/stack/cable_coil/random,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"e" = (/obj/structure/table/steel,/obj/random/maintenance/engineering,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"f" = (/obj/structure/table/steel,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"g" = (/obj/structure/table/steel,/obj/item/weapon/storage/box/glasses,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"h" = (/obj/structure/table/steel,/obj/random/toolbox,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"i" = (/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"j" = (/obj/structure/table/steel,/obj/item/weapon/tape_roll,/obj/random/maintenance/engineering,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"k" = (/obj/structure/table/steel,/obj/random/maintenance/engineering,/obj/random/maintenance/engineering,/obj/item/stack/tile/floor/steel,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"l" = (/obj/structure/inflatable/door,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"m" = (/obj/structure/closet/wardrobe/grey,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"n" = (/obj/structure/closet/crate/freezer/rations,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"o" = (/obj/structure/reagent_dispensers/water_cooler/full,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"p" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"q" = (/obj/structure/table/rack,/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/weapon/tank/emergency/oxygen/engi,/obj/item/clothing/mask/gas,/obj/item/clothing/suit/armor/material/makeshift,/obj/item/clothing/head/helmet/bucket,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"r" = (/obj/structure/bed,/obj/item/weapon/bedsheet,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"s" = (/obj/structure/table/steel,/obj/item/device/flashlight/lantern,/turf/simulated/floor/plating,/area/submap/cave/prepper1) -"t" = (/obj/structure/table/rack,/obj/item/weapon/gun/projectile/shotgun/pump/rifle/lever,/obj/item/ammo_magazine/clip/c762,/obj/item/ammo_magazine/clip/c762,/turf/simulated/floor/plating,/area/submap/cave/prepper1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/wall/r_wall, +/area/submap/cave/prepper1) +"c" = ( +/obj/structure/table/steel, +/obj/random/maintenance/engineering, +/obj/random/maintenance/engineering, +/obj/item/stack/rods, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"d" = ( +/obj/structure/table/steel, +/obj/random/maintenance/security, +/obj/item/stack/cable_coil/random, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"e" = ( +/obj/structure/table/steel, +/obj/random/maintenance/engineering, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"f" = ( +/obj/structure/table/steel, +/obj/random/maintenance/engineering, +/obj/random/maintenance/engineering, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"g" = ( +/obj/structure/table/steel, +/obj/item/weapon/storage/box/glasses, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"h" = ( +/obj/structure/table/steel, +/obj/random/toolbox, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"i" = ( +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"j" = ( +/obj/structure/table/steel, +/obj/item/weapon/tape_roll, +/obj/random/maintenance/engineering, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"k" = ( +/obj/structure/table/steel, +/obj/random/maintenance/engineering, +/obj/random/maintenance/engineering, +/obj/item/stack/tile/floor/steel, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"l" = ( +/obj/structure/inflatable/door, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"m" = ( +/obj/structure/closet/wardrobe/grey, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"n" = ( +/obj/structure/closet/crate/freezer/rations, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"o" = ( +/obj/structure/reagent_dispensers/water_cooler/full, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"p" = ( +/obj/structure/loot_pile/maint/technical, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"q" = ( +/obj/structure/table/rack, +/obj/item/weapon/tank/emergency/oxygen/engi, +/obj/item/weapon/tank/emergency/oxygen/engi, +/obj/item/clothing/mask/gas, +/obj/item/clothing/suit/armor/material/makeshift, +/obj/item/clothing/head/helmet/bucket, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"r" = ( +/obj/structure/bed, +/obj/item/weapon/bedsheet, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"s" = ( +/obj/structure/table/steel, +/obj/item/device/flashlight/lantern, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) +"t" = ( +/obj/structure/table/rack, +/obj/item/weapon/gun/projectile/shotgun/pump/rifle/lever, +/obj/item/ammo_magazine/clip/c762, +/obj/item/ammo_magazine/clip/c762, +/turf/simulated/floor/plating, +/area/submap/cave/prepper1) (1,1,1) = {" -aaaaaaaaaa -aabbbbbbaa -abbcdefbba -abghiijkba -aliiiiimba -aliiiiinba -aboiiipnba -abbqrstbba -aabbbbbbaa -aaaaaaaaaa +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +b +b +l +l +b +b +a +a +"} +(3,1,1) = {" +a +b +b +g +i +i +o +b +b +a +"} +(4,1,1) = {" +a +b +c +h +i +i +i +q +b +a +"} +(5,1,1) = {" +a +b +d +i +i +i +i +r +b +a +"} +(6,1,1) = {" +a +b +e +i +i +i +i +s +b +a +"} +(7,1,1) = {" +a +b +f +j +i +i +p +t +b +a +"} +(8,1,1) = {" +a +b +b +k +m +n +n +b +b +a +"} +(9,1,1) = {" +a +a +b +b +b +b +b +b +a +a +"} +(10,1,1) = {" +a +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/ritual.dmm b/maps/expedition_vr/beach/submaps/ritual.dmm index 8aab49c0092..9506d7e2cb9 100644 --- a/maps/expedition_vr/beach/submaps/ritual.dmm +++ b/maps/expedition_vr/beach/submaps/ritual.dmm @@ -1,15 +1,70 @@ -"a" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CorgiRitual) -"b" = (/obj/structure/plushie/ian,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CorgiRitual) -"c" = (/obj/item/weapon/flame/candle/everburn,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CorgiRitual) -"d" = (/obj/structure/plushie/ian{dir = 8},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CorgiRitual) -"e" = (/obj/structure/plushie/ian{dir = 4},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CorgiRitual) -"f" = (/obj/structure/ghost_pod/manual/corgi,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CorgiRitual) -"g" = (/obj/structure/plushie/ian{dir = 1},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/CorgiRitual) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/CorgiRitual) +"b" = ( +/obj/structure/plushie/ian, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/CorgiRitual) +"c" = ( +/obj/item/weapon/flame/candle/everburn, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/CorgiRitual) +"d" = ( +/obj/structure/plushie/ian{ + dir = 8 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/CorgiRitual) +"e" = ( +/obj/structure/plushie/ian{ + dir = 4 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/CorgiRitual) +"f" = ( +/obj/structure/ghost_pod/manual/corgi, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/CorgiRitual) +"g" = ( +/obj/structure/plushie/ian{ + dir = 1 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/CorgiRitual) (1,1,1) = {" -aabaa -acacd -eafad -ecaca -aagaa +a +a +e +e +a +"} +(2,1,1) = {" +a +c +a +c +a +"} +(3,1,1) = {" +b +a +f +a +g +"} +(4,1,1) = {" +a +c +a +c +a +"} +(5,1,1) = {" +a +d +d +a +a "} diff --git a/maps/expedition_vr/beach/submaps/spatial_anomaly.dmm b/maps/expedition_vr/beach/submaps/spatial_anomaly.dmm index 0adb4b8937d..9b0f64aad93 100644 --- a/maps/expedition_vr/beach/submaps/spatial_anomaly.dmm +++ b/maps/expedition_vr/beach/submaps/spatial_anomaly.dmm @@ -1,82 +1,1256 @@ -"a" = (/turf/simulated/wall/solidrock,/area/submap/spatial_anomaly) -"b" = (/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"c" = (/obj/effect/map_effect/portal/master/side_a{dir = 4; icon_state = "portal_side_a"; portal_id = "spatial_anomaly_5"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"d" = (/obj/effect/map_effect/portal/master/side_b{dir = 8; icon_state = "portal_side_b"; portal_id = "spatial_anomaly_5"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"e" = (/obj/structure/barricade,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"f" = (/turf/template_noop,/area/template_noop) -"g" = (/obj/effect/map_effect/portal/master/side_b{portal_id = "spatial_anomaly_4"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"h" = (/obj/effect/map_effect/portal/line/side_a{icon_state = "portal_line_side_a"; dir = 4},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"i" = (/obj/effect/map_effect/portal/line/side_b{icon_state = "portal_line_side_b"; dir = 8},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"j" = (/turf/simulated/floor/lava,/area/submap/spatial_anomaly) -"k" = (/obj/item/weapon/disposable_teleporter/slime,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"l" = (/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"m" = (/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"n" = (/obj/effect/map_effect/portal/master/side_a{dir = 4; icon_state = "portal_side_a"; portal_id = "spatial_anomaly_3"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"o" = (/obj/effect/map_effect/portal/master/side_a{dir = 1; icon_state = "portal_side_a"; portal_id = "spatial_anomaly_4"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"p" = (/obj/effect/map_effect/portal/master/side_b{dir = 8; icon_state = "portal_side_b"; portal_id = "spatial_anomaly_3"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"q" = (/obj/effect/map_effect/portal/master/side_b{portal_id = "spatial_anomaly_2"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"r" = (/obj/effect/map_effect/portal/line/side_b,/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"s" = (/obj/machinery/crystal/lava,/turf/simulated/floor/lava,/area/submap/spatial_anomaly) -"t" = (/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"u" = (/obj/effect/map_effect/portal/master/side_a{portal_id = "spatial_anomaly_1"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"v" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"w" = (/obj/structure/table/steel_reinforced,/obj/item/device/xenoarch_multi_tool,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"x" = (/turf/simulated/wall/solidrock,/area/template_noop) -"y" = (/obj/random/technology_scanner,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"z" = (/obj/structure/table/steel_reinforced,/obj/random/unidentified_medicine/scientific,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"A" = (/obj/structure/table/steel_reinforced,/obj/random/tool/power,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"B" = (/obj/structure/table/steel_reinforced,/obj/item/weapon/ore/diamond,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"C" = (/obj/structure/sign/warning/lava,/turf/simulated/wall,/area/submap/spatial_anomaly) -"D" = (/obj/effect/map_effect/portal/line/side_a,/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"E" = (/obj/structure/table/rack,/obj/item/weapon/pickaxe/jackhammer,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"F" = (/obj/effect/map_effect/portal/master/side_a{dir = 1; icon_state = "portal_side_a"; portal_id = "spatial_anomaly_2"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"G" = (/obj/effect/map_effect/portal/line/side_a{icon_state = "portal_line_side_a"; dir = 1},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"H" = (/turf/unsimulated/wall,/area/template_noop) -"I" = (/obj/effect/map_effect/portal/master/side_b{dir = 1; icon_state = "portal_side_b"; portal_id = "spatial_anomaly_1"},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"J" = (/obj/effect/map_effect/portal/line/side_b{icon_state = "portal_line_side_b"; dir = 1},/obj/effect/map_effect/perma_light/brighter{light_color = "#ff00ff"},/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"K" = (/obj/item/weapon/mining_scanner,/obj/structure/table/rack,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"L" = (/obj/item/weapon/storage/belt/archaeology,/obj/effect/decal/remains/human,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"M" = (/obj/structure/bookcase/manuals/xenoarchaeology,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"N" = (/obj/item/weapon/pickaxe/brush,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"O" = (/obj/item/weapon/pickaxe/one_pick,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"P" = (/obj/item/weapon/pickaxe/four_pick,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"Q" = (/obj/effect/decal/remains/human,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) -"R" = (/obj/item/weapon/pickaxe/five_pick,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"S" = (/obj/item/weapon/pickaxe/six_pick,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"T" = (/obj/item/weapon/pickaxe/two_pick,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"U" = (/obj/item/device/measuring_tape,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"X" = (/obj/item/weapon/pickaxe/three_pick,/turf/simulated/floor/outdoors/rocks/caves,/area/submap/spatial_anomaly) -"Y" = (/obj/item/weapon/pickaxe/excavationdrill,/turf/simulated/floor/plating/external,/area/submap/spatial_anomaly) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/wall/solidrock, +/area/submap/spatial_anomaly) +"b" = ( +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"c" = ( +/obj/effect/map_effect/portal/master/side_a{ + dir = 4; + icon_state = "portal_side_a"; + portal_id = "spatial_anomaly_5" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"d" = ( +/obj/effect/map_effect/portal/master/side_b{ + dir = 8; + icon_state = "portal_side_b"; + portal_id = "spatial_anomaly_5" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"e" = ( +/obj/structure/barricade, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"f" = ( +/turf/template_noop, +/area/template_noop) +"g" = ( +/obj/effect/map_effect/portal/master/side_b{ + portal_id = "spatial_anomaly_4" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"h" = ( +/obj/effect/map_effect/portal/line/side_a{ + icon_state = "portal_line_side_a"; + dir = 4 + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"i" = ( +/obj/effect/map_effect/portal/line/side_b{ + icon_state = "portal_line_side_b"; + dir = 8 + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"j" = ( +/turf/simulated/floor/lava, +/area/submap/spatial_anomaly) +"k" = ( +/obj/item/weapon/disposable_teleporter/slime, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"l" = ( +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"m" = ( +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"n" = ( +/obj/effect/map_effect/portal/master/side_a{ + dir = 4; + icon_state = "portal_side_a"; + portal_id = "spatial_anomaly_3" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"o" = ( +/obj/effect/map_effect/portal/master/side_a{ + dir = 1; + icon_state = "portal_side_a"; + portal_id = "spatial_anomaly_4" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"p" = ( +/obj/effect/map_effect/portal/master/side_b{ + dir = 8; + icon_state = "portal_side_b"; + portal_id = "spatial_anomaly_3" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"q" = ( +/obj/effect/map_effect/portal/master/side_b{ + portal_id = "spatial_anomaly_2" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"r" = ( +/obj/effect/map_effect/portal/line/side_b, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"s" = ( +/obj/machinery/crystal/lava, +/turf/simulated/floor/lava, +/area/submap/spatial_anomaly) +"t" = ( +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"u" = ( +/obj/effect/map_effect/portal/master/side_a{ + portal_id = "spatial_anomaly_1" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"v" = ( +/obj/item/weapon/stool/padded, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"w" = ( +/obj/structure/table/steel_reinforced, +/obj/item/device/xenoarch_multi_tool, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"x" = ( +/turf/simulated/wall/solidrock, +/area/template_noop) +"y" = ( +/obj/random/technology_scanner, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"z" = ( +/obj/structure/table/steel_reinforced, +/obj/random/unidentified_medicine/scientific, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"A" = ( +/obj/structure/table/steel_reinforced, +/obj/random/tool/power, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"B" = ( +/obj/structure/table/steel_reinforced, +/obj/item/weapon/ore/diamond, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"C" = ( +/obj/structure/sign/warning/lava, +/turf/simulated/wall, +/area/submap/spatial_anomaly) +"D" = ( +/obj/effect/map_effect/portal/line/side_a, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"E" = ( +/obj/structure/table/rack, +/obj/item/weapon/pickaxe/jackhammer, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"F" = ( +/obj/effect/map_effect/portal/master/side_a{ + dir = 1; + icon_state = "portal_side_a"; + portal_id = "spatial_anomaly_2" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"G" = ( +/obj/effect/map_effect/portal/line/side_a{ + icon_state = "portal_line_side_a"; + dir = 1 + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"H" = ( +/turf/unsimulated/wall, +/area/template_noop) +"I" = ( +/obj/effect/map_effect/portal/master/side_b{ + dir = 1; + icon_state = "portal_side_b"; + portal_id = "spatial_anomaly_1" + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"J" = ( +/obj/effect/map_effect/portal/line/side_b{ + icon_state = "portal_line_side_b"; + dir = 1 + }, +/obj/effect/map_effect/perma_light/brighter{ + light_color = "#ff00ff" + }, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"K" = ( +/obj/item/weapon/mining_scanner, +/obj/structure/table/rack, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"L" = ( +/obj/item/weapon/storage/belt/archaeology, +/obj/effect/decal/remains/human, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"M" = ( +/obj/structure/bookcase/manuals/xenoarchaeology, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"N" = ( +/obj/item/weapon/pickaxe/brush, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"O" = ( +/obj/item/weapon/pickaxe/one_pick, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"P" = ( +/obj/item/weapon/pickaxe/four_pick, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"Q" = ( +/obj/effect/decal/remains/human, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) +"R" = ( +/obj/item/weapon/pickaxe/five_pick, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"S" = ( +/obj/item/weapon/pickaxe/six_pick, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"T" = ( +/obj/item/weapon/pickaxe/two_pick, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"U" = ( +/obj/item/device/measuring_tape, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"X" = ( +/obj/item/weapon/pickaxe/three_pick, +/turf/simulated/floor/outdoors/rocks/caves, +/area/submap/spatial_anomaly) +"Y" = ( +/obj/item/weapon/pickaxe/excavationdrill, +/turf/simulated/floor/plating/external, +/area/submap/spatial_anomaly) (1,1,1) = {" -ffffffffffffffffffffffffffffff -fffffffffffffxxxxxxfffffffffff -fffffxxxxxxxxaaaaaaxxxxxffffff -ffffxaaaaaaaaaaaaaaaaaaaxfffff -ffffaataatcbbbbjjjsjkbdtaxffff -fffxaagaathbbbbbjjjjbbitaaffff -fffaaabaaaaaabCbbsaaaaaaaaffff -fffaaaObaaaabbNbbaaaaaaaaaxfff -ffxaaabbblbbbybbaabPbbblaaafff -ffaaaaaaaaabbbtmaabbaaabaaafff -ffaaaaaaaaatttttaabaaaabaaafff -ffaalbbbbbaatvtQaalaaaabaaafff -ffaabaaaabaaBwzAaabaaaabaaffff -ffaabaaaabaaaaaaaabatnbbaaHHHf -ffxabaaaaoaaaaaaabbaaaaaaaffHf -ffxabaaaataatttaabbaaaaaaaffHf -ffxabRbptaaaqrraabSaatttaaHHaf -ffxaaaaaaaaabbbaabbaauDDablbaf -fffaaaaaaaaabbbaablaabbbaeeaaf -fffaaaalbbbabbbaabbaabbbblbaaf -ffffaabbaabababbbbbaaUbbbEKaff -ffffaaTbbabXbabbLbYaabbbaaaaff -ffffaabbbabbbabbmttaaFGGaaafff -ffffaaIJJablbabtttMaatttaaffff -fffffatttaaaaaaaaaaaaaaaafffff -fffffaaaaaaaaaaaaaaaaaaaffffff -fffffaaaaffaaaaaaaafffffffffff -ffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffff -ffffffffffffffffffffffffffffff +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +"} +(2,1,1) = {" +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +"} +(3,1,1) = {" +f +f +f +f +f +f +f +f +x +a +a +a +a +a +x +x +x +x +f +f +f +f +f +f +f +f +f +f +f +f +"} +(4,1,1) = {" +f +f +f +f +f +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +f +f +f +f +f +f +f +f +f +f +"} +(5,1,1) = {" +f +f +f +x +a +a +a +a +a +a +a +l +b +b +b +b +b +a +a +a +a +a +a +a +f +f +f +f +f +f +"} +(6,1,1) = {" +f +f +x +a +a +a +a +a +a +a +a +b +a +a +a +a +R +a +a +a +a +a +a +a +a +a +a +f +f +f +"} +(7,1,1) = {" +f +f +x +a +t +g +b +O +b +a +a +b +a +a +a +a +b +a +a +a +b +T +b +I +t +a +a +f +f +f +"} +(8,1,1) = {" +f +f +x +a +a +a +a +b +b +a +a +b +a +a +a +a +p +a +a +l +b +b +b +J +t +a +a +f +f +f +"} +(9,1,1) = {" +f +f +x +a +a +a +a +a +b +a +a +b +a +a +a +a +t +a +a +b +a +b +b +J +t +a +a +f +f +f +"} +(10,1,1) = {" +f +f +x +a +t +t +a +a +l +a +a +b +b +b +o +t +a +a +a +b +a +a +a +a +a +a +f +f +f +f +"} +(11,1,1) = {" +f +f +x +a +c +h +a +a +b +a +a +a +a +a +a +a +a +a +a +b +b +b +b +b +a +a +f +f +f +f +"} +(12,1,1) = {" +f +f +x +a +b +b +a +a +b +b +t +a +a +a +a +a +a +a +a +a +a +X +b +l +a +a +a +f +f +f +"} +(13,1,1) = {" +f +f +x +a +b +b +a +b +b +b +t +t +B +a +a +t +q +b +b +b +b +b +b +b +a +a +a +f +f +f +"} +(14,1,1) = {" +f +x +a +a +b +b +b +b +y +b +t +v +w +a +a +t +r +b +b +b +a +a +a +a +a +a +a +f +f +f +"} +(15,1,1) = {" +f +x +a +a +b +b +C +N +b +t +t +t +z +a +a +t +r +b +b +b +b +b +b +b +a +a +a +f +f +f +"} +(16,1,1) = {" +f +x +a +a +j +b +b +b +b +m +t +Q +A +a +a +a +a +a +a +a +b +b +b +t +a +a +a +f +f +f +"} +(17,1,1) = {" +f +x +a +a +j +j +b +b +a +a +a +a +a +a +a +a +a +a +a +a +b +L +m +t +a +a +a +f +f +f +"} +(18,1,1) = {" +f +x +a +a +j +j +s +a +a +a +a +a +a +a +b +b +b +b +b +b +b +b +t +t +a +a +a +f +f +f +"} +(19,1,1) = {" +f +x +a +a +s +j +a +a +b +b +b +l +b +b +b +b +S +b +l +b +b +Y +t +M +a +a +a +f +f +f +"} +(20,1,1) = {" +f +f +x +a +j +j +a +a +P +b +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +f +f +f +f +"} +(21,1,1) = {" +f +f +x +a +k +b +a +a +b +a +a +a +a +t +a +a +a +a +a +a +a +a +a +a +a +a +f +f +f +f +"} +(22,1,1) = {" +f +f +x +a +b +b +a +a +b +a +a +a +a +n +a +a +t +u +b +b +U +b +F +t +a +a +f +f +f +f +"} +(23,1,1) = {" +f +f +x +a +d +i +a +a +b +a +a +a +a +b +a +a +t +D +b +b +b +b +G +t +a +a +f +f +f +f +"} +(24,1,1) = {" +f +f +x +a +t +t +a +a +l +b +b +b +b +b +a +a +t +D +b +b +b +b +G +t +a +a +f +f +f +f +"} +(25,1,1) = {" +f +f +f +x +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +b +b +a +a +a +a +f +f +f +f +f +"} +(26,1,1) = {" +f +f +f +f +x +a +a +a +a +a +a +a +a +a +a +a +a +b +e +l +E +a +a +a +f +f +f +f +f +f +"} +(27,1,1) = {" +f +f +f +f +f +f +f +x +a +a +a +a +f +H +f +f +H +l +e +b +K +a +a +f +f +f +f +f +f +f +"} +(28,1,1) = {" +f +f +f +f +f +f +f +f +f +f +f +f +f +H +f +f +H +b +a +a +a +a +f +f +f +f +f +f +f +f +"} +(29,1,1) = {" +f +f +f +f +f +f +f +f +f +f +f +f +f +H +H +H +a +a +a +a +f +f +f +f +f +f +f +f +f +f +"} +(30,1,1) = {" +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f +f "} diff --git a/maps/expedition_vr/beach/submaps/speakeasy_vr.dmm b/maps/expedition_vr/beach/submaps/speakeasy_vr.dmm index d4e01a8df1b..0f8c789a935 100644 --- a/maps/expedition_vr/beach/submaps/speakeasy_vr.dmm +++ b/maps/expedition_vr/beach/submaps/speakeasy_vr.dmm @@ -1,54 +1,458 @@ -"a" = (/turf/template_noop,/area/submap/Speakeasy) -"c" = (/turf/simulated/floor/carpet/turcarpet,/area/submap/Speakeasy) -"f" = (/obj/structure/table/gamblingtable,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"g" = (/obj/structure/bed/chair/wood{dir = 1},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"h" = (/obj/random/handgun,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"i" = (/obj/item/clothing/head/fedora,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"j" = (/obj/structure/bookcase,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"k" = (/obj/item/weapon/stool/padded,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"l" = (/obj/structure/bed/chair/comfy/black,/turf/simulated/floor/carpet/turcarpet,/area/submap/Speakeasy) -"m" = (/obj/structure/table/woodentable,/obj/machinery/light/poi{dir = 4},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"n" = (/obj/structure/reagent_dispensers/beerkeg,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"o" = (/obj/structure/simple_door/wood,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"p" = (/obj/machinery/media/jukebox,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"s" = (/obj/structure/bed/chair/wood{dir = 4},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"u" = (/obj/structure/table/gamblingtable,/obj/machinery/light/poi{dir = 4},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"v" = (/obj/structure/table/fancyblack,/obj/item/clothing/mask/smokable/cigarette/cigar,/turf/simulated/floor/carpet/turcarpet,/area/submap/Speakeasy) -"w" = (/turf/simulated/wall/wood,/area/submap/Speakeasy) -"x" = (/obj/structure/bed/chair/sofa/blue/left{dir = 4},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"B" = (/turf/simulated/floor/wood,/area/submap/Speakeasy) -"C" = (/turf/simulated/mineral/floor/cave,/area/submap/Speakeasy) -"D" = (/obj/structure/bed/chair/sofa/black/corner{dir = 4},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"E" = (/obj/structure/bed/chair/comfy/black{dir = 1},/turf/simulated/floor/carpet/turcarpet,/area/submap/Speakeasy) -"H" = (/obj/machinery/vending/boozeomat,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"I" = (/obj/structure/table/woodentable,/obj/random/drinkbottle,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"K" = (/obj/effect/floor_decal/corner/black/diagonal,/turf/simulated/floor/tiled/neutral,/area/submap/Speakeasy) -"L" = (/obj/structure/bed/chair/wood{dir = 8},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"M" = (/obj/machinery/light/poi{dir = 1},/turf/simulated/floor/carpet/turcarpet,/area/submap/Speakeasy) -"N" = (/obj/structure/table/woodentable,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"O" = (/obj/machinery/light/poi{dir = 1},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"R" = (/obj/structure/bed/chair/sofa/black{dir = 1},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"U" = (/obj/structure/bed/chair/sofa/blue/right{dir = 1},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"V" = (/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_soft/full{dir = 1},/turf/simulated/floor/wood,/area/submap/Speakeasy) -"W" = (/obj/structure/bed/chair/wood,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"X" = (/obj/structure/table/woodentable,/obj/machinery/chemical_dispenser/bar_alc/full,/turf/simulated/floor/wood,/area/submap/Speakeasy) -"Y" = (/obj/structure/table/fancyblack,/obj/random/cash/big,/turf/simulated/floor/carpet/turcarpet,/area/submap/Speakeasy) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/submap/Speakeasy) +"c" = ( +/turf/simulated/floor/carpet/turcarpet, +/area/submap/Speakeasy) +"f" = ( +/obj/structure/table/gamblingtable, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"g" = ( +/obj/structure/bed/chair/wood{ + dir = 1 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"h" = ( +/obj/random/handgun, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"i" = ( +/obj/item/clothing/head/fedora, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"j" = ( +/obj/structure/bookcase, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"k" = ( +/obj/item/weapon/stool/padded, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"l" = ( +/obj/structure/bed/chair/comfy/black, +/turf/simulated/floor/carpet/turcarpet, +/area/submap/Speakeasy) +"m" = ( +/obj/structure/table/woodentable, +/obj/machinery/light/poi{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"n" = ( +/obj/structure/reagent_dispensers/beerkeg, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"o" = ( +/obj/structure/simple_door/wood, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"p" = ( +/obj/machinery/media/jukebox, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"s" = ( +/obj/structure/bed/chair/wood{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"u" = ( +/obj/structure/table/gamblingtable, +/obj/machinery/light/poi{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"v" = ( +/obj/structure/table/fancyblack, +/obj/item/clothing/mask/smokable/cigarette/cigar, +/turf/simulated/floor/carpet/turcarpet, +/area/submap/Speakeasy) +"w" = ( +/turf/simulated/wall/wood, +/area/submap/Speakeasy) +"x" = ( +/obj/structure/bed/chair/sofa/blue/left{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"B" = ( +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"C" = ( +/turf/simulated/mineral/floor/cave, +/area/submap/Speakeasy) +"D" = ( +/obj/structure/bed/chair/sofa/black/corner{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"E" = ( +/obj/structure/bed/chair/comfy/black{ + dir = 1 + }, +/turf/simulated/floor/carpet/turcarpet, +/area/submap/Speakeasy) +"H" = ( +/obj/machinery/vending/boozeomat, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"I" = ( +/obj/structure/table/woodentable, +/obj/random/drinkbottle, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"K" = ( +/obj/effect/floor_decal/corner/black/diagonal, +/turf/simulated/floor/tiled/neutral, +/area/submap/Speakeasy) +"L" = ( +/obj/structure/bed/chair/wood{ + dir = 8 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"M" = ( +/obj/machinery/light/poi{ + dir = 1 + }, +/turf/simulated/floor/carpet/turcarpet, +/area/submap/Speakeasy) +"N" = ( +/obj/structure/table/woodentable, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"O" = ( +/obj/machinery/light/poi{ + dir = 1 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"R" = ( +/obj/structure/bed/chair/sofa/black{ + dir = 1 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"U" = ( +/obj/structure/bed/chair/sofa/blue/right{ + dir = 1 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"V" = ( +/obj/structure/table/woodentable, +/obj/machinery/chemical_dispenser/bar_soft/full{ + dir = 1 + }, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"W" = ( +/obj/structure/bed/chair/wood, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"X" = ( +/obj/structure/table/woodentable, +/obj/machinery/chemical_dispenser/bar_alc/full, +/turf/simulated/floor/wood, +/area/submap/Speakeasy) +"Y" = ( +/obj/structure/table/fancyblack, +/obj/random/cash/big, +/turf/simulated/floor/carpet/turcarpet, +/area/submap/Speakeasy) (1,1,1) = {" -aaaaaaaaaaaaaaaa -awwwwwwwwwwaaaaa -awnnwBMlMBwwwwaa -awiBjBYvYBwfLwwa -awhBjBcEcBwgBBwa -awwwwBBBBBwBWWwa -awXHwwwowwwBNmwa -awBBBOBBBBBBNNwa -awVNININNIBBggwa -awBkkkkkkkBBBBwa -awpBBBBBBBKKKWwa -awwxffBBBBKKKuwa -aawDRUBBBBKKKgwa -aawwwwBBBBsfLwwa -aaaaawwowwwwwwaa -aaaaaaCCCaaaaaaa +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +w +w +w +w +w +w +w +w +w +w +w +a +a +a +a +"} +(3,1,1) = {" +a +w +n +i +h +w +X +B +V +B +p +w +w +w +a +a +"} +(4,1,1) = {" +a +w +n +B +B +w +H +B +N +k +B +x +D +w +a +a +"} +(5,1,1) = {" +a +w +w +j +j +w +w +B +I +k +B +f +R +w +a +a +"} +(6,1,1) = {" +a +w +B +B +B +B +w +O +N +k +B +f +U +w +w +a +"} +(7,1,1) = {" +a +w +M +Y +c +B +w +B +I +k +B +B +B +B +w +C +"} +(8,1,1) = {" +a +w +l +v +E +B +o +B +N +k +B +B +B +B +o +C +"} +(9,1,1) = {" +a +w +M +Y +c +B +w +B +N +k +B +B +B +B +w +C +"} +(10,1,1) = {" +a +w +B +B +B +B +w +B +I +k +B +B +B +B +w +a +"} +(11,1,1) = {" +a +w +w +w +w +w +w +B +B +B +K +K +K +s +w +a +"} +(12,1,1) = {" +a +a +w +f +g +B +B +B +B +B +K +K +K +f +w +a +"} +(13,1,1) = {" +a +a +w +L +B +W +N +N +g +B +K +K +K +L +w +a +"} +(14,1,1) = {" +a +a +w +w +B +W +m +N +g +B +W +u +g +w +w +a +"} +(15,1,1) = {" +a +a +a +w +w +w +w +w +w +w +w +w +w +w +a +a +"} +(16,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/vault1.dmm b/maps/expedition_vr/beach/submaps/vault1.dmm index c1a5ddadd88..5f39b245ab1 100644 --- a/maps/expedition_vr/beach/submaps/vault1.dmm +++ b/maps/expedition_vr/beach/submaps/vault1.dmm @@ -1,17 +1,118 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/wall,/area/submap/cave/vault1) -"c" = (/turf/simulated/floor/plating,/area/submap/cave/vault1) -"d" = (/obj/structure/loot_pile/maint/technical,/turf/simulated/floor/plating,/area/submap/cave/vault1) -"e" = (/obj/random/multiple/minevault,/turf/simulated/floor/plating,/area/submap/cave/vault1) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/wall, +/area/submap/cave/vault1) +"c" = ( +/turf/simulated/floor/plating, +/area/submap/cave/vault1) +"d" = ( +/obj/structure/loot_pile/maint/technical, +/turf/simulated/floor/plating, +/area/submap/cave/vault1) +"e" = ( +/obj/random/multiple/minevault, +/turf/simulated/floor/plating, +/area/submap/cave/vault1) (1,1,1) = {" -aaaaaaaaa -aabbbbbaa -abbcdcbba -abcccccba -abcceccba -abcccccba -abbcccbba -aabbbbbaa -aaaaaaaaa +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +b +b +b +b +b +a +a +"} +(3,1,1) = {" +a +b +b +c +c +c +b +b +a +"} +(4,1,1) = {" +a +b +c +c +c +c +c +b +a +"} +(5,1,1) = {" +a +b +d +c +e +c +c +b +a +"} +(6,1,1) = {" +a +b +c +c +c +c +c +b +a +"} +(7,1,1) = {" +a +b +b +c +c +c +b +b +a +"} +(8,1,1) = {" +a +a +b +b +b +b +b +a +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/vault2.dmm b/maps/expedition_vr/beach/submaps/vault2.dmm index 0c8e85ce2c3..016df627cd7 100644 --- a/maps/expedition_vr/beach/submaps/vault2.dmm +++ b/maps/expedition_vr/beach/submaps/vault2.dmm @@ -1,16 +1,114 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/wall,/area/submap/cave/vault2) -"c" = (/turf/simulated/floor/plating,/area/submap/cave/vault2) -"d" = (/obj/random/multiple/minevault,/turf/simulated/floor/plating,/area/submap/cave/vault2) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/wall, +/area/submap/cave/vault2) +"c" = ( +/turf/simulated/floor/plating, +/area/submap/cave/vault2) +"d" = ( +/obj/random/multiple/minevault, +/turf/simulated/floor/plating, +/area/submap/cave/vault2) (1,1,1) = {" -aaaaaaaaa -abbaaabba -abbbbbbba -aabcccbaa -aabcdcbaa -aabcccbaa -abbbbbbba -abbaaabba -aaaaaaaaa +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +b +b +a +a +a +b +b +a +"} +(3,1,1) = {" +a +b +b +b +b +b +b +b +a +"} +(4,1,1) = {" +a +a +b +c +c +c +b +a +a +"} +(5,1,1) = {" +a +a +b +c +d +c +b +a +a +"} +(6,1,1) = {" +a +a +b +c +c +c +b +a +a +"} +(7,1,1) = {" +a +b +b +b +b +b +b +b +a +"} +(8,1,1) = {" +a +b +b +a +a +a +b +b +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/vault3.dmm b/maps/expedition_vr/beach/submaps/vault3.dmm index bd93aba0961..16c4876348d 100644 --- a/maps/expedition_vr/beach/submaps/vault3.dmm +++ b/maps/expedition_vr/beach/submaps/vault3.dmm @@ -1,21 +1,141 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/turf/simulated/wall,/area/submap/cave/vault3) -"c" = (/obj/effect/alien/weeds,/obj/random/multiple/minevault,/turf/simulated/floor/plating,/area/submap/cave/vault3) -"d" = (/obj/structure/loot_pile/maint/technical,/obj/effect/alien/weeds,/turf/simulated/floor/plating,/area/submap/cave/vault3) -"e" = (/obj/effect/alien/weeds,/mob/living/simple_mob/animal/space/alien/drone,/turf/simulated/floor/plating,/area/submap/cave/vault3) -"f" = (/obj/effect/alien/weeds,/obj/effect/alien/weeds,/turf/simulated/floor/plating,/area/submap/cave/vault3) -"g" = (/obj/effect/alien/weeds,/turf/simulated/floor/plating,/area/submap/cave/vault3) -"h" = (/obj/effect/alien/weeds,/obj/effect/alien/weeds,/obj/effect/alien/weeds/node,/turf/simulated/floor/plating,/area/submap/cave/vault3) -"i" = (/obj/structure/bed/nest,/turf/simulated/floor/plating,/area/submap/cave/vault3) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/wall, +/area/submap/cave/vault3) +"c" = ( +/obj/effect/alien/weeds, +/obj/random/multiple/minevault, +/turf/simulated/floor/plating, +/area/submap/cave/vault3) +"d" = ( +/obj/structure/loot_pile/maint/technical, +/obj/effect/alien/weeds, +/turf/simulated/floor/plating, +/area/submap/cave/vault3) +"e" = ( +/obj/effect/alien/weeds, +/mob/living/simple_mob/animal/space/alien/drone, +/turf/simulated/floor/plating, +/area/submap/cave/vault3) +"f" = ( +/obj/effect/alien/weeds, +/obj/effect/alien/weeds, +/turf/simulated/floor/plating, +/area/submap/cave/vault3) +"g" = ( +/obj/effect/alien/weeds, +/turf/simulated/floor/plating, +/area/submap/cave/vault3) +"h" = ( +/obj/effect/alien/weeds, +/obj/effect/alien/weeds, +/obj/effect/alien/weeds/node, +/turf/simulated/floor/plating, +/area/submap/cave/vault3) +"i" = ( +/obj/structure/bed/nest, +/turf/simulated/floor/plating, +/area/submap/cave/vault3) (1,1,1) = {" -aaaaaaaaa -aabbbbbaa -abbcdcbba -abefffgba -abgfhfgba -abgfffeba -abbigibba -aabbbbbaa -aaaaaaaaa +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +b +b +b +b +b +a +a +"} +(3,1,1) = {" +a +b +b +e +g +g +b +b +a +"} +(4,1,1) = {" +a +b +c +f +f +f +i +b +a +"} +(5,1,1) = {" +a +b +d +f +h +f +g +b +a +"} +(6,1,1) = {" +a +b +c +f +f +f +i +b +a +"} +(7,1,1) = {" +a +b +b +g +g +e +b +b +a +"} +(8,1,1) = {" +a +a +b +b +b +b +b +a +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/vault4.dmm b/maps/expedition_vr/beach/submaps/vault4.dmm index 2884a6f60f1..33851a59076 100644 --- a/maps/expedition_vr/beach/submaps/vault4.dmm +++ b/maps/expedition_vr/beach/submaps/vault4.dmm @@ -1,22 +1,141 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/obj/structure/alien/wall,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"c" = (/obj/structure/simple_door/resin,/obj/effect/alien/weeds,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"d" = (/obj/effect/alien/weeds,/obj/structure/bed/nest,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"e" = (/obj/effect/alien/weeds,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"f" = (/obj/effect/alien/weeds,/mob/living/simple_mob/animal/space/alien/drone,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"g" = (/obj/effect/alien/weeds/node,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"h" = (/obj/effect/alien/weeds,/obj/random/multiple/minevault,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"i" = (/obj/effect/alien/weeds,/mob/living/simple_mob/animal/space/alien,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) -"j" = (/obj/effect/alien/weeds,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault4) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/structure/alien/wall, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) +"c" = ( +/obj/structure/simple_door/resin, +/obj/effect/alien/weeds, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) +"d" = ( +/obj/effect/alien/weeds, +/obj/structure/bed/nest, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) +"e" = ( +/obj/effect/alien/weeds, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) +"f" = ( +/obj/effect/alien/weeds, +/mob/living/simple_mob/animal/space/alien/drone, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) +"g" = ( +/obj/effect/alien/weeds/node, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) +"h" = ( +/obj/effect/alien/weeds, +/obj/random/multiple/minevault, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) +"i" = ( +/obj/effect/alien/weeds, +/mob/living/simple_mob/animal/space/alien, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault4) (1,1,1) = {" -aaaaaaaaa -aabbcbbaa -abbdefbba -abdeeghba -aciejeica -abhgeedba -abbfedbba -aabbcbbaa -aaaaaaaaa +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +b +b +c +b +b +a +a +"} +(3,1,1) = {" +a +b +b +d +i +h +b +b +a +"} +(4,1,1) = {" +a +b +d +e +e +g +f +b +a +"} +(5,1,1) = {" +a +c +e +e +e +e +e +c +a +"} +(6,1,1) = {" +a +b +f +g +e +e +d +b +a +"} +(7,1,1) = {" +a +b +b +h +i +d +b +b +a +"} +(8,1,1) = {" +a +a +b +b +c +b +b +a +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/vault5.dmm b/maps/expedition_vr/beach/submaps/vault5.dmm index 34789a39222..3831106ee43 100644 --- a/maps/expedition_vr/beach/submaps/vault5.dmm +++ b/maps/expedition_vr/beach/submaps/vault5.dmm @@ -1,23 +1,151 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/obj/structure/alien/wall,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"c" = (/obj/structure/simple_door/resin,/obj/effect/alien/weeds,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"d" = (/obj/effect/alien/weeds,/obj/structure/bed/nest,/obj/item/weapon/gun/projectile/p92x/large,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"e" = (/obj/effect/alien/weeds,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"f" = (/obj/effect/alien/weeds,/obj/item/clothing/suit/storage/vest/tactical,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"g" = (/obj/effect/alien/weeds,/obj/structure/bed/nest,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"h" = (/obj/effect/alien/weeds,/obj/random/multiple/minevault,/mob/living/simple_mob/animal/space/alien/sentinel/praetorian,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"i" = (/obj/effect/alien/weeds,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"j" = (/obj/effect/alien/weeds,/obj/effect/alien/weeds/node,/mob/living/simple_mob/animal/space/alien/queen/empress,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) -"k" = (/obj/effect/alien/weeds,/obj/item/clothing/head/helmet/tac,/obj/item/weapon/gun/projectile/SVD,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault5) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/structure/alien/wall, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"c" = ( +/obj/structure/simple_door/resin, +/obj/effect/alien/weeds, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"d" = ( +/obj/effect/alien/weeds, +/obj/structure/bed/nest, +/obj/item/weapon/gun/projectile/p92x/large, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"e" = ( +/obj/effect/alien/weeds, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"f" = ( +/obj/effect/alien/weeds, +/obj/item/clothing/suit/storage/vest/tactical, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"g" = ( +/obj/effect/alien/weeds, +/obj/structure/bed/nest, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"h" = ( +/obj/effect/alien/weeds, +/obj/random/multiple/minevault, +/mob/living/simple_mob/animal/space/alien/sentinel/praetorian, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"j" = ( +/obj/effect/alien/weeds, +/obj/effect/alien/weeds/node, +/mob/living/simple_mob/animal/space/alien/queen/empress, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) +"k" = ( +/obj/effect/alien/weeds, +/obj/item/clothing/head/helmet/tac, +/obj/item/weapon/gun/projectile/SVD, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault5) (1,1,1) = {" -aaaaaaaaa -aabbcbbaa -abbdefbba -abgeeehba -abiejeiba -abheeegba -abbkegbba -aabbcbbaa -aaaaaaaaa +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +b +b +b +b +b +a +a +"} +(3,1,1) = {" +a +b +b +g +e +h +b +b +a +"} +(4,1,1) = {" +a +b +d +e +e +e +k +b +a +"} +(5,1,1) = {" +a +c +e +e +j +e +e +c +a +"} +(6,1,1) = {" +a +b +f +e +e +e +g +b +a +"} +(7,1,1) = {" +a +b +b +h +e +g +b +b +a +"} +(8,1,1) = {" +a +a +b +b +b +b +b +a +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a "} diff --git a/maps/expedition_vr/beach/submaps/vault6.dmm b/maps/expedition_vr/beach/submaps/vault6.dmm index d71ea78b38c..d4200ba5ab4 100644 --- a/maps/expedition_vr/beach/submaps/vault6.dmm +++ b/maps/expedition_vr/beach/submaps/vault6.dmm @@ -1,31 +1,206 @@ -"a" = (/turf/template_noop,/area/template_noop) -"b" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 6},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"c" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 2},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"d" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 10},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"e" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 6},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"f" = (/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"g" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 10},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"h" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 4},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"i" = (/mob/living/simple_mob/humanoid/merc/ranged/grenadier,/turf/simulated/floor/cult,/area/submap/cave/vault6) -"j" = (/turf/simulated/floor/cult,/area/submap/cave/vault6) -"k" = (/obj/random/tool/power,/obj/random/tech_supply,/turf/simulated/floor/cult,/area/submap/cave/vault6) -"l" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 8},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"m" = (/obj/structure/bonfire/permanent/sifwood,/obj/structure/grille/rustic,/turf/simulated/floor/cult,/area/submap/cave/vault6) -"n" = (/obj/random/multiple/minevault,/turf/simulated/floor/cult,/area/submap/cave/vault6) -"o" = (/obj/structure/cliff/automatic/corner,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"p" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 5},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"q" = (/obj/structure/cliff/automatic{icon_state = "cliffbuilder"; dir = 9},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"r" = (/obj/structure/cliff/automatic/corner{icon_state = "cliffbuilder-corner"; dir = 9},/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) -"s" = (/obj/structure/cliff/automatic,/turf/simulated/mineral/floor/ignore_mapgen/cave,/area/submap/cave/vault6) +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 6 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"c" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 2 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"d" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 10 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"e" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 6 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"f" = ( +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"g" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 10 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"h" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 4 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"i" = ( +/mob/living/simple_mob/humanoid/merc/ranged/grenadier, +/turf/simulated/floor/cult, +/area/submap/cave/vault6) +"j" = ( +/turf/simulated/floor/cult, +/area/submap/cave/vault6) +"k" = ( +/obj/random/tool/power, +/obj/random/tech_supply, +/turf/simulated/floor/cult, +/area/submap/cave/vault6) +"l" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 8 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"m" = ( +/obj/structure/bonfire/permanent/sifwood, +/obj/structure/grille/rustic, +/turf/simulated/floor/cult, +/area/submap/cave/vault6) +"n" = ( +/obj/random/multiple/minevault, +/turf/simulated/floor/cult, +/area/submap/cave/vault6) +"o" = ( +/obj/structure/cliff/automatic/corner, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"p" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 5 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"q" = ( +/obj/structure/cliff/automatic{ + icon_state = "cliffbuilder"; + dir = 9 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"r" = ( +/obj/structure/cliff/automatic/corner{ + icon_state = "cliffbuilder-corner"; + dir = 9 + }, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) +"s" = ( +/obj/structure/cliff/automatic, +/turf/simulated/mineral/floor/ignore_mapgen/cave, +/area/submap/cave/vault6) (1,1,1) = {" -aaaaaaaaa -aabcccdaa -abefffgda -ahfijkfla -ahfjmjfla -ahfnjjfla -aopfffqra -aaosssraa -aaaaaaaaa +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +b +h +h +h +o +a +a +"} +(3,1,1) = {" +a +b +e +f +f +f +p +o +a +"} +(4,1,1) = {" +a +c +f +i +j +n +f +s +a +"} +(5,1,1) = {" +a +c +f +j +m +j +f +s +a +"} +(6,1,1) = {" +a +c +f +k +j +j +f +s +a +"} +(7,1,1) = {" +a +d +g +f +f +f +q +r +a +"} +(8,1,1) = {" +a +a +d +l +l +l +r +a +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a "} diff --git a/maps/gateway_vr/listeningpost.dmm b/maps/gateway_vr/listeningpost.dmm index a14786ace97..6c2d6b2fb97 100644 --- a/maps/gateway_vr/listeningpost.dmm +++ b/maps/gateway_vr/listeningpost.dmm @@ -211,7 +211,7 @@ /turf/simulated/mineral/floor, /area/mine/unexplored) "aL" = ( -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aM" = ( /turf/simulated/mineral/floor, @@ -220,51 +220,51 @@ /obj/machinery/gateway{ dir = 9 }, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aO" = ( /obj/machinery/gateway{ dir = 1 }, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aP" = ( /obj/machinery/gateway{ dir = 5 }, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aQ" = ( /obj/machinery/gateway{ dir = 8 }, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aR" = ( /obj/machinery/gateway/centeraway, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aS" = ( /obj/machinery/gateway{ dir = 4 }, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aT" = ( /obj/machinery/gateway{ dir = 10 }, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aU" = ( /obj/machinery/gateway, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aV" = ( /obj/machinery/gateway{ dir = 6 }, -/turf/simulated/floor/greengrid, +/turf/simulated/floor/greengrid/airless, /area/mine/explored) "aW" = ( /obj/effect/overmap/visitable/sector/common_gateway/listeningpost, diff --git a/maps/gateway_vr/variable/arynthilake_a.dmm b/maps/gateway_vr/variable/arynthilake_a.dmm index 24a790b1772..42f3f1b517c 100644 --- a/maps/gateway_vr/variable/arynthilake_a.dmm +++ b/maps/gateway_vr/variable/arynthilake_a.dmm @@ -3,7 +3,7 @@ /turf/unsimulated/mineral, /area/gateway/arynthilake) "ac" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake) "ae" = ( /obj/effect/floor_decal/techfloor{ @@ -18,7 +18,7 @@ /turf/simulated/floor/tiled/techfloor, /area/gateway/arynthilake/gateway) "af" = ( -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake) "ag" = ( /turf/simulated/wall/r_wall, @@ -147,7 +147,7 @@ /area/gateway/arynthilake/oldcabin) "aV" = ( /obj/item/weapon/lampshade, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "aX" = ( /turf/simulated/floor/carpet/bcarpet, @@ -227,13 +227,13 @@ /area/gateway/arynthilake) "bn" = ( /obj/structure/table/steel, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) "bo" = ( /obj/structure/table, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -345,7 +345,7 @@ /obj/item/stack/material/steel{ amount = 50 }, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -540,7 +540,7 @@ /area/gateway/arynthilake/dome) "eV" = ( /obj/effect/landmark/mcguffin_spawner, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "eW" = ( /obj/item/device/analyzer/plant_analyzer, @@ -727,7 +727,7 @@ }, /area/gateway/arynthilake/dome) "jI" = ( -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "jK" = ( /obj/structure/table/rack/shelf/steel, @@ -919,7 +919,7 @@ /area/gateway/arynthilake) "nc" = ( /obj/random/awayloot, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "np" = ( /obj/random/mob/semirandom_mob_spawner/animal/e, @@ -927,7 +927,7 @@ /area/gateway/arynthilake) "nr" = ( /obj/effect/fake_sun, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "nx" = ( /obj/machinery/door/airlock/engineering, @@ -1176,7 +1176,7 @@ /area/gateway/arynthilake/engine) "sl" = ( /obj/effect/overmap/visitable/sector/common_gateway/arynthilake, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "sA" = ( /obj/structure/table/rack/steel, @@ -1754,7 +1754,7 @@ /area/gateway/arynthilake/engine) "Iq" = ( /obj/random/mob/semirandom_mob_spawner/humanoid/retaliate, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -1813,7 +1813,7 @@ /turf/simulated/floor/tiled/eris/techmaint_cargo, /area/gateway/arynthilake/dome) "JK" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -1936,7 +1936,7 @@ /turf/simulated/floor/carpet/purcarpet, /area/gateway/arynthilake/dome) "MD" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake/caves) @@ -2070,7 +2070,7 @@ /area/gateway/arynthilake/dome) "Or" = ( /obj/effect/landmark/hidden_level, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "OC" = ( /turf/simulated/floor/carpet/blucarpet{ @@ -2098,7 +2098,7 @@ check_arrest = 0; check_down = 0; check_records = 0; - control_area = /area/gateway/grasslands/underground/maintenance; + control_area = /area/gateway/arynthilake/underground/maintenance; desc = "A firewall prevents AIs from interacting with this device."; lethal = 1; locked = 0; @@ -2150,7 +2150,7 @@ /turf/simulated/floor/tiled/steel_ridged, /area/gateway/arynthilake/engine) "Qr" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "Qx" = ( /obj/random/mob/semirandom_mob_spawner/robot/retaliate, @@ -2308,7 +2308,7 @@ /turf/simulated/floor/wood, /area/gateway/arynthilake/dome) "UZ" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caveruins) "Vf" = ( /obj/structure/closet, @@ -2355,7 +2355,7 @@ /area/gateway/arynthilake/caveruins) "We" = ( /obj/random/mob/semirandom_mob_spawner/monster/e, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "Wj" = ( /obj/machinery/light{ diff --git a/maps/gateway_vr/variable/arynthilake_b.dmm b/maps/gateway_vr/variable/arynthilake_b.dmm index 06169e3a6ba..612294d96b5 100644 --- a/maps/gateway_vr/variable/arynthilake_b.dmm +++ b/maps/gateway_vr/variable/arynthilake_b.dmm @@ -3,7 +3,7 @@ /obj/item/stack/material/steel{ amount = 50 }, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -41,7 +41,7 @@ /area/gateway/arynthilake/dome) "bs" = ( /obj/effect/landmark/mcguffin_spawner, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "bw" = ( /obj/structure/table/sifwooden_reinforced, @@ -72,7 +72,7 @@ /turf/simulated/floor/carpet/purcarpet, /area/gateway/arynthilake/dome) "cg" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake) "ch" = ( /turf/simulated/floor/plating{ @@ -230,7 +230,7 @@ /turf/simulated/floor/tiled/eris, /area/gateway/arynthilake/engine) "ek" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "eq" = ( /obj/structure/lattice, @@ -247,7 +247,7 @@ /area/gateway/arynthilake/dome) "eN" = ( /obj/effect/fake_sun, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "eP" = ( /obj/structure/table/standard{ @@ -309,7 +309,7 @@ /area/gateway/arynthilake/dome) "fC" = ( /obj/effect/overmap/visitable/sector/common_gateway/arynthilake, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "fX" = ( /obj/structure/table/standard{ @@ -467,7 +467,7 @@ /turf/simulated/floor/tiled/techfloor, /area/gateway/arynthilake/gateway) "iX" = ( -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake) "jh" = ( /obj/structure/cable/green{ @@ -503,7 +503,7 @@ check_arrest = 0; check_down = 0; check_records = 0; - control_area = /area/gateway/grasslands/underground/maintenance; + control_area = /area/gateway/arynthilake/underground/maintenance; desc = "A firewall prevents AIs from interacting with this device."; lethal = 1; locked = 0; @@ -731,7 +731,7 @@ /area/gateway/arynthilake/dome) "nK" = ( /obj/structure/table/steel, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -838,7 +838,7 @@ /area/gateway/arynthilake/dome) "pS" = ( /obj/random/awayloot, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "pT" = ( /obj/structure/bed/double/padded, @@ -886,7 +886,7 @@ /turf/simulated/floor/beach/sand/desert, /area/gateway/arynthilake/caves) "rt" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -929,7 +929,7 @@ /area/gateway/arynthilake/dome) "si" = ( /obj/structure/table, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -1187,7 +1187,7 @@ /turf/simulated/floor/water, /area/gateway/arynthilake/caves) "zs" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caveruins) "zt" = ( /obj/structure/table/rack, @@ -1337,7 +1337,7 @@ /area/gateway/arynthilake) "Ev" = ( /obj/random/mob/semirandom_mob_spawner/monster, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake) @@ -1472,7 +1472,7 @@ /turf/simulated/floor/plating/external, /area/gateway/arynthilake/caveruins) "Hw" = ( -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "HK" = ( /obj/machinery/light, @@ -1564,7 +1564,7 @@ /area/gateway/arynthilake/dome) "JB" = ( /obj/item/weapon/lampshade, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "JK" = ( /obj/structure/table/marble, @@ -1666,7 +1666,7 @@ /turf/simulated/floor/outdoors/grass/forest, /area/gateway/arynthilake) "KQ" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ outdoors = 1 }, /area/gateway/arynthilake/caves) @@ -1707,7 +1707,7 @@ /area/gateway/arynthilake/caveruins) "LR" = ( /obj/random/mob/semirandom_mob_spawner/monster/f, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "LY" = ( /obj/random/mob/semirandom_mob_spawner/animal/retaliate/c, @@ -1841,7 +1841,7 @@ /area/gateway/arynthilake/dome) "NX" = ( /obj/random/mob/semirandom_mob_spawner/monster/e, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "Ob" = ( /obj/structure/catwalk, @@ -2024,7 +2024,7 @@ /area/gateway/arynthilake/dome) "Ry" = ( /obj/effect/landmark/hidden_level, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "RK" = ( /obj/structure/table/fancyblack, @@ -2153,7 +2153,7 @@ /area/gateway/arynthilake/dome) "Uq" = ( /obj/random/mob/semirandom_mob_spawner/monster/b, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/caves) "UA" = ( /turf/simulated/wall/sifwood, diff --git a/maps/gateway_vr/variable/arynthilakeunderground_a.dmm b/maps/gateway_vr/variable/arynthilakeunderground_a.dmm index 121b0fac96c..9c1e9f79825 100644 --- a/maps/gateway_vr/variable/arynthilakeunderground_a.dmm +++ b/maps/gateway_vr/variable/arynthilakeunderground_a.dmm @@ -44,7 +44,7 @@ /turf/simulated/floor/tiled/eris/steel/techfloor, /area/gateway/arynthilake/engine) "gh" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "hB" = ( /obj/structure/table/steel_reinforced, @@ -85,7 +85,7 @@ "lM" = ( /obj/effect/map_effect/perma_light/gateway{ light_color = "#0c6ba6"; - light_power = .3; + light_power = 0.3; light_range = 5 }, /turf/simulated/floor/beach/sand/desert, @@ -123,10 +123,10 @@ /area/gateway/arynthilake/engine) "nD" = ( /obj/effect/landmark/hidden_level, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "nO" = ( -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "oM" = ( /turf/simulated/floor/plating/eris/under, @@ -157,7 +157,7 @@ /area/gateway/arynthilake/engine) "qU" = ( /obj/random/awayloot, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "qX" = ( /obj/machinery/porta_turret{ @@ -209,7 +209,7 @@ /area/gateway/arynthilake/engine) "xh" = ( /obj/machinery/crystal, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "zh" = ( /obj/structure/ladder/up, @@ -229,7 +229,7 @@ /area/gateway/arynthilake/engine) "Bj" = ( /obj/random/mob/semirandom_mob_spawner/monster/e, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "BJ" = ( /obj/effect/landmark/gateway_scatter, @@ -253,7 +253,7 @@ /area/gateway/arynthilake/engine) "Eb" = ( /obj/random/mob/semirandom_mob_spawner/monster/f, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "Ek" = ( /obj/machinery/light/small{ @@ -306,9 +306,7 @@ /turf/simulated/floor/tiled/eris/steel/techfloor, /area/gateway/arynthilake/engine) "LF" = ( -/turf/simulated/floor/plating/eris/under{ - temperature = 258.15 - }, +/turf/simulated/floor/plating/eris/under, /area/gateway/arynthilake/underground/maintenance) "LY" = ( /turf/simulated/floor/beach/sand/desert, @@ -381,7 +379,7 @@ /area/gateway/arynthilake/underground/maintenance) "YC" = ( /obj/random/mob/semirandom_mob_spawner/monster/d, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "ZY" = ( /obj/structure/table/rack/shelf/steel, diff --git a/maps/gateway_vr/variable/arynthilakeunderground_b.dmm b/maps/gateway_vr/variable/arynthilakeunderground_b.dmm index 75fa807ad5a..5acb316d642 100644 --- a/maps/gateway_vr/variable/arynthilakeunderground_b.dmm +++ b/maps/gateway_vr/variable/arynthilakeunderground_b.dmm @@ -18,7 +18,7 @@ /turf/simulated/floor/tiled/eris/steel/orangecorner, /area/gateway/arynthilake/engine) "bL" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "bX" = ( /turf/unsimulated/mineral, @@ -50,7 +50,7 @@ /area/gateway/arynthilake/engine) "eQ" = ( /obj/random/awayloot, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "fM" = ( /turf/simulated/floor/tiled/eris/steel/danger, @@ -105,7 +105,7 @@ /area/gateway/arynthilake/engine) "jX" = ( /obj/effect/landmark/hidden_level, -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "kb" = ( /turf/simulated/wall/r_wall, @@ -136,7 +136,7 @@ "ng" = ( /obj/effect/map_effect/perma_light/gateway{ light_color = "#0c6ba6"; - light_power = .3; + light_power = 0.3; light_range = 5 }, /turf/simulated/floor/beach/sand/desert, @@ -188,11 +188,11 @@ "vG" = ( /obj/random/awayloot, /obj/random/mob/semirandom_mob_spawner/monster/f, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "wg" = ( /obj/random/mob/semirandom_mob_spawner/monster/e, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "wi" = ( /turf/simulated/wall/r_wall, @@ -261,7 +261,7 @@ /turf/simulated/floor/tiled/eris/techmaint, /area/gateway/arynthilake/engine) "Ff" = ( -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "Fs" = ( /obj/structure/table/rack/shelf/steel, @@ -323,7 +323,7 @@ /area/gateway/arynthilake/underground/maintenance) "LR" = ( /obj/random/mob/semirandom_mob_spawner/monster/f, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "LY" = ( /obj/structure/table/steel_reinforced, @@ -362,7 +362,7 @@ /area/gateway/arynthilake/engine) "QA" = ( /obj/machinery/crystal, -/turf/simulated/mineral/floor/ignore_cavegen, +/turf/simulated/mineral/floor/ignore_cavegen/cave, /area/gateway/arynthilake/underground) "QT" = ( /obj/structure/table/steel_reinforced, @@ -408,7 +408,7 @@ /turf/simulated/floor/plating/eris/under, /area/gateway/arynthilake/underground/maintenance) "Xt" = ( -/turf/simulated/mineral/ignore_cavegen, +/turf/simulated/mineral/ignore_cavegen/cave, /area/gateway/arynthilake/underground/maintenance) "Xx" = ( /obj/structure/table/rack/shelf/steel, diff --git a/maps/gateway_vr/variable/honlethhighlands_a.dmm b/maps/gateway_vr/variable/honlethhighlands_a.dmm index a3ca7db3966..db7570d4efd 100644 --- a/maps/gateway_vr/variable/honlethhighlands_a.dmm +++ b/maps/gateway_vr/variable/honlethhighlands_a.dmm @@ -6,12 +6,12 @@ }, /area/gateway/honlethhighlands) "ab" = ( -/turf/simulated/mineral/ignore_cavegen{ +/turf/simulated/mineral/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) "ac" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -125,7 +125,7 @@ }, /area/gateway/honlethhighlands/caves) "aE" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ name = "dirt"; outdoors = 1; temperature = 253.15 @@ -190,7 +190,7 @@ /area/gateway/honlethhighlands/town/command) "aS" = ( /obj/effect/landmark/gateway_scatter, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -216,7 +216,7 @@ }, /area/gateway/honlethhighlands) "aX" = ( -/turf/simulated/mineral/ignore_cavegen{ +/turf/simulated/mineral/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/beach) @@ -308,7 +308,7 @@ /area/gateway/honlethhighlands/beach) "bp" = ( /obj/random/mob/semirandom_mob_spawner/animal/retaliate/c, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -513,7 +513,7 @@ /area/gateway/honlethhighlands/gate) "fa" = ( /obj/random/mob/semirandom_mob_spawner/animal/retaliate/b, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -540,7 +540,7 @@ /obj/item/stack/material/wood, /obj/item/stack/material/wood, /obj/item/stack/material/wood, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -665,7 +665,7 @@ /area/gateway/honlethhighlands) "is" = ( /obj/item/weapon/flame/lighter/random, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -822,7 +822,7 @@ /area/gateway/honlethhighlands/beach) "mG" = ( /obj/structure/table/bench/wooden, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -945,7 +945,7 @@ "oe" = ( /obj/structure/bonfire, /obj/random/meat, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1025,13 +1025,13 @@ /area/gateway/honlethhighlands/town/engineering) "pT" = ( /obj/effect/landmark/mcguffin_spawner, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) "pX" = ( /obj/random/maintenance, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1643,7 +1643,7 @@ /area/gateway/honlethhighlands/town/xenobio) "zE" = ( /obj/random/junk, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1721,7 +1721,7 @@ "AK" = ( /obj/random/mre, /obj/random/mre, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1968,7 +1968,7 @@ /area/gateway/honlethhighlands/gate) "Et" = ( /obj/random/mob/semirandom_mob_spawner/animal/retaliate, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2204,7 +2204,7 @@ /area/gateway/honlethhighlands/gate) "JM" = ( /obj/random/cigarettes, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2262,7 +2262,7 @@ /area/gateway/honlethhighlands/beach) "Ld" = ( /obj/random/awayloot, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2321,7 +2321,7 @@ "Ms" = ( /obj/structure/table/bench/wooden, /obj/random/mob/semirandom_mob_spawner/humanoid/retaliate, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2556,7 +2556,7 @@ /area/gateway/honlethhighlands/town/command) "Ro" = ( /obj/random/mob/semirandom_mob_spawner/vore/passive/b, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2910,13 +2910,13 @@ /area/gateway/honlethhighlands/town/bar) "Zw" = ( /obj/random/mob/semirandom_mob_spawner/vore/passive, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) "Zy" = ( /obj/random/drinkbottle, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) diff --git a/maps/gateway_vr/variable/honlethhighlands_b.dmm b/maps/gateway_vr/variable/honlethhighlands_b.dmm index 73e1727581a..7de8389bc76 100644 --- a/maps/gateway_vr/variable/honlethhighlands_b.dmm +++ b/maps/gateway_vr/variable/honlethhighlands_b.dmm @@ -6,12 +6,12 @@ }, /area/gateway/honlethhighlands) "ab" = ( -/turf/simulated/mineral/ignore_cavegen{ +/turf/simulated/mineral/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) "ac" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -125,7 +125,7 @@ }, /area/gateway/honlethhighlands/caves) "aE" = ( -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ name = "dirt"; outdoors = 1; temperature = 253.15 @@ -190,7 +190,7 @@ /area/gateway/honlethhighlands/town/command) "aS" = ( /obj/effect/landmark/gateway_scatter, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -216,7 +216,7 @@ }, /area/gateway/honlethhighlands) "aX" = ( -/turf/simulated/mineral/ignore_cavegen{ +/turf/simulated/mineral/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/beach) @@ -520,7 +520,7 @@ /obj/item/stack/material/wood, /obj/item/stack/material/wood, /obj/item/stack/material/wood, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -656,13 +656,13 @@ /area/gateway/honlethhighlands) "is" = ( /obj/item/weapon/flame/lighter/random, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) "iw" = ( /obj/random/mob/semirandom_mob_spawner/monster, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -821,7 +821,7 @@ "mo" = ( /obj/structure/table/bench/wooden, /obj/random/mob/semirandom_mob_spawner/humanoid, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -836,7 +836,7 @@ /area/gateway/honlethhighlands) "mG" = ( /obj/structure/table/bench/wooden, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -944,7 +944,7 @@ "oe" = ( /obj/structure/bonfire, /obj/random/meat, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1033,13 +1033,13 @@ /area/gateway/honlethhighlands/town/engineering) "pR" = ( /obj/random/mob/semirandom_mob_spawner/monster/c, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) "pT" = ( /obj/effect/landmark/mcguffin_spawner, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1155,7 +1155,7 @@ /area/gateway/honlethhighlands/gate) "qO" = ( /obj/random/mob/semirandom_mob_spawner/monster/f, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1509,7 +1509,7 @@ /area/gateway/honlethhighlands/gate) "wF" = ( /obj/random/mob/semirandom_mob_spawner/monster/b, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1677,7 +1677,7 @@ /area/gateway/honlethhighlands/town/xenobio) "zE" = ( /obj/random/junk, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -1748,7 +1748,7 @@ "AK" = ( /obj/random/mre, /obj/random/mre, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2197,7 +2197,7 @@ /area/gateway/honlethhighlands/gate) "JM" = ( /obj/random/cigarettes, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2493,7 +2493,7 @@ /area/gateway/honlethhighlands/gate) "Qm" = ( /obj/random/mob/semirandom_mob_spawner/monster/e, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2578,7 +2578,7 @@ /area/gateway/honlethhighlands/town/command) "Ro" = ( /obj/random/mob/semirandom_mob_spawner/monster/d, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2634,7 +2634,7 @@ /area/gateway/honlethhighlands/town/supply) "Td" = ( /obj/random/awayloot, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2887,7 +2887,7 @@ /area/gateway/honlethhighlands/town/command) "WQ" = ( /obj/random/mob/semirandom_mob_spawner/humanoid, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) @@ -2959,7 +2959,7 @@ /area/gateway/honlethhighlands/town/bar) "Zy" = ( /obj/random/drinkbottle, -/turf/simulated/mineral/floor/ignore_cavegen{ +/turf/simulated/mineral/floor/ignore_cavegen/cave{ temperature = 253.15 }, /area/gateway/honlethhighlands/caves) diff --git a/maps/gateway_vr/wildwest.dmm b/maps/gateway_vr/wildwest.dmm index 16e6a42d3f0..4aa6d1cace9 100644 --- a/maps/gateway_vr/wildwest.dmm +++ b/maps/gateway_vr/wildwest.dmm @@ -98,11 +98,6 @@ }, /turf/space, /area/space) -"ar" = ( -/obj/structure/lattice, -/obj/structure/lattice, -/turf/space, -/area/space) "as" = ( /obj/effect/gateway, /turf/simulated/floor/cult, @@ -2420,7 +2415,7 @@ af af af af -ar +af af af af @@ -7260,7 +7255,7 @@ fH gF cx aD -ar +af af ia ia @@ -7543,7 +7538,7 @@ af af af af -ar +af ad fM nd @@ -7671,7 +7666,7 @@ ia ia ia af -ar +af af af af diff --git a/maps/offmap_vr/common_offmaps.dm b/maps/offmap_vr/common_offmaps.dm index 41a1707af81..b726a2fec39 100644 --- a/maps/offmap_vr/common_offmaps.dm +++ b/maps/offmap_vr/common_offmaps.dm @@ -220,6 +220,33 @@ mappath = 'maps/gateway_vr/wildwest.dmm' associated_map_datum = /datum/map_z_level/common_lateload/gateway_destination + +///////////////////////////////////////////////////////////////////////////////////// + +/datum/map_template/common_lateload/om_adventure + name = "OM Adventure Submap" + desc = "Please do not use this." + mappath = null + associated_map_datum = null + +/datum/map_z_level/common_lateload/om_adventure_destination + name = "OM Adventure Destination" + z = Z_LEVEL_OM_ADVENTURE + +#include "../om_adventure/grasscave.dm" +/datum/map_template/common_lateload/om_adventure/grasscave + name = "Grass Cave" + desc = "Looks like a cave with some grass in it." + mappath = 'maps/om_adventure/grasscave.dmm' + associated_map_datum = /datum/map_z_level/common_lateload/om_adventure_destination + +/datum/map_template/common_lateload/om_adventure/grasscave/on_map_loaded(z) + . = ..() + seed_submaps(list(z), 60, /area/om_adventure/grasscave/unexplored, /datum/map_template/om_adventure/outdoor) + seed_submaps(list(z), 60, /area/om_adventure/grasscave/rocks, /datum/map_template/om_adventure/cave) + new /datum/random_map/automata/cave_system/no_cracks(null, 3, 3, z, world.maxx - 4, world.maxy - 4) + new /datum/random_map/noise/ore/grasscave(null, 1, 1, z, 64, 64) + ////////////////////////////////////////////////////////////////////////////////////// // Admin-use z-levels for loading whenever an admin feels like #if AWAY_MISSION_TEST @@ -402,6 +429,53 @@ /mob/living/simple_mob/shadekin ) +////////////////////////////////////////////////////////////////////////////// +//Antag/Event/ERT Areas + +#include "../submaps/admin_use_vr/ert.dm" +#include "../submaps/admin_use_vr/mercship.dm" +#include "../submaps/admin_use_vr/salamander_trader.dm" + +/datum/map_template/admin_use/ert + name = "Special Area - ERT" + desc = "It's the ERT ship! Lorge." + mappath = 'maps/submaps/admin_use_vr/ert.dmm' + +/datum/map_template/admin_use/trader + name = "Special Area - Trader" + desc = "Big trader ship." + mappath = 'maps/submaps/admin_use_vr/tradeship.dmm' + +/datum/map_template/admin_use/salamander_trader + name = "Special Area - Salamander Trader" + desc = "Modest trader ship." + mappath = 'maps/submaps/admin_use_vr/salamander_trader.dmm' + +/datum/map_template/admin_use/mercenary + name = "Special Area - Merc Ship" + desc = "Prepare tae be boarded, arr!" + mappath = 'maps/submaps/admin_use_vr/kk_mercship.dmm' + +/datum/map_template/admin_use/skipjack + name = "Special Area - Skipjack Base" + desc = "Stinky!" + mappath = 'maps/submaps/admin_use_vr/skipjack.dmm' + +/datum/map_template/admin_use/thunderdome + name = "Special Area - Thunderdome" + desc = "Thunderrrrdomeee" + mappath = 'maps/submaps/admin_use_vr/thunderdome.dmm' + +/datum/map_template/admin_use/wizardbase + name = "Special Area - Wizard Base" + desc = "Wingardium Levosia" + mappath = 'maps/submaps/admin_use_vr/wizard.dmm' + +/datum/map_template/admin_use/dojo + name = "Special Area - Ninja Dojo" + desc = "Sneaky" + mappath = 'maps/submaps/admin_use_vr/dojo.dmm' + ////////////////////////////////////////////////////////////////////////////// //Overmap ship spawns diff --git a/maps/om_adventure/grasscave.dm b/maps/om_adventure/grasscave.dm new file mode 100644 index 00000000000..e9e3a21ddac --- /dev/null +++ b/maps/om_adventure/grasscave.dm @@ -0,0 +1,335 @@ +#if MAP_TEST +#include "pois/darkstar.dmm" +#include "pois/darktear1.dmm" +#include "pois/darktear2.dmm" +#include "pois/darktear3.dmm" +#include "pois/darktear4.dmm" +#include "pois/fleshtear1.dmm" +#include "pois/fleshtear2.dmm" +#include "pois/fleshtear3.dmm" +#include "pois/fleshtear4.dmm" +#include "pois/cabin1.dmm" +#include "pois/cabin2.dmm" +#include "pois/cabin3.dmm" +#include "pois/camp.dmm" +#include "pois/shuttlewreck1.dmm" +#include "pois/shuttlewreck2.dmm" +#include "pois/shuttlewreck3.dmm" +#include "pois/shuttlewreck4.dmm" +#endif + + +/obj/effect/shuttle_landmark/premade/om_adventure/grasscave/center + name = "Anomaly - Center" + landmark_tag = "om-grasscave-center" + +/obj/effect/shuttle_landmark/premade/om_adventure/grasscave/southeast + name = "Anomaly - Southeast" + landmark_tag = "om-grasscave-southeast" + + +/area/om_adventure/grasscave + name = "Grass Cave" + icon = 'icons/turf/areas_vr.dmi' + icon_state = "bluwhicir" + requires_power = TRUE + dynamic_lighting = TRUE + flags = RAD_SHIELDED + base_turf = /turf/simulated/floor/weird_things/dark + ambience = AMBIENCE_FOREBODING + +/area/om_adventure/grasscave/explored + +/area/om_adventure/grasscave/unexplored + ambience = AMBIENCE_RUINS + +/area/om_adventure/grasscave/rocks + +/obj/effect/overmap/visitable/simplemob/spacewhale/grasscave + initial_generic_waypoints = list("om-grasscave-center", "om-grasscave-southeast") + +/turf/simulated/mineral/omadventure/make_ore(var/rare_ore) + if(mineral) + return + var/mineral_name + if(rare_ore) + mineral_name = pickweight(list( + "marble" = 3, + "uranium" = 10, + "platinum" = 10, + "hematite" = 20, + "carbon" = 30, + "diamond" = 20, + "gold" = 8, + "silver" = 8, + "phoron" = 18, + "lead" = 5, + "verdantium" = 5)) + else + mineral_name = pickweight(list( + "marble" = 2, + "uranium" = 5, + "platinum" = 5, + "hematite" = 35, + "carbon" = 30, + "gold" = 3, + "silver" = 3, + "phoron" = 25, + "lead" = 1)) + + if(mineral_name && (mineral_name in GLOB.ore_data)) + mineral = GLOB.ore_data[mineral_name] + UpdateMineral() + update_icon() + +/datum/random_map/noise/ore/grasscave + descriptor = "grasscave ore distribution map" + deep_val = 0.6 //More riches, normal is 0.7 and 0.8 + rare_val = 0.5 + +/datum/map_template/om_adventure + +/area/om_adventure/poi + name = "POI - OM-A" + icon = 'icons/turf/areas_vr.dmi' + icon_state = "orawhisqu" + ambience = AMBIENCE_FOREBODING + +/area/om_adventure/poi/darkstar + name = "POI - Darkstar" + +/datum/map_template/om_adventure/outdoor/darkstar + name = "Darkstar" + desc = "A mysterious shape!" + mappath = 'pois/darkstar.dmm' + cost = 5 + +/area/om_adventure/poi/darktear1 + name = "POI - Darktear 1" + +/datum/map_template/om_adventure/cave/darktear1 + name = "darktear1" + desc = "A mysterious shape!" + mappath = 'pois/darktear1.dmm' + cost = 5 + +/area/om_adventure/poi/darktear2 + name = "POI - Darktear 2" + +/datum/map_template/om_adventure/cave/darktear2 + name = "darktear2" + desc = "A mysterious shape!" + mappath = 'pois/darktear2.dmm' + cost = 5 + +/area/om_adventure/poi/darktear3 + name = "POI - Darktear 3" + +/datum/map_template/om_adventure/cave/darktear3 + name = "darktear3" + desc = "A mysterious shape!" + mappath = 'pois/darktear3.dmm' + cost = 5 + +/area/om_adventure/poi/darktear4 + name = "POI - Darktear 4" + +/datum/map_template/om_adventure/cave/darktear4 + name = "darktear4" + desc = "A mysterious shape!" + mappath = 'pois/darktear4.dmm' + cost = 5 + +/area/om_adventure/poi/fleshtear1 + name = "POI - Fleshtear 1" + +/datum/map_template/om_adventure/cave/fleshtear1 + name = "fleshtear1" + desc = "Wow gross!" + mappath = 'pois/fleshtear1.dmm' + cost = 5 + +/area/om_adventure/poi/fleshtear2 + name = "POI - Fleshtear 2" + +/datum/map_template/om_adventure/cave/fleshtear2 + name = "fleshtear2" + desc = "Wow gross!" + mappath = 'pois/fleshtear2.dmm' + cost = 5 + +/area/om_adventure/poi/fleshtear3 + name = "POI - Fleshtear 3" + +/datum/map_template/om_adventure/cave/fleshtear3 + name = "fleshtear3" + desc = "Wow gross!" + mappath = 'pois/fleshtear3.dmm' + cost = 5 + +/area/om_adventure/poi/fleshtear4 + name = "POI - Fleshtear 4" + +/datum/map_template/om_adventure/cave/fleshtear4 + name = "fleshtear4" + desc = "Wow gross!" + mappath = 'pois/fleshtear4.dmm' + cost = 5 + +/area/om_adventure/poi/cabin1 + name = "POI - Cabin 1" + +/datum/map_template/om_adventure/outdoor/cabin1 + name = "cabin1" + desc = "A comfy home!" + mappath = 'pois/cabin1.dmm' + cost = 20 + +/area/om_adventure/poi/cabin2 + name = "POI - Cabin 2" + +/datum/map_template/om_adventure/outdoor/cabin2 + name = "cabin2" + desc = "A comfy home!" + mappath = 'pois/cabin2.dmm' + cost = 20 + +/area/om_adventure/poi/cabin3 + name = "POI - Cabin 3" + +/datum/map_template/om_adventure/outdoor/cabin3 + name = "cabin3" + desc = "A comfy... home?" + mappath = 'pois/cabin3.dmm' + cost = 10 + +/area/om_adventure/poi/camp + name = "POI - Camp" + +/datum/map_template/om_adventure/outdoor/camp + name = "Camp" + desc = "A camp!" + mappath = 'pois/camp.dmm' + cost = 20 + +/area/om_adventure/poi/shuttlewreck1 + name = "POI - Shuttlewreck 1" + +/datum/map_template/om_adventure/outdoor/shuttlewreck1 + name = "Shuttle wreck" + desc = "Long abandoned!" + mappath = 'pois/shuttlewreck1.dmm' + cost = 5 + +/area/om_adventure/poi/shuttlewreck2 + name = "POI - Shuttlewreck 2" + +/datum/map_template/om_adventure/outdoor/shuttlewreck2 + name = "Shuttle wreck" + desc = "Long abandoned!" + mappath = 'pois/shuttlewreck2.dmm' + cost = 10 + +/area/om_adventure/poi/shuttlewreck3 + name = "POI - Shuttlewreck 3" + +/datum/map_template/om_adventure/outdoor/shuttlewreck3 + name = "Shuttle wreck" + desc = "Long abandoned!" + mappath = 'pois/shuttlewreck3.dmm' + cost = 5 + +/area/om_adventure/poi/shuttlewreck4 + name = "POI - Shuttlewreck 4" + +/datum/map_template/om_adventure/outdoor/shuttlewreck4 + name = "Shuttle wreck" + desc = "Long abandoned!" + mappath = 'pois/shuttlewreck4.dmm' + cost = 10 + +/area/om_adventure/poi/medicalcenter + name = "POI - medical center" + +/datum/map_template/om_adventure/outdoor/medicalcenter + name = "Medical Center" + desc = "Maybe they used to heal people here." + mappath = 'pois/medicalcenter.dmm' + cost = 10 + +/area/om_adventure/poi/shippart1 + name = "POI - ship part 1" + +/datum/map_template/om_adventure/outdoor/shippart1 + name = "Ship Part" + desc = "Something bad happened here." + mappath = 'pois/shippart1.dmm' + cost = 10 + +/area/om_adventure/poi/woodentemple + name = "POI - Wooden Temple" + +/datum/map_template/om_adventure/cave/woodentemple + name = "Wooden Temple" + desc = "A comfy wooden temple." + mappath = 'pois/woodentemple.dmm' + cost = 10 + +/area/om_adventure/poi/alienchamber1 + name = "POI - Alien Chamber 1" + +/datum/map_template/om_adventure/cave/alienchamber1 + name = "Alien Chamber" + desc = "A mysterious alien chamber!" + mappath = 'pois/alienchamber1.dmm' + cost = 10 + +/area/om_adventure/poi/alienchamber2 + name = "POI - Alien Chamber 2" + +/datum/map_template/om_adventure/cave/alienchamber2 + name = "Alien Chamber" + desc = "A mysterious alien chamber!" + mappath = 'pois/alienchamber2.dmm' + cost = 10 + +/area/om_adventure/poi/alienchamber3 + name = "POI - Alien Chamber 3" + +/datum/map_template/om_adventure/cave/alienchamber3 + name = "Alien Chamber" + desc = "A mysterious alien chamber!" + mappath = 'pois/alienchamber3.dmm' + cost = 10 + +/area/om_adventure/poi/alienchamber4 + name = "POI - Alien Chamber 4" + +/datum/map_template/om_adventure/cave/alienchamber4 + name = "Alien Chamber" + desc = "A mysterious alien chamber!" + mappath = 'pois/alienchamber4.dmm' + cost = 10 + +/obj/tether_away_spawner/spookyland + name = "Spookyland Spawner" + icon = 'icons/mob/randomlandmarks.dmi' + icon_state = "monster" + + faction = "spookyland" + prob_spawn = 50 + prob_fall = 10 + //guard = 10 //Don't wander too far, to stay alive. + mobs_to_pick_from = list( + /mob/living/simple_mob/shadekin/blue = 1, + /mob/living/simple_mob/shadekin/red = 1, + /mob/living/simple_mob/shadekin/green = 10, + /mob/living/simple_mob/shadekin/purple = 1, + /mob/living/simple_mob/shadekin/yellow = 20, + /mob/living/simple_mob/vore/alienanimals/space_ghost = 100, + /mob/living/simple_mob/vore/alienanimals/space_jellyfish = 100, + /mob/living/simple_mob/faithless = 50, + /mob/living/simple_mob/mechanical/infectionbot = 30, + /mob/living/simple_mob/animal/passive/cat/bluespace = 1, + /mob/living/simple_mob/animal/passive/dog/void_puppy = 1 + ) \ No newline at end of file diff --git a/maps/om_adventure/grasscave.dmm b/maps/om_adventure/grasscave.dmm new file mode 100644 index 00000000000..b275729757d --- /dev/null +++ b/maps/om_adventure/grasscave.dmm @@ -0,0 +1,19919 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/obj/effect/overmap/visitable/simplemob/spacewhale/grasscave, +/turf/unsimulated/wall/dark, +/area/om_adventure/grasscave) +"c" = ( +/turf/simulated/floor/outdoors/grass/forest, +/area/om_adventure/grasscave/unexplored) +"n" = ( +/obj/effect/shuttle_landmark/premade/om_adventure/grasscave/southeast, +/turf/simulated/floor/outdoors/grass/forest, +/area/om_adventure/grasscave) +"q" = ( +/turf/simulated/mineral/cave, +/area/om_adventure/grasscave/rocks) +"s" = ( +/turf/simulated/mineral, +/area/om_adventure/grasscave/rocks) +"u" = ( +/turf/simulated/floor/outdoors/grass/forest, +/area/om_adventure/grasscave/explored) +"A" = ( +/obj/effect/shuttle_landmark/premade/om_adventure/grasscave/center, +/turf/simulated/floor/outdoors/grass/forest, +/area/om_adventure/grasscave/explored) +"C" = ( +/turf/unsimulated/wall/dark, +/area/om_adventure/grasscave) +"N" = ( +/turf/simulated/floor/outdoors/grass/forest, +/area/om_adventure/grasscave) +"P" = ( +/turf/unsimulated/floor/dark, +/area/om_adventure/grasscave) +"X" = ( +/obj/effect/fake_sun, +/turf/unsimulated/wall/dark, +/area/om_adventure/grasscave) + +(1,1,1) = {" +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +X +a +"} +(2,1,1) = {" +C +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +C +"} +(3,1,1) = {" +C +P +P +P +P +P +P +P +P +P +P +P +P +P +q +P +P +P +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +P +P +P +P +q +P +q +q +P +P +P +P +P +P +P +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +C +"} +(4,1,1) = {" +C +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +q +P +P +P +P +P +P +P +q +P +P +q +q +q +q +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +q +q +q +q +q +q +q +P +P +q +P +P +q +q +q +q +q +P +P +P +P +P +P +P +P +q +P +P +P +P +P +P +P +P +P +P +P +P +C +"} +(5,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +C +"} +(6,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(7,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(8,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(9,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(10,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(11,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(12,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(13,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(14,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(15,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(16,1,1) = {" +C +P +P +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +s +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(17,1,1) = {" +C +P +P +P +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(18,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(19,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(20,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(21,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(22,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(23,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +c +c +c +c +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(24,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +c +q +q +q +q +c +c +c +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(25,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(26,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(27,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(28,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(29,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(30,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(31,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(32,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(33,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(34,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(35,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +c +c +c +c +c +c +c +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(36,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(37,1,1) = {" +C +P +P +P +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +C +"} +(38,1,1) = {" +C +P +P +P +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +C +"} +(39,1,1) = {" +C +P +P +P +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +C +"} +(40,1,1) = {" +C +P +P +P +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +C +"} +(41,1,1) = {" +C +P +P +P +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +C +"} +(42,1,1) = {" +C +P +P +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(43,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(44,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(45,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +c +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +q +q +q +q +q +q +q +q +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(46,1,1) = {" +C +P +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +q +q +q +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(47,1,1) = {" +C +P +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(48,1,1) = {" +C +P +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +q +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(49,1,1) = {" +C +P +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +c +c +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(50,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +c +c +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(51,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +c +c +c +c +c +c +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(52,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(53,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +q +q +q +q +q +q +q +c +c +c +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(54,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +q +q +q +q +q +q +q +c +c +c +c +q +q +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(55,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(56,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(57,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(58,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(59,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(60,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(61,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(62,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(63,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(64,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(65,1,1) = {" +C +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +q +q +q +q +q +q +q +q +q +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +C +"} +(66,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +C +"} +(67,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +C +"} +(68,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(69,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(70,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(71,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(72,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +u +u +u +u +u +u +u +u +u +u +u +u +A +u +u +u +u +u +u +u +u +u +u +u +u +u +u +N +q +q +q +N +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(73,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +N +N +N +N +N +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(74,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +N +N +N +N +N +c +c +c +c +q +q +q +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(75,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +N +q +q +q +N +c +c +c +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(76,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +c +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(77,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(78,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(79,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(80,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(81,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +q +q +q +q +N +N +N +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(82,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +P +P +C +"} +(83,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +P +P +C +"} +(84,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +u +u +u +u +u +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +P +P +C +"} +(85,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +P +P +C +"} +(86,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +P +C +"} +(87,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(88,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(89,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(90,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +q +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(91,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +q +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(92,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(93,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +q +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(94,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(95,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +P +P +P +P +P +P +C +"} +(96,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +C +"} +(97,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +c +c +c +c +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +n +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +C +"} +(98,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +q +q +q +c +c +c +c +c +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +C +"} +(99,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +c +c +c +c +c +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +C +"} +(100,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +q +q +q +q +q +c +c +c +c +c +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +P +P +q +P +P +P +q +q +P +C +"} +(101,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +q +q +q +q +c +c +c +c +c +N +N +N +N +q +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(102,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +c +c +c +c +c +N +N +N +q +q +q +N +N +N +N +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(103,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +q +q +q +q +c +c +c +c +c +c +N +N +q +q +q +q +q +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(104,1,1) = {" +C +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(105,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +q +q +q +q +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(106,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(107,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +N +q +N +N +q +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(108,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +N +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(109,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +N +N +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(110,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +N +N +N +N +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(111,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +N +N +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(112,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(113,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(114,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +q +P +P +P +C +"} +(115,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +C +"} +(116,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +C +"} +(117,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +C +"} +(118,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +C +"} +(119,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +C +"} +(120,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(121,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(122,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(123,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +C +"} +(124,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(125,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(126,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +c +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(127,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +c +c +c +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(128,1,1) = {" +C +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(129,1,1) = {" +C +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(130,1,1) = {" +C +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(131,1,1) = {" +C +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(132,1,1) = {" +C +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +C +"} +(133,1,1) = {" +C +P +P +P +P +P +P +P +q +q +q +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +C +"} +(134,1,1) = {" +C +P +P +P +P +P +P +P +q +q +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +C +"} +(135,1,1) = {" +C +P +P +P +P +P +P +q +q +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +C +"} +(136,1,1) = {" +C +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +q +q +q +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +C +"} +(137,1,1) = {" +C +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +C +"} +(138,1,1) = {" +C +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +q +q +q +q +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +C +"} +(139,1,1) = {" +C +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +P +C +"} +(140,1,1) = {" +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +C +"} diff --git a/maps/om_adventure/pois/alienchamber1.dmm b/maps/om_adventure/pois/alienchamber1.dmm new file mode 100644 index 00000000000..40aae71e2c2 --- /dev/null +++ b/maps/om_adventure/pois/alienchamber1.dmm @@ -0,0 +1,151 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/wall/eris/r_wall, +/area/om_adventure/poi/alienchamber1) +"e" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber1) +"f" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber1) +"n" = ( +/turf/template_noop, +/area/template_noop) +"x" = ( +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber1) +"D" = ( +/obj/structure/table/alien, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber1) +"P" = ( +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber1) +"Z" = ( +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber1) + +(1,1,1) = {" +n +n +n +a +a +a +a +a +a +a +"} +(2,1,1) = {" +n +n +n +a +Z +Z +x +x +x +a +"} +(3,1,1) = {" +n +n +n +a +Z +x +e +x +x +a +"} +(4,1,1) = {" +a +a +a +a +x +P +P +e +x +a +"} +(5,1,1) = {" +a +D +Z +x +x +x +P +x +Z +a +"} +(6,1,1) = {" +a +Z +x +P +x +x +x +Z +D +a +"} +(7,1,1) = {" +a +x +e +f +P +x +a +a +a +a +"} +(8,1,1) = {" +a +x +x +e +x +Z +a +n +n +n +"} +(9,1,1) = {" +a +x +x +x +Z +Z +a +n +n +n +"} +(10,1,1) = {" +a +a +a +a +a +a +a +n +n +n +"} diff --git a/maps/om_adventure/pois/alienchamber2.dmm b/maps/om_adventure/pois/alienchamber2.dmm new file mode 100644 index 00000000000..8366c7736a8 --- /dev/null +++ b/maps/om_adventure/pois/alienchamber2.dmm @@ -0,0 +1,261 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"i" = ( +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber2) +"q" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber2) +"u" = ( +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber2) +"x" = ( +/obj/random/awayloot/looseloot, +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber2) +"H" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber2) +"M" = ( +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber2) +"P" = ( +/turf/simulated/wall/eris/r_wall, +/area/om_adventure/poi/alienchamber2) +"Q" = ( +/obj/machinery/door/airlock/alien/public, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber2) +"W" = ( +/obj/structure/table/alien, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber2) + +(1,1,1) = {" +a +a +a +a +P +P +P +P +P +P +a +"} +(2,1,1) = {" +a +a +a +a +P +M +M +M +x +P +P +"} +(3,1,1) = {" +a +a +a +a +P +x +i +q +i +i +P +"} +(4,1,1) = {" +a +a +a +a +P +M +i +i +u +i +P +"} +(5,1,1) = {" +a +P +P +P +P +P +P +i +i +i +P +"} +(6,1,1) = {" +P +P +W +M +M +i +P +i +i +i +P +"} +(7,1,1) = {" +P +i +i +i +i +i +P +P +Q +P +P +"} +(8,1,1) = {" +P +i +i +u +i +i +P +i +i +i +P +"} +(9,1,1) = {" +P +i +q +H +u +i +Q +i +q +i +P +"} +(10,1,1) = {" +P +i +i +u +i +i +P +i +i +i +P +"} +(11,1,1) = {" +P +i +i +i +i +i +P +P +Q +P +P +"} +(12,1,1) = {" +P +P +M +x +M +i +P +i +i +i +P +"} +(13,1,1) = {" +a +P +P +P +P +P +P +i +i +i +P +"} +(14,1,1) = {" +a +a +a +a +P +M +i +i +u +i +P +"} +(15,1,1) = {" +a +a +a +a +P +x +i +q +i +i +P +"} +(16,1,1) = {" +a +a +a +a +P +M +i +i +x +P +P +"} +(17,1,1) = {" +a +a +a +a +P +P +P +P +P +P +a +"} diff --git a/maps/om_adventure/pois/alienchamber3.dmm b/maps/om_adventure/pois/alienchamber3.dmm new file mode 100644 index 00000000000..a8c3a50974a --- /dev/null +++ b/maps/om_adventure/pois/alienchamber3.dmm @@ -0,0 +1,221 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"c" = ( +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber3) +"f" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber3) +"r" = ( +/turf/simulated/wall/eris/r_wall, +/area/om_adventure/poi/alienchamber3) +"P" = ( +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber3) +"V" = ( +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber3) +"X" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber3) + +(1,1,1) = {" +a +a +a +a +a +r +r +r +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +a +r +r +P +r +r +a +a +a +a +"} +(3,1,1) = {" +a +a +a +r +r +P +P +P +r +r +a +a +a +"} +(4,1,1) = {" +a +a +r +r +P +P +c +P +P +r +r +a +a +"} +(5,1,1) = {" +a +r +r +P +V +P +X +P +V +P +r +r +a +"} +(6,1,1) = {" +r +r +P +P +P +P +c +P +P +P +P +r +r +"} +(7,1,1) = {" +r +P +P +c +X +c +f +c +X +c +P +P +r +"} +(8,1,1) = {" +r +r +P +P +P +P +c +P +P +P +P +r +r +"} +(9,1,1) = {" +a +r +r +P +P +V +X +P +P +P +r +r +a +"} +(10,1,1) = {" +a +a +r +r +P +P +c +P +P +r +r +a +a +"} +(11,1,1) = {" +a +a +a +r +r +P +P +P +r +r +a +a +a +"} +(12,1,1) = {" +a +a +a +a +r +r +P +r +r +a +a +a +a +"} +(13,1,1) = {" +a +a +a +a +a +r +r +r +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/alienchamber4.dmm b/maps/om_adventure/pois/alienchamber4.dmm new file mode 100644 index 00000000000..a72674a5301 --- /dev/null +++ b/maps/om_adventure/pois/alienchamber4.dmm @@ -0,0 +1,295 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"h" = ( +/obj/random/awayloot/looseloot, +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber4) +"n" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber4) +"o" = ( +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber4) +"q" = ( +/obj/structure/table/alien, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber4) +"s" = ( +/obj/structure/table/alien, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber4) +"L" = ( +/turf/simulated/wall/eris/r_wall, +/area/om_adventure/poi/alienchamber4) +"N" = ( +/obj/structure/loot_pile/surface/alien/security, +/turf/simulated/shuttle/floor/alien/blue, +/area/om_adventure/poi/alienchamber4) +"O" = ( +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber4) +"R" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/shuttle/floor/alienplating/vacuum, +/area/om_adventure/poi/alienchamber4) + +(1,1,1) = {" +a +a +L +a +a +a +L +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +L +L +L +L +L +a +a +a +a +a +a +a +a +"} +(3,1,1) = {" +L +L +L +q +h +q +L +L +L +a +a +a +a +a +a +"} +(4,1,1) = {" +a +L +q +O +O +O +O +L +a +a +a +a +a +a +a +"} +(5,1,1) = {" +a +L +h +O +n +O +O +L +a +a +a +a +a +a +a +"} +(6,1,1) = {" +a +L +O +O +O +O +O +L +a +a +a +a +a +a +a +"} +(7,1,1) = {" +a +L +O +O +O +O +O +L +a +a +a +a +L +a +a +"} +(8,1,1) = {" +a +L +O +O +O +O +O +L +L +L +L +L +L +a +a +"} +(9,1,1) = {" +a +L +O +O +R +O +O +O +O +O +O +O +L +L +L +"} +(10,1,1) = {" +a +L +O +O +o +O +O +O +O +O +O +O +s +L +a +"} +(11,1,1) = {" +a +L +q +o +N +o +R +O +O +O +n +O +q +L +a +"} +(12,1,1) = {" +a +L +q +O +o +O +O +O +O +O +O +O +q +L +a +"} +(13,1,1) = {" +L +L +L +s +q +O +O +O +O +O +q +q +L +L +L +"} +(14,1,1) = {" +a +a +L +L +L +L +L +L +L +L +L +L +L +a +a +"} +(15,1,1) = {" +a +a +L +a +a +a +a +a +a +a +a +a +L +a +a +"} diff --git a/maps/om_adventure/pois/cabin1.dmm b/maps/om_adventure/pois/cabin1.dmm new file mode 100644 index 00000000000..0adc0845764 --- /dev/null +++ b/maps/om_adventure/pois/cabin1.dmm @@ -0,0 +1,324 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/structure/table/woodentable, +/obj/random/awayloot/looseloot, +/obj/random/tech_supply, +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin1) +"c" = ( +/obj/structure/table/reinforced, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"d" = ( +/obj/structure/table/reinforced, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"f" = ( +/obj/structure/closet/secure_closet/freezer/fridge, +/obj/random/meat, +/obj/random/meat, +/obj/random/meat, +/obj/random/meat, +/obj/random/meat, +/obj/random/snack, +/obj/random/snack, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"g" = ( +/obj/structure/bed/chair/sofa/brown, +/obj/random/snack, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"i" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"j" = ( +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin1) +"k" = ( +/obj/structure/table/reinforced, +/obj/item/weapon/flame/candle, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"r" = ( +/obj/structure/bookcase, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"s" = ( +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"t" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"u" = ( +/obj/structure/simple_door/wood, +/turf/simulated/floor/plating, +/area/om_adventure/poi/cabin1) +"v" = ( +/obj/item/weapon/bedsheet/browndouble, +/obj/structure/bed/double/padded, +/obj/structure/curtain/black, +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin1) +"w" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/cabin1) +"x" = ( +/obj/structure/table/reinforced, +/obj/random/snack, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"z" = ( +/obj/structure/simple_door/wood, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"B" = ( +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/cabin1) +"C" = ( +/obj/structure/bed/chair/sofa/brown/corner, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"D" = ( +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin1) +"F" = ( +/obj/structure/table/darkglass, +/obj/random/awayloot/looseloot, +/obj/item/weapon/flame/candle, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"H" = ( +/obj/structure/table/woodentable, +/obj/random/tech_supply, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"I" = ( +/obj/structure/closet, +/obj/random/awayloot/looseloot, +/obj/random/awayloot/looseloot, +/obj/random/tech_supply, +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin1) +"L" = ( +/obj/structure/table/woodentable, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"Q" = ( +/turf/simulated/wall/log, +/area/om_adventure/poi/cabin1) +"R" = ( +/obj/structure/bed/chair/sofa/brown/left{ + dir = 8 + }, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"S" = ( +/obj/structure/bed/chair/sofa/brown/right, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) +"T" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin1) +"X" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/plating, +/area/om_adventure/poi/cabin1) +"Z" = ( +/obj/structure/table/woodentable, +/obj/random/tech_supply/component, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin1) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +Q +Q +Q +Q +Q +Q +Q +X +Q +Q +a +"} +(3,1,1) = {" +a +Q +x +k +x +d +Q +b +j +v +Q +a +"} +(4,1,1) = {" +a +X +d +i +D +D +Q +I +j +j +X +a +"} +(5,1,1) = {" +a +X +c +D +D +D +z +j +T +j +X +a +"} +(6,1,1) = {" +a +Q +f +D +D +D +Q +j +j +j +Q +a +"} +(7,1,1) = {" +a +Q +Q +k +D +Q +Q +Q +Q +Q +Q +a +"} +(8,1,1) = {" +a +Q +L +s +s +s +r +Q +a +a +a +a +"} +(9,1,1) = {" +a +Q +S +s +s +s +H +Q +B +a +a +a +"} +(10,1,1) = {" +a +Q +g +s +F +s +s +u +B +B +w +a +"} +(11,1,1) = {" +a +Q +C +R +t +s +Z +Q +B +a +a +B +"} +(12,1,1) = {" +a +Q +Q +X +X +X +Q +Q +a +a +a +a +"} +(13,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/cabin2.dmm b/maps/om_adventure/pois/cabin2.dmm new file mode 100644 index 00000000000..31b9b10e2d6 --- /dev/null +++ b/maps/om_adventure/pois/cabin2.dmm @@ -0,0 +1,404 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"c" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin2) +"e" = ( +/obj/structure/simple_door/wood, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/cabin2) +"g" = ( +/obj/structure/table/rack/shelf, +/obj/random/mre, +/obj/random/mre, +/obj/random/mre, +/obj/random/mre, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin2) +"i" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/outdoors/sidewalk/side, +/area/om_adventure/poi/cabin2) +"k" = ( +/turf/simulated/wall/log, +/area/om_adventure/poi/cabin2) +"l" = ( +/obj/structure/table/steel, +/obj/random/multiple/underdark/treasure, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin2) +"n" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"p" = ( +/obj/structure/table/woodentable, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"q" = ( +/obj/structure/table/steel, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin2) +"r" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"s" = ( +/obj/structure/bed/chair/sofa/corp/right, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"t" = ( +/obj/structure/bed/chair/sofa/brown/corner, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"u" = ( +/obj/structure/toilet/prison{ + dir = 8 + }, +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/tiled/techmaint, +/area/om_adventure/poi/cabin2) +"v" = ( +/obj/structure/bed/chair/sofa/brown/left{ + dir = 8 + }, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"w" = ( +/obj/structure/table/rack, +/obj/random/maintenance, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"x" = ( +/obj/structure/bed/double/padded, +/obj/item/weapon/bedsheet/browndouble, +/obj/structure/curtain/black, +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin2) +"y" = ( +/obj/structure/table/steel, +/obj/random/material, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin2) +"z" = ( +/turf/simulated/floor/outdoors/sidewalk/side, +/area/om_adventure/poi/cabin2) +"A" = ( +/obj/structure/bed/chair/sofa/brown, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"B" = ( +/obj/structure/table/rack, +/obj/random/maintenance, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"D" = ( +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"E" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin2) +"F" = ( +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/cabin2) +"H" = ( +/obj/structure/table/woodentable, +/obj/random/snack, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"I" = ( +/obj/structure/table/woodentable, +/obj/random/awayloot/looseloot, +/obj/random/maintenance, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"J" = ( +/obj/structure/table/woodentable, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"K" = ( +/obj/structure/bed/chair/sofa/brown/right{ + dir = 4 + }, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"L" = ( +/obj/structure/table/woodentable, +/obj/random/maintenance, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"M" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor/plating, +/area/om_adventure/poi/cabin2) +"N" = ( +/obj/structure/sink{ + pixel_y = 18 + }, +/turf/simulated/floor/tiled/techmaint, +/area/om_adventure/poi/cabin2) +"O" = ( +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin2) +"P" = ( +/obj/structure/bed/chair/sofa/brown/corner{ + dir = 1 + }, +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"Q" = ( +/turf/simulated/floor/carpet/bcarpet, +/area/om_adventure/poi/cabin2) +"S" = ( +/turf/simulated/floor/tiled/techmaint, +/area/om_adventure/poi/cabin2) +"T" = ( +/turf/simulated/floor/carpet, +/area/om_adventure/poi/cabin2) +"V" = ( +/obj/structure/table/rack, +/obj/random/awayloot/looseloot, +/obj/random/tech_supply, +/obj/random/tech_supply, +/turf/simulated/floor/bmarble, +/area/om_adventure/poi/cabin2) +"X" = ( +/obj/structure/bed/chair/sofa/corp/left, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) +"Y" = ( +/obj/structure/table/woodentable, +/obj/random/awayloot/looseloot, +/obj/random/maintenance, +/obj/random/maintenance, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin2) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +F +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +k +k +M +M +k +k +a +a +a +k +k +M +M +M +k +k +a +"} +(3,1,1) = {" +a +k +P +K +Q +B +k +a +i +a +k +I +D +T +T +x +k +a +"} +(4,1,1) = {" +a +k +A +H +r +Q +M +a +z +a +M +L +D +T +E +T +M +a +"} +(5,1,1) = {" +a +k +t +v +Q +w +k +k +e +k +k +D +D +T +T +T +M +a +"} +(6,1,1) = {" +a +k +k +k +e +k +k +V +O +V +k +D +D +J +p +L +k +a +"} +(7,1,1) = {" +a +k +Y +L +D +D +k +g +c +O +k +D +D +k +k +k +k +a +"} +(8,1,1) = {" +a +M +s +n +D +D +e +O +O +O +e +D +D +e +S +S +k +a +"} +(9,1,1) = {" +a +k +X +D +D +p +k +y +q +l +k +p +L +k +N +u +k +a +"} +(10,1,1) = {" +a +k +k +M +M +k +k +k +k +k +k +k +k +k +k +k +k +a +"} +(11,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/cabin3.dmm b/maps/om_adventure/pois/cabin3.dmm new file mode 100644 index 00000000000..02adedf2c1c --- /dev/null +++ b/maps/om_adventure/pois/cabin3.dmm @@ -0,0 +1,161 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/wall/wood, +/area/om_adventure/poi/cabin3) +"d" = ( +/obj/structure/bonfire, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/cabin3) +"i" = ( +/turf/template_noop, +/area/template_noop) +"k" = ( +/obj/random/awayloot/looseloot, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin3) +"n" = ( +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/cabin3) +"r" = ( +/obj/effect/decal/remains, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/cabin3) +"z" = ( +/turf/template_noop, +/area/om_adventure/poi/cabin3) +"M" = ( +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin3) +"S" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/wood, +/area/om_adventure/poi/cabin3) +"T" = ( +/obj/tether_away_spawner/spookyland, +/turf/template_noop, +/area/om_adventure/poi/cabin3) +"V" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/cabin3) + +(1,1,1) = {" +a +a +a +a +z +z +z +a +a +a +"} +(2,1,1) = {" +a +k +M +M +z +T +z +z +M +a +"} +(3,1,1) = {" +z +z +M +M +z +z +n +k +M +a +"} +(4,1,1) = {" +z +z +n +M +M +n +n +S +M +a +"} +(5,1,1) = {" +z +T +n +n +r +n +M +M +M +a +"} +(6,1,1) = {" +z +z +n +n +n +n +a +a +a +a +"} +(7,1,1) = {" +a +M +z +n +n +n +a +i +i +i +"} +(8,1,1) = {" +z +z +k +z +n +n +a +i +i +i +"} +(9,1,1) = {" +a +M +M +z +V +n +a +i +d +i +"} +(10,1,1) = {" +a +a +a +z +z +z +a +i +i +i +"} diff --git a/maps/om_adventure/pois/camp.dmm b/maps/om_adventure/pois/camp.dmm new file mode 100644 index 00000000000..13960f38546 --- /dev/null +++ b/maps/om_adventure/pois/camp.dmm @@ -0,0 +1,258 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"n" = ( +/obj/structure/table/rack/steel, +/obj/fiftyspawner/log, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/camp) +"x" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/camp) +"y" = ( +/obj/structure/flora/tree/bigtree, +/turf/template_noop, +/area/om_adventure/poi/camp) +"z" = ( +/obj/structure/table/rack/steel, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/camp) +"A" = ( +/obj/structure/bonfire, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/camp) +"H" = ( +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/camp) +"M" = ( +/turf/simulated/wall/log, +/area/om_adventure/poi/camp) +"U" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/storage/box/matches, +/turf/simulated/floor/outdoors/newdirt, +/area/om_adventure/poi/camp) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +a +a +M +M +M +M +M +a +a +a +"} +(2,1,1) = {" +a +a +a +a +a +a +y +a +a +a +M +n +z +U +M +a +H +a +"} +(3,1,1) = {" +a +a +a +a +a +a +a +a +H +a +M +H +x +H +M +a +a +a +"} +(4,1,1) = {" +a +H +a +a +a +a +a +x +H +H +a +a +H +a +a +H +a +a +"} +(5,1,1) = {" +a +a +a +a +a +a +H +H +H +H +H +a +a +a +a +a +a +a +"} +(6,1,1) = {" +a +a +H +H +a +H +H +H +A +H +H +H +a +H +H +a +a +a +"} +(7,1,1) = {" +a +a +a +a +a +a +H +H +H +H +H +a +a +a +a +a +a +a +"} +(8,1,1) = {" +a +a +a +a +a +a +a +H +H +x +a +a +a +a +a +a +a +a +"} +(9,1,1) = {" +a +a +a +a +a +y +a +a +H +a +a +a +a +y +a +a +a +a +"} +(10,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} +(11,1,1) = {" +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/darkstar.dmm b/maps/om_adventure/pois/darkstar.dmm new file mode 100644 index 00000000000..a41ef6cb59b --- /dev/null +++ b/maps/om_adventure/pois/darkstar.dmm @@ -0,0 +1,93 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"e" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darkstar) +"z" = ( +/mob/living/simple_mob/vore/alienanimals/space_ghost, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darkstar) + +(1,1,1) = {" +a +a +a +e +a +a +a +"} +(2,1,1) = {" +a +e +a +a +a +e +a +"} +(3,1,1) = {" +a +a +a +e +a +a +a +"} +(4,1,1) = {" +a +a +e +e +e +a +a +"} +(5,1,1) = {" +e +e +e +z +e +e +e +"} +(6,1,1) = {" +a +a +e +e +e +a +a +"} +(7,1,1) = {" +a +a +a +e +a +a +a +"} +(8,1,1) = {" +a +e +a +a +a +e +a +"} +(9,1,1) = {" +a +a +a +e +a +a +a +"} diff --git a/maps/om_adventure/pois/darktear1.dmm b/maps/om_adventure/pois/darktear1.dmm new file mode 100644 index 00000000000..224bb457bf6 --- /dev/null +++ b/maps/om_adventure/pois/darktear1.dmm @@ -0,0 +1,93 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear1) +"I" = ( +/turf/template_noop, +/area/template_noop) +"Z" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear1) + +(1,1,1) = {" +I +I +I +I +I +I +a +"} +(2,1,1) = {" +I +I +a +I +I +a +I +"} +(3,1,1) = {" +I +I +I +I +a +a +I +"} +(4,1,1) = {" +I +I +I +a +a +a +I +"} +(5,1,1) = {" +I +I +a +Z +a +I +I +"} +(6,1,1) = {" +I +I +a +a +a +I +I +"} +(7,1,1) = {" +I +a +a +a +I +I +I +"} +(8,1,1) = {" +I +a +I +I +I +a +I +"} +(9,1,1) = {" +a +I +I +I +I +I +I +"} diff --git a/maps/om_adventure/pois/darktear2.dmm b/maps/om_adventure/pois/darktear2.dmm new file mode 100644 index 00000000000..a4932cf5cf0 --- /dev/null +++ b/maps/om_adventure/pois/darktear2.dmm @@ -0,0 +1,93 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear2) +"Q" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear2) +"S" = ( +/turf/template_noop, +/area/template_noop) + +(1,1,1) = {" +a +S +S +S +S +S +S +"} +(2,1,1) = {" +S +a +a +S +S +a +S +"} +(3,1,1) = {" +S +Q +a +S +S +S +S +"} +(4,1,1) = {" +S +a +a +a +a +S +S +"} +(5,1,1) = {" +S +S +a +a +a +a +S +"} +(6,1,1) = {" +S +S +a +a +a +a +S +"} +(7,1,1) = {" +S +S +a +a +Q +a +S +"} +(8,1,1) = {" +S +a +S +a +a +a +S +"} +(9,1,1) = {" +S +S +S +S +S +S +a +"} diff --git a/maps/om_adventure/pois/darktear3.dmm b/maps/om_adventure/pois/darktear3.dmm new file mode 100644 index 00000000000..89a5dec5535 --- /dev/null +++ b/maps/om_adventure/pois/darktear3.dmm @@ -0,0 +1,89 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"v" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear3) +"Y" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear3) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +v +a +a +a +a +a +a +a +a +"} +(3,1,1) = {" +a +v +v +v +a +a +a +a +v +"} +(4,1,1) = {" +a +a +v +v +v +v +v +v +a +"} +(5,1,1) = {" +a +a +v +v +Y +v +v +v +a +"} +(6,1,1) = {" +a +a +a +a +v +v +v +a +a +"} +(7,1,1) = {" +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/darktear4.dmm b/maps/om_adventure/pois/darktear4.dmm new file mode 100644 index 00000000000..655e97b230b --- /dev/null +++ b/maps/om_adventure/pois/darktear4.dmm @@ -0,0 +1,89 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"g" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear4) +"j" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/darktear4) + +(1,1,1) = {" +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +j +a +a +a +a +a +a +j +"} +(3,1,1) = {" +a +a +g +j +j +j +a +j +a +"} +(4,1,1) = {" +a +j +j +j +j +j +j +j +a +"} +(5,1,1) = {" +j +a +a +a +j +j +g +a +a +"} +(6,1,1) = {" +a +a +a +a +a +j +a +a +a +"} +(7,1,1) = {" +a +a +a +a +a +a +j +a +a +"} diff --git a/maps/om_adventure/pois/fleshtear1.dmm b/maps/om_adventure/pois/fleshtear1.dmm new file mode 100644 index 00000000000..e2a3d25f185 --- /dev/null +++ b/maps/om_adventure/pois/fleshtear1.dmm @@ -0,0 +1,166 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/mob/living/simple_mob/creature, +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear1) +"K" = ( +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear1) + +(1,1,1) = {" +a +a +a +K +K +a +a +a +a +K +a +a +a +"} +(2,1,1) = {" +a +a +K +K +a +a +a +K +K +K +a +K +a +"} +(3,1,1) = {" +a +a +a +a +a +K +K +K +K +K +a +K +K +"} +(4,1,1) = {" +K +K +K +K +K +K +b +K +K +a +a +a +a +"} +(5,1,1) = {" +K +K +K +K +K +K +K +K +K +a +a +a +a +"} +(6,1,1) = {" +a +K +K +K +K +K +K +K +a +a +a +K +a +"} +(7,1,1) = {" +a +a +K +b +K +K +K +K +K +a +K +K +a +"} +(8,1,1) = {" +K +a +K +K +K +K +K +K +K +a +K +a +a +"} +(9,1,1) = {" +K +a +a +K +K +K +K +a +a +a +a +a +a +"} +(10,1,1) = {" +a +K +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/fleshtear2.dmm b/maps/om_adventure/pois/fleshtear2.dmm new file mode 100644 index 00000000000..19d435ce330 --- /dev/null +++ b/maps/om_adventure/pois/fleshtear2.dmm @@ -0,0 +1,79 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear2) +"B" = ( +/turf/template_noop, +/area/template_noop) +"H" = ( +/mob/living/simple_mob/creature, +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear2) + +(1,1,1) = {" +B +B +B +B +B +a +a +"} +(2,1,1) = {" +B +a +a +a +a +a +a +"} +(3,1,1) = {" +B +B +a +a +a +a +B +"} +(4,1,1) = {" +B +B +a +H +a +a +B +"} +(5,1,1) = {" +B +a +a +a +a +a +B +"} +(6,1,1) = {" +a +a +a +a +a +B +B +"} +(7,1,1) = {" +a +a +B +B +B +B +B +"} diff --git a/maps/om_adventure/pois/fleshtear3.dmm b/maps/om_adventure/pois/fleshtear3.dmm new file mode 100644 index 00000000000..1c77a349960 --- /dev/null +++ b/maps/om_adventure/pois/fleshtear3.dmm @@ -0,0 +1,115 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"M" = ( +/mob/living/simple_mob/creature, +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear3) +"Q" = ( +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear3) + +(1,1,1) = {" +a +a +Q +Q +Q +a +a +a +a +"} +(2,1,1) = {" +a +Q +a +a +Q +Q +Q +Q +a +"} +(3,1,1) = {" +Q +Q +Q +a +a +a +a +Q +a +"} +(4,1,1) = {" +Q +a +Q +Q +Q +Q +a +Q +Q +"} +(5,1,1) = {" +Q +a +Q +M +Q +Q +a +Q +Q +"} +(6,1,1) = {" +Q +a +Q +Q +Q +a +a +a +Q +"} +(7,1,1) = {" +Q +Q +a +Q +Q +Q +a +Q +Q +"} +(8,1,1) = {" +a +Q +Q +a +Q +Q +Q +Q +Q +"} +(9,1,1) = {" +a +a +Q +Q +a +Q +Q +Q +a +"} diff --git a/maps/om_adventure/pois/fleshtear4.dmm b/maps/om_adventure/pois/fleshtear4.dmm new file mode 100644 index 00000000000..077d29a8b7c --- /dev/null +++ b/maps/om_adventure/pois/fleshtear4.dmm @@ -0,0 +1,86 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"m" = ( +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear4) +"n" = ( +/mob/living/simple_mob/creature, +/turf/simulated/floor/flesh{ + base_icon = 'icons/turf/stomach_vr.dmi' + }, +/area/om_adventure/poi/fleshtear4) + +(1,1,1) = {" +m +m +a +a +a +"} +(2,1,1) = {" +a +m +m +m +a +"} +(3,1,1) = {" +a +a +n +m +a +"} +(4,1,1) = {" +a +a +a +m +m +"} +(5,1,1) = {" +a +a +m +m +m +"} +(6,1,1) = {" +a +a +m +m +m +"} +(7,1,1) = {" +a +m +m +m +a +"} +(8,1,1) = {" +a +n +m +m +a +"} +(9,1,1) = {" +m +m +a +a +a +"} +(10,1,1) = {" +m +a +a +a +a +"} diff --git a/maps/om_adventure/pois/medicalcenter.dmm b/maps/om_adventure/pois/medicalcenter.dmm new file mode 100644 index 00000000000..aea560a0af7 --- /dev/null +++ b/maps/om_adventure/pois/medicalcenter.dmm @@ -0,0 +1,328 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"j" = ( +/obj/machinery/door/airlock/angled_bay/standard/glass, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/medicalcenter) +"k" = ( +/obj/random/pottedplant, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"m" = ( +/obj/structure/bed/padded, +/obj/item/weapon/bedsheet/medical, +/obj/structure/curtain/medical, +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"q" = ( +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"r" = ( +/obj/structure/salvageable/machine, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"t" = ( +/obj/effect/low_wall_spawner/eris/reinforced/rphoron, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/medicalcenter) +"v" = ( +/obj/structure/table/glass, +/obj/structure/salvageable/personal, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"y" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"z" = ( +/obj/structure/bed/chair/sofa/blue/left{ + dir = 8 + }, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"A" = ( +/turf/simulated/wall/eris/r_wall, +/area/om_adventure/poi/medicalcenter) +"C" = ( +/obj/structure/bed/chair/sofa/blue/right, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"D" = ( +/obj/structure/table/glass, +/obj/random/medical, +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"E" = ( +/obj/structure/salvageable/computer, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"G" = ( +/obj/structure/table/glass, +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"H" = ( +/obj/structure/table/glass, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"I" = ( +/obj/structure/bed/padded, +/obj/item/weapon/bedsheet/medical, +/obj/structure/curtain/medical, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"P" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"Q" = ( +/obj/machinery/door/airlock/angled_bay/standard/glass{ + dir = 4 + }, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/medicalcenter) +"T" = ( +/obj/structure/table/glass, +/obj/random/medical, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"W" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"X" = ( +/obj/structure/table/glass, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) +"Z" = ( +/obj/structure/bed/chair/sofa/blue/corner, +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/tiled/eris/white/orangecorner, +/area/om_adventure/poi/medicalcenter) + +(1,1,1) = {" +a +a +a +A +a +A +a +a +A +a +A +a +"} +(2,1,1) = {" +a +a +A +A +A +A +t +t +A +A +A +A +"} +(3,1,1) = {" +a +a +a +A +C +q +q +q +q +H +A +a +"} +(4,1,1) = {" +a +A +a +A +Z +z +q +q +q +T +A +a +"} +(5,1,1) = {" +A +A +A +A +A +A +k +y +q +X +A +a +"} +(6,1,1) = {" +a +A +E +G +q +A +A +A +Q +A +A +A +"} +(7,1,1) = {" +a +t +q +H +q +A +q +W +q +k +A +a +"} +(8,1,1) = {" +a +A +q +P +q +j +q +q +P +q +j +a +"} +(9,1,1) = {" +a +t +q +T +q +A +q +y +q +k +A +a +"} +(10,1,1) = {" +a +A +r +v +q +A +A +A +Q +A +A +A +"} +(11,1,1) = {" +A +A +A +A +A +A +m +D +q +I +A +a +"} +(12,1,1) = {" +a +A +a +A +k +q +q +q +q +k +A +a +"} +(13,1,1) = {" +a +a +a +A +H +I +H +I +T +I +A +a +"} +(14,1,1) = {" +a +a +A +A +A +A +t +t +A +A +A +A +"} +(15,1,1) = {" +a +a +a +A +a +A +a +a +A +a +A +a +"} diff --git a/maps/om_adventure/pois/shippart1.dmm b/maps/om_adventure/pois/shippart1.dmm new file mode 100644 index 00000000000..7d2831eade1 --- /dev/null +++ b/maps/om_adventure/pois/shippart1.dmm @@ -0,0 +1,396 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/turf/simulated/floor/tiled/eris/dark/techfloor, +/area/om_adventure/poi/shippart1) +"d" = ( +/obj/random/awayloot/looseloot, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shippart1) +"g" = ( +/turf/simulated/wall/eris/r_wall, +/area/om_adventure/poi/shippart1) +"h" = ( +/obj/random/awayloot/looseloot, +/obj/effect/floor_decal/rust, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/shippart1) +"j" = ( +/obj/tether_away_spawner/spookyland, +/turf/template_noop, +/area/template_noop) +"p" = ( +/obj/random/awayloot/looseloot, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/shippart1) +"q" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/tiled/eris/dark/techfloor, +/area/om_adventure/poi/shippart1) +"r" = ( +/obj/item/weapon/material/shard, +/turf/template_noop, +/area/template_noop) +"s" = ( +/obj/random/tech_supply/component, +/turf/simulated/floor/tiled/eris/dark/techfloor, +/area/om_adventure/poi/shippart1) +"t" = ( +/obj/structure/frame/computer, +/obj/random/tech_supply/component, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shippart1) +"v" = ( +/obj/effect/floor_decal/rust, +/obj/random/tech_supply/component, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/shippart1) +"w" = ( +/obj/effect/decal/remains/tajaran, +/turf/template_noop, +/area/template_noop) +"D" = ( +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shippart1) +"F" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shippart1) +"I" = ( +/obj/effect/floor_decal/rust, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/shippart1) +"J" = ( +/obj/structure/salvageable/bliss, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shippart1) +"M" = ( +/obj/item/weapon/material/shard, +/obj/effect/floor_decal/rust, +/turf/simulated/floor/plating/eris/under, +/area/om_adventure/poi/shippart1) +"O" = ( +/obj/effect/decal/remains/ribcage, +/turf/template_noop, +/area/template_noop) +"Q" = ( +/obj/item/weapon/material/shard, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shippart1) +"R" = ( +/obj/random/tech_supply/component, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shippart1) +"T" = ( +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shippart1) +"X" = ( +/obj/item/weapon/material/shard/shrapnel, +/turf/template_noop, +/area/template_noop) +"Z" = ( +/obj/effect/decal/remains/deer, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shippart1) + +(1,1,1) = {" +a +a +a +a +a +a +F +a +a +a +F +a +a +a +a +a +a +a +a +a +a +"} +(2,1,1) = {" +a +a +a +a +a +F +j +a +X +a +a +a +a +a +a +a +a +a +a +a +a +"} +(3,1,1) = {" +a +a +a +a +X +a +a +F +a +a +X +a +F +a +a +a +a +a +a +a +a +"} +(4,1,1) = {" +a +a +a +w +a +F +F +g +g +v +g +a +r +j +a +F +a +a +a +a +a +"} +(5,1,1) = {" +X +a +X +a +F +g +g +g +t +I +p +F +F +F +F +a +a +a +a +a +a +"} +(6,1,1) = {" +a +a +F +g +M +g +d +D +Z +D +I +I +F +F +F +F +F +a +a +F +F +"} +(7,1,1) = {" +a +F +T +M +t +b +q +s +b +b +b +I +I +F +F +F +F +F +a +a +a +"} +(8,1,1) = {" +a +r +F +g +I +g +R +Q +d +D +M +v +F +F +F +F +F +a +a +a +a +"} +(9,1,1) = {" +a +a +a +a +F +g +g +g +J +I +h +D +I +I +F +a +a +a +a +a +F +"} +(10,1,1) = {" +a +a +j +T +a +F +F +g +g +I +g +g +g +g +a +a +F +F +F +a +a +"} +(11,1,1) = {" +a +X +a +a +X +a +a +a +a +a +T +a +a +a +j +a +a +a +a +a +a +"} +(12,1,1) = {" +a +a +a +a +a +a +a +a +X +a +a +a +O +a +a +a +a +a +a +a +a +"} +(13,1,1) = {" +a +a +a +a +a +a +F +a +a +a +a +a +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/shuttlewreck1.dmm b/maps/om_adventure/pois/shuttlewreck1.dmm new file mode 100644 index 00000000000..c57959fc950 --- /dev/null +++ b/maps/om_adventure/pois/shuttlewreck1.dmm @@ -0,0 +1,152 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"e" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck1) +"g" = ( +/obj/random/tech_supply/component, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck1) +"i" = ( +/obj/machinery/door/airlock/external, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck1) +"m" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck1) +"s" = ( +/obj/structure/shuttle/window, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck1) +"t" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck1) +"v" = ( +/obj/random/tech_supply/component, +/turf/template_noop, +/area/template_noop) +"D" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck1) +"M" = ( +/turf/simulated/shuttle/wall, +/area/om_adventure/poi/shuttlewreck1) +"P" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck1) +"W" = ( +/obj/random/tech_supply, +/turf/template_noop, +/area/template_noop) + +(1,1,1) = {" +a +a +a +a +a +a +W +a +a +"} +(2,1,1) = {" +a +a +a +e +a +a +a +e +a +"} +(3,1,1) = {" +e +t +e +g +a +e +a +a +a +"} +(4,1,1) = {" +a +e +M +M +M +M +D +g +a +"} +(5,1,1) = {" +e +e +s +P +m +i +e +e +e +"} +(6,1,1) = {" +a +e +M +M +M +M +D +t +a +"} +(7,1,1) = {" +a +e +e +e +a +e +v +a +a +"} +(8,1,1) = {" +a +a +a +a +a +a +a +a +a +"} +(9,1,1) = {" +a +a +a +a +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/shuttlewreck2.dmm b/maps/om_adventure/pois/shuttlewreck2.dmm new file mode 100644 index 00000000000..c741ee70559 --- /dev/null +++ b/maps/om_adventure/pois/shuttlewreck2.dmm @@ -0,0 +1,330 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"c" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/light{ + dir = 8 + }, +/obj/random/tech_supply/component, +/obj/random/tech_supply, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"e" = ( +/obj/machinery/atmospherics/portables_connector/fuel{ + dir = 8 + }, +/obj/machinery/portable_atmospherics/canister/phoron{ + start_pressure = 0 + }, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"g" = ( +/obj/structure/cable/green{ + icon_state = "4-10" + }, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"h" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 10 + }, +/turf/simulated/shuttle/wall, +/area/om_adventure/poi/shuttlewreck2) +"l" = ( +/obj/structure/window/reinforced, +/obj/structure/shuttle/engine/heater{ + dir = 1 + }, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"m" = ( +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"n" = ( +/obj/structure/table/steel_reinforced, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"o" = ( +/obj/structure/frame/computer, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"p" = ( +/obj/structure/table/steel_reinforced, +/obj/machinery/light{ + dir = 4 + }, +/obj/random/tech_supply, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"q" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"r" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"s" = ( +/obj/machinery/door/airlock/external, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"v" = ( +/obj/structure/cable/green, +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"w" = ( +/obj/tether_away_spawner/spookyland, +/turf/template_noop, +/area/template_noop) +"x" = ( +/obj/machinery/power/port_gen/pacman, +/obj/structure/cable/green{ + icon_state = "0-8" + }, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"y" = ( +/turf/simulated/shuttle/wall/hard_corner, +/area/om_adventure/poi/shuttlewreck2) +"A" = ( +/turf/simulated/shuttle/wall, +/area/om_adventure/poi/shuttlewreck2) +"B" = ( +/obj/structure/table/steel_reinforced, +/obj/random/tech_supply/component, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"D" = ( +/obj/structure/cable/green{ + icon_state = "2-5" + }, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"E" = ( +/obj/structure/table/rack/steel, +/obj/random/tech_supply/component, +/obj/random/tech_supply/component, +/obj/random/tech_supply/component, +/obj/random/tech_supply/component, +/obj/random/tech_supply/component, +/obj/random/tech_supply, +/obj/random/tech_supply, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"J" = ( +/obj/structure/table/rack/steel, +/obj/item/frame/apc, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"K" = ( +/obj/structure/table/rack/steel, +/obj/item/weapon/tank/phoron, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"N" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/fuel{ + dir = 6 + }, +/turf/simulated/shuttle/wall, +/area/om_adventure/poi/shuttlewreck2) +"P" = ( +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"R" = ( +/obj/machinery/atmospherics/portables_connector/fuel{ + dir = 4 + }, +/obj/machinery/portable_atmospherics/canister/phoron{ + start_pressure = 0 + }, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"T" = ( +/obj/structure/shuttle/window, +/obj/structure/grille, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) +"U" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck2) +"V" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck2) +"W" = ( +/obj/structure/shuttle/engine/heater{ + dir = 1 + }, +/obj/structure/window/reinforced, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck2) + +(1,1,1) = {" +a +a +a +a +a +a +U +a +a +a +"} +(2,1,1) = {" +a +w +U +A +A +A +N +A +A +a +"} +(3,1,1) = {" +a +a +A +A +K +E +e +W +r +a +"} +(4,1,1) = {" +a +A +A +P +m +m +m +W +r +a +"} +(5,1,1) = {" +U +A +c +n +P +P +q +y +A +a +"} +(6,1,1) = {" +a +T +o +P +P +P +A +A +a +a +"} +(7,1,1) = {" +a +T +o +V +P +P +s +a +a +a +"} +(8,1,1) = {" +a +T +o +P +P +P +A +A +U +a +"} +(9,1,1) = {" +a +A +p +B +P +D +v +y +A +a +"} +(10,1,1) = {" +U +A +A +P +g +m +m +l +r +a +"} +(11,1,1) = {" +a +U +A +A +x +J +R +l +r +a +"} +(12,1,1) = {" +a +a +a +A +A +A +h +A +A +a +"} +(13,1,1) = {" +a +a +a +a +U +a +a +a +w +a +"} diff --git a/maps/om_adventure/pois/shuttlewreck3.dmm b/maps/om_adventure/pois/shuttlewreck3.dmm new file mode 100644 index 00000000000..005ceb21c9d --- /dev/null +++ b/maps/om_adventure/pois/shuttlewreck3.dmm @@ -0,0 +1,210 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"c" = ( +/obj/random/awayloot/looseloot, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck3) +"f" = ( +/obj/random/tech_supply, +/turf/template_noop, +/area/template_noop) +"h" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck3) +"k" = ( +/turf/simulated/shuttle/wall, +/area/om_adventure/poi/shuttlewreck3) +"m" = ( +/obj/item/weapon/material/shard/shrapnel, +/turf/template_noop, +/area/template_noop) +"p" = ( +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck3) +"u" = ( +/obj/item/weapon/material/shard/shrapnel, +/obj/random/awayloot/looseloot, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck3) +"x" = ( +/obj/structure/door_assembly/door_assembly_ext, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck3) +"D" = ( +/obj/random/tech_supply, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck3) +"F" = ( +/obj/structure/grille/broken, +/obj/item/weapon/material/shard, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck3) +"H" = ( +/obj/random/tech_supply/component, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck3) +"I" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 8 + }, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck3) +"K" = ( +/obj/structure/shuttle/engine/propulsion{ + dir = 1 + }, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck3) +"Q" = ( +/obj/item/weapon/material/shard/shrapnel, +/obj/effect/gibspawner/human, +/obj/random/contraband/nofail, +/turf/simulated/shuttle/floor/white, +/area/om_adventure/poi/shuttlewreck3) +"S" = ( +/obj/random/contraband/nofail, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck3) +"Z" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck3) + +(1,1,1) = {" +a +a +a +h +a +a +a +"} +(2,1,1) = {" +h +a +a +h +a +a +h +"} +(3,1,1) = {" +K +a +h +h +h +a +a +"} +(4,1,1) = {" +h +a +h +h +h +f +a +"} +(5,1,1) = {" +a +h +S +h +H +a +a +"} +(6,1,1) = {" +a +a +c +h +h +a +a +"} +(7,1,1) = {" +m +h +Z +h +h +h +a +"} +(8,1,1) = {" +a +H +D +h +I +a +a +"} +(9,1,1) = {" +a +h +k +x +k +h +a +"} +(10,1,1) = {" +a +h +k +u +k +h +a +"} +(11,1,1) = {" +a +h +k +Q +k +H +m +"} +(12,1,1) = {" +a +h +k +F +k +h +a +"} +(13,1,1) = {" +a +h +p +h +p +a +h +"} +(14,1,1) = {" +a +a +a +Z +a +a +a +"} +(15,1,1) = {" +a +h +a +a +a +a +a +"} diff --git a/maps/om_adventure/pois/shuttlewreck4.dmm b/maps/om_adventure/pois/shuttlewreck4.dmm new file mode 100644 index 00000000000..28fc4367d9f --- /dev/null +++ b/maps/om_adventure/pois/shuttlewreck4.dmm @@ -0,0 +1,392 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck4) +"e" = ( +/obj/random/tech_supply/component, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shuttlewreck4) +"g" = ( +/obj/item/frame/apc, +/turf/template_noop, +/area/template_noop) +"h" = ( +/obj/random/tech_supply/component, +/turf/template_noop, +/area/template_noop) +"j" = ( +/turf/template_noop, +/area/template_noop) +"o" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck4) +"p" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shuttlewreck4) +"q" = ( +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shuttlewreck4) +"t" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 4 + }, +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"u" = ( +/obj/structure/shuttle/engine/propulsion, +/turf/simulated/floor/plating/eris/airless, +/area/om_adventure/poi/shuttlewreck4) +"v" = ( +/turf/simulated/wall/eris/r_wall, +/area/om_adventure/poi/shuttlewreck4) +"x" = ( +/turf/simulated/floor/plating/eris/airless, +/area/om_adventure/poi/shuttlewreck4) +"y" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 4 + }, +/obj/random/tech_supply/component, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"C" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"D" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 1 + }, +/obj/random/tech_supply, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"H" = ( +/obj/random/tech_supply/component, +/turf/simulated/floor/weird_things/dark, +/area/om_adventure/poi/shuttlewreck4) +"I" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"J" = ( +/obj/machinery/door/blast/multi_tile/three_tile_ver{ + density = 0; + icon_state = "open"; + opacity = 0 + }, +/turf/simulated/floor/plating/eris/airless, +/area/om_adventure/poi/shuttlewreck4) +"K" = ( +/obj/tether_away_spawner/spookyland, +/turf/template_noop, +/area/template_noop) +"M" = ( +/obj/structure/low_wall/eris/reinforced, +/obj/structure/window/eris, +/turf/simulated/floor/plating, +/area/om_adventure/poi/shuttlewreck4) +"O" = ( +/obj/random/tech_supply, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shuttlewreck4) +"P" = ( +/obj/structure/frame/computer, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"S" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 8 + }, +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"T" = ( +/obj/random/awayloot/looseloot, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shuttlewreck4) +"V" = ( +/obj/machinery/light{ + dir = 8 + }, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/tiled/eris/dark/monofloor, +/area/om_adventure/poi/shuttlewreck4) +"X" = ( +/obj/structure/bed/chair/bay/shuttle, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) +"Y" = ( +/obj/structure/bed/chair/bay/shuttle{ + dir = 4 + }, +/turf/simulated/floor/tiled/eris/dark/techfloor_grid, +/area/om_adventure/poi/shuttlewreck4) + +(1,1,1) = {" +j +j +j +j +j +j +j +j +a +j +j +j +H +j +a +"} +(2,1,1) = {" +j +a +a +j +j +a +j +h +j +j +j +j +j +a +j +"} +(3,1,1) = {" +j +j +j +o +a +g +a +a +a +j +o +a +a +v +j +"} +(4,1,1) = {" +j +j +j +h +a +a +a +a +a +a +H +H +v +v +j +"} +(5,1,1) = {" +j +j +j +v +v +x +x +J +v +v +a +v +v +u +j +"} +(6,1,1) = {" +j +a +a +v +V +q +e +q +O +v +M +v +v +v +j +"} +(7,1,1) = {" +o +v +M +M +q +I +I +I +q +t +Y +y +v +j +j +"} +(8,1,1) = {" +j +M +P +C +q +D +v +X +q +q +T +q +M +j +j +"} +(9,1,1) = {" +a +v +M +M +e +Y +Y +Y +q +S +I +I +v +j +j +"} +(10,1,1) = {" +j +j +j +v +p +q +q +q +e +v +M +v +v +v +j +"} +(11,1,1) = {" +j +j +j +v +v +x +x +J +v +v +j +v +v +u +j +"} +(12,1,1) = {" +j +j +j +j +j +j +j +j +j +j +j +j +v +v +j +"} +(13,1,1) = {" +j +j +j +j +j +j +j +j +j +j +j +j +j +v +j +"} +(14,1,1) = {" +j +j +j +j +j +j +j +j +j +j +j +K +j +j +j +"} +(15,1,1) = {" +j +j +j +j +j +j +j +j +j +j +j +j +j +j +j +"} diff --git a/maps/om_adventure/pois/woodentemple.dmm b/maps/om_adventure/pois/woodentemple.dmm new file mode 100644 index 00000000000..4a6dd94d5f5 --- /dev/null +++ b/maps/om_adventure/pois/woodentemple.dmm @@ -0,0 +1,533 @@ +//MAP CONVERTED BY dmm2tgm.py THIS HEADER COMMENT PREVENTS RECONVERSION, DO NOT REMOVE +"a" = ( +/turf/template_noop, +/area/template_noop) +"b" = ( +/obj/structure/bed/chair/sofa/pew/right{ + dir = 8 + }, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"c" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/wmarble, +/area/om_adventure/poi/woodentemple) +"d" = ( +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"e" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/outdoors/grass, +/area/om_adventure/poi/woodentemple) +"f" = ( +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor, +/area/om_adventure/poi/woodentemple) +"g" = ( +/obj/tether_away_spawner/spookyland, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"j" = ( +/obj/item/weapon/material/shard/shrapnel, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"k" = ( +/obj/structure/bed/pod, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"m" = ( +/obj/structure/bed/chair/sofa/pew/right{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"o" = ( +/obj/structure/table/rack/steel, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/wmarble, +/area/om_adventure/poi/woodentemple) +"r" = ( +/turf/simulated/floor/outdoors/grass, +/area/om_adventure/poi/woodentemple) +"s" = ( +/obj/structure/table/woodentable, +/obj/item/trash/candle, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"v" = ( +/obj/structure/table/woodentable, +/obj/random/maintenance, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"w" = ( +/obj/structure/bed/chair/sofa/pew/left, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"x" = ( +/obj/structure/curtain/black{ + anchored = 1; + icon_state = "open"; + opacity = 0 + }, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"A" = ( +/obj/structure/curtain/black{ + anchored = 1 + }, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"C" = ( +/obj/item/weapon/material/shard, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"E" = ( +/obj/structure/table/woodentable, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"F" = ( +/obj/structure/bed/chair/sofa/pew/right, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"G" = ( +/obj/structure/simple_door/wood, +/turf/simulated/floor/wmarble, +/area/om_adventure/poi/woodentemple) +"H" = ( +/turf/simulated/floor/wmarble, +/area/om_adventure/poi/woodentemple) +"J" = ( +/obj/structure/table/woodentable, +/obj/random/awayloot/looseloot, +/obj/item/trash/candle, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"K" = ( +/obj/structure/table/rack/steel, +/obj/random/awayloot/looseloot, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"M" = ( +/obj/structure/table/woodentable, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"N" = ( +/obj/structure/bed/chair/sofa/pew/left{ + dir = 4 + }, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"Q" = ( +/obj/structure/flora/pottedplant/orientaltree, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"R" = ( +/turf/simulated/floor/carpet, +/area/om_adventure/poi/woodentemple) +"S" = ( +/obj/structure/grille, +/obj/structure/window/reinforced/full, +/turf/simulated/floor, +/area/om_adventure/poi/woodentemple) +"U" = ( +/obj/structure/bed/chair/sofa/pew/left{ + dir = 8 + }, +/turf/simulated/floor/wood, +/area/om_adventure/poi/woodentemple) +"Z" = ( +/turf/simulated/wall/hardwood, +/area/om_adventure/poi/woodentemple) + +(1,1,1) = {" +a +r +r +r +r +r +r +r +r +r +r +r +r +r +r +r +r +r +a +a +a +"} +(2,1,1) = {" +r +r +Z +r +r +r +r +r +r +r +r +r +r +r +r +r +Z +r +r +a +a +"} +(3,1,1) = {" +r +Z +Z +Z +Z +S +f +S +Z +Z +Z +S +S +S +Z +Z +Z +Z +r +r +a +"} +(4,1,1) = {" +r +r +Z +J +v +d +C +j +d +A +d +m +N +Q +J +v +Z +r +r +r +a +"} +(5,1,1) = {" +r +r +S +Q +d +j +g +d +d +x +d +d +d +g +d +d +S +r +r +r +r +"} +(6,1,1) = {" +r +r +S +w +d +d +d +C +d +A +d +d +d +d +K +K +Z +r +Z +r +r +"} +(7,1,1) = {" +r +r +S +F +d +d +Z +Z +G +Z +Z +d +R +d +Z +Z +Z +Z +Z +Z +r +"} +(8,1,1) = {" +r +r +Z +M +d +d +S +r +r +r +S +R +R +R +Z +o +H +H +Z +r +r +"} +(9,1,1) = {" +r +r +Z +E +g +d +S +r +e +r +S +R +R +R +G +H +c +H +G +r +r +"} +(10,1,1) = {" +r +r +Z +v +d +d +S +r +r +r +S +R +R +R +Z +o +H +H +Z +r +r +"} +(11,1,1) = {" +r +r +S +w +d +d +Z +Z +G +Z +Z +d +R +d +Z +Z +Z +Z +Z +Z +r +"} +(12,1,1) = {" +r +r +S +F +d +d +d +d +d +A +d +d +d +d +d +d +Z +r +Z +r +r +"} +(13,1,1) = {" +r +r +S +Q +d +d +d +g +d +x +d +g +d +d +d +s +S +r +r +r +r +"} +(14,1,1) = {" +r +r +Z +s +E +k +k +k +d +A +d +U +b +Q +v +E +Z +r +r +r +a +"} +(15,1,1) = {" +r +Z +Z +Z +Z +S +S +S +Z +Z +Z +S +S +S +Z +Z +Z +Z +r +r +a +"} +(16,1,1) = {" +r +r +Z +r +r +r +r +r +r +r +r +r +r +r +r +r +Z +r +r +a +a +"} +(17,1,1) = {" +a +r +r +r +r +r +r +r +r +r +r +r +r +r +r +r +r +r +a +a +a +"} diff --git a/maps/stellardelight/ship_centcom.dmm b/maps/stellardelight/ship_centcom.dmm index 51d91d7fc9e..d7bca2204d2 100644 --- a/maps/stellardelight/ship_centcom.dmm +++ b/maps/stellardelight/ship_centcom.dmm @@ -7236,7 +7236,7 @@ }, /area/centcom/control) "EE" = ( -/obj/machinery/telecomms/relay/preset/sd, +/obj/machinery/telecomms/relay/preset/station, /turf/unsimulated/floor/steel, /area/centcom/control) "EF" = ( diff --git a/maps/stellardelight/stellar_delight1.dmm b/maps/stellardelight/stellar_delight1.dmm index 353763ac027..9af67083fdd 100644 --- a/maps/stellardelight/stellar_delight1.dmm +++ b/maps/stellardelight/stellar_delight1.dmm @@ -655,9 +655,7 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/effect/catwalk_plated/dark, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor, /area/stellardelight/deck1/port) "bx" = ( @@ -1308,9 +1306,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 4 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/starboard) "cV" = ( @@ -2045,6 +2041,12 @@ }, /turf/simulated/floor/tiled/techfloor, /area/stellardelight/deck1/researchserver) +"et" = ( +/obj/effect/landmark{ + name = "droppod_landing" + }, +/turf/space, +/area/space) "eu" = ( /obj/structure/cable/green{ color = "#42038a"; @@ -4723,9 +4725,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/aft) "jV" = ( @@ -6906,6 +6906,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/dark, /area/security/security_cell_hallway) "oC" = ( @@ -7162,9 +7163,7 @@ dir = 8 }, /obj/effect/catwalk_plated/dark, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor, /area/stellardelight/deck1/starboard) "ph" = ( @@ -8810,6 +8809,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/dark, /area/chapel/main) "sC" = ( @@ -10476,6 +10476,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/carpet/bcarpet, /area/stellardelight/deck1/starboard) "wo" = ( @@ -10796,9 +10797,7 @@ /obj/effect/floor_decal/milspec/color/red/half{ dir = 1 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/fore) "xa" = ( @@ -11889,6 +11888,7 @@ dir = 4 }, /obj/effect/floor_decal/milspec/color/black, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/dark, /area/security/armoury) "zq" = ( @@ -12944,6 +12944,7 @@ /obj/effect/floor_decal/milspec/color/red/half{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/fore) "BB" = ( @@ -13043,6 +13044,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/milspec, /area/stellardelight/deck1/exploration) "BI" = ( @@ -14181,9 +14183,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/techmaint, /area/stellardelight/deck1/port) "Eq" = ( @@ -16028,6 +16028,22 @@ /obj/structure/cable/pink{ icon_state = "4-8" }, +/obj/item/device/radio{ + pixel_x = -4; + pixel_y = -4 + }, +/obj/item/device/radio{ + pixel_x = 4; + pixel_y = -4 + }, +/obj/item/device/radio{ + pixel_x = -4; + pixel_y = 5 + }, +/obj/item/device/radio{ + pixel_x = 4; + pixel_y = 5 + }, /turf/simulated/floor/tiled/dark, /area/security/tactical) "Im" = ( @@ -16456,6 +16472,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/steel_grid, /area/rnd/research) "Jd" = ( @@ -19899,6 +19916,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on, /obj/machinery/alarm/angled, /obj/effect/floor_decal/milspec/color/black, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/dark, /area/security/armoury) "QQ" = ( @@ -21222,9 +21240,7 @@ /obj/structure/closet/crate/bin{ anchored = 1 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/milspec, /area/stellardelight/deck1/exploration) "TB" = ( @@ -21830,6 +21846,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 8 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/reinforced, /area/stellardelight/deck1/shuttlebay) "UK" = ( @@ -22185,6 +22202,7 @@ /obj/item/weapon/book/manual/supermatter_engine, /obj/item/weapon/book/manual/tesla_engine, /obj/item/weapon/book/manual/virology, +/obj/effect/landmark/vermin, /turf/simulated/floor/wood, /area/library) "Vq" = ( @@ -22942,6 +22960,7 @@ /obj/item/weapon/tank/jetpack/carbondioxide, /obj/item/weapon/tank/jetpack/carbondioxide, /obj/item/weapon/tank/jetpack/carbondioxide, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/eris/white/gray_platform, /area/gateway) "WU" = ( @@ -24044,6 +24063,12 @@ /obj/machinery/recharge_station, /turf/simulated/floor/bluegrid, /area/assembly/robotics) +"Zd" = ( +/obj/effect/landmark{ + name = "carpspawn" + }, +/turf/space, +/area/space) "Ze" = ( /obj/machinery/door/firedoor/glass, /obj/structure/window/bay/reinforced, @@ -27549,7 +27574,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -28089,7 +28114,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -28271,7 +28296,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -28336,7 +28361,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -28713,7 +28738,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -29070,7 +29095,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -29741,7 +29766,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -30841,7 +30866,7 @@ RF RF uq uq -uq +et uq uq uq @@ -32265,7 +32290,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -32438,7 +32463,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -34710,7 +34735,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -37799,7 +37824,7 @@ EG RF uq uq -uq +et uq uq uq @@ -38262,7 +38287,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -38371,7 +38396,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -39007,7 +39032,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -39419,7 +39444,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -39727,7 +39752,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -40200,7 +40225,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -40597,7 +40622,7 @@ uq uq uq uq -uq +Zd uq uq uq @@ -41613,7 +41638,7 @@ uq uq uq uq -uq +Zd uq uq uq diff --git a/maps/stellardelight/stellar_delight2.dmm b/maps/stellardelight/stellar_delight2.dmm index 5ad6a31faac..a0ef356ea96 100644 --- a/maps/stellardelight/stellar_delight2.dmm +++ b/maps/stellardelight/stellar_delight2.dmm @@ -1207,7 +1207,7 @@ /turf/simulated/floor/wood, /area/stellardelight/deck2/barbackroom) "cC" = ( -/obj/structure/flora/pottedplant/decorative, +/obj/structure/flora/pottedplant/xmas, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "cD" = ( @@ -2433,6 +2433,7 @@ /obj/machinery/light{ dir = 4 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/wood, /area/crew_quarters/captain) "fp" = ( @@ -2588,6 +2589,13 @@ "fL" = ( /obj/machinery/computer/arcade/battle, /obj/machinery/atmospherics/unary/vent_pump/on, +/obj/effect/landmark/vermin, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "fN" = ( @@ -3114,6 +3122,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/techmaint, /area/storage/primary) "gS" = ( @@ -3370,6 +3379,9 @@ /obj/item/weapon/deck/cah/black, /obj/item/weapon/deck/cards, /obj/item/weapon/deck/cards/casino, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "hC" = ( @@ -3612,6 +3624,9 @@ }, /obj/structure/table/bench/steel, /obj/effect/landmark/start/visitor, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "ik" = ( @@ -3718,6 +3733,7 @@ dir = 1 }, /obj/effect/landmark/start/visitor, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "iy" = ( @@ -3876,6 +3892,7 @@ dir = 1; pixel_y = 4 }, +/obj/structure/sign/christmas/wreath, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "iP" = ( @@ -4531,6 +4548,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "kq" = ( @@ -5232,6 +5252,9 @@ dir = 4 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "lH" = ( @@ -5496,9 +5519,7 @@ }, /obj/machinery/vending/loadout/loadout_misc, /obj/machinery/atmospherics/unary/vent_pump/on, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/holofloor/tiled/dark, /area/crew_quarters/locker) "me" = ( @@ -5514,9 +5535,7 @@ "mg" = ( /obj/random/vendordrink, /obj/machinery/atmospherics/unary/vent_pump/on, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/steel_ridged, /area/stellardelight/deck2/port) "mh" = ( @@ -5751,6 +5770,7 @@ /obj/machinery/light{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/wood, /area/stellardelight/deck2/briefingroom) "mI" = ( @@ -5786,6 +5806,7 @@ /obj/machinery/camera/network/civilian{ dir = 1 }, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/tiled/dark, /area/crew_quarters/recreation_area) "mM" = ( @@ -5846,6 +5867,9 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/effect/landmark{ + name = "verminstart" + }, /turf/simulated/floor/grass, /area/hydroponics) "mT" = ( @@ -5859,6 +5883,9 @@ /obj/machinery/camera/network/civilian{ dir = 8 }, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "mV" = ( @@ -6232,6 +6259,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/lino, /area/crew_quarters/bar) "nR" = ( @@ -6814,6 +6842,7 @@ pixel_y = 24 }, /mob/living/simple_mob/otie/red/chubby/cocoa, +/obj/structure/sign/christmas/wreath, /turf/simulated/floor/tiled/eris/steel/brown_platform, /area/crew_quarters/bar) "pj" = ( @@ -7236,6 +7265,7 @@ icon_state = "2-4" }, /obj/structure/closet/secure_closet/engineering_personal, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/eris/dark/orangecorner, /area/engineering/locker_room) "qe" = ( @@ -7370,6 +7400,7 @@ /obj/machinery/newscaster{ pixel_y = 28 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled, /area/storage/art) "qt" = ( @@ -7731,6 +7762,7 @@ /obj/structure/bed/chair/sofa/corp/corner{ dir = 8 }, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "rh" = ( @@ -7973,9 +8005,7 @@ dir = 4; pixel_x = 24 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/techmaint, /area/storage/primary) "rF" = ( @@ -8066,6 +8096,14 @@ "rR" = ( /turf/simulated/wall/bay/r_wall/steel, /area/maintenance/stellardelight/deck2/portaft) +"rS" = ( +/obj/structure/table/wooden_reinforced, +/obj/structure/sign/christmas/lights, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, +/turf/simulated/floor/tiled/eris/dark/cargo, +/area/crew_quarters/recreation_area) "rT" = ( /turf/simulated/wall/bay/r_wall/steel, /area/storage/tech) @@ -8151,6 +8189,7 @@ /obj/structure/bed/chair/sofa/corp{ dir = 1 }, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "sd" = ( @@ -8375,6 +8414,7 @@ /area/quartermaster/storage) "sH" = ( /obj/structure/table/wooden_reinforced, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "sI" = ( @@ -9151,9 +9191,7 @@ "us" = ( /obj/machinery/atmospherics/unary/vent_scrubber/on, /obj/machinery/recharge_station, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/steel_ridged, /area/stellardelight/deck2/starboard) "ut" = ( @@ -9605,6 +9643,13 @@ /obj/machinery/lapvend, /turf/simulated/floor/tiled/techmaint, /area/storage/primary) +"vv" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, +/turf/simulated/floor/tiled/eris/dark/cargo, +/area/crew_quarters/recreation_area) "vw" = ( /obj/machinery/atmospherics/unary/vent_pump/on, /turf/simulated/floor, @@ -9755,6 +9800,7 @@ dir = 4; icon_state = "pipe-c" }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/monotile, /area/hydroponics) "vQ" = ( @@ -9879,8 +9925,9 @@ /area/stellardelight/deck2/central) "wf" = ( /obj/structure/bed/chair/sofa/corp/corner{ - dir = 1 + dir = 4 }, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "wg" = ( @@ -10009,6 +10056,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/stellardelight/deck2/triage) "wy" = ( @@ -10487,6 +10535,9 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/hidden/supply, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "xG" = ( @@ -10712,6 +10763,9 @@ /obj/machinery/light{ dir = 1 }, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "yd" = ( @@ -10986,11 +11040,15 @@ /area/stellardelight/deck2/fore) "yG" = ( /obj/structure/bed/chair/sofa/corp/corner{ - dir = 1 + dir = 4 }, /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, +/obj/structure/sign/christmas/lights, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "yH" = ( @@ -12200,6 +12258,9 @@ dir = 4; pixel_x = 24 }, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "BD" = ( @@ -12325,6 +12386,9 @@ pixel_x = 9; pixel_y = 24 }, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "BT" = ( @@ -12706,6 +12770,7 @@ /obj/structure/cable/orange{ icon_state = "1-8" }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/techfloor, /area/engineering/atmos/monitoring) "CO" = ( @@ -12845,12 +12910,15 @@ /turf/simulated/floor/tiled/techmaint, /area/storage/primary) "De" = ( -/obj/structure/flora/pottedplant/decorative, +/obj/structure/flora/pottedplant/xmas, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /obj/item/device/radio/intercom{ dir = 8; pixel_x = -24 }, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "Df" = ( @@ -12959,6 +13027,7 @@ dir = 1 }, /obj/structure/undies_wardrobe, +/obj/effect/landmark/vermin, /turf/simulated/floor/holofloor/tiled/dark, /area/crew_quarters/locker) "Dv" = ( @@ -13145,12 +13214,15 @@ /turf/simulated/floor/glass/reinforced, /area/stellardelight/deck2/fore) "DO" = ( -/obj/structure/flora/pottedplant/decorative, +/obj/structure/flora/pottedplant/xmas, /obj/machinery/atmospherics/pipe/simple/hidden/supply, /obj/item/device/radio/intercom{ dir = 4; pixel_x = 24 }, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "DP" = ( @@ -13190,6 +13262,10 @@ /obj/machinery/hologram/holopad, /turf/simulated/floor/tiled/eris/dark/techfloor_grid, /area/engineering/storage) +"DU" = ( +/obj/structure/sign/christmas/lights, +/turf/simulated/floor/tiled/eris/dark/cargo, +/area/crew_quarters/recreation_area) "DV" = ( /obj/machinery/atmospherics/pipe/simple/hidden/supply{ dir = 4 @@ -14263,6 +14339,7 @@ /obj/effect/floor_decal/milspec/color/silver/corner{ dir = 8 }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled, /area/stellardelight/deck2/fore) "Gb" = ( @@ -14605,6 +14682,9 @@ /obj/structure/closet/crate/bin{ anchored = 1 }, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "GM" = ( @@ -14771,6 +14851,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/eris/steel/cargo, /area/quartermaster/storage) "Hf" = ( @@ -14990,6 +15071,9 @@ dir = 8; pixel_x = -24 }, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) "HF" = ( @@ -15302,6 +15386,7 @@ /obj/random/vendordrink, /obj/machinery/atmospherics/unary/vent_pump/on, /obj/machinery/firealarm/angled, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled, /area/stellardelight/deck2/aftstarboard) "Il" = ( @@ -15345,6 +15430,7 @@ }, /obj/structure/table/steel_reinforced, /obj/item/device/retail_scanner/command, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/eris/dark/monofloor, /area/bridge) "Ip" = ( @@ -15504,6 +15590,7 @@ /obj/effect/landmark{ name = "lightsout" }, +/obj/structure/flora/tree/pine/xmas/presents, /turf/simulated/floor/glass/reinforced, /area/crew_quarters/recreation_area) "IF" = ( @@ -15732,6 +15819,12 @@ "Ji" = ( /obj/machinery/computer/arcade/orion_trail, /obj/machinery/atmospherics/unary/vent_scrubber/on, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "Jj" = ( @@ -16356,9 +16449,7 @@ /obj/item/paint_palette, /obj/item/paint_brush, /obj/item/paint_brush, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled, /area/storage/art) "KD" = ( @@ -16547,6 +16638,7 @@ /obj/machinery/camera/network/medbay{ dir = 8 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/medical/chemistry) "La" = ( @@ -17145,6 +17237,9 @@ /area/stellardelight/deck2/port) "Mp" = ( /obj/machinery/computer/arcade/orion_trail, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "Mq" = ( @@ -17563,6 +17658,7 @@ dir = 1; pixel_y = 24 }, +/obj/structure/sign/christmas/wreath, /turf/simulated/floor/tiled/eris/steel/brown_platform, /area/crew_quarters/bar) "Nl" = ( @@ -17951,6 +18047,12 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/wood, /area/stellardelight/deck2/barbackroom) +"Oh" = ( +/obj/effect/landmark{ + name = "carpspawn" + }, +/turf/space, +/area/space) "Oi" = ( /obj/machinery/firealarm/angled, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers{ @@ -18118,6 +18220,13 @@ /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/stellardelight/deck2/triage) +"Oy" = ( +/obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, +/turf/simulated/floor/tiled/eris/dark/cargo, +/area/crew_quarters/recreation_area) "Oz" = ( /obj/machinery/atmospherics/unary/vent_pump/on, /obj/effect/floor_decal/steeldecal/steel_decals5{ @@ -18134,6 +18243,9 @@ /obj/machinery/status_display{ pixel_y = 32 }, +/obj/effect/landmark{ + name = "verminstart" + }, /turf/simulated/floor/tiled/eris/cafe, /area/crew_quarters/kitchen) "OB" = ( @@ -18231,9 +18343,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled/eris/steel/brown_platform, /area/quartermaster/storage) "OQ" = ( @@ -18495,6 +18605,12 @@ }, /turf/simulated/floor/tiled/steel_ridged, /area/stellardelight/deck2/starboard) +"Pp" = ( +/obj/effect/landmark{ + name = "droppod_landing" + }, +/turf/space, +/area/space) "Pq" = ( /obj/machinery/atmospherics/pipe/simple/hidden/red{ dir = 9 @@ -19160,6 +19276,9 @@ pixel_y = -32 }, /obj/structure/table/bench/steel, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "QK" = ( @@ -19314,6 +19433,9 @@ dir = 8 }, /obj/machinery/atmospherics/pipe/simple/hidden/scrubbers, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "Ra" = ( @@ -19958,6 +20080,9 @@ /area/maintenance/stellardelight/deck2/portfore) "SF" = ( /obj/machinery/computer/arcade/battle, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "SG" = ( @@ -19986,6 +20111,7 @@ /obj/item/weapon/stool/padded{ dir = 8 }, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "SK" = ( @@ -20251,6 +20377,7 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/eris/white/bluecorner, /area/medical/cmostore) "Tn" = ( @@ -20981,6 +21108,9 @@ /obj/structure/sign/poster{ dir = 1 }, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "UX" = ( @@ -21672,6 +21802,9 @@ /area/medical/reception) "WC" = ( /obj/machinery/alarm/angled, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "WE" = ( @@ -21800,6 +21933,10 @@ "WR" = ( /obj/structure/table/wooden_reinforced, /obj/item/device/paicard, +/obj/structure/sign/christmas/lights, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "WS" = ( @@ -21913,6 +22050,7 @@ /obj/effect/floor_decal/steeldecal/steel_decals6{ dir = 4 }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled, /area/stellardelight/deck2/fore) "Xf" = ( @@ -22205,6 +22343,9 @@ pixel_y = 32 }, /obj/machinery/recharge_station, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "XQ" = ( @@ -22333,6 +22474,7 @@ /obj/structure/musician/piano{ dir = 4 }, +/obj/structure/sign/christmas/lights, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "Yd" = ( @@ -22389,6 +22531,9 @@ /area/stellardelight/deck2/port) "Yl" = ( /obj/machinery/firealarm/angled, +/obj/structure/sign/christmas/lights{ + dir = 1 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "Ym" = ( @@ -22657,6 +22802,9 @@ /obj/machinery/camera/network/civilian{ dir = 5 }, +/obj/structure/sign/christmas/lights{ + dir = 8 + }, /turf/simulated/floor/tiled/eris/dark/cargo, /area/crew_quarters/recreation_area) "YO" = ( @@ -22713,6 +22861,7 @@ "YW" = ( /obj/random/vendordrink, /obj/machinery/atmospherics/unary/vent_pump/on, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/steel_ridged, /area/stellardelight/deck2/starboard) "YX" = ( @@ -23193,6 +23342,10 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, +/obj/structure/sign/christmas/lights, +/obj/structure/sign/christmas/lights{ + dir = 4 + }, /turf/simulated/floor/carpet/turcarpet, /area/crew_quarters/recreation_area) @@ -25832,7 +25985,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -26237,7 +26390,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -26637,7 +26790,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -26858,7 +27011,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -27807,7 +27960,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -28779,7 +28932,7 @@ Jh Jh Jh Jh -Jh +Pp Jh Jh Jh @@ -28890,7 +29043,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -30574,7 +30727,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -31869,7 +32022,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -32478,7 +32631,7 @@ mt jv ct Lq -ct +vv HE xE yG @@ -33124,7 +33277,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -33614,7 +33767,7 @@ mt hm VM uJ -VM +Oy BC lG ZZ @@ -33755,7 +33908,7 @@ mt mt lO mt -mt +DU nt nt nt @@ -34039,7 +34192,7 @@ kp GA fK ij -sH +rS nt Rq Rq @@ -34994,7 +35147,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -36393,7 +36546,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -36888,7 +37041,7 @@ bw Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -37301,7 +37454,7 @@ Jh Jh Jh Jh -Jh +Pp Jh Jh Jh @@ -37379,7 +37532,7 @@ NL NL Jh Jh -Jh +Pp Jh Jh Jh @@ -37701,7 +37854,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -38292,7 +38445,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh @@ -39457,6 +39610,7 @@ Jh Jh Jh Jh +Oh Jh Jh Jh @@ -39501,8 +39655,7 @@ Jh Jh Jh Jh -Jh -Jh +Oh Jh Jh Jh @@ -40187,7 +40340,7 @@ Jh Jh Jh Jh -Jh +Oh Jh Jh Jh diff --git a/maps/stellardelight/stellar_delight3.dmm b/maps/stellardelight/stellar_delight3.dmm index 294faa22e83..629b2e2a2a6 100644 --- a/maps/stellardelight/stellar_delight3.dmm +++ b/maps/stellardelight/stellar_delight3.dmm @@ -230,9 +230,7 @@ /area/stellardelight/deck3/aft) "ba" = ( /obj/machinery/atmospherics/unary/vent_pump/on, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/open, /area/stellardelight/deck2/fore) "bb" = ( @@ -501,6 +499,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 1 }, +/obj/effect/landmark/vines, /turf/simulated/open, /area/crew_quarters/bar) "cb" = ( @@ -5885,6 +5884,13 @@ /obj/structure/low_wall/bay/reinforced/steel, /turf/simulated/floor, /area/stellardelight/deck2/port) +"wc" = ( +/obj/machinery/atmospherics/unary/vent_pump/on{ + dir = 8 + }, +/obj/effect/landmark/vermin, +/turf/simulated/open, +/area/stellardelight/deck2/starboard) "wd" = ( /obj/structure/table/standard, /obj/item/weapon/aiModule/oxygen, @@ -6296,6 +6302,7 @@ /obj/effect/floor_decal/steeldecal/steel_decals5{ dir = 4 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled, /area/stellardelight/deck3/starboarddock) "xE" = ( @@ -6415,9 +6422,6 @@ /obj/machinery/atmospherics/unary/vent_scrubber/on{ dir = 1 }, -/obj/effect/landmark{ - name = "vinestart" - }, /turf/simulated/floor/tiled/monotile, /area/stellardelight/deck3/commandhall) "yc" = ( @@ -6732,6 +6736,12 @@ }, /turf/simulated/floor/tiled/techfloor/grid, /area/ai_upload) +"zk" = ( +/obj/effect/landmark{ + name = "droppod_landing" + }, +/turf/space, +/area/space) "zm" = ( /obj/structure/cable/blue{ icon_state = "4-8" @@ -7664,6 +7674,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, +/obj/effect/landmark/vermin, /turf/simulated/open, /area/stellardelight/deck2/fore) "Cc" = ( @@ -8229,6 +8240,12 @@ /obj/random/trash_pile, /turf/simulated/floor, /area/maintenance/stellardelight/deck3/portcent) +"El" = ( +/obj/effect/landmark{ + name = "carpspawn" + }, +/turf/space, +/area/space) "En" = ( /obj/effect/floor_decal/industrial/warning/corner{ dir = 1 @@ -8475,6 +8492,7 @@ /obj/effect/floor_decal/steeldecal/steel_decals5{ dir = 1 }, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled, /area/stellardelight/deck3/aft) "Fg" = ( @@ -9342,9 +9360,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/open, /area/stellardelight/deck2/fore) "IG" = ( @@ -10272,9 +10288,7 @@ dir = 4; pixel_x = 27 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled, /area/stellardelight/deck3/starboarddock) "LR" = ( @@ -10456,9 +10470,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/open, /area/stellardelight/deck2/fore) "Mw" = ( @@ -10671,9 +10683,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 4 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/open, /area/stellardelight/deck2/port) "Ne" = ( @@ -11319,9 +11329,7 @@ /obj/machinery/atmospherics/unary/vent_pump/on{ dir = 8 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/open, /area/stellardelight/deck2/starboard) "Pa" = ( @@ -12580,6 +12588,7 @@ /area/ai_server_room) "TO" = ( /obj/machinery/atmospherics/unary/vent_pump/on, +/obj/effect/landmark/vermin, /turf/simulated/floor/tiled/monotile, /area/stellardelight/deck3/commandhall) "TP" = ( @@ -12856,9 +12865,7 @@ dir = 8; pixel_x = -27 }, -/obj/effect/landmark{ - name = "vinestart" - }, +/obj/effect/landmark/vines, /turf/simulated/floor/tiled, /area/stellardelight/deck3/portdock) "UX" = ( @@ -13483,6 +13490,7 @@ /obj/structure/cable/green{ icon_state = "1-2" }, +/obj/effect/landmark/vermin, /turf/simulated/open, /area/crew_quarters/bar) "Xd" = ( @@ -16918,7 +16926,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -17451,7 +17459,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -18322,7 +18330,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -18386,6 +18394,7 @@ Jh Jh Jh Jh +El Jh Jh Jh @@ -18421,8 +18430,7 @@ Jh Jh Jh Jh -Jh -Jh +El Jh Jh Jh @@ -19160,7 +19168,7 @@ Jh Jh Jh Jh -Jh +zk Jh Jh Jh @@ -19256,7 +19264,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -19630,7 +19638,7 @@ NL NL Jh Jh -Jh +zk Jh Jh Jh @@ -20416,7 +20424,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -21473,7 +21481,7 @@ NL Jh Jh Jh -Jh +El Jh Jh Jh @@ -21906,7 +21914,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -22209,7 +22217,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -25669,7 +25677,7 @@ qF hC aJ ow -ZC +wc ow yP Ks @@ -27153,7 +27161,7 @@ NL Jh Jh Jh -Jh +El Jh Jh Jh @@ -27720,7 +27728,7 @@ NL NL Jh Jh -Jh +zk Jh Jh Jh @@ -27941,7 +27949,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -28204,7 +28212,7 @@ Jh Jh Jh Jh -Jh +zk Jh Jh Jh @@ -28683,7 +28691,7 @@ Jh Jh Jh Jh -Jh +zk Jh Jh Jh @@ -29192,7 +29200,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh @@ -29926,6 +29934,7 @@ Jh Jh Jh Jh +El Jh Jh Jh @@ -29972,8 +29981,7 @@ Jh Jh Jh Jh -Jh -Jh +El Jh Jh Jh @@ -30022,6 +30030,7 @@ Jh Jh Jh Jh +El Jh Jh Jh @@ -30138,8 +30147,7 @@ Jh Jh Jh Jh -Jh -Jh +El Jh Jh Jh @@ -30670,7 +30678,7 @@ Jh Jh Jh Jh -Jh +El Jh Jh Jh diff --git a/maps/stellardelight/stellar_delight_defines.dm b/maps/stellardelight/stellar_delight_defines.dm index e95d9813d71..3cafb69e00d 100644 --- a/maps/stellardelight/stellar_delight_defines.dm +++ b/maps/stellardelight/stellar_delight_defines.dm @@ -14,6 +14,7 @@ #define Z_LEVEL_OVERMAP 13 #define Z_LEVEL_OFFMAP1 14 #define Z_LEVEL_GATEWAY 15 +#define Z_LEVEL_OM_ADVENTURE 16 //Camera networks #define NETWORK_HALLS "Halls" @@ -55,6 +56,7 @@ station_name = "NRV Stellar Delight" station_short = "Stellar Delight" + facility_type = "ship" dock_name = "Virgo-3B Colony" dock_type = "surface" boss_name = "Central Command" @@ -136,7 +138,7 @@ list("Offmap Ship - Talon V2") ) - lateload_single_pick = list( + lateload_gateway = list( list("Carp Farm"), list("Snow Field"), list("Listening Post"), @@ -147,6 +149,10 @@ list("Wild West") ) + lateload_overmap = list( + list("Grass Cave") + ) + ai_shell_restricted = TRUE ai_shell_allowed_levels = list( Z_LEVEL_SHIP_LOW, @@ -166,8 +172,6 @@ mining_station_z = list(Z_LEVEL_SPACE_LOW) mining_outpost_z = list(Z_LEVEL_SURFACE_MINE) */ - lateload_single_pick = null //Nothing right now. - planet_datums_to_make = list(/datum/planet/virgo3b, /datum/planet/virgo4) diff --git a/maps/stellardelight/stellar_delight_telecomms.dm b/maps/stellardelight/stellar_delight_telecomms.dm index c1d35782a7c..7b36a009711 100644 --- a/maps/stellardelight/stellar_delight_telecomms.dm +++ b/maps/stellardelight/stellar_delight_telecomms.dm @@ -3,7 +3,7 @@ // #### Relays #### // Telecomms doesn't know about connected z-levels, so we need relays even for the other surface levels. -/obj/machinery/telecomms/relay/preset/sd +/obj/machinery/telecomms/relay/preset/station id = "SD Relay" autolinkers = list("sd_relay") diff --git a/maps/submaps/admin_use_vr/ert.dmm b/maps/submaps/admin_use_vr/ert.dmm index 2e1eb62ecef..aa46d09c791 100644 --- a/maps/submaps/admin_use_vr/ert.dmm +++ b/maps/submaps/admin_use_vr/ert.dmm @@ -132,7 +132,7 @@ /turf/simulated/floor/tiled/techfloor, /area/ship/ert/barracks) "aq" = ( -/obj/machinery/telecomms/relay/preset/tether, +/obj/machinery/telecomms/relay/preset/station, /turf/simulated/floor/tiled/techfloor, /area/ship/ert/atmos) "ar" = ( diff --git a/maps/submaps/pois_vr/debris_field/debris14.dmm b/maps/submaps/pois_vr/debris_field/debris14.dmm index 91a5ef114a5..6a346d66925 100644 --- a/maps/submaps/pois_vr/debris_field/debris14.dmm +++ b/maps/submaps/pois_vr/debris_field/debris14.dmm @@ -32,7 +32,6 @@ /area/tether_away/debrisfield/shuttle_buffer) "h" = ( /obj/structure/lattice, -/obj/structure/lattice, /turf/space, /area/tether_away/debrisfield/shuttle_buffer) "i" = ( diff --git a/maps/tether/submaps/tether_centcom.dmm b/maps/tether/submaps/tether_centcom.dmm index 88cc87563c7..fd39fa6cc8d 100644 --- a/maps/tether/submaps/tether_centcom.dmm +++ b/maps/tether/submaps/tether_centcom.dmm @@ -7255,7 +7255,7 @@ }, /area/centcom/control) "EE" = ( -/obj/machinery/telecomms/relay/preset/tether, +/obj/machinery/telecomms/relay/preset/station, /turf/unsimulated/floor/steel, /area/centcom/control) "EF" = ( diff --git a/maps/tether/tether-02-surface2.dmm b/maps/tether/tether-02-surface2.dmm index b439b014b2b..0d8755eaf9d 100644 --- a/maps/tether/tether-02-surface2.dmm +++ b/maps/tether/tether-02-surface2.dmm @@ -387,6 +387,15 @@ /obj/structure/window/reinforced, /turf/simulated/floor/wood, /area/tether/surfacebase/medical/centralhall) +"aaH" = ( +/obj/structure/railing{ + dir = 1 + }, +/obj/structure/railing{ + dir = 4 + }, +/turf/simulated/open, +/area/rnd/staircase/secondfloor) "aaI" = ( /obj/structure/cable/green{ icon_state = "2-4" @@ -10368,6 +10377,12 @@ /obj/machinery/door/airlock/maintenance/common, /turf/simulated/floor/plating, /area/maintenance/asmaint2) +"aqt" = ( +/obj/machinery/light{ + dir = 4 + }, +/turf/simulated/floor/tiled, +/area/rnd/staircase/secondfloor) "aqu" = ( /obj/structure/table/standard{ name = "plastic table frame" @@ -23637,21 +23652,9 @@ }, /turf/simulated/open, /area/rnd/staircase/secondfloor) -"aPG" = ( -/obj/structure/railing{ - dir = 1 - }, -/turf/simulated/open, -/area/rnd/staircase/secondfloor) "aPH" = ( /turf/simulated/open, /area/rnd/staircase/secondfloor) -"aPI" = ( -/obj/machinery/light{ - dir = 4 - }, -/turf/simulated/open, -/area/rnd/staircase/secondfloor) "aPJ" = ( /turf/simulated/wall, /area/rnd/breakroom) @@ -42532,7 +42535,7 @@ aMW aNv aOj aOZ -aPG +aaH aPH aPH aRM @@ -42674,7 +42677,7 @@ aMX aNv aOk aOY -aPH +aOY aPH aPH aRM @@ -42816,7 +42819,7 @@ aIP aIP aOl aPa -aPI +aqt aPH aPH aRM diff --git a/maps/tether/tether-03-surface3.dmm b/maps/tether/tether-03-surface3.dmm index b1503f70433..ddbeea6dcde 100644 --- a/maps/tether/tether-03-surface3.dmm +++ b/maps/tether/tether-03-surface3.dmm @@ -14318,6 +14318,12 @@ /obj/effect/floor_decal/corner/mauve/bordercorner2, /turf/simulated/floor/tiled, /area/rnd/xenobiology/xenoflora) +"axt" = ( +/obj/machinery/light{ + dir = 8 + }, +/turf/simulated/floor/tiled, +/area/rnd/staircase/thirdfloor) "axu" = ( /obj/structure/sink{ dir = 8; @@ -14325,6 +14331,13 @@ }, /turf/simulated/floor/wood, /area/tether/surfacebase/bar_backroom) +"axv" = ( +/obj/structure/railing, +/obj/structure/railing{ + dir = 8 + }, +/turf/simulated/open, +/area/rnd/staircase/thirdfloor) "axw" = ( /obj/structure/cable/green{ d1 = 1; @@ -14439,12 +14452,6 @@ }, /turf/simulated/floor/tiled, /area/rnd/research) -"axF" = ( -/obj/machinery/light{ - dir = 8 - }, -/turf/simulated/open, -/area/rnd/staircase/thirdfloor) "axG" = ( /obj/structure/disposalpipe/segment, /obj/machinery/light{ @@ -51461,7 +51468,7 @@ atV ahh auu auu -axF +axt ayr aBe afK @@ -51603,7 +51610,7 @@ atW ahh auu auu -auu +ayB ayB aBg afK @@ -51745,7 +51752,7 @@ akt ahh auu auu -axO +axv ayB aBh aBj diff --git a/maps/tether/tether_defines.dm b/maps/tether/tether_defines.dm index 3b6e851daf9..52cd831e75f 100644 --- a/maps/tether/tether_defines.dm +++ b/maps/tether/tether_defines.dm @@ -68,6 +68,7 @@ station_name = "NSB Adephagia" station_short = "Tether" + facility_type = "station" dock_name = "Virgo-3B Colony" dock_type = "surface" boss_name = "Central Command" @@ -161,7 +162,7 @@ list("Fuel Depot - Z1 Space") ) - lateload_single_pick = list( + lateload_gateway = list( list("Carp Farm"), list("Snow Field"), list("Listening Post"), @@ -172,6 +173,10 @@ list("Wild West") ) + lateload_overmap = list( + list("Grass Cave") + ) + ai_shell_restricted = TRUE ai_shell_allowed_levels = list( Z_LEVEL_SURFACE_LOW, @@ -193,8 +198,6 @@ mining_station_z = list(Z_LEVEL_SPACE_LOW) mining_outpost_z = list(Z_LEVEL_SURFACE_MINE) - lateload_single_pick = null //Nothing right now. - planet_datums_to_make = list(/datum/planet/virgo3b, /datum/planet/virgo4) diff --git a/maps/tether/tether_telecomms.dm b/maps/tether/tether_telecomms.dm index ac43e2d4533..baaff3fb76e 100644 --- a/maps/tether/tether_telecomms.dm +++ b/maps/tether/tether_telecomms.dm @@ -3,7 +3,7 @@ // #### Relays #### // Telecomms doesn't know about connected z-levels, so we need relays even for the other surface levels. -/obj/machinery/telecomms/relay/preset/tether +/obj/machinery/telecomms/relay/preset/station id = "Tether Relay" autolinkers = list("tether_relay") diff --git a/maps/~map_system/maps.dm b/maps/~map_system/maps.dm index 48a8963e367..65b96548a29 100644 --- a/maps/~map_system/maps.dm +++ b/maps/~map_system/maps.dm @@ -53,7 +53,8 @@ var/list/all_maps = list() var/list/lateload_z_levels = list() //Similar to above, but only pick ONE to load, useful for random away missions and whatnot - var/list/lateload_single_pick = list() + var/list/lateload_gateway = list() + var/list/lateload_overmap = list() //VOREStation Add - The same thing as gateway, but not var/list/allowed_jobs = list() //Job datums to use. //Works a lot better so if we get to a point where three-ish maps are used @@ -81,6 +82,7 @@ var/list/all_maps = list() var/station_name = "BAD Station" var/station_short = "Baddy" + var/facility_type = "facility" var/dock_name = "THE PirateBay" var/dock_type = "station" //VOREStation Edit - for a list of valid types see the switch block in air_traffic.dm at line 148 var/boss_name = "Captain Roger" diff --git a/sound/effects/capture-crystal-in.ogg b/sound/effects/capture-crystal-in.ogg new file mode 100644 index 00000000000..b00d7be9c9f Binary files /dev/null and b/sound/effects/capture-crystal-in.ogg differ diff --git a/sound/effects/capture-crystal-negative.ogg b/sound/effects/capture-crystal-negative.ogg new file mode 100644 index 00000000000..a0d6de3395f Binary files /dev/null and b/sound/effects/capture-crystal-negative.ogg differ diff --git a/sound/effects/capture-crystal-out.ogg b/sound/effects/capture-crystal-out.ogg new file mode 100644 index 00000000000..363ad85c568 Binary files /dev/null and b/sound/effects/capture-crystal-out.ogg differ diff --git a/sound/effects/capture-crystal-problem.ogg b/sound/effects/capture-crystal-problem.ogg new file mode 100644 index 00000000000..3c0a7b343b0 Binary files /dev/null and b/sound/effects/capture-crystal-problem.ogg differ diff --git a/sound/effects/skeleton_walk.ogg b/sound/effects/skeleton_walk.ogg new file mode 100644 index 00000000000..d5791ec5420 Binary files /dev/null and b/sound/effects/skeleton_walk.ogg differ diff --git a/tgui/packages/tgui/interfaces/RIGSuit.js b/tgui/packages/tgui/interfaces/RIGSuit.js index 3b248a56a93..cc7ec9abe30 100644 --- a/tgui/packages/tgui/interfaces/RIGSuit.js +++ b/tgui/packages/tgui/interfaces/RIGSuit.js @@ -25,7 +25,7 @@ export const RIGSuit = (props, context) => { // Non-AI trying to control the hardsuit while it's AI control overridden override = -- HARDSUIT CONTROL OVERRIDDEN BY AI --; } - + return ( { const RIGSuitStatus = (props, context) => { const { act, data } = useBackend(context); - + const { // Power Bar chargestatus, @@ -57,6 +57,7 @@ const RIGSuitStatus = (props, context) => { // Suit Status sealing, sealed, + cooling, // Cover Locks emagged, securitycheck, @@ -77,6 +78,14 @@ const RIGSuitStatus = (props, context) => { onClick={() => act("toggle_seals")} /> ); + const CoolingButton = ( +