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

Programmation multimédia/Jeux Python Discussion :

[Pygame] Réinitialiser un jeu après un Game Over [Python 3.X]


Sujet :

Programmation multimédia/Jeux Python

  1. #1
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2023
    Messages : 9
    Par défaut [Pygame] Réinitialiser un jeu après un Game Over
    Bonjour la commu,

    J'ai crée un jeu sur Pygame où l'on doit éviter des ennemis avec des classes OOP. A la ligne 178, je n'arrive pas à appeler les attributs des fonctions me permettant de réinitialiser mes positions. Que faire ?

    Etant donné que mon projet fait 14 Mo, j'envoie mon dossier par mediafire : https://www.mediafire.com/file/gpt5p..._Game.zip/file

  2. #2
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 695
    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 695
    Par défaut
    Salut,

    Postez aussi le message d'erreur (le traceback bavard que Python affiche à l'écran) car ceux qui voudront "reproduire" devront éventuellement se baser dessus pour savoir s'ils ont reproduit votre problème.... et ceux qui veulent essayer de comprendre ce qu'il se passe sans essayer de reproduire (et se taper la copie des 14Mo) pourront partir de là.

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

  3. #3
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2023
    Messages : 9
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Salut,

    Postez aussi le message d'erreur (le traceback bavard que Python affiche à l'écran) car ceux qui voudront "reproduire" devront éventuellement se baser dessus pour savoir s'ils ont reproduit votre problème.... et ceux qui veulent essayer de comprendre ce qu'il se passe sans essayer de reproduire (et se taper la copie des 14Mo) pourront partir de là.

    - W
    Voilà le message d'erreur :

    Traceback (most recent call last):
    File "C:\Users\ben19\PycharmProjects\Space_Game\main.py", line 180, in <module>
    joueur.reset_position()
    AttributeError: 'GroupSingle' object has no attribute 'reset_position'

  4. #4
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 695
    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 695
    Par défaut
    Citation Envoyé par entrer100 Voir le message
    Voilà le message d'erreur :

    Traceback (most recent call last):
    File "C:\Users\ben19\PycharmProjects\Space_Game\main.py", line 180, in <module>
    joueur.reset_position()
    AttributeError: 'GroupSingle' object has no attribute 'reset_position'
    Le message d'erreur dit que la variable joueur est de type GroupSingle et n'est pas instance de la classe Joueur (qui a la méthode reset_position).
    Où a été définie cette variable? ¨Pourquoi l'avoir initialisée avec un type donné et un nom qui vous embrouille plus loin?

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

  5. #5
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2023
    Messages : 9
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Le message d'erreur dit que la variable joueur est de type GroupSingle et n'est pas instance de la classe Joueur (qui a la méthode reset_position).
    Où a été définie cette variable? ¨Pourquoi l'avoir initialisée avec un type donné et un nom qui vous embrouille plus loin?

    - W
    Je pensais que la variable joueur me permettait d'utiliser les méthodes de la classe, comme c'est le cas avec la méthode update :
    Nom : Capture d'écran 2023-07-08 062154.png
Affichages : 155
Taille : 33,4 Ko

  6. #6
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 695
    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 695
    Par défaut
    Citation Envoyé par entrer100 Voir le message
    Je pensais que la variable joueur me permettait d'utiliser les méthodes de la classe, comme c'est le cas avec la méthode update
    Tout à fait... mais pour que ça marche, il faut que joueur soit de la bonne classe (celle qui définit la méthode à appeler): ce qui n'est pas le cas, d'où le message d'erreur.

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

  7. #7
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2023
    Messages : 9
    Par défaut
    Citation Envoyé par wiztricks Voir le message
    Tout à fait... mais pour que ça marche, il faut que joueur soit de la bonne classe (celle qui définit la méthode à appeler): ce qui n'est pas le cas, d'où le message d'erreur.

    - W
    Je viens de voir la méthodologie. Il fallait créer un groupe GroupSingle et ajouter dedans l'instanciation. J'ai réussi à réinitialiser la position du joueur.

    En ce qui concerne la classe de type Group, je ne comprends pas bien comment les créations d'instances fonctionne : faut-il en créer plusieurs vu que j'en ai plusieurs ?

  8. #8
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 695
    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 695
    Par défaut
    Citation Envoyé par entrer100 Voir le message
    En ce qui concerne la classe de type Group, je ne comprends pas bien comment les créations d'instances fonctionne : faut-il en créer plusieurs vu que j'en ai plusieurs ?
    Les sprite.Group sont là pour aider à gérer (notamment les collisions entre groupes de) les sprites.
    Tout dépend de ce que vous voulez faire et il n'est pas interdit de chercher sur Internet des exemples de ce qu'on peut faire avec...

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

  9. #9
    Membre habitué
    Homme Profil pro
    Étudiant
    Inscrit en
    Juin 2023
    Messages
    9
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Juin 2023
    Messages : 9
    Par défaut
    J'ai trouvé la solution. Il s'agissait juste d'utiliser la méthode asteroid_groupe_sprite.empty() dans le cas de mes obstacles sur mes conditions de collision. Merci pour l'aide apporté.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. snake pygame game over
    Par menna21 dans le forum Programmation multimédia/Jeux
    Réponses: 5
    Dernier message: 21/05/2018, 15h39
  2. Game Over
    Par dourouc05 dans le forum Téléchargez
    Réponses: 0
    Dernier message: 12/11/2010, 21h01
  3. Réponses: 8
    Dernier message: 18/01/2009, 13h02
  4. Réponses: 8
    Dernier message: 18/10/2007, 09h06
  5. zone alarm game over : bloquage
    Par rare1 dans le forum Administration
    Réponses: 9
    Dernier message: 02/08/2006, 17h16

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