use just one register_on_player_receive_fields function - that also returns properly true instead of nil as before

This commit is contained in:
Sokomine 2021-05-16 22:00:52 +02:00
parent 8a685dc211
commit ff6a3faca4

View File

@ -1696,8 +1696,32 @@ end
-- options
minetest.register_on_player_receive_fields(
function(player, formname, fields)
-- route player input to the right functions;
-- return true when the right function has been found
minetest.register_on_player_receive_fields( function(player, formname, fields)
if formname == "yl_speak_up:optiondialog" then
yl_speak_up.input_optiondialog(player, formname, fields)
return true
elseif formname == "yl_speak_up:setdialog" then
yl_speak_up.input_setdialog(player, formname, fields)
return true
elseif formname == "yl_speak_up:confirm_save" then
yl_speak_up.input_confirm_save(player, formname, fields)
return true
elseif formname == "yl_speak_up:edit_option_dialog" then
yl_speak_up.input_edit_option_dialog(player, formname, fields)
return true
elseif formname == "yl_speak_up:talk" then
yl_speak_up.input_talk(player, formname, fields)
return true
elseif formname == "yl_speak_up:fashion" then
yl_speak_up.input_fashion(player, formname, fields)
return true
end
end)
yl_speak_up.input_optiondialog = function(player, formname, fields)
if formname ~= "yl_speak_up:optiondialog" then
return
end
@ -1855,13 +1879,11 @@ minetest.register_on_player_receive_fields(
"yl_speak_up:optiondialog",
get_fs_optiondialog(player, n_id, d_id, o_id, p_id, r_id)
)
end
)
end
-- dialog
minetest.register_on_player_receive_fields(
function(player, formname, fields)
yl_speak_up.input_setdialog = function(player, formname, fields)
if formname ~= "yl_speak_up:setdialog" then
return
end
@ -1952,8 +1974,7 @@ minetest.register_on_player_receive_fields(
yl_speak_up.speak_to[pname].d_id = fields.d_id
minetest.show_formspec(pname, "yl_speak_up:setdialog", get_fs_setdialog(player, n_id, fields.d_id))
end
end
)
end
-- talk
@ -2491,19 +2512,16 @@ end
-- end of yl_speak_up.edit_mode_apply_changes
minetest.register_on_player_receive_fields(
function(player, formname, fields)
yl_speak_up.input_confirm_save = function(player, formname, fields)
if formname ~= "yl_speak_up:confirm_save" then
return
end
yl_speak_up.save_changes_and_switch_to_other_dialog(player, fields, fields.goto_target_dialog)
end
)
end
-- process input from formspec created in get_fs_edit_option_dialog(..)
minetest.register_on_player_receive_fields(
function(player, formname, fields)
yl_speak_up.input_edit_option_dialog = function(player, formname, fields)
if formname ~= "yl_speak_up:edit_option_dialog" then
return
end
@ -2580,8 +2598,7 @@ minetest.register_on_player_receive_fields(
-- if ESC is pressed or anything else unpredicted happens: go back to the main dialog edit window
-- reason: don't loose any unsaved changes to the dialog
minetest.show_formspec(pname, "yl_speak_up:talk", get_fs_talkdialog(player, n_id, d_id))
end
)
end
-- identify multiple results that lead to target dialogs
@ -2621,8 +2638,7 @@ yl_speak_up.check_for_disambigous_results = function(n_id, pname)
end
minetest.register_on_player_receive_fields(
function(player, formname, fields)
yl_speak_up.input_talk = function(player, formname, fields)
if formname ~= "yl_speak_up:talk" then
return
end
@ -3010,8 +3026,7 @@ minetest.register_on_player_receive_fields(
end
end
end
end
)
end
-- Make the NPC talk
@ -3417,8 +3432,7 @@ yl_speak_up.get_fs_fashion = function(pname)
return table.concat(formspec, "")
end
minetest.register_on_player_receive_fields( --fashion
function(player, formname, fields)
yl_speak_up.input_fashion = function(player, formname, fields)
if formname ~= "yl_speak_up:fashion" then
return
end
@ -3495,8 +3509,7 @@ minetest.register_on_player_receive_fields( --fashion
end
minetest.show_formspec(pname, "yl_speak_up:fashion", yl_speak_up.get_fs_fashion(pname))
end
)
end
function yl_speak_up.fashion(player, obj)
local luaentity = obj:get_luaentity()