Séance 4 · 1 heure · Fin du tronc officiel
Manipuler plusieurs objets
Fil rouge du chapitre : créer un jeu de rôle
Accroche Un vrai combat
À discuter — On sait faire attaquer Aria sur un Gobelin. Je veux maintenant un combat complet : les deux s'attaquent chacun leur tour, jusqu'à ce que l'un des deux soit à 0 pv. Qu'est-ce qu'il nous manque ?
Apport Notation pointée : lecture et écriture
notation.py
hero = Personnage("Aria", 100, 15)
print(hero.pv) # lecture
hero.pv = 80 # écriture directe
À retenir — On peut modifier un attribut directement depuis l'extérieur de la classe, sans passer par une méthode. Ça pose un problème qu'on découvrira en séance 5 (encapsulation) — pour l'instant, retenez juste que c'est possible.
Exercice La boucle de combat
Écrire une boucle qui fait s'affronter hero et monstre à tour de rôle jusqu'à ce que l'un des deux ne soit plus vivant. Afficher le nom du vainqueur.
Exercice — Le duel
Réutiliser les méthodes attaquer et est_vivant déjà écrites en séance 3.
Point d'étape Quiz formatif — format bac
5 questions flash
- Parmi 4 propositions, laquelle crée correctement un personnage "Orc", 40 pv, force 8 ?
- Quelle instruction affiche les points de vie de
orc? - Vrai ou faux :
selfdoit être fourni explicitement à l'appel. - Que représente
cibledansattaquer(self, cible)? - Pourquoi utiliser
est_vivant()plutôt quepv > 0à chaque fois ?
Fin du tronc officiel — Tout ce qui peut tomber au bac sur la POO est désormais couvert. Les séances 5 et 6 sortent du programme officiel.