//############################################################################### //# Fonctions associés # //############################################################################### // Cette fonction attribut les images au bouton de choix (choix1,choix2,etc.) ---- (Fonction identique à afficher_team() dans Map.xaml.cs) private void init_interface() { //Choix 1 string pokemon; if (parti.joueur.equipe[0] != null) { pokemon = parti.joueur.equipe[0].nomMonstre; image_choix1.Source = Monstre.portrait(pokemon); } else { image_choix1.Source = Monstre.portrait("inconnu"); } //Choix 2 if (parti.joueur.equipe[1] != null) { pokemon = parti.joueur.equipe[1].nomMonstre; image_choix2.Source = Monstre.portrait(pokemon); } else { image_choix2.Source = Monstre.portrait("inconnu"); } //Choix 3 if (parti.joueur.equipe[2] != null) { pokemon = parti.joueur.equipe[2].nomMonstre; image_choix3.Source = Monstre.portrait(pokemon); } else { image_choix3.Source = Monstre.portrait("inconnu"); } //Choix 4 if (parti.joueur.equipe[3] != null) { pokemon = parti.joueur.equipe[3].nomMonstre; image_choix4.Source = Monstre.portrait(pokemon); } else { image_choix4.Source = Monstre.portrait("inconnu"); } //Choix 5 if (parti.joueur.equipe[4] != null) { pokemon = parti.joueur.equipe[4].nomMonstre; image_choix5.Source = Monstre.portrait(pokemon); } else { image_choix5.Source = Monstre.portrait("inconnu"); } afficher_pokemon(parti.joueur.equipe[0]); }
private void button_squirtle_Click(object sender, RoutedEventArgs e) { Monstre[] liste = Monstre.Charger_Liste_Monstre(); inconnu.monstreDepart = liste[4]; inconnu.monstreCapture[0] = liste[4]; inconnu.equipe[0] = liste[4]; }
//############################################################################### //# Panel Equipe (Pokemon) # //############################################################################### // Affiche le pokémon sélectionné private void button_afficher_pokemon_Click(object sender, RoutedEventArgs e) { string nom = comboBox_liste_pokemon.Text; Monstre monstre = parti.joueur.trouver_monstre_parNom(nom); // Recherche l'objet monstre avec le nom du pokémon selectionné afficher_stat(monstre); comboBox_habilete_1.Items.Clear(); comboBox_habilete_2.Items.Clear(); int loop = 0; foreach (Habilete x in monstre.listeHabilete) // Affiche les habiletés du pokémon { if (x != null && loop <= monstre.niveauExp - 1) { ComboBoxItem item = new ComboBoxItem(); item.Content = x.nom; ComboBoxItem item2 = new ComboBoxItem(); item2.Content = x.nom; comboBox_habilete_1.Items.Add(item); comboBox_habilete_1.SelectedIndex = 0; comboBox_habilete_2.Items.Add(item2); comboBox_habilete_2.SelectedIndex = 1; } loop++; } }
// Affiche le pokemon dans le panel de pokemon et l'envoie au Combat (utiliser dans bouton_choiX_Click(); ) private void afficher_pokemon(Monstre monstre) { // Stats label_nom.Content = monstre.nomMonstre; label_level.Content = "Level " + monstre.niveauExp; label_id.Content = "# " + monstre.id; label_element.Content = monstre.typeMonstre; label_xp.Content = "XP : " + monstre.pointExp; label_mana_Copy.Content = "Regen : +" + monstre.actuel[2]; label_attaque.Content = "Attaque : " + monstre.actuel[3]; label_défense.Content = "Défense : " + monstre.actuel[4]; image_pokemon_panel.Source = Monstre.portrait(monstre.nomMonstre); image_pokemon_player.Source = Monstre.portrait(monstre.nomMonstre); //Barre de vie/mana barre_vie_player.Maximum = monstre.total[0]; barre_vie_player.Value = monstre.actuel[0]; barre_mana_player.Maximum = monstre.total[1]; barre_mana_player.Value = monstre.actuel[1]; // Bouton Habilete 1 (et 2 si applicapable) button_habilete_1.Content = monstre.listeHabileteActive[0].nom; if (monstre.listeHabileteActive[1] != null) { button_habilete_2.Content = monstre.listeHabileteActive[1].nom; } else { button_habilete_2.Visibility = System.Windows.Visibility.Hidden; } }
// Genere un pokemon aleatoire public void generer_adversaire(int level) { Monstre ennemi; Monstre[] liste = Monstre.Liste_par_Element(element); // Ici un concept de generation de niveau de rarete devrait être retravailler Random rand = new Random(); int x = rand.Next(0, 4); ennemi = liste[x]; //--------------------------------------------------------------------------- ennemi.niveauExp = level; // Selon la difficulté choisi par l'utilisateur ennemi.pointExp = ennemi.pointExp + 1; // Cette ligne permettera de différencier les pokémons dans la fonction estIdentique de la classe Monstre ennemi.calcul_caract(); adversaire = ennemi; // Affichage des caractéristiques du pokémon généré image_pokemon_adverse.Source = Monstre.portrait(ennemi.nomMonstre); barre_vie_adverse.Maximum = ennemi.total[0]; barre_vie_adverse.Value = ennemi.total[0]; barre_mana_adverse.Maximum = ennemi.total[1]; barre_mana_adverse.Value = ennemi.total[1]; textBox_Console.Text = textBox_Console.Text + "\n" + ennemi.nomMonstre + " apparait face à vous !"; nb_adversaire--; }
// Créer et attribution du Pokemon de Départ private void button_bulbasaur_Click(object sender, RoutedEventArgs e) { Monstre[] liste = Monstre.Charger_Liste_Monstre(); inconnu.monstreDepart = liste[8]; // liste[8] point sur l'objet bulbasaur inconnu.monstreCapture[0] = liste[8]; inconnu.equipe[0] = liste[8]; }
public Combat(Aventure parti, TypeElement element) { InitializeComponent(); fenetre_difficulty.Visibility = System.Windows.Visibility.Visible; this.parti = parti; this.element = element; selectionne = parti.joueur.equipe[0]; init_interface(); }
//Compare 2 Pokemon, cette fonction est utilisé dans les fonctions de combat ( Attaque() ) public static bool estIdentique(Monstre monstre1, Monstre monstre2) { bool comparaison = false; if (monstre1.pointExp == monstre2.pointExp && monstre1.nomMonstre == monstre2.nomMonstre) // Je compare simplement les points d'exp (et le nom) car durant la génération d'un pokemon aleatoire, j'ajoute 1 point d'exp. { comparaison = true; } return(comparaison); }
//Ajoute un pokemon la liste des pokemons captures public void Ajouter_Pokemon_listeTotal(Monstre monstre) { int x = 0; while (monstreCapture[x] != null) { x++; } monstreCapture[x] = monstre; }
// Charge l'item potion_max.xml et affiche les caractéristiques private void button_potion_max_Click(object sender, RoutedEventArgs e) { Item item = Item.Charger_Item("potion_max.xml"); image_central.Source = Monstre.portrait("potion-or"); label_nom.Content = item.nom; label_description.Content = item.description; label_prix.Content = item.valeur_monetaire; selectionne = item; }
//constructeur par defaut public Joueur(string nom, Sexe sexe, Monstre monstre_dep) { nomJoueur = nom; this.sexe = sexe; argent = 500.00; monstreDepart = monstre_dep; monstreCapture = new Monstre[25]; equipe = new Monstre[5]; equipe[0] = monstreDepart; inventaire = new Inventaire(3, 0, 0, 0); // Inventaire par défaut 3 pokeballs, 0 potions }
//############################################################################### //# Buttons de l'interface graphique # //############################################################################### //Bouton qui permet de choisir un pokemon parmi la liste des pokemons actif private void button_choix1_Click(object sender, RoutedEventArgs e) { // Cette fonction affiche le pokemon avec ces stats, le déclare à la console et met les barre de vie et de mana a jour panel_pokemon.Visibility = System.Windows.Visibility.Visible; panel_inventaire.Visibility = System.Windows.Visibility.Hidden; afficher_pokemon(parti.joueur.equipe[0]); textBox_Console.Text = "--------------------------------\n" + parti.joueur.nomJoueur + " envoie " + parti.joueur.equipe[0].nomMonstre + " au combat !"; selectionne = parti.joueur.equipe[0]; barre_vie_player.Value = parti.joueur.equipe[0].actuel[0]; barre_mana_player.Value = parti.joueur.equipe[0].actuel[1]; }
//Retourne un monstre parmi la liste des monstres capturés (search by name) public Monstre trouver_monstre_parNom(string nom) { Monstre monstre = null; foreach (Monstre x in monstreCapture) { if (x != null && x.nomMonstre == nom) { monstre = x; } } return(monstre); }
private void button_choix5_Click(object sender, RoutedEventArgs e) { if (parti.joueur.equipe[4] != null) { panel_pokemon.Visibility = System.Windows.Visibility.Visible; panel_inventaire.Visibility = System.Windows.Visibility.Hidden; afficher_pokemon(parti.joueur.equipe[4]); textBox_Console.Text = "--------------------------------\n" + parti.joueur.nomJoueur + " envoie " + parti.joueur.equipe[4].nomMonstre + " au combat !"; selectionne = parti.joueur.equipe[4]; barre_vie_player.Value = parti.joueur.equipe[4].actuel[0]; barre_mana_player.Value = parti.joueur.equipe[4].actuel[1]; } }
//Retourne un monstre de la liste complete public static Monstre trouver_monstre(string nom) { Monstre[] liste = Charger_Liste_Monstre(); Monstre reponse = new Monstre(); int loop; for (loop = 0; loop < 20; loop++) { if (liste[loop] != null && liste[loop].nomMonstre == nom) { reponse = liste[loop]; } } return(reponse); }
// Affiche les stats du pokémons choisit dans la liste déroulante private void afficher_stat(Monstre monstre) { image_pokemon_afficher.Source = Monstre.portrait(monstre.nomMonstre); label_nom.Content = monstre.nomMonstre; label_level.Content = "Level " + monstre.niveauExp; label_id.Content = "# " + monstre.id; label_element.Content = monstre.typeMonstre; label_xp.Content = "XP : " + monstre.pointExp; label_vie.Content = "Vie : " + monstre.total[0]; label_mana.Content = "Mana : " + monstre.total[1]; label_mana_Copy.Content = "Regen : +" + monstre.total[2]; label_attaque.Content = "Attaque : " + monstre.total[3]; label_défense.Content = "Défense : " + monstre.total[4]; monstre_selectionne = monstre; }
//Retour une liste de monstre d'un element donnée public static Monstre[] Liste_par_Element(TypeElement element) { Monstre[] liste_general = Monstre.Charger_Liste_Monstre(); Monstre[] liste_element = new Monstre[5]; int loop = 0; foreach (Monstre x in liste_general) { if (x != null && x.typeMonstre == element) { liste_element[loop] = x; loop++; } } return(liste_element); }
//Retourne l'index du monstre de la liste de monstres actif d'un joueur donné public int trouver_monstre_equipe(Monstre monstre) { int loop = 0; Monstre[] liste = equipe; foreach (Monstre x in liste) { if (x != null && Monstre.estIdentique(x, monstre)) { return(loop); } loop++; } return(loop); }
//############################################################################### //# Button du Panel Inventaire # //############################################################################### // Utilisation d'une pokéball private void button_pokeball_Click(object sender, RoutedEventArgs e) { if (parti.joueur.inventaire.pokeball > 0) { image_pokemon_adverse.Source = image_pokeball.Source; textBox_Console.Text = "-------------------------------------------------\n" + parti.joueur.nomJoueur + " utilise une pokeball !"; Task.Delay(3000); if (adversaire.actuel[0] < 50) // Si le pokémon à capturer possède moins de 50 points de vie { Random rand = new Random(); int random = rand.Next(1, 6); if (random >= adversaire.niveauExp) // Voir documentation pour plus d'explication { textBox_Console.AppendText("\n" + adversaire.nomMonstre + " a été capturé !"); // Remis a zéro des stats du monstre adversaire.calcul_caract(); adversaire.renew_caract(); adversaire.pointExp--; //Ajout du pokémon dans la liste de capture parti.joueur.Ajouter_Pokemon_listeTotal(adversaire); generer_adversaire(difficulte); } else { textBox_Console.AppendText("\n" + adversaire.nomMonstre + " résiste à la pokeball !"); image_pokemon_adverse.Source = Monstre.portrait(adversaire.nomMonstre); reponse_adverse(); } } else // Donc, la vie du pokémon est plus haut que 40 points, alors celui résiste automatiquement à la pokéball { textBox_Console.AppendText("\n" + adversaire.nomMonstre + " résiste à la pokeball !"); image_pokemon_adverse.Source = Monstre.portrait(adversaire.nomMonstre); reponse_adverse(); } parti.joueur.inventaire.pokeball--; label_pokeball.Content = "x " + parti.joueur.inventaire.pokeball; } }
// Permet d'afficher chaque Pokémon de l'équipe ( Choix 1, Choix 2,etc) ainsi que la liste déroulante contenant tout les pokémons attrapés public void afficher_team() { //Choix 1 string pokemon; if (parti.joueur.equipe[0] != null) // Si choix 1 n'est pas vide, affichage de l'image { pokemon = parti.joueur.equipe[0].nomMonstre; image_pokemon_choix_1.Source = Monstre.portrait(pokemon); } else { image_pokemon_choix_1.Source = Monstre.portrait("inconnu"); // Sinon, affichage d'une image d'un pokémon inconnu } //Choix 2 if (parti.joueur.equipe[1] != null) { pokemon = parti.joueur.equipe[1].nomMonstre; image_pokemon_choix_2.Source = Monstre.portrait(pokemon); } else { image_pokemon_choix_2.Source = Monstre.portrait("inconnu"); } //Choix 3 if (parti.joueur.equipe[2] != null) { pokemon = parti.joueur.equipe[2].nomMonstre; image_pokemon_choix_3.Source = Monstre.portrait(pokemon); } else { image_pokemon_choix_3.Source = Monstre.portrait("inconnu"); } //Choix 4 if (parti.joueur.equipe[3] != null) { pokemon = parti.joueur.equipe[3].nomMonstre; image_pokemon_choix_4.Source = Monstre.portrait(pokemon); } else { image_pokemon_choix_4.Source = Monstre.portrait("inconnu"); } //Choix 5 if (parti.joueur.equipe[4] != null) { pokemon = parti.joueur.equipe[4].nomMonstre; image_pokemon_choix_5.Source = Monstre.portrait(pokemon); } else { image_pokemon_choix_5.Source = Monstre.portrait("inconnu"); } //Menu déroulant contenant la liste des pokemons capturés if (liste_affiche != true) { foreach (Monstre x in parti.joueur.monstreCapture) { if (x != null) { ComboBoxItem item = new ComboBoxItem(); item.Content = x.nomMonstre; comboBox_liste_pokemon.Items.Add(item); } } liste_affiche = true; } }
//Reponse de l'adversaire (Intelligence artificielle) private void reponse_adverse() { if (adversaire.actuel[0] <= 0) // Si la vie de l'adversaire est moins ou égal a 0 { if (nb_adversaire > 0) { textBox_Console.Text = adversaire.nomMonstre + " est mort !"; generer_adversaire(difficulte); } else { textBox_Console.Text = adversaire.nomMonstre + " est mort !\nVous avez vaincu l'equipe ennemi !"; panel_pokemon.Visibility = System.Windows.Visibility.Hidden; disable_button(); attribuer_recompense(); } // Fin du combat } // Si la vie de l'adversaire est égal ou plus petit que 10 else if (adversaire.actuel[0] <= 10) { textBox_Console.AppendText("\n" + adversaire.nomMonstre + "s'est enfui !"); image_pokemon_adverse.Source = Monstre.portrait("iconnu.xml"); generer_adversaire(difficulte); } // Si l'adversaire a pas assez de mana pour une habilete else if (adversaire.actuel[1] < adversaire.listeHabilete[0].cout && adversaire.actuel[1] < adversaire.listeHabilete[1].cout) { textBox_Console.AppendText("\n-------------------------------------------------\n" + adversaire.nomMonstre + " n'a pas assez de mana pour utiliser une habilete ! "); Regen_mana(); } // Si la vie de l'adversaire est plus petit ou égal a 30 et qu'il possède assez de mana pour un habilet de support else if (difficulte > 1) { if (adversaire.actuel[0] <= 30 || (adversaire.actuel[1] < adversaire.listeHabilete[0].cout && adversaire.actuel[1] > adversaire.listeHabilete[1].cout)) { TypeElement element = adversaire.typeMonstre; Habilete supporting = Habilete.habilete_protection_element(element); textBox_Console.AppendText("\n-------------------------------------------------\n" + adversaire.nomMonstre + " utilise " + supporting.nom + " !"); // Utilise l'habilete adversaire.actuel[1] = adversaire.actuel[1] - supporting.cout; if (supporting.effet == Effet.regeneration) { adversaire.actuel[0] = adversaire.actuel[0] + supporting.magnitude; if (adversaire.actuel[0] > adversaire.total[0]) { adversaire.actuel[0] = adversaire.total[0]; } textBox_Console.AppendText("\n" + adversaire.nomMonstre + " récupère " + supporting.magnitude + " points de vie !"); } else { adversaire.actuel[4] = adversaire.actuel[4] + supporting.magnitude; textBox_Console.AppendText("\n" + adversaire.nomMonstre + " augmente ces défenses de " + supporting.magnitude + " points !"); } Regen_mana(); } } else { attaquer(adversaire, selectionne, adversaire.listeHabilete[0]); if (selectionne.actuel[0] < 1) { textBox_Console.AppendText("\n" + selectionne.nomMonstre + " est mort !\nVeuillez sélectionner un autre pokemon ou quitter ! "); int x = parti.joueur.trouver_monstre_equipe(selectionne); switch (x) { case 0: button_choix1.IsEnabled = false; panel_pokemon.Visibility = System.Windows.Visibility.Hidden; break; case 1: button_choix2.IsEnabled = false; panel_pokemon.Visibility = System.Windows.Visibility.Hidden; break; case 2: button_choix3.IsEnabled = false; panel_pokemon.Visibility = System.Windows.Visibility.Hidden; break; case 3: button_choix4.IsEnabled = false; panel_pokemon.Visibility = System.Windows.Visibility.Hidden; break; case 4: button_choix5.IsEnabled = false; panel_pokemon.Visibility = System.Windows.Visibility.Hidden; break; } // Si tout les pokemons sont morts, disable le boutton inventaire ainsi que le panel relié if (button_choix1.IsEnabled == false && button_choix2.IsEnabled == false && button_choix3.IsEnabled == false && button_choix4.IsEnabled == false && button_choix5.IsEnabled == false) { button_inventaire.IsEnabled = false; panel_inventaire.Visibility = System.Windows.Visibility.Hidden; } } else { Regen_mana(); } } }
public Aventure(Joueur joueur) { this.joueur = joueur; liste_habilete = Habilete.Charger_Liste_Habilete(); liste_monstre = Monstre.Charger_Liste_Monstre(); }
//Utilisation d'une attaque private void attaquer(Monstre attaquant, Monstre cible, Habilete spell_use) { Habilete spell = spell_use; if (attaquant.actuel[1] < spell.cout) { System.Windows.MessageBox.Show("Ce pokemon n'a pas assez de mana pour effectuer l'attaque: Mana" + attaquant.actuel[1] + " Cout " + spell.cout); } else { int damageBrute = spell.magnitude + attaquant.actuel[3]; //Si l'attaquant est de type eau, l'electricite diminu de moitier le spell et le feu encaisse le double if (attaquant.typeMonstre == TypeElement.Eau) { if (cible.typeMonstre == TypeElement.Electricite) { damageBrute = damageBrute / 2; } if (cible.typeMonstre == TypeElement.Feu) { damageBrute = damageBrute * 2; } } //Si l'attaquant est de type Electricite, l'eau encaisse le double et la vegetation resiste de moititer if (attaquant.typeMonstre == TypeElement.Electricite) { if (cible.typeMonstre == TypeElement.Vegetation) { damageBrute = damageBrute / 2; } if (cible.typeMonstre == TypeElement.Eau) { damageBrute = damageBrute * 2; } } //Si l'attaquant est de type Feu, l'eau encaisse la moitier et vegetation le double if (attaquant.typeMonstre == TypeElement.Feu) { if (cible.typeMonstre == TypeElement.Eau) { damageBrute = damageBrute / 2; } if (cible.typeMonstre == TypeElement.Vegetation) { damageBrute = damageBrute * 2; } } //Si l'attaquant est de type Vegetation, l'electricite encaisse le double et le feu la moitie if (attaquant.typeMonstre == TypeElement.Vegetation) { if (cible.typeMonstre == TypeElement.Feu) { damageBrute = damageBrute / 2; } if (cible.typeMonstre == TypeElement.Electricite) { damageBrute = damageBrute * 2; } } //Calcul de l'attaque int damageNet = damageBrute - cible.actuel[4]; cible.actuel[0] = cible.actuel[0] - damageNet; attaquant.actuel[1] = attaquant.actuel[1] - spell.cout; if (Monstre.estIdentique(cible, selectionne)) // Si la cible est le pokemon du joueur { selectionne.actuel[0] = cible.actuel[0]; // La vie du pokemon du joueur est = a la vie de la cible adversaire.actuel[1] = attaquant.actuel[1]; // La mana du pokemon adverse est = a la mana de l'attaquant } else // Sinon, la cible est le pokemon de l'adversaire { adversaire.actuel[0] = cible.actuel[0]; selectionne.actuel[1] = attaquant.actuel[1]; } MAJ_barre(); textBox_Console.AppendText("\n-------------------------------------------------\n" + attaquant.nomMonstre + " utilise " + spell.nom + " !\n" + cible.nomMonstre + " encaisse " + damageBrute + " de damage !"); } }
private void button_ajouter_Click(object sender, RoutedEventArgs e) { Monstre[] liste_monstre = new Monstre[20]; Habilete[] liste_eau = Habilete.Charger_Liste_Habilete_Element(TypeElement.Eau); Habilete[] liste_electricite = Habilete.Charger_Liste_Habilete_Element(TypeElement.Electricite); Habilete[] liste_feu = Habilete.Charger_Liste_Habilete_Element(TypeElement.Feu); Habilete[] liste_veg = Habilete.Charger_Liste_Habilete_Element(TypeElement.Vegetation); Monstre pikachu = new Monstre(1, "Pikachu", "Souris électrique", "aucun", TypeElement.Electricite, "pikachu.png"); pikachu.deBase[0] = 100; pikachu.prog[0] = 5; pikachu.deBase[1] = 100; pikachu.prog[1] = 10; pikachu.deBase[2] = 10; pikachu.prog[2] = 2; pikachu.deBase[3] = 20; pikachu.prog[3] = 10; pikachu.deBase[4] = 5; pikachu.prog[4] = 1; pikachu.listeHabilete = Habilete.Charger_Liste_Habilete_Element(pikachu.typeMonstre); pikachu.listeHabileteActive[0] = pikachu.listeHabilete[0]; pikachu.calcul_caract(); pikachu.listeHabilete = liste_electricite; pikachu.listeHabileteActive[0] = pikachu.listeHabilete[0]; liste_monstre[0] = pikachu; Monstre Magneton = new Monstre(2, "Magneton", "Creature a trois oeil", "aucun", TypeElement.Electricite, "Magneton.png"); Magneton.deBase[0] = 100; Magneton.prog[0] = 5; Magneton.deBase[1] = 100; Magneton.prog[1] = 20; Magneton.deBase[2] = 10; Magneton.prog[2] = 2; Magneton.deBase[3] = 20; Magneton.prog[3] = 10; Magneton.deBase[4] = 5; Magneton.prog[4] = 10; Magneton.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Magneton.typeMonstre); Magneton.listeHabileteActive[0] = Magneton.listeHabilete[0]; Magneton.calcul_caract(); Magneton.listeHabilete = liste_electricite; Magneton.listeHabileteActive[0] = Magneton.listeHabilete[0]; liste_monstre[1] = Magneton; Monstre Zapdos = new Monstre(3, "Zapdos", "Oiseau électrique", "aucun", TypeElement.Electricite, "Zapdos.png"); Zapdos.deBase[0] = 100; Zapdos.prog[0] = 10; Zapdos.deBase[1] = 100; Zapdos.prog[1] = 10; Zapdos.deBase[2] = 10; Zapdos.prog[2] = 10; Zapdos.deBase[3] = 20; Zapdos.prog[3] = 15; Zapdos.deBase[4] = 5; Zapdos.prog[4] = 5; Zapdos.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Zapdos.typeMonstre); Zapdos.listeHabileteActive[0] = Zapdos.listeHabilete[0]; Zapdos.calcul_caract(); Zapdos.listeHabilete = liste_electricite; Zapdos.listeHabileteActive[0] = Zapdos.listeHabilete[0]; liste_monstre[2] = Zapdos; Monstre Elektek = new Monstre(4, "Elektek", "Creature electrique mortelle", "aucun", TypeElement.Electricite, "Elektek.png"); Elektek.deBase[0] = 100; Elektek.prog[0] = 10; Elektek.deBase[1] = 100; Elektek.prog[1] = 20; Elektek.deBase[2] = 10; Elektek.prog[2] = 5; Elektek.deBase[3] = 20; Elektek.prog[3] = 45; Elektek.deBase[4] = 5; Elektek.prog[4] = 10; Elektek.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Elektek.typeMonstre); Elektek.listeHabileteActive[0] = Elektek.listeHabilete[0]; Elektek.calcul_caract(); Elektek.listeHabilete = liste_electricite; Elektek.listeHabileteActive[0] = Elektek.listeHabilete[0]; liste_monstre[3] = Elektek; Monstre Squirtle = new Monstre(5, "Squirtle", "Tortue aquatique", "aucun", TypeElement.Eau, "Squirtle.png"); Squirtle.deBase[0] = 100; Squirtle.prog[0] = 5; Squirtle.deBase[1] = 100; Squirtle.prog[1] = 10; Squirtle.deBase[2] = 10; Squirtle.prog[2] = 2; Squirtle.deBase[3] = 20; Squirtle.prog[3] = 10; Squirtle.deBase[4] = 5; Squirtle.prog[4] = 1; Squirtle.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Squirtle.typeMonstre); Squirtle.listeHabileteActive[0] = Squirtle.listeHabilete[0]; Squirtle.calcul_caract(); Squirtle.listeHabilete = liste_eau; Squirtle.listeHabileteActive[0] = Squirtle.listeHabilete[0]; liste_monstre[4] = Squirtle; Monstre Milotic = new Monstre(6, "Milotic", "Serpent aquatique", "aucun", TypeElement.Eau, "Milotic.png"); Milotic.deBase[0] = 100; Milotic.prog[0] = 10; Milotic.deBase[1] = 100; Milotic.prog[1] = 20; Milotic.deBase[2] = 10; Milotic.prog[2] = 5; Milotic.deBase[3] = 20; Milotic.prog[3] = 10; Milotic.deBase[4] = 5; Milotic.prog[4] = 1; Milotic.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Milotic.typeMonstre); Milotic.listeHabileteActive[0] = Milotic.listeHabilete[0]; Milotic.calcul_caract(); Milotic.listeHabilete = liste_eau; Milotic.listeHabileteActive[0] = Milotic.listeHabilete[0]; liste_monstre[5] = Milotic; Monstre Golduck = new Monstre(7, "Golduck", "Canard tres agressif", "aucun", TypeElement.Eau, "Golduck.png"); Golduck.deBase[0] = 100; Golduck.prog[0] = 10; Golduck.deBase[1] = 100; Golduck.prog[1] = 15; Golduck.deBase[2] = 10; Golduck.prog[2] = 7; Golduck.deBase[3] = 20; Golduck.prog[3] = 30; Golduck.deBase[4] = 5; Golduck.prog[4] = 5; Golduck.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Golduck.typeMonstre); Golduck.listeHabileteActive[0] = Golduck.listeHabilete[0]; Golduck.calcul_caract(); Golduck.listeHabilete = liste_eau; Golduck.listeHabileteActive[0] = Golduck.listeHabilete[0]; liste_monstre[6] = Golduck; Monstre Vapoeron = new Monstre(8, "Vapoeron", "Creature a 4 pattes aquatique", "aucun", TypeElement.Eau, "Vapoeron.png"); Vapoeron.deBase[0] = 100; Vapoeron.prog[0] = 10; Vapoeron.deBase[1] = 100; Vapoeron.prog[1] = 15; Vapoeron.deBase[2] = 10; Vapoeron.prog[2] = 10; Vapoeron.deBase[3] = 20; Vapoeron.prog[3] = 50; Vapoeron.deBase[4] = 5; Vapoeron.prog[4] = 20; Vapoeron.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Vapoeron.typeMonstre); Vapoeron.listeHabileteActive[0] = Vapoeron.listeHabilete[0]; Vapoeron.calcul_caract(); Vapoeron.listeHabilete = liste_eau; Vapoeron.listeHabileteActive[0] = Vapoeron.listeHabilete[0]; liste_monstre[7] = Vapoeron; Monstre Bulbasaur = new Monstre(9, "Bulbasaur", "Tortue Vegetale", "aucun", TypeElement.Vegetation, "Bulbasaur.png"); Bulbasaur.deBase[0] = 100; Bulbasaur.prog[0] = 5; Bulbasaur.deBase[1] = 100; Bulbasaur.prog[1] = 10; Bulbasaur.deBase[2] = 10; Bulbasaur.prog[2] = 2; Bulbasaur.deBase[3] = 20; Bulbasaur.prog[3] = 10; Bulbasaur.deBase[4] = 5; Bulbasaur.prog[4] = 1; Bulbasaur.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Bulbasaur.typeMonstre); Bulbasaur.listeHabileteActive[0] = Bulbasaur.listeHabilete[0]; Bulbasaur.calcul_caract(); Bulbasaur.listeHabilete = liste_veg; Bulbasaur.listeHabileteActive[0] = Bulbasaur.listeHabilete[0]; liste_monstre[8] = Bulbasaur; Monstre Vileplume = new Monstre(10, "Vileplume", "Fleur mobile", "aucun", TypeElement.Vegetation, "Vileplume.png"); Vileplume.deBase[0] = 100; Vileplume.prog[0] = 5; Vileplume.deBase[1] = 100; Vileplume.prog[1] = 30; Vileplume.deBase[2] = 10; Vileplume.prog[2] = 15; Vileplume.deBase[3] = 20; Vileplume.prog[3] = 10; Vileplume.deBase[4] = 5; Vileplume.prog[4] = 1; Vileplume.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Vileplume.typeMonstre); Vileplume.listeHabileteActive[0] = Vileplume.listeHabilete[0]; Vileplume.calcul_caract(); Vileplume.listeHabilete = liste_veg; Vileplume.listeHabileteActive[0] = Vileplume.listeHabilete[0]; liste_monstre[9] = Vileplume; Monstre Exeggutor = new Monstre(11, "Exeggutor", "Anana malefique", "aucun", TypeElement.Vegetation, "Exeggutor.png"); Exeggutor.deBase[0] = 500; Exeggutor.prog[0] = 5; Exeggutor.deBase[1] = 100; Exeggutor.prog[1] = 10; Exeggutor.deBase[2] = 10; Exeggutor.prog[2] = 2; Exeggutor.deBase[3] = 20; Exeggutor.prog[3] = 20; Exeggutor.deBase[4] = 5; Exeggutor.prog[4] = 10; Exeggutor.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Exeggutor.typeMonstre); Exeggutor.listeHabileteActive[0] = Exeggutor.listeHabilete[0]; Exeggutor.calcul_caract(); Exeggutor.listeHabilete = liste_veg; Exeggutor.listeHabileteActive[0] = Exeggutor.listeHabilete[0]; liste_monstre[10] = Exeggutor; Monstre Venusaur = new Monstre(12, "Venusaur", "Tortue géante", "aucun", TypeElement.Vegetation, "Venusaur.png"); Venusaur.deBase[0] = 500; Venusaur.prog[0] = 20; Venusaur.deBase[1] = 100; Venusaur.prog[1] = 10; Venusaur.deBase[2] = 10; Venusaur.prog[2] = 2; Venusaur.deBase[3] = 20; Venusaur.prog[3] = 10; Venusaur.deBase[4] = 20; Venusaur.prog[4] = 20; Venusaur.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Venusaur.typeMonstre); Venusaur.listeHabileteActive[0] = Venusaur.listeHabilete[0]; Venusaur.calcul_caract(); Venusaur.listeHabilete = liste_veg; Venusaur.listeHabileteActive[0] = Venusaur.listeHabilete[0]; liste_monstre[11] = Venusaur; Monstre Charmander = new Monstre(13, "Charmander", "Lézard de feu", "aucun", TypeElement.Feu, "Charmander.png"); Charmander.deBase[0] = 100; Charmander.prog[0] = 5; Charmander.deBase[1] = 100; Charmander.prog[1] = 10; Charmander.deBase[2] = 10; Charmander.prog[2] = 2; Charmander.deBase[3] = 20; Charmander.prog[3] = 10; Charmander.deBase[4] = 5; Charmander.prog[4] = 1; Charmander.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Charmander.typeMonstre); Charmander.listeHabileteActive[0] = Charmander.listeHabilete[0]; Charmander.calcul_caract(); Charmander.listeHabilete = liste_feu; Charmander.listeHabileteActive[0] = Charmander.listeHabilete[0]; liste_monstre[12] = Charmander; Monstre Ninetales = new Monstre(14, "Ninetales", "Loup volcanique", "aucun", TypeElement.Feu, "Ninetales.png"); Ninetales.deBase[0] = 100; Ninetales.prog[0] = 5; Ninetales.deBase[1] = 100; Ninetales.prog[1] = 10; Ninetales.deBase[2] = 10; Ninetales.prog[2] = 10; Ninetales.deBase[3] = 30; Ninetales.prog[3] = 30; Ninetales.deBase[4] = 5; Ninetales.prog[4] = 1; Ninetales.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Ninetales.typeMonstre); Ninetales.listeHabileteActive[0] = Ninetales.listeHabilete[0]; Ninetales.calcul_caract(); Ninetales.listeHabilete = liste_feu; Ninetales.listeHabileteActive[0] = Ninetales.listeHabilete[0]; liste_monstre[13] = Ninetales; Monstre Rapidash = new Monstre(15, "Rapidash", "Cheval volcanique", "aucun", TypeElement.Feu, "Rapidash.png"); Rapidash.deBase[0] = 100; Rapidash.prog[0] = 15; Rapidash.deBase[1] = 100; Rapidash.prog[1] = 20; Rapidash.deBase[2] = 10; Rapidash.prog[2] = 2; Rapidash.deBase[3] = 20; Rapidash.prog[3] = 30; Rapidash.deBase[4] = 5; Rapidash.prog[4] = 5; Rapidash.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Rapidash.typeMonstre); Rapidash.listeHabileteActive[0] = Rapidash.listeHabilete[0]; Rapidash.calcul_caract(); Rapidash.listeHabilete = liste_feu; Rapidash.listeHabileteActive[0] = Rapidash.listeHabilete[0]; liste_monstre[14] = Rapidash; Monstre Moltres = new Monstre(16, "Moltres", "Oiseau Volcanique", "aucun", TypeElement.Feu, "Moltres.png"); Moltres.deBase[0] = 100; Moltres.prog[0] = 30; Moltres.deBase[1] = 100; Moltres.prog[1] = 10; Moltres.deBase[2] = 10; Moltres.prog[2] = 5; Moltres.deBase[3] = 20; Moltres.prog[3] = 60; Moltres.deBase[4] = 5; Moltres.prog[4] = 10; Moltres.listeHabilete = Habilete.Charger_Liste_Habilete_Element(Moltres.typeMonstre); Moltres.listeHabileteActive[0] = Moltres.listeHabilete[0]; Moltres.calcul_caract(); Moltres.listeHabilete = liste_feu; Moltres.listeHabileteActive[0] = Moltres.listeHabilete[0]; liste_monstre[15] = Moltres; Monstre.Enregistrer_Liste_Monstre(liste_monstre); }