diff --git a/code/game/objects/items/stacks/sheets/sheet_types.dm b/code/game/objects/items/stacks/sheets/sheet_types.dm index 1bf2557ab69..d0b83b09f01 100644 --- a/code/game/objects/items/stacks/sheets/sheet_types.dm +++ b/code/game/objects/items/stacks/sheets/sheet_types.dm @@ -514,6 +514,7 @@ GLOBAL_LIST_INIT(brass_recipes, list ( throw_range = 3 turf_type = /turf/simulated/floor/clockwork table_type = /obj/structure/table/reinforced/brass + dynamic_icon_state = TRUE /obj/item/stack/tile/brass/narsie_act() new /obj/item/stack/sheet/runed_metal(loc, amount) diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index 4c90397ecc1..41f546f3e66 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -55,11 +55,12 @@ . = ..() if(!dynamic_icon_state) return - var/temp_amount = get_amount() - if(temp_amount > 1) - icon_state = "[initial(icon_state)]_[min(temp_amount, 3)]" //2 if amount is 2, 3 if more. + var/state = CEILING((amount/max_amount) * 3, 1) + if(state <= 1) + icon_state = initial(icon_state) return - icon_state = initial(icon_state) + + icon_state = "[initial(icon_state)]_[state]" /obj/item/stack/Crossed(obj/O, oldloc) if(amount >= max_amount || ismob(loc)) // Prevents unnecessary call. Also prevents merging stack automatically in a mob's inventory