diff --git a/functions.lua b/functions.lua index 9827051..3dd8421 100644 --- a/functions.lua +++ b/functions.lua @@ -32,21 +32,24 @@ function yl_speak_up.init_mob_table() end -yl_speak_up.reset_vars_for_player = function(pname) +yl_speak_up.reset_vars_for_player = function(pname, reset_fs_version) yl_speak_up.speak_to[pname] = nil yl_speak_up.edit_mode[pname] = nil - yl_speak_up.fs_version[pname] = nil + -- when just stopping editing: don't reset the fs_version + if(reset_fs_version) then + yl_speak_up.fs_version[pname] = nil + end end minetest.register_on_leaveplayer( function(player) - yl_speak_up.reset_vars_for_player(player:get_player_name()) + yl_speak_up.reset_vars_for_player(player:get_player_name(), true) end ) minetest.register_on_joinplayer( function(player) - yl_speak_up.reset_vars_for_player(player:get_player_name()) + yl_speak_up.reset_vars_for_player(player:get_player_name(), true) end ) diff --git a/show_fs.lua b/show_fs.lua index 4ea7296..7ce498a 100644 --- a/show_fs.lua +++ b/show_fs.lua @@ -123,8 +123,7 @@ yl_speak_up.show_fs = function(player, fs_name, param) yl_speak_up.speak_to[pname].last_fs = fs_name yl_speak_up.speak_to[pname].last_fs_param = param if(not(fs_name) or fs_name == "quit") then - yl_speak_up.speak_to[pname] = nil - yl_speak_up.edit_mode[pname] = nil + yl_speak_up.reset_vars_for_player(pname, false) return end