Devenez le meilleur dresseur Pokémon en maîtrisant JavaScript !
Mission : Créez votre profil de dresseur Pokémon avec JavaScript !
Déclarez les variables suivantes pour votre dresseur :
let nom = "Sacha"let niveau = 25let badges = 3let pokeDollars = 1500const region = "Kanto"Affichez une carte de dresseur complète avec console.log() de manière organisée.
console.log() pour afficher votre carte. Combinez texte et variables : console.log("Dresseur:", nom)
let nom = "Sacha";
let niveau = 25;
let badges = 3;
let pokeDollars = 1500;
const region = "Kanto";
console.log("=== CARTE DRESSEUR ===");
console.log("Nom:", nom);
console.log("Niveau:", niveau);
console.log("Badges:", badges);
console.log("PokéDollars:", pokeDollars);
Mission : Développez un système de combat Pokémon avec les affinités de types !
Créez une fonction calculerDegats(typeAttaque, typeDefense, puissanceBase) qui :
if/else ou switch pour détecter les affinités de types. Pensez aux multiplicateurs : x2, x0.5, x1.
if (typeAttaque === "Feu" && typeDefense === "Plante") { return puissanceBase * 2; }
function calculerDegats(typeAttaque, typeDefense, puissanceBase) {
let multiplicateur = 1;
if ((typeAttaque === "Feu" && typeDefense === "Plante") ||
(typeAttaque === "Eau" && typeDefense === "Feu") ||
(typeAttaque === "Plante" && typeDefense === "Eau") ||
(typeAttaque === "Électrik" && typeDefense === "Eau")) {
multiplicateur = 2;
} else if (typeAttaque === typeDefense) {
multiplicateur = 0.5;
}
return puissanceBase * multiplicateur;
}
Mission : Explorez le Parc Safari et capturez des Pokémon sauvages !
Créez une simulation de capture où :
Math.floor(Math.random() * 3))Math.floor(Math.random() * 3), puis utilisez une autre boucle pour tester chaque capture.
if (Math.random() < 0.7) { captures++; }. Affichez les résultats de chaque zone !
for (let i = 0; i < zones.length; i++) {
const zone = zones[i];
const pokemonRencontres = Math.floor(Math.random() * 3);
let pokemonCaptures = 0;
for (let j = 0; j < pokemonRencontres; j++) {
if (Math.random() < 0.7) {
pokemonCaptures++;
}
}
captures += pokemonCaptures;
console.log(`🌲 ${zone}: ${pokemonCaptures}/${pokemonRencontres} capturés`);
}
Mission : Créez un système de soins et d'évolution au Centre Pokémon !
Développez les fonctions suivantes :
soigner(pv) : restaure les PV au maximum (100)booster(niveau) : augmente le niveau de 5evoluer(experience) : double l'expérienceutiliserService(service, valeur) : utilise le service appropriéLa fonction principale doit gérer : "soin", "boost", "evolution".
switch(service) ou des if/else dans utiliserService() pour appeler soigner(), booster(), ou evoluer().
function soigner(pv) { return 100; }
function booster(niveau) { return niveau + 5; }
function evoluer(experience) { return experience * 2; }
function utiliserService(service, valeur) {
switch(service) {
case "soin": return soigner(valeur);
case "boost": return booster(valeur);
case "evolution": return evoluer(valeur);
default: return "Service inconnu";
}
}
Mission : Créez une base de données complète des Pokémon !
Créez un tableau d'objets pour chaque Pokémon contenant :
Créez au moins 3 Pokémon, puis :
reduce()filter()// Ajoutez ces Pokémon au tableau :
{ nom: 'Dracaufeu', type: 'Feu/Vol', niveau: 50, legendaire: false },
{ nom: 'Mew', type: 'Psy', niveau: 80, legendaire: true }
pokedex.forEach(pokemon => console.log(`⚡ ${pokemon.nom}: Niveau ${pokemon.niveau}`));
const niveauMoyen = pokedex.reduce((total, pokemon) => total + pokemon.niveau, 0) / pokedex.length;
const pokemonLegendaires = pokedex.filter(pokemon => pokemon.legendaire);