From a5768efbc066d8040164825e72ec71b0a84b889b Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Thu, 5 Apr 2018 17:24:42 +0100 Subject: [PATCH] Fix awards disabling Fixes #33 --- chat_commands.lua | 11 +++++++++-- gui.lua | 6 +++++- 2 files changed, 14 insertions(+), 3 deletions(-) diff --git a/chat_commands.lua b/chat_commands.lua index bf7a3b9..7286354 100644 --- a/chat_commands.lua +++ b/chat_commands.lua @@ -12,15 +12,22 @@ minetest.register_chatcommand("awards", { S("All your awards and statistics have been cleared. You can now start again.")) elseif param == "disable" then awards.disable(name) - minetest.chat_send_player(name, S("You have disabled your achievements.")) + minetest.chat_send_player(name, S("You have disabled achievements.")) elseif param == "enable" then awards.enable(name) - minetest.chat_send_player(name, S("You have enabled your achievements.")) + minetest.chat_send_player(name, S("You have enabled achievements.")) elseif param == "c" then awards.show_to(name, name, nil, true) else awards.show_to(name, name, nil, false) end + + if (param == "disable" or param == "enable") and minetest.global_exists("sfinv") then + local player = minetest.get_player_by_name(name) + if player then + sfinv.set_player_inventory_formspec(player) + end + end end }) diff --git a/gui.lua b/gui.lua index a559b97..49a6796 100644 --- a/gui.lua +++ b/gui.lua @@ -166,7 +166,7 @@ function awards.show_to(name, to, sid, text) end local data = awards.player(to) if name == to and data.disabled then - minetest.chat_send_player(S("You've disabled achievement. Type /awards enable to reenable.")) + minetest.chat_send_player(name, S("You've disabled achievements. Type /awards enable to reenable.")) return end if text then @@ -215,6 +215,10 @@ if minetest.get_modpath("sfinv") then on_enter = function(self, player, context) context.awards_idx = 1 end, + is_in_nav = function(self, player, context) + local data = awards.player(player:get_player_name()) + return not data.disabled + end, get = function(self, player, context) local name = player:get_player_name() return sfinv.make_formspec(player, context,