Sono un programmatore autodidatta, quindi non conosco i modi corretti per fare le cose. Ho creato giochi semplici come asteroidi e serpenti, ma in quei giochi puoi facilmente modificare le variabili all'interno delle funzioni chiave. Ecco come l'ho fatto nel mio semplice gioco Asteroids:
/*
* key listener events
*/
public void keyReleased(KeyEvent k){
int keyCode = k.getKeyCode();
switch(keyCode){
case KeyEvent.VK_LEFT:
turnLeft = false;
break;
case KeyEvent.VK_RIGHT:
turnRight = false;
break;
case KeyEvent.VK_UP:
accel = false;
break;
case KeyEvent.VK_1:
cls = true;
break;
case KeyEvent.VK_ENTER:
break;
case KeyEvent.VK_SPACE:
fire = false;
}
}
public void keyTyped(KeyEvent K){}
public void keyPressed(KeyEvent k){
int keyCode = k.getKeyCode();
switch(keyCode){
case KeyEvent.VK_LEFT:
turnLeft = true;
break;
case KeyEvent.VK_RIGHT:
turnRight = true;
break;
case KeyEvent.VK_UP:
accel = true;
break;
case KeyEvent.VK_1:
cls = false;
break;
case KeyEvent.VK_ENTER:
clearAllBullets();
break;
case KeyEvent.VK_SPACE:
fire = true;
}
}
Se dovessi creare un gioco più avanzato (con un menu principale, opzioni, gioco principale, ecc.), Come dovrei fare l'input tasto / mouse?
Inoltre, se dovessi entrare nel single-player, dovrei mettere tutto il codice di gioco in una classe? C'è un modo per mettere il codice single player in una classe separata e in qualche modo l'input della chiave modifica ancora le variabili e simili?