Ich will Healkits zufällig auf der Map spawnen lassen, allerdings sind auf dieser Hindernisee und auf diesen sollen diese nicht spawnen.
Ich habe dazu einen Quellcode entwickelt aber die Healkits spawnen trotzdem auf den Hindernissen, ich hoffe ihr könnt meinen Code verbessern.
import greenfoot.*;
/**
* Write a description of class Healkit here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Healkit extends Actor
{
long lastAdded = System.currentTimeMillis();
int zufallsX;
int zufallsY;
public Healkit()
{
zufallsX = Greenfoot.getRandomNumber(18)+1;
zufallsY = Greenfoot.getRandomNumber(14)+1;
}
/**
* Act - do whatever the Healkit wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public void act()
{
long curTime = System.currentTimeMillis();
if (curTime == lastAdded + 20000) //20000ms = 20s
{
if ((!((zufallsX == 2) && (zufallsY == 3))) && (!((zufallsX == 3) && (zufallsY == 1))) && (!((zufallsX == 3)&& (zufallsY == 5)))
&& (!((zufallsX == 3) && (zufallsY == 8))) && (!((zufallsX == 4) && (zufallsY == 14))) && (!((zufallsX == 6) && (zufallsY == 6)))
&& (!((zufallsX == 6) && (zufallsY == 10))) && (!((zufallsX == 6) && (zufallsY == 14))) && (!((zufallsX == 7) && (zufallsY == 2)))
&& (!((zufallsX == 8) && (zufallsY == 7))) && (!((zufallsX == 9) && (zufallsY == 5))) && (!((zufallsX == 9) && (zufallsY == 11)))
&& (!((zufallsX == 10) && (zufallsY == 2))) && (!((zufallsX == 11) && (zufallsY == 10))) && (!((zufallsX == 12) && (zufallsY == 6)))
&& (!((zufallsX == 13) && (zufallsY == 2))) && (!((zufallsX == 13) && (zufallsY == 9))) && (!((zufallsX == 14) && (zufallsY == 13)))
&& (!((zufallsX == 15) && (zufallsY == 4))) && (!((zufallsX == 15) && (zufallsY == 8))) && (!((zufallsX == 16) && (zufallsY == 9)))
&& (!((zufallsX == 16) && (zufallsY == 11))) && (!((zufallsX == 17) && (zufallsY == 2))) )
{
getWorld().addObject(new Healkit(), zufallsX, zufallsY);
lastAdded = curTime;
}
else
{lastAdded = curTime;
}
}
}
}

