aboutsummaryrefslogtreecommitdiff
path: root/src/server/player_sao.cpp
diff options
context:
space:
mode:
authorsavilli <78875209+savilli@users.noreply.github.com>2021-10-12 21:12:49 +0300
committerGitHub <noreply@github.com>2021-10-12 20:12:49 +0200
commit6ea558f8ac57a391b6f54c534441f930b0609cea (patch)
tree7d995996bfb6acfa9fb13a76419c3d09dd72a40e /src/server/player_sao.cpp
parentecc6f4ba25cd49599922333a5f8d4b4ce368992d (diff)
downloadminetest-6ea558f8ac57a391b6f54c534441f930b0609cea.tar.xz
Fix player HP desync between client and server
Diffstat (limited to 'src/server/player_sao.cpp')
-rw-r--r--src/server/player_sao.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/server/player_sao.cpp b/src/server/player_sao.cpp
index d4d036726..690823bb7 100644
--- a/src/server/player_sao.cpp
+++ b/src/server/player_sao.cpp
@@ -462,7 +462,7 @@ void PlayerSAO::rightClick(ServerActiveObject *clicker)
m_env->getScriptIface()->on_rightclickplayer(this, clicker);
}
-void PlayerSAO::setHP(s32 hp, const PlayerHPChangeReason &reason)
+void PlayerSAO::setHP(s32 hp, const PlayerHPChangeReason &reason, bool send)
{
if (hp == (s32)m_hp)
return; // Nothing to do
@@ -490,7 +490,8 @@ void PlayerSAO::setHP(s32 hp, const PlayerHPChangeReason &reason)
if ((hp == 0) != (oldhp == 0))
m_properties_sent = false;
- m_env->getGameDef()->SendPlayerHPOrDie(this, reason);
+ if (send)
+ m_env->getGameDef()->SendPlayerHPOrDie(this, reason);
}
void PlayerSAO::setBreath(const u16 breath, bool send)