My Crab code is:
Then the Counter code is:
And I want to make it count every time i eat a worm I marked the places with a comment in the crab code were the java.lang.NullPointerException
occurred can i have help fixing it??
Thanks.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 | import greenfoot.*; // (World, Actor, GreenfootImage, and Greenfoot) /** * This class defines a crab. Crabs live on the beach. */ public class Player1 extends Animal { public void act() { if (Greenfoot.isKeyDown( "up" )) { move(getRandomNumber( 1 , 3 )); } if (Greenfoot.isKeyDown( "down" )) { move(getRandomNumber(- 3 ,- 1 )); } if (Greenfoot.isKeyDown( "left" )) { turn(getRandomNumber(- 5 ,- 3 )); } if (Greenfoot.isKeyDown( "right" )) { turn(getRandomNumber( 3 , 5 )); } lookForWorm(); // java.lang.NullPointerException } public void lookForWorm() { if (canSee(Worm. class )) { eat(Worm. class ); CrabWorld world = (CrabWorld) getWorld(); Score1 score1 = world.getCounter1(); score1.addScore1(); // java.lang.NullPointerException } } public int getRandomNumber( int start, int end) { int normal = Greenfoot.getRandomNumber(end-start+ 1 ); return normal+start; } } |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 | import greenfoot.*; // (World, Actor, GreenfootImage, Greenfoot and MouseInfo) /** * Write a description of class Score here. * * @author (your name) * @version (a version number or a date) */ public class Score1 extends Animal { private int score1 = 0 ; public Score1() { setImage( new GreenfootImage( "Player1 Score : " + score1, 24 , Color.GREEN, Color.BLACK)); } public void addScore1() { score1 ++; setImage( new GreenfootImage( "Player1 Score : " + score1, 24 , Color.GREEN, Color.BLACK)); } } |