Bonjour a tous,
Comme un dessin vaut mille mots:

http://sdz-upload.s3.amazonaws.com/prod/upload/Sans%20titre467.jpg

(Je sais pas pk je n'ai pas reussi a inserer l'img,dsl)

------>Precision: les obstacles apparaissent 1 a 1,et se deplace de droite a gauche.

Voici la partie du code qui je pense est importante:

Classe Fenetre

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
public class Jeu_Fenetre extends JFrame {
 
    //
    private Jeu_Panneau JPan1 =new Jeu_Panneau();
    JPanel pan =new JPanel();
 
    public Jeu_Fenetre(){
        this.setTitle("TP-Calculette");
          this.setSize(550, 500);
          this.setLocationRelativeTo(null);
          this.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
          pan.setLayout(new BorderLayout());//indique qu'il faut prendre compte le positionnemt des touches
          getContentPane().add(pan);//ajout du JPanel pour le rendre visible
          //Apparence
          affichage01();
          pan.add(JPan1);//fond et autres
        //rendre visible
          this.setVisible(true);
          //
          go01();
    }
 
 
    //---------------------------------------------Animation du joueur---------------------------------------------
    //---------------------------------------------Action lors du clic---------------------------------------------    
    protected void affichage01(){
        //cretaion du JPanel qui contiendra des boutons
        JPanel pan_b=new JPanel();//b=bouton
        pan.add(pan_b , BorderLayout.SOUTH);
 
      //Creation des boutons
        JButton bHaut=new JButton ("Haut");
        JButton bBas=new JButton ("Bas");
        //Ajout d'action au boutons
        bHaut.addActionListener(new bH_Listener());
        bBas.addActionListener(new bB_Listener());
        //Ajout des boutonss dans le Panel
        pan_b.setLayout(new GridLayout(1,0,5,2));//ds l'ordre (ligne,colonne,espacement de 5px(x;y)
        pan_b.add(bHaut);
        pan_b.add(bBas);
    }
 
 
 
    //Var
    //"Thread"Variable qui permettra de lancer l'action
    private Thread t1;//vers le haut
    private Thread t2;//vers le bas
   //Va ns permettre de savoir quel bouton est cliqué
    boolean animated_bH;
    boolean animated_bB;
    //Va nous permettre de savoir la position du joueur
    int x_j=JPan1.getPosX_j();
    int y_j=JPan1.getPosY_j();
 
    //
    //---------Fct des animations-------
 
    //Animation vers le haut
    public void Jgo01(){
            for(;;){
                y_j--;
                JPan1.setPosY_j(y_j);
                JPan1.repaint();
                if (Math.abs( y_j ) <=0){
                    JPan1.setPosY_j(0);
                }try {
                    Thread.sleep(0);
                } catch (InterruptedException e) {
                  e.printStackTrace();
                }
 
            }
    }
    //Animation vers le bas
    public void Jgo02(){
    for(;;){
        y_j++;
        JPan1.setPosY_j(y_j);
        JPan1.repaint();
        if (Math.abs( y_j ) >=0){
            JPan1.setPosY_j(getHeight());
        }try {
            Thread.sleep(0);
        } catch (InterruptedException e) {
          e.printStackTrace();
        }
 
    }
}
 
 
    public class bH_Listener implements ActionListener{//(*)Ici les classes ineternes st decrites
        public void actionPerformed(ActionEvent arg0) {
            //
            animated_bH=true;
            animated_bB=false;
            //
            t1 = new Thread(new PlayAnimation());
            t1.start();
            t2.stop();
    }
    }
    public class bB_Listener implements ActionListener{//(*)Ici les classes ineternes st decrites
         public void actionPerformed(ActionEvent arg0) {
                //
                animated_bH=false;
                animated_bB=true;
                //
                t2 = new Thread(new PlayAnimation1());
                t2.start();
                t1.stop();
            }
        }
 
    //
    class PlayAnimation implements Runnable{
        public void run() {
          Jgo01();
        }              
      }
    class PlayAnimation1 implements Runnable{
        public void run() {
          Jgo02();
        }              
      }
 
 
 
 
 
  //---------------------------------------------FIN Action lors du clic---------------------------------------------
 
 
    //---------------------------------------------Animation des obstacles ---------------------------------------------
    public void go01(){
        int i;
        for(i=0;;i++){
            //
            int x = JPan1.getPosX(), y = JPan1.getPosY();
            int xl =JPan1.getPosXl(),yl=JPan1.getPosYl();
            //
            x--;
            JPan1.setPosX(x);
            JPan1.setPosY(y);
            JPan1.repaint();
            if(Math.abs( x ) <=0){
                  JPan1.setPosX(1000);
                  JPan1.setPosY(200);
                  //
                  JPan1.setPosYl(900);
              }try {
                  Thread.sleep(5);
              } catch (InterruptedException e) {
                e.printStackTrace();
              }
              i=0;
            }      
    }
 
    //---------------------------------------------FIN Animation des Obstacles---------------------------------------------
Mon probleme:

Je n'arrive pas a gerer le deplacement du joueur.

Merci de votre aide.