Pozdrav !!!
Zelim vam dati samo pohvale na ovu temu. Ja sam nov na ovom forumu . Mene isto interesira programiranje u javi.
Tokoder sam upisao tecaj za java programera. No za sada sam u pocetnickoj fazi. Jako mi se svida ovo sa roboticima
probao sam ovaj kod staviti u Netbeans i pokreniti ga ali ne sljaka dali nesto fali u tom kodu a ujedno mi pokazuje i neke
greske. Saljem cijeli kod koji sam skinio
Ovu gresku javllja
ilegal start of type
/*
* PrviRobot.java
*
* Created on 2006. listopad 31, 17:29
*
* To change this template, choose Tools | Template Manager
* and open the template in the editor.
*/
/**
*
* @author Davor
*/
public class PrviRobot {
/** Creates a new instance of PrviRobot */
public PrviRobot() {
}
// Decompiled by DJ v3.0.0.63 Copyright 2002 Atanas Neshkov Date: 31.10.2006 17:24:40
// Home Page :
http://members.fortunecity.com/neshkov/dj.html - Check often for new version!
// Decompiler options: packimports(3)
package tanks;
import java.awt.Color;
import java.io.PrintStream;
import java.util.Random;
import robocode.*;
public class PrviRobot extends Robot
{
public static void main (String [] args){
} public PrviRobot()
{
ofset = 0.0D;
r = new Random();
}
public void run()
{
setColors(Color.green, Color.yellow, Color.blue);
do
{
setMaxPravo();
if(r.nextBoolean())
tutanj();
else
turnRight(normalRelativeAngle(getHeading()));
if(r.nextBoolean())
{
int i = 0;
if(getX() - getBattleFieldWidth() < 50D)
{
for(; i < 10; i = r.nextInt(170));
turnRight(i);
if(getX() < 50D)
{
for(; i < 10; i = r.nextInt(170));
i *= -1;
turnRight(i);
}
turnLeft(r.nextInt(50));
}
} else
{
int j = 0;
if(getY() - getBattleFieldHeight() < 50D)
{
for(; j < 10; j = r.nextInt(170));
j += 90;
turnRight(j);
if(getY() < 50D)
{
for(; j < 10; j = r.nextInt(170));
j -= 90;
turnRight(j);
}
turnRight(r.nextInt(50));
}
}
} while(true);
}
protected int getMaxPravo()
{
return maxPravo;
}
public void onHitByBullet(HitByBulletEvent hitbybulletevent)
{
turnRight(r.nextInt(100));
int i;
for(i = 0; i < 50; i = r.nextInt(500));
if(r.nextBoolean())
back(i);
else
ahead(i);
}
public void onScannedRobot(ScannedRobotEvent scannedrobotevent)
{
if(scannedrobotevent.getVelocity() != 0.0D)
{
if(scannedrobotevent.getVelocity() > 0.0D)
ofset = 3D;
else
ofset = -2D;
turnGunRight(ofset);
}
smartFire(scannedrobotevent.getDistance(), scannedrobotevent.getEnergy());
out.println("**********\npoX:" + (getBattleFieldWidth() - getX() - getWidth()) + "\npoY:" + (getBattleFieldHeight() - getY() - getHeight()) + "\ngetMaxPravo=" + getMaxPravo() + "\n-sin(poX)=" + Math.toRadians(getHeading()) + "\ngetHeading()=" + getHeading() + "\nX:" + getX() + "\nY:" + getY());
if(getEnergy() - scannedrobotevent.getEnergy() > -10D)
turnRight(scannedrobotevent.getBearing());
if(r.nextBoolean())
{
if(scannedrobotevent.getEnergy() < getEnergy())
turnRight(scannedrobotevent.getBearing());
} else
if(scannedrobotevent.getDistance() < 100D)
{
turnLeft(scannedrobotevent.getBearing());
back(100D);
}
}
public void onBulletMissed(BulletMissedEvent bulletmissedevent)
{
double d;
if((d = getGunHeading()) != 0.0D)
if(d > 0.0D)
turnGunLeft(d);
else
turnGunRight(d);
}
protected void setMaxPravo()
{
double d = getBattleFieldWidth() - getX() - getWidth();
double d1 = getBattleFieldHeight() - getY() - getHeight();
if(d < 0.0D)
d += getBattleFieldHeight();
if(d1 < 0.0D)
d1 += getBattleFieldHeight();
d1 *= Math.cos(Math.toDegrees(getHeading()));
d *= -Math.sin(Math.toDegrees(getHeading()));
maxPravo = (int)Math.sqrt(Math.pow(d - getX(), 2D) + Math.pow(d1 - getY(), 2D));
}
private void tutanj()
{
setMaxPravo();
ahead(r.nextInt(getMaxPravo() + 1));
}
public void smartFire(double d, double d1)
{
if((d > 200D || getEnergy() < 15D) && d1 > 15D)
fire(1.0D);
else
if(d > 100D)
fire(2D);
else
fire(3D);
}
public double normalRelativeAngle(double d)
{
if(d > -180D && d <= 180D)
return d;
double d1;
for(d1 = d; d1 <= -180D; d1 += 360D);
for(; d1 > 180D; d1 -= 360D);
return d1;
}
double ofset;
private int maxPravo;
private Random r;
}
}
Sta tu ne stima mozeli se tu sta napraviti