private void HandleGMGetItemPacket(GMGetItemPacket gMGetItemPacket) { if (!IsAdmin) { return; } var itemCount = gMGetItemPacket.Count; while (itemCount > 0) { var newItem = new Item(_databasePreloader, gMGetItemPacket.Type, gMGetItemPacket.TypeId, itemCount); var item = AddItemToInventory(newItem); if (item != null) { _packetsHelper.SendAddItem(Client, item); _packetsHelper.SendGmCommandSuccess(Client); } else { _packetsHelper.SendGmCommandError(Client, PacketType.GM_COMMAND_GET_ITEM); } itemCount -= newItem.Count; } }
public void Handle(WorldClient client, GMGetItemPacket packet) { if (!_gameSession.IsAdmin) { return; } var itemCount = packet.Count; var ok = false; while (itemCount > 0) { var newItem = new Item(_databasePreloader, _enchantConfig, _itemCreateConfig, packet.Type, packet.TypeId, itemCount); var item = _inventoryManager.AddItem(newItem); if (item != null) { ok = true; } itemCount -= newItem.Count; } if (ok) { _packetFactory.SendGmCommandSuccess(client); } else { _packetFactory.SendGmCommandError(client, PacketType.GM_COMMAND_GET_ITEM); } }