Bonjour !



Je reviens demander un peu d'aide...



J'aimeris coordonner le déplacement d'un clip avec un autre...

Le premier clip s'appelle "loupe"

Le second clip s'appelle "conteneur2"



Pour le moment, j'arrive a drager "loupe" nikel mais "conteneur2" (et l'image qu'il contient) ne suis pas....



Je vous mets le code fla...

Si vous avez une idée je suis preneur !



Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
//Définition des variables :
 
//Création des deux conteneurs :
 
var conteneur:MovieClip = this.createEmptyMovieClip("conteneur", this.getNextHighestDepth()); 
 
var conteneur2:MovieClip = this.createEmptyMovieClip("conteneur2", this.getNextHighestDepth());
 
//Création de l'écouteur :
 
var mclListener:Object = new Object();  
 
//Création du movieClipLoader :
 
var mcl:MovieClipLoader = new MovieClipLoader(); 
 
//Création de la variable de chargement
 
var chargement = new LoadVars();  
 
//Création de la loupe :
 
var loupe:MovieClip = this.createEmptyMovieClip("loupe", this.getNextHighestDepth());
 
 
 
 
 
//Evènement loadProgress envoyé par le movieClipLoader qui permet de savoir où en est le chargement :
 
mclListener.onLoadProgress = function(target:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void   
 
{   //Affichage du nombre de bits total dans le champs de texte dynamique nommé "total"
 
    total.text = bytesTotal+" ko"; 
 
    //Affichage du nombre de bits chargé dans le champs de texte dynamique nommé "charge"
 
    charge.text = bytesLoaded+" ko";  
 
      //Affichage du pourcentage de bit chargé dans le champs de texte dynamique nommé "pourcent"
 
    pourcent.text = Math.floor((bytesLoaded/bytesTotal)*100) + " %";  
 
      //Si le pourcentage est égal à 100
 
    if (pourcent.text == "100 %"){  
 
         //en général, on fait disparaitre cette info de texte 
 
         //(il faut l'avoir fait apparaitre à chaque loadClip, ce qui n'est pas fait dans ce code)  
 
    }  
 
}  
 
//Création de l'évènement loadInit qui sera déclenché par le movieclipLoader lorsque le chargement sera fini
 
//target_mc sert à récupérer le clip dans lequel a été fait le chargement
 
mclListener.onLoadInit = function(target_mc:MovieClip):Void {
 
            //On définit les coordonnées du clip appellé "loupe" : (100,245)
 
            loupe._x=100;
 
            loupe._y=245;
 
            //On définit les dimensions du clip appellé "loupe" : (125x125)
 
            loupe._width=125;
 
            loupe._height=125;
 
            //On fait appelle à la méthode "drawRectangle" pour définir un rectangle
 
            //dimensions du rectangle :125x125, couleur : #666666, couche alpha de 60%
 
            drawRectangle(loupe, 125, 125, 0x666666, 60);
 
            //On associe le rectangle à target_mc
 
            function drawRectangle(target_mc:MovieClip, boxWidth:Number, boxHeight:Number, fillColor:Number, fillAlpha:Number):Void {
 
            with (target_mc) {
 
            beginFill(fillColor, fillAlpha);
 
            moveTo(0, 0);
 
            lineTo(boxWidth, 0);
 
            lineTo(boxWidth, boxHeight);
 
            lineTo(0, boxHeight);
 
            lineTo(0, 0);
 
            endFill();
 
            }
 
        }
 
 
 
        //Si le chargement a été fait dans "conteneur" on va placer celui-ci aux coordonnées (100,120)
 
        if(target_mc==conteneur) {
 
            conteneur._x = 100;  
 
            conteneur._y = 120; 
 
            //On définit maintenant les dimensions du conteneur1 (250x250)
 
            conteneur._width = 250;  
 
            conteneur._height = 250; 
 
 
 
 
 
        //le premier conteneur est chargé, on charge le 2 ème qui rappellera ici même 
 
        //quand il sera prêt via la methode loadClip  
 
        mcl.loadClip(chargement.image,conteneur2); 
 
 
 
    } 
 
    //Sinon, si le chargement a été fait dans "conteneur2" on va placer celui-ci aux coordonnées x=450
 
    else if(target_mc==conteneur2){ 
 
 
 
        conteneur2._x = 450;
 
        conteneur2._y = -125;
 
 
 
        //vu ce qu'il a écrit dessous, conteneur doit être là avant conteneur2 
 
        //pour qu'il puisse s'appuyer sur ses dimensions  
 
        //Les dimensions du conteneur2 sont égales au double de celle du conteneur1
 
        conteneur2._width=conteneur._width*2;  
 
        conteneur2._height=conteneur._height*2;
 
        conteneur2.setMask(masque);
 
        //Lorsqu'on clic sur "loupe" on peut drager selon les coordonnées suivantes...
 
        loupe.onPress = function() { 
 
         this.startDrag(false, 100, 120, 224, 244 );
 
        };
 
                        //Lorsqu'on relache, le drag s'arrète
 
        loupe.onRelease = function() {
 
         this.stopDrag();
 
        };
 
        //J'ai mis ici la Coordination du déplacement de la loupe avec le conteneur2 A mon avis c'est là que ça merdouille...
 
 
 
        target_mc.onPress = function() {
 
    this.loupe._x = (conteneur2._x-450)*-2;
 
        this.loupe._y = (conteneur2._y-120)*-2;
 
        };
 
 
 
 
 
    }  
 
}  
 
//On fait appel au gestionnaire d'évènement onLoad
 
chargement.onLoad = function(pSuc) {  
 
    if (pSuc) {  
 
        trace("chargement demandé de "+this.image+" sur "+conteneur); 
 
        // Sur conteneur1 on ne peut charger qu'avec le nom de l'image à charger: this.image 
 
        mcl.loadClip(this.image,conteneur); 
 
 
 
        //en dehors de cette fonction this.image devient accessible comme "chargement.image"    
 
    }   
 
}   
 
//On attache l'écouteur au movieclipLoader pour qu'il puisse entendre ce qu'il émet
 
mcl.addListener(mclListener);
 
 
 
//Pour finir on fait appel au fichier "info6.php" pour effectuer le chargement via la methode "load"
 
chargement.load("info7.php");