From 89b8ed7c4e801203488fe74e55026dcf26ba0161 Mon Sep 17 00:00:00 2001 From: Atermonera Date: Wed, 23 Dec 2020 12:42:36 -0900 Subject: [PATCH 1/2] Fixes indoor-use snow not having footprints (#7795) --- code/game/turfs/flooring/flooring_premade.dm | 32 +++++++++----------- 1 file changed, 14 insertions(+), 18 deletions(-) diff --git a/code/game/turfs/flooring/flooring_premade.dm b/code/game/turfs/flooring/flooring_premade.dm index f885e111269..d8e4d954ae5 100644 --- a/code/game/turfs/flooring/flooring_premade.dm +++ b/code/game/turfs/flooring/flooring_premade.dm @@ -425,24 +425,20 @@ #define FOOTSTEP_SPRITE_AMT 2 -/turf/snow/Entered(atom/A) - if(isliving(A)) - var/mdir = "[A.dir]" - if(crossed_dirs[mdir]) - crossed_dirs[mdir] = min(crossed_dirs[mdir] + 1, FOOTSTEP_SPRITE_AMT) - else - crossed_dirs[mdir] = 1 +// TODO: Move foortprints to a datum-component signal so they can actually be applied to other turf types, like sand, or mud +/turf/simulated/floor/snow/Entered(atom/A) + if(isliving(A)) + var/mob/living/L = A + if(L.hovering) // Flying things shouldn't make footprints. + return ..() + var/mdir = "[A.dir]" + crossed_dirs[mdir] = 1 + update_icon() + . = ..() - update_icon() - - . = ..() - -/turf/snow/update_icon() - cut_overlays() - for(var/d in crossed_dirs) - var/amt = crossed_dirs[d] - - for(var/i in 1 to amt) - add_overlay(image(icon, "footprint[i]", text2num(d))) +/turf/simulated/floor/snow/update_icon() + ..() + for(var/d in crossed_dirs) + add_overlay(image(icon = 'icons/turf/outdoors.dmi', icon_state = "snow_footprints", dir = text2num(d))) //**** Here ends snow ****