Jeu de simon

Soyez le premier à donner votre avis sur cette source.

Vue 10 959 fois - Téléchargée 1 043 fois

Description

Il s'agit de ce jeu, où il faut répéter une suite de couleur ou de note, indiquée par l'ordinateur. Dans cette version il n'y a pas de son, mais vous pouvez facilement en ajouter.

Les graphismes sont bien évidemment à revoir, mais comme toujours l'algorithme fonctionne.

Source / Exemple :


var niveau=1;// le niveau du joueur : correspond au nombre de touche de la combi
var combinaison = new Array();//Array qui contiendra la combinaison
var toucheJouee=0;//Utilisée lors de la lecture des touches
var tabBoutons = new Array(_root.clip1,_root.clip2,_root.clip3,_root.clip4,_root.clip5,_root.clip6);//Array qui contient nos clips
var idInterval;//Notre intervalle
var xylo = new Object();
var nbTouchesCliquees=0;//Utilisée lorsque le joueur joue
var tourJoueur=false;//Indique si c'est au joueur de jouer
var texte="Bienvenue !";//texte d'informations
var texteGagnePerdu="";//texte gagné ou perdu
var numBoutonClique;//Utilisé pour connaitre le bouton cliqué

//Action sur le bouton recommencer
recommencer.onPress = function(){	
	init();//appelle de init()
}

//Méthode qui réinitialise les variables et relance le jeu
function init(){
	texte="Nouvelle partie";
	nbTouchesCliquees=0;
	toucheJouee=0;
	niveau=1;
	combinaison = new Array();
	ajouterTouche();
	jouerTouches();
}

//Méthode qui permet d'ajouter une touche dans la combinaison
function ajouterTouche(){
	var toucheActive = Math.round(Math.random()*5);//On détermine aléatoirement la valeur de la touche
	combinaison.push(toucheActive);//On l'ajoute à la fin de notre array
}

//On crée une méthode dans notre objet xylo qui permet d'afficher UNE touche
xylo.afficherTouche = function(){
	
	//Si l'affichage de la combinaison n'est pas fini 
	if(toucheJouee!=niveau){	
		tabBoutons[(combinaison[toucheJouee])].gotoAndPlay(2);//on affiche la touche
		toucheJouee++;//On indique qu'après il faut lire la suivante
	}else{//Si c'était la dernière touche
		
		//On indique au joueur que c'est à lui
		texteGagnePerdu="";
		texte="A votre tour !";
		tourJoueur=true;
		
		//on arrete l' interval qui fait l'anim des touches
		clearInterval(idInterval);	
		
	}
}

//Fonction qui affiche la combinaison
function jouerTouches(){
	texte="Soyez attentif !";//on indique que l'on va afficher les touches
	toucheJouee=0;
	idInterval = setInterval(xylo,"afficherTouche",2000,combinaison[toucheJouee]);//toutes les 2 sec on affiche la touche suivante de la combi	
}

//Fonction appelé lorsque l'on clique sur l'un des boutosn du xylo
function testClic(bouton){
	//On récupère le numéro du bouton cliqué
	numBoutonClique = Number(bouton._name.substr(4,1))-1;
	
	//Si c'est au joueur de jouer
	if(tourJoueur==true){
		tabBoutons[numBoutonClique].gotoAndPlay(2);//On lance l'anim du bouton
		
		//S'il il s'agit du bon bouton
		if(combinaison[nbTouchesCliquees]==Number(numBoutonClique)){
			nbTouchesCliquees++;
			
			//Si c'était le dernier bouton de la combinaison
			if(nbTouchesCliquees==niveau){
				texteGagnePerdu="GAGNE !";//On indique que le joueur a réussi
				tourJoueur=false;//Ce n'est plus le tour du joueur
				nbTouchesCliquees=0;
				ajouterTouche();//On ajoute une valeur à la combinaison
				niveau++;//On incrémente notre niveau
				jouerTouches();//on lance l'anim des touches
			}
			
		}else{//Si ce n'était pas la bonne touche
			texteGagnePerdu="PERDU !";//On dit au joueur qu'il a perdu
			init();//on relance une nouvelle partie
		}
	}	
}

//////////////////////////
// Actions sur les clips

clip1.onPress = function(){	
	testClic(this);
}
clip2.onPress = function(){	
	testClic(this);
}

clip3.onPress = function(){	
	testClic(this);
}

clip4.onPress = function(){	
	testClic(this);
}

clip5.onPress = function(){	
	testClic(this);
}

clip6.onPress = function(){	
	testClic(this);
}
//////////////////////////

stop();

Codes Sources

A voir également

Ajouter un commentaire

Commentaire

cs_fernandi
Messages postés
19
Date d'inscription
dimanche 19 juin 2005
Statut
Membre
Dernière intervention
22 juin 2006

sympa mais je préfère celui de www.gougoule.com
7/10

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.