diff options
author | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2012-03-27 00:18:31 +0200 |
---|---|---|
committer | Thorbjørn Lindeijer <thorbjorn@lindeijer.nl> | 2012-04-14 12:21:58 +0200 |
commit | 387a04cf3c38e19fd8050e39d0f219e5f07257fd (patch) | |
tree | 0dbdeb2679a5c58303b6e48766bee7fa4520a174 /src/game-server/character.h | |
parent | dcd66debbe519403d3b8f7bf30313fbdee71fe6c (diff) | |
download | manaserv-387a04cf3c38e19fd8050e39d0f219e5f07257fd.tar.gz manaserv-387a04cf3c38e19fd8050e39d0f219e5f07257fd.tar.bz2 manaserv-387a04cf3c38e19fd8050e39d0f219e5f07257fd.tar.xz manaserv-387a04cf3c38e19fd8050e39d0f219e5f07257fd.zip |
Introduced a Timeout class for counting down without counting
The timeout remembers a reference point of time against which it can check
how much time is remaining.
Reviewed-by: Erik Schilling
Reviewed-by: Yohann Ferreira
Diffstat (limited to 'src/game-server/character.h')
-rw-r--r-- | src/game-server/character.h | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/src/game-server/character.h b/src/game-server/character.h index ec3fc737..b465a90e 100644 --- a/src/game-server/character.h +++ b/src/game-server/character.h @@ -405,10 +405,10 @@ class Character : public Being /** Makes it impossible to chat for a while */ void mute(int seconds) - { setTimerHard(T_C_MUTE, seconds * 10); } + { mMuteTimeout.set(seconds * 10); } bool isMuted() const - { return isTimerRunning(T_C_MUTE); } + { return !mMuteTimeout.expired(); } bool isConnected() const { return mConnected; } @@ -520,6 +520,8 @@ class Character : public Being int mTalkNpcId; /**< Public ID of NPC the character is talking to, if any */ Script::Thread *mNpcThread; /**< Script thread executing NPC interaction, if any */ + Timeout mMuteTimeout; /**< Time until the character is no longer muted */ + static Script::Ref mDeathCallback; static Script::Ref mDeathAcceptedCallback; |