Créateur de personnages de jeu
Fait partie de la section Programmation Orientée Objet du Journey JavaScript de Coddy — leçon 53 sur 56.
Défi
C'est un système simple de personnages de jeu où les personnages peuvent s'équiper d'armes et s'engager dans des combats.
Votre tâche consiste à ajouter ces deux méthodes à la classe Character :
Méthode 1 : takeDamage(amount)
- Cette méthode réduit la santé du personnage du montant spécifié
- Affiche :
${this.name} takes ${amount} damage
Méthode 2 : equipWeapon(weapon)
- Cette méthode donne une arme au personnage (composition : relation "has-a")
- Affiche :
${this.name} equipped ${weapon.name}
Essayez vous-même
import { Character } from './character.js';
import { Weapon } from './weapon.js';
const hero = new Character('Knight');
const sword = new Weapon('Sword', 10);
hero.equipWeapon(sword); // Devrait afficher : "Knight equipped Sword"
hero.takeDamage(20); // Devrait afficher : "Knight takes 20 damage"
console.log(hero.health); // Devrait afficher : 80Toutes les leçons de Programmation Orientée Objet
1Objets et le mot-clé this
Révision rapide : Les objetsAjouter des méthodes aux objetsComprendre le mot-clé thisFonctions constructeursLe mot-clé newDéfi récapitulatif7L'héritage et le mot-clé extends
L'héritageLa relation « est un »Le mot-clé extendsLa méthode super()Hériter des propriétés et méthodesDéfi récapitulatif10Polymorphisme
Qu'est-ce que le polymorphisme ?Redéfinition de méthodes héritéesUtiliser superDéfi récapitulatif13Composition vs Héritage
Les relations « has-a » vs « is-a »Les limites de l'héritage profondConstruction d'objets2Organisation du code
Qu'est-ce qu'un module ?Exporter avec exportImporter avec importExports par défaut vs nommés5Encapsulation & Accès
EncapsulationChamps de classe publics et privésMéthodes privéesDéfi récapitulatif8Organisation du code POO
Organiser les classes en modules11Projet : Un moteur de rendu de formes
Configuration : Classe Shape et ExportationHéritage de la classe Circle14Système de gestion de bibliothèque
Conception de la bibliothèqueClasse Book avec composition3Classes et Objets
Qu'est-ce qu'une classe ?Créer des instancesPropriétés et méthodesDéfi récapitulatif9Méthodes et propriétés statiques
Niveau classe vs Niveau instancePropriétés statiquesMéthodes utilitaires statiquesDéfi récapitulatif12Getters et Setters
Les mots-clés get et setPropriétés calculéesValidation et effets de bordDéfi récapitulatif15Défis finaux
Créateur de personnages de jeuSystème de produits E-commerceSystème de gestion universitaireSystème d'appareils domotiques