public void Remove_Road_Parts()
        {
            AnimationSprite left = null, right = null;

            foreach (AnimationSprite road in RoadParts)
            {
                if (road.Left + WidthScreen > WidthScreen * 4)
                {
                    left = road;
                }

                if (road.Left - WidthScreen < WidthScreen * -4)
                {
                    right = road;
                }
            }

            if (left != null)
            {
                AnimationManager.Animations.Remove(left);
                RoadParts.Remove(left);
            }

            if (right != null)
            {
                AnimationManager.Animations.Remove(right);
                RoadParts.Remove(right);
            }
        }
        public void Prolong_Road_Parts()
        {
            add_left  = RoadParts.Max(x => x.Left);
            add_right = RoadParts.Min(x => x.Left);

            if (add_left + WidthScreen < WidthScreen * 2)
            {
                Create_Road_Parts(add_left + WidthScreen - 1); //+1 для подгонки швов текстур
            }
            if (add_right - WidthScreen > WidthScreen * -2)
            {
                Create_Road_Parts(add_right - WidthScreen + 1);
            }
        }
 public void Create_Road_Parts(float Left)
 {
     _template = new AnimationSprite()
     {
         Name    = _spriteNames[_rand.Next(0, _spriteNames.Length)],
         Group   = "Road",
         Zindex  = -1,
         Visible = true
     };
     _template.Frame.Add(new Bitmap(MainSpace.SelfRef.SpriteFolder + _template.Name + ".png"));
     _template.Transform(Left, 0, WidthScreen, HeightScreen);
     AnimationManager.Animations.Add(_template);
     RoadParts.Add(_template);
 }