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)
|
||||
|
||||
local function get_fields(player, ...)
|
||||
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 function on_receive_fields(player, fields)
|
||||
local player_name = player:get_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)
|
||||
show_fs(player, player_name)
|
||||
|
||||
else for item in pairs(fields) do
|
||||
if item:find(":") then
|
||||
if item:sub(-4) == "_inv" then
|
||||
else
|
||||
local item
|
||||
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)
|
||||
end
|
||||
|
||||
local is_fuel = get_fueltime(item) > 0
|
||||
local recipes = get_recipes(item)
|
||||
|
||||
if progressive_mode then
|
||||
recipes = apply_progressive_filters(recipes, player)
|
||||
end
|
||||
@ -756,9 +753,8 @@ local function get_fields(player, ...)
|
||||
}
|
||||
end
|
||||
|
||||
if progressive_mode and next(data.usages) then
|
||||
data.usages =
|
||||
apply_progressive_filters(data.usages, player)
|
||||
if progressive_mode then
|
||||
data.usages = apply_progressive_filters(data.usages, player)
|
||||
end
|
||||
|
||||
if not next(data.usages) then
|
||||
@ -772,8 +768,6 @@ local function get_fields(player, ...)
|
||||
|
||||
show_fs(player, player_name)
|
||||
end
|
||||
end
|
||||
end
|
||||
end
|
||||
|
||||
if sfinv_only then
|
||||
@ -798,11 +792,15 @@ if sfinv_only then
|
||||
end,
|
||||
|
||||
on_player_receive_fields = function(self, player, context, fields)
|
||||
get_fields(player, fields)
|
||||
on_receive_fields(player, fields)
|
||||
end,
|
||||
})
|
||||
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 player_name = user:get_player_name()
|
||||
|
Reference in New Issue
Block a user