Hi I am new on Greenfoot and i made recently started making a new game. In my game i am trying to animate a character so that he can walk left and right and jump. I got all the images for a sequence and the code, but when I put two sequence statements (for left and right walking) greenfoot mixes them up. I tried using "System.out.println" and the left walking movement integers for the sequence came out negative. Please help! Here is the code for left and right.
public void Animation()
{
if(Greenfoot.isKeyDown("right"))
{
sequence ++; //Add 1 to 'sequence'
switch (sequence) //Casewhere sequence == ...
{
case 1: setImage(charA); break;
//wait 5 incriments of sequence (case 6)
case 6: setImage(charB); break;
case 11: setImage(charC); break;
case 16: setImage(charD); break;
case 21: setImage(charE); break;
case 26: setImage(charF); break;
case 31: setImage(charG); break;
case 36: setImage(charF); break;
case 41: setImage(charE); break;
case 46: setImage(charD); break;
case 51: setImage(charC); break;
case 56: setImage(charB); break;
//wait 4 inciments before reseting it to '0' (so it starts again)
//waiting 4 instead of 5 to include the one from '0'
case 60: sequence = 0; break;
}
}
// if "right arrow" is not pressed (I image the character is stopped)
// Set the image to the standstill image
else
{
if (getImage() != charG)
{
setImage(charG);
}
}
}
public void BackwardsAnimation()
{
if(Greenfoot.isKeyDown("left"))
{
sequence --; //Add 1 to 'sequence'
switch (sequence) //Casewhere sequence == ...
{
case 60: setImage(charH); break;
//wait 5 incriments of sequence (case 6)
case 56: setImage(charI); break;
case 51: setImage(charJ); break;
case 46: setImage(charK); break;
case 41: setImage(charL); break;
case 36: setImage(charM); break;
case 31: setImage(charN); break;
case 26: setImage(charM); break;
case 21: setImage(charL); break;
case 16: setImage(charK); break;
case 11: setImage(charJ); break;
case 6: setImage(charI); break;
//wait 4 inciments before reseting it to '0' (so it starts again)
//waiting 4 instead of 5 to include the one from '0'
case 1: sequence = 0; break;
}
}
// if "left arrow" is not pressed (I image the character is stopped)
// Set the image to the standstill image
else
{
if (getImage() != charN)
{
setImage(charN);
}
}
}

