Après avoir créé les tableaux de couleurs, il faut maintenant les attribuer aux cartes. Nous allons pour cela utiliser une fonction qui va boucler sur toutes les cartes du memory. En actionscript 3, on peut transmettre un tableau dans un tableau de manière très simple avec :
monTableauReceveur = monTableauAvecLesDonnees
Et voilĂ la fonction pour attribuer les couleurs des cartes du memory :
function fctAttribuerCouleur( nbLignes:Number, nbColonnes:Number ):void {
nbCartes = nbLignes * nbColonnes ;
nbPairesADefinir = nbCartes / 2 ;
// On initialise le tableau temporaire avec les couleurs du tableau principal
arrTeinteTmp = arrTeinte ;
// La boucle qui va attribuer les couleurs aux cartes
for ( var i:int = 0 ; i < nbCartes ; i++ ) {
if ( arrTeinteTmp.length > 1 ) {
arrCouleurCarte[ i ] = arrTeinteTmp[ Math.round( Math.random( ) * ( nbPairesADefinir - 1 ) + 1 ) ] ;
}
else {
// La valeur 0 du tableau arrTeinteTmp est celle de la dos de carte
arrCouleurCarte[ i ] = arrTeinteTmp[ 1 ] ;
}
for ( var j:int = 0 ; j < nbCartes ; j++ ) {
if ( arrCouleurCarte[ i ] == arrCouleurCarte[ j ] && i != j ) {
// On appelle la fonction qui va supprimer la couleur qui est utilisée deux fois.
fctRedefinirArrTeinteTemp( arrCouleurCarte [ i ] ) ;
break ;
}
}
}
}A voir aussi :
Quelques articles au hasard
- [ActionScript 3] Récupérer les noms des polices embarquées dans le flash
- [Flash] Le futur de la 3D sous Flash nom de code Molehill
- [ActionScript 3] SendAndLoad communiquer entre flash et page serveur
- [ActionScript 3] Récupérer les variables flashs (les flashVars)
- [Referencement] Google index les contenus du Flash
Plus de liens

Pas de commentaire