Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- package project;
- import robocode.HitWallEvent;
- import robocode.MessageEvent;
- import robocode.ScannedRobotEvent;
- import robocode.TeamRobot;
- import static robocode.util.Utils.normalRelativeAngleDegrees;
- public class Terminator extends TeamRobot {
- String enemyName = "";
- public void run() {
- while (true) {
- turnGunLeft(360);
- }
- }
- public void onScannedRobot(ScannedRobotEvent e) {
- double absoluteBearing = getHeading() + e.getBearing();
- double bearingFromGun = normalRelativeAngleDegrees(absoluteBearing - getGunHeading());
- if (!enemyName.equals(null)){
- turnRight(360);
- if(e.getName().equalsIgnoreCase(enemyName)){
- while (!enemyName.equals(null)){
- if (Math.abs(bearingFromGun) <= 3) {
- turnGunRight(bearingFromGun);
- if (getGunHeat() == 0) {
- fire(Math.min(3 - Math.abs(bearingFromGun), getEnergy() - .1));
- }
- } else {
- turnGunRight(bearingFromGun);
- }
- if (bearingFromGun == 0) {
- scan();
- }
- }
- }
- }
- }
- public void onHitWall(HitWallEvent e) {
- }
- @Override
- public void onMessageReceived(MessageEvent event) {
- if (event.getMessage() instanceof DirectMessage) {
- DirectMessage dm = (DirectMessage) event.getMessage();
- enemyName = dm.getEnemyName();
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement