Example #1
0
        public async Task LowerItemsById()
        {
            await RetainerRoutine.ReadRetainers(PullListItems);

            await Coroutine.Sleep(1000);

            foreach (var slot in InventoryManager.FilledSlots.Where(i => i.IsHighQuality && ItemsToLower.Contains(i.RawItemId)))
            {
                RetainerRoutine.LogLoud($"Lowering {slot}");
                slot.LowerQuality();
                await Coroutine.Sleep(1000);
            }
            await Coroutine.Sleep(1000);

            await RetainerRoutine.ReadRetainers(RetainerRoutine.DumpItems());
        }
Example #2
0
        internal static async Task DumpItemsByCategories(ItemUiCategory[] categories)
        {
            var myItems = InventoryManager.FilledSlots.Where(i => categories.Contains(i.Item.EquipmentCatagory) && i.Item.MyItemRole() != MyItemRole.Map);

            foreach (var slot in myItems)
            {
                if (InventoryManager.GetBagsByInventoryBagId(RetainerBagIds).FirstOrDefault(i => i.FreeSlots > 1) != null)
                {
                    RetainerRoutine.LogLoud($"Want to move DUMP {slot} - {slot.Count}");
                    slot.Move(InventoryManager.GetBagsByInventoryBagId(RetainerBagIds).First(i => i.FreeSlots > 1).GetFirstFreeSlot());
                    //slot.RetainerEntrustQuantity((int) slot.Count);
                    await Coroutine.Sleep(700);
                }
                else
                {
                    RetainerRoutine.LogLoud($"Not Enough room in retainer");
                }
            }

            await RetainerRoutine.DumpItems();
        }