Пример #1
0
        public Point Part1Execute(ShipDirection.Direction currentDirection)
        {
            var movement = new Point();

            switch (currentDirection)
            {
            case ShipDirection.Direction.North:
                movement.X = 0;
                movement.Y = Value;
                break;

            case ShipDirection.Direction.East:
                movement.X = Value;
                movement.Y = 0;
                break;

            case ShipDirection.Direction.South:
                movement.X = 0;
                movement.Y = -Value;
                break;

            case ShipDirection.Direction.West:
                movement.X = -Value;
                movement.Y = 0;
                break;
            }

            return(movement);
        }
Пример #2
0
        public ShipDirection.Direction Part1Execute(ShipDirection.Direction currentDirection)
        {
            int currentEnumValue = (int)currentDirection;
            int rotationValue    = Value / 90;
            int newEnumValue     = (currentEnumValue - rotationValue + 4) % 4;

            return((ShipDirection.Direction)newEnumValue);
        }