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

2013/5/22

Game error

1
2
3
4
5
geekykid2013 geekykid2013

2013/5/22

#
I this what you mean DanPost? import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) import java.awt.Color; /** * Write a description of class starWorld here. * * @author (Richard Appiah) * @version (Version 1.0) */ public class CircleWorld extends World { /** * Constructor for objects of class starWorld. * */ public CircleWorld(Robot inRobot) { super(700, 700, 1, true); // Create a new world with 700x700 cells with a cell size of 1x1 pixels. setPaintOrder ( Robot.class, Smoke.class ); // if (inRobot == null) counter = new Counter(); //else counter = inRobot.getCounter(); //addObject (counter, 100, 678); //if (inRobot == null) healthBar = new HealthBar ("Robot Health", "", 100, 100); //else healthBar = inRobot.getHealthBar(); //addObject(healthBar, 600, 678); if (inRobot == null) robot = new Robot(counter, healthBar); else robot = inRobot; addObject(robot, getWidth() / 2, getHeight() - 90); // if (inRobot == null) robot = new Robot(counter, healthBar); else robot = inRobot; addObject(robot, getWidth() / 2, getHeight() - 90); paddle = new Paddle(robot); // set the Paddle to the world addObject ( paddle, getWidth() / 2, getHeight() - 55); //add the paddle object to th world }
danpost danpost

2013/5/22

#
Remove '//else ' from the beginning of all lines that begin with it.
geekykid2013 geekykid2013

2013/5/22

#
JUSTAS BELOW ?

/**
 * Write a description of class starWorld here.
 * 
 * @author () 
 * @version (Version 1.0)
 */
public class CircleWorld extends World
{
   
    /**
     * Constructor for objects of class starWorld.
     * 
     */
      public CircleWorld(Robot inRobot)
    {    
        super(700, 700, 1, true); // Create a new world with 700x700 cells with a cell size of 1x1 pixels.
        setPaintOrder ( Robot.class, Smoke.class );
       // if (inRobot == null) counter = new Counter();
        else counter = inRobot.getCounter();
        //addObject (counter, 100, 678);
        //if (inRobot == null) healthBar = new HealthBar ("Robot Health", "", 100, 100);
        else healthBar = inRobot.getHealthBar();
        //addObject(healthBar, 600, 678);
        //if (inRobot == null) robot = new Robot(counter, healthBar);
        else robot = inRobot;
        //addObject(robot, getWidth() / 2, getHeight() - 90);
       // if (inRobot == null) robot = new Robot(counter, healthBar);
        else robot = inRobot;
        addObject(robot, getWidth() / 2, getHeight() - 90);
        paddle = new Paddle(robot); // set the Paddle to the world
        addObject ( paddle, getWidth() / 2, getHeight() - 55); //add the paddle object to th world
    
        
    

}
danpost danpost

2013/5/22

#
public class CircleWorld extends World { public CircleWorld(Robot inRobot) { super(700, 700, 1, true); setPaintOrder ( Robot.class, Smoke.class ); counter = inRobot.getCounter(); addObject (counter, 100, 678); healthBar = inRobot.getHealthBar(); addObject(healthBar, 600, 678); robot = inRobot; addObject(robot, getWidth() / 2, getHeight() - 90); paddle = new Paddle(robot); // set the Paddle to the world addObject ( paddle, getWidth() / 2, getHeight() - 55); // etc.
geekykid2013 geekykid2013

2013/5/22

#
Now I get an error in the CircleWorld - cannot find symbol - variable counter
danpost danpost

2013/5/22

#
I do not see any of the fields you need in this class declared at the top of the code. You should have at least these declared in all your classes: private Counter counter; private HealthBar healthBar; private Paddle paddle; private Robot robot;
geekykid2013 geekykid2013

2013/5/22

#
Now I get another error in one of my button classes - cannot find symbol - constructor SquareWorld(). I know I have to create a constructor now but first where do I put it before or after and how do I write?
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * Write a description of class ContinueButton here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class ContinueButton extends Actor
{
    /**
     * Act - do whatever the ContinueButton wants to do. This method is called whenever
     * the 'Act' or 'Run' button gets pressed in the environment.
     */
    public void act() 
    {
        if(Greenfoot.mouseClicked(this))
        {
            Greenfoot.setWorld(new SquareWorld());
        }
    }    
}
?
danpost danpost

2013/5/22

#
I thought that SquareWorld was the class that we already had two constructors in (see the last code posting on page 1 of this discussion.
geekykid2013 geekykid2013

2013/5/22

#
Yes this is true. however when I ran the code to run the code it returned with the following error - cannot find constructor SquareWorld() symbol. Maybe I missed something?
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;

/**
 * 
 * The square world. The square world has Gold Eggs that need to be collected
 * 
 * @author  
 * @version 1.0
 */
public class SquareWorld extends World
{

    // private static final int GAP = 12;

    private Counter counter;
    private HealthBar healthBar;
    private Paddle paddle;
    private Robot robot;

    /**
     * Constructor for objects of class SquareWorld.
     * 
     */
   
    public SquareWorld(Robot inRobot)
    {    
        super(700, 700, 1, true); // Create a new world with 700x700 cells with a cell size of 1x1 pixels.
        setPaintOrder ( Robot.class, Smoke.class );
        if (inRobot == null) counter = new Counter();
        else counter = inRobot.getCounter();
        addObject (counter, 100, 678);
        if (inRobot == null) healthBar = new HealthBar ("Robot Health", "", 100, 100);
        else healthBar = inRobot.getHealthBar();
        addObject(healthBar, 600, 678);
        if (inRobot == null) robot = new Robot(counter, healthBar);
        else robot = inRobot;
        addObject(robot, getWidth() / 2, getHeight() - 90);
        if (inRobot == null) robot = new Robot(counter, healthBar);
        else robot = inRobot;
        addObject(robot, getWidth() / 2, getHeight() - 90);
        paddle = new Paddle(robot); // set the Paddle to the world
        addObject ( paddle, getWidth() / 2, getHeight() - 55); //add the paddle object to th world
        
        //prepare();
    }
    
        //counter = new Counter(); // set the counter to the world
        //addObject (counter, 100, 678); // add the counter object to the world
        //healthBar = new HealthBar("Robot Health", "", 100, 100);
        //addObject(healthBar, 600, 678);
        //robot = new Robot(counter, healthBar);
        //addObject(robot, getWidth() / 2, getHeight() - 90);
        //paddle = new Paddle(robot); // set the Paddle to the world
        //addObject ( paddle, getWidth() / 2, getHeight() - 55); //add the paddle object to the world
    
    //}
    
    

    //public void RobotIsOut()
    //{
    //    paddle.newRobot();
    //}

   // public void score()
    //{
      //  counter.addScore();
    //}
    
    /**
     * Prepare the world for the start of the program. That is: create the initial
     * objects and add them to the world.
     */
    private void prepare()
    {

        //Counter counter = new Counter();
        //addObject(counter, 100, 678);

        goldEgg goldegg = new goldEgg();
        addObject(goldegg, 319, 404);
        goldegg.setLocation(309, 397);
        goldEgg goldegg2 = new goldEgg();
        addObject(goldegg2, 316, 190);
        goldegg2.setLocation(308, 182);
        goldEgg goldegg3 = new goldEgg();
        addObject(goldegg3, 465, 262);
        goldegg3.setLocation(458, 259);
        goldEgg goldegg4 = new goldEgg();
        addObject(goldegg4, 556, 95);
        goldegg4.setLocation(552, 95);
        goldEgg goldegg5 = new goldEgg();
        addObject(goldegg5, 145, 97);
        goldegg5.setLocation(143, 91);
        goldEgg goldegg6 = new goldEgg();
        addObject(goldegg6, 151, 266);
        goldegg6.setLocation(142, 258);
        goldEgg goldegg7 = new goldEgg();
        addObject(goldegg7, 557, 417);
        goldegg7.setLocation(555, 411);
        goldEgg goldegg8 = new goldEgg();
        addObject(goldegg8, 237, 335);
        goldegg8.setLocation(232, 332);
        goldEgg goldegg9 = new goldEgg();
        addObject(goldegg9, 353, 291);
        goldegg9.setLocation(346, 286);
        goldEgg goldegg10 = new goldEgg();
        addObject(goldegg10, 146, 493);
        goldegg10.setLocation(144, 486);
        goldEgg goldegg11 = new goldEgg();
        addObject(goldegg11, 389, 494);
        goldegg11.setLocation(386, 483);
        goldEgg goldegg12 = new goldEgg();
        addObject(goldegg12, 564, 268);
        goldegg12.setLocation(553, 259);
        goldEgg goldegg13 = new goldEgg();
        addObject(goldegg13, 394, 100);
        goldegg13.setLocation(388, 91);
        redEgg redegg = new redEgg();
        addObject(redegg, 234, 100);
        redegg.setLocation(227, 92);
        blueEgg blueegg = new blueEgg();
        addObject(blueegg, 314, 100);
        blueegg.setLocation(307, 93);
        redEgg redegg2 = new redEgg();
        addObject(redegg2, 472, 101);
        redegg2.setLocation(462, 88);
        yellowEgg yellowegg = new yellowEgg();
        addObject(yellowegg, 393, 187);
        yellowegg.setLocation(389, 181);
        yellowEgg yellowegg2 = new yellowEgg();
        addObject(yellowegg2, 464, 334);
        yellowegg2.setLocation(453, 332);
        redEgg redegg3 = new redEgg();
        addObject(redegg3, 239, 267);
        redegg3.setLocation(233, 260);
        blueEgg blueegg2 = new blueEgg();
        addObject(blueegg2, 152, 341);
        blueegg2.setLocation(143, 332);
        blueEgg blueegg3 = new blueEgg();
        addObject(blueegg3, 464, 195);
        blueegg3.setLocation(458, 187);
        yellowEgg yellowegg3 = new yellowEgg();
        addObject(yellowegg3, 560, 190);
        yellowegg3.setLocation(553, 185);
        redEgg redegg4 = new redEgg();
        addObject(redegg4, 149, 418);
        redegg4.setLocation(144, 412);
        blueEgg blueegg4 = new blueEgg();
        addObject(blueegg4, 149, 195);
        blueegg4.setLocation(141, 182);
        yellowEgg yellowegg4 = new yellowEgg();
        addObject(yellowegg4, 236, 191);
        yellowegg4.setLocation(230, 184);
        redEgg redegg5 = new redEgg();
        addObject(redegg5, 456, 403);
        redegg5.setLocation(454, 394);
        yellowEgg yellowegg5 = new yellowEgg();
        addObject(yellowegg5, 241, 401);
        yellowegg5.setLocation(231, 392);
        redEgg redegg6 = new redEgg();
        addObject(redegg6, 307, 496);
        redegg6.setLocation(304, 486);
        blueEgg blueegg5 = new blueEgg();
        addObject(blueegg5, 388, 402);
        blueegg5.setLocation(381, 395);
        blueEgg blueegg6 = new blueEgg();
        addObject(blueegg6, 559, 340);
        blueegg6.setLocation(554, 335);
        yellowEgg yellowegg6 = new yellowEgg();
        addObject(yellowegg6, 558, 493);
        yellowegg6.setLocation(553, 490);
        redEgg redegg7 = new redEgg();
        addObject(redegg7, 233, 491);
        redegg7.setLocation(227, 485);
        blueEgg blueegg7 = new blueEgg();
        addObject(blueegg7, 472, 492);
        blueegg7.setLocation(461, 481);
        removeObject(redegg4);
        redEgg redegg8 = new redEgg();
        addObject(redegg8, 148, 416);
        redegg8.setLocation(142, 408);
    }
    
    
}
danpost danpost

2013/5/22

#
Look back at that post to see what you missed.
geekykid2013 geekykid2013

2013/5/22

#
i can't see the error with the code?
danpost danpost

2013/5/22

#
You do not have lines 11 through 14 of the code I said to start your SquareWorld class with in your code yet.
geekykid2013 geekykid2013

2013/5/22

#
I have created 2 constructors for the SquareWorld() class but I greenfoot returns with the error cannot find symbol - constructor(Robot)
import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)
import java.awt.Color;

/**
 * 
 * The square world. The square world has Gold Eggs that need to be collected
 * 
 * @author  
 * @version 1.0
 */
public class SquareWorld extends World
{

    // private static final int GAP = 12;

    private Counter counter;
    private HealthBar healthBar;
    private Paddle paddle;
    private Robot robot;

    /**
     * Constructor for objects of class SquareWorld.
     * 
     */
    
       public SquareWorld(Robot inRobot)  
    {  
        super(700, 700, 1,true);  
        robot = inRobot;  
        // whatever code you have in the other constructor  
    }  
    // your other constructor should call the one above like this  
    public SquareWorld()  
    {  
        this(new Robot());  
    }  
    
     
    
    {    
        //super(700, 700, 1, true); // Create a new world with 700x700 cells with a cell size of 1x1 pixels.
        setPaintOrder ( Robot.class, Smoke.class );
        if (inRobot == null) counter = new Counter();
        else counter = inRobot.getCounter();
        addObject (counter, 100, 678);
        if (inRobot == null) healthBar = new HealthBar ("Robot Health", "", 100, 100);
        else healthBar = inRobot.getHealthBar();
        addObject(healthBar, 600, 678);
        if (inRobot == null) robot = new Robot(counter, healthBar);
        else robot = inRobot;
        addObject(robot, getWidth() / 2, getHeight() - 90);
        if (inRobot == null) robot = new Robot(counter, healthBar);
        else robot = inRobot;
        addObject(robot, getWidth() / 2, getHeight() - 90);
        paddle = new Paddle(robot); // set the Paddle to the world
        addObject ( paddle, getWidth() / 2, getHeight() - 55); //add the paddle object to th world
        
        //prepare();
    }
    
        //counter = new Counter(); // set the counter to the world
        //addObject (counter, 100, 678); // add the counter object to the world
        //healthBar = new HealthBar("Robot Health", "", 100, 100);
        //addObject(healthBar, 600, 678);
        //robot = new Robot(counter, healthBar);
        //addObject(robot, getWidth() / 2, getHeight() - 90);
        //paddle = new Paddle(robot); // set the Paddle to the world
        //addObject ( paddle, getWidth() / 2, getHeight() - 55); //add the paddle object to the world
    
    //}
    
    

    //public void RobotIsOut()
    //{
    //    paddle.newRobot();
    //}

   // public void score()
    //{
      //  counter.addScore();
    //}
    
    /**
     * Prepare the world for the start of the program. That is: create the initial
     * objects and add them to the world.
     */
    private void prepare()
    {

        //Counter counter = new Counter();
        //addObject(counter, 100, 678);

        goldEgg goldegg = new goldEgg();
        addObject(goldegg, 319, 404);
        goldegg.setLocation(309, 397);
        goldEgg goldegg2 = new goldEgg();
        addObject(goldegg2, 316, 190);
        goldegg2.setLocation(308, 182);
        goldEgg goldegg3 = new goldEgg();
        addObject(goldegg3, 465, 262);
        goldegg3.setLocation(458, 259);
        goldEgg goldegg4 = new goldEgg();
        addObject(goldegg4, 556, 95);
        goldegg4.setLocation(552, 95);
        goldEgg goldegg5 = new goldEgg();
        addObject(goldegg5, 145, 97);
        goldegg5.setLocation(143, 91);
        goldEgg goldegg6 = new goldEgg();
        addObject(goldegg6, 151, 266);
        goldegg6.setLocation(142, 258);
        goldEgg goldegg7 = new goldEgg();
        addObject(goldegg7, 557, 417);
        goldegg7.setLocation(555, 411);
        goldEgg goldegg8 = new goldEgg();
        addObject(goldegg8, 237, 335);
        goldegg8.setLocation(232, 332);
        goldEgg goldegg9 = new goldEgg();
        addObject(goldegg9, 353, 291);
        goldegg9.setLocation(346, 286);
        goldEgg goldegg10 = new goldEgg();
        addObject(goldegg10, 146, 493);
        goldegg10.setLocation(144, 486);
        goldEgg goldegg11 = new goldEgg();
        addObject(goldegg11, 389, 494);
        goldegg11.setLocation(386, 483);
        goldEgg goldegg12 = new goldEgg();
        addObject(goldegg12, 564, 268);
        goldegg12.setLocation(553, 259);
        goldEgg goldegg13 = new goldEgg();
        addObject(goldegg13, 394, 100);
        goldegg13.setLocation(388, 91);
        redEgg redegg = new redEgg();
        addObject(redegg, 234, 100);
        redegg.setLocation(227, 92);
        blueEgg blueegg = new blueEgg();
        addObject(blueegg, 314, 100);
        blueegg.setLocation(307, 93);
        redEgg redegg2 = new redEgg();
        addObject(redegg2, 472, 101);
        redegg2.setLocation(462, 88);
        yellowEgg yellowegg = new yellowEgg();
        addObject(yellowegg, 393, 187);
        yellowegg.setLocation(389, 181);
        yellowEgg yellowegg2 = new yellowEgg();
        addObject(yellowegg2, 464, 334);
        yellowegg2.setLocation(453, 332);
        redEgg redegg3 = new redEgg();
        addObject(redegg3, 239, 267);
        redegg3.setLocation(233, 260);
        blueEgg blueegg2 = new blueEgg();
        addObject(blueegg2, 152, 341);
        blueegg2.setLocation(143, 332);
        blueEgg blueegg3 = new blueEgg();
        addObject(blueegg3, 464, 195);
        blueegg3.setLocation(458, 187);
        yellowEgg yellowegg3 = new yellowEgg();
        addObject(yellowegg3, 560, 190);
        yellowegg3.setLocation(553, 185);
        redEgg redegg4 = new redEgg();
        addObject(redegg4, 149, 418);
        redegg4.setLocation(144, 412);
        blueEgg blueegg4 = new blueEgg();
        addObject(blueegg4, 149, 195);
        blueegg4.setLocation(141, 182);
        yellowEgg yellowegg4 = new yellowEgg();
        addObject(yellowegg4, 236, 191);
        yellowegg4.setLocation(230, 184);
        redEgg redegg5 = new redEgg();
        addObject(redegg5, 456, 403);
        redegg5.setLocation(454, 394);
        yellowEgg yellowegg5 = new yellowEgg();
        addObject(yellowegg5, 241, 401);
        yellowegg5.setLocation(231, 392);
        redEgg redegg6 = new redEgg();
        addObject(redegg6, 307, 496);
        redegg6.setLocation(304, 486);
        blueEgg blueegg5 = new blueEgg();
        addObject(blueegg5, 388, 402);
        blueegg5.setLocation(381, 395);
        blueEgg blueegg6 = new blueEgg();
        addObject(blueegg6, 559, 340);
        blueegg6.setLocation(554, 335);
        yellowEgg yellowegg6 = new yellowEgg();
        addObject(yellowegg6, 558, 493);
        yellowegg6.setLocation(553, 490);
        redEgg redegg7 = new redEgg();
        addObject(redegg7, 233, 491);
        redegg7.setLocation(227, 485);
        blueEgg blueegg7 = new blueEgg();
        addObject(blueegg7, 472, 492);
        blueegg7.setLocation(461, 481);
        removeObject(redegg4);
        redEgg redegg8 = new redEgg();
        addObject(redegg8, 148, 416);
        redegg8.setLocation(142, 408);
    }
    
    
}
geekykid2013 geekykid2013

2013/5/22

#
also should - super (700, 700, 1, false) be set to false rather than true?
danpost danpost

2013/5/22

#
geekykid2013 wrote...
also should - super (700, 700, 1, false) be set to false rather than true?
If you want the actors of that world to be able to go beyond the visible limits of the world, then 'false' would be the appropriate value, otherwise use 'true'.
There are more replies on the next page.
1
2
3
4
5