From 3f31d4f379f2baa5ae98f3a5f551307735820fa3 Mon Sep 17 00:00:00 2001 From: Andrei Karas Date: Sat, 9 Jul 2011 00:05:18 +0300 Subject: Fix updating local player status. --- src/being.cpp | 3 +++ src/game.cpp | 2 ++ src/localplayer.cpp | 6 +++--- src/localplayer.h | 3 +-- 4 files changed, 9 insertions(+), 5 deletions(-) diff --git a/src/being.cpp b/src/being.cpp index 0b4ac3ccd..d8e3119b5 100644 --- a/src/being.cpp +++ b/src/being.cpp @@ -1793,6 +1793,9 @@ bool Being::updateFromCache() void Being::addToCache() { + if (player_node == this) + return; + BeingCacheEntry *entry = Being::getCacheEntry(getId()); if (!entry) { diff --git a/src/game.cpp b/src/game.cpp index 21f03d42c..0082040dc 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -1100,6 +1100,8 @@ void Game::handleInput() } Client::setFramerate(fpsLimit); } + if (player_node) + player_node->updateName(); if (event.active.state & SDL_APPINPUTFOCUS) Client::setInputFocused(event.active.gain); diff --git a/src/localplayer.cpp b/src/localplayer.cpp index 861bfb642..95f2dc83d 100644 --- a/src/localplayer.cpp +++ b/src/localplayer.cpp @@ -113,7 +113,6 @@ LocalPlayer::LocalPlayer(int id, int subtype): mAwayDialog(0), mAfkTime(0), mAwayMode(false), - mHalfAwayMode(false), mShowNavigePath(false), mDrawPath(false), mActivityTime(0), @@ -351,7 +350,7 @@ void LocalPlayer::logic() if (mAwayMode) smile += FLAG_AWAY; - if (mHalfAwayMode) + if (mInactive) smile += FLAG_INACTIVE; if (emote(smile)) @@ -3160,7 +3159,8 @@ void LocalPlayer::changeAwayMode() { mAwayMode = !mAwayMode; mAfkTime = 0; - mHalfAwayMode = false; + mInactive = false; + updateName(); if (miniStatusWindow) miniStatusWindow->updateStatus(); if (mAwayMode) diff --git a/src/localplayer.h b/src/localplayer.h index 3a97511f5..81232e4b6 100644 --- a/src/localplayer.h +++ b/src/localplayer.h @@ -332,7 +332,7 @@ class LocalPlayer : public Being, public ActorSpriteListener, void setAway(const std::string &message); void setHalfAway(bool n) - { mHalfAwayMode = n; } + { mInactive = n;} void afkRespond(ChatTab *tab, const std::string &nick); @@ -568,7 +568,6 @@ class LocalPlayer : public Being, public ActorSpriteListener, int mPingTime; int mAfkTime; bool mAwayMode; - bool mHalfAwayMode; bool mShowNavigePath; bool mIsServerBuggy; -- cgit v1.2.3-70-g09d2