All pastes #895858 Raw Edit

Untitled

public text v1 · immutable
·published 2008-02-08 03:38 UTC
rendered paste body
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);
    }
}