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 28/12/2007, 12h12   #1
Invité de passage
 
Inscription : février 2006
Messages : 6
Détails du profil
Informations forums :
Inscription : février 2006
Messages : 6
Points : 0
Points : 0
Par défaut petit probleme fonction

bonjour à tous,
je suis confronté a un bete probleme ...
voici mon code (simplifié)

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
33
34
35
 
var numOfItems:Number = 8;
 
var speed:Number = 2; 
 
 
 
 
for(var i=0;i<numOfItems;i++)
{
	var mc = createEmptyMovieClip("photo"+i, i);
	mc.createEmptyMovieClip("conteneur", 0);
	mc.conteneur.loadMovie("photos/" + i + ".jpg");
	mc._xscale = mc._yscale = 30;
	mc._x = i*120
	mc.onRelease = function() {
		ease(this , 125, 95)
	}
 
}
 
 
//fonction deplacement ralenti
ease = function( what:MovieClip , tox:Number, toy:Number ){
	what.onEnterFrame = function(){ 
	var distancex:Number = tox - this._x; 
	var newDistancex:Number = distancex / speed; 
	this._x = tox - newDistancex; 
	var distancey:Number = toy - this._y;
	var newDistancey:Number = distancey / speed;
	this._y = toy - newDistancey;
	this._xscale = this._yscale = 100;
 
} 
}
alors en gros mon code va chercher 8 images dans un repertoire, les affiche
l'une a coté de l'autre... en click sur l'une d entre elle, elle se place au coordonnée 125*95 ... et s agrandit a 100%

Mon probleme c est que j'aimerais que quand je clique apres sur un autre image celle qui est au centre retourne a sa place avec son scale de base (30) et que l'autre vienne se mettre a sa place au centre...
pour le moment la deuxieme image vient bien se mettre au centre mais l'autre ne retourne pas a sa place...
et j'ai aucune idée de comment lui dire de le faire...
Setsu est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/01/2008, 10h40   #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, je crois que quelque chose dans ce style devrait marcher, mais bon la j'ai mis _root[i] pour me simplifier la vie, c'est pas un truc à utiliser mais c'est dans ce principe je pense que ca marchera

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
33
34
35
36
37
38
39
40
41
42
 
var numOfItems:Number = 8;
var photoused = "";
var speed:Number = 2; 
 
 
 
 
for(var i=0;i<numOfItems;i++)
{
	_root[i] = createEmptyMovieClip("photo"+i, i);
	_root[i].createEmptyMovieClip("conteneur", 0);
	_root[i].conteneur.loadMovie("photos/" + i + ".jpg");
	_root[i]._xscale = _root[i]._yscale = 30;
	_root[i]._x = i*120;
	_root[i].onRelease = function() {
                         if(photoused =! ""){
                             _root[photoused]._xscale =  _root[i]._yscale = 30;
                             _root[i]._x = photoused*120;
                         }
                         photoused=Number(this._name.substr(this._name._length-1,1));
                         photousedX=this._x;
                         photousedY=this._y;
		ease(this , 125, 95);
	}
 
}
 
 
//fonction deplacement ralenti
ease = function( what:MovieClip , tox:Number, toy:Number ){
	what.onEnterFrame = function(){ 
	var distancex:Number = tox - this._x; 
	var newDistancex:Number = distancex / speed; 
	this._x = tox - newDistancex; 
	var distancey:Number = toy - this._y;
	var newDistancey:Number = distancey / speed;
	this._y = toy - newDistancey;
	this._xscale = this._yscale = 100;
 
} 
}
bonne chance
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 17h02.


 
 
 
 
Partenaires

Hébergement Web