Bonjour,
Je suis en train de coder un peu jeu d'échec en python3 pour le fun. J'en suis à la phase de concept, donc il est possible que la réponse attendue ne soit pas du code 'pur', mais plutôt une méthode.
J'ai découpé mon code :
- J'ai un fichier qui contient une classe "block". Chaque "block" est en fait une case du plateau qui contient des caractéristiques (sa position, sa couleur, case occupée ou libre, etc)
- J'ai un autre fichier qui contient une classe "piece". Chaque "piece" est en fait une pièce du jeu qui contient d'autres caractéristiques (type de pièce, appartient à quelle camp, peut ou ne pas pas se déplacer, a déjà bougé, etc)
J'ai commencé à instancier mes 64 "block" (pour mes 64 cases), et dans ma classe block, j'ai une propriété 'piece' qui contient une instance de la pièce qui occupe cette case (si une pièce occupe effectivement la case). Du coup, depuis ma case, je peux accéder aux propriétés de la pièce qui l'occupe, super, dans ce sens ça marche, pas de problème Voici un extrait du code (que j'ai laaaaaaargement simplifié pour bien expliquer mon problème) :
Mais imaginons que j'ai besoin de le faire dans l'autre sens. Càd que depuis ma pièce, je souhaite accéder aux caractéristiques de la case qu'elle occupe, alors là, c'est un autre délire, je ne sais pas comment faire. Avez-vous une idée svp ?
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class block(): piece = None color = '' position = 0 def __init__(self, piece, color, position): self.piece = piece #je donne en paramètre une instance de ma pièce self.color = color self.position = position
Partager