Exemple #1
0
        public override void Load(IController hud)
        {
            base.Load(hud);

            _location = new int[] { 0, 15, 19 };

            _gems = new ISnoItem[5, 5];

            uint[] gemsIdx = { 2838965543, 3446938396, 4267641563, 3256663689, 1019190639,
                               2838965570, 3446938423, 4267641590, 3256663716, 1019190666 };

            for (uint y = 0; y < 5; y++)
            {
                for (uint x = 0; x < 4; x++)
                {
                    _gems[y, x] = Hud.Inventory.GetSnoItem(gemsIdx[y] + x);
                }
                _gems[y, 4] = Hud.Inventory.GetSnoItem(gemsIdx[5 + y]);
            }

            GemSpacing = 5f;
            GemSize    = 0.75f;

            GemInvTexture        = Hud.Texture.GetItemTexture(_gems[0, 4]);
            GemBackgroundTexture = Hud.Texture.InventorySlotTexture;

            GemQuantityFont = Hud.Render.CreateFont("tahoma", 10, 255, 255, 255, 255, true, false, 128, 0, 0, 0, true);

            GemBackgroundRect = new RectangleF((Hud.Window.Size.Width - GemInvTexture.Width * GemSize * 5f) * 0.5f, (Hud.Window.Size.Height - GemInvTexture.Height * GemSize * 5f) * 0.5f,
                                               (GemInvTexture.Width * GemSize + GemSpacing) * 6f, (GemInvTexture.Height * GemSize + GemSpacing) * 6f);
        }
Exemple #2
0
        private void DrawItem(ISnoItem snoItem, IPlayer player)
        {
            var portraitRect = player.PortraitUiElement.Rectangle;

            var itemRect = new System.Drawing.RectangleF(currentX, portraitRect.Y, Hud.Window.Size.Width * ItemRatio, Hud.Window.Size.Width * ItemRatio * 2);

            itemRect.Offset(0, currY);
            if (snoItem.ItemHeight == 1)
            {
                itemRect.Offset(0, currY);
                itemRect.Height /= 2;
            }

            var slotTexture = Hud.Texture.InventorySlotTexture;

            slotTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);

            if (Hud.Window.CursorInsideRect(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height))
            {
                var itemName = snoItem.NameLocalized;

                var power     = snoItem.LegendaryPower;
                var powerDesc = "";
                if (power != null)
                {
                    itemName += "\n\n";
                    powerDesc = power.DescriptionLocalized;
                    var patternBegin = powerDesc.IndexOf("{c_magic}");
                    if (patternBegin != -1)
                    {
                        var patternEnd = powerDesc.IndexOf("{/c}") != -1 ? powerDesc.IndexOf("{/c}") + 4 : powerDesc.IndexOf("{/c_magic}") + 10;
                        if (patternEnd != -1)
                        {
                            var toReplace   = powerDesc.Substring(patternBegin, patternEnd - patternBegin);
                            var replacement = toReplace.Contains("%") ? "X%" : "X";
                            powerDesc = powerDesc.Replace(toReplace, replacement);
                        }
                    }
                }

                Hud.Render.SetHint(itemName + powerDesc);
            }

            var backgroundTexture = snoItem.ItemHeight == 2 ? Hud.Texture.InventoryLegendaryBackgroundLarge : Hud.Texture.InventoryLegendaryBackgroundSmall;

            backgroundTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);

            var itemTexture = Hud.Texture.GetItemTexture(snoItem);

            if (itemTexture != null)
            {
                itemTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);
            }
            currentX += itemRect.Width;
        }
Exemple #3
0
        private long GetItemCount(ISnoItem snoItem)
        {
            switch (snoItem.Sno)
            {
            case 3931359676:
                return(Hud.Game.Me.Materials.ReusableParts);

            case 2709165134:
                return(Hud.Game.Me.Materials.ArcaneDust);

            case 3689019703:
                return(Hud.Game.Me.Materials.VeiledCrystal);

            case 2087837753:
                return(Hud.Game.Me.Materials.DeathsBreath);

            case 2073430088:
                return(Hud.Game.Me.Materials.ForgottenSoul);

            case 1948629088:
                return(Hud.Game.Me.Materials.KhanduranRune);

            case 1948629089:
                return(Hud.Game.Me.Materials.CaldeumNightShade);

            case 1948629090:
                return(Hud.Game.Me.Materials.ArreatWarTapestry);

            case 1948629091:
                return(Hud.Game.Me.Materials.CorruptedAngelFlesh);

            case 1948629092:
                return(Hud.Game.Me.Materials.WestmarchHolyWater);
            }

            var count = 0;

            foreach (var item in Hud.Inventory.ItemsInStash)
            {
                if (item.SnoItem == snoItem)
                {
                    count += (int)item.Quantity;
                }
            }

            foreach (var item in Hud.Inventory.ItemsInInventory)
            {
                if (item.SnoItem == snoItem)
                {
                    count += (int)item.Quantity;
                }
            }

            return(count);
        }
Exemple #4
0
 bool isEqual(ISnoItem left, ISnoItem right)
 {
     if (left != null && right != null)
     {
         return(left.Sno == right.Sno);
     }
     if (left == null && right == null)
     {
         return(true);
     }
     return(false);
 }
        public override void Load(IController hud)
        {
            base.Load(hud);

            _materialItems      = new ISnoItem[] { Hud.Inventory.GetSnoItem(3931359676), Hud.Inventory.GetSnoItem(2709165134), Hud.Inventory.GetSnoItem(3689019703), Hud.Inventory.GetSnoItem(2073430088), Hud.Inventory.GetSnoItem(2087837753) };
            _legendaryMaterials = new ISnoItem[] { Hud.Inventory.GetSnoItem(1948629088), Hud.Inventory.GetSnoItem(1948629089), Hud.Inventory.GetSnoItem(1948629090), Hud.Inventory.GetSnoItem(1948629091), Hud.Inventory.GetSnoItem(1948629092) };
            _otherStuff         = new ISnoItem[] { Hud.Inventory.GetSnoItem(1054965529), Hud.Inventory.GetSnoItem(2788723894), Hud.Inventory.GetSnoItem(2622355732), Hud.Inventory.GetSnoItem(1458185494), Hud.Inventory.GetSnoItem(2835237830) };

            MaterialCountFont = Hud.Render.CreateFont("tahoma", 8, 255, 255, 255, 255, false, false, false);

            _materialBackgroundImage = Hud.Texture.GetTexture("inventory_materials");
        }
Exemple #6
0
        private long CountItem(ISnoItem snoItem)
        {
            var count = 0;
            var Items = Hud.Game.Items.Where(i => _location.Contains((int)i.Location));

            foreach (var item in Items)
            {
                if (item.SnoItem == snoItem)
                {
                    count += item.Quantity > 0 ? (int)item.Quantity : 1;
                }
            }
            return(count);
        }
//-- End of Main function to generate the paint list

//-- Broken Promisses Buff part

        // I cant locate the texture of the buff itself(maybe the blizzard doesn't want to show the buff at all).
        // So I use the legendary item instead. It will locate the cube first if there is no then use the
        // inventory to find the ring on your finger.
        private ISnoItem FindBPRing()
        {
            ISnoItem item = Hud.Game.Me.CubeSnoItem3;

            if (item != null && BrokenPromissesSnoItemID == item.Sno)
            {
                return(item);
            }
            item = Hud.Inventory.GetSnoItem(BrokenPromissesSnoItemID);
            if (item != null)
            {
                return(item);
            }
            return(null);
        }
Exemple #8
0
        private void DrawKanaiItem(ISnoItem snoItem, System.Drawing.RectangleF portraitRect)
        {
            var inventoryRect = Hud.Inventory.InventoryMainUiElement.Rectangle;

            var itemRect = new System.Drawing.RectangleF(currentX, portraitRect.Y, Hud.Window.Size.Width * KanaiRatio, Hud.Window.Size.Width * KanaiRatio * 2);

            itemRect.Offset(0, YOffset);
            if (snoItem.ItemHeight == 1)
            {
                itemRect.Offset(0, YOffset);
                itemRect.Height /= 2;
            }

            var slotTexture = Hud.Texture.InventorySlotTexture;

            slotTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);

            if (Hud.Window.CursorInsideRect(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height))
            {
                var description = snoItem.NameLocalized;

                var power = snoItem.LegendaryPower;
                if (power != null)
                {
                    description += "\n\n" + power.DescriptionLocalized;
                }

                Hud.Render.SetHint(description);
            }

            var backgroundTexture = snoItem.ItemHeight == 2 ? Hud.Texture.InventoryLegendaryBackgroundLarge : Hud.Texture.InventoryLegendaryBackgroundSmall;

            backgroundTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);

            var itemTexture = Hud.Texture.GetItemTexture(snoItem);

            if (itemTexture != null)
            {
                itemTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);
            }
            currentX += itemRect.Width;
        }
        private void DrawKanaiItem(ISnoItem snoItem, int index)
        {
            var inventoryRect = Hud.Inventory.InventoryMainUiElement.Rectangle;

            var itemRect = Hud.Inventory.GetRectInInventory(0, 0, snoItem.ItemWidth, snoItem.ItemHeight);

            itemRect.Offset(index * inventoryRect.Width * 0.095f + inventoryRect.Width * 0.023f, -inventoryRect.Height * 0.502f);
            if (snoItem.ItemHeight == 1)
            {
                itemRect.Offset(0, itemRect.Height * 0.5f);
            }

            var slotTexture = Hud.Texture.InventorySlotTexture;

            slotTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);

            if (Hud.Window.CursorInsideRect(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height))
            {
                var description = snoItem.NameLocalized;

                var power = snoItem.LegendaryPower;
                if (power != null)
                {
                    description += "\n\n" + power.DescriptionLocalized;
                }

                Hud.Render.SetHint(description);
            }

            var backgroundTexture = snoItem.ItemHeight == 2 ? Hud.Texture.InventoryLegendaryBackgroundLarge : Hud.Texture.InventoryLegendaryBackgroundSmall;

            backgroundTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);

            var itemTexture = Hud.Texture.GetItemTexture(snoItem);

            if (itemTexture != null)
            {
                itemTexture.Draw(itemRect.X, itemRect.Y, itemRect.Width, itemRect.Height);
            }
        }
        private BuffPaintInfo GetBrokenPromissesPaintInfo()
        {
            var player = Hud.Game.Me;

            ISnoItem item = FindBPRing();

            if (item == null)
            {
                return(null);
            }

            var buff = player.Powers.GetBuff(ruleCalculatorBP.Rules[0].PowerSno);

            if (buff == null || !buff.Active)
            {
                return(null);
            }

            int index    = 2;          //I dont know why is 2, but it works on my computer.
            var timeLeft = buff.TimeLeftSeconds[index];

            // Here I only show icon while the 100% CHC is active
            if (timeLeft > 0)
            {
                ruleCalculatorBP.Rules[0].UseLegendaryItemTexture = item;
                ruleCalculatorBP.CalculatePaintInfo(player);
                if (ruleCalculatorBP.PaintInfoList.Count > 0)
                {
                    var info = ruleCalculatorBP.PaintInfoList[0];
                    if (timeLeft > 0)
                    {
                        info.TimeLeft = timeLeft;
                    }
                    return(info);
                }
            }
            return(null);
        }
Exemple #11
0
        private long CountGems(ISnoItem snoItem)
        {
            var count = 0;

            if (Barring)
            {
                foreach (var item in Hud.Inventory.ItemsInStash)
                {
                    if (item.SnoItem == snoItem)
                    {
                        count += (int)item.Quantity;
                    }
                }

                foreach (var item in Hud.Inventory.ItemsInInventory)
                {
                    if (item.SnoItem == snoItem)
                    {
                        count += (int)item.Quantity;
                    }
                }
            }
            else
            {
                var Items = Hud.Game.Items.Where(i => _location.Contains((int)i.Location));
                foreach (var item in Items)
                {
                    if (item.SnoItem == snoItem)
                    {
                        count += item.Quantity > 0 ? (int)item.Quantity : 1;
                    }
                }
            }

            return(count);
        }
Exemple #12
0
        public void PaintTopInGame(ClipState clipState)
        {
            deathsBreathCount        = Hud.Game.Me.Materials.DeathsBreath;
            reusablePartsCount       = Hud.Game.Me.Materials.ReusableParts;
            arcaneDustCount          = Hud.Game.Me.Materials.ArcaneDust;
            veiledCrystalCount       = Hud.Game.Me.Materials.VeiledCrystal;
            forgottenSoulCount       = Hud.Game.Me.Materials.ForgottenSoul;
            bloodShardCount          = Hud.Game.Me.Materials.BloodShard;
            khanduranRuneCount       = Hud.Game.Me.Materials.KhanduranRune;
            caldeumNightShadeCount   = Hud.Game.Me.Materials.CaldeumNightShade;
            arreatWarTapestryCount   = Hud.Game.Me.Materials.ArreatWarTapestry;
            corruptedAngelFleshCount = Hud.Game.Me.Materials.CorruptedAngelFlesh;
            westmarchHolyWaterCount  = Hud.Game.Me.Materials.WestmarchHolyWater;
            leoricsRegretCount       = Hud.Game.Me.Materials.LeoricsRegret;
            idolOfTerrorCount        = Hud.Game.Me.Materials.IdolOfTerror;
            vialOfPutridnessCount    = Hud.Game.Me.Materials.VialOfPutridness;
            heartOfFrightCount       = Hud.Game.Me.Materials.HeartOfFright;
            grkCount = Hud.Game.Me.Materials.GreaterRiftKeystone;

            int TotalBounties = 0;
            int Completed     = 0;
            var Bounties      = Hud.Game.Bounties;

            if (Bounties != null)
            {
                foreach (var Bounty in Bounties)
                {
                    TotalBounties++;
                    if (Bounty.State == QuestState.completed)
                    {
                        Completed++;
                    }
                }
            }
            BountiesCompletion = Completed;
            BountiesLeft       = (int)(TotalBounties - BountiesCompletion);


            var puzzleRingLoopCount     = 0;
            var bovineBardicheLoopCount = 0;

            foreach (var item in Hud.Inventory.ItemsInStash)
            {
                if (item.SnoItem.Sno == 2346057823)
                {
                    bovineBardicheLoopCount += (int)item.Quantity;                                 // Bovine Bardiche
                }
                if (item.SnoItem.Sno == 3106130529)
                {
                    puzzleRingLoopCount += (int)item.Quantity;                                 // Puzzle Ring
                }
            }

            foreach (var item in Hud.Inventory.ItemsInInventory)
            {
                if (item.SnoItem.Sno == 2346057823)
                {
                    bovineBardicheLoopCount += (int)item.Quantity;                                 // Bovine Bardiche
                }
                if (item.SnoItem.Sno == 3106130529)
                {
                    puzzleRingLoopCount += (int)item.Quantity;                                 // Puzzle Ring
                }
            }
            puzzleRingCount     = Math.Abs(puzzleRingLoopCount);
            bovineBardicheCount = Math.Abs(bovineBardicheLoopCount);

            var craftCountX = (Hud.Window.Size.Width / 2) - (Hud.Window.Size.Width / 48);
            var craftCountY = (Hud.Window.Size.Height / 2) - (Hud.Window.Size.Height / 6);

            if (Hud.Tracker.Session.ElapsedMilliseconds < 10000)
            {
                prevDeathsBreathCount        = deathsBreathCount;
                prevReusablePartsCount       = reusablePartsCount;
                prevArcaneDustCount          = arcaneDustCount;
                prevVeiledCrystalCount       = veiledCrystalCount;
                prevForgottenSoulCount       = forgottenSoulCount;
                prevBloodShardCount          = bloodShardCount;
                prevGrkCount                 = grkCount;
                prevBovineBardicheCount      = bovineBardicheCount;
                prevPuzzleRingCount          = puzzleRingCount;
                prevKhanduranRuneCount       = khanduranRuneCount;
                prevCaldeumNightShadeCount   = caldeumNightShadeCount;
                prevArreatWarTapestryCount   = arreatWarTapestryCount;
                prevCorruptedAngelFleshCount = corruptedAngelFleshCount;
                prevWestmarchHolyWaterCount  = westmarchHolyWaterCount;
                prevLeoricsRegretCount       = leoricsRegretCount;
                prevIdolOfTerrorCount        = idolOfTerrorCount;
                prevVialOfPutridnessCount    = vialOfPutridnessCount;
                prevHeartOfFrightCount       = heartOfFrightCount;
                prevBountiesCompletion       = BountiesCompletion;
                prevGrkCount                 = grkCount;
            }

            CraftCountDecorator.TextFont.Opacity     = opacity;
            BountiesDecorator.TextFont.Opacity       = opacity;
            RiftCompletionDecorator.TextFont.Opacity = opacity;

            if (deathsBreathCount > prevDeathsBreathCount || deathsBreathCount < prevDeathsBreathCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevDeathsBreathCount = deathsBreathCount;
                }

                itemSno = 2087837753;
                var DeathsBreath = Hud.Inventory.GetSnoItem(itemSno);
                var texture      = Hud.Texture.GetItemTexture(DeathsBreath);
                craftCount = deathsBreathCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (reusablePartsCount > prevReusablePartsCount || reusablePartsCount < prevReusablePartsCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevReusablePartsCount = reusablePartsCount;
                }

                itemSno = 3931359676;
                var ReusableParts = Hud.Inventory.GetSnoItem(itemSno);
                var texture       = Hud.Texture.GetItemTexture(ReusableParts);
                craftCount = reusablePartsCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (arcaneDustCount > prevArcaneDustCount || arcaneDustCount < prevArcaneDustCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevArcaneDustCount = arcaneDustCount;
                }

                itemSno = 2709165134;
                var ArcaneDust = Hud.Inventory.GetSnoItem(itemSno);
                var texture    = Hud.Texture.GetItemTexture(ArcaneDust);
                craftCount = arcaneDustCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (veiledCrystalCount > prevVeiledCrystalCount || veiledCrystalCount < prevVeiledCrystalCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevVeiledCrystalCount = veiledCrystalCount;
                }

                itemSno = 3689019703;
                var VeiledCrystal = Hud.Inventory.GetSnoItem(itemSno);
                var texture       = Hud.Texture.GetItemTexture(VeiledCrystal);
                craftCount = veiledCrystalCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (forgottenSoulCount > prevForgottenSoulCount || forgottenSoulCount < prevForgottenSoulCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevForgottenSoulCount = forgottenSoulCount;
                }

                itemSno = 2073430088;
                var ForgottenSoul = Hud.Inventory.GetSnoItem(itemSno);
                var texture       = Hud.Texture.GetItemTexture(ForgottenSoul);
                craftCount = forgottenSoulCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (bloodShardCount > prevBloodShardCount || bloodShardCount < prevBloodShardCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevBloodShardCount = bloodShardCount;
                }

                itemSno = 2603730171;
                var BloodShard = Hud.Inventory.GetSnoItem(itemSno);
                var texture    = Hud.Texture.GetItemTexture(BloodShard);
                craftCount = bloodShardCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (grkCount > prevGrkCount || grkCount < prevGrkCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevGrkCount = grkCount;
                }

                itemSno = 2835237830;
                var grk     = Hud.Inventory.GetSnoItem(itemSno);
                var texture = Hud.Texture.GetItemTexture(grk);
                craftCount = grkCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (bovineBardicheCount > prevBovineBardicheCount || bovineBardicheCount < prevBovineBardicheCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevBovineBardicheCount = bovineBardicheCount;
                }

                itemSno = 2346057823;
                var bovineBardiche = Hud.Inventory.GetSnoItem(itemSno);
                var texture        = Hud.Texture.GetItemTexture(bovineBardiche);
                craftCount = bovineBardicheCount;
                itemSizeX  = 23f;
                itemSizeY  = 46f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (puzzleRingCount > prevPuzzleRingCount || puzzleRingCount < prevPuzzleRingCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevPuzzleRingCount = puzzleRingCount;
                }

                itemSno = 3106130529;
                var puzzleRing = Hud.Inventory.GetSnoItem(itemSno);
                var texture    = Hud.Texture.GetItemTexture(puzzleRing);
                craftCount = puzzleRingCount;
                itemSizeX  = 33f;
                itemSizeY  = 33f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (khanduranRuneCount > prevKhanduranRuneCount || khanduranRuneCount < prevKhanduranRuneCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevKhanduranRuneCount = khanduranRuneCount;
                }

                itemSno = 1948629088;
                var khanduranRune = Hud.Inventory.GetSnoItem(itemSno);
                var texture       = Hud.Texture.GetItemTexture(khanduranRune);
                craftCount = khanduranRuneCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (caldeumNightShadeCount > prevCaldeumNightShadeCount || caldeumNightShadeCount < prevCaldeumNightShadeCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevCaldeumNightShadeCount = caldeumNightShadeCount;
                }

                itemSno = 1948629089;
                var caldeumNightShade = Hud.Inventory.GetSnoItem(itemSno);
                var texture           = Hud.Texture.GetItemTexture(caldeumNightShade);
                craftCount = caldeumNightShadeCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (arreatWarTapestryCount > prevArreatWarTapestryCount || arreatWarTapestryCount < prevArreatWarTapestryCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevArreatWarTapestryCount = arreatWarTapestryCount;
                }

                itemSno = 1948629090;
                var arreatWarTapestry = Hud.Inventory.GetSnoItem(itemSno);
                var texture           = Hud.Texture.GetItemTexture(arreatWarTapestry);
                craftCount = arreatWarTapestryCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (corruptedAngelFleshCount > prevCorruptedAngelFleshCount || corruptedAngelFleshCount < prevCorruptedAngelFleshCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevCorruptedAngelFleshCount = corruptedAngelFleshCount;
                }

                itemSno = 1948629091;
                var corruptedAngelFlesh = Hud.Inventory.GetSnoItem(itemSno);
                var texture             = Hud.Texture.GetItemTexture(corruptedAngelFlesh);
                craftCount = corruptedAngelFleshCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (westmarchHolyWaterCount > prevWestmarchHolyWaterCount || westmarchHolyWaterCount < prevWestmarchHolyWaterCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevWestmarchHolyWaterCount = westmarchHolyWaterCount;
                }

                itemSno = 1948629092;
                var westmarchHolyWater = Hud.Inventory.GetSnoItem(itemSno);
                var texture            = Hud.Texture.GetItemTexture(westmarchHolyWater);
                craftCount = westmarchHolyWaterCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (leoricsRegretCount > prevLeoricsRegretCount || leoricsRegretCount < prevLeoricsRegretCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevLeoricsRegretCount = leoricsRegretCount;
                }

                itemSno = 1102953247;
                var leoricsRegret = Hud.Inventory.GetSnoItem(itemSno);
                var texture       = Hud.Texture.GetItemTexture(leoricsRegret);
                craftCount = leoricsRegretCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (idolOfTerrorCount > prevIdolOfTerrorCount || idolOfTerrorCount < prevIdolOfTerrorCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevIdolOfTerrorCount = idolOfTerrorCount;
                }

                itemSno = 2670343450;
                var idolOfTerror = Hud.Inventory.GetSnoItem(itemSno);
                var texture      = Hud.Texture.GetItemTexture(idolOfTerror);
                craftCount = idolOfTerrorCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (vialOfPutridnessCount > prevVialOfPutridnessCount || vialOfPutridnessCount < prevVialOfPutridnessCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevVialOfPutridnessCount = vialOfPutridnessCount;
                }

                itemSno = 2029265596;
                var vialOfPutridness = Hud.Inventory.GetSnoItem(itemSno);
                var texture          = Hud.Texture.GetItemTexture(vialOfPutridness);
                craftCount = vialOfPutridnessCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (heartOfFrightCount > prevHeartOfFrightCount || heartOfFrightCount < prevHeartOfFrightCount)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevHeartOfFrightCount = heartOfFrightCount;
                }

                itemSno = 3336787100;
                var heartOfFright = Hud.Inventory.GetSnoItem(itemSno);
                var texture       = Hud.Texture.GetItemTexture(heartOfFright);
                craftCount = heartOfFrightCount;
                itemSizeX  = 23f;
                itemSizeY  = 23f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                CraftCountDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if (BountiesCompletion > prevBountiesCompletion || BountiesCompletion < prevBountiesCompletion)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevBountiesCompletion = BountiesCompletion;
                }

                itemSno = 0;
                var texture = Hud.Texture.GetTexture(2854193535);
                itemSizeX = 34f;
                itemSizeY = 34f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                BountiesDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else if ((Hud.Game.RiftPercentage >= 23 && Hud.Game.RiftPercentage <= 27 || Hud.Game.RiftPercentage >= 48 && Hud.Game.RiftPercentage <= 52 || Hud.Game.RiftPercentage >= 73 && Hud.Game.RiftPercentage <= 77 || Hud.Game.RiftPercentage >= 90 && Hud.Game.RiftPercentage < 100) && prevRiftPercentage != Hud.Game.RiftPercentage)
            {
                if (opacity < 1.0f)
                {
                    opacity += 0.01f; itemOpacity += 0.01f; craftCountY = (int)(craftCountY - opacity * 100);
                }
                else
                {
                    prevRiftPercentage = Hud.Game.RiftPercentage;
                }

                itemSno = uint.MaxValue;
                var texture = Hud.Texture.GetTexture(3153276977);
                itemSizeX = 40f;
                itemSizeY = 40f;
                texture.Draw(craftCountX - 24, craftCountY + 12, itemSizeX, itemSizeY, itemOpacity);
                RiftCompletionDecorator.Paint(craftCountX, craftCountY, 50f, 50f, HorizontalAlign.Left);
            }
            else
            {
                if (opacity >= 0f)
                {
                    opacity     -= 0.010f;
                    itemOpacity -= 0.010f;
                    ISnoItem Fadeout = null;
                    ITexture texture = null;
                    if (itemSno == 0)
                    {
                        texture = Hud.Texture.GetTexture(2854193535);
                    }
                    else if (itemSno == uint.MaxValue)
                    {
                        texture = Hud.Texture.GetTexture(3153276977);
                    }
                    else
                    {
                        Fadeout = Hud.Inventory.GetSnoItem(itemSno); texture = Hud.Texture.GetItemTexture(Fadeout);
                    }

                    texture.Draw(craftCountX - 24, craftCountY + 12 - 100, itemSizeX, itemSizeY, itemOpacity);
                    if (itemSno == 0)
                    {
                        BountiesDecorator.Paint(craftCountX, craftCountY - 100, 50f, 50f, HorizontalAlign.Left);
                    }
                    else if (itemSno == uint.MaxValue)
                    {
                        RiftCompletionDecorator.Paint(craftCountX, craftCountY - 100, 50f, 50f, HorizontalAlign.Left);
                    }
                    else
                    {
                        CraftCountDecorator.Paint(craftCountX, craftCountY - 100, 50f, 50f, HorizontalAlign.Left);
                    }
                }
            }
        }
 public static void Init(IController hud, ISnoItem defaultItem)
 {
     Hud         = hud;
     DefaultItem = defaultItem;
 }
Exemple #14
0
        private long GetItemCount(ISnoItem snoItem)
        {
            switch (snoItem.Sno)
            {
            case 3931359676:
                return(Hud.Game.Me.Materials.ReusableParts);

            case 2709165134:
                return(Hud.Game.Me.Materials.ArcaneDust);

            case 3689019703:
                return(Hud.Game.Me.Materials.VeiledCrystal);

            case 2087837753:
                return(Hud.Game.Me.Materials.DeathsBreath);

            case 2073430088:
                return(Hud.Game.Me.Materials.ForgottenSoul);

            case 1948629088:
                return(Hud.Game.Me.Materials.KhanduranRune);

            case 1948629089:
                return(Hud.Game.Me.Materials.CaldeumNightShade);

            case 1948629090:
                return(Hud.Game.Me.Materials.ArreatWarTapestry);

            case 1948629091:
                return(Hud.Game.Me.Materials.CorruptedAngelFlesh);

            case 1948629092:
                return(Hud.Game.Me.Materials.WestmarchHolyWater);

            case 1102953247:
                return(Hud.Game.Me.Materials.LeoricsRegret);

            case 2029265596:
                return(Hud.Game.Me.Materials.VialOfPutridness);

            case 2670343450:
                return(Hud.Game.Me.Materials.IdolOfTerror);

            case 3336787100:
                return(Hud.Game.Me.Materials.HeartOfFright);

            case 2835237830:
                return(Hud.Game.Me.Materials.GreaterRiftKeystone);
            }

            var count = 0;

            foreach (var item in Hud.Inventory.ItemsInStash)
            {
                if (item.SnoItem == snoItem)
                {
                    count += (int)item.Quantity;
                }
            }

            foreach (var item in Hud.Inventory.ItemsInInventory)
            {
                if (item.SnoItem == snoItem)
                {
                    count += (int)item.Quantity;
                }
            }

            return(count);
        }