Esempio n. 1
0
        private bool TakeCurrency(CustomerInfo customer)
        {
            ClientManager.Instance.ActivateTab("currency_tab");

            // Get Currency Position
            int            clientResolution = Convert.ToInt32(ClientManager.Instance.ResolutionEnum.GetDescription());
            string         requestedNormal  = customer.Product.Replace(" ", "").Replace("'", "");
            Position       currencySlot     = ClientManager.Instance.GetAbsoluteAssetPosition(StaticUtils.GetCurrencyPath(requestedNormal));
            ItemInfoParser itemInfo         = ClientManager.Instance.GetItemInfo(currencySlot, false);

            // Do I have enough to fulfill the order?
            if (itemInfo.Item.SizeInStack < customer.NumberProducts)
            {
                return(false);
            }

            // Ok, we have enough so lets move it to Inventory
            // First we need to figure out the off stack and full stacks
            int offStack   = customer.NumberProducts % itemInfo.Item.StackSize;
            int fullStacks = customer.NumberProducts / itemInfo.Item.StackSize;

            // Now get the off stack to Invendory slot 1
            ClientManager.Instance.GetPartialStackToCusor(currencySlot, offStack);
            Position invSlot1 = ClientManager.Instance.TranslatePosition(InventoryPositions.GetInvenoryPositions(ClientManager.Instance.ResolutionEnum)[0]);

            ClientManager.Instance.ClickPosition(invSlot1);
            for (int i = 0; i < fullStacks; i++)
            {
                ClientManager.Instance.CtrlClickPosition(currencySlot);
            }

            // Now we should have the correct items in the Inventory
            return(true);
        }
Esempio n. 2
0
 public bool DumpInventory()
 {
     foreach (Position invData in InventoryPositions.GetInvenoryPositions(ResolutionEnum))
     {
         CtrlClickPosition(TranslatePosition(invData), 50);
     }
     return(true);
 }
Esempio n. 3
0
        private bool OfferSingleProduct(CustomerInfo customer)
        {
            foreach (Position invData in InventoryPositions.GetInvenoryPositions(ClientManager.Instance.ResolutionEnum))
            {
                ItemInfoParser itemInfo = ClientManager.Instance.GetItemInfo(invData);
                if (!customer.Product.Contains(itemInfo.Item.RealName))
                {
                    continue;
                }

                ClientManager.Instance.CtrlClickPosition(ClientManager.Instance.TranslatePosition(invData));
                return(true);
            }
            return(false);
        }
Esempio n. 4
0
        private bool OfferCurrency(CustomerInfo customer)
        {
            Thread.Sleep(1000);
            int amountOffered = 0;

            foreach (Position invData in InventoryPositions.GetInvenoryPositions(ClientManager.Instance.ResolutionEnum))
            {
                ItemInfoParser itemInfo = ClientManager.Instance.GetItemInfo(invData);
                if (!customer.Product.Contains(itemInfo.Item.RealName))
                {
                    continue;
                }

                ClientManager.Instance.CtrlClickPosition(ClientManager.Instance.TranslatePosition(invData));
                amountOffered += itemInfo.Item.SizeInStack;
                if (amountOffered >= customer.NumberProducts)
                {
                    return(true);
                }
            }
            return(false);
        }