public override void Handle(IMarsRover marsRover) { if (marsRover.CurrentNavigator.Equals('L')) { marsRover.UpdateDirection(Enum_Direction.Direction_N); marsRover.SetCurrentState(NorthPointing); } else if (marsRover.CurrentNavigator.Equals('R')) { marsRover.UpdateDirection(Enum_Direction.Direction_S); marsRover.SetCurrentState(SouthPointing); } else if (marsRover.CurrentNavigator.Equals('M')) { marsRover.UpdateCoordinate(marsRover.CurrentPosition.Xaxis + 1, marsRover.CurrentPosition.Yaxis); } }
public override void Handle(IMarsRover marsRover) { if (marsRover.CurrentNavigator.Equals('L')) { marsRover.UpdateDirection(Enum_Direction.Direction_W); marsRover.SetCurrentState(WestPointing); } else if (marsRover.CurrentNavigator.Equals('R')) { marsRover.UpdateDirection(Enum_Direction.Direction_E); marsRover.SetCurrentState(EastPointing); } else if (marsRover.CurrentNavigator.Equals('M')) { marsRover.UpdateCoordinate(marsRover.CurrentPosition.Xaxis, marsRover.CurrentPosition.Yaxis + 1); } }
public override void Handle(IMarsRover marsRover) { RoverState currentState = null; if (marsRover.CurrentPosition.Direction == Enum_Direction.Direction_N) { currentState = NorthPointing; } else if (marsRover.CurrentPosition.Direction == Enum_Direction.Direction_S) { currentState = SouthPointing; } else if (marsRover.CurrentPosition.Direction == Enum_Direction.Direction_E) { currentState = EastPointing; } else if (marsRover.CurrentPosition.Direction == Enum_Direction.Direction_W) { currentState = WestPointing; } marsRover.SetCurrentState(currentState); currentState.Handle(marsRover); }
public void Execute(IMarsRover marsRover) { marsRover.Forward(); }
public void InitiallizeRover(IPosition roverPosition) { _roverinAction = new MarsRover(roverPosition, _plateau,new InitialState()); }
public void Execute(IMarsRover marsRover) { marsRover.TurnRight(); }
public abstract void Handle(IMarsRover marsRover);
public void Execute(IMarsRover marsRover) { marsRover.TurnLeft(); }
public void Execute(IMarsRover marsRover) { Console.WriteLine("Navigation command not found"); }