Exemplo n.º 1
0
        public static void UnEquipArmor()
        {
            List <UOItem> equip = new List <UOItem>();

            equip.Add(World.Player.Layers[Layer.Arms]);
            equip.Add(World.Player.Layers[Layer.Cloak]);
            equip.Add(World.Player.Layers[Layer.Gloves]);
            equip.Add(World.Player.Layers[Layer.Hat]);
            equip.Add(World.Player.Layers[Layer.InnerLegs]);
            equip.Add(World.Player.Layers[Layer.InnerTorso]);
            equip.Add(World.Player.Layers[Layer.MiddleTorso]);
            equip.Add(World.Player.Layers[Layer.Neck]);
            equip.Add(World.Player.Layers[Layer.Arms]);
            equip.Add(World.Player.Layers[Layer.OuterLegs]);
            equip.Add(World.Player.Layers[Layer.OuterTorso]);
            equip.Add(World.Player.Layers[Layer.Pants]);
            //equip.Add(World.Player.Layers[Layer.LeftHand]);
            equip.Add(World.Player.Layers[Layer.Shirt]);
            equip.Add(World.Player.Layers[Layer.Shoes]);
            equip.Add(World.Player.Layers[Layer.Waist]);

            UOItem containerTo = null;//World.Player.Backpack.Items.FindType(0x0E75); kvuly NB vecem radsi do batuzku

            if (containerTo == null || !containerTo.Exist)
            {
                containerTo = World.Player.Backpack;
            }

            if (!containerTo.Opened)
            {
                ItemHelper.EnsureContainer(containerTo);
            }

            int counter = 0;

            foreach (UOItem item in equip)
            {
                if (item.IsItemType(ItemLibrary.KnightCloakGold) || item.IsItemType(ItemLibrary.KnightCloakBlack))
                {
                    continue;
                }

                if (item != null && item.Exist && item.Graphic != null)
                {
                    item.Move(1, containerTo.Serial, 143, 123);
                    counter++;
                }
            }

            World.Player.PrintMessage("* Armor schozen " + counter + " *");
        }
Exemplo n.º 2
0
        //---------------------------------------------------------------------------------------------


        public void TrainAlchemyMag(Potion potion, PotionQuality quality)
        {
            //WatchDogHelper.Watch();
            Game.CurrentGame.Mode = GameMode.Working;
            Game.PrintMessage("Vyber zdrojovy konterjner s regy:");
            UOItem container = new UOItem(UIManager.TargetObject());

            ItemHelper.EnsureContainer(container);
            while (GetMixureReagent(container, potion, quality))
            {
                FillKadRecursive(potion, quality);
                if (!MixurePotion(potion, quality))
                {
                    break;
                }
            }
            Game.PrintMessage("Trenovani dokonceno.");
        }
Exemplo n.º 3
0
        public static void UnEquipShield()
        {
            List <UOItem> equip = new List <UOItem>();

            equip.Add(World.Player.Layers[Layer.LeftHand]);

            UOItem containerTo = null;//World.Player.Backpack.Items.FindType(0x0E75); kvuly NB vecem radsi do batuzku

            if (containerTo == null || !containerTo.Exist)
            {
                containerTo = World.Player.Backpack;
            }

            if (!containerTo.Opened)
            {
                ItemHelper.EnsureContainer(containerTo);
            }

            int counter = 0;

            foreach (UOItem item in equip)
            {
                if (item != null && item.Exist && item.Graphic != null)
                {
                    if (Array.IndexOf(ItemLibrary.Shields.GraphicArray, item.Graphic) > -1)
                    {
                        item.Move(1, containerTo.Serial, 143, 123);
                        counter++;
                    }
                }
            }

            if (counter > 0)
            {
                World.Player.PrintMessage("* Stit schozen *");
            }
            else
            {
                World.Player.PrintMessage("* Nemas Stit *");
            }
        }
Exemplo n.º 4
0
        //---------------------------------------------------------------------------------------------

        public void TrainAlchemy(Potion potion, PotionQuality quality)
        {
            //WatchDogHelper.Watch();
            Game.CurrentGame.Mode = GameMode.Working;
            Game.PrintMessage("Vyber zdrojovy konterjner s regy:");
            UOItem container = new UOItem(UIManager.TargetObject());

            ItemHelper.EnsureContainer(container);

            decimal okCount = 0;
            decimal count   = 0;

            while (GetMixureReagent(container, potion, quality))
            {
                FillKadRecursive(potion, quality);
                if (!MixurePotion(potion, quality))
                {
                    //break;
                }
                else
                {
                    count++;
                    if (Journal.Contains(true, "You pour"))
                    {
                        okCount++;
                    }

                    decimal okDivide  = (okCount / count);
                    decimal okPerc    = okDivide * 100;
                    int     regAmount = potion.GetAmountOrDefault(quality);


                    decimal pricePerPcs = (1 / (okDivide > 0 ? (okCount / count) : 1)) * (decimal)regAmount * 5.0m;//

                    Game.PrintMessage("Ks: " + okCount + " / " + count + " : " + String.Format("{0:n} %", okPerc));
                }
            }
            Game.PrintMessage("Trenovani dokonceno.");
        }
Exemplo n.º 5
0
        public void Rewind()
        {
            ItemHelper.EnsureContainer(World.Player.Backpack);

            UOItem uOItem = World.Player.Backpack.Items.FindType(GreeziArtefakt.Graphic);



            if (uOItem.Exist)
            {
                Journal.Clear();

                uOItem.Use();

                if (Journal.WaitForText(true, 500, "You used Rewind"))
                {
                    Game.PrintMessage("Rewin Start");

                    AsyncCounter counter = new AsyncCounter();
                    counter.PrefixText     = "Rewind: ";
                    counter.PrintType      = "Game";
                    counter.ForceCounter   = true;
                    counter.HighlightTime  = 3100;
                    counter.HighlightColor = 0x055A;
                    counter.Step           = 500;
                    counter.MaxTries       = 12;
                    counter.StopMessage    = "You was ported back in time";
                    counter.StopMethod     = Hiding.IsHidden;
                    counter.RunComplete   += Counter_RunComplete;
                    counter.Run();
                }
            }
            else
            {
                World.Player.PrintMessage("Nemas artefakt", MessageType.Warning);
            }
        }
Exemplo n.º 6
0
        public void TrainAlchemyMag(string name, string quality)
        {
            Game.PrintMessage("TrainAlchemyMag");
            Potion        potion = PotionCollection.Potions.GetItemByName(name);
            PotionQuality pq     = Potion.ParsePQOrDefault(quality, PotionQuality.Lesser);

            Game.PrintMessage("Vyber zdrojovy konterjner s regy:");
            UOItem container = new UOItem(UIManager.TargetObject());

            ItemHelper.EnsureContainer(container);


            decimal okCount = 0;
            decimal count   = 0;

            while (!UO.Dead &&
                   World.Player.Backpack.AllItems.FindType(Reagent.Nightshade.Graphic, Reagent.Nightshade.Color).Exist&&
                   World.Player.Backpack.AllItems.FindType(Reagent.BlackPearl.Graphic, Reagent.BlackPearl.Color).Exist
                   )
            {
                while (World.Player.Mana > 10)
                {
                    if (World.Player.Hits < 40)
                    {
                        while (World.Player.Hits < World.Player.Strenght)
                        {
                            UOItem banda = World.Ground.FindType(0x0E21);//bandy
                            if (!banda.Exist)
                            {
                                return;
                            }

                            UO.WaitTargetSelf();
                            banda.Use();
                            Game.Wait(2500);
                        }
                    }

                    UO.Cast(StandardSpell.MagicArrow, Aliases.Self);
                    Game.Wait(1500);
                }

                while (World.Player.Hits < World.Player.Strenght)
                {
                    UOItem banda = World.Ground.FindType(0x0E21);//bandy
                    if (!banda.Exist)
                    {
                        break;
                    }

                    UO.WaitTargetSelf();
                    banda.Use();
                    Game.Wait(2500);
                }

                //UOItem mrKad = new UOItem(World.Player.Backpack.Items.FindType(Potion.KadGraphic, Potion.ManaRefresh.TopKadColor));
                //UOItem tmrKad = new UOItem(World.Player.Backpack.Items.FindType(Potion.KadGraphic, Potion.TotalManaRefresh.TopKadColor));
                //if (mrKad.Exist || tmrKad.Exist)
                //{
                //  Game.CurrentGame.CurrentPlayer.GetSkillInstance<Alchemy>().DrinkPotion("Total Mana Refresh");
                //  Game.Wait();
                //}
                //else
                {
                    while (GetMixureReagent(container, potion, pq) && World.Player.Mana < World.Player.Intelligence)
                    {
                        FillKadRecursive(potion, pq);
                        if (!MixurePotion(potion, pq))
                        {
                            break;
                        }
                        else
                        {
                            count++;
                            if (Journal.Contains(true, "You pour"))
                            {
                                okCount++;
                            }

                            decimal okDivide  = (okCount / count);
                            decimal okPerc    = okDivide * 100;
                            int     regAmount = potion.GetAmountOrDefault(pq);


                            decimal pricePerPcs = (1 / (okDivide > 0 ? (okCount / count) : 1)) * (decimal)regAmount * 5.0m;//

                            Game.PrintMessage("Ks: " + okCount + " / " + String.Format("{0:n} %", okPerc) + " Prc: " + String.Format("{0:n} gp", pricePerPcs));
                        }
                    }
                }
            }
            Game.PrintMessage("TrainAlchemyMag END");
        }
Exemplo n.º 7
0
        //---------------------------------------------------------------------------------------------

        protected bool BezVylozit()
        {
            if (this.ContainerPosition != null)
            {
                UO.Print("BezVylozit");

                if (this.Robot.GoTo(this.ContainerPosition, this.ContainerDistance))
                {
                    Serial container;

                    if (this.ContainerLayer == Layer.Bank)
                    {
                        UO.Say("Bank");
                        Game.Wait();
                        container = World.Player.Layers[this.ContainerLayer];
                    }
                    else
                    {
                        container = this.Container;
                    }

                    UOItem mainCont = new UOItem(container);
                    ItemHelper.EnsureContainer(mainCont);
                    Game.Wait(250);
                    UO.Backpack.Use();
                    Game.Wait(250);

                    Serial dropContainer = container;
                    if (this.InnerContainer != null)
                    {
                        dropContainer = this.InnerContainer;
                    }

                    UOItem ingot = new UOItem(Serial.Invalid);
                    while (dropContainer.IsValid && ((ingot = FindLog(UO.Backpack.Items)).Exist))
                    {
                        ingot.Move(100, dropContainer);
                        Game.Wait();
                    }

                    Game.Wait();

                    bool opened = false;
                    while (World.Player.Backpack.AllItems.Count(NastrojGraphic) <= this.NastrojLoad)
                    {
                        if (!opened)
                        {
                            ItemHelper.OpenContainerRecursive(container);
                            Game.Wait();
                            opened = true;
                        }
                        if (mainCont.AllItems.FindType(NastrojGraphic).Exist)
                        {
                            mainCont.AllItems.FindType(NastrojGraphic).Move(1, World.Player.Backpack);
                            Game.Wait();
                        }
                        else
                        {
                            break;
                        }
                    }

                    if (this.ContainerPosition.Count > 1)
                    {
                        List <IUOPosition> reverse = new List <IUOPosition>();
                        reverse.AddRange(this.ContainerPosition.ToArray());
                        reverse.Reverse();

                        this.Robot.GoTo(reverse, this.ContainerDistance);
                    }

                    return(this.BezLast());
                }
                else
                {
                    UO.Print("BezVylozit - !GoTo ContainerPosition");
                }
            }
            else
            {
                UO.Print("BezVylozit - ContainerPosition == null");
            }

            return(false);
        }
Exemplo n.º 8
0
        public void CopyKeys(int copiesNum)
        {
            Game.PrintMessage("Vyber kontejner s Blank klici a key ringy:");
            UOItem blankBag = new UOItem(UIManager.TargetObject());

            Game.PrintMessage("Pytlik nebo Key ring k okopirovani:");
            UOItem toCopyBag = new UOItem(UIManager.TargetObject());

            ItemHelper.EnsureContainer(blankBag);

            int blankCount   = blankBag.Items.Count(ItemLibrary.BlankMagicKey.Graphic);
            int keyRingCount = blankBag.Items.Count(ItemLibrary.KeyRing0.Graphic);

            UOItemExtInfo extInfo = ItemHelper.GetItemExtInfo(toCopyBag, null);

            int  toCopyCount     = extInfo.Success ? extInfo.Charges.GetValueOrDefault() : toCopyBag.Items.Count(ItemLibrary.BlankMagicKey.Graphic);
            bool sourceIsKeyRing = false;

            if (keyRingCount < copiesNum)
            {
                Game.PrintMessage("Neni dostatek Key ringu.");
                return;
            }

            if (blankCount < (copiesNum * toCopyCount))
            {
                Game.PrintMessage("Neni dostatek Blank Keys.");
                return;
            }

            List <UOItem> originals    = new List <UOItem>();
            List <Serial> keyRingItems = new List <Serial>();



            if (
                toCopyBag.Graphic == ItemLibrary.KeyRing1.Graphic ||
                toCopyBag.Graphic == ItemLibrary.KeyRing2.Graphic ||
                toCopyBag.Graphic == ItemLibrary.KeyRing3.Graphic)
            {
                sourceIsKeyRing = true;
                List <Serial> saveState = ItemHelper.ContainerState(World.Player.Backpack);
                UO.WaitTargetObject(toCopyBag);
                toCopyBag.Use();
                Game.Wait();

                keyRingItems = ItemHelper.ContainerStateDiff(saveState, ItemHelper.ContainerState(World.Player.Backpack));

                foreach (var ser in keyRingItems)
                {
                    UOItem itm = new UOItem(ser);
                    if (itm.Graphic == ItemLibrary.BlankMagicKey.Graphic && itm.Color == ItemLibrary.BlankMagicKey.Color)
                    {
                        originals.Add(itm);
                    }
                }
            }
            else
            {
                ItemHelper.EnsureContainer(toCopyBag);
                originals.AddRange(toCopyBag.Items.Where(itm => itm.Graphic == ItemLibrary.BlankMagicKey.Graphic && itm.Color == ItemLibrary.BlankMagicKey.Color).ToArray());
            }

            toCopyCount = originals.Count;

            Game.PrintMessage(String.Format("Ke kopirovani: {0}, prazdnych: {1}/{2}", toCopyCount, blankCount, keyRingCount));

            for (int i = 0; i < copiesNum; i++)
            {
                UOItem emptyKeyRing = blankBag.Items.FindType(ItemLibrary.KeyRing0.Graphic);
                if (emptyKeyRing.Move(1, World.Player.Backpack))
                {
                    Game.Wait();

                    foreach (var orig in originals)
                    {
                        UOItem empty = blankBag.Items.FindType(ItemLibrary.BlankMagicKey.Graphic);

                        if (empty.Move(1, World.Player.Backpack))
                        {
                            Game.Wait();
                            UO.WaitTargetObject(empty);
                            orig.Use();
                            Game.Wait();

                            if (empty.Move(1, emptyKeyRing))
                            {
                                Game.Wait();
                            }
                        }
                    }
                }
            }

            if (sourceIsKeyRing)
            {
                Game.PrintMessage("Vracim klice");
                foreach (var ser in keyRingItems)
                {
                    UOItem itm = new UOItem(ser);
                    itm.Move(1, toCopyBag);
                    Game.Wait();
                }
            }

            Game.PrintMessage("KOnec.");
        }
Exemplo n.º 9
0
        public static void MakeVlasce()
        {
            UO.Print("Vyber container s matrosem:");
            UOItem containerFrom = new UOItem(UIManager.TargetObject());

            ItemHelper.EnsureContainer(containerFrom);

            if (containerFrom.Exist)
            {
                while (containerFrom.Items.FindType(Thread.Graphic, Thread.Color).Amount > 4 && containerFrom.Items.FindType(IronWire.Graphic, IronWire.Color).Amount > 2)
                {
                    if (UO.Backpack.Items.FindType(Thread.Graphic, Thread.Color).Amount < 4)
                    {
                        UO.Backpack.Items.FindType(Vlasec.Graphic, Vlasec.Color).Move(100, containerFrom);
                        Game.Wait();
                        containerFrom.Items.FindType(Thread.Graphic, Thread.Color).Move(80, UO.Backpack);
                        Game.Wait();
                    }

                    if (UO.Backpack.Items.FindType(IronWire.Graphic, IronWire.Color).Amount < 2)
                    {
                        containerFrom.Items.FindType(IronWire.Graphic, IronWire.Color).Move(40, UO.Backpack);
                        Game.Wait();
                    }

                    while (UO.Backpack.Items.FindType(IronWire.Graphic, IronWire.Color).Amount >= 2 && UO.Backpack.Items.Count(IronString.Graphic, IronString.Color) < 2)
                    {
                        string[]           menus = new string[] { "Tinkering", "Wires", "Wires", "Iron String" };
                        JournalEventWaiter jew   = new JournalEventWaiter(true, "You put the", "Tinkering failed");
                        UO.WaitMenu(menus);
                        UOItem tools = UO.Backpack.Items.FindType(TinkersTools);
                        if (tools.Exist)
                        {
                            tools.Use();
                            jew.Wait(7500);
                            if (Journal.Contains(true, "You can't make anything with what you have"))
                            {
                                Journal.Clear();
                                break;
                            }
                        }
                        else
                        {
                            UO.Print("Nejsou toolsy.");
                            break;
                        }
                    }

                    if (UO.Backpack.Items.FindType(Thread.Graphic, Thread.Color).Amount >= 4 && UO.Backpack.Items.Count(IronString.Graphic, IronString.Color) >= 2)
                    {
                        JournalEventWaiter jew = new JournalEventWaiter(true, "You put the", "Tinkering failed");
                        UO.WaitMenu("Tinkering", "Wires", "Wires", "Vlasec");
                        UOItem tools = UO.Backpack.Items.FindType(TinkersTools);
                        if (tools.Exist)
                        {
                            tools.Use();
                            jew.Wait(7500);
                            if (Journal.Contains(true, "You can't make anything with what you have"))
                            {
                                Journal.Clear();
                                break;
                            }
                        }
                        else
                        {
                            UO.Print("Nejsou toolsy.");
                            break;
                        }
                    }
                }
            }

            Game.PrintMessage("Konec make vlasce");
        }
Exemplo n.º 10
0
        public void CopyKeys(int copiesNum)
        {
            Game.PrintMessage("Vyber kontejner s Blank klici a key ringy:");
            UOItem blankBag = new UOItem(UIManager.TargetObject());

            Game.PrintMessage("Pytlik nebo Key ring k okopirovani:");
            UOItem toCopyBag = new UOItem(UIManager.TargetObject());

            Game.PrintMessage("Pytlik kam davat klice:");
            UOItem targetBag = new UOItem(UIManager.TargetObject());

            ItemHelper.EnsureContainer(blankBag);

            int blankCount   = blankBag.Items.Count(ItemLibrary.BlankMagicKey.Graphic);
            int keyRingCount = blankBag.Items.Count(ItemLibrary.KeyRing0.Graphic);

            UOItemExtInfo extInfo = ItemHelper.GetItemExtInfo(toCopyBag, null);

            int  toCopyCount     = extInfo.Success ? extInfo.Charges.GetValueOrDefault() : toCopyBag.Items.Count(ItemLibrary.BlankMagicKey.Graphic);
            bool sourceIsKeyRing = false;

            if (keyRingCount > 0 && keyRingCount < copiesNum)
            {
                Game.PrintMessage("Neni dostatek Key ringu.");
                return;
            }

            if (blankCount < (copiesNum * toCopyCount))
            {
                Game.PrintMessage("Neni dostatek Blank Keys.");
                return;
            }

            List <UOItem> originals    = new List <UOItem>();
            List <Serial> keyRingItems = new List <Serial>();



            if (
                toCopyBag.Graphic == ItemLibrary.KeyRing1.Graphic ||
                toCopyBag.Graphic == ItemLibrary.KeyRing2.Graphic ||
                toCopyBag.Graphic == ItemLibrary.KeyRing3.Graphic)
            {
                sourceIsKeyRing = true;
                List <Serial> saveState = ItemHelper.ContainerState(World.Player.Backpack);
                UO.WaitTargetObject(toCopyBag);
                toCopyBag.Use();
                Game.Wait();

                keyRingItems = ItemHelper.ContainerStateDiff(saveState, ItemHelper.ContainerState(World.Player.Backpack));

                foreach (var ser in keyRingItems)
                {
                    UOItem itm = new UOItem(ser);
                    if (itm.Graphic == ItemLibrary.BlankMagicKey.Graphic && itm.Color == ItemLibrary.BlankMagicKey.Color)
                    {
                        originals.Add(itm);
                    }
                }
            }
            else
            {
                ItemHelper.EnsureContainer(toCopyBag);
                originals.AddRange(toCopyBag.Items.Where(itm => itm.Graphic == ItemLibrary.BlankMagicKey.Graphic && itm.Color == ItemLibrary.BlankMagicKey.Color).ToArray());
            }

            toCopyCount = originals.Count;

            Game.PrintMessage(String.Format("Ke kopirovani: {0}, prazdnych: {1}/{2}", toCopyCount, blankCount, keyRingCount));

            for (int i = 0; i < copiesNum; i++)
            {
                UOItem emptyKeyRing = blankBag.Items.FindType(ItemLibrary.KeyRing0.Graphic);
                if (keyRingCount == 0 || emptyKeyRing.Move(1, World.Player.Backpack))
                {
                    Game.Wait();
                    int counter = 0;
                    foreach (var orig in originals)
                    {
                        string origName = "";
                        if (orig.Container != World.Player.Backpack)
                        {
                            orig.Move(1, World.Player.Backpack);
                            Game.Wait();
                            ItemHelper.EnsureItem(orig);
                        }
                        origName = (orig.Name + String.Empty).Replace("Key to:", "");

                        if (String.IsNullOrEmpty(origName))
                        {
                            origName = "Klicek " + (counter + 1);
                        }

                        UOItem empty = blankBag.Items.FindType(ItemLibrary.BlankMagicKey.Graphic);

                        if (empty.Move(1, World.Player.Backpack))
                        {
                            Game.Wait();
                            UO.WaitTargetObject(empty);
                            orig.Use();
                            Game.Wait();

                            RenameKey(empty, origName);
                            Game.Wait();

                            if (emptyKeyRing.Exist && empty.Move(1, emptyKeyRing))
                            {
                                Game.Wait();
                            }
                            else if (targetBag.Exist && empty.Move(1, targetBag))
                            {
                                Game.Wait();
                            }
                        }
                        counter++;
                    }
                }
            }

            //     Serial: 0x4018E69C  Name: "Key to:calebovo novy"  Position: 62.119.0  Flags: 0x0000  Color: 0x0000  Graphic: 0x1012  Amount: 1  Layer: None Container: 0x4032F802



            if (sourceIsKeyRing)
            {
                Game.PrintMessage("Vracim klice");
                foreach (var ser in keyRingItems)
                {
                    UOItem itm = new UOItem(ser);
                    itm.Move(1, toCopyBag);
                    Game.Wait();
                }
            }
            else
            {
                foreach (var orig in originals)
                {
                    if (orig.Container != toCopyBag.Serial)
                    {
                        orig.Move(1, toCopyBag.Serial);
                        Game.Wait();
                    }
                }
            }

            Game.PrintMessage("KOnec.");
        }
Exemplo n.º 11
0
        public static void MakeVlasce()
        {
            UO.Print(0x456, "Start");
            UOItem backpack = World.Player.Backpack;

            UO.Print("Vyber container s matrosem:");
            UOItem containerFrom = new UOItem(UIManager.TargetObject());

            ItemHelper.EnsureContainer(containerFrom);
            //3 odloz drevo
            UO.Backpack.AllItems.FindType(Log.Graphic, Log.Color).Move(100, containerFrom);
            Game.Wait();
            //4 zober 25 dreva
            containerFrom.AllItems.FindType(Log.Graphic, Log.Color).Move(10, backpack);
            Game.Wait();

            UO.Print(0x456, "Container check");
            if (containerFrom.Exist)
            {
                UO.Print(0x456, "Threads check: " + containerFrom.AllItems.FindType(Thread.Graphic, Thread.Color).Amount);
                while (containerFrom.AllItems.FindType(Thread.Graphic, Thread.Color).Amount > 4)
                {
                    //1 odloz ingoty
                    UO.Backpack.AllItems.FindType(IronIngot.Graphic, IronIngot.Color).Move(100, containerFrom);
                    Game.Wait();
                    //2 zober si 10 ingotov
                    containerFrom.AllItems.FindType(IronIngot.Graphic, IronIngot.Color).Move(50, backpack);
                    Game.Wait();

                    while (
                        containerFrom.AllItems.Count(IronString.Graphic, IronString.Color) > 4 &&
                        backpack.AllItems.Count(IronString.Graphic, IronString.Color) < 2)
                    {
                        containerFrom.AllItems.FindType(IronString.Graphic, IronString.Color).Move(1, backpack);
                        Game.Wait();
                    }

                    while (backpack.AllItems.Count(IronString.Graphic, IronString.Color) < 2)
                    {
                        while (backpack.AllItems.Count(IronWire.Graphic, IronWire.Color) < 1)
                        {
                            containerFrom.AllItems.FindType(IronIngot.Graphic, IronIngot.Color).Move(2, backpack);
                            Game.Wait();
                            backpack.AllItems.FindType(IronIngot.Graphic, IronIngot.Color).Move(1, containerFrom);
                            Game.Wait();
                            MakeOneWire();
                            Game.Wait();
                        }
                        MakeOneString();
                        Game.Wait();
                    }

                    if (UO.Backpack.AllItems.FindType(Thread.Graphic, Thread.Color).Amount < 4)
                    {
                        containerFrom.AllItems.FindType(Thread.Graphic, Thread.Color).Move(4, UO.Backpack);
                        Game.Wait();
                    }
                    MakeOneVlasec();

                    if (backpack.AllItems.Count(Vlasec.Graphic, Vlasec.Color) > 0)
                    {
                        UO.Print(0x456, "Vlasce: " + containerFrom.AllItems.FindType(Vlasec.Graphic, Vlasec.Color).Amount);
                        UO.Print(0x456, "Thready: " + containerFrom.AllItems.FindType(Thread.Graphic, Thread.Color).Amount);
                        backpack.AllItems.FindType(Vlasec.Graphic, Vlasec.Color).Move(1000, containerFrom);
                    }
                }
            }
        }