diff --git a/init.lua b/init.lua index ef2143f..2215e5e 100644 --- a/init.lua +++ b/init.lua @@ -28,7 +28,6 @@ i3 = { max_waypoints = 30, min_fs_version = 4, item_btn_size = 1.1, - sprite_resolution = 256, drop_bag_on_die = true, save_interval = 600, -- Player data save interval (in seconds) diff --git a/src/caches.lua b/src/caches.lua index 409e86a..954893d 100644 --- a/src/caches.lua +++ b/src/caches.lua @@ -34,7 +34,7 @@ local function cache_groups(group, groups) local items = i3.groups[group].items if #items <= 1 then return end - local px, c, lim = i3.settings.sprite_resolution, 0, 10 + local px, lim, c = 64, 10, 0 local sprite = "[combine:WxH" for _, item in ipairs(items) do @@ -44,16 +44,10 @@ local function cache_groups(group, groups) if def.drawtype and is_cube(def.drawtype) then texture = get_cube(tiles) - elseif texture then - -- Buggy, it disforms the texture but can handle any sequence - texture = texture:gsub("%^", "\\^"):gsub(":", "\\:") .. "\\^[resize\\:146x146" - - --[[ Alternative, it scales a flat texture perfectly but does not - handle correctly mixed sequence like: inv cube -> flat texture -> inv cube ]] - -- px = 112 end if texture then + texture = texture:gsub("%^", "\\^"):gsub(":", "\\:") .. fmt("\\^[resize\\:%ux%u", px, px) sprite = sprite .. fmt(":0,%u=%s", c * px, texture) c++ if c == lim then break end diff --git a/src/gui.lua b/src/gui.lua index 297393f..6529ecb 100644 --- a/src/gui.lua +++ b/src/gui.lua @@ -1034,7 +1034,7 @@ local function get_grid_fs(fs, data, rcp, is_recipe) if group_cache and group_cache.sprite and not large_recipe then local sprite = ESC(group_cache.sprite) - local size = (i3.settings.sprite_resolution * 1.89) / 256 + local size = btn_size - 0.02 item_image_button(X, Y, btn_size, btn_size, "", btn_name, "") animated_image(X + 0.01, Y + 0.01, size, size, sprite, group_cache.count, 1500)