コード例 #1
0
        public override void Move(SizedShape shape, bool changeDirection)
        {
            MoveDirect = changeDirection ? (MoveDirect == MoveDirection.ToTop ? MoveDirection.ToBottom : MoveDirection.ToTop)
                                         : MoveDirect;
            switch (MoveDirect)
            {
            case MoveDirection.ToTop:
                if (shape.Y - shape.Size < 0)
                {
                    MoveDirect = MoveDirection.ToBottom;
                    shape.Y++;
                }
                else
                {
                    shape.Y--;
                }
                break;

            case MoveDirection.ToBottom:
                if (shape.Y + 1 > Console.WindowHeight - 1)
                {
                    MoveDirect = MoveDirection.ToTop;
                    shape.Y--;
                }
                else
                {
                    shape.Y++;
                }
                break;
            }
        }
コード例 #2
0
        public override void Move(SizedShape shape, bool changeDirection)
        {
            MoveDirect = changeDirection ? (MoveDirect == MoveDirection.ToRight ? MoveDirection.ToLeft : MoveDirection.ToRight)
                                         : MoveDirect;
            switch (MoveDirect)
            {
            case MoveDirection.ToRight:
                if (shape.X + shape.Size + 1 > Console.WindowWidth - 1)
                {
                    MoveDirect = MoveDirection.ToLeft;
                    shape.X--;
                }
                else
                {
                    shape.X++;
                }
                break;

            case MoveDirection.ToLeft:
                if (shape.X - 1 < 0)
                {
                    MoveDirect = MoveDirection.ToRight;
                    shape.X++;
                }
                else
                {
                    shape.X--;
                }
                break;
            }
        }
コード例 #3
0
ファイル: MoveStrategy.cs プロジェクト: vvg88/CsharpCourseB
 public abstract void Move(SizedShape shape, bool changeDirection);