import java.awt.*; import java.awt.event.*; import javax.swing.*; public class Interface extends JFrame { private JTextArea areaTexte = null; private EcouteurKeys ecouteurKeys = null; private Joueur joueurUn = null; //********************************************************************* // But: Créer l'interface graphique du programme // Sortie: Aucune //********************************************************************* public Interface() { super("Jeu"); // Déterminer la grosseur du jeu setSize(500, 500); // Créer le panneau Container panneau = getContentPane(); areaTexte = new JTextArea(); areaTexte.setFont(new Font("Arial", Font.BOLD, 20)); areaTexte.setEnabled(false); areaTexte.setText("X"); panneau.add(areaTexte); // Ajouter l'écouteur de keys ecouteurKeys = new EcouteurKeys(); this.addKeyListener(ecouteurKeys); // Création du joueur joueurUn = new Joueur(); } //********************************************************************* // But: Gérer la fenetre // Sortie: Aucune //********************************************************************* private class EcouteurKeys implements KeyListener { public void keyTyped (KeyEvent e) { } public void keyPressed (KeyEvent e) { if ( e.getKeyChar() == 's' ) { joueurUn.move(joueurUn.getX(), joueurUn.getY() + 1); actualiserAffichage(); } else if ( e.getKeyChar() == 'a' ) { joueurUn.move(joueurUn.getX() - 1, joueurUn.getY()); actualiserAffichage(); } else if ( e.getKeyChar() == 'w' ) { joueurUn.move(joueurUn.getX(), joueurUn.getY() - 1); actualiserAffichage(); } else if ( e.getKeyChar() == 'd' ) { joueurUn.move(joueurUn.getX() + 1, joueurUn.getY()); actualiserAffichage(); } } public void keyReleased (KeyEvent e) { } } public void actualiserAffichage() { areaTexte.setText(""); for ( int i = 0; i < joueurUn.getY(); i++) { areaTexte.setText(areaTexte.getText() + '\n'); } for ( int j = 0; j < joueurUn.getX(); j++ ) { areaTexte.setText(areaTexte.getText() + ' '); } areaTexte.setText(areaTexte.getText() + 'X'); } public static void main(String[] args) { Interface jeu = new Interface(); jeu.setVisible(true); } }