protected Combattant(string nom, int pvMax, Position position) { _nom = nom; _pvMax = pvMax; _nbPv = pvMax; Position1 = position; }
public Mage(string nom, Position p = null, int nbPv = 30, int baseAttaque = 35, int baseDefense = 2) : base(nom, nbPv, p ?? new PositionDistance()) { _baseAttaque = baseAttaque; if (baseDefense <= 0) _baseDefense = 1; _baseDefense = baseDefense; }
public Guerrier(string nom, Position p = null, int nbPv = 50, int baseAttaque = 40, int baseDefense = 20) : base(nom, nbPv, p ?? new PositionTank()) { _baseAttaque = baseAttaque; if (baseDefense <= 0) _baseDefense = 1; _baseDefense = baseDefense; }
public Assassin(string nom, Position p = null, int nbPv = 40, int baseAttaque = 25, int baseDefense = 20) : base(nom, nbPv, p ?? new PositionCorpsACorps()) { _baseAttaque = baseAttaque; if (baseDefense <= 0) _baseDefense = 1; _baseDefense = baseDefense; }
private void placerCombattantsListe(List<Combattant> lc, int x, Position positionComb, string image=null) { int i = 0; foreach (var t in lc) { t.PositionPhysique = new PositionPhysique(x, listePositionsY[lc.Count][i], image ?? t.PositionPhysique.CheminImage); t.Position1 = positionComb; i++; } }
public int GetNb(Position p) { return liste.Sum(variable => variable.Position1.GetType() == p.GetType() ? 1 : 0); }
public abstract int Attaquer(Position position);
public override int Attaquer(Position positionVictime) { int degats = (float)Rand.NextDouble() < Position1.chanceToucher(positionVictime) ? _baseAttaque : 0; return degats; }
private int GetNbMembrePosition(Position p) { return listeCombattants.Count(membre => membre.Position1.GetType() == p.GetType()); }
public abstract float chanceToucher(Position positionVictime);
public abstract float chanceEsquiver(Position positionVictime);