2016_2017:s3:concprogobjet:td:td7
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
2016_2017:s3:concprogobjet:td:td7 [2016/11/06 13:11] – [Jeu] blay | 2016_2017:s3:concprogobjet:td:td7 [2016/12/05 10:11] (current) – [Partie 3] blay | ||
---|---|---|---|
Line 2: | Line 2: | ||
- | voici quelques exercices simples mettant en jeu des DP | + | voici quelques exercices simples mettant en jeu deux DPs. |
- | ===== Jeu ===== | + | ===== Partie 1 ===== |
/* decorateur | /* decorateur | ||
*/ | */ | ||
Line 11: | Line 11: | ||
Les personnages savent se battre en utilisant des armes qui peuvent être des dagues, des épées et des boucliers. | Les personnages savent se battre en utilisant des armes qui peuvent être des dagues, des épées et des boucliers. | ||
- | Une arme a une force d' | + | Une arme a une force d' |
Pour l' | Pour l' | ||
* dague : force : 20, protection : 10 | * dague : force : 20, protection : 10 | ||
Line 22: | Line 22: | ||
L’utilisateur du jeu doit avoir la possibilité d’ordonner à un personnage de se battre contre un autre. Celui qui est attaqué (B) voit sa vitalité décroitre d'un coefficient qui correspond à la force de l' | L’utilisateur du jeu doit avoir la possibilité d’ordonner à un personnage de se battre contre un autre. Celui qui est attaqué (B) voit sa vitalité décroitre d'un coefficient qui correspond à la force de l' | ||
- | En fonction du jeu, il est possible d' | + | En fonction du jeu, il est possible d' |
+ | On veut pouvoir ainsi ajouter en fonction des jeux que nous diffuserons différentes manières d'" | ||
Ces armes modifiés sont manipulables comme des armes normales. | Ces armes modifiés sont manipulables comme des armes normales. | ||
Line 46: | Line 47: | ||
// | // | ||
+ | **Remarques :** | ||
+ | * que se passe-t-il si un personnage est attaqué avec une force inférieure à sa capacité à se protéger? | ||
+ | * quelles sont les conséquences d'un ordre différent d' | ||
- | <! Fabrique | + | ===== Partie 2 ===== |
- | !> | + | /* Fabrique |
+ | */ | ||
+ | |||
+ | Au fur et à mesure que le jeu est mis sur le marché, pour " | ||
+ | L' | ||
+ | - ne pas modifier les classes d' | ||
+ | - pouvoir créer des armes à partir de leur type et avec un nom donné (ex: créer une épée de nom // | ||
+ | - retrouver une arme à partir de son nom; | ||
+ | - améliorer des armes (ex : amplifier excalibur d'un comportement magique de force 10). | ||
+ | |||
+ | |||
+ | exemple de scenario de test : | ||
+ | <code java> | ||
+ | WeaponFactory wf = new WeaponFactory(); | ||
+ | Weapon w = wf.createWeapon(" | ||
+ | w = wf.improve(" | ||
+ | assertEquals(30, | ||
+ | assertEquals(5, | ||
+ | w = wf.improve(" | ||
+ | assertEquals(300, | ||
+ | assertEquals(50, | ||
+ | </ | ||
+ | |||
+ | |||
+ | Les Personnages au début sont créés en fonction des classes d' | ||
+ | |||
+ | ===== Partie 3 ===== | ||
+ | |||
+ | On désire pouvoir manipuler des personnages individuels et également des groupes tels que armés, des bataillons ou des hordes. Une armée est composée de généraux (personnages individuels) et de bataillons. | ||
+ | |||
+ | Lors d'une attaque par groupe, sa force est proportionnelle à la force de ses attaquants. L' | ||
+ | |||
+ | De même pour la puissance protectrice. | ||
+ | |||
+ | ===== Partie 4 ===== | ||
+ | On veut pouvoir créer des personnages automatiquement, | ||
+ | La création d'un personnage a un coût : Humain : 10; Troll : 5; Tauren: 2; etc. | ||
+ | La coût de création d'un groupe dépend du type de groupe : pour une Horde, c'est la somme du coût des personnages qui la composent, multipliée par 0.75. | ||
+ | * Ainsi create(" | ||
+ | * De même CreateGroup(" | ||
+ | * CreateGroup(" | ||
+ | * Créer une armée est un peu plus complexe. CreateGroup(" | ||
+ | |||
+ | |||
+ | //Bien sûr, les personnages se déplacent, les groupes aussi, etc. mais ce sera pour une autre année.// | ||
+ | |||
+ | ===== Rendu ===== | ||
+ | |||
+ | - un diagramme UML qui visualise uniquement les classes/ | ||
+ | * le diagramme vise à visualiser l' | ||
+ | * les attributs faisant référence à des classes/ | ||
+ | * pas de getter et setter | ||
+ | * pas de classes non directement utilisées par exemple. | ||
+ | * les différents patterns apparaissent sous forme d' | ||
+ | * le diagramme peut être obtenu par reverse-engineering mais doit être adapté pour répondre aux points précédents. | ||
+ | - les codes sources des classes que vous avez créées ou modifiées exclusivement. | ||
+ | |||
+ | La date du rendu au plus tard : 6/12 à 23h45 | ||
+ | |||
+ | |||
+ | Sur [[http:// | ||
- | La construction des personnages dépend des classes d' | ||
- | Cependant, au fur et à mesure que le jeu est mis sur le marché, on aimerait pouvoir améliorer cette logique : à la création d'un personnage, l'arme qui lui est associé et déterminé en fonction du prix mis par le joueur (nombre de points). | ||
- | De plus, maintenant que les armes ont un coût on veut pouvoir associer une arme à un joueur... | ||
2016_2017/s3/concprogobjet/td/td7.1478437886.txt.gz · Last modified: 2016/11/06 13:11 by blay