psychopyro212

Untitled

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