From 8f10e93bc3ff4b82400627abf552b3a5a15aa33f Mon Sep 17 00:00:00 2001 From: Dorian Wouters Date: Fri, 5 Feb 2016 13:12:43 +0100 Subject: [PATCH] Fix crashes on quest abort/accept when HUD is hidden --- core.lua | 20 ++++++++++++-------- 1 file changed, 12 insertions(+), 8 deletions(-) diff --git a/core.lua b/core.lua index 1450219..9dc4f79 100644 --- a/core.lua +++ b/core.lua @@ -513,10 +513,12 @@ function quests.accept_quest(playername, questname) quests.successfull_quests[playername][questname] = {count = 1} end quests.active_quests[playername][questname].finished = true - for _,quest in ipairs(quests.hud[playername].list) do - if quest.name == questname then - local player = minetest.get_player_by_name(playername) - player:hud_change(quest.id, "number", quests.colors.success) + if quests.hud[playername].list ~= nil then -- nil when HUD is hidden + for _,quest in ipairs(quests.hud[playername].list) do + if quest.name == questname then + local player = minetest.get_player_by_name(playername) + player:hud_change(quest.id, "number", quests.colors.success) + end end end handle_quest_end(playername, questname) @@ -551,10 +553,12 @@ function quests.abort_quest(playername, questname) end quests.active_quests[playername][questname].finished = true - for _,quest in ipairs(quests.hud[playername].list) do - if quest.name == questname then - local player = minetest.get_player_by_name(playername) - player:hud_change(quest.id, "number", quests.colors.failed) + if quests.hud[playername].list ~= nil then -- nil when HUD is hidden + for _,quest in ipairs(quests.hud[playername].list) do + if quest.name == questname then + local player = minetest.get_player_by_name(playername) + player:hud_change(quest.id, "number", quests.colors.failed) + end end end