Example #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;
            }
        }