using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace Programmation_objet_TLESIO21.projet { public class PokemonPoison : Pokemon { public PokemonPoison(string Name, int PV, int ATKPhys, int ATKSpe, int DEFPhys, int DEFSpe, int Speed) : base(Name, PV, ATKPhys, ATKSpe, DEFPhys, DEFSpe, Speed) { base.setPC(110); this.setType(Type.POISON); } public override void PhysAttack(Pokemon cible) { this.setPC(this.getPC() - 2); int damage = this.getATKPhys() - cible.getDEFPhys(); if (cible.getType().Equals(Type.STEEL)) { damage = 0; Console.WriteLine("Ca n'affecte pas le " + cible.getName() + "ennemi"); } if (damage > 0) { if(cible.getType().Equals(Type.POISON) || cible.getType().Equals(Type.ROCK) || cible.getType().Equals(Type.GROUND) || cible.getType().Equals(Type.GHOST)) { damage /= 2; Console.WriteLine("Ce n'est pas très efficace"); } if (cible.getType().Equals(Type.FAIRY) || cible.getType().Equals(Type.GRASS)) { damage *= 2; Console.WriteLine("C'est super efficace"); } cible.getDamage(damage); } else { Console.WriteLine("L'attaque n'a eu aucun effet"); } } public override void SpeAttack(Pokemon cible) { this.setPC(this.getPC() - 2); int damage = this.getATKSpe() - cible.getDEFSpe(); if (cible.getType().Equals(Type.STEEL)) { damage = 0; Console.WriteLine("Ca n'affecte pas le " + cible.getName() + "ennemi"); } if (damage > 0) { if (cible.getType().Equals(Type.POISON) || cible.getType().Equals(Type.ROCK) || cible.getType().Equals(Type.GROUND) || cible.getType().Equals(Type.GHOST)) { damage /= 2; Console.WriteLine("Ce n'est pas très efficace"); } if (cible.getType().Equals(Type.FAIRY) || cible.getType().Equals(Type.GRASS)) { damage *= 2; Console.WriteLine("C'est super efficace"); } cible.getDamage(damage); } else { Console.WriteLine("L'attaque n'a eu aucun effet"); } } } }