Can this be used to set the current desynthesis target for a stack of items? If so, would the following pseudo code snippet be a reasonable way to approach desynthesizing a stack of items? Code: <assumes bagSlot.Item.DesynthesisIndex is set to first stack item by default> while (bagSlot.Item.StackSize > 0) { var result = await CommonTasks.Desynthesize(bagSlot,<some delay>); <synchronization and error handling code> <assumes bagSlot.Item.DesynthesisIndex does not need to be explicitly called and is internally set to the new first stack item> } Thanks.
DesynthesisIndex is a static property of the items data Just do Code: var OrginalId = bagSlot.TrueItemId; while(bagSlot.IsFilled && bagSlot.TrueItemId == OrginalId) { }
I see. Does Item.StackSize decrease with each successful desynth - so I know the bagSlot state has changed before I try to do the next desynth? Also, can you tell me difference between TrueItemId and ItemId so I know when to use one over the other? Thanks!
TrueItemId is different from rawitemid when dealing with a high quality or collectible item. All of the information in bagslot.Item.WHATEVER is static and unchanging as this is information about the actual item. Ie Stacksize is just the size an item can be stacked too, bagslot.Count is what you want to be using. You should be looking at the properties of the bagslot and not the item.