Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using System.Linq;
- using Turbo.Plugins.Default;
- namespace Turbo.Plugins.RNN
- {
- public class PandemoniumDecorators : BasePlugin, IInGameWorldPainter
- {
- public WorldDecoratorCollection ChickenRain { get; set; }
- public WorldDecoratorCollection EnergyTwister { get; set; }
- public WorldDecoratorCollection AdriaGeyser { get; set; }
- public WorldDecoratorCollection GoldenShower { get; set; }
- public WorldDecoratorCollection MeteorImpact { get; set; }
- public WorldDecoratorCollection AngelTrooper { get; set; }
- public bool ShowChickenRain { get; set; }
- public bool ShowEnergyTwister { get; set; }
- public bool ShowAdriaGeyser { get; set; }
- public bool ShowGoldenShower { get; set; }
- public bool ShowMeteorImpact { get; set; }
- public bool ShowAngelTrooper { get; set; }
- public bool OnlyGR { get; set; }
- public PandemoniumDecorators()
- {
- Enabled = true;
- }
- public override void Load(IController hud)
- {
- base.Load(hud);
- OnlyGR = true;
- ShowChickenRain = false;
- ShowEnergyTwister = true;
- ShowAdriaGeyser = true;
- ShowGoldenShower = true;
- ShowMeteorImpact = true;
- ShowAngelTrooper = true;
- ChickenRain = new WorldDecoratorCollection(
- new MapShapeDecorator(Hud)
- {
- Brush = Hud.Render.CreateBrush(180, 255, 255, 98, 2),
- Radius = 6.0f,
- ShapePainter = new CircleShapePainter(Hud),
- },
- new GroundCircleDecorator(Hud)
- {
- Radius = 5.0f,
- Brush = Hud.Render.CreateBrush(200, 255, 255, 98, 4, SharpDX.Direct2D1.DashStyle.Dash),
- RadiusTransformator = new StandardPingRadiusTransformator(Hud, 500) { RadiusMinimumMultiplier = 0.8f, }
- },
- new GroundLabelDecorator(Hud)
- {
- //CountDownFrom = 5,
- TextFont = Hud.Render.CreateFont("tahoma", 10, 255, 255, 255, 98, true, false, 128, 0, 0, 0, true),
- ForceOnScreen = false,
- }
- );
- GoldenShower = new WorldDecoratorCollection(
- new MapShapeDecorator(Hud)
- {
- ShapePainter = new CircleShapePainter(Hud),
- Brush = Hud.Render.CreateBrush(180, 255, 255, 98, 2),
- Radius = 6.0f,
- },
- new GroundCircleDecorator(Hud)
- {
- Radius = 6.0f,
- Brush = Hud.Render.CreateBrush(200, 255, 255, 98, 4, SharpDX.Direct2D1.DashStyle.DashDot),
- },
- new GroundLabelDecorator(Hud)
- {
- //CountDownFrom = 2.1f,
- TextFont = Hud.Render.CreateFont("tahoma", 10, 255, 255, 255, 98, true, false, 128, 0, 0, 0, true),
- ForceOnScreen = false,
- }
- );
- MeteorImpact = new WorldDecoratorCollection(
- new MapShapeDecorator(Hud)
- {
- Radius = 6.0f,
- Brush = Hud.Render.CreateBrush(180, 255, 255, 98, 2),
- ShapePainter = new CircleShapePainter(Hud),
- },
- new GroundCircleDecorator(Hud)
- {
- Radius = 6.0f,
- Brush = Hud.Render.CreateBrush(200, 255, 255, 98, 4, SharpDX.Direct2D1.DashStyle.Dash),
- },
- new GroundLabelDecorator(Hud)
- {
- //CountDownFrom = 1.0f,
- TextFont = Hud.Render.CreateFont("tahoma", 10, 255, 255, 255, 98, true, false, 128, 0, 0, 0, true),
- ForceOnScreen = false,
- }
- );
- AdriaGeyser = new WorldDecoratorCollection(
- new MapShapeDecorator(Hud)
- {
- Radius = 15.0f,
- Brush = Hud.Render.CreateBrush(180, 255, 150, 255, 2, SharpDX.Direct2D1.DashStyle.Dash),
- ShapePainter = new CircleShapePainter(Hud),
- },
- new GroundCircleDecorator(Hud)
- {
- Radius = 15,
- Brush = Hud.Render.CreateBrush(200, 255, 150, 255, 4, SharpDX.Direct2D1.DashStyle.Dash),
- },
- new GroundLabelDecorator(Hud)
- {
- CountDownFrom = 3,
- TextFont = Hud.Render.CreateFont("tahoma", 10, 255, 255, 200, 200, true, false, 128, 0, 0, 0, true),
- },
- new GroundTimerDecorator(Hud)
- {
- CountDownFrom = 3,
- BackgroundBrushEmpty = Hud.Render.CreateBrush(128, 0, 0, 0, 0),
- BackgroundBrushFill = Hud.Render.CreateBrush(230, 255, 150, 255, 0),
- Radius = 25,
- }
- );
- EnergyTwister = new WorldDecoratorCollection(
- new MapShapeDecorator(Hud)
- {
- Radius = 10.0f,
- Brush = Hud.Render.CreateBrush(180, 255, 201, 132, 2),
- ShapePainter = new CircleShapePainter(Hud),
- },
- new GroundCircleDecorator(Hud)
- {
- Radius = 10.0f,
- Brush = Hud.Render.CreateBrush(200, 255, 201, 132, 4, SharpDX.Direct2D1.DashStyle.Dash),
- },
- new GroundLabelDecorator(Hud)
- {
- CountDownFrom = 30,
- TextFont = Hud.Render.CreateFont("tahoma", 10f, 255, 225, 225, 225, true, false, 175, 0, 0, 0, true),
- },
- new GroundTimerDecorator(Hud)
- {
- CountDownFrom = 30,
- BackgroundBrushEmpty = Hud.Render.CreateBrush(150, 25, 25, 25, 0),
- BackgroundBrushFill = Hud.Render.CreateBrush(200, 128, 128, 128, 0),
- Radius = 25,
- }
- );
- AngelTrooper = new WorldDecoratorCollection(
- new MapShapeDecorator(Hud)
- {
- Radius = 6.0f,
- Brush = Hud.Render.CreateBrush(180, 159, 240, 250, 2),
- ShapePainter = new CircleShapePainter(Hud),
- },
- new GroundLabelDecorator(Hud)
- {
- CountDownFrom = 30,
- TextFont = Hud.Render.CreateFont("tahoma", 10f, 255, 255, 255, 255, true, false, 175, 0, 0, 0, true),
- },
- new GroundTimerDecorator(Hud)
- {
- CountDownFrom = 30,
- BackgroundBrushEmpty = Hud.Render.CreateBrush(150, 126, 126, 205, 0),
- BackgroundBrushFill = Hud.Render.CreateBrush(200, 122, 182, 242, 0),
- Radius = 20,
- }
- );
- }
- public void PaintWorld(WorldLayer layer)
- {
- if (!Hud.Game.IsInGame || !Hud.Game.Me.Powers.BuffIsActive(483967) || (Hud.Game.Me.InGreaterRiftRank == 0 && OnlyGR)) return;
- foreach (IActor actor in Hud.Game.Actors)
- {
- switch (actor.SnoActor.Sno)
- {
- case ActorSnoEnum._generic_proxy: // 50 Chikens
- if (ShowChickenRain && actor.GetAttributeValueAsInt(Hud.Sno.Attributes.Power_Buff_0_Visual_Effect_None, 483859) == 1)
- ChickenRain.Paint(layer, actor, actor.FloorCoordinate, "Rain\nChickens");
- break;
- case ActorSnoEnum._zoltunkulle_energytwister: // 100 Twister
- if (ShowEnergyTwister)
- EnergyTwister.Paint(layer, actor, actor.FloorCoordinate, null);
- break;
- case ActorSnoEnum._x1_adria_geyser: // 150 Geyser
- if (ShowAdriaGeyser && actor.GetAttributeValueAsInt(Hud.Sno.Attributes.Power_Buff_0_Visual_Effect_None, 483889) == 1)
- AdriaGeyser.Paint(layer, actor, actor.FloorCoordinate, null);
- break;
- case ActorSnoEnum._p1_greed_goldenshower_impactproxy: // 200 Golden
- if (ShowGoldenShower && actor.GetAttributeValueAsInt(Hud.Sno.Attributes.Power_Buff_0_Visual_Effect_None, 483865) == 1)
- GoldenShower.Paint(layer, actor, actor.FloorCoordinate, null);
- break;
- case ActorSnoEnum._diablo_meteor_impact: // 400 Meteors
- if (ShowMeteorImpact && actor.GetAttributeValueAsInt(Hud.Sno.Attributes.Power_Buff_1_Visual_Effect_None, 483884) == 1)
- MeteorImpact.Paint(layer, actor, actor.FloorCoordinate, null);
- break;
- case ActorSnoEnum._pandemonium_angel_trooper: // 500 Angels
- if (ShowAngelTrooper)
- AngelTrooper.Paint(layer, actor, actor.FloorCoordinate, null);
- break;
- }
- }
- }
- }
- }
Add Comment
Please, Sign In to add comment