diff --git a/Source/monster.cpp b/Source/monster.cpp index 9de9ed4f4..dcee0ec6f 100644 --- a/Source/monster.cpp +++ b/Source/monster.cpp @@ -2548,9 +2548,10 @@ BOOL M_DoTalk(int i) return FALSE; InitQTextMsg(monster[i].mtalkmsg); if (monster[i].mName == UniqMonst[UMT_GARBUD].mName) { - if (monster[i].mtalkmsg == TEXT_GARBUD1) + if (monster[i].mtalkmsg == TEXT_GARBUD1) { quests[Q_GARBUD]._qactive = QUEST_ACTIVE; - quests[Q_GARBUD]._qlog = TRUE; // BUGFIX: (?) for other quests qactive and qlog go together, maybe this should actually go into the if above + quests[Q_GARBUD]._qlog = TRUE; // BUGFIX: (?) for other quests qactive and qlog go together, maybe this should actually go into the if above (fixed) + } if (monster[i].mtalkmsg == TEXT_GARBUD2 && !(monster[i]._mFlags & MFLAG_QUEST_COMPLETE)) { SpawnItem(i, monster[i]._mx + 1, monster[i]._my + 1, TRUE); monster[i]._mFlags |= MFLAG_QUEST_COMPLETE; @@ -3404,10 +3405,10 @@ void MAI_Sneak(int i) } } if (Monst->_mgoal == MGOAL_RETREAT && !(Monst->_mFlags & MFLAG_NO_ENEMY)) { - if (Monst->_mFlags & MFLAG_TARGETS_MONSTER) - md = GetDirection(Monst->_mx, Monst->_my, monster[Monst->_menemy]._mx, monster[Monst->_menemy]._my); - else - md = GetDirection(Monst->_mx, Monst->_my, plr[Monst->_menemy]._pownerx, plr[Monst->_menemy]._pownery); + if (Monst->_mFlags & MFLAG_TARGETS_MONSTER) + md = GetDirection(Monst->_mx, Monst->_my, monster[Monst->_menemy]._mx, monster[Monst->_menemy]._my); + else + md = GetDirection(Monst->_mx, Monst->_my, plr[Monst->_menemy]._pownerx, plr[Monst->_menemy]._pownery); md = opposite[md]; if (Monst->MType->mtype == MT_UNSEEN) { if (random_(112, 2) != 0)