Poster un nouveau sujet Poster une réponse
Jeu de morpion multijoueur
Auteur Message
nanoseb



Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 31 Mai 2008, 15:10
Posté le : Ven 29 Aoû 2008, 13:57   Citer 

bonjour
je poste ici deux nouvelles versions de mon morpion
- une a deux joueurs sur une ti et l'autre à deux joueurs sur deux ti
( les touches sont celles de 1 à 9, elles représentes les cases)

et voici pour les .83p
la première version (629o)

Code
2üD
0üT
0üU
{3,3}üdim([A]
Lbl Á
0üG
0üC
0üA
0üB
0üH
0üL
ClrHome
Fill(0,[A]
Output(1,1,">< +--+--+--+()    !  !  !  !      +--+--+--+      !  !  !  !      +--+--+--+      !  !  !  !      +--+--+--+
Output(2,1,T
Output(2,15,U
Lbl 2
abs(D-3)üD
Output(8,8,"><
If D=2
Output(8,8,"()
0üA
Lbl 1
getKeyüC
round(C/10,0)-6üA
C-61-A10üB
If B÷0 or A÷0 or Cù95
Goto 1
If [A](A,B)=0
Then
Dü[A](A,B)
Else
Goto 1
End
3B+2üB
2AüA
If D=2
Output(A,B,"()
If D=1
Output(A,B,"><
H+1üH
If Hù5
Then
If H=9
3üG
For(R,1,3
If ([A](R,1)=D and [A](R,2)=D and [A](R,3)=D) or ([A](1,R)=D and [A](2,R)=D and [A](3,R)=D) or ([A](1,1)=D and [A](2,2)=D and [A](3,3)=D) or ([A](1,3)=D and [A](2,2)=D and [A](3,1)=D)
DüG
End
End
If Gø0
Goto 3
Goto 2
Lbl 3
ClrHome
If G=1
Then
Output(4,5,">< A GAGNE
T+1üT
End
If G=2
Then
Output(4,5,"() A GAGNE
U+1üU
End
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á




2ème version (785o)

Code
2üD
2üÁ
Menu(">MORPION V 2.0< ","><",A,"()",B
Lbl A
1üÁ
Lbl B
0üT
0üU
Lbl Á
0üG
0üC
0üA
0üB
0üH
ClrHome
{3,3}üdim([A]
Fill(0,[A]
Output(1,1,">< +--+--+--+()    !  !  !  !      +--+--+--+      !  !  !  !      +--+--+--+      !  !  !  !      +--+--+--+
Output(2,1,T
Output(2,15,U
Lbl 2
0üX
0üY
abs(D-3)üD
Output(8,8,"><
If D=2
Output(8,8,"()
If Á=D
Then
Lbl 1
getKeyüC
round(C/10,0)-6üA
C-61-A10üB
If B÷0 or A÷0 or Cù95
Goto 1
If [A](A,B)=0
Then
Dü[A](A,B)
Else
Goto 1
End
1üX
Pause
Pause
End
If ÁøD
Then
While Xø1
Get(X
End
Get([A]
End
H+1üH
0üX
For(N,1,3
For(I,1,3
2IüA
3N+2üB
If [A](I,N)=1
Output(A,B,"><
If [A](I,N)=2
Output(A,B,"()
End
End
If Á=1 and Hù5
Then
If H=9
3üG
For(R,1,3
If ([A](R,1)=D and [A](R,2)=D and [A](R,3)=D) or ([A](1,R)=D and [A](2,R)=D and [A](3,R)=D) or ([A](1,1)=D and [A](2,2)=D and [A](3,3)=D) or ([A](1,3)=D and [A](2,2)=D and [A](3,1)=D)
DüG
End
1üY
Pause
Pause
End
If Á=2
Then
While Yø0
Get(Y
End
Get(G
End
If Gø0
Goto 3
Goto 2
Lbl 3
ClrHome
If G=1
Then
Output(4,5,">< A GAGNE
T+1üT
End
If G=2
Then
Output(4,5,"() A GAGNE
U+1üU
End
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á



EDIT : mise a jour des codes (30/08/08 )

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Ven 29 Aoû 2008, 19:06   Citer 

A mon avis, il serait plus imple et plus économique en octets d'utiliser des listes au lieu des matrices.
De plus, évite d'utiliser les then/end car ils ralentissent le programme.

Dans ton cas, au lieu de mettre:

Code
If Cù72 and C÷74
Then
1üA
C-71üB
End
If Cù82 and C÷84
Then
2üA
C-81üB
End
If Cù92 and C÷94
Then
3üA
C-91üB
End



Met plutôt:

Code
If Cù72 and C÷74
1üA
If Cù82 and C÷84
2üB
End
If Cù92 and C÷94
3üA
C-61-A10üB



Sangohan38

 Adresse email Haut de page Bas de page 
 
nanoseb



Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 31 Mai 2008, 15:10
Posté le : Ven 29 Aoû 2008, 19:13   Citer 

merci bonne idée je vais faire çà et mettre a jour le 1er post

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
webmaster
Avatar

Autorisation : Administrateur
Nb de messages : 792
Inscrit le : Mer 18 Aoû 2004, 22:13
Posté le : Sam 30 Aoû 2008, 12:35   Citer 

Premier sujet de l'année scolaire 2008-2009 ! Ca sent la rentrée...

@+ Le Webmaster beer.gif

 Adresse email Haut de page Bas de page 
 
mad67



Autorisation : Membre
Nb de messages : 630
Inscrit le : Sam 23 Jui 2007, 14:05
Posté le : Sam 30 Aoû 2008, 13:37   Citer 

dire que j'ai failli parier que le forum était mort

sinon bon programme malgré quelques ralonges

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
nanoseb



Autorisation : Membre
Nb de messages : 19
Inscrit le : Sam 31 Mai 2008, 15:10
Posté le : Sam 30 Aoû 2008, 18:20   Citer 

j'ai un peu amélioré mon code et je suis en train de faire un avec une "intelligence artificiel" je posterai le code une fois fini

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Sam 30 Aoû 2008, 20:13   Citer 

Pendant les vacances scolaires, les forums sont en générale moins actifs.
Sinon, pour le code, on peut encore le réduire:

Code
If [A](A,B)=0
Then
Dü[A](A,B)
Else
Goto 1



Devient:

Code
If [A](A,B)=0
Dü[A](A,B)
If [A](A,B)[différent de]0
Goto 1



De plus:

Code
Lbl 3
ClrHome
If G=1
Then
Output(4,5,">< A GAGNE
T+1üT
End
If G=2
Then
Output(4,5,"() A GAGNE
U+1üU
End
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á



Peut devenir:

Code
Lbl 3
ClrHome
Output(4,8,"A GAGNE
If G=1
Output(4,5,"><
If G=1
T+1üT
If G=2
Output(4,5,"()
If G=2
U+1üU
If G=3
Output(4,5,"MATCH NUL
Pause
Goto Á



Sangohan38

 Adresse email Haut de page Bas de page 
 
mad67



Autorisation : Membre
Nb de messages : 630
Inscrit le : Sam 23 Jui 2007, 14:05
Posté le : Dim 31 Aoû 2008, 10:03   Citer 

après il fau t arreter de descendre le programme.
d'ailleur pour la nouvelle version de pes sans lag j'ai besoin d'aide pour raccourcir et atteindre l'objectif de 1 match = 1 minute je montrerais le code bientot.

 Adresse email Haut de page Bas de page 
 
Sangohan38



Autorisation : Membre
Nb de messages : 3370
Inscrit le : Sam 31 Déc 2005, 19:48
Posté le : Dim 31 Aoû 2008, 11:55   Citer 

Je ne descend pas le programme mais je chercche à montrer comment l'améliorer.
Pour ton programme, ce n'est pas le bon sujet.

Sangohan38

 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Ratuss



Autorisation : Membre
Nb de messages : 1561
Inscrit le : Mer 01 Mar 2006, 20:41
Posté le : Dim 31 Aoû 2008, 11:59   Citer 


Code
If [A](A,B)[différent de]0
Goto 1
Dü[A](A,B)



ca revient au même que :


Code
If [A](A,B)
Goto 1
Dü[A](A,B)



:p

----------------------
--- LISTE DES JEUX POUR TI ---
 Adresse email Haut de page Bas de page 
 
Google_AdSense



Publicité    



 
Chwood



Autorisation : Membre
Nb de messages : 1
Inscrit le : Mar 23 Sep 2008, 16:45
Posté le : Mar 23 Sep 2008, 17:00   Citer 

Bah pour l'instant ça a l'air de marcher ... et du premier coup en plus !!!

Merci beaucoup

Chwood eyeonly.gif

----------------------
Chwood
 Adresse email Haut de page Bas de page 
 
Poster un nouveau sujet Poster une réponse





  Powered by Fire-Soft-Board v1.0.10 © 2004 - 2024 Groupe FSB
Page générée en 9 requêtes
BlackOne par Grimmlink