Instructions et Déroulement du TP
Page conçue par Christophe Lachenal
Après avoir réalisé une étape, faites une copie de votre solution dans un autre répertoire et basez vous sur cette dernière pour faire l'étape suivante.
Etape 1
Ce TP va se dérouler sur plusieurs séances. Avant de se lancer dans la programmation de l'application, vous devez d'abord vous approprier le code qui vous est fourni.
Ce code contient tout le squelette de l'architecture PAC retenue pour de l'application PACCRAFT. Il se décompose ainsi. Lisez attentivement
cette partie avant d'alller regarder le code tcl/tk .
1. Copiez le répertoire
paccraft situé dans siteWebRICM/TPS /TP2 dans votre répertoire de TP. Vous pouvez aussi trouver le code ici.
2. Lancez l'application en tapant wish bootstrap.tcl dans la console unix, puis testez ce qui fonctionne déjà dans l'application. Après cela, regardez dans le code l'enchaînement des actions afin de bien comprendre où vous allez devoir apporter des modifications par la suite.
Voici l'interface que vous devez avoir au lancement de l'application qui vous est donnée (après chargement du fichier kris.plf).
Etape 2
1. Effectuez les modifications nécessaires dans l'agent Applicaton afin qu'après avoir chargé le fichier .plf (Paccraft Land File) la valeur des ressources en Or et en Bois soit visible sur l'interface.
2. Regardez la structure d'un fichier .plf puis analyser comment ces données sont prises en compte dans l'application.
Le fichier .plf est là pour vous donner un exemple de fichier de jeu, il est possible que par la suite vous ayez à le modifier ou à rajouter des informations dedans.
Etape 3
Modifiez le fichier kris.plf afin qu'un château soit créé dans la case (7,8). Est-ce la seule modification à faire?
Etape 4
Faites en sorte que lorque l'on sélectionne un château, ses caractéristiques apparaissent dans la zone d'information située à gauche du plateau et que les boutons d'actions qui lui sont associés apparaissent (par exemple un bouton "créer citoyen" et un bouton "augmenter solidité") dans la zone juste en dessous.
Les caractéristiques d'un chateau sont :
- la solidité des remparts
- le nombre de citoyens résidant dans celui-ci.
Losque l'on clique sur une partie du plateau où il n'y a rien alors ces informations et ces boutons doivent disparaitre.
Etape 5
Maintenant on veut que lorsque l'on clique sur le bouton "créer citoyen" un nouvel agent "citoyen" soit créé dans la hiérarchie PAC. (cela est possible s'il y a assez de ressources en or) et qu'il apparaisse sur un case libre à proximité du chateau par lequel on a demandé sa création. (pour cela vous devez gérer au bon endroit dans l'architecture un tableau 2D qui dit quelle case du plateau est libre et quelle case est occupée (et par qui)).
Etape 6
Rajouter dans le .plf la présence de 2 citoyens sur le plateau et faites en sorte qu'ils soient créés au chargement de ce fichier.
Etape 7
On veut que lorque l'on sélectionne un citoyen, ses caractéristiques (vitesse, force, santé) apparaissent dans la zone qui est dédiée à cela et que les boutons "aller à ", "construire château" et "démonter château" soient créés dans la zone d'action. Losque l'on démonte un château on récupère la moitié des ressources que l'on a utilisées pour le créer.
Si l'on clique sur une partie du plateau où il n'y a rien alors ces informations et ces boutons doivent disparaître.
Etape 8
Gérer la minimap
- Faire en sorte que tout agent créé sur le plateau le soit aussi sur la minimap (cadre en haut à gauche).
-Principe de vues multiples : gestion du déplacement d'un rectangle blanc dans la mini map qui reflète la zone visible du plateau.
-Permettre la sélection d'un "item" dans cette zone.
Etape 9
Gérer le bouton d'action "aller à" du citoyen en faisant en sorte qu'il atteigne sa position d'arrivée si possible sans passer à travers les bâtiments ou les autres citoyens.
Ajouts possibles
- Gérer la présence de ressources sur le plateau
- Sauvegarder une partie
-
etc...