From d0701c40884d73517f0234dedbf7ffea92875e58 Mon Sep 17 00:00:00 2001 From: xxalpha Date: Mon, 31 Aug 2015 15:49:26 +0100 Subject: [PATCH] Tweaked foam spread logic, foam layer. Better Changelog PERFORMANCE get_turf(loc) is still superior --- .../objects/effects/effect_system/effects_foam.dm | 12 +++--------- html/changelogs/xxalpha-PLmD_69pXpk.yml | 7 +++++++ 2 files changed, 10 insertions(+), 9 deletions(-) create mode 100644 html/changelogs/xxalpha-PLmD_69pXpk.yml diff --git a/code/game/objects/effects/effect_system/effects_foam.dm b/code/game/objects/effects/effect_system/effects_foam.dm index a3a305541c7..b9cb14220b8 100644 --- a/code/game/objects/effects/effect_system/effects_foam.dm +++ b/code/game/objects/effects/effect_system/effects_foam.dm @@ -7,7 +7,7 @@ opacity = 0 anchored = 1 density = 0 - layer = OBJ_LAYER + 0.05 //above table, below windoor/airlock/foamed metal. + layer = OBJ_LAYER - 0.5 //above table, below windoor/airlock/foamed metal. mouse_opacity = 0 var/amount = 3 animate_movement = 0 @@ -91,14 +91,8 @@ /obj/effect/effect/foam/proc/spread_foam() - for(var/direction in cardinal) - var/turf/T = get_step(src,direction) - if(!T) - continue - - if(!T.Enter(src)) - continue - + var/turf/t_loc = get_turf(src) + for(var/turf/T in t_loc.GetAtmosAdjacentTurfs()) var/obj/effect/effect/foam/foundfoam = locate() in T //Don't spread foam where there's already foam! if(foundfoam) continue diff --git a/html/changelogs/xxalpha-PLmD_69pXpk.yml b/html/changelogs/xxalpha-PLmD_69pXpk.yml new file mode 100644 index 00000000000..0d6252a37aa --- /dev/null +++ b/html/changelogs/xxalpha-PLmD_69pXpk.yml @@ -0,0 +1,7 @@ +author: xxalpha + +delete-after: True + +changes: + - tweak: "Changed foam spreading to be like gas spreading." +