FadeIN/OUT AS2 Probleme [Flash CS4]
| Beiträge: 15 Registriert: Jul 2009
| 05.04.2010, 22:01
Hallo liebe Flasher, habe folgendes Problem habe mir einige Funktionen gebastelt, die MC ausblenden sollen sobalt man einen bestimmten Button drückt.
Hier mal mein Code:
Hier der Jeweilige Button
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 | /*on(press)
{
_root.img_load(1);
}*/ Button
on(release){
if(tmp_aktiv == 0) //prühft ob der button bzw der mc bereits da ist
{
}else{
kontrolle(0); //übergibt den zu fadenen MC
tmp_aktiv = 0; //setzt neuen aktiv stat
}
}
|
Es gibt drei Button IDs beginnen mit 0 bis 2
In der mainBühne
ActionScript: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 | #include "image_loader.as"
#include "my_fades.as"
_root.mc_box03._visible = false;
var tmp_aktiv; // schaut weles fenster gerade aktiv ist
function kontrolle(button)
{
var tmp_out_box; //welches soll weg gehn
var tmp_in_box;
switch(tmp_aktiv)
{
case 0:
tmp_out_box = "mc_box01";
break;
case 1:
tmp_out_box = "mc_box02";
break;
case 2:
tmp_out_box = "mc_box03";
break;
}
switch(button)
{
case 0:
tmp_in_box = "mc_box01";
break;
case 1:
tmp_in_box = "mc_box02";
break;
case 2:
tmp_in_box = "mc_box03";
break;
}
fade_out(tmp_out_box, tmp_in_box);
}
|
Nun mein Script für das laden der Bilder
ActionScript: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 | var curImageIndex:Number = -1;
var images:Array =
[
{clip: mc_box01, path: "test2.png"},
{clip: mc_box02, path: "test1.png"}
];
var myListener:Object = new Object();
var myMCL:MovieClipLoader = new MovieClipLoader();
function loadNextImage() {
curImageIndex++;
var imageObj:Object = images[curImageIndex];
myMCL.loadClip(imageObj.path, imageObj.clip);
}
myListener.onLoadComplete = function(target:MovieClip)
{
target._visible = false;
if (curImageIndex < images.length - 1)
{
loadNextImage();
} else {
_root.img_load(0);
}
};
myMCL.addListener(myListener);
loadNextImage();
// wird aufgerufen, wenn alles geladen ist
function img_load(img_number) {
images[img_number].clip._visible = true; //setzt alles auf sichtbar
images[1].clip._visible = true;
images[3].clip._visible = true;
_root.mc_box01._alpha = 100; //2 werden mit alpha 0 gemacht damit ich es besser handhaben kann
_root.mc_box02._alpha = 0;
_root.mc_box03._alpha = 0;
tmp_aktiv = 0;
}
|
Nun noch meine Fade-Funktionen
ActionScript: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 | MovieClip.prototype.fade_in = function(mc_in)
{
this[mc_in].geschwindigkeit = 5;
this[mc_in].onEnterFrame = function() {
if(this._alpha<100)
{
this._alpha += this.geschwindigkeit;
}
}
}
MovieClip.prototype.fade_out = function(mc,mc_out)
{
this[mc].geschwindigkeit = 5;
this[mc].onEnterFrame = function()
{
if(this._alpha>0)
{
this._alpha -= this.geschwindigkeit;
}
fade_in(mc_out);
}
}
|
Bei der fade-Funktion gehe ich immer davon aus das ein MC bereits sichtbar ist.
So jetzt mein problem ich kann es 2 3 mal machen es faded auch so wie ich es will doch danach pasiert nichts mehr.
Wäre gut wenn mir einer helfen könnte.
Hier noch der SoureCode Faden.zip (149.50 KB)
Danke, MfG | | | Beiträge: 15 Registriert: Jul 2009
Themenautor/in
| 06.04.2010, 17:17
Das muss geändert werden damit das ganze funzt in my_fades:
ActionScript:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | function fade_out(mc,mc_out)
{
if (wait_time == 0)
{
this[mc].geschwindigkeit = 5;
this[mc].onEnterFrame = function()
{
if(this._alpha >0)
{
this._alpha -= this.geschwindigkeit;
}
}
wait_time = 1;
fade_in(mc_out);
}
}
|
wers brauch es funzt dann jetzt | |
| Ähnliche Beiträge zum Thema | |
|
Flashhilfe.de Flash Platform Tipps & Tutorials Flash Platform Andere Programmiersprachen Jobangebote Diskussionen
Flashhilfe News
Regeln & Bedingungen
|