void RPC_S2C_PersonalStorageDelete(uLink.BitStream stream, uLink.NetworkMessageInfo info) { int objID = stream.Read <int>(); ItemObject item = ItemMgr.Instance.Get(objID); if (null == item) { return; } NpcStorage storage = NpcStorageMgr.GetStorage(Id); if (null == storage) { return; } storage.Package.RemoveItem(item); storage.Reset(); }
void RPC_S2C_PersonalStorageSort(uLink.BitStream stream, uLink.NetworkMessageInfo info) { int tabIndex = stream.Read <int>(); int[] ids = stream.Read <int[]>(); NpcStorage storage = NpcStorageMgr.GetStorage(Id); if (null == storage) { return; } storage.Package.Clear((ItemPackage.ESlotType)tabIndex); SlotList itemList = storage.Package.GetSlotList((ItemPackage.ESlotType)tabIndex); for (int i = 0; i < ids.Length; i++) { ItemObject item = ItemMgr.Instance.Get(ids[i]); itemList[i] = item; } storage.Reset(); }
void RPC_S2C_PersonalStorageExchange(uLink.BitStream stream, uLink.NetworkMessageInfo info) { int objID = stream.Read <int>(); int dstIndex = stream.Read <int>(); int dstObjID = stream.Read <int>(); int srcIndex = stream.Read <int>(); ItemObject item = ItemMgr.Instance.Get(objID); if (null == item) { return; } NpcStorage storage = NpcStorageMgr.GetStorage(Id); if (null == storage) { return; } ItemObject dstObj = ItemMgr.Instance.Get(dstObjID); if (null != dstObj) { storage.Package.PutItem(dstObj, srcIndex); } else { storage.Package.RemoveItem(item); } storage.Package.PutItem(item, dstIndex); storage.Reset(); }