From 0da9c966f01c6c1c6847059b776df1f060f542a3 Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Thu, 21 May 2015 19:33:54 -0400 Subject: [PATCH 1/3] More Linda Fixes --- code/__HELPERS/unsorted.dm | 2 ++ code/game/machinery/cryo.dm | 2 +- code/game/objects/effects/aliens.dm | 1 + .../objects/items/weapons/tanks/watertank.dm | 18 ++++++------------ code/game/objects/structures/mineral_doors.dm | 4 ++-- code/game/objects/structures/window.dm | 4 ++-- code/game/turfs/turf.dm | 8 ++++---- code/modules/assembly/bomb.dm | 4 ++-- code/modules/recycling/disposal.dm | 4 +++- 9 files changed, 23 insertions(+), 24 deletions(-) diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm index ce9341eff58..f3e067984a8 100644 --- a/code/__HELPERS/unsorted.dm +++ b/code/__HELPERS/unsorted.dm @@ -1034,11 +1034,13 @@ proc/anim(turf/location as turf,target as mob|obj,a_icon,a_icon_state as text,fl if(toupdate.len) for(var/turf/simulated/T1 in toupdate) + air_master.remove_from_active(T1) T1.CalculateAdjacentTurfs() air_master.add_to_active(T1,1) if(fromupdate.len) for(var/turf/simulated/T2 in fromupdate) + air_master.remove_from_active(T2) T2.CalculateAdjacentTurfs() air_master.add_to_active(T2,1) diff --git a/code/game/machinery/cryo.dm b/code/game/machinery/cryo.dm index ec0a06f969c..39bd4ee6447 100644 --- a/code/game/machinery/cryo.dm +++ b/code/game/machinery/cryo.dm @@ -399,7 +399,7 @@ expel_gas = air_contents.remove(remove_amount) expel_gas.temperature = T20C // Lets expel hot gas and see if that helps people not die as they are removed loc.assume_air(expel_gas) - air_update_turf(1) + air_update_turf() /obj/machinery/atmospherics/unary/cryo_cell/proc/go_out() if(!( occupant )) diff --git a/code/game/objects/effects/aliens.dm b/code/game/objects/effects/aliens.dm index 98c3fa337a5..82886f9f7c5 100644 --- a/code/game/objects/effects/aliens.dm +++ b/code/game/objects/effects/aliens.dm @@ -28,6 +28,7 @@ /obj/structure/alien/resin/New(location) relativewall_neighbours() ..() + air_update_turf(1) return /obj/structure/alien/resin/Destroy() diff --git a/code/game/objects/items/weapons/tanks/watertank.dm b/code/game/objects/items/weapons/tanks/watertank.dm index afbfd61a95c..149ef830713 100644 --- a/code/game/objects/items/weapons/tanks/watertank.dm +++ b/code/game/objects/items/weapons/tanks/watertank.dm @@ -356,18 +356,12 @@ var/datum/gas_mixture/G = T.air if(get_dist(T, src) < 2) // Otherwise we'll get silliness like people using Nanofrost to kill people through walls with cold air G.temperature = 2 - air_update_turf() - var/hotspot = (locate(/obj/effect/hotspot) in T) - if(hotspot && !istype(T, /turf/space)) - var/CT = 10 - var/datum/gas_mixture/lowertemp = T.remove_air( T:air:total_moles() ) - lowertemp.temperature = max( min(lowertemp.temperature-(CT*1000),lowertemp.temperature / CT) ,0) - lowertemp.react() - T.assume_air(lowertemp) - qdel(hotspot) - if(G.toxins) - G.nitrogen += (G.toxins) - G.toxins = 0 + T.air_update_turf() + for(var/obj/effect/hotspot/H in T) + H.Kill() + if(G.toxins) + G.nitrogen += (G.toxins) + G.toxins = 0 for(var/obj/machinery/atmospherics/unary/vent_pump/V in T) V.welded = 1 V.update_icon() diff --git a/code/game/objects/structures/mineral_doors.dm b/code/game/objects/structures/mineral_doors.dm index fe66664c0bd..56e589ea1ae 100644 --- a/code/game/objects/structures/mineral_doors.dm +++ b/code/game/objects/structures/mineral_doors.dm @@ -90,7 +90,7 @@ state = 1 update_icon() isSwitchingStates = 0 - air_update_turf() + air_update_turf(1) proc/Close() isSwitchingStates = 1 @@ -102,7 +102,7 @@ state = 0 update_icon() isSwitchingStates = 0 - air_update_turf() + air_update_turf(1) update_icon() if(state) diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index cee422463e3..0ff0b69658e 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -403,7 +403,7 @@ var/global/wcColored /obj/structure/window/plasmabasic/New(Loc,re=0) ..() ini_dir = dir - air_update_turf() + air_update_turf(1) update_nearby_icons() return @@ -434,7 +434,7 @@ var/global/wcColored /obj/structure/window/plasmareinforced/New(Loc,re=0) ..() ini_dir = dir - air_update_turf() + air_update_turf(1) update_nearby_icons() return diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index c7e6aed197c..d781d263d6e 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -244,10 +244,6 @@ for(var/turf/space/S in range(W,1)) S.update_starlight() - W.levelupdate() - W.air_update_turf(1) - . = W - affecting_lights = old_affecting_lights if((old_opacity != opacity) || (dynamic_lighting != old_dynamic_lighting)) reconsider_lights() @@ -257,6 +253,10 @@ else lighting_clear_overlays() + W.levelupdate() + W.CalculateAdjacentTurfs() + return W + //////Assimilate Air////// /turf/simulated/proc/Assimilate_Air() if(air) diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index 48acf97242f..62dd0c0690e 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -158,8 +158,8 @@ air_update_turf() if(master) - del(master) - del(src) + qdel(master) + qdel(src) /obj/item/weapon/tank/proc/release() //This happens when the bomb is not welded. Tank contents are just spat out. var/datum/gas_mixture/removed = air_contents.remove(air_contents.total_moles()) diff --git a/code/modules/recycling/disposal.dm b/code/modules/recycling/disposal.dm index 5bc8b20a6bb..efa6d2fec2a 100644 --- a/code/modules/recycling/disposal.dm +++ b/code/modules/recycling/disposal.dm @@ -642,7 +642,9 @@ // called to vent all gas in holder to a location proc/vent_gas(var/atom/location) - location.assume_air(gas) // vent all gas to turf + if(location) + location.assume_air(gas) // vent all gas to turf + air_update_turf() return // Disposal pipes From f51c900a5e978dc47d4629b035dcf9deebedbdad Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Fri, 22 May 2015 16:42:49 -0400 Subject: [PATCH 2/3] derp --- code/game/turfs/turf.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/turfs/turf.dm b/code/game/turfs/turf.dm index d781d263d6e..1f6578f56dd 100644 --- a/code/game/turfs/turf.dm +++ b/code/game/turfs/turf.dm @@ -254,7 +254,7 @@ lighting_clear_overlays() W.levelupdate() - W.CalculateAdjacentTurfs() + W.air_update_turf(1) return W //////Assimilate Air////// From db442b44863a823b0b7f9d1a3e8c4aa1c29db28a Mon Sep 17 00:00:00 2001 From: Fox-McCloud Date: Fri, 22 May 2015 16:55:41 -0400 Subject: [PATCH 3/3] RCD Fix --- code/game/objects/items/weapons/RCD.dm | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index 3ad8dd7a509..f6c7e99a05c 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -95,7 +95,7 @@ RCD if(useResource(1, user)) user << "Building Floor..." activate() - A:ChangeTurf(/turf/simulated/floor/plating/airless) + A:ChangeTurf(/turf/simulated/floor/plating) return 1 return 0 @@ -134,7 +134,7 @@ RCD if(do_after(user, 40)) if(!useResource(5, user)) return 0 activate() - A:ChangeTurf(/turf/simulated/floor/plating/airless) + A:ChangeTurf(/turf/simulated/floor/plating) return 1 return 0