Disable useless main buttons

This commit is contained in:
Wuzzy 2016-11-06 02:28:45 +01:00
parent 5b9a53bf29
commit 8770b7df93
2 changed files with 37 additions and 8 deletions

View File

@ -107,6 +107,7 @@ function unified_inventory.get_formspec(player, page)
end end
if def.type == "image" then if def.type == "image" then
if (def.condition == nil or def.condition(player) == true) then
formspec[n] = "image_button[" formspec[n] = "image_button["
formspec[n+1] = ( ui_peruser.main_button_x + 0.65 * (i - 1) - button_col * 0.65 * 4) formspec[n+1] = ( ui_peruser.main_button_x + 0.65 * (i - 1) - button_col * 0.65 * 4)
formspec[n+2] = ","..(ui_peruser.main_button_y + button_row * 0.7)..";0.8,0.8;" formspec[n+2] = ","..(ui_peruser.main_button_y + button_row * 0.7)..";0.8,0.8;"
@ -115,6 +116,14 @@ function unified_inventory.get_formspec(player, page)
formspec[n+5] = "tooltip["..minetest.formspec_escape(def.name) formspec[n+5] = "tooltip["..minetest.formspec_escape(def.name)
formspec[n+6] = ";"..(def.tooltip or "").."]" formspec[n+6] = ";"..(def.tooltip or "").."]"
n = n+7 n = n+7
else
formspec[n] = "image["
formspec[n+1] = ( ui_peruser.main_button_x + 0.65 * (i - 1) - button_col * 0.65 * 4)
formspec[n+2] = ","..(ui_peruser.main_button_y + button_row * 0.7)..";0.8,0.8;"
formspec[n+3] = minetest.formspec_escape(def.image).."^[colorize:#808080:alpha]"
n = n+4
end
end end
end end

View File

@ -59,8 +59,12 @@ unified_inventory.register_button("home_gui_set", {
else else
minetest.chat_send_player(player_name, minetest.chat_send_player(player_name,
S("You don't have the \"home\" privilege!")) S("You don't have the \"home\" privilege!"))
unified_inventory.set_inventory_formspec(player, unified_inventory.current_page[player_name])
end end
end, end,
condition = function(player)
return minetest.check_player_privs(player:get_player_name(), {home=true})
end,
}) })
unified_inventory.register_button("home_gui_go", { unified_inventory.register_button("home_gui_go", {
@ -77,8 +81,12 @@ unified_inventory.register_button("home_gui_go", {
else else
minetest.chat_send_player(player_name, minetest.chat_send_player(player_name,
S("You don't have the \"home\" privilege!")) S("You don't have the \"home\" privilege!"))
unified_inventory.set_inventory_formspec(player, unified_inventory.current_page[player_name])
end end
end, end,
condition = function(player)
return minetest.check_player_privs(player:get_player_name(), {home=true})
end,
}) })
unified_inventory.register_button("misc_set_day", { unified_inventory.register_button("misc_set_day", {
@ -97,8 +105,12 @@ unified_inventory.register_button("misc_set_day", {
else else
minetest.chat_send_player(player_name, minetest.chat_send_player(player_name,
S("You don't have the settime privilege!")) S("You don't have the settime privilege!"))
unified_inventory.set_inventory_formspec(player, unified_inventory.current_page[player_name])
end end
end, end,
condition = function(player)
return minetest.check_player_privs(player:get_player_name(), {settime=true})
end,
}) })
unified_inventory.register_button("misc_set_night", { unified_inventory.register_button("misc_set_night", {
@ -117,8 +129,12 @@ unified_inventory.register_button("misc_set_night", {
else else
minetest.chat_send_player(player_name, minetest.chat_send_player(player_name,
S("You don't have the settime privilege!")) S("You don't have the settime privilege!"))
unified_inventory.set_inventory_formspec(player, unified_inventory.current_page[player_name])
end end
end, end,
condition = function(player)
return minetest.check_player_privs(player:get_player_name(), {settime=true})
end,
}) })
unified_inventory.register_button("clear_inv", { unified_inventory.register_button("clear_inv", {
@ -133,6 +149,7 @@ unified_inventory.register_button("clear_inv", {
.." of creative mode to prevent" .." of creative mode to prevent"
.." accidental inventory trashing." .." accidental inventory trashing."
.."\nUse the trash slot instead.")) .."\nUse the trash slot instead."))
unified_inventory.set_inventory_formspec(player, unified_inventory.current_page[player_name])
return return
end end
player:get_inventory():set_list("main", {}) player:get_inventory():set_list("main", {})
@ -140,6 +157,9 @@ unified_inventory.register_button("clear_inv", {
minetest.sound_play("trash_all", minetest.sound_play("trash_all",
{to_player=player_name, gain = 1.0}) {to_player=player_name, gain = 1.0})
end, end,
condition = function(player)
return unified_inventory.is_creative(player:get_player_name())
end,
}) })
unified_inventory.register_page("craft", { unified_inventory.register_page("craft", {