Preloader externer Film

mediamacher

Mitglied
Hi,
habe mit loadMovie("exfilm.swf","container"); aus dem Hauptfilm meinen externen Film "exfilm.swf" erfolgreich einbinden können. Nun mächte ich jedoch in die "exfilm.swf" noch einen Preloader einbinden, was ich leider nicht so richtig hinkriege. Über eure Hilfe würde ich mich freuen...
MfG
Matze
 
Baue einfach in deinen externen Film einen ganz normalen Preloader ein. (So wie du es wahrscheinlich auch in deinem Hauptfilm hast).

cu tirolausserfern
 
aber nicht...

Habe folgenden Preloader in Bild 1 des exfilms eingebaut (in Bild 3 geht es dann weiter) und es leider nicht. Wenn ich den Hauptfilm abspiele, zeigt er mir den Preloader zwar an, springt jedoch bei 100% wieder auf 0%

Skript Preloader:

/*
posX = loader Position X-Achse
posY = loader Position Y-Achse
Breite = Entgültige Breite des Balken in Pixel
Hoehe = Höhe des Balken
Farbe = Farbe des Balken
Warten = Wartezeit in Sekunden
Bild = Zu welchem Bild gesprungen werden soll
Signal = Bildsprung (1: GotoAndPlay oder 0: GotoAndStop)

*/

Movieclip.prototype.loader = function (posX,posY,Breite,Hoehe,Farbe,Warten,Bild,Signal) {

this.createEmptyMovieClip("pre",1);

pre.onEnterFrame = function () {

// Position Preloader
this._x = posX;
this._y = posY;

// Gesamt & Geladen
this.gesamt = _root.getBytesTotal();
this.geladen = _root.getBytesLoaded();

// Prozentberechnung
prozent = (int((this.geladen/this.gesamt)*100));

// Statusbalken
this.createEmptyMovieClip("bar", 2);
this.bar.beginFill (Farbe,100)
this.bar.moveto(prozent*Breite/100,Hoehe);
this.bar.lineto(prozent*Breite/100,0);
this.bar.lineto(0,0);
this.bar.lineto(0,Hoehe);
this.bar.lineto(Hoehe,Hoehe);
this.bar.endFill();

// Textfeld
this.createTextField("pFeld", 1, 0, 0, 102, 16);
this.pFeld.autoSize = "right";
this.pFeld.selectable = false;
this.pFeld._y += (Hoehe);

// Textfeld Format
this.mForm = new TextFormat();
this.mForm.font = "Arial";
this.mForm.size = 10;
this.mForm.color = 0x000000;
this.pFeld.text = prozent + "%";
this.pFeld.setTextFormat(this.mForm);

if (this.gesamt == this.geladen) {
_root.Pause(Warten,Bild,Signal);
}
}
}

MovieClip.prototype.Pause = function(pzeit,bild,Sig) {
this.stop();
var go = function(obj) {
pre.removeMovieClip();
if (Sig) {
obj.gotoAndPlay(bild);
} else {
obj.gotoAndStop(bild);
}
clearInterval(id);
}
var id = setInterval(go,pzeit*1000,this);
}

loader(333,237,97,9,0x999999,1,3,0);
stop();
 
Hi,

bei solch relativ komplexen Fragen ist es einfach höflicher, die abgespeckten Flas zu posten - es dauert jetzt einfach zu lange mir eine Umgebung zu erstellen, in der dein preloader testbar ist...es ist nämlich zum Glück nicht so, das die Leute die dir hier antworten irgendwie arbeitslos wären, und nix anderes zu tun hätten....

Grüsse B
 
lol:-)
kleiner Fehler, grosse Wirkung.....

1.) der createEmptyMovieClip im Hauptfilm verursacht eine trunctation, weil der begriff loader ja dann später verwendet werden soll, loader wegen AS 2.0 eh nicht mehr als bezeichner verwenden...

2.) der preloader im hauptfilm ist absolut unnötig und somit auch gern zu löschen

3.) es heisst MovieClip.prototype, nicht etwa Movieclip.prototype, das hättest du im debugger überprüfen können, bzw mit einem trace im prototype code.


Grüsse

B
 
Ok

Hi,
ersteinmal vielen Dank. Die Sache in der externen Datei hat ja soweit geklappt, die Schreibweise ist abgeändert und der preloader funktioniert einwandfrei.
Das einzigste, was ich jetzt nicht hinbekomme ist die Sache im HAuptfilm mit dem integrieren des exteren Film, dafür bin ich scheinbar zu doof. Ich will dir ja nicht auf den senkel gehen, aber noch ein kleiner weiterer Tip....
Danke
 
Habe den film mit loadMovieNum("exfilm.swf", 1); eingebaut und habe jetzt nur noch das Problem, dass der importierte Fim in allen Bildern erscheint...
 
Zurück