# Hierarchy For All Packages

Package Hierarchies:

- robocode,
- robocode.annotation,
- robocode.control,
- robocode.control.events,
- robocode.control.snapshot,
- robocode.robotinterfaces,
- robocode.robotinterfaces.peer,
- robocode.util

## Class Hierarchy

- java.lang.Object
  - robocode._RobotBase (implements robocode.robotinterfaces.IBasicRobot, java.lang.Runnable)
    - robocode._Robot
      - robocode.Robot (implements robocode.robotinterfaces.IBasicEvents3, robocode.robotinterfaces.IInteractiveEvents, robocode.robotinterfaces.IInteractiveRobot, robocode.robotinterfaces.IPaintEvents, robocode.robotinterfaces.IPaintRobot)
        - robocode._AdvancedRobot
          - robocode._AdvancedRadiansRobot
            - robocode.AdvancedRobot (implements robocode.robotinterfaces.IAdvancedEvents, robocode.robotinterfaces.IAdvancedRobot)
              - robocode.TeamRobot (implements robocode.robotinterfaces.ITeamEvents, robocode.robotinterfaces.ITeamRobot)
                - robocode.RateControlRobot
    - robocode.JuniorRobot (implements robocode.robotinterfaces.IJuniorRobot)
  - robocode.control.events.BattleAdaptor (implements robocode.control.events.IBattleListener)
  - robocode.control.events.BattleEvent
    - robocode.control.events.BattleCompletedEvent
    - robocode.control.events.BattleErrorEvent
    - robocode.control.events.BattleFinishedEvent
    - robocode.control.events.BattleMessageEvent
    - robocode.control.events.BattlePausedEvent
    - robocode.control.events.BattleResumedEvent
    - robocode.control.events.BattleStartedEvent
    - robocode.control.events.RoundEndedEvent
    - robocode.control.events.RoundStartedEvent
    - robocode.control.events.TurnEndedEvent
    - robocode.control.events.TurnStartedEvent
  - robocode.control.BattlefieldSpecification (implements java.io.Serializable)
  - robocode.BattleResults (implements java.lang.Comparable<T>, java.io.Serializable)
    - robocode.control.RobotResults
  - robocode.BattleRules (implements java.io.Serializable)
  - robocode.control.BattleSpecification (implements java.io.Serializable)
  - robocode.Bullet (implements java.io.Serializable)
  - robocode.Condition
    - robocode.GunTurnCompleteCondition
    - robocode.MoveCompleteCondition
    - robocode.RadarTurnCompleteCondition
    - robocode.TurnCompleteCondition
  - robocode.Event (implements java.lang.Comparable<T>, java.io.Serializable)
    - robocode.BattleEndedEvent
    - robocode.BulletHitBulletEvent
    - robocode.BulletHitEvent
    - robocode.BulletMissedEvent
    - robocode.CustomEvent
    - robocode.DeathEvent
    - robocode.HitByBulletEvent
    - robocode.HitRobotEvent
    - robocode.HitWallEvent
    - robocode.KeyEvent
      - robocode.KeyPressedEvent
      - robocode.KeyReleasedEvent
      - robocode.KeyTypedEvent
    - robocode.MessageEvent
    - robocode.MouseEvent
      - robocode.MouseClickedEvent
      - robocode.MouseDraggedEvent
      - robocode.MouseEnteredEvent
      - robocode.MouseExitedEvent
      - robocode.MouseMovedEvent
      - robocode.MousePressedEvent
      - robocode.MouseReleasedEvent
      - robocode.MouseWheelMovedEvent
    - robocode.PaintEvent
    - robocode.RobotDeathEvent
    - robocode.RoundEndedEvent
    - robocode.ScannedRobotEvent
    - robocode.SkippedTurnEvent
    - robocode.StatusEvent
    - robocode.WinEvent
  - java.io.OutputStream (implements java.io.Closeable, java.io.Flushable)
    - robocode.RobocodeFileOutputStream
  - robocode.control.RandomFactory
  - robocode.Robocode
  - robocode.control.RobocodeEngine (implements robocode.control.IRobocodeEngine)
  - robocode.control.RobotSetup (implements java.io.Serializable)
  - robocode.control.RobotSpecification (implements java.io.Serializable)
  - robocode.RobotStatus (implements java.io.Serializable)
  - robocode.Rules
  - robocode.util.Utils
  - java.io.Writer (implements java.lang.Appendable, java.io.Closeable, java.io.Flushable)
    - java.io.OutputStreamWriter
      - robocode.RobocodeFileWriter

## Interface Hierarchy

- robocode.BorderSentry
- java.lang.Comparable<T>
  - robocode.control.snapshot.IScoreSnapshot
- robocode.Droid
- robocode.robotinterfaces.IAdvancedEvents
- robocode.robotinterfaces.IBasicEvents
  - robocode.robotinterfaces.IBasicEvents2
    - robocode.robotinterfaces.IBasicEvents3
  - robocode.robotinterfaces.IBasicEvents3
- robocode.robotinterfaces.IBasicRobot
  - robocode.robotinterfaces.IAdvancedRobot
    - robocode.robotinterfaces.ITeamRobot
  - robocode.robotinterfaces.IInteractiveRobot
  - robocode.robotinterfaces.IJuniorRobot
  - robocode.robotinterfaces.IPaintRobot
  - robocode.robotinterfaces.ITeamRobot
- robocode.robotinterfaces.peer.IBasicRobotPeer
  - robocode.robotinterfaces.peer.IAdvancedRobotPeer
    - robocode.robotinterfaces.peer.ITeamRobotPeer
  - robocode.robotinterfaces.peer.IJuniorRobotPeer
  - robocode.robotinterfaces.peer.IStandardRobotPeer
    - robocode.robotinterfaces.peer.IAdvancedRobotPeer
      - robocode.robotinterfaces.peer.ITeamRobotPeer
    - robocode.robotinterfaces.peer.ITeamRobotPeer
  - robocode.robotinterfaces.peer.ITeamRobotPeer
- robocode.control.events.IBattleListener
- robocode.control.snapshot.IBulletSnapshot
- robocode.control.snapshot.IDebugProperty
- robocode.robotinterfaces.IInteractiveEvents
- robocode.robotinterfaces.IPaintEvents
- robocode.control.IRobocodeEngine
- robocode.control.snapshot.IRobotSnapshot
- robocode.robotinterfaces.ITeamEvents
- robocode.control.snapshot.ITurnSnapshot
- robocode.control.RobocodeListener

## Annotation Type Hierarchy

- robocode.annotation.SafeStatic (implements java.lang.annotation.Annotation)

## Enum Hierarchy

- java.lang.Object
  - java.lang.Enum<E> (implements java.lang.Comparable<T>, java.io.Serializable)
    - robocode.control.snapshot.BulletState
    - robocode.control.snapshot.RobotState