I've just started learning to program applets, and java GUI in general, I'm attempting to make a simple game. At the moment, i have the main class (Game) and the player class (Player) i have the player drawing to the screen, but i'm struggling to get the key events to work, any help appreciated!
The player image displays perfectly fine, but the position doesn't change when i hit a key at all.
EDIT: wrong code posted for the player, updated
Game.java:
public class Game extends Applet {
Player player;
@Override
public void init() {
player = new Player(this);
this.setSize(800, 600);
addKeyListener(player);
}
@Override
public void paint(Graphics g) {
player.paint(g);
}
}
Player.java:
public class Player implements KeyListener {
Game game;
Image image;
int x;
int y;
public Player(Game game) {
this.game = game;
x = 0;
y = 0;
image = game.getImage(game.getCodeBase(), "images/Player.png");
}
public void paint(Graphics g) {
g.drawImage(image, x, y, game);
}
@Override
public void keyTyped(KeyEvent e) {
return;
}
@Override
public void keyPressed(KeyEvent e) {
switch (e.getKeyCode()) {
case KeyEvent.VK_A:
x -= 1;
break;
case KeyEvent.VK_D:
x += 1;
break;
case KeyEvent.VK_S:
y += 1;
break;
case KeyEvent.VK_W:
y -= 1;
break;
}
game.repaint();
}
@Override
public void keyReleased(KeyEvent e) {
return;
}
}
setSize()
in theinit()
. – Retsina