summaryrefslogtreecommitdiffstats
path: root/src/Entities/Player.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/Entities/Player.cpp')
-rw-r--r--src/Entities/Player.cpp17
1 files changed, 17 insertions, 0 deletions
diff --git a/src/Entities/Player.cpp b/src/Entities/Player.cpp
index 6ddfeb75c..bf5daf172 100644
--- a/src/Entities/Player.cpp
+++ b/src/Entities/Player.cpp
@@ -743,6 +743,18 @@ void cPlayer::SendHealth(void)
+void cPlayer::SendHotbarActiveSlot(void)
+{
+ if (m_ClientHandle != nullptr)
+ {
+ m_ClientHandle->SendHeldItemChange(m_Inventory.GetEquippedSlotNum());
+ }
+}
+
+
+
+
+
void cPlayer::SendExperience(void)
{
if (m_ClientHandle != nullptr)
@@ -2212,6 +2224,10 @@ bool cPlayer::LoadFromFile(const AString & a_FileName, cWorldPtr & a_World)
}
m_Inventory.LoadFromJson(root["inventory"]);
+
+ int equippedSlotNum = root.get("equippedItemSlot", 0).asInt();
+ m_Inventory.SetEquippedSlotNum(equippedSlotNum);
+
cEnderChestEntity::LoadFromJson(root["enderchestinventory"], m_EnderChestContents);
m_LoadedWorldName = root.get("world", "world").asString();
@@ -2302,6 +2318,7 @@ bool cPlayer::SaveToDisk()
root["position"] = JSON_PlayerPosition;
root["rotation"] = JSON_PlayerRotation;
root["inventory"] = JSON_Inventory;
+ root["equippedItemSlot"] = m_Inventory.GetEquippedSlotNum();
root["enderchestinventory"] = JSON_EnderChestInventory;
root["health"] = m_Health;
root["xpTotal"] = m_LifetimeTotalXp;