/* * This is the main method that is run at startup * It sets our colours, sets some preferences for the bot. * It then goes into an infinite while loop, which defines * what we want to do every robocode 'turn' * A robocode turn is the time a robot has to process * before it moves. A turn lasts about 8 milliseconds. */ public void run() { target = new Enemy(); //target is an object of type Enemy. It holds target info target.distance = 100000; //initialise the distance so that we can select a target setColors(Color.red,Color.blue,Color.green); //sets the colours of the robot //the next two lines mean that the turns of the robot, gun and radar are independant setAdjustGunForRobotTurn(true); setAdjustRadarForGunTurn(true); turnRadarRightRadians(2*PI); //turns the radar right around to get a view of the field while(true) { doMovement(); //Move the bot doFirePower(); //select the fire power to use doScanner(); //Oscillate the scanner over the bot doGun(); out.println(target.distance); //move the gun to predict where the enemy will be fire(firePower); execute(); //execute all commands } }