summaryrefslogtreecommitdiffstats
path: root/src/Entities/Player.cpp
diff options
context:
space:
mode:
authorMattes D <github@xoft.cz>2014-07-01 15:07:12 +0200
committerMattes D <github@xoft.cz>2014-07-01 15:07:12 +0200
commit9d843405b282937f9ee70e6ad066ce65a23a02a5 (patch)
treed7ad93182d00f62766e75fa7611d273dd4ff3d34 /src/Entities/Player.cpp
parentAdded a missing endline. (diff)
parentMerge pull request #1140 from mc-server/FixMingw (diff)
downloadcuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.gz
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.bz2
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.lz
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.xz
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.tar.zst
cuberite-9d843405b282937f9ee70e6ad066ce65a23a02a5.zip
Diffstat (limited to 'src/Entities/Player.cpp')
-rw-r--r--src/Entities/Player.cpp10
1 files changed, 7 insertions, 3 deletions
diff --git a/src/Entities/Player.cpp b/src/Entities/Player.cpp
index e1e03fded..daf1ef2cc 100644
--- a/src/Entities/Player.cpp
+++ b/src/Entities/Player.cpp
@@ -1,4 +1,4 @@
-
+
#include "Globals.h" // NOTE: MSVC stupidness requires this to be the same across all modules
#include "Player.h"
@@ -412,6 +412,7 @@ void cPlayer::StartChargingBow(void)
LOGD("Player \"%s\" started charging their bow", GetName().c_str());
m_IsChargingBow = true;
m_BowCharge = 0;
+ m_World->BroadcastEntityMetadata(*this, m_ClientHandle);
}
@@ -424,6 +425,8 @@ int cPlayer::FinishChargingBow(void)
int res = m_BowCharge;
m_IsChargingBow = false;
m_BowCharge = 0;
+ m_World->BroadcastEntityMetadata(*this, m_ClientHandle);
+
return res;
}
@@ -436,6 +439,7 @@ void cPlayer::CancelChargingBow(void)
LOGD("Player \"%s\" cancelled charging their bow at a charge of %d", GetName().c_str(), m_BowCharge);
m_IsChargingBow = false;
m_BowCharge = 0;
+ m_World->BroadcastEntityMetadata(*this, m_ClientHandle);
}
@@ -972,7 +976,7 @@ void cPlayer::Respawn(void)
m_LifetimeTotalXp = 0;
// ToDo: send score to client? How?
- m_ClientHandle->SendRespawn(*m_World);
+ m_ClientHandle->SendRespawn(*m_World, true);
// Extinguish the fire:
StopBurning();
@@ -1909,7 +1913,7 @@ void cPlayer::HandleFood(void)
{
m_FoodTickTimer = 0;
- if (m_FoodLevel >= 17)
+ if ((m_FoodLevel > 17) && (GetHealth() < GetMaxHealth()))
{
// Regenerate health from food, incur 3 pts of food exhaustion:
Heal(1);