Package robocode

Class Bullet

java.lang.Object
robocode.Bullet
All Implemented Interfaces:
Serializable

public class Bullet extends Object implements Serializable
Represents a bullet. This is returned from Robot.fireBullet(double) and AdvancedRobot.setFireBullet(double), and all the bullet-related events.
Author:
Mathew A. Nelson (original), Flemming N. Larsen (contributor)
See Also:
  • Constructor Summary

    Constructors
    Constructor
    Description
    Bullet(double heading, double x, double y, double power, String ownerName, String victimName, boolean isActive, int bulletId)
    Called by the game to create a new Bullet object
  • Method Summary

    Modifier and Type
    Method
    Description
    boolean
     
    double
    Returns the direction the bullet is/was heading, in degrees (0 <= getHeading() < 360).
    double
    Returns the direction the bullet is/was heading, in radians (0 <= getHeadingRadians() < 2 * Math.PI).
    Returns the name of the robot that fired this bullet.
    double
    Returns the power of this bullet.
    double
    Returns the velocity of this bullet.
    Returns the name of the robot that this bullet hit, or null if the bullet has not hit a robot.
    double
    Returns the X position of the bullet.
    double
    Returns the Y position of the bullet.
    int
     
    boolean
    Checks if this bullet is still active on the battlefield.

    Methods inherited from class java.lang.Object

    clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
  • Constructor Details

    • Bullet

      public Bullet(double heading, double x, double y, double power, String ownerName, String victimName, boolean isActive, int bulletId)
      Called by the game to create a new Bullet object
      Parameters:
      heading - the heading of the bullet, in radians.
      x - the starting X position of the bullet.
      y - the starting Y position of the bullet.
      power - the power of the bullet.
      ownerName - the name of the owner robot that owns the bullet.
      victimName - the name of the robot hit by the bullet.
      isActive - true if the bullet still moves; false otherwise.
      bulletId - unique id of bullet for owner robot.
  • Method Details

    • equals

      public boolean equals(Object obj)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • getHeading

      public double getHeading()
      Returns the direction the bullet is/was heading, in degrees (0 <= getHeading() < 360). This is not relative to the direction you are facing.
      Returns:
      the direction the bullet is/was heading, in degrees
    • getHeadingRadians

      public double getHeadingRadians()
      Returns the direction the bullet is/was heading, in radians (0 <= getHeadingRadians() < 2 * Math.PI). This is not relative to the direction you are facing.
      Returns:
      the direction the bullet is/was heading, in radians
    • getName

      public String getName()
      Returns the name of the robot that fired this bullet.
      Returns:
      the name of the robot that fired this bullet
    • getPower

      public double getPower()
      Returns the power of this bullet.

      The bullet will do (4 * power) damage if it hits another robot. If power is greater than 1, it will do an additional 2 * (power - 1) damage. You will get (3 * power) back if you hit the other robot.

      Returns:
      the power of the bullet
    • getVelocity

      public double getVelocity()
      Returns the velocity of this bullet. The velocity of the bullet is constant once it has been fired.
      Returns:
      the velocity of the bullet
    • getVictim

      public String getVictim()
      Returns the name of the robot that this bullet hit, or null if the bullet has not hit a robot.
      Returns:
      the name of the robot that this bullet hit, or null if the bullet has not hit a robot.
    • getX

      public double getX()
      Returns the X position of the bullet.
      Returns:
      the X position of the bullet
    • getY

      public double getY()
      Returns the Y position of the bullet.
      Returns:
      the Y position of the bullet
    • isActive

      public boolean isActive()
      Checks if this bullet is still active on the battlefield.
      Returns:
      true if the bullet is still active on the battlefield; false otherwise