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
|
||||
birkett (Anthony Birkett)
|
||||
Bond_009
|
||||
changyongGuo
|
||||
Cocosushi6
|
||||
derouinw
|
||||
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.",
|
||||
},
|
||||
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 =
|
||||
{
|
||||
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:
|
||||
{
|
||||
// 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;
|
||||
}
|
||||
|
||||
|
@ -351,6 +351,9 @@ public:
|
||||
/** Returns the currently equipped boots; empty item if none */
|
||||
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 */
|
||||
virtual void ApplyArmorDamage(int DamageBlocked);
|
||||
|
||||
|
@ -71,6 +71,9 @@ public:
|
||||
/** Returns the currently equipped boots; empty item if none */
|
||||
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;
|
||||
|
||||
// tolua_begin
|
||||
|
Loading…
Reference in New Issue
Block a user