Mmmm.... pour moi un joueur IA ou un joueur normal, c'est la même chose : ce sont deux joueurs. Il doivent implémenter l'interface joueur qui demande la méthode jouer().
Pour le joeur normal, jouer() veut dire : attendre une action de l'utilisateur et mettre à jour la vue.
Pour le joueur IA, jouer() veut dire: calculer le coup, le jouer et mettre à jour la vue.
Ta méthode de faire en sorte qu'une vue soit aussi un contrôleur me surpasse totalement.... Le modèle MVC sépare justement ces deux entités pour que l'on ne s'embrouille pas les pinceaux. Si tu les réunis, ça va pas aller.
Ton MVC modélise ton interface de jeu :
- le modèle est la représentation en mémoire de ton jeu (ta grille)
- la vue est l'ensembe des grilles représentant le modèle (prenons un jeu de morpion par exemple)
- le controleur est l'objet qui réagit aux actions et met à jour les données et toutes les vues qui se sont enregistrées auprès de lui.
Les joueurs sont des objets externes au MVC mais qui vont agir sur le controleur. Et il ne faut surtout pas faire de distinction à priori en tre un joueur IA et un joueur utilisateur !
# Re :
Posté par Damien Metzler . En réponse au journal Problème de conception pour un jeu. Évalué à 10.
Pour le joeur normal, jouer() veut dire : attendre une action de l'utilisateur et mettre à jour la vue.
Pour le joueur IA, jouer() veut dire: calculer le coup, le jouer et mettre à jour la vue.
Ta méthode de faire en sorte qu'une vue soit aussi un contrôleur me surpasse totalement.... Le modèle MVC sépare justement ces deux entités pour que l'on ne s'embrouille pas les pinceaux. Si tu les réunis, ça va pas aller.
Ton MVC modélise ton interface de jeu :
- le modèle est la représentation en mémoire de ton jeu (ta grille)
- la vue est l'ensembe des grilles représentant le modèle (prenons un jeu de morpion par exemple)
- le controleur est l'objet qui réagit aux actions et met à jour les données et toutes les vues qui se sont enregistrées auprès de lui.
Les joueurs sont des objets externes au MVC mais qui vont agir sur le controleur. Et il ne faut surtout pas faire de distinction à priori en tre un joueur IA et un joueur utilisateur !