J'aimerais savoir comment deux classes A et B pourraient interragir entre elles. Par exemple une méthode de la classe A qui utiliserait un attribut de la classe B, ou bien une méthode de B qui utiliserait une méthode A...ect
def afficher_serpent(self, fenetre, image_corps): for couple in self.liste_coordonnees: fenetre.blit(image_corps, couple)
def calculer_position(self): if self.direction == "DROITE": self.position_x += 20 if self.position_x == 600: self.position_x = 0 if self.direction == "GAUCHE": self.position_x -= 20 if self.position_x < 0: self.position_x = 580 if self.direction == "HAUT": self.position_y -= 20 if self.position_y < 0: self.position_y = 480 if self.direction == "BAS": self.position_y += 20 if self.position_y == 500: self.position_y = 0
def modifier_liste(self): self.liste_coordonnees.insert(0, (self.position_x, self.position_y)) if self.longueur_serpent + 1 == len(self.liste_coordonnees): del self.liste_coordonnees[-1]
class Pomme: def __init__(self): self.pomme_x = None self.pomme_y = None
def generer_pomme(self, liste): i = True while i: self.pomme_x = random.randrange(0,580,20) self.pomme_y = random.randrange(0,480,20) if (self.pomme_x, self.pomme_y) in liste: continue else: i = False
Les variables "fenetre" et "image_corps" sont crées dans le Main.
Le problème est venu dans la méthode "generer_pomme" : cette fonction avait besoin de l'attribut "liste_coordonnees" de la classe Snake. Du coup je ne savais pas trop comment "l'appeler" en quelque sorte.
Sinon pour vous répondre, oui je connais la notion d'héritage.
Manipulation de classes
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
Choisissez un travail que vous aimez et vous n'aurez pas à travailler un seul jour de votre vie.