Beruflich Dokumente
Kultur Dokumente
{
bg1 = new Background(0,0);
bg2 = new Background(2160,0);
robot = new Robot();
Thread thread = new Thread(this);
thread.start();
}
@Override
public void run() {
// TODO Auto-generated method stub
while(true)
{
robot.update();
if (robot.isJumped()){
currentSprite = characterJump;
}else if (robot.isJumped() == false && robot.isDucked()
== false){
currentSprite = character;
}
bg1.update();
bg2.update();
repaint();
try{
Thread.sleep(17);
}catch(InterruptedException e)
{
e.printStackTrace();
}
}
}
@Override
public void destroy()
{
}
@Override
public void update(Graphics g)
{
if(image == null)
{
image = createImage(this.getWidth(),this.getHeig
ht());
second = image.getGraphics();
}
second.setColor(getBackground());
second.fillRect(0,0, getWidth(), getHeight());
second.setColor(getForeground());
paint(second);
g.drawImage(image,0,0,this);
}
@Override
public void paint(Graphics g)
{
g.drawImage(background, bg1.getBgX(), bg1.getBgY(), this);
g.drawImage(background, bg2.getBgX(), bg2.getBgY(), this);
g.drawImage(currentSprite, robot.getCenterX()-61,robot.getCenter
Y()-63, this);
}
@Override
public void keyPressed(KeyEvent e) {
// TODO Auto-generated method stub
switch(e.getKeyCode())
{
case KeyEvent.VK_DOWN:
currentSprite = characterDown;
if (robot.isJumped() == false){
robot.setDucked(true);
robot.setSpeedX(0);
}
break;
case KeyEvent.VK_RIGHT:
robot.moveRight();
robot.setMovingLeft(true);
break;
case KeyEvent.VK_LEFT:
robot.moveLeft();
robot.setMovingRight(true);
break;
case KeyEvent.VK_SPACE:
robot.jump();
break;
}
}
@Override
public void keyReleased(KeyEvent e) {
// TODO Auto-generated method stub
switch(e.getKeyCode())
{
case KeyEvent.VK_DOWN:
currentSprite = character;
robot.setDucked(false);
break;
case KeyEvent.VK_RIGHT:
robot.stopRight();
break;
case KeyEvent.VK_LEFT:
robot.stopLeft();
break;
case KeyEvent.VK_SPACE:
System.out.println("Stop jumping");
break;
}
}
@Override
public void keyTyped(KeyEvent arg0) {
// TODO Auto-generated method stub
}