mirror of
https://github.com/minetest-mods/i3.git
synced 2024-12-24 18:00:38 +01:00
Remove the bullshit and fix the sprite once and for all
This commit is contained in:
parent
32779ab56f
commit
6dd95a6a87
1
init.lua
1
init.lua
@ -28,7 +28,6 @@ i3 = {
|
|||||||
max_waypoints = 30,
|
max_waypoints = 30,
|
||||||
min_fs_version = 4,
|
min_fs_version = 4,
|
||||||
item_btn_size = 1.1,
|
item_btn_size = 1.1,
|
||||||
sprite_resolution = 256,
|
|
||||||
drop_bag_on_die = true,
|
drop_bag_on_die = true,
|
||||||
save_interval = 600, -- Player data save interval (in seconds)
|
save_interval = 600, -- Player data save interval (in seconds)
|
||||||
|
|
||||||
|
@ -34,7 +34,7 @@ local function cache_groups(group, groups)
|
|||||||
local items = i3.groups[group].items
|
local items = i3.groups[group].items
|
||||||
if #items <= 1 then return end
|
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"
|
local sprite = "[combine:WxH"
|
||||||
|
|
||||||
for _, item in ipairs(items) do
|
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
|
if def.drawtype and is_cube(def.drawtype) then
|
||||||
texture = get_cube(tiles)
|
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
|
end
|
||||||
|
|
||||||
if texture then
|
if texture then
|
||||||
|
texture = texture:gsub("%^", "\\^"):gsub(":", "\\:") .. fmt("\\^[resize\\:%ux%u", px, px)
|
||||||
sprite = sprite .. fmt(":0,%u=%s", c * px, texture)
|
sprite = sprite .. fmt(":0,%u=%s", c * px, texture)
|
||||||
c++
|
c++
|
||||||
if c == lim then break end
|
if c == lim then break end
|
||||||
|
@ -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
|
if group_cache and group_cache.sprite and not large_recipe then
|
||||||
local sprite = ESC(group_cache.sprite)
|
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, "")
|
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)
|
animated_image(X + 0.01, Y + 0.01, size, size, sprite, group_cache.count, 1500)
|
||||||
|
Loading…
Reference in New Issue
Block a user