Précédent   Forum du club des développeurs et IT Pro > Autres langages > Python & Zope > Programmation multimédia/Jeux
Programmation multimédia/Jeux Forum d'entraide sur la 2D, 3D, video, son, ...
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse
 
Outils de la discussion
Publicité
'
Vieux 25/10/2011, 22h47   #1
Chiberg
Invité de passage
 
Homme Eric Tatti
Inscription : octobre 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme Eric Tatti
Localisation : Suisse

Informations forums :
Inscription : octobre 2011
Messages : 5
Points : 1
Points : 1
Par défaut Projet tetris en python

Bonsoir,
Chiberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 22h56   #2
josmiley
Membre chevronné
 
Homme
Inscription : avril 2004
Messages : 675
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 675
Points : 728
Points : 728
yop,
avec une fonction qui redessine entièrement le tableau ça serait plus simple ...
josmiley est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 23h03   #3
Chiberg
Invité de passage
 
Homme Eric Tatti
Inscription : octobre 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme Eric Tatti
Localisation : Suisse

Informations forums :
Inscription : octobre 2011
Messages : 5
Points : 1
Points : 1
Pour ce qui est de dessiner le tableau, mon professeur nous a donné les bases du programme puis notre but est de le compléter en utilisant ce qu'il a marqué.
Chiberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 23h18   #4
josmiley
Membre chevronné
 
Homme
Inscription : avril 2004
Messages : 675
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 675
Points : 728
Points : 728
je comprends mieux,
il faut "scanner" la liste 'occupe' à la recherche d'une ligne ne contenant que des 'True' avec all().
ensuite supprimes cette ligne et ajoutes une ligne vide avec occupe.append([False]*10)
effaces entièrement ton canvas et redessines-le suivant la nouvelle liste 'occupe'
josmiley est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 23h23   #5
Chiberg
Invité de passage
 
Homme Eric Tatti
Inscription : octobre 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme Eric Tatti
Localisation : Suisse

Informations forums :
Inscription : octobre 2011
Messages : 5
Points : 1
Points : 1
Je vais essayer, merci pour la réponse!
Chiberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 25/10/2011, 23h49   #6
Chiberg
Invité de passage
 
Homme Eric Tatti
Inscription : octobre 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme Eric Tatti
Localisation : Suisse

Informations forums :
Inscription : octobre 2011
Messages : 5
Points : 1
Points : 1
J'ai essayé mais je n'arrives pas à effacer et rajouter une ligne dans le canvas, comment faire? merci
Chiberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 02h33   #7
josmiley
Membre chevronné
 
Homme
Inscription : avril 2004
Messages : 675
Détails du profil
Informations personnelles :
Sexe : Homme
Localisation : France

Informations forums :
Inscription : avril 2004
Messages : 675
Points : 728
Points : 728
Code :
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
def jouer():
    global c,nb
    nb+=1
    if (len(c)==0) : c.append(Carre())
    if (c[len(c)-1].enPlace):
        for e,ligne in list(enumerate(occupe))[-2::-1]: # on scanne la liste excepté la ligne de fin
            if all(ligne): # si la ligne est pleine
                del(occupe[e]) # on l'efface
                occupe.insert(0,[False]*10) # et on ajoute une vide(pas avec append hein ...)
        del(c[:]) # on efface la liste des carrés
        c.append(Carre()) # avant d'en ajouter d'autres
        # ici on devrait redessiner le canvas
        # si les couleurs sont amenées à changer
        # vaut mieux remplir 'occupe' avec des valeurs de couleur plutôt que des True
    for ctemp in c :
        ctemp.descend()
    # test la fin du jeu
    fin=False
    for i in occupe[0]:fin=fin or i
    if not fin:
        # boucle dans le jeu avec un intervale de 800ms
        fen1.after(800,jouer) # permet d'éviter d'utiliser les Threads
    else:
        if messagebox.askokcancel("The end!","C'est fini, t'as perdu hahahaha!! :D:D                          Veux-tu rejouer???? ;)"):
            can1.delete(ALL)
            for i in range(0,15): occupe.append([False]*10)
        else:
            fen1.destroy()
ensuite je ne connais pas Tkinter, je ne sais donc pas redessiner le canvas ...
josmiley est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2011, 20h28   #8
Chiberg
Invité de passage
 
Homme Eric Tatti
Inscription : octobre 2011
Messages : 5
Détails du profil
Informations personnelles :
Nom : Homme Eric Tatti
Localisation : Suisse

Informations forums :
Inscription : octobre 2011
Messages : 5
Points : 1
Points : 1
Merci pour ton code.
Chiberg est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Cette discussion est résolue.
Outils de la discussion

Navigation rapide


Fuseau horaire GMT +2. Il est actuellement 11h50.


 
 
 
 
Partenaires

Hébergement Web