Interface ITeamRobotPeer

All Superinterfaces:
IAdvancedRobotPeer, IBasicRobotPeer, IStandardRobotPeer

public interface ITeamRobotPeer extends IAdvancedRobotPeer
The team robot peer for team robots like TeamRobot.

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

Since:
1.6
Author:
Pavel Savara (original), Flemming N. Larsen (contributor)
See Also:
  • Method Details

    • getTeammates

      String[] getTeammates()
      Returns the names of all teammates, or null there is no teammates.

      Example:

         public void run() {
             // Prints out all teammates
             String[] teammates = getTeammates();
             if (teammates != null) {
                 for (String member : teammates) {
                     out.println(member);
                 }
             }
         }
       
      Returns:
      a String array containing the names of all your teammates, or null if there is no teammates. The length of the String array is equal to the number of teammates.
      See Also:
    • isTeammate

      boolean isTeammate(String name)
      Checks if a given robot name is the name of one of your teammates.

      Example:

         public void onScannedRobot(ScannedRobotEvent e) {
             if (isTeammate(e.getName()) {
                 return;
             }
             fire(1);
         }
       
      Parameters:
      name - the robot name to check
      Returns:
      true if the specified name belongs to one of your teammates; false otherwise.
      See Also:
    • broadcastMessage

      void broadcastMessage(Serializable message) throws IOException
      Broadcasts a message to all teammates.

      Example:

         public void run() {
             broadcastMessage("I'm here!");
         }
       
      Parameters:
      message - the message to broadcast to all teammates
      Throws:
      IOException - if the message could not be broadcasted to the teammates
      See Also:
    • sendMessage

      void sendMessage(String name, Serializable message) throws IOException
      Sends a message to one (or more) teammates.

      Example:

         public void run() {
             sendMessage("sample.DroidBot", "I'm here!");
         }
       
      Parameters:
      name - the name of the intended recipient of the message
      message - the message to send
      Throws:
      IOException - if the message could not be sent
      See Also:
    • getMessageEvents

      List<MessageEvent> getMessageEvents()
      Returns a vector containing all MessageEvents currently in the robot's queue. You might, for example, call this while processing another event.

      Example:

         for (MessageEvent e : getMessageEvents()) {
            // do something with e
         }
       
      Returns:
      a vector containing all MessageEvents currently in the robot's queue
      Since:
      1.2.6
      See Also: