Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash > AS1/AS2
AS1/AS2 Questions relatives à la programmation ActionScript 1 et 2 (Cours AS2)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 16/12/2007, 01h56   #1
Invité de passage
 
Inscription : novembre 2007
Messages : 4
Détails du profil
Informations forums :
Inscription : novembre 2007
Messages : 4
Points : 0
Points : 0
Par défaut besoin conseil programmation

je vais essayer d'être clair.
j'ai des interrupteurs donc Bt1, Bt2 et Bt3.
Bt2 allume lampe1 et Bt3 éteint lampe2.
en appuyant sur Bt1 à n'importe quel moment, les lampes doivent s'allumer si celle ci est éteinte auparavant et si elle était déja allumée, elle reste allumer (c'est une fonction teste lampe tout simplement).
Pour l'instant, je suis entrain de comprendre comment on peut programmer avec 2 interrupteurs, après j'appliquerai sur plusieurs interrupteurs.
Vous avez mon fichier.
je pense que je dois programmer différent par rapport au programme actuel



var Commute = false;
var Test = false;
this.commute1.onPress = function() {
Commute = !(Commute);
this.gotoAndPlay(2);
checkForLed(); // donner un nom arbitraire
};
this.test.onPress = function() {
Test = true;
this.gotoAndPlay(2);
checkForLed(); // donner un nom arbitraire
};
this.test.onRelease = function() {
Test = false;
this.gotoAndStop(1);
checkForLed(); // donner un nom arbitraire
};
function checkForLed() { // nom de la fonction
if (Commute || Test) {
lampe1.gotoAndStop(2);
} else {
lampe1.gotoAndStop(1);
}
}

this.commute2.onPress = function (){
this.gotoAndPlay(2);
this._parent.lampe2.gotoAndPlay(2);
}
Fichiers attachés
Type de fichier : fla essai2.fla (83,0 Ko, 2 affichages)
bokbok est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/12/2007, 16h04   #2
Membre du Club
 
Inscription : janvier 2007
Messages : 69
Détails du profil
Informations personnelles :
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : janvier 2007
Messages : 69
Points : 45
Points : 45
Bonjour,

personnellement je ne vois pas exactement ce que tu veux...

Tu souhaites que nous te fournissions une facon de réfléchir à ce probleme ? SI cela est le cas, sache qu'il existe un nombre de facon quasi infini qui peuvent coder ce probleme...

Maintenant si tu veux juste savoir si ca va marcher, la réponse est oui tres certainement...

Par contre personnellement, sachant que tu veux mettre un nombre de bouton indéterminé par la suite, je te conseillerai de faire un truc qui aurait cette syntaxe d'idée :

Citation:
1- var nbLumieres : Number = x; // avec x qui est égal au nombre de lampe de ton animation.

2- tu fais si x>=1 une boucle qui va faire un attachmovie de la lampe éteinte avec un nom reconnaissable

3- tu fais attachmovie de l'intérupteur avec un nom en relation avec ta lampe

4- tu crée une variable booléenne qui est en relation avec l'id de ton bouton et de ta lampe.

5- tu attribues les applications onrelease sur this et onpress sur this quand tu fais les bouton.
Enfin bon moi je le vois comme ca personnellement...

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
var nblumieres:Number = 3;
 
var indice:Number = 1;
 
mc = _root.attachMovie("petit_bouton_rouge","btn_rg",_root.getNextHighestDepth(),{_x:valeurfixe;_y:valeurfixe});
mc.onPress = function(){
	//je transformes les lumieres éteintes en allumées
}
 
// mise en place des lampes et boutons associés
for(indice,indice <= nblumieres;indice++){
	// attachmovie des lumieres éteintes
 
	// création des variables relatives booléennes "Commute"+indice par exemple à false
 
	// attachmovie des boutons qui controle indépendament les lumieres
	nomduboutonrelatif.onPress = function(){
			//if commuteindice == flase => allume else => eteint
			//si éteint alors commuteindice=flase
			//si allume alors commuteindice=true
}
Larffas est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 13h17.


 
 
 
 
Partenaires

Hébergement Web