mirror of
https://github.com/minetest-mods/craftguide.git
synced 2025-07-06 18:10:31 +02:00
Rename and refactor get_fields
This commit is contained in:
44
init.lua
44
init.lua
@ -654,18 +654,7 @@ end
|
|||||||
|
|
||||||
mt.register_on_mods_loaded(get_init_items)
|
mt.register_on_mods_loaded(get_init_items)
|
||||||
|
|
||||||
local function get_fields(player, ...)
|
local function on_receive_fields(player, fields)
|
||||||
local args, formname, fields = {...}
|
|
||||||
if sfinv_only then
|
|
||||||
fields = args[1]
|
|
||||||
else
|
|
||||||
formname, fields = args[1], args[2]
|
|
||||||
end
|
|
||||||
|
|
||||||
if not sfinv_only and formname ~= "craftguide" then
|
|
||||||
return
|
|
||||||
end
|
|
||||||
|
|
||||||
local player_name = player:get_player_name()
|
local player_name = player:get_player_name()
|
||||||
local data = player_data[player_name]
|
local data = player_data[player_name]
|
||||||
|
|
||||||
@ -716,15 +705,23 @@ local function get_fields(player, ...)
|
|||||||
data.iX = data.iX - (fields.size_dec and 1 or -1)
|
data.iX = data.iX - (fields.size_dec and 1 or -1)
|
||||||
show_fs(player, player_name)
|
show_fs(player, player_name)
|
||||||
|
|
||||||
else for item in pairs(fields) do
|
else
|
||||||
if item:find(":") then
|
local item
|
||||||
if item:sub(-4) == "_inv" then
|
for field in pairs(fields) do
|
||||||
|
if field:find(":") then
|
||||||
|
item = field
|
||||||
|
break
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
if not item then
|
||||||
|
return
|
||||||
|
elseif item:sub(-4) == "_inv" then
|
||||||
item = item:sub(1,-5)
|
item = item:sub(1,-5)
|
||||||
end
|
end
|
||||||
|
|
||||||
local is_fuel = get_fueltime(item) > 0
|
local is_fuel = get_fueltime(item) > 0
|
||||||
local recipes = get_recipes(item)
|
local recipes = get_recipes(item)
|
||||||
|
|
||||||
if progressive_mode then
|
if progressive_mode then
|
||||||
recipes = apply_progressive_filters(recipes, player)
|
recipes = apply_progressive_filters(recipes, player)
|
||||||
end
|
end
|
||||||
@ -756,9 +753,8 @@ local function get_fields(player, ...)
|
|||||||
}
|
}
|
||||||
end
|
end
|
||||||
|
|
||||||
if progressive_mode and next(data.usages) then
|
if progressive_mode then
|
||||||
data.usages =
|
data.usages = apply_progressive_filters(data.usages, player)
|
||||||
apply_progressive_filters(data.usages, player)
|
|
||||||
end
|
end
|
||||||
|
|
||||||
if not next(data.usages) then
|
if not next(data.usages) then
|
||||||
@ -773,8 +769,6 @@ local function get_fields(player, ...)
|
|||||||
show_fs(player, player_name)
|
show_fs(player, player_name)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
|
||||||
end
|
|
||||||
|
|
||||||
if sfinv_only then
|
if sfinv_only then
|
||||||
sfinv.register_page("craftguide:craftguide", {
|
sfinv.register_page("craftguide:craftguide", {
|
||||||
@ -798,11 +792,15 @@ if sfinv_only then
|
|||||||
end,
|
end,
|
||||||
|
|
||||||
on_player_receive_fields = function(self, player, context, fields)
|
on_player_receive_fields = function(self, player, context, fields)
|
||||||
get_fields(player, fields)
|
on_receive_fields(player, fields)
|
||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
else
|
else
|
||||||
mt.register_on_player_receive_fields(get_fields)
|
mt.register_on_player_receive_fields(function(player, formname, fields)
|
||||||
|
if formname == "craftguide" then
|
||||||
|
on_receive_fields(player, fields)
|
||||||
|
end
|
||||||
|
end)
|
||||||
|
|
||||||
local function on_use(user)
|
local function on_use(user)
|
||||||
local player_name = user:get_player_name()
|
local player_name = user:get_player_name()
|
||||||
|
Reference in New Issue
Block a user