Compare commits

..

15 Commits

Author SHA1 Message Date
zhoudaxia ba97cf4450 严重代码修改 2016-09-02 00:54:01 +08:00
zhoudaxia ce72ad8a55 修改严重代码 2016-09-02 00:30:59 +08:00
zhoudaxia 15f56c9d26 修改严重代码 2016-09-01 23:18:28 +08:00
zhoudaxia 428f63be82 修改严重代码 2016-09-01 23:11:51 +08:00
zhoudaxia 37cb8ae223 修改严重问题 2016-09-01 22:46:26 +08:00
zhoudaxia 01614f6152 修改严重问题 2016-09-01 22:45:59 +08:00
zhoudaxia 711da1c2e4 修改严重代码 2016-09-01 22:29:29 +08:00
zhoudaxia 728a702a9d 修改严重问题 2016-09-01 22:20:58 +08:00
zhoudaxia 18653a1fe4 修改严重问题 2016-09-01 22:12:06 +08:00
zhoudaxia cf4255bf7f 修改严重问题 2016-09-01 22:00:49 +08:00
zhoudaxia 3f28bbc589 修改严重问题 2016-09-01 21:50:46 +08:00
zhoudaxia 289fd3897e 修改严重问题 2016-09-01 21:29:30 +08:00
zhoudaxia db49a0302a 修改严重问题 2016-09-01 21:01:57 +08:00
zhoudaxia 167ade0f7b 修改严重问题 2016-09-01 20:51:23 +08:00
zhoudaxia 1ccaad8189 修改重要问题 2016-09-01 20:31:05 +08:00
147 changed files with 3026 additions and 528 deletions

View File

@ -0,0 +1,2 @@
eclipse.preferences.version=1
org.eclipse.jdt.launching.PREF_VM_XML=<?xml version\="1.0" encoding\="UTF-8" standalone\="no"?>\r\n<vmSettings defaultVM\="57,org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType13,1471573647997" defaultVMConnector\="">\r\n<vmType id\="org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType">\r\n<vm id\="1471573647997" name\="jdk1.6.0_45" path\="C\:\\Program Files\\Java\\jdk1.6.0_45"/>\r\n</vmType>\r\n</vmSettings>\r\n

View File

@ -0,0 +1,4 @@
activeuserprofiles=DESKTOP-SHKMAML;Team
eclipse.preferences.version=1
org.eclipse.rse.systemtype.local.systemType.defaultUserId=Terrans Force
useridperkey=DESKTOP-SHKMAML.Local\=Terrans Force;

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,29 @@
INDEX VERSION 1.126+E:\2016Spring\robocodefiles\download\app\workspace_robo4\.metadata\.plugins\org.eclipse.jdt.core
3253539546.index
240634369.index
3357244662.index
3837392347.index
1270703585.index
743580145.index
4213330522.index
2815204631.index
972965919.index
649753860.index
2097671088.index
2394798482.index
1886545541.index
2420224983.index
9299668.index
2806151389.index
2816454019.index
2169288515.index
3228954160.index
2122446671.index
2936589608.index
1812437159.index
2690281349.index
3090911769.index
844486800.index
195189658.index
2555277089.index
4256357263.index

View File

@ -1,14 +0,0 @@
Robocode is licensed under the Eclipse Public License v1.0 (EPL), which is available at
http://robocode.sourceforge.net/license/epl-v10.html
Notable exceptions are:
-----------------------
Ant and Maven tools:
- Files/tools located under the directory /tools/bin are licensed under the Apache Software Foundation (Apache-2.0):
http://www.apache.org/licenses/LICENSE-2.0.html
The license files for the Ant and Maven tools are provided under the /tools/licenses directory.
CILReader.cs:
- The file /plugins/dotnet/robocode.dotnet.nhost/src/mono/reflection/CILReader.cs is copyrighted (C) 2009 Novell, Inc.
(http://www.novell.com)

View File

@ -65,7 +65,7 @@ public class Module extends BaseModule {
Container.cache.addComponent("robocode.host.vb", DotNetHost.class);
Container.cache.addComponent("robocode.host.dotnet", DotNetHost.class);
} catch (Throwable e) {
} catch (RuntimeException e) {
Logger.logError(e);
throw new Error("Can't initialize .NET Robocode", e);
}

View File

@ -42,7 +42,9 @@ public class AutoExtract implements ActionListener {
JarFile extractJar = new JarFile("extract.jar");
is = extractJar.getInputStream(extractJar.getJarEntry("license/cpl-v10.html"));
} catch (IOException e) {
extractJar.close();
} catch (Exception e) {
throw new RuntimeException(e);
return true;
}
if (is == null) {
@ -145,7 +147,6 @@ public class AutoExtract implements ActionListener {
JOptionPane.showMessageDialog(null, message);
System.err.println(message);
System.exit(0);
}
JarInputStream jarIS = null;
try {
@ -218,8 +219,8 @@ public class AutoExtract implements ActionListener {
if (jarIS != null) {
try {
jarIS.close();
} catch (IOException e) {
e.printStackTrace();
} catch (Exception e) {
LOGGER.log("context", e);
}
}
}
@ -240,9 +241,11 @@ public class AutoExtract implements ActionListener {
// Set native look and feel
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Throwable t) {// For some reason Ubuntu 7 can cause a NullPointerException when trying to getting the LAF
} catch (Exception t) {// For some reason Ubuntu 7 can cause a NullPointerException when trying to getting the LAF
throw new RuntimeException(e);
}
File suggestedDir;
AutoExtract extractor = new AutoExtract();
@ -333,7 +336,8 @@ public class AutoExtract implements ActionListener {
} else {
System.out.println("Warning: " + file + " may be a symlink. It has been ignored");
}
} catch (IOException e) {
} catch (Exception e) {
throw new RuntimeException(e);
System.out.println(
"Warning: Cannot determine canonical file for " + file + ". It has been ignored");
}

View File

@ -40,33 +40,33 @@ public class TestMaxTurnRate extends RobocodeTestBed {
if (event.getTurnSnapshot().getTurn() == 26) {
final String out = buf.toString();
Assert.assertTrue(out.contains("1: 0.0, 0.0") | out.contains("1: 0.0, -0.0"));
Assert.assertTrue(out.contains("2: 0.0, -1.0") | out.contains("2: 0.0, -0.999999999"));
Assert.assertTrue(out.contains("3: 0.0, -2.0") | out.contains("3: 0.0, -1.999999999"));
Assert.assertTrue(out.contains("4: 0.0, -3.0") | out.contains("4: 0.0, -2.999999999"));
Assert.assertTrue(out.contains("5: 0.0, -4.0") | out.contains("5: 0.0, -3.999999999"));
Assert.assertTrue(out.contains("6: 0.0, -5.0") | out.contains("6: 0.0, -4.999999999"));
Assert.assertTrue(out.contains("7: 0.0, -6.0") | out.contains("7: 0.0, -5.999999999"));
Assert.assertTrue(out.contains("8: 0.0, -7.0") | out.contains("8: 0.0, -6.999999999"));
Assert.assertTrue(out.contains("9: 0.0, -8.0") | out.contains("9: 0.0, -7.999999999"));
Assert.assertTrue(out.contains("10: 0.0, -9.0") | out.contains("10: 0.0, -8.999999999"));
Assert.assertTrue(out.contains("11: 0.0, -10.0") | out.contains("11: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("12: 0.0, -10.0") | out.contains("12: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("13: 0.0, -10.0") | out.contains("13: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("1: 0.0, 0.0") || out.contains("1: 0.0, -0.0"));
Assert.assertTrue(out.contains("2: 0.0, -1.0") || out.contains("2: 0.0, -0.999999999"));
Assert.assertTrue(out.contains("3: 0.0, -2.0") || out.contains("3: 0.0, -1.999999999"));
Assert.assertTrue(out.contains("4: 0.0, -3.0") || out.contains("4: 0.0, -2.999999999"));
Assert.assertTrue(out.contains("5: 0.0, -4.0") || out.contains("5: 0.0, -3.999999999"));
Assert.assertTrue(out.contains("6: 0.0, -5.0") || out.contains("6: 0.0, -4.999999999"));
Assert.assertTrue(out.contains("7: 0.0, -6.0") || out.contains("7: 0.0, -5.999999999"));
Assert.assertTrue(out.contains("8: 0.0, -7.0") || out.contains("8: 0.0, -6.999999999"));
Assert.assertTrue(out.contains("9: 0.0, -8.0") || out.contains("9: 0.0, -7.999999999"));
Assert.assertTrue(out.contains("10: 0.0, -9.0") || out.contains("10: 0.0, -8.999999999"));
Assert.assertTrue(out.contains("11: 0.0, -10.0") || out.contains("11: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("12: 0.0, -10.0") || out.contains("12: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("13: 0.0, -10.0") || out.contains("13: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("14: 0.0, 0.0") | out.contains("14: 0.0, -0.0"));
Assert.assertTrue(out.contains("15: 0.0, 1.0") | out.contains("15: 0.0, 0.999999999"));
Assert.assertTrue(out.contains("16: 0.0, 2.0") | out.contains("16: 0.0, 1.999999999"));
Assert.assertTrue(out.contains("17: 0.0, 3.0") | out.contains("17: 0.0, 2.999999999"));
Assert.assertTrue(out.contains("18: 0.0, 4.0") | out.contains("18: 0.0, 3.999999999"));
Assert.assertTrue(out.contains("19: 0.0, 5.0") | out.contains("19: 0.0, 4.999999999"));
Assert.assertTrue(out.contains("20: 0.0, 6.0") | out.contains("20: 0.0, 5.999999999"));
Assert.assertTrue(out.contains("21: 0.0, 7.0") | out.contains("21: 0.0, 6.999999999"));
Assert.assertTrue(out.contains("22: 0.0, 8.0") | out.contains("22: 0.0, 7.999999999"));
Assert.assertTrue(out.contains("23: 0.0, 9.0") | out.contains("23: 0.0, 8.999999999"));
Assert.assertTrue(out.contains("24: 0.0, 10.0") | out.contains("24: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("25: 0.0, 10.0") | out.contains("25: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("26: 0.0, 10.0") | out.contains("26: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("14: 0.0, 0.0") || out.contains("14: 0.0, -0.0"));
Assert.assertTrue(out.contains("15: 0.0, 1.0") || out.contains("15: 0.0, 0.999999999"));
Assert.assertTrue(out.contains("16: 0.0, 2.0") || out.contains("16: 0.0, 1.999999999"));
Assert.assertTrue(out.contains("17: 0.0, 3.0") || out.contains("17: 0.0, 2.999999999"));
Assert.assertTrue(out.contains("18: 0.0, 4.0") || out.contains("18: 0.0, 3.999999999"));
Assert.assertTrue(out.contains("19: 0.0, 5.0") || out.contains("19: 0.0, 4.999999999"));
Assert.assertTrue(out.contains("20: 0.0, 6.0") || out.contains("20: 0.0, 5.999999999"));
Assert.assertTrue(out.contains("21: 0.0, 7.0") || out.contains("21: 0.0, 6.999999999"));
Assert.assertTrue(out.contains("22: 0.0, 8.0") || out.contains("22: 0.0, 7.999999999"));
Assert.assertTrue(out.contains("23: 0.0, 9.0") || out.contains("23: 0.0, 8.999999999"));
Assert.assertTrue(out.contains("24: 0.0, 10.0") || out.contains("24: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("25: 0.0, 10.0") || out.contains("25: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("26: 0.0, 10.0") || out.contains("26: 0.0, 9.999999999"));
}
}
}

View File

@ -48,6 +48,7 @@ public class AutoExtract implements ActionListener {
JarFile extractJar = new JarFile("extract.jar");
is = extractJar.getInputStream(extractJar.getJarEntry("license/cpl-v10.html"));
extractFJar.close();
} catch (IOException e) {
return true;
}
@ -246,11 +247,11 @@ public class AutoExtract implements ActionListener {
// Set native look and feel
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Throwable t) {// For some reason Ubuntu 7 can cause a NullPointerException when trying to getting the LAF
} catch (RuntimeException t) {// For some reason Ubuntu 7 can cause a NullPointerException when trying to getting the LAF
}
File installDir = null;
File suggestedDir;
File suggestedDir;s
AutoExtract extractor = new AutoExtract();

View File

@ -12,7 +12,7 @@ package net.sf.robocode.core;
* @author Pavel Savara (original)
*/
public abstract class ContainerBase {
public static ContainerBase instance;
public static final ContainerBase instance;
protected abstract <T> T getBaseComponent(java.lang.Class<T> tClass);

View File

@ -31,7 +31,7 @@ public class FileUtil {
FileUtil.setCwd(new File(wd));
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}

View File

@ -97,7 +97,7 @@ public class Logger {
ByteArrayOutputStream baos = new ByteArrayOutputStream();
PrintStream ps = new PrintStream(baos);
t.printStackTrace(ps);
LOGGER.log("context", t);
ps.close();
return baos.toString();
}

View File

@ -110,10 +110,9 @@ public class HiddenAccess {
Logger.logError("Can't find robocode.core-1.x.jar module near to robocode.jar");
Logger.logError("Class path: " + System.getProperty("robocode.class.path", null));
}
System.exit(-1);
} catch (MalformedURLException e) {
Logger.logError(e);
} catch (Error e) {
} catch (MyException e) {
Logger.logError(e);
throw e;
}

View File

@ -61,6 +61,7 @@ public abstract class Event implements Comparable<Event>, Serializable {
* has a lower precedence, i.e. must be listed after the specified event.
* 0 means that the precedence of the two events are equal.
*/
@Override
public int compareTo(Event event) {
// Compare the time difference which has precedence over priority.
int timeDiff = (int) (time - event.time);

View File

@ -193,7 +193,7 @@ public class JuniorRobot extends _RobotBase implements IJuniorRobot {
* @see #scannedVelocity
* @see #scannedHeading
*/
public int scannedDistance = -1;
public int scannedDistance = -1;
/**
* Current angle to the scanned nearest other robot (in degrees).
@ -207,7 +207,7 @@ public class JuniorRobot extends _RobotBase implements IJuniorRobot {
* @see #scannedVelocity
* @see #scannedHeading
*/
public int scannedAngle = -1;
public int scannedAngle = -1;
/**
* Current angle to the scanned nearest other robot (in degrees) compared to

View File

@ -58,9 +58,7 @@ public abstract class _RobotBase implements IBasicRobot, Runnable {
* Called by the system to 'clean up' after your robot.
* You may not override this method.
*/
@Override
protected final void finalize() throws Throwable { // This method must be final so it cannot be overridden!
super.finalize();
}
/**

View File

@ -115,7 +115,6 @@ public class RobocodeEngine implements IRobocodeEngine {
/**
* {@inheritDoc}
*/
@Override
protected void finalize() throws Throwable {
try {
// Make sure close() is called to prevent memory leaks

View File

@ -24,7 +24,7 @@ public class RobotSpecification implements java.io.Serializable {
private static final long serialVersionUID = 1L;
private final Object fileSpecification;
private final transient Object fileSpecification;
private final String name;
private final String author;
private final String webpage;

View File

@ -165,7 +165,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
teamMembers = null;
isTeamLeader = false;
teamIndex = -1; // Must be set to -1 when robot is not in a team
} else {
} else if(team != null){
teamName = team.getName();
teamMembers = team.getMemberNames();
isTeamLeader = team.size() == 1; // That is current team size, more might follow later. First robot is leader
@ -555,6 +555,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
// Notifying battle that we're asleep
// Sleeping and waiting for battle to wake us up.
try {
while (!suitableCondition())
isSleeping.wait();
} catch (InterruptedException e) {
// We are expecting this to happen when a round is ended!
@ -581,7 +582,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
// Wake up the thread
isSleeping.notifyAll();
try {
isSleeping.wait(10000);
} catch (InterruptedException e) {
// Immediately reasserts the exception by interrupting the caller thread itself
Thread.currentThread().interrupt();
@ -607,10 +608,11 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
if (!isSleeping()) {
try {
for (long i = millisWait; i > 0 && !isSleeping() && isRunning(); i--) {
while(long i = millisWait; i > 0 && !isSleeping() && isRunning()) {
isSleeping.wait(0, 999999);
i--;
}
if (!isSleeping() && isRunning()) {
while (!isSleeping() && isRunning()) {
isSleeping.wait(0, nanosWait);
}
} catch (InterruptedException e) {
@ -809,6 +811,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
synchronized (isSleeping) {
try {
// Wait for the robot to go to sleep (take action)
while (!suitableCondition())
isSleeping.wait(waitMillis, waitNanos);
} catch (InterruptedException e) {
logMessage("Wait for " + getName() + " interrupted.");
@ -848,7 +851,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
println("SYSTEM: You cannot call fire(NaN)");
continue;
}
if (gunHeat > 0 || energy == 0) {
if (gunHeat > 0 ) {
return;
}
@ -919,17 +922,14 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
// Scan false means robot did not call scan() manually.
// But if we're moving, scan
if (!scan) {
scan = (lastHeading != bodyHeading || lastGunHeading != gunHeading || lastRadarHeading != radarHeading
|| lastX != x || lastY != y);
}
if (isDead()) {
return;
}
// zap
if (zapEnergy != 0) {
zap(zapEnergy);
}
}
@ -942,7 +942,6 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
// scan
if (scan) {
scan(lastRadarHeading, robots);
turnedRadarWithGun = (lastGunHeading == lastRadarHeading) && (gunHeading == radarHeading);
scan = false;
}
@ -1034,7 +1033,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
this.updateEnergy(-Rules.ROBOT_HIT_DAMAGE);
otherRobot.updateEnergy(-Rules.ROBOT_HIT_DAMAGE);
if (otherRobot.energy == 0) {
if (otherRobot.energy) {
if (otherRobot.isAlive()) {
otherRobot.kill();
if (!teamFire && !otherRobot.isSentryRobot()) {
@ -1182,14 +1181,14 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
addEvent(new HitWallEvent(angle));
// only fix both x and y values if hitting wall at an angle
if ((bodyHeading % (Math.PI / 2)) != 0) {
if ((bodyHeading % (Math.PI / 2))) {
double tanHeading = tan(bodyHeading);
// if it hits bottom or top wall
if (adjustX == 0) {
if (adjustX ) {
adjustX = adjustY * tanHeading;
} // if it hits a side wall
else if (adjustY == 0) {
else if (adjustY) {
adjustY = adjustX / tanHeading;
} // if the robot hits 2 walls at the same time (rare, but just in case)
else if (abs(adjustX / tanHeading) > abs(adjustY)) {
@ -1423,7 +1422,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
// If we are moving normally and the breaking distance is more
// than remaining distance, enabled the overdrive flag.
if (Math.signum(distance * velocity) != -1) {
if (Math.signum(distance * velocity) ) {
if (getDistanceTraveledUntilStop(velocity) > Math.abs(distance)) {
isOverDriving = true;
} else {
@ -1433,7 +1432,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
currentCommands.setDistanceRemaining(distance - velocity);
if (velocity != 0) {
if (!velocity) {
x += velocity * sin(bodyHeading);
y += velocity * cos(bodyHeading);
updateBoundingBox();
@ -1469,7 +1468,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
final double goalVel;
if (distance == Double.POSITIVE_INFINITY) {
if (distance ) {
goalVel = currentCommands.getMaxVelocity();
} else {
goalVel = Math.min(getMaxVelocity(distance), currentCommands.getMaxVelocity());
@ -1486,7 +1485,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
final double decelTime = Math.max(1, Math.ceil(// sum of 0... decelTime, solving for decelTime using quadratic formula
(Math.sqrt((4 * 2 / Rules.DECELERATION) * distance + 1) - 1) / 2));
if (decelTime == Double.POSITIVE_INFINITY) {
if (decelTime) {
return Rules.MAX_VELOCITY;
}
@ -1559,7 +1558,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
}
private void zap(double zapAmount) {
if (energy == 0) {
if (!energy) {
kill();
return;
}
@ -1627,7 +1626,7 @@ public final class RobotPeer implements IRobotPeerBattle, IRobotPeer {
}
private void setEnergy(double newEnergy, boolean resetInactiveTurnCount) {
if (resetInactiveTurnCount && (energy != newEnergy)) {
if (resetInactiveTurnCount && (energy)) {
battle.resetInactiveTurnCount(energy - newEnergy);
}
energy = newEnergy;

View File

@ -115,7 +115,7 @@ public final class RobotSnapshot implements Serializable, IXmlSerializable, IRob
private SerializableArc scanArc;
/** Snapshot of the object with queued calls for Graphics object */
private Object graphicsCalls;
private transient Object graphicsCalls;
/** Snapshot of debug properties */
private DebugProperty[] debugProperties;

View File

@ -34,7 +34,7 @@ class BattleRecordInfo implements Serializable, IXmlSerializable {
int roundsCount;
BattleRules battleRules;
Integer[] turnsInRounds;
List<BattleResults> results;
transient List<BattleResults> results;
public void writeXml(XmlWriter writer, SerializableOptions options) throws IOException {
writer.startElement("recordInfo"); {

View File

@ -28,7 +28,7 @@ import java.util.Calendar;
* @author Flemming N. Larsen (original)
*/
class BattleRecorder {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd-HHmmss");
private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd-HHmmss");
private final RecordManager recordmanager;
private final ISettingsManager properties;

View File

@ -36,7 +36,7 @@ import java.util.zip.ZipOutputStream;
* @author Pavel Savara (original)
*/
public class RecordManager implements IRecordManager {
private static final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd-HHmmss");
private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyyMMdd-HHmmss");
private final ISettingsManager properties;
@ -57,13 +57,6 @@ public class RecordManager implements IRecordManager {
recorder = new BattleRecorder(this, properties);
}
protected void finalize() throws Throwable {
try {
cleanup();
} finally {
super.finalize();
}
}
private void cleanup() {
cleanupStreams();
@ -379,7 +372,7 @@ public class RecordManager implements IRecordManager {
fos.flush();
}
}
if (isxml) {
if (isxml&&xwr!=null) {
xwr.endElement(); // turns
xwr.endElement(); // record
osw.flush();

View File

@ -141,7 +141,7 @@ public class BattleResultsTableModel extends javax.swing.table.AbstractTableMode
case 2:
String percent = "";
if (totalScore != 0) {
if (!totalScore) {
percent = " (" + NumberFormat.getPercentInstance().format(statistics.getScore() / totalScore) + ")";
}
return "" + (int) (statistics.getScore() + 0.5) + percent;

View File

@ -46,7 +46,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onBattleStarted(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onBattleStarted " + listener.getClass(), ex);
}
}
@ -56,7 +56,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onBattleCompleted(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onBattleCompleted " + listener.getClass(), ex);
}
}
@ -66,7 +66,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onBattleFinished(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onBattleFinished " + listener.getClass(), ex);
}
}
@ -76,7 +76,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onBattlePaused(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onBattlePaused " + listener.getClass(), ex);
}
}
@ -86,7 +86,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onBattleResumed(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onBattleResumed " + listener.getClass(), ex);
}
}
@ -96,7 +96,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onRoundStarted(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onRoundStarted " + listener.getClass(), ex);
}
}
@ -106,7 +106,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onRoundEnded(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onRoundEnded " + listener.getClass(), ex);
}
}
@ -116,7 +116,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onTurnStarted(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onTurnStarted " + listener.getClass(), ex);
}
}
@ -126,7 +126,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onTurnEnded(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onTurnEnded " + listener.getClass(), ex);
}
}
@ -136,7 +136,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onBattleMessage(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
logError("onBattleMessage " + listener.getClass(), ex);
}
}
@ -146,7 +146,7 @@ public class BattleEventDispatcher implements IBattleListener {
for (IBattleListener listener : listeners) {
try {
listener.onBattleError(event);
} catch (Throwable ex) {
} catch (RuntimeException ex) {
Logger.realErr.println(listener.getClass() + " " + ex.getMessage());
}
}

View File

@ -108,7 +108,7 @@ public final class RobocodeMain extends RobocodeMainBase {
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread thread, Throwable t) {
t.printStackTrace();
LOGGER.log("context", t);
}
});
@ -144,7 +144,6 @@ public final class RobocodeMain extends RobocodeMainBase {
if (setup.battleFilename != null) {
if (setup.replayFilename != null) {
System.err.println("You cannot run both a battle and replay a battle record in the same time.");
System.exit(8);
}
setup.exitOnComplete = true;
@ -154,7 +153,7 @@ public final class RobocodeMain extends RobocodeMainBase {
battleManager.startNewBattle(battleManager.loadBattleProperties(), false, enableCLIRecording);
} else {
System.err.println("The specified battle file '" + setup.battleFilename + "' was not found");
System.exit(8);
}
} else if (setup.replayFilename != null) {
setup.exitOnComplete = true;
@ -168,10 +167,10 @@ public final class RobocodeMain extends RobocodeMainBase {
battleManager.replay();
} else {
System.err.println("The specified battle record file '" + setup.replayFilename + "' was not found");
System.exit(8);
}
}
} catch (Throwable e) {
} catch (RuntimeException e) {
Logger.logError(e);
}
}
@ -229,7 +228,7 @@ public final class RobocodeMain extends RobocodeMainBase {
setup.tps = Integer.parseInt(args[i + 1]);
if (setup.tps < 1) {
Logger.logError("tps must be > 0");
System.exit(8);
}
i++;
} else if (currentArg.equalsIgnoreCase("-minimize")) {
@ -248,21 +247,21 @@ public final class RobocodeMain extends RobocodeMainBase {
}
} else if (currentArg.equals("-?") || currentArg.equalsIgnoreCase("-help")) {
printUsage();
System.exit(0);
} else {
Logger.logError("Not understood: " + currentArg);
printUsage();
System.exit(8);
}
}
File robotsDir = FileUtil.getRobotsDir();
if (robotsDir == null) {
System.err.println("No valid robot directory is specified");
System.exit(8);
} else if (!(robotsDir.exists() && robotsDir.isDirectory())) {
System.err.println('\'' + robotsDir.getAbsolutePath() + "' is not a valid robot directory");
System.exit(8);
}
// The Default Toolkit must be set as soon as we know if we are going to use headless mode or not.
@ -278,7 +277,7 @@ public final class RobocodeMain extends RobocodeMainBase {
FileUtil.setCwd(new File(robocodeDir));
} catch (IOException e) {
System.err.println(robocodeDir + " is not a valid directory to start Robocode in.");
System.exit(8);
}
}

View File

@ -309,10 +309,13 @@ public final class RobotStatics implements IRobotStatics, Serializable {
int index = serializer.deserializeInt(buffer);
int contestantIndex = serializer.deserializeInt(buffer);
if(teammates!=null)
return new RobotStatics(robocodeVersion, isJuniorRobot, isInteractiveRobot, isPaintRobot, isAdvancedRobot,
isTeamRobot, isTeamLeader, isDroid, isSentryRobot, name, shortName, veryShortName, fullClassName,
shortClassName, battleRules, teammates.toArray(new String[teammates.size()]), teamName, index,
contestantIndex);
else
;
}
}

View File

@ -36,6 +36,7 @@ public class URLJarCollector {
private static final boolean sunJVM;
private static boolean enabled;
private static Set<URL> urlsToClean = new HashSet<URL>();
URI uri = url.toURI();
static {
boolean localSunJVM = false;

View File

@ -56,7 +56,7 @@ public final class ExecCommands implements Serializable {
private List<BulletCommand> bullets = new ArrayList<BulletCommand>();
private List<TeamMessage> teamMessages = new ArrayList<TeamMessage>();
private List<DebugProperty> debugProperties = new ArrayList<DebugProperty>();
private Object graphicsCalls;
private transient Object graphicsCalls;
public ExecCommands() {
setMaxVelocity(Double.MAX_VALUE);

View File

@ -160,7 +160,7 @@ public final class VersionManager implements IVersionManager {
version = versionFileLineToVersion(versionString);
} catch (Exception ignore) {}
}
if (version.equals(UNKNOWN_VERSION)) {
if (version!=null&&version.equals(UNKNOWN_VERSION)) {
logWarning("Getting version from file");
return getVersionFromFile();
}

View File

@ -68,7 +68,7 @@ public class CpuManager implements ICpuManager { // NO_UCD (use default)
}
// to cheat optimizer, almost never happen
if (d == 0.0) {
if (d) {
Logger.logMessage("bingo!");
}

View File

@ -99,8 +99,6 @@ public class HostManager implements IHostManager {
public void initSecurity() {
JarJarURLConnection.register();
new RobocodeSecurityPolicy(threadManager);
new RobocodeSecurityManager(threadManager);
}
}

View File

@ -88,7 +88,7 @@ public class JavaHost implements IHost {
}
return checkInterfaces(robotClass, robotItem);
} catch (Throwable t) {
} catch (RuntimeException t) {
if (message) {
logError("Got an error with " + robotItem.getFullClassName() + ": " + t); // just message here
if (t.getMessage() != null && t.getMessage().contains("Bad version number in .class file")) {

View File

@ -382,7 +382,7 @@ public final class EventManager implements IEventManager {
} catch (RuntimeException e) {
currentTopEvent = null;
throw e;
} catch (Error e) {
} catch (MyException e) {
currentTopEvent = null;
throw e;
} finally {
@ -423,7 +423,7 @@ public final class EventManager implements IEventManager {
}
} catch (Exception ex) {
robotProxy.println("SYSTEM: " + ex.getClass().getName() + " occurred on " + event.getClass().getName());
ex.printStackTrace(robotProxy.getOut());
LOGGER.log("context", ex);
}
}
}

View File

@ -259,7 +259,7 @@ public class RobotFileSystemManager {
updateDataFilesFromJar();
}
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}

View File

@ -280,7 +280,7 @@ public class RobotOutputStream extends java.io.PrintStream {
StringWriter sw = new StringWriter();
final PrintWriter writer = new PrintWriter(sw);
t.printStackTrace(writer);
LOGGER.log("context", t);
writer.flush();
int origLen = text.length();

View File

@ -126,21 +126,21 @@ public class BasicRobotProxy extends HostingRobotProxy implements IBasicRobotPee
setMoveImpl(distance);
do {
execute(); // Always tick at least once
} while (getDistanceRemaining() != 0);
} while (getDistanceRemaining());
}
public void turnBody(double radians) {
setTurnBodyImpl(radians);
do {
execute(); // Always tick at least once
} while (getBodyTurnRemaining() != 0);
} while (getBodyTurnRemaining());
}
public void turnGun(double radians) {
setTurnGunImpl(radians);
do {
execute(); // Always tick at least once
} while (getGunTurnRemaining() != 0);
} while (getGunTurnRemaining());
}
public Bullet fire(double power) {
@ -475,7 +475,7 @@ public class BasicRobotProxy extends HostingRobotProxy implements IBasicRobotPee
}
protected final void setMoveImpl(double distance) {
if (getEnergyImpl() == 0) {
if (!getEnergyImpl()) {
return;
}
commands.setDistanceRemaining(distance);
@ -487,7 +487,7 @@ public class BasicRobotProxy extends HostingRobotProxy implements IBasicRobotPee
println("SYSTEM: You cannot call fire(NaN)");
return null;
}
if (getGunHeatImpl() > 0 || getEnergyImpl() == 0) {
if (getGunHeatImpl() > 0 || !getEnergyImpl()) {
return null;
}

View File

@ -113,7 +113,7 @@ abstract class HostingRobotProxy implements IHostingRobotProxy, IHostedThread {
}
private void println(Throwable ex) {
ex.printStackTrace(out);
LOGGER.log("context", ex);
}
public RobotStatics getStatics() {
@ -157,7 +157,7 @@ abstract class HostingRobotProxy implements IHostingRobotProxy, IHostedThread {
private void loadClassBattle() {
try {
robotClassLoader.loadRobotMainClass(true);
} catch (Throwable e) {
} catch (RuntimeException e) {
println("SYSTEM: Could not load " + statics.getName() + " : ");
println(e);
drainEnergy();
@ -183,7 +183,7 @@ abstract class HostingRobotProxy implements IHostingRobotProxy, IHostedThread {
robot = null;
logError(e);
return false;
} catch (Throwable e) {
} catch (RuntimeException e) {
println("SYSTEM: An error occurred during initialization of " + statics.getName());
println("SYSTEM: " + e);
println(e);
@ -247,7 +247,7 @@ abstract class HostingRobotProxy implements IHostingRobotProxy, IHostedThread {
println(e);
logMessage(statics.getName() + " stopped successfully.");
throw e; // must be re-thrown in order to stop the thread
} catch (Throwable t) {
} catch (RuntimeException t) {
drainEnergy();
println(t);
logMessage(statics.getName() + ": Throwable: " + t); // without stack here

View File

@ -29,7 +29,7 @@ public class JuniorRobotProxy extends BasicRobotProxy implements IJuniorRobotPee
}
public void turnAndMove(double distance, double radians) {
if (distance == 0) {
if (!distance) {
turnBody(radians);
return;
}

View File

@ -244,7 +244,7 @@ public class RobotClassLoader extends URLClassLoader implements IRobotClassLoade
} else {
warnIfStaticRobotInstanceFields();
}
} catch (Throwable e) {
} catch (RuntimeException e) {
robotClass = null;
throw new ClassNotFoundException(e.getMessage(), e);
}
@ -289,7 +289,7 @@ public class RobotClassLoader extends URLClassLoader implements IRobotClassLoade
}
}
}
} catch (Throwable t) {
} catch (RuntimeException t) {
Logger.logError(t);
}
}
@ -305,7 +305,7 @@ public class RobotClassLoader extends URLClassLoader implements IRobotClassLoade
Class<?> type = null;
try {
type = loadRobotClassLocaly(className, false);
} catch (Throwable t) {
} catch (RuntimeException t) {
continue;
}
if (type != null) {
@ -366,7 +366,7 @@ public class RobotClassLoader extends URLClassLoader implements IRobotClassLoade
modifiersField.setInt(field, modifiers & ~Modifier.FINAL); // Remove the FINAL modifier
field.set(null, null);
} catch (Throwable ignore) {}
} catch (RuntimeException ignore) {}
}
/**
@ -383,7 +383,7 @@ public class RobotClassLoader extends URLClassLoader implements IRobotClassLoade
for (Field field: type.getDeclaredFields()) {
fields.add(field);
}
} catch (Throwable ignore) {// NoClassDefFoundError does occur with some robots, e.g. sgp.Drunken [1.12]
} catch (RuntimeException ignore) {// NoClassDefFoundError does occur with some robots, e.g. sgp.Drunken [1.12]
// We ignore all exceptions and errors here so we can proceed to retrieve
// field from super classes.
}

View File

@ -194,7 +194,7 @@ public class ThreadManager implements IThreadManager {
return false;
} catch (Exception e) {
syserr.println("Exception checking safe thread: ");
e.printStackTrace(syserr);
LOGGER.log("context", e);
return false;
}
}

View File

@ -68,5 +68,6 @@ public class JarJarTest {
ClassLoader ucl = new URLClassLoader(new URL[] { u});
ucl.loadClass(clas);
ucl.close();
}
}

View File

@ -53,7 +53,7 @@ public class AutoExtract implements ActionListener {
try {
d = Double.parseDouble(s);
} catch (NumberFormatException e) {
e.printStackTrace(System.err);
LOGGER.log("context", e);
}
return d;
@ -68,6 +68,7 @@ public class AutoExtract implements ActionListener {
JarFile extractJar = new JarFile("extract.jar");
is = extractJar.getInputStream(extractJar.getJarEntry("license/cpl-v10.html"));
extractJar.close();
} catch (IOException e) {
return true;
}
@ -97,14 +98,14 @@ public class AutoExtract implements ActionListener {
try {
br.close();
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
if (isr != null) {
try {
isr.close();
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
}
@ -287,7 +288,7 @@ public class AutoExtract implements ActionListener {
try {
jarIS.close();
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
}
@ -337,7 +338,7 @@ public class AutoExtract implements ActionListener {
// Set native look and feel
try {
UIManager.setLookAndFeel(UIManager.getSystemLookAndFeelClassName());
} catch (Throwable t) {// For some reason Ubuntu 7 can cause a NullPointerException when trying to getting the LAF
} catch (RuntimeException t) {// For some reason Ubuntu 7 can cause a NullPointerException when trying to getting the LAF
}
AutoExtract extractor = new AutoExtract();
@ -545,9 +546,9 @@ public class AutoExtract implements ActionListener {
}
return true;
} catch (IOException e) {
e.printStackTrace(System.err);
LOGGER.log("context", e);
} catch (InterruptedException e) {
e.printStackTrace(System.err);
LOGGER.log("context", e);
}
return false;
@ -603,14 +604,11 @@ public class AutoExtract implements ActionListener {
System.err.println("Could not create association(s)");
}
} catch (InterruptedException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
} finally {
if (out != null) {
out.close();
}
if (file != null) {
if (!file.delete()) {
System.err.println("Could not delete the file: " + file);
@ -665,7 +663,7 @@ public class AutoExtract implements ActionListener {
private static String getWindowsCmd() {
String os = System.getProperty("os.name");
return ((os.equals("Windows 95") || os.equals("Windows 95") || os.equals("Windows ME"))
return ((os.equals("Windows 95") || os.equals("Windows ME"))
? "command.com"
: "cmd.exe")
+ " /C ";

View File

@ -59,8 +59,6 @@ class Repository implements IRepository {
ObjectOutputStream oos = null;
try {
oos = new ObjectOutputStream(out);
oos.writeObject(uniqueRoots);
oos.writeObject(uniqueItems);
} catch (IOException e) {
Logger.logError("Can't save robot database", e);
} finally {

View File

@ -55,10 +55,6 @@ public abstract class RepositoryItem implements IRepositoryItem, Serializable {
isValid = valid;
}
@Override
public int hashCode() {
return 31 + ((itemUrl == null) ? 0 : itemUrl.hashCode());
}
@Override
public boolean equals(Object obj) {

View File

@ -62,6 +62,7 @@ public abstract class BaseRoot implements Serializable, IRepositoryRoot {
throw new UnsupportedOperationException();
}
@Override
public boolean equals(Object obj) {
if (obj instanceof IRepositoryRoot) {
return ((IRepositoryRoot) obj).getURL().equals(rootURL);

View File

@ -45,7 +45,7 @@ public class JarHandler extends RootHandler {
try {
key = "jar:" + jar.toURI().toURL().toString() + "!/";
} catch (MalformedURLException e) {
e.printStackTrace();
LOGGER.log("context", e);
continue;
}
IRepositoryRoot root = repository.getRoots().get(key);

View File

@ -59,7 +59,7 @@ public class BattlesRunner {
initialize();
}
private void initialize() {
private static void initialize() {
if (engine == null) {
engine = new RobocodeEngine();
engine.addBattleListener(new BattleObserver());
@ -107,9 +107,9 @@ public class BattlesRunner {
final BattleSpecification specification = new BattleSpecification(battle.getNumRounds(),
battle.getBattlefield(), robotsList);
lastResults = null;
engine.runBattle(specification, true);
if (lastResults != null && lastResults.length > 1) {
if (lastResults.length > 1) {
dumpResults(outtxt, lastResults, param[param.length - 1], melee);
}
}
@ -157,7 +157,7 @@ public class BattlesRunner {
try {
FileReader fr = new FileReader(inputfile);
br = new BufferedReader(fr);
fr.close();
String record;
while ((record = br.readLine()) != null) {
robots.add(record);
@ -228,7 +228,7 @@ public class BattlesRunner {
}
@Override
public void onBattleCompleted(final BattleCompletedEvent event) {
public static void onBattleCompleted(final BattleCompletedEvent event) {
lastResults = RobotResults.convertResults(event.getSortedResults());
}
}

View File

@ -76,7 +76,9 @@ public class PrepareBattles {
BufferedReader br = null;
try {
FileReader fr = new FileReader(participantsfile);
fr = new FileReader(participantsfile);
br = new BufferedReader(fr);
String participant;
@ -101,6 +103,7 @@ public class PrepareBattles {
}
}
}
fr.close();
} catch (IOException e) {
System.out.println("Participants file not found ... Aborting");
System.out.println(e);
@ -117,6 +120,7 @@ public class PrepareBattles {
try {
outtxt = new PrintStream(new BufferedOutputStream(new FileOutputStream(battlesfile)), false);
outtxt.close();
} catch (IOException e) {
System.out.println("Not able to open battles file " + battlesfile + " ... Aborting");
System.out.println(e);
@ -201,6 +205,7 @@ public class PrepareBattles {
}
}
}
fr.close();
} catch (IOException e) {
System.out.println("Participants file not found ... Aborting");
System.out.println(e);
@ -241,6 +246,7 @@ public class PrepareBattles {
}
}
}
fr.close();
} catch (IOException e) {
System.out.println("Priority battles file not found ... ");
} finally {
@ -419,6 +425,7 @@ public class PrepareBattles {
}
}
}
fr.close();
} catch (IOException e) {
System.out.println("Participants file not found ... Aborting");
System.out.println(e);

View File

@ -100,25 +100,25 @@ public class BotsDownload {
// delete previous files
if (generalbotsfile.length() != 0) {
file = new File(generalbotsfile);
if (file.exists() && !file.delete()) {
if (file.exists() &&&& !file.delete()) {
Logger.logError("Can't delete file: " + file);
}
}
if (minibotsfile.length() != 0) {
file = new File(minibotsfile);
if (file.exists() && !file.delete()) {
if (file.exists() &&&& !file.delete()) {
Logger.logError("Can't delete file: " + file);
}
}
if (microbotsfile.length() != 0) {
file = new File(microbotsfile);
if (file.exists() && !file.delete()) {
if (file.exists() &&&& !file.delete()) {
Logger.logError("Can't delete file: " + file);
}
}
if (nanobotsfile.length() != 0) {
file = new File(nanobotsfile);
if (file.exists() && !file.delete()) {
if (file.exists() &&&& !file.delete()) {
Logger.logError("Can't delete file: " + file);
}
}
@ -128,17 +128,17 @@ public class BotsDownload {
}
boolean downloaded = true;
if (generalBots.length() != 0 && generalbotsfile.length() != 0) {
downloaded = downloadRatingsFile(generalBots, generalbotsfile) & downloaded;
if (generalBots.length() != 0 &&&& generalbotsfile.length() != 0) {
downloaded = downloadRatingsFile(generalBots, generalbotsfile) && downloaded;
}
if (miniBots.length() != 0 && minibotsfile.length() != 0) {
downloaded = downloadRatingsFile(miniBots, minibotsfile) & downloaded;
if (miniBots.length() != 0 &&&& minibotsfile.length() != 0) {
downloaded = downloadRatingsFile(miniBots, minibotsfile) && downloaded;
}
if (microBots.length() != 0 && microbotsfile.length() != 0) {
downloaded = downloadRatingsFile(microBots, microbotsfile) & downloaded;
if (microBots.length() != 0 &&&& microbotsfile.length() != 0) {
downloaded = downloadRatingsFile(microBots, microbotsfile) && downloaded;
}
if (nanoBots.length() != 0 && nanobotsfile.length() != 0) {
downloaded = downloadRatingsFile(nanoBots, nanobotsfile) & downloaded;
if (nanoBots.length() != 0 &&&& nanobotsfile.length() != 0) {
downloaded = downloadRatingsFile(nanoBots, nanobotsfile) && downloaded;
}
return downloaded;
}
@ -207,7 +207,7 @@ public class BotsDownload {
final File dir = new File(participantsfile).getParentFile();
if (!dir.exists() && !dir.mkdirs()) {
if (!dir.exists() &&&& !dir.mkdirs()) {
Logger.logError("Can't create directory: " + dir);
}
@ -259,6 +259,7 @@ public class BotsDownload {
names.add(name);
}
}
fr.close();
} catch (IOException e) {
System.out.println("Participants file not found ... Aborting");
System.out.println(e);
@ -299,6 +300,7 @@ public class BotsDownload {
String name = record.substring(0, record.indexOf(","));
size.checkCompetitorForSize(name, 1500);
}
fr.close();
} catch (IOException e) {
System.out.println("Battles input file not found ... Aborting");
System.out.println(e);
@ -330,10 +332,10 @@ public class BotsDownload {
String sessionId = null;
if (id.indexOf("://") == -1) {
url = "http://robocoderepository.com/Controller.jsp?submitAction=downloadClass&id=" + id;
url = "http://robocoderepository.com/Controller.jsp?submitAction=downloadClass&&id=" + id;
sessionId = FileTransfer.getSessionId(
"http://robocoderepository.com/BotSearch.jsp?botName=''&authorName=''&uploadDate=");
"http://robocoderepository.com/BotSearch.jsp?botName=''&&authorName=''&&uploadDate=");
} else {
url = id;
}
@ -390,7 +392,7 @@ public class BotsDownload {
InputStream properties = jarf.getInputStream(zipe);
Properties parameters = getProperties(properties);
jarf.close();
if (!isteams.equals("YES")) {
String classname = parameters.getProperty("robot.classname", "");
String version = parameters.getProperty("robot.version", "");
@ -400,6 +402,7 @@ public class BotsDownload {
String version = parameters.getProperty("team.version", "");
return (botname.equals(botname.substring(0, botname.indexOf(" ")) + " " + version));
} catch (Exception e) {
System.out.println(e);
return false;
@ -417,13 +420,13 @@ public class BotsDownload {
PrintStream outtxt = null;
try {
URL url = new URL(ratingsurl + "?version=1&game=" + competition);
URL url = new URL(ratingsurl + "?version=1&&game=" + competition);
HttpURLConnection conn = FileTransfer.connectToHttpInputConnection(url);
final File dir = new File(file).getParentFile();
if (!dir.exists() && !dir.mkdirs()) {
if (!dir.exists() &&&& !dir.mkdirs()) {
Logger.logError("Can't create directory: " + dir);
}
@ -487,6 +490,7 @@ public class BotsDownload {
}
}
}
fr.close();
} catch (IOException e) {
System.out.println("Participants file not found when removing old participants ... Aborting");
System.out.println(e);
@ -555,7 +559,7 @@ public class BotsDownload {
return;
}
String data = "version=1&game=" + game + "&name=" + bot.trim() + "&dummy=NA";
String data = "version=1&&game=" + game + "&&name=" + bot.trim() + "&&dummy=NA";
OutputStream out = null;
OutputStreamWriter outputStreamWriter = null;
@ -610,7 +614,6 @@ public class BotsDownload {
if (robot.matches("[\\w\\.]+[ ][\\w\\.-]+")) {
if (link.startsWith("http")) {
try {
new URL(link);
matches = true;
} catch (MalformedURLException e) {
matches = false;

View File

@ -204,7 +204,7 @@ public class FileTransfer {
if (conn != null) {
conn.disconnect();
}
} catch (Throwable ignore) {// we expect this, right ?
} catch (RuntimeException ignore) {// we expect this, right ?
}
}
}
@ -355,7 +355,7 @@ public class FileTransfer {
try {
in.close();
} catch (final IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
// Make sure the output stream is closed
@ -363,7 +363,7 @@ public class FileTransfer {
try {
out.close();
} catch (final IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
}
@ -489,14 +489,14 @@ public class FileTransfer {
try {
in.close();
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
if (out != null) {
try {
out.close();
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
}

View File

@ -105,6 +105,7 @@ public class ResultsUpload {
results.add(bot2);
}
}
fr.close();
} catch (IOException e) {
System.out.println("Can't open result file for upload");
return;
@ -180,8 +181,8 @@ public class ResultsUpload {
String data = "game=" + game + commonData;
if (matchtype.equals("GENERAL") || matchtype.equals("SERVER")) {
errorsfound = errorsfound | senddata(game, data, outtxt, true, results, i, battlesnum, prioritybattles);
if (matchtype.equals("GENERAL") |||| matchtype.equals("SERVER")) {
errorsfound = errorsfound || senddata(game, data, outtxt, true, results, i, battlesnum, prioritybattles);
}
if (sizesfile.length() != 0) { // upload also related competitions
@ -189,18 +190,18 @@ public class ResultsUpload {
&& size.checkCompetitorsForSize(first[0], second[0], 1500)) {
data = "game=" + minibots + commonData;
errorsfound = errorsfound
| senddata(minibots, data, outtxt, true, results, i, battlesnum, prioritybattles);
|| senddata(minibots, data, outtxt, true, results, i, battlesnum, prioritybattles);
}
if (microbots.length() != 0 && !matchtype.equals("NANO")
&& size.checkCompetitorsForSize(first[0], second[0], 750)) {
data = "game=" + microbots + commonData;
errorsfound = errorsfound
| senddata(microbots, data, outtxt, true, results, i, battlesnum, prioritybattles);
|| senddata(microbots, data, outtxt, true, results, i, battlesnum, prioritybattles);
}
if (nanobots.length() != 0 && size.checkCompetitorsForSize(first[0], second[0], 250)) {
data = "game=" + nanobots + commonData;
errorsfound = errorsfound
| senddata(nanobots, data, outtxt, true, results, i, battlesnum, prioritybattles);
|| senddata(nanobots, data, outtxt, true, results, i, battlesnum, prioritybattles);
}
}
}

View File

@ -73,6 +73,7 @@ public class UpdateRatingFiles {
while ((record = br.readLine()) != null) {
battles.add(record);
}
fr.close();
} catch (IOException e) {
System.out.println("Can't open # battles file ... Aborting # battles update");
return false;

View File

@ -42,7 +42,7 @@ public final class PropertiesUtil {
try {
fis.close();
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
}
@ -93,7 +93,7 @@ public final class PropertiesUtil {
try {
fos.close();
} catch (IOException e) {
e.printStackTrace();
LOGGER.log("context", e);
}
}
}

View File

@ -120,7 +120,7 @@ public class Corners extends Robot {
/**
* onDeath: We died. Decide whether to try a different corner next game.
*/
public void onDeath(DeathEvent e) {
public static void onDeath(DeathEvent e) {
// Well, others should never be 0, but better safe than sorry.
if (others == 0) {
return;

View File

@ -30,7 +30,7 @@ import java.io.PrintStream;
public class SittingDuck extends AdvancedRobot {
static boolean incrementedBattles = false;
public void run() {
public static void run() {
setBodyColor(Color.yellow);
setGunColor(Color.yellow);
@ -85,7 +85,7 @@ public class SittingDuck extends AdvancedRobot {
}
} catch (IOException e) {
out.println("IOException trying to write: ");
e.printStackTrace(out);
LOGGER.log("context", e);
} finally {
if (w != null) {
w.close();

View File

@ -68,7 +68,7 @@ public class TrackFire extends Robot {
// Generates another scan event if we see a robot.
// We only need to call this if the gun (and therefore radar)
// are not turning. Otherwise, scan is called automatically.
if (bearingFromGun == 0) {
if (bearingFromGun) {
scan();
}
}

View File

@ -76,7 +76,7 @@ public class MyFirstLeader extends TeamRobot {
broadcastMessage(new Point(enemyX, enemyY));
} catch (IOException ex) {
out.println("Unable to send order: ");
ex.printStackTrace(out);
LOGGER.log("context", ex);
}
}

View File

@ -130,9 +130,10 @@ public class SoundManager implements ISoundManager {
for (Mixer.Info mi : AudioSystem.getMixerInfo()) {
Mixer m = AudioSystem.getMixer(mi);
if (m.getClass().getSimpleName().equals(mixerClassName)) {
if (mixerClassName instanceof m) {
return m;
}
m.close();
}
return null;
}
@ -171,7 +172,7 @@ public class SoundManager implements ISoundManager {
float min = volCtrl.getMinimum() / 4;
if (volume != 1) {
if (volume) {
volCtrl.setValue(min * (1 - volume));
}
}

View File

@ -54,9 +54,9 @@ public class AwtAttack extends AdvancedRobot {
};
javax.swing.SwingUtilities.invokeLater(doHack);
} catch (Throwable e) {
} catch (RuntimeException e) {
// swalow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
@ -72,12 +72,12 @@ public class AwtAttack extends AdvancedRobot {
fs.close();
out.println("Hacked!!!");
} catch (FileNotFoundException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
} catch (IOException e) {
e.printStackTrace(out);
} catch (Throwable e) {
LOGGER.log("context", e);
} catch (RuntimeException e) {
// swalow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}

View File

@ -39,9 +39,9 @@ public class ConstructorAwtAttack extends robocode.AdvancedRobot {
};
javax.swing.SwingUtilities.invokeLater(doHack);
} catch (Throwable e) {
} catch (RuntimeException e) {
// swallow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
@ -57,12 +57,12 @@ public class ConstructorAwtAttack extends robocode.AdvancedRobot {
fs.close();
out.println("Hacked!!!");
} catch (FileNotFoundException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
} catch (IOException e) {
e.printStackTrace(out);
} catch (Throwable e) {
LOGGER.log("context", e);
} catch (RuntimeException e) {
// swallow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
}

View File

@ -34,7 +34,7 @@ public class ConstructorHttpAttack extends AdvancedRobot {
is.read();
}
} catch (IOException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
}

View File

@ -37,7 +37,7 @@ public class ConstructorReflectionAttack extends robocode.AdvancedRobot {
PrintStream ps = new PrintStream(baos);
e.printStackTrace(ps);
LOGGER.log("context", e);
ps.flush();
}
}

View File

@ -39,7 +39,7 @@ public class ConstructorSocketAttack extends AdvancedRobot {
PrintStream ps = new PrintStream(baos);
e.printStackTrace(ps);
LOGGER.log("context", e);
ps.flush();
} finally {
if (server != null) {

View File

@ -24,9 +24,9 @@ public class ConstructorThreadAttack extends robocode.AdvancedRobot {
Thread t = new Thread(a);
t.start();
} catch (Throwable e) {
} catch (RuntimeException e) {
// swallow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
@ -39,9 +39,9 @@ public class ConstructorThreadAttack extends robocode.AdvancedRobot {
Thread t = new Thread(tg, a);
t.start();
} catch (Throwable e) {
} catch (RuntimeException e) {
// swallow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
@ -54,7 +54,7 @@ public class ConstructorThreadAttack extends robocode.AdvancedRobot {
runAttack2();
try {
this.wait();
} catch (InterruptedException e) {}
}
}

View File

@ -49,12 +49,12 @@ public class FileAttack extends AdvancedRobot {
System.out.print(fs.read());
fs.close();
} catch (FileNotFoundException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
} catch (IOException e) {
e.printStackTrace(out);
} catch (Throwable e) {
LOGGER.log("context", e);
} catch (RuntimeException e) {
// swalow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
@ -69,12 +69,12 @@ public class FileAttack extends AdvancedRobot {
fs.write(0xD0);
fs.close();
} catch (FileNotFoundException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
} catch (IOException e) {
e.printStackTrace(out);
} catch (Throwable e) {
LOGGER.log("context", e);
} catch (RuntimeException e) {
// swalow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}

View File

@ -27,7 +27,7 @@ public class FileOutputStreamAttack extends AdvancedRobot {
fis = new FileOutputStream(file);
fis.write(1);
} catch (IOException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
} finally {
if (fis != null) {
try {

View File

@ -39,13 +39,13 @@ public class FileWriteSize extends AdvancedRobot {
rfos.write(buf);
}
} catch (IOException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
} finally {
if (rfos != null) {
try {
rfos.close();
} catch (IOException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
if (file != null) {

View File

@ -34,7 +34,7 @@ public class HttpAttack extends AdvancedRobot {
is.read();
}
} catch (IOException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
}

View File

@ -37,9 +37,9 @@ public class IncludeNamespaceAttack extends AdvancedRobot {
private void namespaceAttack() {
try {
HiddenAccess.createRules(10, 10, 10, 10, 1, false, 100);
} catch (Throwable e) {
} catch (RuntimeException e) {
// Swallow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
}

View File

@ -28,7 +28,7 @@ public class ReflectionAttack extends robocode.AdvancedRobot {
method.invoke(obj, new Object[] { "Hello World" });
} catch (Exception e) {
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
}

View File

@ -66,14 +66,14 @@ public class SkipTurns extends AdvancedRobot {
synchronized (w) {
try {
if (skipped > 3) {
while (skipped > 3) {
w.wait(3000);
} else {
w.wait(130);
}
} catch (InterruptedException e) {
// eat interrupt
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
}

View File

@ -32,7 +32,7 @@ public class SocketAttack extends AdvancedRobot {
os.write(1);
is.read();
} catch (IOException e) {
e.printStackTrace(out);
LOGGER.log("context", e);
} finally {
if (server != null) {
try {

View File

@ -42,9 +42,9 @@ public class ThreadAttack extends AdvancedRobot {
Thread t = new Thread(a);
t.start();
} catch (Throwable e) {
} catch (RuntimeException e) {
// swallow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
@ -57,9 +57,9 @@ public class ThreadAttack extends AdvancedRobot {
Thread t = new Thread(tg, a);
t.start();
} catch (Throwable e) {
} catch (RuntimeException e) {
// swallow security exception
e.printStackTrace(out);
LOGGER.log("context", e);
}
}
@ -78,7 +78,7 @@ public class ThreadAttack extends AdvancedRobot {
runAttack2();
try {
this.wait();
} catch (InterruptedException e) {
out.println("Interrupted id:" + id);
}

View File

@ -51,8 +51,8 @@ public class ThreadGroupAttack extends Robot {
}
}
}).start();
} catch (Throwable t) {
t.printStackTrace(out);
} catch (RuntimeException t) {
LOGGER.log("context", t);
}
}

View File

@ -23,7 +23,7 @@ public class UndeadThread extends AdvancedRobot {
while (true) {
try {
body();
} catch (Throwable t) {
} catch (RuntimeException t) {
// spamming the console
out.println("Swalowed it, HA HA HA HA HAAAAA !!!!!");
out.println(t);

View File

@ -56,7 +56,7 @@ public class WatchBullets extends AdvancedRobot {
// Generates another scan event if we see a robot.
// We only need to call this if the gun (and therefore radar)
// are not turning. Otherwise, scan is called automatically.
if (bearingFromGun == 0) {
if (!bearingFromGun) {
scan();
}
}

View File

@ -22,16 +22,16 @@ public class Assert extends org.junit.Assert {
public static void allAssertNear(double v1, double v2) {
try {
assertNear(v1, v2);
} catch (Throwable ex) {
ex.printStackTrace(System.err);
} catch (RuntimeException ex) {
LOGGER.log("context", ex);
}
}
public static <T> void allAssertThat(T t, org.hamcrest.Matcher<T> tMatcher) {
try {
org.junit.Assert.assertThat(t, tMatcher);
} catch (Throwable ex) {
ex.printStackTrace(System.err);
} catch (RuntimeException ex) {
LOGGER.log("context", ex);
}
}

View File

@ -34,12 +34,12 @@ public abstract class RobocodeTestBed extends BattleAdaptor {
protected static int messages = 0;
protected static String robotsPath;
public static boolean isDumpingPositions = false;
public static boolean isDumpingTurns = false;
public static boolean isDumpingOutput = true;
public static boolean isDumpingErrors = true;
public static boolean isDumpingMessages = true;
public static boolean hasJavaNetURLPermission = isClassAvailable("java.net.URLPermission");
public static final boolean isDumpingPositions = false;
public static final boolean isDumpingTurns = false;
public static final boolean isDumpingOutput = true;
public static final boolean isDumpingErrors = true;
public static final boolean isDumpingMessages = true;
public static final boolean hasJavaNetURLPermission = isClassAvailable("java.net.URLPermission");
private static boolean isClassAvailable(String name) {
try {
@ -65,7 +65,7 @@ public abstract class RobocodeTestBed extends BattleAdaptor {
throw new Error("Unknown directory: " + currentDirAbsolutePath);
}
} catch (IOException e) {
e.printStackTrace(Logger.realErr);
LOGGER.log("context", e);
}
System.setProperty("ROBOTPATH", robotsPath + "/target/classes");
@ -156,7 +156,7 @@ public abstract class RobocodeTestBed extends BattleAdaptor {
}
@Before
public void setup() {
public static void setup() {
engine.addBattleListener(this);
if (isDeterministic()) {
RandomFactory.resetDeterministic(0);

View File

@ -50,10 +50,10 @@ public class AlphanumericComparatorTest {
String str1 = unsortedStrings[i];
String str2 = correctlySortedStrings[i];
if (!(str1 == null && str2 == null) && !str1.equals(str2)) {
sortedCorrectly = false;
break;
}
}
Assert.assertTrue(sortedCorrectly);
}

View File

@ -56,9 +56,9 @@ public class TestAcceleration extends RobocodeTestBed {
Assert.assertNear(1, caveat2.getVelocity());
Assert.assertNear(1, caveat3.getVelocity());
Assert.assertNear(1 - 1, distance(0, caveat1));
Assert.assertNear(1 - 1, distance(1, caveat2));
Assert.assertNear(1 - 1, distance(2, caveat3));
Assert.assertNear(0, distance(0, caveat1));
Assert.assertNear(0, distance(1, caveat2));
Assert.assertNear(0, distance(2, caveat3));
break;
case 2:

View File

@ -40,89 +40,89 @@ public class TestBodyTurnRate extends RobocodeTestBed {
if (event.getTurnSnapshot().getTurn() == 60) {
final String out = buf.toString();
Assert.assertTrue(out.contains("1: 0.0, -10.0") | out.contains("1: 0.0, -9.9999999999"));
Assert.assertTrue(out.contains("2: 1.0, -9.25") | out.contains("2: 1.0, -9.2499999999"));
Assert.assertTrue(out.contains("3: 2.0, -8.5") | out.contains("3: 2.0, -8.4999999999"));
Assert.assertTrue(out.contains("4: 3.0, -7.75") | out.contains("4: 3.0, -7.7499999999"));
Assert.assertTrue(out.contains("5: 4.0, -7.0") | out.contains("5: 4.0, -6.9999999999"));
Assert.assertTrue(out.contains("6: 5.0, -6.25") | out.contains("6: 5.0, -6.2499999999"));
Assert.assertTrue(out.contains("7: 6.0, -5.5") | out.contains("7: 6.0, -5.4999999999"));
Assert.assertTrue(out.contains("8: 7.0, -4.75") | out.contains("8: 7.0, -4.7499999999"));
Assert.assertTrue(out.contains("9: 8.0, -4.0") | out.contains("9: 8.0, -3.9999999999"));
Assert.assertTrue(out.contains("1: 0.0, -10.0") || out.contains("1: 0.0, -9.9999999999"));
Assert.assertTrue(out.contains("2: 1.0, -9.25") || out.contains("2: 1.0, -9.2499999999"));
Assert.assertTrue(out.contains("3: 2.0, -8.5") || out.contains("3: 2.0, -8.4999999999"));
Assert.assertTrue(out.contains("4: 3.0, -7.75") || out.contains("4: 3.0, -7.7499999999"));
Assert.assertTrue(out.contains("5: 4.0, -7.0") || out.contains("5: 4.0, -6.9999999999"));
Assert.assertTrue(out.contains("6: 5.0, -6.25") || out.contains("6: 5.0, -6.2499999999"));
Assert.assertTrue(out.contains("7: 6.0, -5.5") || out.contains("7: 6.0, -5.4999999999"));
Assert.assertTrue(out.contains("8: 7.0, -4.75") || out.contains("8: 7.0, -4.7499999999"));
Assert.assertTrue(out.contains("9: 8.0, -4.0") || out.contains("9: 8.0, -3.9999999999"));
Assert.assertTrue(out.contains("10: 8.0, 0.0") | out.contains("10: 8.0, -0.0"));
Assert.assertTrue(out.contains("11: 6.0, 0.0") | out.contains("11: 6.0, -0.0"));
Assert.assertTrue(out.contains("12: 4.0, 0.0") | out.contains("12: 4.0, -0.0"));
Assert.assertTrue(out.contains("13: 2.0, 0.0") | out.contains("13: 2.0, -0.0"));
Assert.assertTrue(out.contains("10: 8.0, 0.0") || out.contains("10: 8.0, -0.0"));
Assert.assertTrue(out.contains("11: 6.0, 0.0") || out.contains("11: 6.0, -0.0"));
Assert.assertTrue(out.contains("12: 4.0, 0.0") || out.contains("12: 4.0, -0.0"));
Assert.assertTrue(out.contains("13: 2.0, 0.0") || out.contains("13: 2.0, -0.0"));
Assert.assertTrue(
out.contains("14: 0.0, 0.0") | out.contains("14: 0.0, -0.0") | out.contains("14: -0.0, 0.0")
| out.contains("14: -0.0, -0.0"));
out.contains("14: 0.0, 0.0") || out.contains("14: 0.0, -0.0") || out.contains("14: -0.0, 0.0")
|| out.contains("14: -0.0, -0.0"));
Assert.assertTrue(
out.contains("15: 0.0, 0.0") | out.contains("15: 0.0, -0.0") | out.contains("15: -0.0, 0.0")
| out.contains("15: -0.0, -0.0"));
out.contains("15: 0.0, 0.0") || out.contains("15: 0.0, -0.0") || out.contains("15: -0.0, 0.0")
|| out.contains("15: -0.0, -0.0"));
Assert.assertTrue(out.contains("16: 0.0, 10.0") | out.contains("16: 0.0, 9.9999999999"));
Assert.assertTrue(out.contains("17: 1.0, 9.25") | out.contains("17: 1.0, 9.2499999999"));
Assert.assertTrue(out.contains("18: 2.0, 8.5") | out.contains("18: 2.0, 8.4999999999"));
Assert.assertTrue(out.contains("19: 3.0, 7.75") | out.contains("19: 3.0, 7.7499999999"));
Assert.assertTrue(out.contains("20: 4.0, 7.0") | out.contains("20: 4.0, 6.9999999999"));
Assert.assertTrue(out.contains("21: 5.0, 6.25") | out.contains("21: 5.0, 6.2499999999"));
Assert.assertTrue(out.contains("22: 6.0, 5.5") | out.contains("22: 6.0, 5.4999999999"));
Assert.assertTrue(out.contains("23: 7.0, 4.75") | out.contains("23: 7.0, 4.7499999999"));
Assert.assertTrue(out.contains("24: 8.0, 4.0") | out.contains("24: 8.0, 3.9999999999"));
Assert.assertTrue(out.contains("16: 0.0, 10.0") || out.contains("16: 0.0, 9.9999999999"));
Assert.assertTrue(out.contains("17: 1.0, 9.25") || out.contains("17: 1.0, 9.2499999999"));
Assert.assertTrue(out.contains("18: 2.0, 8.5") || out.contains("18: 2.0, 8.4999999999"));
Assert.assertTrue(out.contains("19: 3.0, 7.75") || out.contains("19: 3.0, 7.7499999999"));
Assert.assertTrue(out.contains("20: 4.0, 7.0") || out.contains("20: 4.0, 6.9999999999"));
Assert.assertTrue(out.contains("21: 5.0, 6.25") || out.contains("21: 5.0, 6.2499999999"));
Assert.assertTrue(out.contains("22: 6.0, 5.5") || out.contains("22: 6.0, 5.4999999999"));
Assert.assertTrue(out.contains("23: 7.0, 4.75") || out.contains("23: 7.0, 4.7499999999"));
Assert.assertTrue(out.contains("24: 8.0, 4.0") || out.contains("24: 8.0, 3.9999999999"));
Assert.assertTrue(out.contains("25: 8.0, 0.0") | out.contains("25: 8.0, -0.0"));
Assert.assertTrue(out.contains("26: 6.0, 0.0") | out.contains("26: 6.0, -0.0"));
Assert.assertTrue(out.contains("27: 4.0, 0.0") | out.contains("27: 4.0, -0.0"));
Assert.assertTrue(out.contains("28: 2.0, 0.0") | out.contains("28: 2.0, -0.0"));
Assert.assertTrue(out.contains("25: 8.0, 0.0") || out.contains("25: 8.0, -0.0"));
Assert.assertTrue(out.contains("26: 6.0, 0.0") || out.contains("26: 6.0, -0.0"));
Assert.assertTrue(out.contains("27: 4.0, 0.0") || out.contains("27: 4.0, -0.0"));
Assert.assertTrue(out.contains("28: 2.0, 0.0") || out.contains("28: 2.0, -0.0"));
Assert.assertTrue(
out.contains("29: 0.0, 0.0") | out.contains("29: 0.0, -0.0") | out.contains("29: -0.0, 0.0")
| out.contains("29: -0.0, -0.0"));
out.contains("29: 0.0, 0.0") || out.contains("29: 0.0, -0.0") || out.contains("29: -0.0, 0.0")
|| out.contains("29: -0.0, -0.0"));
Assert.assertTrue(
out.contains("30: 0.0, 0.0") | out.contains("30: 0.0, -0.0") | out.contains("30: -0.0, 0.0")
| out.contains("30: -0.0, -0.0"));
out.contains("30: 0.0, 0.0") || out.contains("30: 0.0, -0.0") || out.contains("30: -0.0, 0.0")
|| out.contains("30: -0.0, -0.0"));
Assert.assertTrue(out.contains("31: 0.0, 10.0") | out.contains("31: 0.0, 9.9999999999"));
Assert.assertTrue(out.contains("32: -1.0, 9.25") | out.contains("32: -1.0, 9.2499999999"));
Assert.assertTrue(out.contains("33: -2.0, 8.5") | out.contains("33: -2.0, 8.4999999999"));
Assert.assertTrue(out.contains("34: -3.0, 7.75") | out.contains("34: -3.0, 7.7499999999"));
Assert.assertTrue(out.contains("35: -4.0, 7.0") | out.contains("35: -4.0, 6.9999999999"));
Assert.assertTrue(out.contains("36: -5.0, 6.25") | out.contains("36: -5.0, 6.2499999999"));
Assert.assertTrue(out.contains("37: -6.0, 5.5") | out.contains("37: -6.0, 5.4999999999"));
Assert.assertTrue(out.contains("38: -7.0, 4.75") | out.contains("38: -7.0, 4.7499999999"));
Assert.assertTrue(out.contains("39: -8.0, 4.0") | out.contains("39: -8.0, 3.9999999999"));
Assert.assertTrue(out.contains("31: 0.0, 10.0") || out.contains("31: 0.0, 9.9999999999"));
Assert.assertTrue(out.contains("32: -1.0, 9.25") || out.contains("32: -1.0, 9.2499999999"));
Assert.assertTrue(out.contains("33: -2.0, 8.5") || out.contains("33: -2.0, 8.4999999999"));
Assert.assertTrue(out.contains("34: -3.0, 7.75") || out.contains("34: -3.0, 7.7499999999"));
Assert.assertTrue(out.contains("35: -4.0, 7.0") || out.contains("35: -4.0, 6.9999999999"));
Assert.assertTrue(out.contains("36: -5.0, 6.25") || out.contains("36: -5.0, 6.2499999999"));
Assert.assertTrue(out.contains("37: -6.0, 5.5") || out.contains("37: -6.0, 5.4999999999"));
Assert.assertTrue(out.contains("38: -7.0, 4.75") || out.contains("38: -7.0, 4.7499999999"));
Assert.assertTrue(out.contains("39: -8.0, 4.0") || out.contains("39: -8.0, 3.9999999999"));
Assert.assertTrue(out.contains("40: -8.0, 0.0") | out.contains("40: -8.0, -0.0"));
Assert.assertTrue(out.contains("41: -6.0, 0.0") | out.contains("41: -6.0, -0.0"));
Assert.assertTrue(out.contains("42: -4.0, 0.0") | out.contains("42: -4.0, -0.0"));
Assert.assertTrue(out.contains("43: -2.0, 0.0") | out.contains("43: -2.0, -0.0"));
Assert.assertTrue(out.contains("40: -8.0, 0.0") || out.contains("40: -8.0, -0.0"));
Assert.assertTrue(out.contains("41: -6.0, 0.0") || out.contains("41: -6.0, -0.0"));
Assert.assertTrue(out.contains("42: -4.0, 0.0") || out.contains("42: -4.0, -0.0"));
Assert.assertTrue(out.contains("43: -2.0, 0.0") || out.contains("43: -2.0, -0.0"));
Assert.assertTrue(
out.contains("44: -0.0, 0.0") | out.contains("44: -0.0, -0.0") | out.contains("44: 0.0, 0.0")
| out.contains("44: 0.0, -0.0"));
out.contains("44: -0.0, 0.0") || out.contains("44: -0.0, -0.0") || out.contains("44: 0.0, 0.0")
|| out.contains("44: 0.0, -0.0"));
Assert.assertTrue(
out.contains("45: -0.0, 0.0") | out.contains("45: -0.0, -0.0") | out.contains("45: 0.0, 0.0")
| out.contains("45: 0.0, -0.0"));
out.contains("45: -0.0, 0.0") || out.contains("45: -0.0, -0.0") || out.contains("45: 0.0, 0.0")
|| out.contains("45: 0.0, -0.0"));
Assert.assertTrue(out.contains("46: 0.0, -10.0") | out.contains("46: 0.0, -9.9999999999"));
Assert.assertTrue(out.contains("47: -1.0, -9.25") | out.contains("47: -1.0, -9.2499999999"));
Assert.assertTrue(out.contains("48: -2.0, -8.5") | out.contains("48: -2.0, -8.4999999999"));
Assert.assertTrue(out.contains("49: -3.0, -7.75") | out.contains("49: -3.0, -7.7499999999"));
Assert.assertTrue(out.contains("50: -4.0, -7.0") | out.contains("50: -4.0, -6.9999999999"));
Assert.assertTrue(out.contains("51: -5.0, -6.25") | out.contains("51: -5.0, -6.2499999999"));
Assert.assertTrue(out.contains("52: -6.0, -5.5") | out.contains("52: -6.0, -5.4999999999"));
Assert.assertTrue(out.contains("53: -7.0, -4.75") | out.contains("53: -7.0, -4.7499999999"));
Assert.assertTrue(out.contains("54: -8.0, -4.0") | out.contains("54: -8.0, -3.9999999999"));
Assert.assertTrue(out.contains("46: 0.0, -10.0") || out.contains("46: 0.0, -9.9999999999"));
Assert.assertTrue(out.contains("47: -1.0, -9.25") || out.contains("47: -1.0, -9.2499999999"));
Assert.assertTrue(out.contains("48: -2.0, -8.5") || out.contains("48: -2.0, -8.4999999999"));
Assert.assertTrue(out.contains("49: -3.0, -7.75") || out.contains("49: -3.0, -7.7499999999"));
Assert.assertTrue(out.contains("50: -4.0, -7.0") || out.contains("50: -4.0, -6.9999999999"));
Assert.assertTrue(out.contains("51: -5.0, -6.25") || out.contains("51: -5.0, -6.2499999999"));
Assert.assertTrue(out.contains("52: -6.0, -5.5") || out.contains("52: -6.0, -5.4999999999"));
Assert.assertTrue(out.contains("53: -7.0, -4.75") || out.contains("53: -7.0, -4.7499999999"));
Assert.assertTrue(out.contains("54: -8.0, -4.0") || out.contains("54: -8.0, -3.9999999999"));
Assert.assertTrue(out.contains("55: -8.0, 0.0") | out.contains("55: -8.0, -0.0"));
Assert.assertTrue(out.contains("56: -6.0, 0.0") | out.contains("56: -6.0, -0.0"));
Assert.assertTrue(out.contains("57: -4.0, 0.0") | out.contains("57: -4.0, -0.0"));
Assert.assertTrue(out.contains("58: -2.0, 0.0") | out.contains("58: -2.0, -0.0"));
Assert.assertTrue(out.contains("55: -8.0, 0.0") || out.contains("55: -8.0, -0.0"));
Assert.assertTrue(out.contains("56: -6.0, 0.0") || out.contains("56: -6.0, -0.0"));
Assert.assertTrue(out.contains("57: -4.0, 0.0") || out.contains("57: -4.0, -0.0"));
Assert.assertTrue(out.contains("58: -2.0, 0.0") || out.contains("58: -2.0, -0.0"));
Assert.assertTrue(
out.contains("59: -0.0, 0.0") | out.contains("59: -0.0, -0.0") | out.contains("59: 0.0, 0.0")
| out.contains("59: 0.0, -0.0"));
out.contains("59: -0.0, 0.0") || out.contains("59: -0.0, -0.0") || out.contains("59: 0.0, 0.0")
|| out.contains("59: 0.0, -0.0"));
Assert.assertTrue(
out.contains("60: -0.0, 0.0") | out.contains("60: -0.0, -0.0") | out.contains("60: 0.0, 0.0")
| out.contains("60: 0.0, -0.0"));
out.contains("60: -0.0, 0.0") || out.contains("60: -0.0, -0.0") || out.contains("60: 0.0, 0.0")
|| out.contains("60: 0.0, -0.0"));
}
}
}

View File

@ -40,22 +40,22 @@ public class TestGunTurnRate extends RobocodeTestBed {
if (event.getTurnSnapshot().getTurn() == 16) {
final String out = buf.toString();
Assert.assertTrue(out.contains("1: -20.0") | out.contains("1: -19.9999999999"));
Assert.assertTrue(out.contains("2: -20.0") | out.contains("2: -19.9999999999"));
Assert.assertTrue(out.contains("3: 20.0") | out.contains("3: 19.9999999999"));
Assert.assertTrue(out.contains("4: 20.0") | out.contains("4: 19.9999999999"));
Assert.assertTrue(out.contains("5: -25.0") | out.contains("5: -24.9999999999"));
Assert.assertTrue(out.contains("6: -25.0") | out.contains("6: -24.9999999999"));
Assert.assertTrue(out.contains("7: 25.0") | out.contains("7: 24.9999999999"));
Assert.assertTrue(out.contains("8: 25.0") | out.contains("8: 24.9999999999"));
Assert.assertTrue(out.contains("9: -30.0") | out.contains("9: -29.9999999999"));
Assert.assertTrue(out.contains("10: -30.0") | out.contains("10: -29.9999999999"));
Assert.assertTrue(out.contains("11: 30.0") | out.contains("11: 29.9999999999"));
Assert.assertTrue(out.contains("12: 30.0") | out.contains("12: 29.9999999999"));
Assert.assertTrue(out.contains("13: -10.0") | out.contains("13: -9.9999999999"));
Assert.assertTrue(out.contains("14: -10.0") | out.contains("14: -9.9999999999"));
Assert.assertTrue(out.contains("15: 10.0") | out.contains("15: 9.9999999999"));
Assert.assertTrue(out.contains("16: 10.0") | out.contains("16: 9.9999999999"));
Assert.assertTrue(out.contains("1: -20.0") || out.contains("1: -19.9999999999"));
Assert.assertTrue(out.contains("2: -20.0") || out.contains("2: -19.9999999999"));
Assert.assertTrue(out.contains("3: 20.0") || out.contains("3: 19.9999999999"));
Assert.assertTrue(out.contains("4: 20.0") || out.contains("4: 19.9999999999"));
Assert.assertTrue(out.contains("5: -25.0") || out.contains("5: -24.9999999999"));
Assert.assertTrue(out.contains("6: -25.0") || out.contains("6: -24.9999999999"));
Assert.assertTrue(out.contains("7: 25.0") || out.contains("7: 24.9999999999"));
Assert.assertTrue(out.contains("8: 25.0") || out.contains("8: 24.9999999999"));
Assert.assertTrue(out.contains("9: -30.0") || out.contains("9: -29.9999999999"));
Assert.assertTrue(out.contains("10: -30.0") || out.contains("10: -29.9999999999"));
Assert.assertTrue(out.contains("11: 30.0") || out.contains("11: 29.9999999999"));
Assert.assertTrue(out.contains("12: 30.0") || out.contains("12: 29.9999999999"));
Assert.assertTrue(out.contains("13: -10.0") || out.contains("13: -9.9999999999"));
Assert.assertTrue(out.contains("14: -10.0") || out.contains("14: -9.9999999999"));
Assert.assertTrue(out.contains("15: 10.0") || out.contains("15: 9.9999999999"));
Assert.assertTrue(out.contains("16: 10.0") || out.contains("16: 9.9999999999"));
}
}
}

View File

@ -40,33 +40,33 @@ public class TestMaxTurnRate extends RobocodeTestBed {
if (event.getTurnSnapshot().getTurn() == 26) {
final String out = buf.toString();
Assert.assertTrue(out.contains("1: 0.0, 0.0") | out.contains("1: 0.0, -0.0"));
Assert.assertTrue(out.contains("2: 0.0, -1.0") | out.contains("2: 0.0, -0.999999999"));
Assert.assertTrue(out.contains("3: 0.0, -2.0") | out.contains("3: 0.0, -1.999999999"));
Assert.assertTrue(out.contains("4: 0.0, -3.0") | out.contains("4: 0.0, -2.999999999"));
Assert.assertTrue(out.contains("5: 0.0, -4.0") | out.contains("5: 0.0, -3.999999999"));
Assert.assertTrue(out.contains("6: 0.0, -5.0") | out.contains("6: 0.0, -4.999999999"));
Assert.assertTrue(out.contains("7: 0.0, -6.0") | out.contains("7: 0.0, -5.999999999"));
Assert.assertTrue(out.contains("8: 0.0, -7.0") | out.contains("8: 0.0, -6.999999999"));
Assert.assertTrue(out.contains("9: 0.0, -8.0") | out.contains("9: 0.0, -7.999999999"));
Assert.assertTrue(out.contains("10: 0.0, -9.0") | out.contains("10: 0.0, -8.999999999"));
Assert.assertTrue(out.contains("11: 0.0, -10.0") | out.contains("11: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("12: 0.0, -10.0") | out.contains("12: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("13: 0.0, -10.0") | out.contains("13: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("1: 0.0, 0.0") || out.contains("1: 0.0, -0.0"));
Assert.assertTrue(out.contains("2: 0.0, -1.0") || out.contains("2: 0.0, -0.999999999"));
Assert.assertTrue(out.contains("3: 0.0, -2.0") || out.contains("3: 0.0, -1.999999999"));
Assert.assertTrue(out.contains("4: 0.0, -3.0") || out.contains("4: 0.0, -2.999999999"));
Assert.assertTrue(out.contains("5: 0.0, -4.0") || out.contains("5: 0.0, -3.999999999"));
Assert.assertTrue(out.contains("6: 0.0, -5.0") || out.contains("6: 0.0, -4.999999999"));
Assert.assertTrue(out.contains("7: 0.0, -6.0") || out.contains("7: 0.0, -5.999999999"));
Assert.assertTrue(out.contains("8: 0.0, -7.0") || out.contains("8: 0.0, -6.999999999"));
Assert.assertTrue(out.contains("9: 0.0, -8.0") || out.contains("9: 0.0, -7.999999999"));
Assert.assertTrue(out.contains("10: 0.0, -9.0") || out.contains("10: 0.0, -8.999999999"));
Assert.assertTrue(out.contains("11: 0.0, -10.0") || out.contains("11: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("12: 0.0, -10.0") || out.contains("12: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("13: 0.0, -10.0") || out.contains("13: 0.0, -9.999999999"));
Assert.assertTrue(out.contains("14: 0.0, 0.0") | out.contains("14: 0.0, -0.0"));
Assert.assertTrue(out.contains("15: 0.0, 1.0") | out.contains("15: 0.0, 0.999999999"));
Assert.assertTrue(out.contains("16: 0.0, 2.0") | out.contains("16: 0.0, 1.999999999"));
Assert.assertTrue(out.contains("17: 0.0, 3.0") | out.contains("17: 0.0, 2.999999999"));
Assert.assertTrue(out.contains("18: 0.0, 4.0") | out.contains("18: 0.0, 3.999999999"));
Assert.assertTrue(out.contains("19: 0.0, 5.0") | out.contains("19: 0.0, 4.999999999"));
Assert.assertTrue(out.contains("20: 0.0, 6.0") | out.contains("20: 0.0, 5.999999999"));
Assert.assertTrue(out.contains("21: 0.0, 7.0") | out.contains("21: 0.0, 6.999999999"));
Assert.assertTrue(out.contains("22: 0.0, 8.0") | out.contains("22: 0.0, 7.999999999"));
Assert.assertTrue(out.contains("23: 0.0, 9.0") | out.contains("23: 0.0, 8.999999999"));
Assert.assertTrue(out.contains("24: 0.0, 10.0") | out.contains("24: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("25: 0.0, 10.0") | out.contains("25: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("26: 0.0, 10.0") | out.contains("26: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("14: 0.0, 0.0") || out.contains("14: 0.0, -0.0"));
Assert.assertTrue(out.contains("15: 0.0, 1.0") || out.contains("15: 0.0, 0.999999999"));
Assert.assertTrue(out.contains("16: 0.0, 2.0") || out.contains("16: 0.0, 1.999999999"));
Assert.assertTrue(out.contains("17: 0.0, 3.0") || out.contains("17: 0.0, 2.999999999"));
Assert.assertTrue(out.contains("18: 0.0, 4.0") || out.contains("18: 0.0, 3.999999999"));
Assert.assertTrue(out.contains("19: 0.0, 5.0") || out.contains("19: 0.0, 4.999999999"));
Assert.assertTrue(out.contains("20: 0.0, 6.0") || out.contains("20: 0.0, 5.999999999"));
Assert.assertTrue(out.contains("21: 0.0, 7.0") || out.contains("21: 0.0, 6.999999999"));
Assert.assertTrue(out.contains("22: 0.0, 8.0") || out.contains("22: 0.0, 7.999999999"));
Assert.assertTrue(out.contains("23: 0.0, 9.0") || out.contains("23: 0.0, 8.999999999"));
Assert.assertTrue(out.contains("24: 0.0, 10.0") || out.contains("24: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("25: 0.0, 10.0") || out.contains("25: 0.0, 9.999999999"));
Assert.assertTrue(out.contains("26: 0.0, 10.0") || out.contains("26: 0.0, 9.999999999"));
}
}
}

View File

@ -40,20 +40,20 @@ public class TestRadarTurnRateAndSetAdjust extends RobocodeTestBed {
if (event.getTurnSnapshot().getTurn() == 14) {
final String out = buf.toString();
Assert.assertTrue(out.contains("1: 45.0") | out.contains("1: 44.999999999"));
Assert.assertTrue(out.contains("2: 65.0") | out.contains("2: 64.999999999"));
Assert.assertTrue(out.contains("3: 75.0") | out.contains("3: 74.999999999"));
Assert.assertTrue(out.contains("4: -15.0") | out.contains("4: -14.999999999"));
Assert.assertTrue(out.contains("5: -55.0") | out.contains("5: -54.999999999"));
Assert.assertTrue(out.contains("6: -75.0") | out.contains("6: -74.999999999"));
Assert.assertTrue(out.contains("7: 32.0") | out.contains("7: 31.999999999"));
Assert.assertTrue(out.contains("8: 17.0") | out.contains("8: 16.999999999"));
Assert.assertTrue(out.contains("9: 35.0") | out.contains("9: 34.999999999"));
Assert.assertTrue(out.contains("10: 3.0") | out.contains("10: 2.999999999"));
Assert.assertTrue(out.contains("11: -21.0") | out.contains("11: -20.999999999"));
Assert.assertTrue(out.contains("12: 75.0") | out.contains("12: 74.999999999"));
Assert.assertTrue(out.contains("13: -75.0") | out.contains("13: -74.999999999"));
Assert.assertTrue(out.contains("14: -15.0") | out.contains("14: -14.999999999"));
Assert.assertTrue(out.contains("1: 45.0") || out.contains("1: 44.999999999"));
Assert.assertTrue(out.contains("2: 65.0") || out.contains("2: 64.999999999"));
Assert.assertTrue(out.contains("3: 75.0") || out.contains("3: 74.999999999"));
Assert.assertTrue(out.contains("4: -15.0") || out.contains("4: -14.999999999"));
Assert.assertTrue(out.contains("5: -55.0") || out.contains("5: -54.999999999"));
Assert.assertTrue(out.contains("6: -75.0") || out.contains("6: -74.999999999"));
Assert.assertTrue(out.contains("7: 32.0") || out.contains("7: 31.999999999"));
Assert.assertTrue(out.contains("8: 17.0") || out.contains("8: 16.999999999"));
Assert.assertTrue(out.contains("9: 35.0") || out.contains("9: 34.999999999"));
Assert.assertTrue(out.contains("10: 3.0") || out.contains("10: 2.999999999"));
Assert.assertTrue(out.contains("11: -21.0") || out.contains("11: -20.999999999"));
Assert.assertTrue(out.contains("12: 75.0") || out.contains("12: 74.999999999"));
Assert.assertTrue(out.contains("13: -75.0") || out.contains("13: -74.999999999"));
Assert.assertTrue(out.contains("14: -15.0") || out.contains("14: -14.999999999"));
}
}
}

Some files were not shown because too many files have changed in this diff Show More