code tweak and tidy

This commit is contained in:
tenplus1 2020-08-26 09:56:28 +01:00
parent 8e6b2244a2
commit 72f7c161e0
2 changed files with 23 additions and 22 deletions

View File

@ -1,11 +1,13 @@
-- Load support for intllib. -- Load support for intllib.
local MP = minetest.get_modpath(minetest.get_current_modname()) local MP = minetest.get_modpath(minetest.get_current_modname())
local S, NS = dofile(MP .. "/intllib.lua") local S = minetest.get_translator and minetest.get_translator("inventory_plus") or
dofile(MP .. "/intllib.lua")
-- static spawn position -- static spawn position
local statspawn = minetest.string_to_pos(minetest.settings:get("static_spawnpoint")) local statspawn = minetest.string_to_pos(minetest.settings:get("static_spawnpoint"))
or {x = 0, y = 12, z = 0} or {x = 0, y = 12, z = 0}
local home_gui = {} local home_gui = {}
-- get_formspec -- get_formspec
@ -33,21 +35,26 @@ end
-- add inventory_plus page when player joins -- add inventory_plus page when player joins
minetest.register_on_joinplayer(function(player) minetest.register_on_joinplayer(function(player)
inventory_plus.register_button(player,"home_gui",S("Home Pos")) inventory_plus.register_button(player, "home_gui", S("Home Pos"))
end) end)
-- what to do when we press da buttons -- what to do when we press da buttons
minetest.register_on_player_receive_fields(function(player, formname, fields) minetest.register_on_player_receive_fields(function(player, formname, fields)
local privs = minetest.get_player_privs(player:get_player_name()).home local privs = minetest.get_player_privs(player:get_player_name()).home
if privs and fields.home_gui_set then if privs and fields.home_gui_set then
sethome.set( player:get_player_name(), player:get_pos() ) sethome.set(player:get_player_name(), player:get_pos())
end end
if privs and fields.home_gui_go then if privs and fields.home_gui_go then
sethome.go( player:get_player_name() ) sethome.go(player:get_player_name())
end end
if privs and fields.home_gui_spawn then if privs and fields.home_gui_spawn then
player:set_pos(statspawn) player:set_pos(statspawn)
end end
if fields.home_gui or fields.home_gui_set or fields.home_gui_go then if fields.home_gui or fields.home_gui_set or fields.home_gui_go then
inventory_plus.set_inventory_formspec(player, home_gui.get_formspec(player)) inventory_plus.set_inventory_formspec(player, home_gui.get_formspec(player))
end end

View File

@ -6,7 +6,7 @@ Copyright (c) 2012 cornernote, Brett O'Donnell <cornernote@gmail.com>
Source Code: https://github.com/cornernote/minetest-inventory_plus Source Code: https://github.com/cornernote/minetest-inventory_plus
License: BSD-3-Clause https://raw.github.com/cornernote/minetest-inventory_plus/master/LICENSE License: BSD-3-Clause https://raw.github.com/cornernote/minetest-inventory_plus/master/LICENSE
Edited by TenPlus1 (19th October 2016) Edited by TenPlus1 (26th August 2020)
]]-- ]]--
@ -59,7 +59,7 @@ inventory_plus.set_inventory_formspec = function(player, formspec)
end end
-- short pause before setting inventory -- short pause before setting inventory
minetest.after(0.01, function() minetest.after(0.02, function()
player:set_inventory_formspec(formspec) player:set_inventory_formspec(formspec)
end) end)
end end
@ -77,16 +77,10 @@ trashInv:set_size("main", 1)
-- get_formspec -- get_formspec
inventory_plus.get_formspec = function(player, page) inventory_plus.get_formspec = function(player, page)
if not player then if not player or not page then
return return
end end
-- creative page
if page == "creative" then
return player:get_inventory_formspec() .. addition
end
-- default inventory page -- default inventory page
local formspec = "size[8,7.5]" local formspec = "size[8,7.5]"
.. default.gui_bg .. default.gui_bg
@ -120,7 +114,7 @@ inventory_plus.get_formspec = function(player, page)
local num = 0 local num = 0
-- count buttons -- count buttons
for k, v in pairs( inventory_plus.buttons[name] ) do for k, v in pairs(inventory_plus.buttons[name]) do
num = num + 1 num = num + 1
end end
@ -129,7 +123,7 @@ inventory_plus.get_formspec = function(player, page)
local f = math.ceil(num / 4) local f = math.ceil(num / 4)
local y = (2.5 / 2) / f local y = (2.5 / 2) / f
for k, v in pairs( inventory_plus.buttons[name] ) do for k, v in pairs(inventory_plus.buttons[name]) do
formspec = formspec .. "button[" .. x .. "," formspec = formspec .. "button[" .. x .. ","
.. y .. ";2,0.5;" .. k .. ";" .. v .. "]" .. y .. ";2,0.5;" .. k .. ";" .. v .. "]"
@ -149,11 +143,11 @@ end
-- register_on_joinplayer -- register_on_joinplayer
minetest.register_on_joinplayer(function(player) minetest.register_on_joinplayer(function(player)
inventory_plus.register_button(player,"craft", S("Craft")) inventory_plus.register_button(player, "invplus_craft", S("Craft"))
if minetest.settings:get_bool("creative_mode") if minetest.settings:get_bool("creative_mode")
or minetest.check_player_privs(player:get_player_name(), {creative = true}) then or minetest.check_player_privs(player:get_player_name(), {creative = true}) then
inventory_plus.register_button(player, "creative_prev", S("Creative")) inventory_plus.register_button(player, "invplus_creative", S("Creative"))
end end
minetest.after(1, function() minetest.after(1, function()
@ -176,7 +170,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
end end
-- craft -- craft
if fields.craft then if fields.invplus_craft then
inventory_plus.set_inventory_formspec(player, inventory_plus.set_inventory_formspec(player,
inventory_plus.get_formspec(player, "craft")) inventory_plus.get_formspec(player, "craft"))
@ -188,10 +182,10 @@ minetest.register_on_player_receive_fields(function(player, formname, fields)
if fields.creative_prev if fields.creative_prev
or fields.creative_next then or fields.creative_next then
minetest.after(0.1, function() minetest.after(0.2, function()
inventory_plus.set_inventory_formspec(player, inventory_plus.set_inventory_formspec(player,
inventory_plus.get_formspec(player, "creative")) player:get_inventory_formspec() .. addition)
end) end)
return return
@ -211,11 +205,11 @@ end
if minetest.get_modpath("craftguide") then if minetest.get_modpath("craftguide") then
minetest.register_on_joinplayer(function(player) minetest.register_on_joinplayer(function(player)
inventory_plus.register_button(player, "craftguide", S("Craftguide")) inventory_plus.register_button(player, "invplus_craftguide", S("Craftguide"))
end) end)
minetest.register_on_player_receive_fields(function(player, formname, fields) minetest.register_on_player_receive_fields(function(player, formname, fields)
if fields.craftguide then if fields.invplus_craftguide then
inventory_plus.set_inventory_formspec(player, inventory_plus.set_inventory_formspec(player,
craftguide.show(player:get_player_name(), "default:wood", true)) craftguide.show(player:get_player_name(), "default:wood", true))
end end