public override string SetDirection(TurnPositionEnum turnPosition)
 {
     if (turnPosition == TurnPositionEnum.Right)
     {
         return(((Enum)CardinalDirectionEnum.South).GetDisplayName());
     }
     else
     {
         return(((Enum)CardinalDirectionEnum.Nort).GetDisplayName());
     }
 }
Esempio n. 2
0
        //Strategy Design
        public string SetDirection(CardinalDirectionEnum cardinalDirection, TurnPositionEnum turnPositionEnum)
        {
            switch (cardinalDirection)
            {
            case CardinalDirectionEnum.Nort:
                _cardinalDirectionStrategyContext = new CardinalDirectionStrategyContext(new NortDirection());
                return(_cardinalDirectionStrategyContext.ContextInterface(turnPositionEnum));

            case CardinalDirectionEnum.East:
                _cardinalDirectionStrategyContext = new CardinalDirectionStrategyContext(new EastDirection());
                return(_cardinalDirectionStrategyContext.ContextInterface(turnPositionEnum));

            case CardinalDirectionEnum.South:
                _cardinalDirectionStrategyContext = new CardinalDirectionStrategyContext(new SouthDirection());
                return(_cardinalDirectionStrategyContext.ContextInterface(turnPositionEnum));

            case CardinalDirectionEnum.West:
                _cardinalDirectionStrategyContext = new CardinalDirectionStrategyContext(new WestDirection());
                return(_cardinalDirectionStrategyContext.ContextInterface(turnPositionEnum));
            }
            return(nameof(cardinalDirection));
        }
 public abstract string SetDirection(TurnPositionEnum turnPosition);
Esempio n. 4
0
 public string ContextInterface(TurnPositionEnum turnPositionEnum)
 {
     return(_cardinalDirectionBaseStrategy.SetDirection(turnPositionEnum));
 }