### robocode.robotinterfaces

# Interface IInteractiveRobot

All Superinterfaces:
  IBasicRobot

Known Implementing Classes:
  AdvancedRobot, Robot, TeamRobot

`public interface IInteractiveRobot`
`extends IBasicRobot`

A robot interface for creating an interactive type of robot like `Robot` and `AdvancedRobot` that is able to receive interactive events from the keyboard or mouse. If a robot is directly inherited from this class it will behave as similar to a `IBasicRobot`. If you need it to behave similar to a `IAdvancedRobot` or `ITeamRobot`, you should inherit from these interfaces instead, as these are inherited from this interface.

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

Since:
  1.6

See Also:
  `Robot`, `AdvancedRobot`, `IBasicRobot`, `IJuniorRobot`, `IAdvancedRobot`, `ITeamRobot`

  ## Method Summary

  `IInteractiveEvents`

  `getInteractiveEventListener()`
    This method is called by the game to notify this robot about interactive events, i.e.

  ### Methods inherited from interface robocode.robotinterfaces.IBasicRobot

  `getBasicEventListener`, `getRobotRunnable`, `setOut`, `setPeer`

## Method Details

### getInteractiveEventListener

    public IInteractiveEvents getInteractiveEventListener()

> This method is called by the game to notify this robot about interactive events, i.e. keyboard and mouse events. Hence, this method must be implemented so it returns your `IInteractiveEvents` listener.
> Returns:
>   listener to interactive events or `null` if this robot should not receive the notifications.
> Since:
>   1.6