My code in My World Class
My code in Server class
The code is working but the image change is not happening. however if I remove the comment on line 20 in My World class, I have more than one server change immediately.
I wanted the server with the lowest number to change after the lowest number has been reduce to zero. that's what i was trying to do in my candidate method. can you see why is not working that way.
public void serverPopulation()
{
for(int i=0; i<NUMBER_OF_SERVER; i++)
{
int x= Greenfoot.getRandomNumber(getWidth());
int y= Greenfoot.getRandomNumber(getHeight());
int server= Greenfoot.getRandomNumber(151)+150;
addObject(new Server(server), x, y);
}
Server lowServer = null;
int lowNumber = 201;
for (Object obj : getObjects(Server.class))
{
Server server = (Server) obj;
if (server.number < lowNumber)
{
lowNumber = server.number;
lowServer = server;
//lowServer.setLowState(true);
showText("ElectionTimeOut: "+lowNumber, 100, 20);
}
}public void Candidate()
{
electionTimeOut = lowNumber;
for(int i=1; i<=ELECTION_TIME;i++)
{
electionTimeOut--;
if(electionTimeOut==0)
{
isCandidate=true;
setLowState(true);
break;
}
}
}
public void setLowState(boolean isLow)
{
if (isLow)
{
setImage("Candidate.png");lowNumber= number;
}
else setImage("Follow.png");
}
