split the hotbar code into its own mod, added a 23-slot mode

This commit is contained in:
Vanessa Dannenberg 2018-09-23 19:55:27 -04:00
parent dfb194996d
commit f7874dbfd9
6 changed files with 32 additions and 29 deletions

View File

@ -1,34 +1,7 @@
-- This mod contains a number of features specific to dreambuilder
-- such as mesh-based apples, 16-slot hotbar, some color settings, etc.
-- such as mesh-based apples, some color settings, etc.
--
-- by Vanessa Ezekowitz
local hotbar_size = minetest.setting_get("hotbar_size") or 16
local function resize_hotbar(size)
if size > 8 then return "gui_hb_bg_16.png" end
return "gui_hb_bg.png"
end
minetest.register_on_joinplayer(function(player)
player:hud_set_hotbar_itemcount(hotbar_size)
minetest.after(0.5,function()
player:hud_set_hotbar_selected_image("gui_hotbar_selected.png")
player:hud_set_hotbar_image(resize_hotbar(hotbar_size))
end)
end)
minetest.register_chatcommand("hotbar", {
params = "[size]",
description = "Sets the size of your hotbar",
func = function(name, slots)
if slots ~= "8" then slots = "16" end
local player = minetest.get_player_by_name(name)
player:hud_set_hotbar_itemcount(tonumber(slots))
minetest.chat_send_player(name, "[_] Hotbar size set to " .. tonumber(slots) .. ".")
player:hud_set_hotbar_image(resize_hotbar(tonumber(slots)))
end,
})
-- by Vanessa Dannenberg
default.gui_bg = "bgcolor[#08080899;false]"

1
hotbar/depends.txt Normal file
View File

@ -0,0 +1 @@
default

29
hotbar/init.lua Normal file
View File

@ -0,0 +1,29 @@
local hotbar_size = minetest.setting_get("hotbar_size") or 16
local function resize_hotbar(size)
if size == 8 then return "gui_hb_bg.png" end
if size == 23 then return "gui_hb_bg_23.png" end
return "gui_hb_bg_16.png"
end
minetest.register_on_joinplayer(function(player)
player:hud_set_hotbar_itemcount(hotbar_size)
minetest.after(0.5,function()
player:hud_set_hotbar_selected_image("gui_hotbar_selected.png")
player:hud_set_hotbar_image(resize_hotbar(hotbar_size))
end)
end)
minetest.register_chatcommand("hotbar", {
params = "[size]",
description = "Sets the size of your hotbar",
func = function(name, slots)
if slots ~= "8" and slots ~= "23" then slots = "16" end
local player = minetest.get_player_by_name(name)
player:hud_set_hotbar_itemcount(tonumber(slots))
minetest.chat_send_player(name, "[_] Hotbar size set to " .. tonumber(slots) .. ".")
player:hud_set_hotbar_image(resize_hotbar(tonumber(slots)))
end,
})

Binary file not shown.

After

Width:  |  Height:  |  Size: 474 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 764 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 971 B