60 lines
2.3 KiB
C#
Raw Normal View History

2022-10-13 13:53:26 +02:00
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace Programmation_objet_TLESIO21.projet {
2022-10-13 22:03:05 +02:00
public class PokemonBug : Pokemon {
public PokemonBug(string Name, int PV, int ATKPhys, int ATKSpe, int DEFPhys, int DEFSpe, int Speed) : base(Name, PV, ATKPhys, ATKSpe, DEFPhys, DEFSpe, Speed) {
base.setPC(92);
this.setType(Type.BUG);
2022-10-13 13:53:26 +02:00
}
2022-10-13 22:03:05 +02:00
2022-10-13 13:53:26 +02:00
public override void PhysAttack(Pokemon cible) {
this.setPC(this.getPC() - 2);
int damage = cible.getDEFPhys() - this.getATKPhys();
if(damage > 0) {
if(cible.getType().Equals(Type.STEEL) ||
2022-10-13 22:03:05 +02:00
cible.getType().Equals(Type.FIGHTING) ||
cible.getType().Equals(Type.FAIRY) ||
2022-10-13 13:53:26 +02:00
cible.getType().Equals(Type.FIRE) ||
cible.getType().Equals(Type.POISON) ||
2022-10-13 22:03:05 +02:00
cible.getType().Equals(Type.GHOST) ||
2022-10-13 13:53:26 +02:00
cible.getType().Equals(Type.FLYING)) {
damage /= 2;
}
2022-10-13 22:03:05 +02:00
if(cible.getType().Equals(Type.GRASS) ||
cible.getType().Equals(Type.PSYCHIC) ||
cible.getType().Equals(Type.DARK)) {
2022-10-13 13:53:26 +02:00
damage *= 2;
}
cible.getDamage(damage);
}
}
public override void SpeAttack(Pokemon cible) {
this.setPC(this.getPC() - 3);
int damage = cible.getDEFSpe() - this.getATKSpe();
if(damage > 0) {
2022-10-13 22:03:05 +02:00
if (cible.getType().Equals(Type.STEEL) ||
cible.getType().Equals(Type.FIGHTING) ||
cible.getType().Equals(Type.FAIRY) ||
2022-10-13 13:53:26 +02:00
cible.getType().Equals(Type.FIRE) ||
cible.getType().Equals(Type.POISON) ||
2022-10-13 22:03:05 +02:00
cible.getType().Equals(Type.GHOST) ||
2022-10-13 13:53:26 +02:00
cible.getType().Equals(Type.FLYING)) {
damage /= 2;
}
2022-10-13 22:03:05 +02:00
if (cible.getType().Equals(Type.GRASS) ||
cible.getType().Equals(Type.PSYCHIC) ||
cible.getType().Equals(Type.DARK)) {
2022-10-13 13:53:26 +02:00
damage *= 2;
}
cible.getDamage(damage);
}
}
}
}