diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index a9b3d5bd8c..2dc99a5a59 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -31,17 +31,6 @@ var/list/dent_decals - var/static/list/dent_decal_list = list( - WALL_DENT_HIT = list( - mutable_appearance('icons/effects/effects.dmi', "impact1", BULLET_HOLE_LAYER), - mutable_appearance('icons/effects/effects.dmi', "impact2", BULLET_HOLE_LAYER), - mutable_appearance('icons/effects/effects.dmi', "impact3", BULLET_HOLE_LAYER) - ), - WALL_DENT_SHOT = list( - mutable_appearance('icons/effects/effects.dmi', "bullet_hole", BULLET_HOLE_LAYER) - ) - ) - /turf/closed/wall/examine(mob/user) ..() deconstruction_hints(user) @@ -199,11 +188,11 @@ return FALSE to_chat(user, "You begin fixing dents on the wall...") - if(W.use_tool(src, user, slicing_duration, volume=100)) + if(W.use_tool(src, user, 0, volume=100)) if(iswallturf(src) && LAZYLEN(dent_decals)) to_chat(user, "You fix some dents on the wall.") cut_overlay(dent_decals) - LAZYCLEARLIST(dent_decals) + dent_decals.Cut() return TRUE return FALSE @@ -302,12 +291,22 @@ if(LAZYLEN(dent_decals) >= MAX_DENT_DECALS) return - var/mutable_appearance/decal = pick(dent_decal_list[denttype]) + var/mutable_appearance/decal = mutable_appearance('icons/effects/effects.dmi', "", BULLET_HOLE_LAYER) + switch(denttype) + if(WALL_DENT_SHOT) + decal.icon_state = "bullet_hole" + if(WALL_DENT_HIT) + decal.icon_state = "impact[rand(1, 3)]" + decal.pixel_x = x decal.pixel_y = y - cut_overlay(dent_decals) - LAZYADD(dent_decals, decal) + if(LAZYLEN(dent_decals)) + cut_overlay(dent_decals) + dent_decals += decal + else + dent_decals = list(decal) + add_overlay(dent_decals) #undef MAX_DENT_DECALS