Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Dim 18 Mar 2012, 20:15
Et voila ma version du puissance 4 ... version graphique actuellement sans vérification de victoires ! (mais très joli graphique pour compenser !). Le tout tient en 1550 octets actuellement, mais il doit y avoir moyen d'améliorer ça ... n'hésitez pas, une remarque, une question ...
Dans le code, l'antislash ( \ ) représente le petit L du menu liste / ops / B.
Code
SauveBDG 1
AxesNAff
Fonc
FonctNAff
94üXmax
0üXmin
0üYmin
62üYmax
Lbl 0
EffDessin
"PUISSANCE4 BY THE KüChaine1
Cercle(8,31,6
Ligne(80,36,92,24
Ligne(92,36,80,24
EffVar C
For(A,0,54,3
partEnt(5A/3üB
C+1üC
If C[inférieur ou égal à]19
Texte(A+1,B+1,sous-chaine(Chaine1,C,1
End
Ligne(5,62,94,9
Ligne(0,53,88,0
Texte(2,49,"2 JOUEURS
Texte(10,49,"CONTRE LA M.
Texte(46,6,"A PROPOS ...
Texte(54,6,"QUITTER
2üA:45üB
EffVar G
Repeat G
CodeToucheüK
Texte(A,B,"
A-8(K=25 and A>2)+8(K=34 and A<54üA
Texte(A,B,">
If A=38:Then
Texte(A,B,"
10üA
45üB
End
If A=18:Then
Texte(A,B,"
46üA
2üB
End
If K=105
1üG
End
EffVar H
If A=2
Goto 1
If A=10
Goto 2
If A=54
Goto 4
EffDessin
Texte(2,1,"A PROPOS :
Texte(15,1,"PROGRAMME FAIT PAR THE K
Texte(25,1,"ACHEVE LE 18/03/2012
Texte(35,1,"UN PROBLEME ? UNE AMELIO.?
Texte(45,1,"HTTP://WWW.TOUT82.FREE.FR
Texte(55,1,"(VERSION 1.3)
Pause
Goto 0
Lbl 2
1üH
Lbl 1
1üG
EffDessin
Texte(55,4,"1 2 3 4 5 6 7
For(A,0,70,10
Verticale A
End
EffVar JEffVar A70üB
Ligne(0,A,0,B
For(C,8,62,9
Ligne(A,C,B,C
End
Ligne(A,A,B,A
7üdim(\P4 // le symbole \ est égal au petit l du menu liste
Remplir(6,\P4
If H
Texte(35,74,"TEMPS
2000üM
{6,7üdim([A]
While non(G
JüI
1+JüJ
If J=3
1üJ
If non(C
IüJ
Texte(15,80,"J",J
Repeat K
getKeyüK
EffVar C
If H:Then
Texte(45,76,M
M-1üM
If non(M
1üG
1üK
End
If K=92 et \P4(1
1üC
If K=93 et \P4(2
2üC
If K=94 et \P4(3
3üC
If K=82 et \P4(4
4üC
If K=83 et \P4(5
5üC
If K=84 et \P4(6
6üC
If K=72 et \P4(7
7üC
If K=45
1üG
If C:Then
\P4(CüD
Jü[A](D,C
7-DüQ
If J=2:Then
Ligne(10C-8,6+9Q,10C-2,1+9Q
Ligne(10C-8,1+9Q,10C-2,6+9Q
Else
Cercle(10C-5,3.5+9Q,2.5
Pt-NAff(10C-2,4+9Q
End
D+3üV
If Dù4:6üV
C-3üW
If C<4:1üW
EffVar L
For(X,0,6
If W+X<8:Then
If [A](D,W+X)=[A](D,C:Then
L+1üL
Else
EffVar L
End
End
End
If Lù4
2üG
EffVar L
For(X,0,6
If W+X<8 and V-X>0:Then
If [A](V-X,W+X)=[A](D,C):Then
L+1üL
If Lù4
2üG
Else
EffVar L
End
End
End
EffVar L
For(X,0,3
If V<7:Then
If [A](V-X,C)=[A](D,C:Then
L+1üL
If Lù4
2üG
Else
EffVar L
End
End
End
EffVar L
C+3üW
If C>4
7üW
For(X,0,6
If W-X>0 and V-X>0:Then
If [A](V-X,W-X)=[A](D,C:Then
L+1üL
If Lù4
2üG
Else
EffVar L
End
End
End
D-1ü\P4(C
End
End
End
EffVar L
For(B,0,31
Horizontale B
Verticale B
Horizontale 62-B
Verticale 94-B
End
EffDraw
If G=1
Texte(28,30,"GAME OVER !
If G=2
Texte(20,30,"JOUEUR",J,"A GAGNE !
EffVar KRepeat K
CodeToucheüK
End
Lbl 4
EffVar [A]EffVar Chaine1RappelBDG 1
Output(1,1,"
---------------------- La la la ...
Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO
Autorisation : Membre
Nb de messages : 1366
Inscrit le : Ven 25 Mar 2011, 22:58
Posté le : Dim 18 Mar 2012, 20:46
Deux question :
elle y est l'IA? car tu en parle dans le menu mais je ne la voie pas dans le code
-c'est exprès que tu faits un menu perso plutôt que d'utiliser la fonction menu( ?
Sandro
---------------------- mort à l'inutile, place à la mémoire libre et aux programmes
Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Dim 18 Mar 2012, 21:04
C'est vrai qu'il est pas léger. Mais j'ai fait un menu personnalisé léché ! qui doit bien prendre 400 octets au moins. Voila. mais il vaut le coup d'oeil ! J'ai même réussi à donner l'illusion de faire apparaître des niveau de gris en TI-basic (illusion seulement hein ^^).
Sandro : non, il n'y a pas d'IA, pas de trace dans le programme. L'option contre la montre dans le menu est juste le mode 2 joueurs avec un compteur, et le jeu s'arrête que le compteur est à zéro.
---------------------- La la la ...
Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO
Autorisation : Membre
Nb de messages : 3738
Inscrit le : Lun 19 Oct 2009, 21:25
Posté le : Dim 18 Mar 2012, 21:06
Bizarre je ne voie pas non plus de test de victoire : Je ne voie ni matrice ni pxltest.
Certains veulent rester graphiques jusqu'au bout, il n'y a qu'à voir ma discussion avec programmath pour les menus graphiques. (ici)
Moi je n'en suis pas adepte jusqu'à présent.
---------------------- ti82statfr: 2008, inscrit: 2009, ti84pocketfr: noël2011, ti30xbmultiview: iut 2012-2014
Perfectionniste, manque tact. Pas le temps de tout publier depuis 2011. Répond toujours aux questions. (rédigé juin 2014)
Autorisation : Membre
Nb de messages : 850
Inscrit le : Sam 15 Oct 2011, 11:07
Posté le : Lun 19 Mar 2012, 19:10
Bien ! La vérification de victoire est prête, et fonctionne (sauf dans certains cas particuliers à savoir alignement de 5 cases en diagonale - si qqun a une idée ...) !
Ça déchire du poney rose nan ? ou d'la TI-87 gold edition rose à points verts et dorés. A voir.
Reste l'optimisation, que j'essaierai de faire pour la fin de semaine au moins. Pareil, si vous avez des conseils, lâchez-vous j'vous en serai reconnaissant
---------------------- La la la ...
Avez-vous pensé à regarder le manuel avant de demander conseil ? Un manuel est fait avant tout pour être consulté : MANUEL
Vous avez un problème avec l'ordinateur avec votre calculatrice ? SOLUTION EN VIDEO