From edd0d94d96bcd0967152885361fdc622e43d583b Mon Sep 17 00:00:00 2001 From: silicons <2003111+silicons@users.noreply.github.com> Date: Sun, 14 Feb 2021 01:48:32 -0700 Subject: [PATCH] a --- code/__DEFINES/controllers/_subsystems.dm | 4 +- code/__HELPERS/game.dm | 1 + code/__HELPERS/text.dm | 2 +- code/_onclick/hud/skybox.dm | 1 - code/controllers/subsystems/events.dm | 2 +- code/controllers/subsystems/game_master.dm | 2 +- code/controllers/subsystems/lighting.dm | 2 +- code/controllers/subsystems/machines.dm | 2 +- code/controllers/subsystems/ticker.dm | 2 +- code/controllers/subsystems/xenoarch.dm | 2 +- code/game/antagonist/alien/borer.dm | 4 +- code/game/antagonist/alien/xenomorph.dm | 2 +- code/game/gamemodes/events.dm | 2 +- code/game/machinery/doors/door.dm | 3 +- code/game/machinery/nuclear_bomb.dm | 2 +- code/game/machinery/status_display.dm | 2 +- code/game/machinery/suit_storage_unit.dm | 5 - code/game/mecha/equipment/weapons/weapons.dm | 2 +- code/game/objects/items/devices/gps.dm | 8 +- .../game/objects/items/devices/radio/radio.dm | 4 +- .../stool_bed_chair_nest/wheelchair.dm | 4 +- code/game/objects/structures/transit_tubes.dm | 2 +- code/modules/admin/verbs/adminpm.dm | 2 +- code/modules/admin/verbs/pray.dm | 4 +- code/modules/atmospherics/mainspipe.dm | 896 +++++++----------- code/modules/events/hostile_migration_vr.dm | 2 +- code/modules/events/spider_infestation.dm | 2 +- code/modules/flufftext/Dreaming.dm | 4 +- code/modules/food/kitchen/icecream.dm | 8 +- .../gamemaster/actions/spider_infestation.dm | 2 +- .../core/special_pins/dir_pin.dm | 4 +- code/modules/maps/tg/map_template.dm | 9 +- code/modules/maps/tg/reader.dm | 2 +- .../mob/living/carbon/human/human_helpers.dm | 10 +- .../carbon/human/species/shadekin/_defines.dm | 9 +- .../silicon/robot/dogborg/dog_modules_vr.dm | 14 +- .../robot/robot_modules/station/medical.dm | 2 +- .../robot/robot_modules/station/security.dm | 2 +- .../mechanical/hivebot/ranged_damage.dm | 2 +- .../subtypes/vore/shadekin/_defines.dm | 13 - .../subtypes/vore/shadekin/~defines.dm | 11 - code/modules/organs/internal/kidneys.dm | 3 +- code/modules/resleeving/computers.dm | 2 +- code/modules/spells/spell_code.dm | 2 +- vorestation.dme | 1 - 45 files changed, 439 insertions(+), 627 deletions(-) delete mode 100644 code/modules/mob/living/simple_mob/subtypes/vore/shadekin/_defines.dm delete mode 100644 code/modules/mob/living/simple_mob/subtypes/vore/shadekin/~defines.dm diff --git a/code/__DEFINES/controllers/_subsystems.dm b/code/__DEFINES/controllers/_subsystems.dm index 77661a6ac18..0b6e36ab3ad 100644 --- a/code/__DEFINES/controllers/_subsystems.dm +++ b/code/__DEFINES/controllers/_subsystems.dm @@ -117,7 +117,7 @@ var/global/list/runlevel_flags = list(RUNLEVEL_LOBBY, RUNLEVEL_SETUP, RUNLEVEL_G // Macro defining the actual code applying our overlays lists to the BYOND overlays list. (I guess a macro for speed) #define COMPILE_OVERLAYS(A)\ - if (TRUE) {\ + do {\ var/list/oo = A.our_overlays;\ var/list/po = A.priority_overlays;\ if(LAZYLEN(po)){\ @@ -135,4 +135,4 @@ var/global/list/runlevel_flags = list(RUNLEVEL_LOBBY, RUNLEVEL_SETUP, RUNLEVEL_G A.overlays.Cut();\ }\ A.flags &= ~OVERLAY_QUEUED;\ - } + } while(FALSE) diff --git a/code/__HELPERS/game.dm b/code/__HELPERS/game.dm index e5cfa74f2a0..b765ec8a842 100644 --- a/code/__HELPERS/game.dm +++ b/code/__HELPERS/game.dm @@ -27,6 +27,7 @@ return max_z /proc/get_area(atom/A) + RETURN_TYPE(/area) if(isarea(A)) return A var/turf/T = get_turf(A) diff --git a/code/__HELPERS/text.dm b/code/__HELPERS/text.dm index 87e4101a76c..38fe886efb1 100644 --- a/code/__HELPERS/text.dm +++ b/code/__HELPERS/text.dm @@ -379,7 +379,7 @@ proc/TextPreview(var/string,var/len=40) //For generating neat chat tag-images //The icon var could be local in the proc, but it's a waste of resources // to always create it and then throw it out. -/var/icon/text_tag_icons = new('./icons/chattags.dmi') +/var/atom/text_tag_icons = icon('./icons/chattags.dmi') /proc/create_text_tag(var/tagname, var/tagdesc = tagname, var/client/C = null) if(!(C && C.is_preference_enabled(/datum/client_preference/chat_tags))) return tagdesc diff --git a/code/_onclick/hud/skybox.dm b/code/_onclick/hud/skybox.dm index 6c251676bc0..8b21e0da748 100644 --- a/code/_onclick/hud/skybox.dm +++ b/code/_onclick/hud/skybox.dm @@ -59,6 +59,5 @@ client.update_skybox() client.skybox?.scale_to_view(client.view) -#undef SKYBOX_BORDER #undef SKYBOX_PIXELS #undef SKYBOX_TURFS diff --git a/code/controllers/subsystems/events.dm b/code/controllers/subsystems/events.dm index 6d6e71cfbf3..caa4c72067a 100644 --- a/code/controllers/subsystems/events.dm +++ b/code/controllers/subsystems/events.dm @@ -38,7 +38,7 @@ SUBSYSTEM_DEF(events) return for(var/i = EVENT_LEVEL_MUNDANE to EVENT_LEVEL_MAJOR) - var/list/datum/event_container/EC = event_containers[i] + var/datum/event_container/EC = event_containers[i] EC.process() /datum/controller/subsystem/events/stat_entry() diff --git a/code/controllers/subsystems/game_master.dm b/code/controllers/subsystems/game_master.dm index 332583e86c8..f698be329b2 100644 --- a/code/controllers/subsystems/game_master.dm +++ b/code/controllers/subsystems/game_master.dm @@ -113,7 +113,7 @@ SUBSYSTEM_DEF(gamemaster) if(!action.enabled) continue // Try to incorporate an action with the top two departments first. - if(most_active_departments[1] in action.departments && most_active_departments[2] in action.departments) + if((most_active_departments[1] in action.departments) && (most_active_departments[2] in action.departments)) best_actions.Add(action) log_debug("[action.name] is being considered because both most active departments are involved.") diff --git a/code/controllers/subsystems/lighting.dm b/code/controllers/subsystems/lighting.dm index 4e2affdfab6..7e8925e2e3b 100644 --- a/code/controllers/subsystems/lighting.dm +++ b/code/controllers/subsystems/lighting.dm @@ -167,4 +167,4 @@ SUBSYSTEM_DEF(lighting) #undef SSLIGHTING_STAGE_LIGHTS #undef SSLIGHTING_STAGE_CORNERS #undef SSLIGHTING_STAGE_OVERLAYS -#undef SSLIGHTING_STAGE_STATS +#undef SSLIGHTING_STAGE_DONE diff --git a/code/controllers/subsystems/machines.dm b/code/controllers/subsystems/machines.dm index 7f35bfd9719..0a46e6aecf6 100644 --- a/code/controllers/subsystems/machines.dm +++ b/code/controllers/subsystems/machines.dm @@ -177,5 +177,5 @@ SUBSYSTEM_DEF(machines) #undef SSMACHINES_PIPENETS #undef SSMACHINES_MACHINERY -#undef SSMACHINES_POWER #undef SSMACHINES_POWER_OBJECTS +#undef SSMACHINES_POWERNETS diff --git a/code/controllers/subsystems/ticker.dm b/code/controllers/subsystems/ticker.dm index 62cbf31faae..25e2eb7f0e5 100644 --- a/code/controllers/subsystems/ticker.dm +++ b/code/controllers/subsystems/ticker.dm @@ -293,7 +293,7 @@ SUBSYSTEM_DEF(ticker) switch(M.z) if(0) //inside a crate or something var/turf/T = get_turf(M) - if(T && T.z in GLOB.using_map.station_levels) //we don't use M.death(0) because it calls a for(/mob) loop and + if(T && (T.z in GLOB.using_map.station_levels)) //we don't use M.death(0) because it calls a for(/mob) loop and M.health = 0 M.stat = DEAD if(1) //on a z-level 1 turf. diff --git a/code/controllers/subsystems/xenoarch.dm b/code/controllers/subsystems/xenoarch.dm index 211079683da..6dfde24799c 100644 --- a/code/controllers/subsystems/xenoarch.dm +++ b/code/controllers/subsystems/xenoarch.dm @@ -31,7 +31,7 @@ SUBSYSTEM_DEF(xenoarch) /datum/controller/subsystem/xenoarch/proc/SetupXenoarch() for(var/turf/simulated/mineral/M in world) - if(!M.density || M.z in GLOB.using_map.xenoarch_exempt_levels) + if(!M.density || (M.z in GLOB.using_map.xenoarch_exempt_levels)) continue if(isnull(M.geologic_data)) diff --git a/code/game/antagonist/alien/borer.dm b/code/game/antagonist/alien/borer.dm index f76953a2809..3c4325c204a 100644 --- a/code/game/antagonist/alien/borer.dm +++ b/code/game/antagonist/alien/borer.dm @@ -68,7 +68,7 @@ var/datum/antagonist/borer/borers /datum/antagonist/borer/proc/get_vents() var/list/vents = list() for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in machines) - if(!temp_vent.welded && temp_vent.network && temp_vent.loc.z in GLOB.using_map.station_levels) + if(!temp_vent.welded && temp_vent.network && (temp_vent.loc.z in GLOB.using_map.station_levels)) if(temp_vent.network.normal_members.len > 50) vents += temp_vent - return vents \ No newline at end of file + return vents diff --git a/code/game/antagonist/alien/xenomorph.dm b/code/game/antagonist/alien/xenomorph.dm index f6060fe5fdf..6afff29ba85 100644 --- a/code/game/antagonist/alien/xenomorph.dm +++ b/code/game/antagonist/alien/xenomorph.dm @@ -32,7 +32,7 @@ var/datum/antagonist/xenos/xenomorphs /datum/antagonist/xenos/proc/get_vents() var/list/vents = list() for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in machines) - if(!temp_vent.welded && temp_vent.network && temp_vent.loc.z in GLOB.using_map.station_levels) + if(!temp_vent.welded && temp_vent.network && (temp_vent.loc.z in GLOB.using_map.station_levels)) if(temp_vent.network.normal_members.len > 50) vents += temp_vent return vents diff --git a/code/game/gamemodes/events.dm b/code/game/gamemodes/events.dm index f257d4d7d48..23a19c6a72e 100644 --- a/code/game/gamemodes/events.dm +++ b/code/game/gamemodes/events.dm @@ -111,7 +111,7 @@ var/hadevent = 0 //world << sound('sound/AI/aliens.ogg') var/list/vents = list() for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in machines) - if(!temp_vent.welded && temp_vent.network && temp_vent.loc.z in GLOB.using_map.station_levels) + if(!temp_vent.welded && temp_vent.network && )temp_vent.loc.z in GLOB.using_map.station_levels)) if(temp_vent.network.normal_members.len > 50) // Stops Aliens getting stuck in small networks. See: Security, Virology vents += temp_vent diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 96af624f832..14f3a8bed0a 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -265,7 +265,8 @@ return if(repairing && I.is_crowbar()) - var/obj/item/stack/material/repairing_sheet = get_material().place_sheet(loc) + var/datum/material/M = get_material() + var/obj/item/stack/material/repairing_sheet = M.place_sheet(loc) repairing_sheet.amount += repairing-1 repairing = 0 to_chat(user, "You remove \the [repairing_sheet].") diff --git a/code/game/machinery/nuclear_bomb.dm b/code/game/machinery/nuclear_bomb.dm index 6dcfba4ad4b..7177c3711bb 100644 --- a/code/game/machinery/nuclear_bomb.dm +++ b/code/game/machinery/nuclear_bomb.dm @@ -201,7 +201,7 @@ var/bomb_set return obj/machinery/nuclearbomb/proc/nukehack_win(mob/user as mob) - var/dat as text + var/dat dat += "Nuclear Fission Explosive
\nNuclear Device Wires:
" for(var/wire in wires) dat += text("[wire] Wire: [wires[wire] ? "Mend" : "Cut"] Pulse
") diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm index fd1ebbcc4e8..fd4b16d1e5d 100644 --- a/code/game/machinery/status_display.dm +++ b/code/game/machinery/status_display.dm @@ -250,4 +250,4 @@ #undef FONT_SIZE #undef FONT_COLOR #undef FONT_STYLE -#undef CHARS_PER_LINE +#undef SCROLL_SPEED diff --git a/code/game/machinery/suit_storage_unit.dm b/code/game/machinery/suit_storage_unit.dm index 4fcf3c8d825..b723135da2d 100644 --- a/code/game/machinery/suit_storage_unit.dm +++ b/code/game/machinery/suit_storage_unit.dm @@ -73,15 +73,10 @@ if(prob(50)) dump_everything() //So suits dont survive all the time qdel(src) - return if(2.0) if(prob(50)) dump_everything() qdel(src) - return - else - return - return /obj/machinery/suit_storage_unit/attack_hand(mob/user as mob) var/dat diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index e360c6d9491..5abe40e7d86 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -34,7 +34,7 @@ var/turf/aimloc = targloc if(deviation) aimloc = locate(targloc.x+GaussRandRound(deviation,1),targloc.y+GaussRandRound(deviation,1),targloc.z) - if(!aimloc || aimloc == curloc || (locs && aimloc in locs)) + if(!aimloc || aimloc == curloc || (locs && (aimloc in locs))) break playsound(chassis, fire_sound, fire_volume, 1) projectiles-- diff --git a/code/game/objects/items/devices/gps.dm b/code/game/objects/items/devices/gps.dm index 4c82b6f18a6..d04a21e1ad3 100644 --- a/code/game/objects/items/devices/gps.dm +++ b/code/game/objects/items/devices/gps.dm @@ -94,7 +94,7 @@ GLOBAL_LIST_EMPTY(GPS_list) if(!(T.z in dat["z_level_detection"])) continue - var/gps_data[0] + var/list/gps_data[0] gps_data["ref"] = G gps_data["gps_tag"] = G.gps_tag @@ -133,7 +133,8 @@ GLOBAL_LIST_EMPTY(GPS_list) \[Toggle Scan Range\] \ [can_hide_signal ? "\[Toggle Signal Visibility\]":""]" - if(gps_data["gps_list"].len) + var/list/gps_list = gps_data["gps_list"] + if(gps_list.len) dat += "Detected signals;" for(var/gps in gps_data["gps_list"]) if(istype(gps_data["ref"], /obj/item/gps/internal/poi)) @@ -307,13 +308,14 @@ GLOBAL_LIST_EMPTY(GPS_list) var/list/dat = list() var/list/gps_data = display_list() + var/list/gps_list = gps_data["gps_list"] dat += "Current location: [gps_data["my_area_name"]] ([gps_data["curr_x"]], [gps_data["curr_y"]], [gps_data["curr_z_name"]])" dat += "[hide_signal ? "Tagged" : "Broadcasting"] as '[gps_tag]'. \[Change Tag\] \ \[Toggle Scan Range\] \ [can_hide_signal ? "\[Toggle Signal Visibility\]":""]" - if(gps_data["gps_list"].len) + if(gps_list.len) dat += "Detected signals;" for(var/gps in gps_data["gps_list"]) dat += " [gps["gps_tag"]]: [gps["area_name"]] ([gps["x"]], [gps["y"]], [gps["z_name"]]) [gps["local"] ? "Dist: [gps["distance"]]m Dir: [gps["degrees"]]° ([gps["direction"]])" :""]" diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index deeb1c27466..7359d382c94 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -406,7 +406,7 @@ GLOBAL_LIST_INIT(default_medbay_channels, list( R.receive_signal(signal) // Receiving code can be located in Telecommunications.dm - if(signal.data["done"] && position.z in signal.data["level"]) + if(signal.data["done"] && (position.z in signal.data["level"])) return TRUE //Huzzah, sent via subspace else if(adhoc_fallback) //Less huzzah, we have to fallback @@ -461,7 +461,7 @@ GLOBAL_LIST_INIT(default_medbay_channels, list( for(var/obj/machinery/telecomms/receiver/R in telecomms_list) R.receive_signal(signal) - if(signal.data["done"] && position.z in signal.data["level"]) + if(signal.data["done"] && (position.z in signal.data["level"])) if(adhoc_fallback) to_chat(loc,"\The [src] pings as it reestablishes subspace communications.") subspace_transmission = TRUE diff --git a/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm b/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm index 1d1289b97ec..7068e42949f 100644 --- a/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm +++ b/code/game/objects/structures/stool_bed_chair_nest/wheelchair.dm @@ -207,11 +207,11 @@ B.setDir(newdir) bloodiness-- -/obj/structure/bed/chair/wheelchair/buckle_mob(mob/M as mob, mob/user as mob) +/obj/structure/bed/chair/wheelchair/buckle_mob(mob/living/M, forced = FALSE, check_loc = TRUE) if(M == pulling_along) pulling_along = null usr.pulledby = null - ..() + return ..() /obj/item/wheelchair name = "wheelchair" diff --git a/code/game/objects/structures/transit_tubes.dm b/code/game/objects/structures/transit_tubes.dm index 4be86acb092..41caec89ad0 100644 --- a/code/game/objects/structures/transit_tubes.dm +++ b/code/game/objects/structures/transit_tubes.dm @@ -156,7 +156,7 @@ /obj/structure/transit_tube/station/proc/launch_pod() for(var/obj/structure/transit_tube_pod/pod in loc) - if(!pod.moving && pod.dir in directions()) + if(!pod.moving && (pod.dir in directions())) spawn(5) pod_moving = 1 close_animation() diff --git a/code/modules/admin/verbs/adminpm.dm b/code/modules/admin/verbs/adminpm.dm index 076607c3bfb..8c19725cdea 100644 --- a/code/modules/admin/verbs/adminpm.dm +++ b/code/modules/admin/verbs/adminpm.dm @@ -283,4 +283,4 @@ GLOB.stealthminID["IRCKEY"] = stealth return stealth -#undef IRCREPLYCOUNT \ No newline at end of file +#undef IRCREPLYCOUNT diff --git a/code/modules/admin/verbs/pray.dm b/code/modules/admin/verbs/pray.dm index 4c603938b81..59a0dbd9c9f 100644 --- a/code/modules/admin/verbs/pray.dm +++ b/code/modules/admin/verbs/pray.dm @@ -30,14 +30,14 @@ //log_admin("HELP: [key_name(src)]: [msg]") /proc/CentCom_announce(var/msg, var/mob/Sender, var/iamessage) - msg = "[uppertext(GLOB.using_map.boss_short)]M[iamessage ? " IA" : ""]:[key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender, src)]) (CA) (BSA) (RPLY): [msg]" + msg = "[uppertext(GLOB.using_map.boss_short)]M[iamessage ? " IA" : ""]:[key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender, null)]) (CA) (BSA) (RPLY): [msg]" for(var/client/C in admins) if((R_ADMIN|R_MOD) & C.holder.rights) C << msg C << 'sound/machines/signal.ogg' /proc/Syndicate_announce(var/msg, var/mob/Sender) - msg = "ILLEGAL:[key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender, src)]) (CA) (BSA) (RPLY): [msg]" + msg = "ILLEGAL:[key_name(Sender, 1)] (PP) (VV) (SM) ([admin_jump_link(Sender, null)]) (CA) (BSA) (RPLY): [msg]" for(var/client/C in admins) if((R_ADMIN|R_MOD) & C.holder.rights) C << msg diff --git a/code/modules/atmospherics/mainspipe.dm b/code/modules/atmospherics/mainspipe.dm index 42cea6e17ab..2393e28c327 100644 --- a/code/modules/atmospherics/mainspipe.dm +++ b/code/modules/atmospherics/mainspipe.dm @@ -1,5 +1,5 @@ // internal pipe, don't actually place or use these -obj/machinery/atmospherics/pipe/mains_component +/obj/machinery/atmospherics/pipe/mains_component var/obj/machinery/atmospherics/mains_pipe/parent_pipe var/list/obj/machinery/atmospherics/pipe/mains_component/nodes = new() @@ -32,7 +32,7 @@ obj/machinery/atmospherics/pipe/mains_component proc/mains_burst() parent_pipe.burst() -obj/machinery/atmospherics/mains_pipe +/obj/machinery/atmospherics/mains_pipe icon = 'icons/obj/atmospherics/mainspipe.dmi' layer = PIPES_LAYER plane = PLATING_PLANE @@ -55,146 +55,146 @@ obj/machinery/atmospherics/mains_pipe var/fatigue_pressure = 55*ONE_ATMOSPHERE alert_pressure = 55*ONE_ATMOSPHERE - New() - ..() +/obj/machinery/atmospherics/mains_pipe/New() + ..() - supply = new(src) - supply.volume = volume - supply.nodes.len = nodes.len - scrubbers = new(src) - scrubbers.volume = volume - scrubbers.nodes.len = nodes.len - aux = new(src) - aux.volume = volume - aux.nodes.len = nodes.len + supply = new(src) + supply.volume = volume + supply.nodes.len = nodes.len + scrubbers = new(src) + scrubbers.volume = volume + scrubbers.nodes.len = nodes.len + aux = new(src) + aux.volume = volume + aux.nodes.len = nodes.len - hide(var/i) - if(level == 1 && istype(loc, /turf/simulated)) - invisibility = i ? 101 : 0 - update_icon() +/obj/machinery/atmospherics/mains_pipe/hide(var/i) + if(level == 1 && istype(loc, /turf/simulated)) + invisibility = i ? 101 : 0 + update_icon() - proc/burst() - ..() - for(var/obj/machinery/atmospherics/pipe/mains_component/pipe in contents) +/obj/machinery/atmospherics/mains_pipe/proc/burst() + for(var/obj/machinery/atmospherics/pipe/mains_component/pipe in contents) + burst() + +/obj/machinery/atmospherics/mains_pipe/proc/check_pressure(pressure) + var/datum/gas_mixture/environment = loc.return_air() + + var/pressure_difference = pressure - environment.return_pressure() + + if(pressure_difference > maximum_pressure) + burst() + + else if(pressure_difference > fatigue_pressure) + //TODO: leak to turf, doing pfshhhhh + if(prob(5)) burst() - proc/check_pressure(pressure) - var/datum/gas_mixture/environment = loc.return_air() + else + return 1 - var/pressure_difference = pressure - environment.return_pressure() +/obj/machinery/atmospherics/mains_pipe/get_neighbor_nodes_for_init() + return nodes - if(pressure_difference > maximum_pressure) - burst() - - else if(pressure_difference > fatigue_pressure) - //TODO: leak to turf, doing pfshhhhh - if(prob(5)) - burst() - - else return 1 - - get_neighbor_nodes_for_init() - return nodes +/obj/machinery/atmospherics/mains_pipe/disconnect() + ..() + for(var/obj/machinery/atmospherics/pipe/mains_component/node in nodes) + node.disconnect() +/obj/machinery/atmospherics/mains_pipe/Destroy() disconnect() - ..() - for(var/obj/machinery/atmospherics/pipe/mains_component/node in nodes) - node.disconnect() + return ..() - Destroy() - disconnect() - ..() +/obj/machinery/atmospherics/mains_pipe/atmos_init() + for(var/i = 1 to nodes.len) + var/obj/machinery/atmospherics/mains_pipe/node = nodes[i] + if(node) + supply.nodes[i] = node.supply + scrubbers.nodes[i] = node.scrubbers + aux.nodes[i] = node.aux - atmos_init() - for(var/i = 1 to nodes.len) - var/obj/machinery/atmospherics/mains_pipe/node = nodes[i] - if(node) - supply.nodes[i] = node.supply - scrubbers.nodes[i] = node.scrubbers - aux.nodes[i] = node.aux - -obj/machinery/atmospherics/mains_pipe/simple +/obj/machinery/atmospherics/mains_pipe/simple name = "mains pipe" desc = "A one meter section of 3-line mains pipe" dir = SOUTH initialize_mains_directions = SOUTH|NORTH - New() - nodes.len = 2 - ..() - switch(dir) - if(SOUTH || NORTH) - initialize_mains_directions = SOUTH|NORTH - if(EAST || WEST) - initialize_mains_directions = EAST|WEST - if(NORTHEAST) - initialize_mains_directions = NORTH|EAST - if(NORTHWEST) - initialize_mains_directions = NORTH|WEST - if(SOUTHEAST) - initialize_mains_directions = SOUTH|EAST - if(SOUTHWEST) - initialize_mains_directions = SOUTH|WEST +/obj/machinery/atmospherics/mains_pipe/simple/New() + nodes.len = 2 + ..() + switch(dir) + if(SOUTH || NORTH) + initialize_mains_directions = SOUTH|NORTH + if(EAST || WEST) + initialize_mains_directions = EAST|WEST + if(NORTHEAST) + initialize_mains_directions = NORTH|EAST + if(NORTHWEST) + initialize_mains_directions = NORTH|WEST + if(SOUTHEAST) + initialize_mains_directions = SOUTH|EAST + if(SOUTHWEST) + initialize_mains_directions = SOUTH|WEST - proc/normalize_dir() - if(dir==3) - setDir(1) - else if(dir==12) - setDir(4) +/obj/machinery/atmospherics/mains_pipe/simple/proc/normalize_dir() + if(dir==3) + setDir(1) + else if(dir==12) + setDir(4) +/obj/machinery/atmospherics/mains_pipe/simple/update_icon_state() + if(nodes[1] && nodes[2]) + icon_state = "intact[invisibility ? "-f" : "" ]" + + //var/node1_direction = get_dir(src, node1) + //var/node2_direction = get_dir(src, node2) + + //setDir(node1_direction|node2_direction) + + else + if(!nodes[1]&&!nodes[2]) + qdel(src) //TODO: silent deleting looks weird + var/have_node1 = nodes[1]?1:0 + var/have_node2 = nodes[2]?1:0 + icon_state = "exposed[have_node1][have_node2][invisibility ? "-f" : "" ]" + +/obj/machinery/atmospherics/mains_pipe/simple/atmos_init() + normalize_dir() + var/node1_dir + var/node2_dir + + for(var/direction in cardinal) + if(direction&initialize_mains_directions) + if (!node1_dir) + node1_dir = direction + else if (!node2_dir) + node2_dir = direction + + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node1_dir)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[1] = target + break + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node2_dir)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[2] = target + break + + ..() // initialize internal pipes + + var/turf/T = src.loc // hide if turf is not intact + if(level == 1 && !T.is_plating()) hide(1) update_icon() - if(nodes[1] && nodes[2]) - icon_state = "intact[invisibility ? "-f" : "" ]" - //var/node1_direction = get_dir(src, node1) - //var/node2_direction = get_dir(src, node2) +/obj/machinery/atmospherics/mains_pipe/simple/hidden + level = 1 + icon_state = "intact-f" - //setDir(node1_direction|node2_direction) +/obj/machinery/atmospherics/mains_pipe/simple/visible + level = 2 + icon_state = "intact" - else - if(!nodes[1]&&!nodes[2]) - qdel(src) //TODO: silent deleting looks weird - var/have_node1 = nodes[1]?1:0 - var/have_node2 = nodes[2]?1:0 - icon_state = "exposed[have_node1][have_node2][invisibility ? "-f" : "" ]" - - atmos_init() - normalize_dir() - var/node1_dir - var/node2_dir - - for(var/direction in cardinal) - if(direction&initialize_mains_directions) - if (!node1_dir) - node1_dir = direction - else if (!node2_dir) - node2_dir = direction - - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node1_dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[1] = target - break - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node2_dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[2] = target - break - - ..() // initialize internal pipes - - var/turf/T = src.loc // hide if turf is not intact - if(level == 1 && !T.is_plating()) hide(1) - update_icon() - - hidden - level = 1 - icon_state = "intact-f" - - visible - level = 2 - icon_state = "intact" - -obj/machinery/atmospherics/mains_pipe/manifold +/obj/machinery/atmospherics/mains_pipe/manifold name = "manifold pipe" desc = "A manifold composed of mains pipes" @@ -202,64 +202,64 @@ obj/machinery/atmospherics/mains_pipe/manifold initialize_mains_directions = EAST|NORTH|WEST volume = 105 - New() - nodes.len = 3 - ..() - initialize_mains_directions = (NORTH|SOUTH|EAST|WEST) & ~dir +/obj/machinery/atmospherics/mains_pipe/manifold/New() + nodes.len = 3 + ..() + initialize_mains_directions = (NORTH|SOUTH|EAST|WEST) & ~dir - atmos_init() - var/connect_directions = initialize_mains_directions +/obj/machinery/atmospherics/mains_pipe/manifold/atmos_init() + var/connect_directions = initialize_mains_directions - for(var/direction in cardinal) - if(direction&connect_directions) - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,direction)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[1] = target - connect_directions &= ~direction - break - if (nodes[1]) + for(var/direction in cardinal) + if(direction&connect_directions) + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,direction)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[1] = target + connect_directions &= ~direction break + if (nodes[1]) + break - for(var/direction in cardinal) - if(direction&connect_directions) - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,direction)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[2] = target - connect_directions &= ~direction - break - if (nodes[2]) + for(var/direction in cardinal) + if(direction&connect_directions) + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,direction)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[2] = target + connect_directions &= ~direction break + if (nodes[2]) + break - for(var/direction in cardinal) - if(direction&connect_directions) - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,direction)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[3] = target - connect_directions &= ~direction - break - if (nodes[3]) + for(var/direction in cardinal) + if(direction&connect_directions) + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,direction)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[3] = target + connect_directions &= ~direction break + if (nodes[3]) + break - ..() // initialize internal pipes - - var/turf/T = src.loc // hide if turf is not intact - if(level == 1 && !T.is_plating()) hide(1) - update_icon() + ..() // initialize internal pipes + var/turf/T = src.loc // hide if turf is not intact + if(level == 1 && !T.is_plating()) hide(1) update_icon() - icon_state = "manifold[invisibility ? "-f" : "" ]" - hidden - level = 1 - icon_state = "manifold-f" +/obj/machinery/atmospherics/mains_pipe/manifold/update_icon_state() + icon_state = "manifold[invisibility ? "-f" : "" ]" - visible - level = 2 - icon_state = "manifold" +/obj/machinery/atmospherics/mains_pipe/manifold/hidden + level = 1 + icon_state = "manifold-f" -obj/machinery/atmospherics/mains_pipe/manifold4w +/obj/machinery/atmospherics/mains_pipe/manifold/visible + level = 2 + icon_state = "manifold" + +/obj/machinery/atmospherics/mains_pipe/manifold4w name = "manifold pipe" desc = "A manifold composed of mains pipes" @@ -267,49 +267,49 @@ obj/machinery/atmospherics/mains_pipe/manifold4w initialize_mains_directions = EAST|NORTH|WEST|SOUTH volume = 105 - New() - nodes.len = 4 - ..() +/obj/machinery/atmospherics/mains_pipe/manifold4w/New() + nodes.len = 4 + ..() - atmos_init() - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,NORTH)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[1] = target - break +/obj/machinery/atmospherics/mains_pipe/manifold4w/atmos_init() + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,NORTH)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[1] = target + break - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,SOUTH)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[2] = target - break + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,SOUTH)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[2] = target + break - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,EAST)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[3] = target - break + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,EAST)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[3] = target + break - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,WEST)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[3] = target - break + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,WEST)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[3] = target + break - ..() // initialize internal pipes - - var/turf/T = src.loc // hide if turf is not intact - if(level == 1 && !T.is_plating()) hide(1) - update_icon() + ..() // initialize internal pipes + var/turf/T = src.loc // hide if turf is not intact + if(level == 1 && !T.is_plating()) hide(1) update_icon() - icon_state = "manifold4w[invisibility ? "-f" : "" ]" - hidden - level = 1 - icon_state = "manifold4w-f" +/obj/machinery/atmospherics/mains_pipe/manifold4w/update_icon_state() + icon_state = "manifold4w[invisibility ? "-f" : "" ]" - visible - level = 2 - icon_state = "manifold4w" +/obj/machinery/atmospherics/mains_pipe/manifold4w/hidden + level = 1 + icon_state = "manifold4w-f" -obj/machinery/atmospherics/mains_pipe/split +/obj/machinery/atmospherics/mains_pipe/manifold4w/visible + level = 2 + icon_state = "manifold4w" + +/obj/machinery/atmospherics/mains_pipe/split name = "mains splitter" desc = "A splitter for connecting to a single pipe off a mains." @@ -317,100 +317,100 @@ obj/machinery/atmospherics/mains_pipe/split var/obj/machinery/atmospherics/node3 var/icon_type - New() - nodes.len = 2 - ..() - initialize_mains_directions = turn(dir, 90) | turn(dir, -90) - initialize_directions = dir // actually have a normal connection too +/obj/machinery/atmospherics/mains_pipe/split/New() + nodes.len = 2 + ..() + initialize_mains_directions = turn(dir, 90) | turn(dir, -90) + initialize_directions = dir // actually have a normal connection too - atmos_init() - var/node1_dir - var/node2_dir - var/node3_dir +/obj/machinery/atmospherics/mains_pipe/split/atmos_init() + var/node1_dir + var/node2_dir + var/node3_dir - node1_dir = turn(dir, 90) - node2_dir = turn(dir, -90) - node3_dir = dir + node1_dir = turn(dir, 90) + node2_dir = turn(dir, -90) + node3_dir = dir - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node1_dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[1] = target - break - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node2_dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[2] = target - break - for(var/obj/machinery/atmospherics/target in get_step(src,node3_dir)) - if(target.initialize_directions & get_dir(target,src)) - node3 = target - break + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node1_dir)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[1] = target + break + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node2_dir)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[2] = target + break + for(var/obj/machinery/atmospherics/target in get_step(src,node3_dir)) + if(target.initialize_directions & get_dir(target,src)) + node3 = target + break - ..() // initialize internal pipes + ..() // initialize internal pipes - // bind them - spawn(5) - if(node3 && split_node) - var/datum/pipe_network/N1 = node3.return_network(src) - var/datum/pipe_network/N2 = split_node.return_network(split_node) - if(N1 && N2) - N1.merge(N2) - - var/turf/T = src.loc // hide if turf is not intact - if(level == 1 && !T.is_plating()) hide(1) - update_icon() + // bind them + spawn(5) + if(node3 && split_node) + var/datum/pipe_network/N1 = node3.return_network(src) + var/datum/pipe_network/N2 = split_node.return_network(split_node) + if(N1 && N2) + N1.merge(N2) + var/turf/T = src.loc // hide if turf is not intact + if(level == 1 && !T.is_plating()) hide(1) update_icon() - icon_state = "split-[icon_type][invisibility ? "-f" : "" ]" - return_network(A) - return split_node.return_network(A) +/obj/machinery/atmospherics/mains_pipe/split/update_icon_state() + icon_state = "split-[icon_type][invisibility ? "-f" : "" ]" - supply - icon_type = "supply" +/obj/machinery/atmospherics/mains_pipe/split/return_network(A) + return split_node.return_network(A) - New() - ..() - split_node = supply +/obj/machinery/atmospherics/mains_pipe/split/supply + icon_type = "supply" - hidden - level = 1 - icon_state = "split-supply-f" +/obj/machinery/atmospherics/mains_pipe/split/New() + ..() + split_node = supply - visible - level = 2 - icon_state = "split-supply" +/obj/machinery/atmospherics/mains_pipe/split/hidden + level = 1 + icon_state = "split-supply-f" - scrubbers - icon_type = "scrubbers" +/obj/machinery/atmospherics/mains_pipe/split/visible + level = 2 + icon_state = "split-supply" - New() - ..() - split_node = scrubbers +/obj/machinery/atmospherics/mains_pipe/split/scrubbers + icon_type = "scrubbers" - hidden - level = 1 - icon_state = "split-scrubbers-f" +/obj/machinery/atmospherics/mains_pipe/split/New() + ..() + split_node = scrubbers - visible - level = 2 - icon_state = "split-scrubbers" +/obj/machinery/atmospherics/mains_pipe/split/hidden + level = 1 + icon_state = "split-scrubbers-f" - aux - icon_type = "aux" +/obj/machinery/atmospherics/mains_pipe/split/visible + level = 2 + icon_state = "split-scrubbers" - New() - ..() - split_node = aux +/obj/machinery/atmospherics/mains_pipe/split/aux + icon_type = "aux" - hidden - level = 1 - icon_state = "split-aux-f" +/obj/machinery/atmospherics/mains_pipe/split/New() + ..() + split_node = aux - visible - level = 2 - icon_state = "split-aux" +/obj/machinery/atmospherics/mains_pipe/split/hidden + level = 1 + icon_state = "split-aux-f" -obj/machinery/atmospherics/mains_pipe/split3 +/obj/machinery/atmospherics/mains_pipe/split/visible + level = 2 + icon_state = "split-aux" + +/obj/machinery/atmospherics/mains_pipe/split3 name = "triple mains splitter" desc = "A splitter for connecting to the 3 pipes on a mainline." @@ -418,91 +418,91 @@ obj/machinery/atmospherics/mains_pipe/split3 var/obj/machinery/atmospherics/scrubbers_node var/obj/machinery/atmospherics/aux_node - New() - nodes.len = 1 - ..() - initialize_mains_directions = dir - initialize_directions = cardinal & ~dir // actually have a normal connection too +/obj/machinery/atmospherics/mains_pipe/split3/New() + nodes.len = 1 + ..() + initialize_mains_directions = dir + initialize_directions = cardinal & ~dir // actually have a normal connection too - atmos_init() - var/node1_dir - var/supply_node_dir - var/scrubbers_node_dir - var/aux_node_dir +/obj/machinery/atmospherics/mains_pipe/split3/atmos_init() + var/node1_dir + var/supply_node_dir + var/scrubbers_node_dir + var/aux_node_dir - node1_dir = dir - aux_node_dir = turn(dir, 180) - if(dir & (NORTH|SOUTH)) - supply_node_dir = EAST - scrubbers_node_dir = WEST - else - supply_node_dir = SOUTH - scrubbers_node_dir = NORTH + node1_dir = dir + aux_node_dir = turn(dir, 180) + if(dir & (NORTH|SOUTH)) + supply_node_dir = EAST + scrubbers_node_dir = WEST + else + supply_node_dir = SOUTH + scrubbers_node_dir = NORTH - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src, node1_dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[1] = target - break - for(var/obj/machinery/atmospherics/target in get_step(src,supply_node_dir)) - if(target.initialize_directions & get_dir(target,src)) - supply_node = target - break - for(var/obj/machinery/atmospherics/target in get_step(src,scrubbers_node_dir)) - if(target.initialize_directions & get_dir(target,src)) - scrubbers_node = target - break - for(var/obj/machinery/atmospherics/target in get_step(src,aux_node_dir)) - if(target.initialize_directions & get_dir(target,src)) - aux_node = target - break + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src, node1_dir)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[1] = target + break + for(var/obj/machinery/atmospherics/target in get_step(src,supply_node_dir)) + if(target.initialize_directions & get_dir(target,src)) + supply_node = target + break + for(var/obj/machinery/atmospherics/target in get_step(src,scrubbers_node_dir)) + if(target.initialize_directions & get_dir(target,src)) + scrubbers_node = target + break + for(var/obj/machinery/atmospherics/target in get_step(src,aux_node_dir)) + if(target.initialize_directions & get_dir(target,src)) + aux_node = target + break - ..() // initialize internal pipes + ..() // initialize internal pipes - // bind them - spawn(5) - if(supply_node) - var/datum/pipe_network/N1 = supply_node.return_network(src) - var/datum/pipe_network/N2 = supply.return_network(supply) - if(N1 && N2) - N1.merge(N2) - if(scrubbers_node) - var/datum/pipe_network/N1 = scrubbers_node.return_network(src) - var/datum/pipe_network/N2 = scrubbers.return_network(scrubbers) - if(N1 && N2) - N1.merge(N2) - if(aux_node) - var/datum/pipe_network/N1 = aux_node.return_network(src) - var/datum/pipe_network/N2 = aux.return_network(aux) - if(N1 && N2) - N1.merge(N2) - - var/turf/T = src.loc // hide if turf is not intact - if(level == 1 && !T.is_plating()) hide(1) - update_icon() + // bind them + spawn(5) + if(supply_node) + var/datum/pipe_network/N1 = supply_node.return_network(src) + var/datum/pipe_network/N2 = supply.return_network(supply) + if(N1 && N2) + N1.merge(N2) + if(scrubbers_node) + var/datum/pipe_network/N1 = scrubbers_node.return_network(src) + var/datum/pipe_network/N2 = scrubbers.return_network(scrubbers) + if(N1 && N2) + N1.merge(N2) + if(aux_node) + var/datum/pipe_network/N1 = aux_node.return_network(src) + var/datum/pipe_network/N2 = aux.return_network(aux) + if(N1 && N2) + N1.merge(N2) + var/turf/T = src.loc // hide if turf is not intact + if(level == 1 && !T.is_plating()) hide(1) update_icon() - icon_state = "split-t[invisibility ? "-f" : "" ]" - return_network(obj/machinery/atmospherics/reference) - var/obj/machinery/atmospherics/A +/obj/machinery/atmospherics/mains_pipe/split3/update_icon() + icon_state = "split-t[invisibility ? "-f" : "" ]" - A = supply_node.return_network(reference) - if(!A) - A = scrubbers_node.return_network(reference) - if(!A) - A = aux_node.return_network(reference) +/obj/machinery/atmospherics/mains_pipe/split3/return_network(obj/machinery/atmospherics/reference) + var/obj/machinery/atmospherics/A - return A + A = supply_node.return_network(reference) + if(!A) + A = scrubbers_node.return_network(reference) + if(!A) + A = aux_node.return_network(reference) - hidden - level = 1 - icon_state = "split-t-f" + return A - visible - level = 2 - icon_state = "split-t" +/obj/machinery/atmospherics/mains_pipe/split3/hidden + level = 1 + icon_state = "split-t-f" -obj/machinery/atmospherics/mains_pipe/cap +/obj/machinery/atmospherics/mains_pipe/split3/visible + level = 2 + icon_state = "split-t" + +/obj/machinery/atmospherics/mains_pipe/cap name = "pipe cap" desc = "A cap for the end of a mains pipe" @@ -510,200 +510,30 @@ obj/machinery/atmospherics/mains_pipe/cap initialize_directions = SOUTH volume = 35 - New() - nodes.len = 1 - ..() - initialize_mains_directions = dir +/obj/machinery/atmospherics/mains_pipe/cap/New() + nodes.len = 1 + ..() + initialize_mains_directions = dir +/obj/machinery/atmospherics/mains_pipe/cap/update_icon() + icon_state = "cap[invisibility ? "-f" : ""]" + +/obj/machinery/atmospherics/mains_pipe/cap/atmos_init() + for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,dir)) + if(target.initialize_mains_directions & get_dir(target,src)) + nodes[1] = target + break + + ..() + + var/turf/T = src.loc // hide if turf is not intact + if(level == 1 && !T.is_plating()) hide(1) update_icon() - icon_state = "cap[invisibility ? "-f" : ""]" - atmos_init() - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[1] = target - break +/obj/machinery/atmospherics/mains_pipe/cap/hidden + level = 1 + icon_state = "cap-f" - ..() - - var/turf/T = src.loc // hide if turf is not intact - if(level == 1 && !T.is_plating()) hide(1) - update_icon() - - hidden - level = 1 - icon_state = "cap-f" - - visible - level = 2 - icon_state = "cap" - -//TODO: Get Mains valves working! -/* -obj/machinery/atmospherics/mains_pipe/valve - icon_state = "mvalve0" - - name = "mains shutoff valve" - desc = "A mains pipe valve" - - var/open = 1 - - dir = SOUTH - initialize_mains_directions = SOUTH|NORTH - - New() - nodes.len = 2 - ..() - initialize_mains_directions = dir | turn(dir, 180) - - update_icon(animation) - var/turf/simulated/floor = loc - var/hide = istype(floor) ? floor.intact : 0 - level = 1 - for(var/obj/machinery/atmospherics/mains_pipe/node in nodes) - if(node.level == 2) - hide = 0 - level = 2 - break - - if(animation) - flick("[hide?"h":""]mvalve[src.open][!src.open]",src) - else - icon_state = "[hide?"h":""]mvalve[open]" - - Initialize() - normalize_dir() - var/node1_dir - var/node2_dir - - for(var/direction in cardinal) - if(direction&initialize_mains_directions) - if (!node1_dir) - node1_dir = direction - else if (!node2_dir) - node2_dir = direction - - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node1_dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[1] = target - break - for(var/obj/machinery/atmospherics/mains_pipe/target in get_step(src,node2_dir)) - if(target.initialize_mains_directions & get_dir(target,src)) - nodes[2] = target - break - - if(open) - ..() // initialize internal pipes - - update_icon() - - proc/normalize_dir() - if(dir==3) - setDir(1) - else if(dir==12) - setDir(4) - - proc/open() - if(open) return 0 - - open = 1 - update_icon() - - Initialize() - - return 1 - - proc/close() - if(!open) return 0 - - open = 0 - update_icon() - - for(var/obj/machinery/atmospherics/pipe/mains_component/node in src) - for(var/obj/machinery/atmospherics/pipe/mains_component/o in node.nodes) - o.disconnect(node) - o.build_network() - - return 1 - - attack_ai(mob/user as mob) - return - - attack_paw(mob/user as mob) - return attack_hand(user) - - attack_hand(mob/user as mob) - src.add_fingerprint(usr) - update_icon(1) - sleep(10) - if (open) - close() - else - open() - - digital // can be controlled by AI - name = "digital mains valve" - desc = "A digitally controlled valve." - icon_state = "dvalve0" - - attack_ai(mob/user as mob) - return src.attack_hand(user) - - attack_hand(mob/user as mob) - if(!src.allowed(user)) - to_chat(user, "Access denied.") - return - ..() - - //Radio remote control - - proc - set_frequency(new_frequency) - radio_controller.remove_object(src, frequency) - frequency = new_frequency - if(frequency) - radio_connection = radio_controller.add_object(src, frequency, RADIO_ATMOSIA) - - var/frequency = 0 - var/id = null - var/datum/radio_frequency/radio_connection - - Initialize() - ..() - if(frequency) - set_frequency(frequency) - - update_icon(animation) - var/turf/simulated/floor = loc - var/hide = istype(floor) ? floor.intact : 0 - level = 1 - for(var/obj/machinery/atmospherics/mains_pipe/node in nodes) - if(node.level == 2) - hide = 0 - level = 2 - break - - if(animation) - flick("[hide?"h":""]dvalve[src.open][!src.open]",src) - else - icon_state = "[hide?"h":""]dvalve[open]" - - receive_signal(datum/signal/signal) - if(!signal.data["tag"] || (signal.data["tag"] != id)) - return 0 - - switch(signal.data["command"]) - if("valve_open") - if(!open) - open() - - if("valve_close") - if(open) - close() - - if("valve_toggle") - if(open) - close() - else - open() -*/ +/obj/machinery/atmospherics/mains_pipe/cap/visible + level = 2 + icon_state = "cap" diff --git a/code/modules/events/hostile_migration_vr.dm b/code/modules/events/hostile_migration_vr.dm index 7c29b311a01..81f893a8a29 100644 --- a/code/modules/events/hostile_migration_vr.dm +++ b/code/modules/events/hostile_migration_vr.dm @@ -72,7 +72,7 @@ for(var/areapath in typesof(spawn_area_type)) var/area/A = locate(areapath) for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in A.contents) - if(!temp_vent.welded && temp_vent.network && temp_vent.loc.z in GLOB.using_map.station_levels) + if(!temp_vent.welded && temp_vent.network && (temp_vent.loc.z in GLOB.using_map.station_levels)) vents += temp_vent var/rats = /mob/living/simple_mob/animal/passive/mouse/rat diff --git a/code/modules/events/spider_infestation.dm b/code/modules/events/spider_infestation.dm index b2640f7390f..85558899ebe 100644 --- a/code/modules/events/spider_infestation.dm +++ b/code/modules/events/spider_infestation.dm @@ -17,7 +17,7 @@ /datum/event/spider_infestation/start() var/list/vents = list() for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in machines) - if(!temp_vent.welded && temp_vent.network && temp_vent.loc.z in GLOB.using_map.station_levels) + if(!temp_vent.welded && temp_vent.network && (temp_vent.loc.z in GLOB.using_map.station_levels)) if(temp_vent.network.normal_members.len > 50) vents += temp_vent diff --git a/code/modules/flufftext/Dreaming.dm b/code/modules/flufftext/Dreaming.dm index e4bbb006cf7..e5ffc523c4c 100644 --- a/code/modules/flufftext/Dreaming.dm +++ b/code/modules/flufftext/Dreaming.dm @@ -37,9 +37,9 @@ mob/living/carbon/proc/dream() sleep(rand(40,70)) if(paralysis <= 0) dreaming = 0 - return 0 + return dreaming = 0 - return 1 + return mob/living/carbon/proc/handle_dreams() if(client && !dreaming && prob(5)) diff --git a/code/modules/food/kitchen/icecream.dm b/code/modules/food/kitchen/icecream.dm index bc60e8b08b3..b0b3592d2f3 100644 --- a/code/modules/food/kitchen/icecream.dm +++ b/code/modules/food/kitchen/icecream.dm @@ -188,8 +188,8 @@ ice_creamed = 1 #undef ICECREAM_VANILLA -#undef FLAVOUR_CHOCOLATE -#undef FLAVOUR_STRAWBERRY -#undef FLAVOUR_BLUE +#undef ICECREAM_STRAWBERRY +#undef ICECREAM_CHOCOLATE +#undef ICECREAM_BLUE #undef CONE_WAFFLE -#undef CONE_CHOC \ No newline at end of file +#undef CONE_CHOC diff --git a/code/modules/gamemaster/actions/spider_infestation.dm b/code/modules/gamemaster/actions/spider_infestation.dm index 97b386e4bc0..3305fa82875 100644 --- a/code/modules/gamemaster/actions/spider_infestation.dm +++ b/code/modules/gamemaster/actions/spider_infestation.dm @@ -36,7 +36,7 @@ ..() var/list/vents = list() for(var/obj/machinery/atmospherics/unary/vent_pump/temp_vent in machines) - if(!temp_vent.welded && temp_vent.network && temp_vent.loc.z in GLOB.using_map.station_levels) + if(!temp_vent.welded && temp_vent.network && (temp_vent.loc.z in GLOB.using_map.station_levels)) if(temp_vent.network.normal_members.len > 50) vents += temp_vent diff --git a/code/modules/integrated_electronics/core/special_pins/dir_pin.dm b/code/modules/integrated_electronics/core/special_pins/dir_pin.dm index bbb00faa278..de952166db8 100644 --- a/code/modules/integrated_electronics/core/special_pins/dir_pin.dm +++ b/code/modules/integrated_electronics/core/special_pins/dir_pin.dm @@ -20,7 +20,7 @@ write_data_to_pin(new_data) /datum/integrated_io/dir/write_data_to_pin(var/new_data) - if(isnull(new_data) || new_data in alldirs + list(UP, DOWN)) + if(isnull(new_data) || (new_data in (alldirs + list(UP, DOWN)))) data = new_data holder.on_data_written() @@ -30,4 +30,4 @@ /datum/integrated_io/dir/display_data(var/input) if(!isnull(data)) return "([dir2text(data)])" - return ..() \ No newline at end of file + return ..() diff --git a/code/modules/maps/tg/map_template.dm b/code/modules/maps/tg/map_template.dm index b87a3c4233d..60164af9c2c 100644 --- a/code/modules/maps/tg/map_template.dm +++ b/code/modules/maps/tg/map_template.dm @@ -20,9 +20,10 @@ var/list/global/map_templates = list() var/loaded = 0 // Times loaded this round var/annihilate = FALSE // If true, all (movable) atoms at the location where the map is loaded will be deleted before the map is loaded in. - var/cost = null // The map generator has a set 'budget' it spends to place down different submaps. It will pick available submaps randomly until \ - it runs out. The cost of a submap should roughly corrispond with several factors such as size, loot, difficulty, desired scarcity, etc. \ - Set to -1 to force the submap to always be made. + /// The map generator has a set 'budget' it spends to place down different submaps. It will pick available submaps randomly until + /// it runs out. The cost of a submap should roughly corrispond with several factors such as size, loot, difficulty, desired scarcity, etc. + /// Set to -1 to force the submap to always be made. + var/cost = null var/allow_duplicates = FALSE // If false, only one map template will be spawned by the game. Doesn't affect admins spawning then manually. var/discard_prob = 0 // If non-zero, there is a chance that the map seeding algorithm will skip this template when selecting potential templates to use. @@ -233,7 +234,7 @@ var/list/global/map_templates = list() continue // Did we already place down a very similar submap? - if(chosen_template.template_group && chosen_template.template_group in template_groups_used) + if(chosen_template.template_group && (chosen_template.template_group in template_groups_used)) priority_submaps -= chosen_template potential_submaps -= chosen_template continue diff --git a/code/modules/maps/tg/reader.dm b/code/modules/maps/tg/reader.dm index 2ab4d83ff8d..9e0cce0b033 100644 --- a/code/modules/maps/tg/reader.dm +++ b/code/modules/maps/tg/reader.dm @@ -59,7 +59,7 @@ z_offset = world.maxz + 1 // If it's not a single dir, default to north (Default orientation) - if(!orientation in cardinal) + if(!(orientation in cardinal)) orientation = SOUTH var/list/bounds = list(1.#INF, 1.#INF, 1.#INF, -1.#INF, -1.#INF, -1.#INF) diff --git a/code/modules/mob/living/carbon/human/human_helpers.dm b/code/modules/mob/living/carbon/human/human_helpers.dm index d531f962fc9..2154bb1810d 100644 --- a/code/modules/mob/living/carbon/human/human_helpers.dm +++ b/code/modules/mob/living/carbon/human/human_helpers.dm @@ -170,8 +170,8 @@ //These things are allowed to add vision flags. //If you code some crazy item that goes on your feet that lets you see ghosts, you need to add a slot here. - var/tmp/list/slots = list(slot_glasses,slot_head) - var/tmp/list/compiled_vis = list() + var/list/slots = list(slot_glasses,slot_head) + var/list/compiled_vis = list() for(var/slot in slots) var/obj/item/clothing/O = get_equipped_item(slot) //Change this type if you move the vision stuff to item or something. @@ -194,12 +194,12 @@ if(!compiled_vis.len && !vis_enabled.len) return //Nothin' doin'. - var/tmp/list/oddities = vis_enabled ^ compiled_vis + var/list/oddities = vis_enabled ^ compiled_vis if(!oddities.len) return //Same thing in both lists! - var/tmp/list/to_enable = oddities - vis_enabled - var/tmp/list/to_disable = oddities - compiled_vis + var/list/to_enable = oddities - vis_enabled + var/list/to_disable = oddities - compiled_vis for(var/vis in to_enable) plane_holder.set_vis(vis,TRUE) diff --git a/code/modules/mob/living/carbon/human/species/shadekin/_defines.dm b/code/modules/mob/living/carbon/human/species/shadekin/_defines.dm index f24544e0b2d..a29640b2d7e 100644 --- a/code/modules/mob/living/carbon/human/species/shadekin/_defines.dm +++ b/code/modules/mob/living/carbon/human/species/shadekin/_defines.dm @@ -2,5 +2,12 @@ #define ONLY_WHILE_SHIFTED 2 #define SHIFTED_OR_NOT 3 +#define BLUE_EYES 1 +#define RED_EYES 2 +#define PURPLE_EYES 3 +#define YELLOW_EYES 4 +#define GREEN_EYES 5 +#define ORANGE_EYES 6 + #define AB_PHASE_SHIFTED 0x1 -#define AB_SHADE_REGEN 0x2 \ No newline at end of file +#define AB_SHADE_REGEN 0x2 diff --git a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm index 610841c5fac..4ee8006f1aa 100644 --- a/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm +++ b/code/modules/mob/living/silicon/robot/dogborg/dog_modules_vr.dm @@ -22,7 +22,7 @@ var/emagged = 0 /obj/item/dogborg/jaws/small/attack_self(mob/user) - var/mob/living/silicon/robot.R = user + var/mob/living/silicon/robot/R = user if(R.emagged || R.emag_items) emagged = !emagged if(emagged) @@ -188,7 +188,7 @@ to_chat(user, "[src] is dry.") /obj/item/dogborg/tongue/attack_self(mob/user) - var/mob/living/silicon/robot.R = user + var/mob/living/silicon/robot/R = user if(R.emagged || R.emag_items) emagged = !emagged if(emagged) @@ -223,7 +223,7 @@ to_chat(user, "You finish licking off \the [target.name].") water.use_charge(5) qdel(target) - var/mob/living/silicon/robot.R = user + var/mob/living/silicon/robot/R = user R.cell.charge += 50 else if(istype(target,/obj/item)) if(istype(target,/obj/item/trash)) @@ -232,7 +232,7 @@ user.visible_message("[user] finishes eating \the [target.name].", "You finish eating \the [target.name].") to_chat(user, "You finish off \the [target.name].") qdel(target) - var/mob/living/silicon/robot.R = user + var/mob/living/silicon/robot/R = user R.cell.charge += 250 water.use_charge(5) return @@ -241,7 +241,7 @@ if(do_after (user, 50)) user.visible_message("[user] finishes gulping down \the [target.name].", "You finish swallowing \the [target.name].") to_chat(user, "You finish off \the [target.name], and gain some charge!") - var/mob/living/silicon/robot.R = user + var/mob/living/silicon/robot/R = user var/obj/item/cell.C = target R.cell.charge += C.maxcharge / 3 water.use_charge(5) @@ -256,7 +256,7 @@ target.clean_blood() else if(ishuman(target)) if(src.emagged) - var/mob/living/silicon/robot.R = user + var/mob/living/silicon/robot/R = user var/mob/living/L = target if(R.cell.charge <= 666) return @@ -299,7 +299,7 @@ flags |= NOBLUDGEON /obj/item/pupscrubber/attack_self(mob/user) - var/mob/living/silicon/robot.R = user + var/mob/living/silicon/robot/R = user if(!enabled) R.scrubbing = TRUE enabled = TRUE diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station/medical.dm b/code/modules/mob/living/silicon/robot/robot_modules/station/medical.dm index accce221173..8e37abe2212 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station/medical.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station/medical.dm @@ -219,7 +219,7 @@ R.verbs |= /mob/living/proc/shred_limb R.verbs |= /mob/living/silicon/robot/proc/rest_style - if(R.client && R.client.ckey in list("nezuli")) + if(R.client && (R.client.ckey in list("nezuli"))) sprites += "Alina" sprites["Alina"] = "alina-med" ..() diff --git a/code/modules/mob/living/silicon/robot/robot_modules/station/security.dm b/code/modules/mob/living/silicon/robot/robot_modules/station/security.dm index f3e1f9bb2ee..34c1e1a65a5 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules/station/security.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules/station/security.dm @@ -126,7 +126,7 @@ R.verbs |= /mob/living/proc/shred_limb R.verbs |= /mob/living/silicon/robot/proc/rest_style - if(R.client && R.client.ckey in list("nezuli")) + if(R.client && (R.client.ckey in list("nezuli"))) sprites += "Alina" sprites["Alina"] = "alina-sec" diff --git a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm index 70d38322c62..4cef00a9584 100644 --- a/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm +++ b/code/modules/mob/living/simple_mob/subtypes/mechanical/hivebot/ranged_damage.dm @@ -81,7 +81,7 @@ // Close to mid-ranged shooter that arcs over other things, ideal if allies are in front of it. -// Difference from siege hivebots is that siege hivebots have limited charges for their attacks, are very long range, and \ +// Difference from siege hivebots is that siege hivebots have limited charges for their attacks, are very long range, and // the projectiles have an AoE component, where as backline hivebots do not. /mob/living/simple_mob/mechanical/hivebot/ranged_damage/backline name = "backline hivebot" diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/_defines.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/_defines.dm deleted file mode 100644 index 1567134c4df..00000000000 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/_defines.dm +++ /dev/null @@ -1,13 +0,0 @@ -#define NOT_WHILE_SHIFTED 1 -#define ONLY_WHILE_SHIFTED 2 -#define SHIFTED_OR_NOT 3 - -#define BLUE_EYES 1 -#define RED_EYES 2 -#define PURPLE_EYES 3 -#define YELLOW_EYES 4 -#define GREEN_EYES 5 -#define ORANGE_EYES 6 - -#define AB_PHASE_SHIFTED 0x1 -#define AB_SHADE_REGEN 0x2 \ No newline at end of file diff --git a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/~defines.dm b/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/~defines.dm deleted file mode 100644 index 28ce75c50b1..00000000000 --- a/code/modules/mob/living/simple_mob/subtypes/vore/shadekin/~defines.dm +++ /dev/null @@ -1,11 +0,0 @@ -#undef NOT_WHILE_SHIFTED -#undef ONLY_WHILE_SHIFTED -#undef SHIFTED_OR_NOT - -#undef BLUE_EYES -#undef RED_EYES -#undef PURPLE_EYES -#undef YELLOW_EYES - -#undef AB_PHASE_SHIFTED -#undef AB_SHADE_REGEN \ No newline at end of file diff --git a/code/modules/organs/internal/kidneys.dm b/code/modules/organs/internal/kidneys.dm index 2378c0fe99e..45f5e29ca71 100644 --- a/code/modules/organs/internal/kidneys.dm +++ b/code/modules/organs/internal/kidneys.dm @@ -10,7 +10,8 @@ /obj/item/organ/internal/kidneys/process() ..() - if(!owner) return + if(!owner) + return // Coffee is really bad for you with busted kidneys. // This should probably be expanded in some way, but fucked if I know diff --git a/code/modules/resleeving/computers.dm b/code/modules/resleeving/computers.dm index d44d28bcb18..9eadef6f8f3 100644 --- a/code/modules/resleeving/computers.dm +++ b/code/modules/resleeving/computers.dm @@ -408,4 +408,4 @@ icon_state = "harddisk" item_state = "card-id" w_class = ITEMSIZE_SMALL - var/datum/transhuman/mind_record/list/stored = list() + var/list/datum/transhuman/mind_record/list/stored = list() diff --git a/code/modules/spells/spell_code.dm b/code/modules/spells/spell_code.dm index 9c5aeeace07..4c050bbc84d 100644 --- a/code/modules/spells/spell_code.dm +++ b/code/modules/spells/spell_code.dm @@ -277,7 +277,7 @@ var/list/spells = typesof(/spell) //needed for the badmin verb for now if(level_max[Sp_TOTAL] <= ( spell_levels[Sp_SPEED] + spell_levels[Sp_POWER] )) //too many levels, can't do it return 0 - if(upgrade_type && upgrade_type in spell_levels && upgrade_type in level_max) + if(upgrade_type && (upgrade_type in spell_levels) && (upgrade_type in level_max)) if(spell_levels[upgrade_type] >= level_max[upgrade_type]) return 0 diff --git a/vorestation.dme b/vorestation.dme index 27edae7bf91..cb4d5c91fa7 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -2705,7 +2705,6 @@ #include "code\modules\mob\living\simple_mob\subtypes\vore\demon\demon_subtypes.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\demon\~defines.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\morph\morph.dm" -#include "code\modules\mob\living\simple_mob\subtypes\vore\shadekin\_defines.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\shadekin\ability_objects.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\shadekin\ability_procs.dm" #include "code\modules\mob\living\simple_mob\subtypes\vore\shadekin\shadekin.dm"