[FLASH MX2004] (AS 2.0) Probleme de classe
Je voulais faire une petite simulation de vie animale en Flash (toute simple hein!!) avec des animaux imaginaires que j'ai apelé Deweezz.
La simulation porte surtout sur leur reproduction.
Un male peut avoir à l'age adulte 5 enfants et une femelle 5.
-
Je ne l'ai testé mais elle ne fonctionne pas
Code:
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
|
class Deweezz{
var enfants:Number=0; //au départ un D-weezz n'a pas d'enfant
var rest:Number=3; //cette ligne ne sert qu'à définir le nb d'enfant restant
//pour pas etre embeté apres mais il ne s'agit pas de la vraie valeur
// qui sera definie plus tard selon le type du D-weezz
//----------------------------------------
//On met en place la fonction qui va permettre de crréer les proprio d'un D-weezz
//son nom, son type(male ou femelle) son age(0 a la naissance)
//le nombre d'enfant qu'il peut avoir selon qu'il soit un male ou une femelle
function newD(nomT:String,typeT:String){
var nom:String=nomT;
var type:String=typeT;
var age:Number=0;
if(type=="male"){
var rest:Number=5;//si c'est un male, il peut avoir 3 enfants
}else{
var rest:Number=3;//si c'est une femelle, elle peut avoir 5 enfants
}
}
//-------------------------------------------------
//On met en place la fonction qui s'associe à la reproduction d'un D-weezz
function reproducte(){
if(rest>0){ //s'il na pas epuisé son quota d'enfants
++enfants;//on augmente la prop correspondant a son nb d'enfants
--rest;//on diminue son quota d'enfants de 1
return true;//on retourne la valeur 'true' pour montré qu'il s'estreproduit
}else{
return false;//si son quto d'enfants était epuisé, on retourne la valeure false pour monrter qu'il n'avait pas le droit de se reproduire
}
}
} |
Je pense utiliser cette classe comme ceci :
Code:
1 2 3 4 5 6 7 8 9
|
var msg:String = "";
var JeanPaul:Deweezz = newD("Jean-Paul","male");
var reprok:Boolean = JeanPaul.reproducte();
if(reprok){
msg = JeanPaul.nom+" s'est reproduit et peut encore avoir "+JeanPaul.rest+" enfant(s)."
}else{
msg = JeanPaul.nom+" n'a pas le droit de se reproduire car il a déja "+JeanPaul.enfants+" ."
} |
J'aimerais savoir ce qui cloche... :'(