This site requires JavaScript, please enable it in your browser!
Greenfoot back
sanderbakker
sanderbakker wrote ...

2015/11/21

Stop the game when there are no actors left.

1
2
danpost danpost

2015/11/23

#
Where did you place the code to increment the counter and what code did you use (show the entire method it is located in)?
sanderbakker sanderbakker

2015/11/23

#
import greenfoot.*;
import java.awt.Color;
/**
 * Write a description of class Level1 here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Level1 extends World
{
    Bird bird;
    Block block;
    Pig pig; 
    Ground1 ground1;
    static int birdRemoveCount;
    
    /**
     * Constructor for objects of class Level1.
     * 
     */
    public Level1()
    {    
        // Create a new world with 600x400 cells with a cell size of 1x1 pixels.
        super(950, 600, 1); 
        
        addObject(new TNT(),170,464);
        addObject(new Katapult(),161,406);
        addObject(new Bird(), 30,470);
        addObject(new Bird(), 76,470);
        
        bird = new Bird();
        addObject(bird, 120,467);
        block = new Block();
        addObject(block, 600,475);
        block = new Block();
        addObject(block, 627,475);
        block = new Block();
        addObject(block, 654,475);
        block = new Block();
        addObject(block, 681,475);
        block = new Block();
        addObject(block, 708,475);
        block = new Block();
        addObject(block, 735,475);
        block = new Block();
        addObject(block, 762,475);
        block = new Block();
        addObject(block, 789,475);
        block = new Block();
        addObject(block, 816,475);
        block = new Block();
        addObject(block, 843,475);
        block = new Block();
        addObject(block, 870,475);
        block = new Block();
        addObject(block, 627,448);
        block = new Block();
        addObject(block, 654,448);
        block = new Block();
        addObject(block, 681,448);
        block = new Block();
        addObject(block, 708,448);
        block = new Block();
        addObject(block, 735,448);
        block = new Block();
        addObject(block, 762,448);
        block = new Block();
        addObject(block, 789,448);
        block = new Block();
        addObject(block, 816,448);
        block = new Block();
        addObject(block, 843,448);
        block = new Block();
        addObject(block, 654,421);
        block = new Block();
        addObject(block, 681,421);
        block = new Block();
        addObject(block, 708,421);
        block = new Block();
        addObject(block, 735,421);
        block = new Block();
        addObject(block, 762,421);
        block = new Block();
        addObject(block, 789,421);
        block = new Block();
        addObject(block, 816,421);
        block = new Block();
        addObject(block, 681,394);
        block = new Block();
        addObject(block, 708,394);
        block = new Block();
        addObject(block, 735,394);
        block = new Block();
        addObject(block, 762,394);
        block = new Block();
        addObject(block, 789,394);
        
        block = new Block();
        addObject(block, 708,367);
        block = new Block();
        addObject(block, 735,367);
        block = new Block();
        addObject(block, 762,367);
        block = new Block();
        addObject(block, 735,340);
        pig = new Pig();
        addObject(pig, 735,301); 
        ground1 = new Ground1();
        addObject(ground1, 729,495);
       
        addObject(new PauseButton(), 27, 27); 
       birdRemoveCount = 0;
    }
    
    public void act ()
    {
    if(Greenfoot.mouseClicked(null)){
            MouseInfo mouse = Greenfoot.getMouseInfo();
            if(mouse.getButton() <2)
            {
                removeObject(bird);
                
                bird = new Bird();
                addObject(bird,157,365);
                if(365-mouse.getY() > -150)
                    bird.velocityY = (365-mouse.getY())/10;
                else
                    bird.velocityY = -5;
                if(157-mouse.getX() < 125)
                    bird.velocityX = (157-mouse.getX())/10;
                else
                    bird.velocityX = 10;
                }   
       }
       
      
       if (getObjects(Pig.class).isEmpty()) {
          Greenfoot.delay(100);
          Greenfoot.setWorld(new Level2());
        }
        
      if (birdRemoveCount == 3){
          Greenfoot.setWorld(new Level2());
        }
        
    }
}
Here it is
danpost danpost

2015/11/23

#
danpost wrote...
Where did you place the code to increment the counter and what code did you use (show the entire method it is located in)?
The code you gave does not show where you incremented the counter. It should be in one of your actor classes (the one that kills a bird).
sanderbakker sanderbakker

2015/11/23

#
I don't kill the bird I remove the bird by clicking the mouse. Is there an option to make this work? and how do I make a incremented counter I'm just a starter with greenfoot
Super_Hippo Super_Hippo

2015/11/23

#
The code danpost wants to see should look similar to this:
if (Greenfoot.mousePressed(this))
{
    Level1.birdRemoveCount++;
    getWorld().removeObject(this);
}
sanderbakker sanderbakker

2015/11/23

#
Thanks! this worked for me
You need to login to post a reply.
1
2