public void OnAddItem(Item nItem, SagaDB.Items.ITEM_UPDATE_REASON reason) { byte index, amount; AddItemResult res = I.inv.AddItem(nItem, out index, out amount); if (res == AddItemResult.ERROR) { Logger.ShowWarning("pc event handler: cannot add item with ID " + nItem.id, null); return; } nItem.index = index; nItem.stack = amount; if (res == AddItemResult.NEW_INDEX) { Packets.Server.AddItem p1 = new SagaMap.Packets.Server.AddItem(); p1.SetContainer(CONTAINER_TYPE.INVENTORY); p1.SetItem(nItem); C.netIO.SendPacket(p1, C.SessionID); MapServer.charDB.NewItem(this.C.Char, nItem); } Packets.Server.UpdateItem p2 = new SagaMap.Packets.Server.UpdateItem(); p2.SetContainer(CONTAINER_TYPE.INVENTORY); p2.SetItemIndex(nItem.index); p2.SetAmount(nItem.stack); p2.SetUpdateType(SagaMap.Packets.Server.ITEM_UPDATE_TYPE.AMOUNT); p2.SetUpdateReason(reason); C.netIO.SendPacket(p2, C.SessionID); MapServer.charDB.UpdateItem(this.C.Char, nItem); }
public void OnAddItem(Item nitem, SagaDB.Items.ITEM_UPDATE_REASON reason) { }
public void SetUpdateReason(SagaDB.Items.ITEM_UPDATE_REASON reason) { this.PutByte((byte)reason, 6); }