-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathEntite.cs
55 lines (48 loc) · 1.52 KB
/
Entite.cs
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
//Nom du programme : PetitJeuDeRole
//Classe : Entite
//Autheur : Proph
//Mise à jour le : 29/10/2020
using System;
using System.Collections.Generic;
using System.Text;
namespace PetitJeuDeRole
{
public abstract class Entite
{
protected string nom;
protected bool estMort = false;
protected int pointsDeVie;
protected int degatsMin;
protected int degatsMax;
protected Random random = new Random();
public Entite(string nom)
{
this.nom = nom;
}
public void Attaquer(Entite uneEntite)
{
int degats = random.Next(degatsMin, degatsMax);
uneEntite.PerdrePointsDeVie(degats);
Console.WriteLine(this.nom + " (" + this.pointsDeVie + " pv)" + " attaque : " + uneEntite.nom);
Console.WriteLine(uneEntite.nom + " a perdu " + degats + " points de vie");
Console.WriteLine("Il reste " + uneEntite.pointsDeVie + " points de vie à " + uneEntite.nom);
if(uneEntite.estMort)
{
Console.WriteLine(uneEntite.nom + " est mort");
}
}
protected void PerdrePointsDeVie(int pointsDeVie)
{
this.pointsDeVie -= pointsDeVie;
if(this.pointsDeVie <= 0)
{
this.pointsDeVie = 0;
estMort = true;
}
}
public bool EstMort()
{
return this.estMort;
}
}
}