1

voila j'ai commencé un phoenix like...
pr dl une démo:
http://ti-team.vvlr.com/destroy.89z
J'ai abandonné ce projet car j'ai pas le niveau pr gerer l'ia et les collisions...
bref si qqn veut reprendre ce projet et avoir les sources, qu'il me mail:
[email]luc.vauvillier@vvlr.com[/email]

2

c programmé en quoi ?

3

C

4

-

5

>J'ai abandonné ce projet car j'ai pas le niveau pr gerer l'ia et les collisions...

ba c normal d'apprendre, non ? roll

6

bah moi je veux bien voir les sources, pas pour modifier le jeu (normalement, car j'ai pas trop le temps) mais juste pour apprendre un peu mieux le C.

7

n'apprend pas ac les sources d'un newbie ! non

8

bah si tu as d'autre sources en C ... grin je suis preneur (ds les RPG et jeu de plate forme surtout). toptop
merci. wink

9

je précise que je n'ai pas copié sur l'exemple, mais tt refait.
Sinon, pr ma source c'est du gros bordel, je vous la met:
--------------------- #define OPTIMIZE_ROM_CALLS    // Use ROM Call Optimization #define SAVE_SCREEN           // Save/Restore LCD Contents #include <tigcclib.h>         // Include All Header Files short _ti89;                  // Produce .89Z File static unsigned char miss1[]={0xFE,0xD5,0xAB,0xFE,0x0,0x0,0x0,0x0}; static unsigned char miss2[]={0xFE,0xAB,0xD5,0xFE,0x0,0x0,0x0,0x0}; static unsigned short av1[]={0x3F00,0xF1E0,0x2500,0x3F00,0x1180,0x1FC0,0x3FF8,0x6B37,0x6B37,0x3FF8,0x1FC0,0x1180,0x3F00,0x2500,0xF1E0,0x3F00}; static unsigned short av2[]={0x3F00,0xCEE0,0x3B00,0x2100,0x1E80,0x1EC0,0x3038,0x5FCF,0x5FCF,0x3038,0x1EC0,0x1E80,0x2100,0x3B00,0xCEE0,0x3F00}; static unsigned char enn1[]={0xF,0x36,0x6A,0xD4,0xD4,0x6A,0x36,0xF}; static unsigned char enn2[]={0xF,0x3A,0x56,0xAC,0xAC,0x56,0x3A,0xF}; INT_HANDLER save_int_1; int eh; int ev; int dir; int pv; int quitter; int loop; int aff[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; int missv[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; int missh[20]={0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0}; int wait=0; int ph=4; int delay=5; int style=1; int tirnum; SCR_RECT screen_area={{0,0,159,99}}; void spenn()  {       Sprite8(eh,ev,8,enn1,GetPlane(DARK_PLANE),SPRT_XOR);   Sprite8(eh,ev,8,enn2,GetPlane(LIGHT_PLANE),SPRT_XOR);  } void enn()  {       if(dir==1 && ev >= 0)        {             spenn();             ev=ev-1;         spenn();        }       if(dir==1 && ev == 0)        {         dir=0;        }       if(dir==0 && ev <= 90)        {             spenn();             ev=ev+1;         spenn();        }       if(dir==0 && ev == 90)        {         dir=1;        }  } void intro()  { ClrScr(); for(loop=0;loop<=4;loop+=2) DrawClipRect(MakeWinRect(loop,loop,159-loop,99-loop),&screen_area,A_NORMAL); FontSetSys(F_8x10); DrawStrXY((LCD_WIDTH-DrawStrWidth("*DESTROY DEMO*", F_8x10))/2, 20, "*DESTROY DEMO*", A_NORMAL); FontSetSys(F_6x8); DrawStrXY((LCD_WIDTH-DrawStrWidth("Par Luc VAUVILLIER", F_6x8))/2, 43, "Par Luc VAUVILLIER", A_NORMAL); FontSetSys(F_4x6); DrawStrXY((LCD_WIDTH-DrawStrWidth("luc.vauvillier@freesbee.fr", F_4x6))/2, 59, "luc.vauvillier@freesbee.fr", A_NORMAL); DrawStrXY((LCD_WIDTH-DrawStrWidth("http://ti-team.vvlr.com", F_4x6))/2, 69, "http://ti-team.vvlr.com", A_NORMAL); DrawStrXY((LCD_WIDTH-DrawStrWidth("Compilé avec TIGCC le 1/04/2001", F_4x6))/2, 79, "Compilé avec TIGCC le 1/04/2001", A_NORMAL); ngetchx();      ClrScr(); for(loop=1;loop<=120;loop+=2) DrawClipEllipse(80,50,loop,loop,&screen_area,1); } void fond()  { SetPlane(DARK_PLANE); ClrScr(); SetPlane(LIGHT_PLANE); ClrScr(); for(loop=0;loop<=160;loop+=1) { DrawPix(loop,random(100),A_XOR); DrawPix(loop,random(100),A_XOR); DrawPix(loop,random(100),A_XOR); DrawPix(loop,random(100),A_XOR); } } void sprite() {      Sprite16(ph,pv,16,av1,GetPlane(DARK_PLANE),SPRT_XOR);   Sprite16(ph,pv,16,av2,GetPlane(LIGHT_PLANE),SPRT_XOR); } void tir() {   for (loop=0;loop!=20;loop++)     {   if (style==1)   {     if (aff[loop]==1)          {          if (missh[loop]!=ph+16)            {            Sprite8(missh[loop],missv[loop],8,miss1,GetPlane(DARK_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop],8,miss2,GetPlane(LIGHT_PLANE),SPRT_XOR);         }            missh[loop]=missh[loop]+3;            Sprite8(missh[loop],missv[loop],8,miss1,GetPlane(DARK_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop],8,miss2,GetPlane(LIGHT_PLANE),SPRT_XOR);         }     if (missh[loop]>160)        {             aff[loop]=0;        }     }   if (style==2)   {     if (aff[loop]==1)          {          if (missh[loop]!=ph+16)            {            Sprite8(missh[loop],missv[loop],8,miss1,GetPlane(DARK_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop],8,miss2,GetPlane(LIGHT_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop]+9,8,miss1,GetPlane(DARK_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop]+9,8,miss2,GetPlane(LIGHT_PLANE),SPRT_XOR);                 }            missh[loop]=missh[loop]+3;            Sprite8(missh[loop],missv[loop],8,miss1,GetPlane(DARK_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop],8,miss2,GetPlane(LIGHT_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop]+9,8,miss1,GetPlane(DARK_PLANE),SPRT_XOR);         Sprite8(missh[loop],missv[loop]+9,8,miss2,GetPlane(LIGHT_PLANE),SPRT_XOR);              }     if (missh[loop]>160)        {             aff[loop]=0;               }     }   } } void _main(void) { dir=1; ph=4; ev=50; eh=150; style=1; quitter=0; pv=50; wait=0; intro(); save_int_1 = GetIntVec(AUTO_INT_1); SetIntVec(AUTO_INT_1, DUMMY_HANDLER); GrayMode(GRAY_ON); SetPlane(DARK_PLANE); ClrScr(); SetPlane(LIGHT_PLANE); fond(); sprite(); spenn(); do  {       SetPlane(DARK_PLANE); enn(); for (loop=0;loop!=(2000);loop++){}           tir(); if(wait!=0){wait=wait+1;} if(wait>10)           {           wait=0;           } tirnum=0; for (loop=0;loop!=20;loop++)     {     if(aff[loop]==1)      {          tirnum=tirnum+1;      }     } if(_rowread(0x7E)&0x1 && pv>0) //Haut      {           sprite();      pv=pv-2;      sprite();      }   if(_rowread(0x7E)&0x4  && pv<84) //Bas      {      sprite();      pv=pv+2;      sprite();      } if(_rowread(0x7E)&0x8 && ph<35) //Droite      {           sprite();      ph=ph+2;      sprite();      }   if(_rowread(0x7E)&0x2  && ph>0) //Gauche      {      sprite();      ph=ph-2;      sprite();      } if(_rowread(0x7E)&0x10 && wait==0) //2nd      {           for (loop=0;loop!=20;loop++)          {               if (aff[loop]==0)             {             aff[loop]=1;             if (style==1)             {missv[loop]=pv+6;}                  if (style==2)             {missv[loop]=pv+2;}                  missh[loop]=ph+16;             goto sort;             }          }                 sort:       wait=1;       }      if(_rowread(0x5F)&0x80&&tirnum==0) //F1      {      style=1;      }     if(_rowread(0x6F)&0x80&&tirnum==0) //F2      {      style=2;      }     if(_rowread(0x3F)&0x1) // Esc      {      quitter = 1;      }     }while(quitter != 1); GrayMode(GRAY_OFF); SetIntVec(AUTO_INT_1, save_int_1); quitter=0; pv=50; wait=0; ph=4; for (loop=0;loop!=20;loop++)   {   aff[loop]=0;   } }

(yAro : vala en source :])

10

ça fait bcp de variables gloables sad

pr gérer les colisions, il faut voir au niveau coordonnées, éventuellement...
ou alors, par dex PxlTest (ou autre chose du même style, par masks)
avatarTutorial C (TI-89/92+/v200) - Articles Développement Web (PHP, Javascript, ...)
« What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against? » - Larry Wall

11

-

12

oui désolé.
Merci yaro!

13

c'est con c'etait pas mal fait ton truc quand meme.
je regarde les sources histoires d'apprendre un peu grin

14

non surtout pas !! c'est mal codé !
avatar納 豆パワー!
I becamed a natto!!!1!one!

15

Au fait, ce cerais cool de me dire ce qui ne vas pas et pkoi c'est mal codé pr que je corrige mes erreurs...

16

tiens je croyais que tu avais abandonné ?! gringringringringrin
avatar納 豆パワー!
I becamed a natto!!!1!one!

17

oui je l'ai abandonné mais je peut aussi en profiter pr voir quelles sont mes erreurs et essayer de ne pas les reproduire sur d'autres programmes.