public override void HandleMcpeInventorySlot(McpeInventorySlot message) { Inventory inventory = null; if (message.inventoryId == 0x00) { if (BaseClient.WorldReceiver?.GetPlayerEntity() is Player player) { inventory = player.Inventory; if (!inventory.IsPeInventory) { player.Inventory.IsPeInventory = true; } } } if (inventory == null) { return; } var index = (int)message.slot; if (ItemFactory.TryGetItem(message.item.Id, message.item.Metadata, out Item item)) { item.Count = message.item.Count; inventory[index] = item; // Log.Info($"Set inventory slot: {message.slot} Id: {message.item.Id}:{message.item.Metadata} x {message.item.Count} Name: {item.DisplayName} IsPeInv: {inventory.IsPeInventory}"); } else { Log.Warn($"Failed to set slot: {message.slot} Id: {message.item.Id}:{message.item.Metadata}"); } }
public void SendSetSlot(int slot) { McpeInventorySlot sendSlot = McpeInventorySlot.CreateObject(); sendSlot.inventoryId = 0; sendSlot.slot = (uint)slot; sendSlot.item = Slots[slot]; Player.SendPackage(sendSlot); }
public virtual void SendSetSlot(int slot) { var sendSlot = McpeInventorySlot.CreateObject(); sendSlot.inventoryId = 0; sendSlot.slot = (uint)slot; sendSlot.uniqueid = Slots[slot].UniqueId; sendSlot.item = Slots[slot]; Player.SendPacket(sendSlot); }
public void HandleSetSlot(McpeInventorySlot packet) { var wrapper = new ItemWrapper(packet.item, packet.item.ToAlexItem()); if (packet.inventoryId == 0x00) { Set((int)packet.slot, wrapper); //_slots[packet.slot] = wrapper; return; } }
private void HandleInventorySlot(McpeInventorySlot packet) { lock (_lastItem) { var item = packet.item; if (item != null && item is not ItemAir && item.Count > 0) { _lastItem = item; _resetEventInventorySlot.Set(); } } }
public void SendSetSlot(int slot) { if (slot < HotbarSize && (ItemHotbar[slot] == -1 || ItemHotbar[slot] == slot)) { ItemHotbar[slot] = slot /* + HotbarSize*/; Player.SendPlayerInventory(); McpeMobEquipment order = McpeMobEquipment.CreateObject(); order.runtimeEntityId = EntityManager.EntityIdSelf; order.item = GetItemInHand(); order.selectedSlot = (byte)slot; // Selected hotbar slot Player.SendPackage(order); } else { McpeInventorySlot sendSlot = McpeInventorySlot.CreateObject(); sendSlot.inventoryId = 0; sendSlot.slot = slot; sendSlot.item = GetItemInHand(); Player.SendPackage(sendSlot); } }
public void SendSetSlot(int slot) { if (slot < 0 || slot > Slots.Length - 1) { return; } McpeInventorySlot ssendSlot = McpeInventorySlot.CreateObject(); ssendSlot.inventoryId = 0; ssendSlot.slot = slot; ssendSlot.item = Slots[slot]; Player.SendPackage(ssendSlot); return; if (slot < HotbarSize /* && (ItemHotbar[slot] == -1 || ItemHotbar[slot] == slot)*/) { // ItemHotbar[slot] = slot; //Player.SendPlayerInventory(); McpeMobEquipment order = McpeMobEquipment.CreateObject(); order.runtimeEntityId = EntityManager.EntityIdSelf; order.item = Slots[slot]; order.slot = (byte)slot; order.selectedSlot = (byte)(slot); // Selected hotbar slot Player.SendPackage(order); } else { McpeInventorySlot sendSlot = McpeInventorySlot.CreateObject(); sendSlot.inventoryId = 0; sendSlot.slot = slot; sendSlot.item = Slots[slot]; Player.SendPackage(sendSlot); } }
public void HandleMcpeInventorySlot(McpeInventorySlot message) { }
public abstract void HandleMcpeInventorySlot(McpeInventorySlot message);
public override void HandleMcpeInventorySlot(McpeInventorySlot message) { }
public override void HandleMcpeInventorySlot(McpeInventorySlot message) { Log.Debug($"Inventory slot: {message.item}"); }