### robocode.robotinterfaces.peer

# Interface IJuniorRobotPeer

All Superinterfaces:
  IBasicRobotPeer

`public interface IJuniorRobotPeer`
`extends IBasicRobotPeer`

The junior robot peer for junior robot types like `JuniorRobot`.

A robot peer is the object that deals with game mechanics and rules, and makes sure your robot abides by them.

Authors:
  Pavel Savara (original)
  Flemming N. Larsen (javadoc)

Since:
  1.6

See Also:
  `IBasicRobotPeer`, `IStandardRobotPeer`, `IAdvancedRobotPeer`, `ITeamRobotPeer`

  ## Method Summary

  `void`

  `turnAndMove(double distance, double radians)`
    Moves this robot forward or backwards by pixels and turns this robot right or left by degrees at the same time.

  ### Methods inherited from interface robocode.robotinterfaces.peer.IBasicRobotPeer

  `execute`, `fire`, `getBattleFieldHeight`, `getBattleFieldWidth`, `getBodyHeading`, `getBodyTurnRemaining`, `getCall`, `getDistanceRemaining`, `getEnergy`, `getGraphics`, `getGunCoolingRate`, `getGunHeading`, `getGunHeat`, `getGunTurnRemaining`, `getName`, `getNumRounds`, `getOthers`, `getRadarHeading`, `getRadarTurnRemaining`, `getRoundNum`, `getTime`, `getVelocity`, `getX`, `getY`, `move`, `setBodyColor`, `setBulletColor`, `setCall`, `setDebugProperty`, `setFire`, `setGunColor`, `setRadarColor`, `setScanColor`, `turnBody`, `turnGun`

## Method Details

### turnAndMove

    public void turnAndMove(double distance,
                            double radians)

> Moves this robot forward or backwards by pixels and turns this robot right or left by degrees at the same time. The robot will move in a curve that follows a perfect circle, and the moving and turning will end at exactly the same time.

> Note that the max. velocity and max. turn rate is automatically adjusted, which means that the robot will move slower the sharper the turn is compared to the distance.

> Note that both positive and negative values can be given as input:
> - If the `distance` parameter is set to a positive value, it means that the robot is set to move forward, and a negative value means that the robot is set to move backward. If set to 0, the robot will not move, but will be able to turn.
> - If the `radians` parameter is set to a positive value, it means that the robot is set to turn to the right, and a negative value means that the robot is set to turn to the left. If set to 0, the robot will not turn, but will be able to move.
> Parameters:
>   `distance` - the distance to move measured in pixels. If `distance` > 0 the robot is set to move forward. If `distance` <320 the robot is set to move backward. If `distance` = 0 the robot will not move anywhere, but just finish its turn.
>   `radians` - the amount of radians to turn the robot's body. If `radians` > 0 the robot's body is set to turn right. If `radians` <320 the robot's body is set to turn left. If `radians` = 0 the robot's body is set to stop turning.
> See Also:
>   `move(double)`, `turnBody(double)`, `getBodyHeading()`, `getX()`, `getY()`