Support swap item between main hand and offhand by press key "F" (#4241)
Hi, I found cuberite don't support to press key "F" to swap items on main hand and offhand, so I implemented this feature. Best regards Changyong
This commit is contained in:
parent
24603a7640
commit
2d3013d1d3
@ -13,6 +13,7 @@ beeduck
|
|||||||
bibo38
|
bibo38
|
||||||
birkett (Anthony Birkett)
|
birkett (Anthony Birkett)
|
||||||
Bond_009
|
Bond_009
|
||||||
|
changyongGuo
|
||||||
Cocosushi6
|
Cocosushi6
|
||||||
derouinw
|
derouinw
|
||||||
Diusrex
|
Diusrex
|
||||||
|
@ -3317,6 +3317,16 @@ local Hash = cCryptoHash.sha1HexString("DataToHash")
|
|||||||
},
|
},
|
||||||
Notes = "Returns the weapon that the entity has equipped. Returns an empty cItem if no weapon equipped or not applicable.",
|
Notes = "Returns the weapon that the entity has equipped. Returns an empty cItem if no weapon equipped or not applicable.",
|
||||||
},
|
},
|
||||||
|
GetOffHandEquipedItem =
|
||||||
|
{
|
||||||
|
Returns =
|
||||||
|
{
|
||||||
|
{
|
||||||
|
Type = "cItem",
|
||||||
|
},
|
||||||
|
},
|
||||||
|
Notes = "Returns the item that the entity has equipped on off-hand. Returns an empty cItem if no item equipped or not applicable.",
|
||||||
|
},
|
||||||
GetGravity =
|
GetGravity =
|
||||||
{
|
{
|
||||||
Returns =
|
Returns =
|
||||||
|
@ -1188,7 +1188,14 @@ void cClientHandle::HandleLeftClick(int a_BlockX, int a_BlockY, int a_BlockZ, eB
|
|||||||
|
|
||||||
case DIG_STATUS_SWAP_ITEM_IN_HAND:
|
case DIG_STATUS_SWAP_ITEM_IN_HAND:
|
||||||
{
|
{
|
||||||
// TODO: Not yet implemented
|
|
||||||
|
cItem EquippedItem = m_Player->GetEquippedItem();
|
||||||
|
cItem OffhandItem = m_Player->GetOffHandEquipedItem();
|
||||||
|
|
||||||
|
cInventory & Intentory = m_Player->GetInventory();
|
||||||
|
Intentory.SetShieldSlot(EquippedItem);
|
||||||
|
Intentory.SetHotbarSlot(Intentory.GetEquippedSlotNum(), OffhandItem);
|
||||||
|
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -351,6 +351,9 @@ public:
|
|||||||
/** Returns the currently equipped boots; empty item if none */
|
/** Returns the currently equipped boots; empty item if none */
|
||||||
virtual cItem GetEquippedBoots(void) const { return cItem(); }
|
virtual cItem GetEquippedBoots(void) const { return cItem(); }
|
||||||
|
|
||||||
|
/** Returns the currently offhand equipped item; empty item if none */
|
||||||
|
virtual cItem GetOffHandEquipedItem(void) const { return cItem(); }
|
||||||
|
|
||||||
/** Applies damage to the armor after the armor blocked the given amount */
|
/** Applies damage to the armor after the armor blocked the given amount */
|
||||||
virtual void ApplyArmorDamage(int DamageBlocked);
|
virtual void ApplyArmorDamage(int DamageBlocked);
|
||||||
|
|
||||||
|
@ -71,6 +71,9 @@ public:
|
|||||||
/** Returns the currently equipped boots; empty item if none */
|
/** Returns the currently equipped boots; empty item if none */
|
||||||
virtual cItem GetEquippedBoots(void) const override { return m_Inventory.GetEquippedBoots(); }
|
virtual cItem GetEquippedBoots(void) const override { return m_Inventory.GetEquippedBoots(); }
|
||||||
|
|
||||||
|
/** Returns the currently offhand equipped item; empty item if none */
|
||||||
|
virtual cItem GetOffHandEquipedItem(void) const override { return m_Inventory.GetShieldSlot(); }
|
||||||
|
|
||||||
virtual void ApplyArmorDamage(int DamageBlocked) override;
|
virtual void ApplyArmorDamage(int DamageBlocked) override;
|
||||||
|
|
||||||
// tolua_begin
|
// tolua_begin
|
||||||
|
Loading…
Reference in New Issue
Block a user