diff --git a/gm_gameworld.cpp b/gm_gameworld.cpp index 4ad79ab2..01491fdb 100644 --- a/gm_gameworld.cpp +++ b/gm_gameworld.cpp @@ -735,6 +735,7 @@ bool GM_Gameworld::specKeyPress (const SDL_keysym& key) { // NOTE (nfries88): Not sure whether or not a stackpos is needed. Position hotkeyPos(0xFFFF, 0, 0); + // FIXME (nfries88): This never gets deleted, but it's a pain to implement. Item* item = Item::CreateItem(hk.item.itemid, 1); if(item->isExtendedUseable() && hk.item.useXHairs) { @@ -1190,7 +1191,12 @@ void GM_Gameworld::onCreatureMove(uint32_t id, const Position& oldPos, const Pos c->startWalk(); c->confirmWalk(); - sbvlPanel.winBattle.refreshVisibility(); + if((id == GlobalVariables::getPlayerID()) || + (!Map::getInstance().playerCanSee(newPos.x, newPos.y, newPos.z)) || + (oldPos.z != newPos.z)) + { + sbvlPanel.winBattle.refreshVisibility(); + } } void GM_Gameworld::onChangeSkills() diff --git a/ui/battlewindow.cpp b/ui/battlewindow.cpp index e848e138..856f805b 100644 --- a/ui/battlewindow.cpp +++ b/ui/battlewindow.cpp @@ -236,8 +236,8 @@ void winBattle_t::clickEntry(glictPos* relmousepos, glictContainer* callerclass) } else if(SDL_GetModState() & KMOD_SHIFT) { - // NOTE (nfries88): no idea how to get a creature's position on the map. - //gw->lookAtCreature(creature->getID()); + // NOTE (nfries88): too lazy to implement this... + //gw->lookAtPos(creature->getCurrentPos()); } else if(creature->getID() != GlobalVariables::getPlayerID()) {