Rend menu

User Tag List

Thread: Rend

Results 1 to 8 of 8
  1. #1
    adventuremode's Avatar Member
    Reputation
    1
    Join Date
    Nov 2017
    Posts
    9
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

    Rend

    2018.02.16 00:51:59.936 error while initializing plugins
    2018.02.16 00:51:59.941 c:\Users\Name\Google\Earth\plugins\glq\monsterscountplugin.cs(90,33) : error CS1002: ; expected
    2018.02.16 00:51:59.945 c:\Users\Name\Google\Earth\plugins\glq\monsterscountplugin.cs(246,29) : error CS1061: 'Turbo.Plugins.IMonster' does not contain a definition for 'rend' and no extension method 'rend' accepting a first argument of type 'Turbo.Plugins.IMonster' could be found (are you missing a using directive or an assembly reference?)


    Code:
    using SharpDX.DirectInput;
    using System.Linq;
    using System;
    using System.Collections.Generic;
    using Turbo.Plugins.Default;
    
    namespace Turbo.Plugins.glq
    {
        using System.Text;
    
        // by 我想静静 黑白灰 小米 Jack Céparou
        public class MonstersCountPlugin : BasePlugin, IInGameTopPainter, IInGameWorldPainter, IKeyEventHandler
        {
            public IFont DefaultTextFont { get; set; }
            public IFont OrangeTextFont { get; set; }
            public IFont RedTextFont { get; set; }
            public WorldDecoratorCollection StatisticalRangeDecorator { get; set; }
            public WorldDecoratorCollection MaxStatisticalRangeDecorator { get; set; }
            private float currentYard;
            public float BaseYard
            {
                get { return baseMapShapeDecorator.Radius; }
                set {
                    baseMapShapeDecorator.Radius = value;
                    currentYard = BaseYard;
                }
            }
            public float MaxYard
            {
                get { return maxMapShapeDecorator.Radius; }
                set { maxMapShapeDecorator.Radius = value; }
            }
            public bool ShowCircle { get; set; }
            public IKeyEvent ToggleKeyEvent { get; set; }
            public bool ShowMonstersCount { get; set; }
    
            public bool ShowTotalProgression { get; set; }
            public bool ShowTrashProgression { get; set; }
            public bool ShowEliteProgression { get; set; }
            public bool ShowRareMinionProgression { get; set; }
            public bool ShowRiftGlobeProgression { get; set; }
    
            public bool ShowLlocustCount { get; set; }
            public bool ShowHauntedCount { get; set; }
            public bool ShowPalmedCount { get; set; }
            public bool ShowPhoenixedCount { get; set; }
            public bool ShowStrongarmedCount { get; set; }
            public bool ShowRendCount { get; set; }
            public bool ShowTime { get; set; }
            public bool ToggleEnable { get; set; }
            public float XWidth { get; set; }
            public float YHeight { get; set; }
    
            private IFont currentFont;
            private bool TurnedOn;
    
            private MapShapeDecorator baseMapShapeDecorator;
            private MapShapeDecorator maxMapShapeDecorator;
    
            private StringBuilder textBuilder;
    
            public MonstersCountPlugin()
            {
                Enabled = true;
                ShowCircle = true;
                ToggleEnable = true;
            }
    
            public override void Load(IController hud)
            {
                base.Load(hud);
                ToggleKeyEvent = Hud.Input.CreateKeyEvent(true, Key.LeftControl, true, false, false);
                DefaultTextFont = Hud.Render.CreateFont("tahoma", 9, 255, 180, 147, 109, false, false, 250, 0, 0, 0, true);
                OrangeTextFont = Hud.Render.CreateFont("tahoma", 9, 255, 255, 128, 0, false, false, 250, 0, 0, 0, true);
                RedTextFont = Hud.Render.CreateFont("tahoma", 9, 255, 255, 0, 0, false, false, 250, 0, 0, 0, true);
    
                TurnedOn = false;
                ShowMonstersCount = true;
                ShowTotalProgression = true;
                ShowTrashProgression = true;
                ShowEliteProgression = true;
                ShowRareMinionProgression = true;
                ShowRiftGlobeProgression = true;
                ShowTime = true;
                ShowLlocustCount = true;
                ShowHauntedCount = true;
                ShowPalmedCount = true;
                ShowPhoenixedCount = true;
                ShowStrongarmedCount = true;
                ShowRendCount = true
    
                XWidth = 0.84f;
                YHeight = 0.61f;
                textBuilder = new StringBuilder();
    
                baseMapShapeDecorator = new MapShapeDecorator(Hud)
                {
                    Brush = Hud.Render.CreateBrush(150, 180, 147, 109, 1),
                    ShapePainter = new CircleShapePainter(Hud),
                    Radius = 40,
                };
                StatisticalRangeDecorator = new WorldDecoratorCollection(baseMapShapeDecorator);
                currentYard = BaseYard;
                maxMapShapeDecorator = new MapShapeDecorator(Hud)
                {
                    Brush = Hud.Render.CreateBrush(150, 180, 147, 109, 1),
                    ShapePainter = new CircleShapePainter(Hud),
                    Radius = 120,
                };
                MaxStatisticalRangeDecorator = new WorldDecoratorCollection(maxMapShapeDecorator);
            }
    
            public void OnKeyEvent(IKeyEvent keyEvent)
            {
                if (keyEvent.IsPressed && ToggleKeyEvent.Matches(keyEvent) && ToggleEnable)
                {
                    TurnedOn = !TurnedOn;
                    currentYard = TurnedOn ? MaxYard : BaseYard;
                }
            }
    
            public void PaintWorld(WorldLayer layer)
            {
                if (Hud.Game.IsInTown || !ShowCircle) return;
                if (TurnedOn)
                {
                    MaxStatisticalRangeDecorator.Paint(layer, null, Hud.Game.Me.FloorCoordinate, null);
                }
                else
                {
                    StatisticalRangeDecorator.Paint(layer, null, Hud.Game.Me.FloorCoordinate, null);
                }
            }
    
            public void PaintTopInGame(ClipState clipState)
            {
                if (clipState != ClipState.BeforeClip) return;
                var inRift = Hud.Game.SpecialArea == SpecialArea.Rift || Hud.Game.SpecialArea == SpecialArea.GreaterRift;
                var inGR = Hud.Game.SpecialArea == SpecialArea.GreaterRift;
                if (DefaultTextFont == null)
                {
                    return;
                }
    
                double totalMonsterRiftProgression = 0;
                double TrashMonsterRiftProgression = 0;
                double EliteProgression = 0;
                double RareMinionProgression = 0;
                double RiftGlobeProgression = 0;
    
                int monstersCount = 0;
                int EliteCount = 0;
                int RareMinionCount = 0;
                int ElitePackCount = 0;
    
                // locust
                int locustCount = 0;
                int ElitelocustCount = 0;
                // haunted
                int hauntedCount = 0;
                int ElitehauntedCount = 0;
                //Palmed
                int palmedCount = 0;
                int ElitepalmedCount = 0;
                //Phoenixed BUG? http://turbohud.freeforums.net/thread/3945/monster-phoenixed
                int phoenixedCount = 0;
                int ElitephoenixedCount = 0;
                //Strongarmed Obsolete
                int strongarmedCount = 0;
                int ElitestrongarmedCount = 0;
                // rend
                int rendCount = 0;
                int EliterendCount = 0;
                float XPos = Hud.Window.Size.Width * XWidth;
                float YPos = Hud.Window.Size.Height * YHeight;
    
                var monsters = Hud.Game.AliveMonsters.Where(m => ((m.SummonerAcdDynamicId == 0 && m.IsElite) || !m.IsElite) && m.FloorCoordinate.XYDistanceTo(Hud.Game.Me.FloorCoordinate) <= currentYard);
                Dictionary<IMonster, string> eliteGroup = new Dictionary<IMonster, string>();
                foreach (var monster in monsters)
                {
                    var Elite = monster.Rarity == ActorRarity.Rare || monster.Rarity == ActorRarity.Champion || monster.Rarity == ActorRarity.Unique || monster.Rarity == ActorRarity.Boss;
                    monstersCount++;
                    if (!monster.IsElite)
                    {
                        if (inRift) TrashMonsterRiftProgression += monster.SnoMonster.RiftProgression * 100.0d / this.Hud.Game.MaxQuestProgress;
                    }
                    else
                    {
                        if (monster.Rarity == ActorRarity.RareMinion)
                        {
                            RareMinionCount++;
                            if (inRift) RareMinionProgression += monster.SnoMonster.RiftProgression * 100.0d / this.Hud.Game.MaxQuestProgress;
                        }
                        else
                        {
                            if (monster.Rarity == ActorRarity.Unique || monster.Rarity == ActorRarity.Boss)
                            {
                                EliteCount++;
                                ElitePackCount++;
                            }
    
                            if (monster.Rarity == ActorRarity.Champion)
                            {
                                EliteCount++;
                                eliteGroup.Add(monster, String.Join(", ", monster.AffixSnoList));
                                if (inRift) EliteProgression += monster.SnoMonster.RiftProgression * 100.0d / this.Hud.Game.MaxQuestProgress;
                            }
    
                            if (monster.Rarity == ActorRarity.Rare)
                            {
                                EliteCount++;
                                ElitePackCount++;
                                if (inRift)
                                {
                                    EliteProgression += 4 * 1.15d;
                                    EliteProgression += monster.SnoMonster.RiftProgression * 100.0d / this.Hud.Game.MaxQuestProgress;
                                }
                            }
                        }
                    }
                    if (monster.Locust && ShowLlocustCount)
                    {
                        locustCount++;
                        if (Elite) ElitelocustCount++;
                    }
                    if (monster.Haunted && ShowHauntedCount)
                    {
                        hauntedCount++;
                        if (Elite) ElitehauntedCount++;
                    }
                    if (monster.Palmed && ShowPalmedCount)
                    {
                        palmedCount++;
                        if (Elite) ElitepalmedCount++;
                    }
                    if (monster.Phoenixed && ShowPhoenixedCount)
                    {
                        phoenixedCount++;
                        if (Elite) ElitephoenixedCount++;
                    }
                    if (monster.Strongarmed && ShowStrongarmedCount)
                    {
                        strongarmedCount++;
                        if (Elite) ElitestrongarmedCount++;
                    }
                    if (monster.rend && ShowRendCount)
                    {
                        rendCount++;
                        if (Elite) EliterendCount++;
                    }
                }
                Dictionary<IMonster, string> eliteGroup1 = eliteGroup.OrderBy(p => p.Value).ToDictionary(p => p.Key, o => o.Value);
                if (monstersCount == 0) return;
                var actors = Hud.Game.Actors.Where(x => x.SnoActor.Kind == ActorKind.RiftOrb);
                foreach (var actor in actors)
                {
                    RiftGlobeProgression += 1.15d;
                }
                string preStr = null;
                foreach (var elite in eliteGroup1)
                {
                    if (elite.Key.Rarity == ActorRarity.Champion)
                    {
                        if (preStr != elite.Value)
                        {
    
                            EliteProgression += 3 * 1.15f;
                            ElitePackCount++;
                        }
                        preStr = elite.Value;
                    }
                }
                textBuilder.Clear();
                if (ShowMonstersCount)
                {
                    textBuilder.AppendFormat("{0} BaseYard Monster Count: {1}", currentYard, monstersCount);
                    textBuilder.AppendLine();
                    if (EliteCount > 0) textBuilder.AppendFormat("Elite: {0}(Pack: {1})", EliteCount, ElitePackCount);
                    if (RareMinionCount > 0) textBuilder.AppendFormat("Minion: {0}", RareMinionCount);
                    textBuilder.AppendLine();
                    textBuilder.AppendLine();
                }
    
                if (inRift)
                {
                    totalMonsterRiftProgression = TrashMonsterRiftProgression + EliteProgression + RareMinionProgression + RiftGlobeProgression;
                    long totalTime = (long)totalMonsterRiftProgression * 90000000;
                    long TrashTime = (long)TrashMonsterRiftProgression * 90000000;
                    long EliteTime = (long)EliteProgression * 90000000;
                    long RareMinionTime = (long)RareMinionProgression * 90000000;
                    long RiftGlobeTime = (long)RiftGlobeProgression * 90000000;
                    if (totalMonsterRiftProgression > 0 && ShowTotalProgression)
                    {
                        if (ShowTime && inGR)
                        {
                            textBuilder.AppendFormat("Total: {0}% = {1}", totalMonsterRiftProgression.ToString("f2"), ValueToString((long)totalTime, ValueFormat.LongTime));
                        }
                        else
                        {
                            textBuilder.AppendFormat("Total: {0}%", totalMonsterRiftProgression.ToString("f2"));
                        }
                        textBuilder.AppendLine();
                    }
    
                    if (TrashMonsterRiftProgression > 0 && ShowTrashProgression)
                    {
                        if (ShowTime && inGR)
                        {
                            textBuilder.AppendFormat("Trash: {0}% = {1}", TrashMonsterRiftProgression.ToString("f2"), ValueToString((long)TrashTime, ValueFormat.LongTime));
                        }
                        else
                        {
                            textBuilder.AppendFormat("Trash: {0}%", TrashMonsterRiftProgression.ToString("f2"));
                        }
                        textBuilder.AppendLine();
                    }
                    if (EliteProgression > 0 && ShowEliteProgression)
                    {
                        if (ShowTime && inGR)
                        {
                            textBuilder.AppendFormat("Elite: {0}% = {1}", EliteProgression.ToString("f2"), ValueToString((long)EliteTime, ValueFormat.LongTime));
                        }
                        else
                        {
                            textBuilder.AppendFormat("Elite: {0}%", EliteProgression.ToString("f2"));
                        }
                        textBuilder.AppendLine();
                    }
                    if (RareMinionProgression > 0 && ShowRareMinionProgression)
                    {
                        if (ShowTime && inGR)
                        {
                            textBuilder.AppendFormat("Minion: {0}% = {1}", RareMinionProgression.ToString("f2"), ValueToString((long)RareMinionTime, ValueFormat.LongTime));
                        }
                        else
                        {
                            textBuilder.AppendFormat("Minion: {0}%", RareMinionProgression.ToString("f2"));
                        }
                        textBuilder.AppendLine();
                    }
                    if (RiftGlobeProgression > 0 && ShowRiftGlobeProgression)
                    {
                        if (ShowTime && inGR)
                        {
                            textBuilder.AppendFormat("Globe: {0}% = {1}", RiftGlobeProgression.ToString("f2"), ValueToString((long)RiftGlobeTime, ValueFormat.LongTime));
                        }
                        else
                        {
                            textBuilder.AppendFormat("Globe: {0}%", RiftGlobeProgression.ToString("f2"));
                        }
                        textBuilder.AppendLine();
                    }
                    textBuilder.AppendLine();
                }
                if (locustCount > 0 && ShowLlocustCount)
                {
                    textBuilder.AppendFormat("Locust: {0}/{1}", locustCount, monstersCount);
                    if (ElitelocustCount > 0) textBuilder.AppendFormat(" (Elite: {0}/{1})", ElitelocustCount, EliteCount);
                    textBuilder.AppendLine();
                }
                if (hauntedCount > 0 && ShowHauntedCount)
                {
                    textBuilder.AppendFormat("Haunted: {0}/{1}", hauntedCount, monstersCount);
                    if (ElitehauntedCount > 0) textBuilder.AppendFormat(" (Elite: {0}/{1})", ElitehauntedCount, EliteCount);
                    textBuilder.AppendLine();
                }
                if (palmedCount > 0 && ShowPalmedCount)
                {
                    textBuilder.AppendFormat("Palmed: {0}/{1}", palmedCount, monstersCount);
                    if (ElitepalmedCount > 0) textBuilder.AppendFormat(" (Elite: {0}/{1})", ElitepalmedCount, EliteCount);
                    textBuilder.AppendLine();
                }
                if (phoenixedCount > 0 && ShowPhoenixedCount)
                {
                    textBuilder.AppendFormat("Phoenixed: {0}/{1}", phoenixedCount, monstersCount);
                    if (ElitephoenixedCount > 0) textBuilder.AppendFormat(" (Elite: {0}/{1})", ElitephoenixedCount, EliteCount);
                    textBuilder.AppendLine();
                }
                if (strongarmedCount > 0 && ShowStrongarmedCount)
                {
                    textBuilder.AppendFormat("Strongarmed: {0}/{1}", strongarmedCount, monstersCount);
                    if (ElitestrongarmedCount > 0) textBuilder.AppendFormat(" (Elite: {0}/{1})", ElitestrongarmedCount, EliteCount);
                    textBuilder.AppendLine();
                }
                if (rendCount > 0 && ShowRendCount)
                {
                    textBuilder.AppendFormat("Rend: {0}/{1}", rendCount, monstersCount);
                    if (EliterendCount > 0) textBuilder.AppendFormat(" (Elite: {0}/{1})", EliterendCount, EliteCount);
                    textBuilder.AppendLine();
                }
    
                if (totalMonsterRiftProgression >= 100d - Hud.Game.RiftPercentage && Hud.Game.RiftPercentage != 100 || TrashMonsterRiftProgression >= 100d - Hud.Game.RiftPercentage && Hud.Game.RiftPercentage != 100)
                {
                    if (totalMonsterRiftProgression >= 100d - Hud.Game.RiftPercentage && Hud.Game.RiftPercentage != 100) currentFont = OrangeTextFont;
                    if (TrashMonsterRiftProgression >= 100d - Hud.Game.RiftPercentage && Hud.Game.RiftPercentage != 100) currentFont = RedTextFont;
                }
                else
                {
                    currentFont = DefaultTextFont;
                }
                var layout = currentFont.GetTextLayout(textBuilder.ToString());
                currentFont.DrawText(layout, XPos, YPos);
            }
        }
    }
    i was tried when i was adding this so i was just wanted to add Rend to the mix like it shows locus swarm and haunt and such not sure if the strongarm part works? but skip that part so yeah just wanted to add rend so when the zbarb applys rend id like it to show up just like that

    Rend
  2. #2
    SeaDragon's Avatar Contributor
    Reputation
    322
    Join Date
    Aug 2016
    Posts
    1,041
    Thanks G/R
    140/300
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)

  3. #3
    SeaDragon's Avatar Contributor
    Reputation
    322
    Join Date
    Aug 2016
    Posts
    1,041
    Thanks G/R
    140/300
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Can't add "Rend "

  4. #4
    adventuremode's Avatar Member
    Reputation
    1
    Join Date
    Nov 2017
    Posts
    9
    Thanks G/R
    0/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    i take it kj needs to update t-hud to show it for us to make plugins for it ?

  5. #5
    SeaDragon's Avatar Contributor
    Reputation
    322
    Join Date
    Aug 2016
    Posts
    1,041
    Thanks G/R
    140/300
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by adventuremode View Post
    i take it kj needs to update t-hud to show it for us to make plugins for it ?
    Need KJ to update the debuff interface

  6. #6
    Gilavar's Avatar Member
    Reputation
    1
    Join Date
    Dec 2017
    Posts
    67
    Thanks G/R
    17/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    I only need a plugin that shows Rend, toxin and Threatening Shout - Falter rune debuffs. Is there one?

  7. #7
    SeaDragon's Avatar Contributor
    Reputation
    322
    Join Date
    Aug 2016
    Posts
    1,041
    Thanks G/R
    140/300
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by Gilavar View Post
    I only need a plugin that shows Rend, toxin and Threatening Shout - Falter rune debuffs. Is there one?
    The interface supports only the following

    Code:
            float DotDpsApplied { get; }
            bool Frozen { get; }
            bool Chilled { get; }
            bool Slow { get; }
            bool Stunned { get; }
            bool Burrowed { get; }
            bool Invulnerable { get; }
            bool Untargetable { get; }
            bool Hidden { get; }
            bool Stealthed { get; }
            bool Invisible { get; }
            bool Blind { get; }
            bool Attackable { get; } // IsOnScreen && !Untargetable && !Invisible
    
            bool Illusion { get; } // equals to (IMonster.GetAttributeValue(Hud.Sno.Attributes.Power_Buff_0_Visual_Effect_None, 264185, 0) != 0)
    
            // note: these will be removed later
            bool Palmed { get; }
            bool Haunted { get; }
            bool MarkedForDeath { get; }
            bool Locust { get; }
            bool Strongarmed { get; }
            bool Phoenixed { get; }

  8. Thanks johnbl (1 members gave Thanks to SeaDragon for this useful post)
  9. #8
    Gilavar's Avatar Member
    Reputation
    1
    Join Date
    Dec 2017
    Posts
    67
    Thanks G/R
    17/0
    Trade Feedback
    0 (0%)
    Mentioned
    0 Post(s)
    Tagged
    0 Thread(s)
    Originally Posted by SeaDragon View Post
    The interface supports only the following

    Code:
            float DotDpsApplied { get; }
            bool Frozen { get; }
            bool Chilled { get; }
            bool Slow { get; }
            bool Stunned { get; }
            bool Burrowed { get; }
            bool Invulnerable { get; }
            bool Untargetable { get; }
            bool Hidden { get; }
            bool Stealthed { get; }
            bool Invisible { get; }
            bool Blind { get; }
            bool Attackable { get; } // IsOnScreen && !Untargetable && !Invisible
    
            bool Illusion { get; } // equals to (IMonster.GetAttributeValue(Hud.Sno.Attributes.Power_Buff_0_Visual_Effect_None, 264185, 0) != 0)
    
            // note: these will be removed later
            bool Palmed { get; }
            bool Haunted { get; }
            bool MarkedForDeath { get; }
            bool Locust { get; }
            bool Strongarmed { get; }
            bool Phoenixed { get; }
    Too bad . Rend, and Falter , toxin debufs are very important in the current meta

Similar Threads

  1. [Request] Blending / Rending
    By Rectal Exambot in forum Art & Graphic Design
    Replies: 5
    Last Post: 12-10-2007, 03:48 AM
  2. UBRS Rend event bug.
    By issuesbunny in forum World of Warcraft Exploits
    Replies: 4
    Last Post: 01-07-2007, 05:39 AM
  3. Dal'Rend Swords into...
    By massflavour in forum World of Warcraft Model Editing
    Replies: 5
    Last Post: 11-27-2006, 05:10 AM
  4. Dal'rend Sacred charge/tribal guardian--> Regular ashbringer.
    By massflavour in forum WoW ME Questions and Requests
    Replies: 0
    Last Post: 11-26-2006, 03:48 PM
All times are GMT -5. The time now is 11:44 PM. Powered by vBulletin® Version 4.2.3
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved. User Alert System provided by Advanced User Tagging (Pro) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Google Authenticator verification provided by Two-Factor Authentication (Free) - vBulletin Mods & Addons Copyright © 2025 DragonByte Technologies Ltd.
Digital Point modules: Sphinx-based search