Hi, I can't move items inside the special storage system ( for example move an item from the first cell to the last cell ) or from the special storage system to the main inventory.
I also can't put stones directly from the special storage system on armors/weapons.
This is my __PutItem function from game.py ( I think this where the problem is coming from? )
Code
- def __PutItem(self, attachedType, attachedItemIndex, attachedItemSlotPos, attachedItemCount, dstChrID):
- if player.SLOT_TYPE_INVENTORY == attachedType or player.SLOT_TYPE_DRAGON_SOUL_INVENTORY == attachedType or player.SLOT_TYPE_SKILL_BOOK_INVENTORY == attachedType or player.SLOT_TYPE_UPGRADE_ITEMS_INVENTORY == attachedType or player.SLOT_TYPE_STONE_INVENTORY == attachedType or player.SLOT_TYPE_SANDIK_INVENTORY == attachedType:
- attachedInvenType = player.SlotTypeToInvenType(attachedType)
- if TRUE == chr.HasInstance(self.PickingCharacterIndex) and player.GetMainCharacterIndex() != dstChrID:
- if player.IsEquipmentSlot(attachedItemSlotPos) and player.SLOT_TYPE_DRAGON_SOUL_INVENTORY != attachedType:
- self.stream.popupWindow.Close()
- self.stream.popupWindow.Open(localeInfo.EXCHANGE_FAILURE_EQUIP_ITEM, 0, localeInfo.UI_OK)
- else:
- if chr.IsNPC(dstChrID):
- net.SendGiveItemPacket(dstChrID, attachedInvenType, attachedItemSlotPos, attachedItemCount)
- else:
- net.SendExchangeStartPacket(dstChrID)
- net.SendExchangeItemAddPacket(attachedInvenType, attachedItemSlotPos, 0)
- else:
- self.__DropItem(attachedType, attachedItemIndex, attachedItemSlotPos, attachedItemCount)
I also tried changing that if inside "if TRUE..." to
Code
- if player.IsEquipmentSlot(attachedItemSlotPos) and\
- player.SLOT_TYPE_DRAGON_SOUL_INVENTORY != attachedType and\
- player.SLOT_TYPE_UPGRADE_INVENTORY != attachedType and\
- player.SLOT_TYPE_BOOK_INVENTORY != attachedType and\
- player.SLOT_TYPE_STONE_INVENTORY != attachedType:
- self.stream.popupWindow.Close()
- self.stream.popupWindow.Open(localeInfo.EXCHANGE_FAILURE_EQUIP_ITEM, 0, localeInfo.UI_OK)