begin process at 2012 05 27 18:40:07
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Divers

 > 

Débutant(e)

 > 

probleme profondeur as2


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

probleme profondeur as2

mercredi 2 février 2011 à 21:44:35 | probleme profondeur as2

jobe06

Bonjour, voila mon probleme, j'ai des clic les uns derriere les autre, quand je clic sur un bouton le clip voulu viens ce placer devant celui qui est en premier plan....

Mon probleme, c'est que j'ai trois clip et quatre bouton, donc pour le drnier bouton, j'aimerai pouvoir faire

Si (c'est le clip un qui est au premier plan)
alors tu charge clip deux au premier plan

Si (c'est le clip deux qui est au premier plan)
alors tu charge clip trois au premier plan

Si (c'est le clip trois qui est au premier plan)
alors tu charge clip un au premier plan


Mais je n'arrive pas a formuler ca en as.


Merci pour votre aide
jeudi 3 février 2011 à 10:03:02 | Re : probleme profondeur as2

BBFUNK01

Hello,

tu peux simplement utiliser "getNextHighestDepth()" en fonction des clics sur chacun des boutons, pour le 4e bouton une petite condition s'impose :
Code ActionScript :
BT1.onRelease = function(){
clip1.getNextHighestDepth();
}

BT2.onRelease = function(){
clip2.getNextHighestDepth();
}

BT3.onRelease = function(){
clip3.getNextHighestDepth();
}

BT4.onRelease = function(){
var MC1:Number = clip1.getDepth();
var MC2:Number = clip2.getDepth();
var MC3:Number = clip3.getDepth();
if(MC1 > MC2 and MC1 > MC3){
clip2.getNextHighestDepth();
}else if(MC2 > MC1 and MC2 > MC3){
clip3.getNextHighestDepth();
}else if(MC3 > MC1 and MC3 > MC2){
clip1.getNextHighestDepth();
}
}


A PLUS ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
jeudi 3 février 2011 à 12:17:30 | Re : probleme profondeur as2

jobe06

Merci mille fois de m'avoir rep, je commencait a desesperer, de po trouver la solution, ca marche presque (deja nettement mieux qu'avant) mais j'ai encore un petit probleme, il ne met que le premier clip en premier plan, si c deux ou trois qui est en premier plan, il va chercher le un pour l'y mettre, mais si le premier est au premier plan, alors il laisse le premier, ne va po en chercher un autre....
Voici mon code sur la scene principale :

Code ActionScript :
menu.barre.bt_ed.onRelease = function (){
	
	if (mc1 > mc2 and mc1 > mc3){
                deux.conteneur2.loadMovie("edition.swf");
		loaded = deux.conteneur2.getBytesLoaded(); 
		total = deux.conteneur2.getBytesTotal();
	if ((total == loaded)&&(total>100)){
			fdeux (play);
			
	}
	}
	
		else if (mc2 > mc1 and mc2 > mc3){
                trois.conteneur3.loadMovie("edition.swf");
		loaded = trois.conteneur3.getBytesLoaded(); 
		total = trois.conteneur3.getBytesTotal();
	if ((total == loaded)&&(total>100)){
			ftrois (play);
	}
	}
	
		else if (mc3 > mc2 and mc3 > mc1){
                un.conteneur1.loadMovie("edition.swf");
		loaded = un.conteneur1.getBytesLoaded(); 
		total = un.conteneur1.getBytesTotal();
	if ((total == loaded)&&(total>100)){
			fun (play);
	}
	}
}


et voici le resultat: http://www.bexigraph.com/v2/carte3.swf


Merci de ton aide.

Ps: et j'ai mit les variable non po dans la function bouton mais en haut de tout le code...


jeudi 3 février 2011 à 14:03:09 | Re : probleme profondeur as2

BBFUNK01

Hello,

le fait de déclarer les variables en amont dan le code n'est pas un problème, c'est même plus propre.
Le truc c'est qu'il faut que tu spécifies la profondeur du clip conteneur lorsque tu charges ton swf externe, c'est ça qui va gérer les plans, par exemple :
Code ActionScript :
if (mc1 > mc2 and mc1 > mc3){
                deux.conteneur2.loadMovie("edition.swf");
deux.getNextHighestDepth();
		loaded = deux.conteneur2.getBytesLoaded(); 
		total = deux.conteneur2.getBytesTotal();
	if ((total == loaded)&&(total>100)){
			fdeux (play);
			
	}


A plus ,


BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
jeudi 3 février 2011 à 16:58:21 | Re : probleme profondeur as2

jobe06

j'ai deja mis la classe (je pense que ca s'appel com ca) getnexthightestdepth, en fait la fonction "fdeux" fait une interpolation grace au tween, et met le clip en premier plan grace a getnexthightestdepth().

Mais j'ai remarquer que le quatrieme bouton, ne fait apel qu'au premier clip qu'il soit en premier plan ou pas.... dans n'importe quel cas de figure...
jeudi 3 février 2011 à 18:06:02 | Re : probleme profondeur as2

jobe06

il lit tjs que la premier condition... peut etre fautdrai-t-il vider la variable mc a chaque fois...
jeudi 3 février 2011 à 18:55:33 | Re : probleme profondeur as2

jobe06

je viens de comprendre pourquoi ca marche pas, mais incappable de savoir comment réparer mon erreur...

en fait en mettant swapdepth (getnexthighestdepth()); la profondeur ne change jamais, elle change visuellement mais pas quand je met un trace... j'ai beau le mettre n'importe ou le trace, la profondeur reste la meme, alors que visuellement ca change bien de plan...

il me dit

mc1 = -16368
mc2 = -16374
mc3 = -16380

et c'est pour ca qu'a chaque fois que je clic sur le quatrieme bouton, c'est tjs le meme clic qui se met en premier plan...

comment ca ce fait que la profondeur ne change jamais?


Voici mon code entier, si quelqu'un pe me dire ou est mon erreur:

Code ActionScript :
import mx.transitions.Tween; // on importe la classe Tween 
import mx.transitions.easing.*;

var loaded:Number;
var total:Number;

var mc1:Number = un.getDepth();
var mc2:Number = deux.getDepth();
var mc3:Number = trois.getDepth();


//**************************arriver************************************************

var debut_un_y : Tween = new Tween( un, "_x", Strong.easeIn, -650, 74.05, 5, false );
var debut_un_r : Tween = new Tween( un, "_rotation", Strong.easeIn, 45, -3, 5, false );

var debut_deux_y : Tween = new Tween( deux, "_x", Strong.easeIn, 1500, 85.10, 10, false );
var debut_deux_r : Tween = new Tween( deux, "_rotation", Strong.easeIn, 10, 0, 10, false );

var debut_trois_y : Tween = new Tween( trois, "_x", Strong.easeIn, 2500, 97.5, 15, false );
var debut_trois_r : Tween = new Tween( trois, "_rotation", Strong.easeIn, 60, 3, 15, false );

//****************************Interpolation**********************************************

var part_un_y : Tween = new Tween( un, "_x", Strong.easeIn, 74.05, -650, 15, false );
var part_un_r :Tween = new Tween( un, "_rotation", Strong.easeIn, -3, -45, 15, false );
var revient_un_y : Tween = new Tween( un, "_x", Regular.easeOut, -650, 74.05, 15, false );
var revient_un_r :Tween = new Tween( un, "_rotation", Regular.easeOut, -45, -3, 15, false );
part_un_r.stop();
part_un_y.stop();
revient_un_r.stop();
revient_un_y.stop();


var part_deux_y : Tween = new Tween( deux, "_x", Strong.easeIn, 85.10, -650, 15, false );
var part_deux_r :Tween = new Tween( deux, "_rotation", Strong.easeIn, 0, -45, 15, false );
var revient_deux_y : Tween = new Tween( deux, "_x", Regular.easeOut, -650, 85.10, 15, false );
var revient_deux_r :Tween = new Tween( deux, "_rotation", Regular.easeOut, -45, 0, 15, false );
part_deux_y.stop();
part_deux_r.stop();
revient_deux_r.stop();
revient_deux_y.stop();


var part_trois_y : Tween = new Tween( trois, "_x", Strong.easeIn, 97.5, -650, 15, false );
var part_trois_r :Tween = new Tween( trois, "_rotation", Strong.easeIn, 3, -45, 15, false );
var revient_trois_y : Tween = new Tween( trois, "_x", Regular.easeOut, -650, 97.5, 15, false );
var revient_trois_r :Tween = new Tween( trois, "_rotation", Regular.easeOut, -45, 3, 15, false );
part_trois_y.stop();
part_trois_r.stop();
revient_trois_r.stop();
revient_trois_y.stop();


//***********************************************************************************************
//****************************************FONCTION************************************************
//***********************************************************************************************
//***********************************************************************************************


function fun () {
	part_un_r.start();
	part_un_y.start();
	
	part_un_y.onMotionFinished  = function(Void):Void  {
un.swapDepths(getNextHighestDepth());
revient_un_r.start();
revient_un_y.start();
};

}

//***********************************************************************************************

function fdeux () {
	part_deux_r.start();
	part_deux_y.start();
	
	part_deux_y.onMotionFinished  = function(Void):Void  {
deux.swapDepths(getNextHighestDepth());
revient_deux_r.start();
revient_deux_y.start();
};
}

//***********************************************************************************************


function ftrois () {
	part_trois_r.start();
	part_trois_y.start();
	
	part_trois_y.onMotionFinished  = function(Void):Void  {
trois.swapDepths(getNextHighestDepth());
revient_trois_r.start();
revient_trois_y.start();
};

}



//******************************************************************************************
//*****************************************BOUTON*******************************************
//******************************************************************************************
//******************************************************************************************






menu.barre.bt_id.onRelease = function (){
	
		loaded = deux.conteneur2.getBytesLoaded(); 
		total = deux.conteneur2.getBytesTotal();
	if ((total == loaded)&&(total>100)){
			fdeux (play);
	}
	menu.barre.bt_ed.enabled=true;
	menu.barre.bt_ex.enabled=true;
	menu.barre.bt_id.enabled=false;
	menu.barre.bt_pub.enabled=true;


}

menu.barre.bt_pub.onRelease = function (){
	
		loaded = trois.conteneur3.getBytesLoaded(); 
		total = trois.conteneur3.getBytesTotal();
	if ((total == loaded)&&(total>100)){
			ftrois (play);
	}
	menu.barre.bt_ed.enabled=true;
	menu.barre.bt_ex.enabled=true;
	menu.barre.bt_id.enabled=true;
	menu.barre.bt_pub.enabled=false;
}

menu.barre.bt_ex.onRelease = function (){
	
		loaded = un.conteneur1.getBytesLoaded(); 
		total = un.conteneur1.getBytesTotal();
	if ((total == loaded)&&(total>100)){
			fun (play);
	}
	menu.barre.bt_ed.enabled=true;
	menu.barre.bt_ex.enabled=false;
	menu.barre.bt_id.enabled=true;
	menu.barre.bt_pub.enabled=true;
}


menu.barre.bt_ed.onRelease = function (){

		if (mc3>mc2 and mc3>mc1){
		loaded = deux.conteneur2.getBytesLoaded(); 
		total = deux.conteneur2.getBytesTotal();
		if ((total == loaded)&&(total>100)){
			fdeux (play);
	}
	}	
	
		else if (mc1>mc2 and mc1>mc3){
		loaded = trois.conteneur3.getBytesLoaded(); 
		total = trois.conteneur3.getBytesTotal();
			if ((total == loaded)&&(total>100)){
			ftrois (play);
	}
	}
	

	else if (mc2>mc1 and mc2>mc3){
		loaded = un.conteneur1.getBytesLoaded(); 
		total = un.conteneur1.getBytesTotal();
		if ((total == loaded)&&(total>100)){
			fun (play);
			
	}
	}
	menu.barre.bt_ed.enabled=false;
	menu.barre.bt_ex.enabled=true;
	menu.barre.bt_id.enabled=true;
	menu.barre.bt_pub.enabled=true;
}
jeudi 3 février 2011 à 19:25:27 | Re : probleme profondeur as2

BBFUNK01

Re,

inutile de faire ceci :

Code ActionScript :
trois.swapDepths(getNextHighestDepth());


Pour placer ton clip au 1er plan tu as juste à faire cela :
Code ActionScript :
trois.getNextHighestDepth();


swapDepths() c'est pour définir une profondeur en y précisant la valeur de la profondeur souhaitée. getNextHighestDepth() ça veut tout simplement dire que tu donnes comme instruction à ton clip de passer au 1er plan.

A plus ,

BBFUNK01
//C'est en forgeant qu'on devient forgeron... ;-) ;
jeudi 3 février 2011 à 20:39:48 | Re : probleme profondeur as2

jobe06

ca ne marche pas si j'enleve swapDeths, et je comprend pas pk ca devrai marcher normalement, mais non... aurai je oublier encore quelque chose?


Cette discussion est classée dans : bouton, plan, probleme, clip, premier


Répondre à ce message

Sujets en rapport avec ce message

probleme arriere plan / premier plan [ par reglojeu ] Voilà mon soucis ..j' ai creé plusieurs boutons animés , lorsque l'on passe avec la souris sur un bouton , une image s' ouvre . l'image se chevauche s Activer bouton dans un clip [ par jufis ] Bonjour à tousj'ai réalisé de nombreux boutons sur une page, mais je souhaite que l'image au survol vienne au premier plan.Je n'ai trouvé comme soluti Probleme de clip et loadClip [ par aerofx ] Bonjour à tous,Comme beaucoup, j'ai un soucis...J'ai un clip qui me sert de bouton.Je desire inserer une photo sur ce bouton , à l'aide de loadClip ou probleme de stop [ par gobgob74 ] bonjourj'ai un probleme de stopje voudrais que mon clip ce deroule lorsque je clique sur mon bouton et qu'il se stop a la frame 30 ( jusqu'a la ya pas mettre clip en premier plan [ par unik74 ] Bonjour, Je souhaite faire une galerie photos. Jusqu'ici tout va bien. Les photos sont en vignettes et lors du passage de la souris sur une photo, cel PB BOUTONS ET CLIP [ par manonmadi ] Bonjour a tous,Voila mon probleme, j'ai cree un bouton que j'ai mis dans un clip. Ce clip je l'ai mis dans la premiere image, premier calque de ma sce probleme daffichage en premier plan [ par wakkkkkk ] bonjours! je cherche une solution pour afficher un text dans un div, par dessus une anim flash, sa fonctionne bien avec internet explorer mais dans ne Tjrs probleme de clip/sequence [ par bobfumelephp ] Bonjour,J'ai un clip, avec un bouton inclus dedans, ce bouton doit renvoyer , normalement, vers la scene principale.Sauf que le bouton renvoye au clip probleme de load [ par actaruss ] Salut à tous ! J'ai un clip dans une animation flash. Ce clip est censé charger des swf externes : sur le calque 1 : Un clip vide nommé "chargeur". su load et déload d'un clip au premier plan [ par dark_diablo09 ] Bonjour... Voila je ne suis pas une bête incontesté du flash (mais disons que je commence à me familliariser avec flash) et j'ai recréé un OS mais je


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

Photothèque

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,624 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales