Projet fil rouge : FoxMon
Le but de ce projet est de créer un jeu console, en C#, inspiré de Pokémon, dont toutes les créatures sont des renards : les FoxMons. Le projet s'étale sur plusieurs séances. On avance dans l'ordre : la carte, le bestiaire, l'héritage, les attaques, les objets, les dresseurs, les dégâts, l'expérience, puis la sauvegarde.
Organisation des fichiers. Chaque classe a son propre fichier, et toutes partagent le même namespace FoxMon.
FoxMon/
Program.cs
Carte.cs
Dresseur.cs
Les classes du même namespace se voient sans import supplémentaire. Program.cs contient Main.
1. La carte et le dresseur
La région est une grille. . est un chemin, # un mur, * des hautes herbes. Le dresseur est dessiné par un @.
Carte de test : largeur 20, hauteur 10. Apparition conseillée : X = 2, Y = 2, une case ..
####################
#.........*....*...#
#..####....####..*.#
#.....*.....*......#
#####..####..####..#
#....*....#...*....#
#......####........#
#....#......#......#
#..*.........*.....#
####################

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
2. Le bestiaire et le combat

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
3. L'héritage
Les if sur le type se regroupent dans des classes.

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
4. Les attaques, lues dans un CSV
Un FoxMon connaît jusqu'à 4 attaques. On ne les écrit pas une par une dans le code : elles viennent d'un fichier.
Nom,Type,Puissance,Precision
Charge,Normal,40,100
Crocs Feu,Feu,65,95
Pistolet a O,Eau,40,100
Tranch'Herbe,Plante,55,95

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
5. Objets et capture

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
6. Les dresseurs sur la carte

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
7. Dégâts, types, critiques
Table utilisée à partir de cette séance. Le type de l'attaque est comparé au type du défenseur.
| Attaque contre défenseur | Multiplicateur |
|---|---|
| Feu contre Plante, Plante contre Eau, Eau contre Feu | 2,0 |
| Sens inverse (Feu contre Eau, Eau contre Plante, Plante contre Feu) | 0,5 |
| Même type, ou type Normal | 1,0 |

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
8. Expérience, évolution, grande carte

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
9. Sauvegarde

Choisir un exercice
Cliquer sur un exercice de la liste pour afficher son sujet.
10. Ce qu'on rend
Le dossier FoxMon, qui compile, avec un fichier par classe dans le namespace FoxMon :
- la carte de test, le dresseur qui ne traverse pas les
#, la boucle qui efface l'écran ; RenardFeu,RenardEau,RenardPlante, l'équipe limitée à 6 ;attaques.csvet le chargement (4 attaques,Crocs Feuà 65) ;- la formule de dégâts, avec les trois contrôles (130, 32 et 40) ;
- la capture
p = 0,175sur l'exemple 10/20, interdite contre un dresseur ; - la sauvegarde JSON qu'on recharge après avoir quitté.
Placer en tête de Program.cs un commentaire avec son nom et sa classe. Une fois que ce dossier tourne, et seulement alors, l'étape suivante consiste à porter l'affichage vers WinForms, WPF ou MonoGame. Le métier (dégâts, capture, sauvegarde) ne se réécrit pas dans les boutons.
