mirror of
https://github.com/minetest-mods/more_chests.git
synced 2024-09-27 14:50:30 +02:00
Method to generate two different formspec layouts, big and small
This commit is contained in:
parent
ab74b4a9ce
commit
8a57da4bba
38
utils/formspec.lua
Normal file
38
utils/formspec.lua
Normal file
|
@ -0,0 +1,38 @@
|
||||||
|
function generate(size)
|
||||||
|
if size == "small" then
|
||||||
|
cfg = {
|
||||||
|
window_width = 8,
|
||||||
|
window_height = 9,
|
||||||
|
chest_width = 8,
|
||||||
|
chest_height = 4,
|
||||||
|
}
|
||||||
|
elseif size == "big" then
|
||||||
|
cfg = {
|
||||||
|
window_width = 14,
|
||||||
|
window_height = 10,
|
||||||
|
chest_width = 14,
|
||||||
|
chest_height = 5,
|
||||||
|
}
|
||||||
|
end
|
||||||
|
-- calc padding to vertically align center the chest and the player's inventory
|
||||||
|
local player_inv_y_orig = cfg.chest_height + 0.85
|
||||||
|
local player_inv_x_orig = (cfg.window_width - 8) / 2 -- 8=player_inv_width
|
||||||
|
return "size[" ..
|
||||||
|
cfg.window_width .. "," .. cfg.window_height .. "]" ..
|
||||||
|
default.gui_bg ..
|
||||||
|
default.gui_bg_img ..
|
||||||
|
default.gui_slots ..
|
||||||
|
"list[current_name;main;0,0.3;" ..
|
||||||
|
cfg.chest_width .. "," .. cfg.chest_height .. ";]" ..
|
||||||
|
"list[current_player;main;" ..
|
||||||
|
player_inv_x_orig .. "," .. player_inv_y_orig ..
|
||||||
|
";8,1;]" ..
|
||||||
|
"list[current_player;main;" ..
|
||||||
|
player_inv_x_orig .. "," .. (player_inv_y_orig + 1.15) ..
|
||||||
|
";8,3;8]" ..
|
||||||
|
"listring[current_name;main]" ..
|
||||||
|
"listring[current_player;main]" ..
|
||||||
|
default.get_hotbar_bg(player_inv_x_orig, player_inv_y_orig)
|
||||||
|
end
|
||||||
|
|
||||||
|
return generate
|
Loading…
Reference in New Issue
Block a user