psychopyro212

Untitled

Feb 14th, 2017
187
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C# 7.46 KB | None | 0 0
  1. namespace Turbo.Plugins.PsychosPlugins
  2. {
  3.     using Turbo.Plugins.Default;
  4.  
  5.     public class ClassMarkersPlugin : BasePlugin
  6.     {
  7.         public MapShapeDecorator BarbarianCircleDecorator {get; set;}
  8.         public MapShapeDecorator CrusaderCircleDecorator {get; set;}
  9.         public MapShapeDecorator DemonhunterCircleDecorator {get; set;}
  10.         public MapShapeDecorator MonkCircleDecorator {get; set;}
  11.         public MapShapeDecorator WitchDoctorCircleDecorator {get; set;}
  12.         public MapShapeDecorator WizardCircleDecorator {get; set;}
  13.         public GroundCircleDecorator BarbarianGroundCircleDecorator {get; set;}
  14.         public GroundCircleDecorator CrusaderGroundCircleDecorator {get; set;}
  15.         public GroundCircleDecorator DemonhunterGroundCircleDecorator {get; set;}
  16.         public GroundCircleDecorator MonkGroundCircleDecorator {get; set;}
  17.         public GroundCircleDecorator WitchDoctorGroundCircleDecorator {get; set;}
  18.         public GroundCircleDecorator WizardGroundCircleDecorator {get; set;}
  19.         public WorldDecoratorCollection MyGroundCircle {get; set;}
  20.         public bool MyPlayerCircle {get; set;}
  21.         public bool OtherPlayersCircles {get; set;}
  22.         public bool MyPlayerCircleColorOverride {get; set;}
  23.  
  24.         public ClassMarkersPlugin()
  25.         {
  26.             Enabled = true;
  27.             MyPlayerCircle = true;
  28.             OtherPlayersCircles = true;
  29.             MyPlayerCircleColorOverride = false;
  30.         }
  31.  
  32.         public override void Load(IController hud)
  33.         {
  34.             base.Load(hud);
  35.  
  36.  
  37.  
  38.                 BarbarianCircleDecorator = new MapShapeDecorator(Hud)
  39.                 {
  40.                     Brush = Hud.Render.CreateBrush(200, 250, 10, 10, 5),
  41.                     ShapePainter = new CircleShapePainter(Hud),
  42.                     Radius = 2f,
  43.                 };
  44.  
  45.                 BarbarianGroundCircleDecorator = new GroundCircleDecorator(Hud)
  46.                 {
  47.                     Brush = Hud.Render.CreateBrush(200, 250, 10, 10, 5),
  48.                     Radius = 4f,
  49.                 };
  50.  
  51.                 CrusaderCircleDecorator = new MapShapeDecorator(Hud)
  52.                 {
  53.                     Brush = Hud.Render.CreateBrush(240, 0, 200, 250, 5),
  54.                     ShapePainter = new CircleShapePainter(Hud),
  55.                     Radius = 2f,
  56.                 };
  57.  
  58.                 CrusaderGroundCircleDecorator = new GroundCircleDecorator(Hud)
  59.                 {
  60.                     Brush = Hud.Render.CreateBrush(240, 0, 200, 250, 5),
  61.                     Radius = 4f
  62.                 };
  63.  
  64.                 DemonhunterCircleDecorator = new MapShapeDecorator(Hud)
  65.                 {
  66.                     Brush = Hud.Render.CreateBrush(255, 0, 0, 200, 5),
  67.                     ShapePainter = new CircleShapePainter(Hud),
  68.                     Radius = 2f,
  69.                 };
  70.  
  71.                 DemonhunterGroundCircleDecorator = new GroundCircleDecorator(Hud)
  72.                 {
  73.                     Brush = Hud.Render.CreateBrush(255, 0, 0, 200, 5),
  74.                     Radius = 4f
  75.                 };
  76.  
  77.                 MonkCircleDecorator = new MapShapeDecorator(Hud)
  78.                 {
  79.                     Brush = Hud.Render.CreateBrush(245, 120, 0, 200, 5),
  80.                     ShapePainter = new CircleShapePainter(Hud),
  81.                     Radius = 2f,
  82.                 };
  83.  
  84.                 MonkGroundCircleDecorator = new GroundCircleDecorator(Hud)
  85.                 {
  86.                     Brush = Hud.Render.CreateBrush(245, 120, 0, 200, 5),
  87.                     Radius = 4f
  88.                 };
  89.  
  90.                 WitchDoctorCircleDecorator = new MapShapeDecorator(Hud)
  91.                 {
  92.                     Brush = Hud.Render.CreateBrush(155, 0, 155, 125, 5),
  93.                     ShapePainter = new CircleShapePainter(Hud),
  94.                     Radius = 2f,
  95.                 };
  96.  
  97.                 WitchDoctorGroundCircleDecorator = new GroundCircleDecorator(Hud)
  98.                 {
  99.                     Brush = Hud.Render.CreateBrush(155, 0, 155, 125, 5),
  100.                     Radius = 4f
  101.                 };
  102.  
  103.                 WizardCircleDecorator = new MapShapeDecorator(Hud)
  104.                 {
  105.                     Brush = Hud.Render.CreateBrush(255, 250, 50, 180, 5),
  106.                     ShapePainter = new CircleShapePainter(Hud),
  107.                     Radius = 2f,
  108.                 };
  109.  
  110.                 WizardGroundCircleDecorator = new GroundCircleDecorator(Hud)
  111.                 {
  112.                     Brush = Hud.Render.CreateBrush(255, 250, 50, 180, 5),
  113.                     Radius = 4f
  114.                 };
  115.                 MyGroundCircle = new WorldDecoratorCollection(
  116.                  new MapShapeDecorator(Hud)
  117.                 {
  118.                     Brush = Hud.Render.CreateBrush(255, 255, 255, 255, 5),
  119.                     ShapePainter = new CircleShapePainter(Hud),
  120.                     Radius = 4f,
  121.                 },
  122.                 new GroundCircleDecorator(Hud)
  123.                 {
  124.                     Brush = Hud.Render.CreateBrush(255, 255, 255, 255, 5),
  125.                     Radius = 4f
  126.                 }
  127.                 );
  128.         }
  129.  
  130.            
  131.  
  132.         public override void Customize()
  133.         {
  134.             if (OtherPlayersCircles == true)
  135.             {
  136.                 Hud.RunOnPlugin<OtherPlayersPlugin>(plugin =>
  137.                 {
  138.                     plugin.NameOffsetZ = 0;              
  139.                     plugin.DecoratorByClass[HeroClass.Barbarian].Decorators.Add(BarbarianCircleDecorator);
  140.                     plugin.DecoratorByClass[HeroClass.Barbarian].Decorators.Add(BarbarianGroundCircleDecorator);
  141.                     plugin.DecoratorByClass[HeroClass.Crusader].Decorators.Add(CrusaderCircleDecorator);
  142.                     plugin.DecoratorByClass[HeroClass.Crusader].Decorators.Add(CrusaderGroundCircleDecorator);
  143.                     plugin.DecoratorByClass[HeroClass.DemonHunter].Decorators.Add(DemonhunterCircleDecorator);
  144.                     plugin.DecoratorByClass[HeroClass.DemonHunter].Decorators.Add(DemonhunterGroundCircleDecorator);
  145.                     plugin.DecoratorByClass[HeroClass.Monk].Decorators.Add(MonkCircleDecorator);
  146.                     plugin.DecoratorByClass[HeroClass.Monk].Decorators.Add(MonkGroundCircleDecorator);
  147.                     plugin.DecoratorByClass[HeroClass.WitchDoctor].Decorators.Add(WitchDoctorCircleDecorator);
  148.                     plugin.DecoratorByClass[HeroClass.WitchDoctor].Decorators.Add(WitchDoctorGroundCircleDecorator);
  149.                     plugin.DecoratorByClass[HeroClass.Wizard].Decorators.Add(WizardCircleDecorator);
  150.                     plugin.DecoratorByClass[HeroClass.Wizard].Decorators.Add(WizardGroundCircleDecorator);
  151.                 });
  152.             }
  153.         }
  154.  
  155.         public override void PaintWorld(WorldLayer layer)
  156.         {
  157.             if (Hud.Game.IsInTown) return;
  158.             if (MyPlayerCircle == false) return;
  159.  
  160.             if (MyPlayerCircleColorOverride == true)
  161.             {
  162.                 MyGroundCircle.Paint(layer, Hud.Game.Me, Hud.Game.Me.FloorCoordinate, string.Empty);
  163.                 return;
  164.             }
  165.             if (OtherPlayersCircles == true)
  166.             {            
  167.                 Hud.RunOnPlugin<OtherPlayersPlugin>(plugin =>
  168.                 {
  169.                     plugin.DecoratorByClass[Hud.Game.Me.HeroClassDefinition.HeroClass].Paint(layer, Hud.Game.Me, Hud.Game.Me.FloorCoordinate, string.Empty);
  170.                     return;
  171.                 });  
  172.             }              
  173.         }
  174.     }
  175. }
Advertisement
Add Comment
Please, Sign In to add comment