Bonjour tout le monde,
Je suis entrain d'�crire un petit jeu avec Builder, et j'ai l'impression que je me r�p�te dans mon code, je ne sais comment �crire une fonction et les appeler juste dans un programme principal
merci de votre aide

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
void __fastcall TForm1guerrier::FormKeyPress(TObject *Sender, char &Key)
{
    const int segmentLongueur = Image1graphe->Height/10;
    static float Angle = -M_PI/2;
    float Cinq = 5*M_PI/180;     // conversion en radian
 
 
   if (((Key == 'l')||(Key == 'L'))&(-Angle *180/M_PI > 5 ))
   {
      Angle = Angle  + Cinq;  //incrémenté par pas de 5
 
      Image1graphe->Canvas->Pen->Color = clWhite;
      Image1graphe->Canvas->MoveTo(segmentDebutX, segmentDebutY);
      Image1graphe->Canvas->LineTo(segmentFinX, segmentFinY);
      segmentFinX = segmentDebutX + segmentLongueur * cos(Angle);
      segmentFinY = segmentDebutY + segmentLongueur * sin(Angle);
      Image1graphe->Canvas->Pen->Color = clRed;
      Image1graphe->Canvas->Pen->Width = 5;
      Image1graphe->Canvas->MoveTo(segmentDebutX, segmentDebutY);
      Image1graphe->Canvas->LineTo(segmentFinX, segmentFinY);
   }
   if (((Key == 'K')||(Key == 'k'))&(-Angle*180/M_PI < 175 ))
   {
      Angle = Angle - Cinq; //par pas de cinq
 
      Image1graphe->Canvas->Pen->Color = clWhite;
      Image1graphe->Canvas->MoveTo(segmentDebutX, segmentDebutY);
      Image1graphe->Canvas->LineTo(segmentFinX, segmentFinY);
      segmentFinX = segmentDebutX + segmentLongueur * cos(Angle);
      segmentFinY = segmentDebutY + segmentLongueur * sin(Angle);
      Image1graphe->Canvas->Pen->Color = clRed;
      Image1graphe->Canvas->Pen->Width = 5;
      Image1graphe->Canvas->MoveTo(segmentDebutX, segmentDebutY);
      Image1graphe->Canvas->LineTo(segmentFinX, segmentFinY);
   }
   Panel1angle->Caption = FloatToStrF(-Angle*180/M_PI,ffFixed,3,2);
}
//---------------------------------------------------------------------------