Forum Clubic

Problème JAVA Robocode

Bonjour j’ai créé un petit robot mais j’ai un problème car j’essaye de l’utiliser pour créer une team.

J’ai ces 2 problèmes qui apparaissent lorsque je veux compiler mon fichier. J’utilise l’éditeur de robocode.

[b]Found 2 semantic errors compiling “E:/Robocode/Robot test/Team Ormeta/DonCorleone.java”:

  1. import static robocode.util.Utils.normalRelativeAngleDegrees;
    ^----^
    *** Semantic Error: Static imports are only supported for `-source 1.5’ or greater.(not yet implemented)

  2. turnGunRight(normalRelativeAngleDegrees(theta - getGunHeading()));
    ^-------------------------------------------------^
    *** Semantic Error: No accessible method with signature “normalRelativeAngleDegrees(double)” was found in type “sampleteam.DonCorleone”.
    Compile Failed (1)[/b]

Concernant le logiciel robocode j’ai la version 1.7.1.5 je comprends pas le problème me demandant une version plus récente. De plus ce problème apparaît avec un robot de la team sample le “MyFirstDroid”.

Si quelqu’un à une petite idée pour m’aider à corriger ce bug de compilation ça serait vraiment cool.
Merci d’avance.

Je vous met quand même le code de mon robot au cas ou:

[b]package sampleteam;

import robocode.ScannedRobotEvent;
import robocode.;
import java.awt.
;
import robocode.Droid;
import robocode.MessageEvent;
import robocode.TeamRobot;
import static robocode.util.Utils.normalRelativeAngleDegrees;

public class DonCorleone extends TeamRobot implements Droid {

int others;
boolean stopWhenSeeRobot=false;
boolean movingForward;

//Initialize gun turn speed to 3
int gunIncrement = 3;

public void run() {

out.println(“MyFirstDroid ready.”);

while (true){
setAhead(40000);
movingForward=true;
setTurnRight(90);
waitFor(new TurnCompleteCondition(this));
setTurnLeft(180);
waitFor(new TurnCompleteCondition(this));
setTurnRight(180);
waitFor(new TurnCompleteCondition(this));
}
}

public void onHitWall(HitWallEvent e) {
// Bounce off!
reverseDirection();
}

public void reverseDirection() {
if (movingForward) {
setBack(40000);
movingForward = false;
} else {
setAhead(40000);
movingForward = true;
}
}

public void onHitRobot(HitRobotEvent e) {
// If we’re moving the other robot, reverse!
if (e.isMyFault()) {
reverseDirection();
}
}

public void onMessageReceived(MessageEvent e) {
// Fire at a point
if (e.getMessage() instanceof Point) {
Point p = (Point) e.getMessage();
// Calculate x and y to target
double dx = p.getX() - this.getX();
double dy = p.getY() - this.getY();
// Calculate angle to target
double theta = Math.toDegrees(Math.atan2(dx, dy));

// Turn gun to target
turnGunRight(normalRelativeAngleDegrees(theta - getGunHeading()));
// Fire hard!
fire(3);
} // Set our colors
else if (e.getMessage() instanceof RobotColors) {
RobotColors c = (RobotColors) e.getMessage();

setBodyColor(c.bodyColor);
setGunColor(c.gunColor);
setRadarColor(c.radarColor);
setScanColor(c.scanColor);
setBulletColor(c.bulletColor);
}
}
}[/b]

Salut,

tu utilises quelle version de Java ?
Apparemment, tu es sur une ancienne version, incompatible avec le “import static” qui nécessite d’être au moins en 1.5

comme la dis sheris, apparemment tu utilises une version de java antérieur à Tiger (1.5)

pour ta 2eme erreur, apparemment tu ne passes pas les bons paramètre à la méthode normalRelativeAngleDegrees, tu dois lui passé un double