IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Tkinter Python Discussion :

faire sauter un personnage


Sujet :

Tkinter Python

  1. #1
    Candidat au Club
    Femme Profil pro
    Enseignant
    Inscrit en
    Février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2018
    Messages : 5
    Points : 3
    Points
    3
    Par défaut faire sauter un personnage
    Bonjour, j'ai besoin d'aide pour mon jeu de plateforme avec tkinter, mon personnage se déplace en fonction du décor, je voudrais maintenant qu'il saute (lorsqu'on appuie sur la touche Espace du clavier) pour pouvoir éviter des pièges. Le saut se fait en deux étapes : je change les coordonnées pour que le personnage soit en l'air puis je change les coordonnées pour qu'il atterisse.
    Ma question : comment voir les étapes du saut ?
    Voici mon programme avec les images et le fichier texte ci-dessous :
    Merci d'avance pour votre aide.

    niveau2.txtNom : brique.gif
Affichages : 1862
Taille : 1,2 KoNom : echelle.gif
Affichages : 1859
Taille : 1,1 KoNom : goomba droite.gif
Affichages : 1868
Taille : 1,3 KoNom : goomba gauche.gif
Affichages : 1870
Taille : 1,3 KoNom : piege.gif
Affichages : 1850
Taille : 1,0 Ko

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
     
    from tkinter import *
     
    # Quand on appuie sur une touche, on l'ajoute à la liste
    def enfoncee(evt) :
        if evt.keysym not in Touches :
            Touches.append(evt.keysym)
     
    # Quand on relache la touche, on la retire
    def relachee(evt) :
        if evt.keysym in Touches :
            Touches.remove(evt.keysym)
     
    #deplacement au clavier
    def animation():
        global x,y
        if 'Right' in Touches:
            # On regarde ce qu'il y a à droite du personnage 40x40
            if decor[(y//40)][(x//40)+1] in (' ','H') :
              x = x + 20
              Fond.itemconfig(img,image=fichierimg2,anchor='nw')
            print(x,y)
     
        if 'Left'in Touches :
            # On regarde ce qu'il y a à gauche du personnage 40x40
            if decor[(y//40)][((x-20)//40)] in (' ','H') :
                x = x - 20
                Fond.itemconfig(img,image=fichierimg,anchor='nw')
            print(x,y)
     
        if 'Up' in Touches :
            # On regarde si il y a une echelle au-dessus du personnage 40x40
            if decor[(y+20)//40-1][x//40] == 'H' :
              y = y - 20
              print(x,y)
     
        if 'Down' in Touches :
            # On regarde si il y a une echelle en dessous du personnage 40x40
            if decor[y//40+1][x//40] == 'H' :
              y = y + 20
              print(x,y)
     
        if "space" in Touches :
            # le personnage 40x40 saute
            x = x+40
            y = y-40
            #le personnage 40x40 atterit
            x = x+40
            y = y+40
     
        Fond.coords(img,x,y)
        fenetre.after(80,animation)
     
    #creation de la fenêtre graphique et du canvas
    fenetre=Tk()
    fenetre.title("Super Goomba Bros")
    fenetre.geometry("1200x640")
    Fond=Canvas(fenetre,width=1500,height=680,bg="white")
    Fond.place(x=0,y=0)
     
     
    #chargement du personnage
    fichierimg=PhotoImage(file="goomba gauche.gif")
    fichierimg2=PhotoImage(file="goomba droite.gif")
    img=Fond.create_image(100,380,image=fichierimg2,anchor="nw")
     
    #chargement du décor
    F_Brique=PhotoImage(file="brique.gif")
    F_Piege=PhotoImage(file="piege.gif")
    F_Echelle=PhotoImage(file="echelle.gif")
     
     
    #dessine le décor et l'enregistre dans une liste 2D
    x, y = 0, 0
    fichier = open("niveau2.txt")
    decor=[]
    for ligne in fichier :
        decor.append(list(ligne))
        for i in range(30) :
            case=ligne[i]
            if case == 'X' :
                Fond.create_image(x,y,image=F_Brique,anchor="nw")
            if case == 'P' :
                Fond.create_image(x,y,image=F_Piege,anchor="nw")
            if case == 'H' :
                Fond.create_image(x,y,image=F_Echelle,anchor="nw")
            x = x + 40
        x = 0
        y = y + 40
    fichier.close()
     
    #position initiale du personnage
    x,y=40,80
    Fond.coords(img,x,y)
     
    print(decor[5][11])
     
    # Surveillance des touches
    Touches = []
    fenetre.bind_all("<KeyPress>",enfoncee)
    fenetre.bind_all("<KeyRelease>",relachee)
     
    animation()
     
     
    fenetre.mainloop()

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Vous avez des exemples ici ou .

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Candidat au Club
    Femme Profil pro
    Enseignant
    Inscrit en
    Février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2018
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,

    Vous avez des exemples ici ou .

    - W

    Merci pour votre réponse rapide mais cela ne m'aide pas, je débute dans la programmation et je ne connais pas Pygame.
    Je voudrais rester avec tkinter.

  4. #4
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Citation Envoyé par cmabth Voir le message
    Merci pour votre réponse rapide mais cela ne m'aide pas, je débute dans la programmation et je ne connais pas Pygame.
    Je voudrais rester avec tkinter.
    Si vous aviez pris le temps de regarder ces exemples, vous auriez constaté qu'ils utilisent tkinter et non pygame.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  5. #5
    Candidat au Club
    Femme Profil pro
    Enseignant
    Inscrit en
    Février 2018
    Messages
    5
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France, Haute Loire (Auvergne)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Février 2018
    Messages : 5
    Points : 3
    Points
    3
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Si vous aviez pris le temps de regarder ces exemples, vous auriez constaté qu'ils utilisent tkinter et non pygame.

    - W
    Ok merci, je vais prendre le temps de regarder plus longuement.

Discussions similaires

  1. Faire sauter un personnage
    Par bogoss91 dans le forum Développement 2D, 3D et Jeux
    Réponses: 11
    Dernier message: 03/08/2007, 16h04
  2. aide comment faire sauter un personnage
    Par MAXIMIX dans le forum SDL
    Réponses: 3
    Dernier message: 24/05/2006, 09h05
  3. Faire sauter un bonhomme
    Par jbidou88 dans le forum ActionScript 1 & ActionScript 2
    Réponses: 11
    Dernier message: 03/05/2006, 15h09
  4. Réponses: 1
    Dernier message: 23/01/2006, 22h23
  5. Faire bouger un personnage
    Par DeusXL dans le forum DirectX
    Réponses: 35
    Dernier message: 09/06/2004, 15h49

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo