The problem is that if for example you minimize the game and reopen it, or if its window "looses focus" for a second, keyboard commands don't work anymore.
I implemented the commands like this:
public class GFrame extends JFrame {
...
...
protected void processKeyEvent(KeyEvent e){
int keyCode = e.getKeyCode();
int keyId = e.getID();
if(keyCode == KeyEvent.VK_X && keyId == KeyEvent.KEY_PRESSED){
//do something
}
else if(keyId == KeyEvent.KEY_PRESSED){
//do something
} else if(keyId == KeyEvent.KEY_RELEASED){
if(keyCode == KeyEvent.VK_LEFT && playerShip.move==PlayerShip.MOVE_LEFT){
//do something
}
if(keyCode == KeyEvent.VK_RIGHT && playerShip.move==PlayerShip.MOVE_RIGHT){
//do something
}
}
if(keyCode == KeyEvent.VK_P && keyId == KeyEvent.KEY_PRESSED){
//do something
}
if(keyCode == KeyEvent.VK_S && keyId == KeyEvent.KEY_PRESSED){
//do something
}
//others here..
}
}
I know it's messy, I'll fix that but I don't think that's the problem here.
Any suggestions?


Sign In
Create Account


Back to top









