예제 #1
0
        public void UpdatePolygon()
        {
            switch (SpellData.Type)
            {
            case SkillShotType.SkillshotCircle:
                Polygon                 = Circle.ToPolygon();
                EvadePolygon            = Circle.ToPolygon(Config.ExtraEvadeDistance);
                PathFindingPolygon      = Circle.ToPolygon(Config.PathFindingDistance);
                PathFindingInnerPolygon = Circle.ToPolygon(Config.PathFindingDistance2);
                DrawingPolygon          = Circle.ToPolygon(
                    0,
                    !SpellData.AddHitbox
                            ? SpellData.Radius
                            : (SpellData.Radius - ObjectManager.Player.BoundingRadius));
                break;

            case SkillShotType.SkillshotLine:
                Polygon        = Rectangle.ToPolygon();
                DrawingPolygon = Rectangle.ToPolygon(
                    0,
                    !SpellData.AddHitbox
                            ? SpellData.Radius
                            : (SpellData.Radius - ObjectManager.Player.BoundingRadius));
                EvadePolygon            = Rectangle.ToPolygon(Config.ExtraEvadeDistance);
                PathFindingPolygon      = Rectangle.ToPolygon(Config.PathFindingDistance);
                PathFindingInnerPolygon = Rectangle.ToPolygon(Config.PathFindingDistance2);
                break;

            case SkillShotType.SkillshotMissileLine:
                Polygon        = Rectangle.ToPolygon();
                DrawingPolygon = Rectangle.ToPolygon(
                    0,
                    !SpellData.AddHitbox
                            ? SpellData.Radius
                            : (SpellData.Radius - ObjectManager.Player.BoundingRadius));
                EvadePolygon            = Rectangle.ToPolygon(Config.ExtraEvadeDistance);
                PathFindingPolygon      = Rectangle.ToPolygon(Config.PathFindingDistance);
                PathFindingInnerPolygon = Rectangle.ToPolygon(Config.PathFindingDistance2);
                break;

            case SkillShotType.SkillshotCone:
                Polygon                 = Sector.ToPolygon();
                DrawingPolygon          = Polygon;
                EvadePolygon            = Sector.ToPolygon(Config.ExtraEvadeDistance);
                PathFindingPolygon      = Sector.ToPolygon(Config.PathFindingDistance);
                PathFindingInnerPolygon = Sector.ToPolygon(Config.PathFindingDistance2);
                break;

            case SkillShotType.SkillshotRing:
                Polygon                 = Ring.ToPolygon();
                DrawingPolygon          = Polygon;
                EvadePolygon            = Ring.ToPolygon(Config.ExtraEvadeDistance);
                PathFindingPolygon      = Ring.ToPolygon(Config.PathFindingDistance);
                PathFindingInnerPolygon = Ring.ToPolygon(Config.PathFindingDistance2);
                break;

            case SkillShotType.SkillshotArc:
                Polygon                 = Arc.ToPolygon();
                DrawingPolygon          = Polygon;
                EvadePolygon            = Arc.ToPolygon(Config.ExtraEvadeDistance);
                PathFindingPolygon      = Arc.ToPolygon(Config.PathFindingDistance);
                PathFindingInnerPolygon = Arc.ToPolygon(Config.PathFindingDistance2);
                break;
            }
        }
예제 #2
0
 public void UpdatePolygon()
 {
     switch (SpellData.Type)
     {
         case SkillShotType.SkillshotCircle:
             Polygon = Circle.ToPolygon();
             EvadePolygon = Circle.ToPolygon(Config.ExtraEvadeDistance);
             DrawingPolygon = Circle.ToPolygon(
                 0,
                 !SpellData.AddHitbox
                     ? SpellData.Radius
                     : (SpellData.Radius - ObjectManager.Player.BoundingRadius));
             break;
         case SkillShotType.SkillshotLine:
             Polygon = Rectangle.ToPolygon();
             DrawingPolygon = Rectangle.ToPolygon(
                 0,
                 !SpellData.AddHitbox
                     ? SpellData.Radius
                     : (SpellData.Radius - ObjectManager.Player.BoundingRadius));
             EvadePolygon = Rectangle.ToPolygon(Config.ExtraEvadeDistance);
             break;
         case SkillShotType.SkillshotMissileLine:
             Polygon = Rectangle.ToPolygon();
             DrawingPolygon = Rectangle.ToPolygon(
                 0,
                 !SpellData.AddHitbox
                     ? SpellData.Radius
                     : (SpellData.Radius - ObjectManager.Player.BoundingRadius));
             EvadePolygon = Rectangle.ToPolygon(Config.ExtraEvadeDistance);
             break;
         case SkillShotType.SkillshotCone:
             Polygon = Sector.ToPolygon();
             DrawingPolygon = Polygon;
             EvadePolygon = Sector.ToPolygon(Config.ExtraEvadeDistance);
             break;
         case SkillShotType.SkillshotRing:
             Polygon = Ring.ToPolygon();
             DrawingPolygon = Polygon;
             EvadePolygon = Ring.ToPolygon(Config.ExtraEvadeDistance);
             break;
     }
 }