summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/localplayer.cpp20
-rw-r--r--src/localplayer.h3
2 files changed, 21 insertions, 2 deletions
diff --git a/src/localplayer.cpp b/src/localplayer.cpp
index 0a571b3f2..619150ef9 100644
--- a/src/localplayer.cpp
+++ b/src/localplayer.cpp
@@ -3452,6 +3452,26 @@ void LocalPlayer::pingRequest()
Net::getBeingHandler()->requestNameById(getId());
}
+int LocalPlayer::getPingTime() const
+{
+ int time = 0;
+ if (!mWaitPing)
+ {
+ time = mPingTime;
+ }
+ else
+ {
+ time = tick_time;
+ if (time > mPingSendTick)
+ {
+ time -= mPingSendTick;
+ if (time <= mPingTime)
+ time = mPingTime;
+ }
+ }
+ return time;
+}
+
void LocalPlayer::pingResponse()
{
if (mWaitPing == true && mPingSendTick > 0)
diff --git a/src/localplayer.h b/src/localplayer.h
index 2d463de4e..ce615b2e6 100644
--- a/src/localplayer.h
+++ b/src/localplayer.h
@@ -286,8 +286,7 @@ class LocalPlayer final : public Being,
int getDisableGameModifiers() const A_WARN_UNUSED
{ return mDisableGameModifiers; }
- int getPingTime() const A_WARN_UNUSED
- { return mPingTime; }
+ int getPingTime() const A_WARN_UNUSED;
void tryPingRequest();