Revision: 39603
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at January 19, 2011 02:02 by joswald
Initial Code
import greenfoot.*; // (World, Actor, GreenfootImage, and Greenfoot)
/**
* This class defines a crab. Crabs live on the beach.
*/
public class Crab extends Animal
{
private final int MAX_TURN_DEGREES = 25;
private final int ANIMATION_FRAMES = 2;
private int animationCounter = 0;
private GreenfootImage[] images;
public Crab()
{
images = new GreenfootImage[ANIMATION_FRAMES];
for( int i = 1; i <= ANIMATION_FRAMES; i++ )
{
images[i-1] = new GreenfootImage( "crab" + i + ".png" );
}
setImage( images[animationCounter] );
animationCounter++;
}
public void animate()
{
animationCounter = animationCounter % ANIMATION_FRAMES;
setImage( images[animationCounter] );
animationCounter++;
}
public void turnAtEdge()
{
if( atWorldEdge() )
{
turn(17);
}
}
public void randomTurn()
{
if( Greenfoot.getRandomNumber(100) < 15 )
{
int directionToTurn = Greenfoot.getRandomNumber(3) - 1; // left, right, or no turn
turn( directionToTurn * Greenfoot.getRandomNumber(MAX_TURN_DEGREES) );
}
}
public void lookForWorm()
{
if( canSee( Worm.class ) )
{
eat( Worm.class );
Greenfoot.playSound("slurp.wav");
}
}
public void checkKeyPress()
{
if( Greenfoot.isKeyDown( "left" ) )
{
turn( -4 );
}
if( Greenfoot.isKeyDown( "right" ) )
{
turn( 4 );
}
}
public void act()
{
checkKeyPress();
move();
animate();
lookForWorm();
}
}
Initial URL
Initial Description
I had a subtle mistake in my code that was causing the exception. The corrected source code is below:
Initial Title
Crab Scenario Animation
Initial Tags
java
Initial Language
Java