diff --git a/attack.cpp b/attack.cpp index 46e9b43b..c1b968df 100644 --- a/attack.cpp +++ b/attack.cpp @@ -1036,7 +1036,7 @@ EX bool attackMonster(cell *c, flagtype flags, eMonster killer) { int ntk = tkills(); int ntkt = killtypes(); - if(tkt < R20 && ntkt >= R20 && in_full_game()) { + if(tkt < R20 && ntkt >= R20 && in_full_game() && isLandIngame(laDragon)) { addMessage(XLAT("You hear a distant roar!")); playSound(NULL, "message-roar"); } @@ -1056,22 +1056,23 @@ EX bool attackMonster(cell *c, flagtype flags, eMonster killer) { if(tk < 10 && ntk >= 10 && in_full_game() && !big_unlock) addMessage(XLAT("Good to know that your fighting skills serve you well in this strange world.")); - if(tk < R100/2 && ntk >= R100/2 && in_full_game()) + if(tk < R100/2 && ntk >= R100/2 && in_full_game() && isLandIngame(laGraveyard)) addMessage(XLAT("You wonder where all these monsters go, after their death...")); - if(tk < R100 && ntk >= R100 && in_full_game()) + if(tk < R100 && ntk >= R100 && in_full_game() && isLandIngame(laGraveyard)) addMessage(XLAT("You feel that the souls of slain enemies pull you to the Graveyard...")); - if(!tu && landUnlocked(laTrollheim) && in_full_game()) { + if(!tu && landUnlocked(laTrollheim) && in_full_game() && isLandIngame(laTrollheim)) { playSound(c, "message-troll"); addMessage(XLAT("%The1 says, \"I die, but my clan in Trollheim will avenge me!\"", m)); } - if(!eu && landUnlocked(laElementalWall) && in_full_game()) + if(!eu && landUnlocked(laElementalWall) && in_full_game() && isLandIngame(laElementalWall)) addMessage(XLAT("After killing %the1, you feel able to reach the Elemental Planes!", m)); if(m == moVizier && c->monst != moVizier && kills[moVizier] == 1 && in_full_game()) { - addMessage(XLAT("Hmm, he has been training in the Emerald Mine. Interesting...")); + if(isLandIngame(laEmerald)) + addMessage(XLAT("Hmm, he has been training in the Emerald Mine. Interesting...")); princess::forceMouse = true; } diff --git a/quit.cpp b/quit.cpp index 228aa1f3..192ab718 100644 --- a/quit.cpp +++ b/quit.cpp @@ -433,11 +433,11 @@ EX void showGameMenu() { else if(peace::on) ; else if(racing::on) ; else if(!in_full_game()) ; - else if(tkills() < R100) + else if(tkills() < R100 && isLandIngame(laGraveyard)) dialog::addInfo(XLAT("Defeat %1 enemies to access the Graveyard", its(R100))); - else if(kills[moVizier] == 0 && (items[itFernFlower] < U5 || items[itGold] < U5)) + else if(kills[moVizier] == 0 && (items[itFernFlower] < U5 || items[itGold] < U5) && isLandIngame(laEmerald)) dialog::addInfo(XLAT("Kill a Vizier in the Palace to access Emerald Mine")); - else if(items[itEmerald] < U5) + else if(items[itEmerald] < U5 && isLandIngame(laCamelot)) dialog::addInfo(XLAT("Collect 5 Emeralds to access Camelot")); else if(landUnlocked(laHell) && ls::any_order()) { eLand l = nextHyperstone();