récupérer les valeurs d'une énumération
Bonjour à tous et toutes ,
j'ai une énumération :
Code:
1 2 3 4 5 6
|
enum Classe {
case Guerrier(nomDuPerso: String,ptDeVie: Int)
case Archer(nomDuPerso: String,ptDeVie: Int)
case Mage(nomDuPerso: String,ptDeVie: Int)
} |
Je veux m'en servir pour initialiser une classe :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18
|
class Personnage {
var nom = ""
var classe: Classe
var arme: Arme
var vie = 0
init(arme: Arme,classe: Classe) {
self.classe = classe
self.arme = arme
}
func setDegat(hitPoints: Int) { self.vie += hitPoints }
func affiche() {
print("nom : \(self.nom)")
print("points de vie : \(self.vie)")
print("dégâts de l'arme : \(self.arme.getDegats())")
}
} |
Maintenant lorsque je fait :
Code:
1 2 3
|
var perso1 = Personnage(arme: Epee(), classe: .Guerrier(nomDuPerso: "Marcel",ptDeVie: 50))
perso1.affiche() |
j'obtiens :
Code:
1 2 3 4
|
nom :
points de vie : 0
dégâts de l'arme : 20 |
Comment faire pour initialiser les variables "nom" et "vie" avec la variable "classe" ??