Bonjour à tous (particulièrement à Cricky qui m'aide beaucoup ces temps ci
![:D :D]()
)
Je suis toujours à travailler sur mon petit rpg tactic.
Alors je résume ce que je fais. D'abord je créé une instance de type Case.
class Case():
def __init__(self):
self.terrain = "brown"
self.occupee = "libre"
Il y a d'autre attribut également comme le numéro du joueur ennemi ou alliés, la hauteur...
Il y aura une instance de type Case pour chacune des cases de la carte.
Ensuite je créé un dictionnaire avec comme clef un tupple de coordonnés(ex: (3,6) pour la troisième case horizontale et 6e verticale) et comme valeur une instance de type Case)
Tout va bien, mais c'est lors de l'affichage de la carte que j'ai un dilemme.
Pour afficher la carte, j'utilise plusieurs create_rectangle dans un Canvas. Chaque create_rectangle est une case.
Comme je veux que ces cases aient des bind en fonction de certains événements (par exemple clic sur la case, passage de la souris sur une case), je dois créer une référence pour chaque create_rectangle. Mais je trouve un peu redondant d'avoir une liste de create_rectangle représentant le graphisme des cases et un dictionnaire pour représenter les propriétés des cases.
Je me suis donc dis... pourquoi ne pas créer une classe héritée de create_rectangle et leur associer les différentes propriétés des cases ensuite...
Le problème, c'est que create_rectangle n'est pas une classe mais une méthode de Canvas....
Toutefois, existerait-il une façon de contourner le problème ?