예제 #1
0
        /// <summary>
        /// Manually uses each ashes on a tarromin potions to make serums.
        /// </summary>
        /// <returns>true if successful</returns>
        protected bool MakeSerums()
        {
            Point ashesInventorySlot;
            Point tarrominPotionInventorySlot;

            for (int i = 0; i < HALF_INVENTORY; i++)
            {
                if (StopFlag)
                {
                    return(false);
                }

                ashesInventorySlot = Inventory.InventoryIndexToCoordinates(i);
                if (ashesInventorySlot.Y % 2 == 1)  //Iterate through odd rows right to left instead of left to right like on even rows.
                {
                    ashesInventorySlot = Inventory.MirrorHorizontal(ashesInventorySlot);
                }
                tarrominPotionInventorySlot = Inventory.MirrorVertical(ashesInventorySlot);

                if (i % 2 == 0)
                {   //Use top half item on mirrored bottom half item.
                    Inventory.UseItemOnItem(ashesInventorySlot, tarrominPotionInventorySlot, false);
                }
                else
                {   //Use bottom half item on mirrored top half item.
                    Inventory.UseItemOnItem(tarrominPotionInventorySlot, ashesInventorySlot, false);
                }

                RunParams.Iterations--;
            }
            return(true);
        }
예제 #2
0
 /// <summary>
 /// Makes finished potions from unfinished potions and secondary ingredients.
 /// </summary>
 /// <returns>true if successful</returns>
 protected bool MakeFinishedPotions(bool countdown)
 {
     Inventory.UseItemOnItem(FirstHalfInventorySlot, SecondHalfInventorySlot);
     if (SafeWaitPlus(750, 200))
     {
         return(false);
     }
     if (!ChatBoxSingleOptionMakeAll(RSClient))
     {
         return(false);
     }
     return(WaitToMakeFinishedPotions(countdown));
 }
예제 #3
0
        /// <summary>
        /// Make the 14 items
        /// </summary>
        /// <param name="craftTime">time to wait for he items to be made</param>
        /// <returns>true if successful</returns>
        protected bool MakeItems(bool finishedProduct)
        {
            Inventory.UseItemOnItem(UseWithInventorySlot, UseOnInventorySlot, false);
            SafeWaitPlus(500, 150);
            if (!ChatBoxSingleOptionMakeAll(RSClient))
            {
                return(false);
            }

            //Wait for the inventory to be processed
            WatchNetflix(0);
            CountDownItems(finishedProduct);
            return(!SafeWaitPlus(0, 300));
        }
예제 #4
0
        /// <summary>
        /// Use the tool on the other 27 items
        /// </summary>
        /// <returns>true if successful</returns>
        protected override bool ProcessInventory()
        {
            Inventory.UseItemOnItem(UseWithInventorySlot, UseOnInventorySlot, false);
            SafeWaitPlus(500, 200);
            if (!ChatBoxSingleOptionMakeAll(RSClient))
            {
                return(false);
            }

            //Wait for the inventory to be processed
            WatchNetflix(0);
            CountDownItems(true);
            SafeWaitPlus(0, 300);

            return(true);
        }
예제 #5
0
 /// <summary>
 /// Cleans herbs if grimy and makes unfinished potions.
 /// </summary>
 /// <returns>true if successful</returns>
 protected bool MakeUnfinishedPotions(bool countdown)
 {
     if (true && !CleanHerbs())
     {
         return(false);
     }                                               //TODO Replace true with conditional based user settings
     Inventory.UseItemOnItem(SecondHalfInventorySlot, FirstHalfInventorySlot);
     if (SafeWaitPlus(750, 200))
     {
         return(false);
     }
     if (!ChatBoxSingleOptionMakeAll(RSClient))
     {
         return(false);
     }
     return(WaitToMakeUnfinishedPotions(countdown));
 }