diff --git a/Source/controls/town_npc_nav.cpp b/Source/controls/town_npc_nav.cpp index 4c2f76c2e..a66d1eb97 100644 --- a/Source/controls/town_npc_nav.cpp +++ b/Source/controls/town_npc_nav.cpp @@ -50,8 +50,10 @@ void RefreshTownNpcOrder(bool selectFirst = false) TownNpcOrder.clear(); if (leveltype != DTYPE_TOWN) return; - if (MyPlayer == nullptr) + if (MyPlayer == nullptr) { + SelectedTownNpc = -1; return; + } const Point playerPosition = MyPlayer->position.future; @@ -149,8 +151,10 @@ void SpeakSelectedTownNpc() SpeakText(_("No NPC selected."), true); return; } - if (MyPlayer == nullptr) + if (MyPlayer == nullptr) { + SpeakText(_("No NPC selected."), true); return; + } const Towner &towner = Towners[SelectedTownNpc]; const Point playerPosition = MyPlayer->position.future; @@ -285,8 +289,10 @@ void ListTownNpcsKeyPressed() townNpcs.reserve(Towners.size()); cows.reserve(Towners.size()); - if (MyPlayer == nullptr) + if (MyPlayer == nullptr) { + SpeakText(_("No town NPCs found."), true); return; + } const Point playerPosition = MyPlayer->position.future;