Je vous présente mon jeu, TI-Jump, un remake de Doodle-Jump

Spécificités:
>Gestion des 3 derniers scores.
>Menu animé
> Monstres, boosts, bonus
>Rapidité augmenté
>Possibilité de faire une pause dans le jeu
>Possibilité de traverser l'écran à droite, et à gauche.
>Petite taille du jeu
>Scrolling fluide
Changelogs:
beta v1.1: Version originale du programme
v1.1: Ajout du menu boutique, et du score.Correction du bugs des listes.
v1.2: Optimisation du programme, correction des bugs d'affichages du Doodle, rapidité augmentée.
v1.3: Ajout du cadre de la fenêtre. Suppression temporaire du menu de la boutique. Corrections des bugs quand le doodle touche les bords. Optimisation du programme (1591 octets contre 1800 de la version 1.1 avec en plus la correction des bugs) . Système de Game Over à l'extérieur de la boucle principale (rapidité augmentée)
v1.4: Grosse optimisation du programme. Il ne fait plus que 1368 octets! Ajout du système de reprise en haut de la map (avant quand on arrivait en haut de la map le Doodle tombait). Hauteur de la map améliorée. Au début, une plaque se situe tout en bas. Au fil du jeu, elle disparaît. Correction des bugs de game over. Rapidité augmentée!
v1.5 : Ajout de la fonction pause dans le jeu. Il est désormais possible de traverser l'écran des 2 cotés. Réalité du saut augmenté (quand le doodle arrive en haut). Correction des bugs d'affichages au démarrage. Amélioration de la gestion du score. Optimisation supplémentaire.
v1.6: Compatibilité avec toutes les Ti z80 (TI-76 à Ti-84+SE). Ajout de la gestion des scores (les trois derniers)
v2.0 (derniére): Ajout des monstres (M), des boosts (+). Optimisation du code. Menu amélioré. Nouvelle gestion des scores.
Fait entièrement par Wistaro
Version 2.0 !
Screen:

Code:
- Code: Select all
:3→dim(L6
:DelVar DDelVar L39→dim(L3
:9→dim(L1:9→dim(L2
:ClrDraw
:AxesOff:ClrDraw
:0→Xmin:1→∆X
:0→Ymax:‾62→Ymin
:51→M:36→N:60→W
:1→T:Lbl 1
:Text(5,28,"‾ TI JUMP! ‾
:Text(38,62,"-
:Text(52,39,"-
:Text(27,43,"-
:For(A,24,71,5
: Pt-On(A,‾16
:End:Text(57,1,"Wistaro
:Text(57,81,"v2.0
:Repeat getKey
: For(A,1,W
: Text(46,38,"π
: End
: Text(46,38," "
: For(A,1,W
: Text(32,61,"π
: End
: Text(32,61," "
: For(A,1,W
: Text(21,41,"π
: End
: Text(21,41," "
:End:Lbl J
:51→M:36→N
:Menu("*-TI JumP-*","Jouer",9,"Scores",S,"Quitter",Q
:Lbl S:ClrDraw
:Text(1,25,"Meilleurs scores
:Text(20,1,"1er: ",L6(1
:Text(35,20,"2e: ",L6(2
:Text(50,39,"3e: ",L6(3
:Pause :Goto J
:Lbl 9:ClrDraw
:DelVar CDelVar SDelVar ΘDelVar C1→G
:Lbl 2
:If not(Q:8→D
:If D=2:Then:Text(1,1,int(S
: Text(M,N,"^
: DelVar C1→G:End
:If D≠2:Text(M,N," "
:DelVar EIf Θ=1:Then
: S+5→S
: M+8(D≠2→M
: For(A,1,9
: Text(L2(A),L1(A)," "
: End
: For(A,9,2,‾1
: L1(A-1→L1(A
: L3(A-1→L3(A
: End
: randInt(14,74→L1(1
: L1(1)+(int(L1(1)/2)=L1(1)/2)→L1(1
: Q-(D=2→Q
: If D=2:Goto 2
: Text(M+7,N+1," "
: If S≥100:1.2→T
: If S≥200:1.4→T
: randInt(1,3→D
: randInt(1,8→U
: If D=2:1→L3(U
: If D=1:2→L3(U
: If L3(U:ClrDraw
: For(A,1,8,T
: round(A,0→A
: If not(L3(A:Text(L2(A),L1(A),"-
: If L3(A)=2:Text(L2(A),L1(A),"+
: If L3(A)=1:Text(L2(A),L1(A),"+
: End
: Goto Θ:End
:For(A,1,57,8
: E+1→E
: randInt(14,74→B
: B+(int(B/2)=(B/2→B
: B→L1(E:A→L2(E:Text(L2(E),B,"-
:End:Lbl Θ
:Lbl 3
:ClrHome
:Vertical 13
:Vertical 81
:StorePic 1
:Repeat K=45 or M=55
: RecallPic 1
: Text(1,1,int(S
: If M<52:Then
: If Pxl-Test(M+10,N+2) and not(Pxl-Test(M+10,N+1:Then
: Pause "FUSEE!
: 20→Q:2→D:Goto 2:End
: If Pxl-Test(M+10,N+3) and Pxl-Test(M+10,N+1:Goto 5
: End
: If M=9:Then
: 1→Θ:Goto 2:End
: getKey→K
: Text(M,N,"π
: If K=34:Then:Text(30,36,"Pause
: Pause :DelVar KClrDraw:RecallPic 1:End
: If K=24 and N≠14:Then
: Text(M,N+4," ":N-2→N:End
: If K=26 and N≠74:Then:Text(M,N-4," ":N+2→N:End
: If K=26 and N=74:Then:Text(M,N," ":14→N:End
: If K=24 and N=14:Then:Text(M,N," ":74→N:End
: If Pxl-Test(M+7,N+2:DelVar C1→G
: If G:Then:M-2→M:C+1→C:S+1→S:End
: If C=10:DelVar G
: If not(G:Then:C-1→C:M+2→M:S-.4→S:End
: If M<53:Text(M+4,N," "
: Text(1,1," ":End
:Lbl 5
:1→M:ClrDraw
:DelVar DText(7,30,"GAME OVER!
:Text(20,1,"Score: ",S
:If S>L6(3:S→L6(3
:If S>L6(2:Then:L6(2→L6(3:S→L6(2:End
:If S>L6(1:Then
: L6(1→L6(2:L6(2→L6(3
: S→L6(1:End
:If S≤L6(3
:Then
: Text(30,1,"A battre: ",L6(3:
:Else:Text(30,1,"Meileur score!
:End
:Pause :Goto J:End
:End:End
:Lbl Q:ClrDraw
:DelVar CDelVar GDelVar SDelVar L1DelVar L2
Je cherche des optimisations sur mon jeu et des améliorations, si vous en avez n'hésitez pas, c'est en partie pour cela que je poste le jeu ici

Merci à tous!