cant figure it out.. would be nice if someone could help me ;D
my actor:
import greenfoot.*;
public class character extends Actor
{
private int vSpeed=0;
private int ySpeed;
private int apexTimer;
public character()
{}
public void act()
{
checkKeys();
onGround();
}
public void checkKeys()
{ if (Greenfoot.isKeyDown ("D"))
{move (4);
setImage("gun_rechts.png");}
if (Greenfoot.isKeyDown ("A"))
{move (-4);
setImage("gun_links.png");}
if (Greenfoot.isKeyDown ("W"))
{setImage("gun_oben.png");}
if (Greenfoot.isKeyDown ("S"))
{setImage("gun_unten.png");}
}
public void onGround()
{
int groundLevel = getWorld().getHeight() - getImage().getHeight()/2;
boolean onGround = (getY() == groundLevel);
if (!onGround)
{
if (ySpeed == 0 && apexTimer > 0) apexTimer--;
if (ySpeed == 0 && apexTimer > 0) return;
ySpeed++;
setLocation(getX(), getY()+ySpeed);
if (getY()>=groundLevel)
{
setLocation(getX(), groundLevel);
Greenfoot.getKey();
}
}
else // on ground
{
if ("space".equals(Greenfoot.getKey()))
{
ySpeed = -15; // add jump speed
setLocation(getX(), getY()+ySpeed);
apexTimer = 5;
}
}
}
}

