Hello, I have only recently begun to learn about coding and was wondering if someone could help me with something. I would like to be able to slow down my Mario animation. I believe that I am supposed to use an animation counter..? If someone could help me that would be greatly appreciated! :)
import greenfoot.*;
/**
* Write a description of class Mario here.
*
* @author (your name)
* @version (a version number or a date)
*/
public class Mario extends Actor
{
private GreenfootImage seq0;
private GreenfootImage seq1;
private GreenfootImage seq2;
private int speed_;
public Mario()
{
super();
speed_ = 5;
seq0 = new GreenfootImage("mario1.gif");
seq1 = new GreenfootImage("mario2.gif");
seq2 = new GreenfootImage("mario3.gif");
setImage(seq0);
}
public void setSpeed(int s)
{
speed_ = s;
}
public int getSpeed()
{
return speed_;
}
/**
* Act - do whatever the Mario wants to do. This method is called whenever
* the 'Act' or 'Run' button gets pressed in the environment.
*/
public void act()
{
// Add your action code here.
animate();
swim();
}
public void animate()
{
if(getImage() == seq0 )
{
setImage(seq1);
}
else if(getImage() == seq1)
{
setImage(seq2);
}
else
{
setImage(seq0);
}
}
public void swim()
{
if(Greenfoot.isKeyDown("left"))
{
setLocation(getX() - speed_ , getY());
}
if(Greenfoot.isKeyDown("right"))
{
setLocation(getX() + speed_ , getY());
}
if(Greenfoot.isKeyDown("up"))
{
setLocation(getX() , getY() - speed_);
}
if(Greenfoot.isKeyDown("down"))
{
setLocation(getX() , getY() + speed_);
}
if(Greenfoot.isKeyDown("p"))
{
Greenfoot.stop();
}
}
}
