Autor |
Nachricht |
Kash
Threadersteller
Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht:
|
Verfasst Mi 05.04.2006 15:28
Titel preloader prob |
|
|
hallo leute,
habe mal eine frage zu nem preloader.
es ist ein sehr einfacher preloader den viele kennen nehme ich an.
geladene bytes und prozentangaben des fortschritts werden angezeigt.
nun möchte ich aber das wärend dem ladevorgang sich eine kugel (was auch immer) von x nach y bewegt.
bei 0% position x, und bei 100% position y
habe 2 bilder für den Preloader
Bild 1 folgendes AS
Code: |
bytes_gesamt = _root.getBytesTotal() add " Bytes gesamt";
bytes_geladen = _root.getBytesLoaded() add " Bytes geladen";
prozent = int(_root.getBytesLoaded()*100/_root.getBytesTotal()) add " Prozent";
if (prozent == "100 Prozent") {
gotoAndPlay (3);
}
|
und Bild 2
nun müßte ich mit einer funktion es doch so hinbekommen das ich sage meine kugel steht zu anfang bei diesen koordinaten und am ladeende bei den koordinaten.
nur leider kenne ich mich nicht mit AS aus so das ich da nicht durchsteige.
kann mir hierbei evtl jemand helfen?
danke und gruß
kash
|
|
|
|
|
l'Audiophile
Dabei seit: 16.09.2004
Ort: Berlin
Alter: 43
Geschlecht:
|
Verfasst Mi 05.04.2006 15:52
Titel
|
|
|
Hab dir mal fix nen Prototype gebastelt, welcher deine Kugel von links nach rechts bewegen lässt.
Code: |
MovieClip.prototype.bewegen = function (pName,pSpeed, pStartx, pStarty, pEndx) {
_root[pName]._x = pStartx;
_root[pName]._y = pStarty;
_root.onEnterFrame = function() {
for (var i = 1; i<=pSpeed; i++) {
_root[pName]._x != (_root[pName]._x+_root[pName]._width) ? _root[pName]._x += 1 : 0;
}
_root[pName]._x >= pEndx ? delete this.onEnterFrame : 0;
};
};
bewegen("kugel_mc"/*deine Movieclip-Instanz - in diesem Falle "kugel_mc"*/, 1/*Geschwindigkeit*/, 0/*Startkoordinate X-Achse*/, 0/*Startkoordinate Y-Achse*/, 400 /*Endkoordinate der X-Achsenbewegung */);
|
Gruß PJ
Zuletzt bearbeitet von l'Audiophile am Mi 05.04.2006 15:52, insgesamt 1-mal bearbeitet
|
|
|
|
|
Anzeige
|
|
|
Kash
Threadersteller
Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht:
|
Verfasst Mi 05.04.2006 16:08
Titel
|
|
|
danke pj für die schnelle antwort.
kann das erst ein wenig später testen da ich gleich in einer besprechung hock.
ist aber auf den preloader aufgebaut den ich gepostet hatte nehme ich an.
|
|
|
|
|
l'Audiophile
Dabei seit: 16.09.2004
Ort: Berlin
Alter: 43
Geschlecht:
|
Verfasst Mi 05.04.2006 16:24
Titel
|
|
|
Kash hat geschrieben: |
ist aber auf den preloader aufgebaut den ich gepostet hatte nehme ich an. |
Nö, nen bischen Arbeit musste dir schon selbst machen.
Tip: ändere mal den Stringverketter "add" in "+" um. Dann hast du später auch keine Porobleme mit Flashversionen >5.
|
|
|
|
|
labrar
Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht:
|
Verfasst Mi 05.04.2006 16:58
Titel
|
|
|
Mach aus deiner Kugel einen mc(wenn nicht schon passiert) vergib den instanznamen "kugel" und plazier sie wo sie beginnen soll.
und dann so(ungetestet müsste aber gehen
Code: |
range=2;//deine x Kordinate.Kannst anpassen.Bei 2 läuft deine Kugel 200 Pixel weit.Also immer mal 100
this.onEnterFrame = function() {
bln = getBytesLoaded();
blv = getBytesTotal();
prozent = Math.round(bln/blv*100);
kugel._x=prozent*range;// jetzt läuft sie step by step nach rechts.
if (prozent>=100) {
delete this.onEnterFrame;
play();
}
};
|
Bei meinem Beispiel kannst dir das zweite Bild sparen. Läuft alles auf einem Frame.Auf das zweite Bild kannst dann deine eigentliche Seite draufpacken
Zuletzt bearbeitet von labrar am Mi 05.04.2006 17:01, insgesamt 4-mal bearbeitet
|
|
|
|
|
Kash
Threadersteller
Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht:
|
Verfasst Mi 05.04.2006 17:10
Titel
|
|
|
ich würde es gern selbst machen pj, keine frage, bin ungern auf hilfe anderer angewiesen.
nur sind mein flashkenntnisse gleich null.
bin asp'ler und kann nicht viel mit as und den ansprechen von mc's anfangen.
@labrar: dank auch dir für die antwort, werde es ausprobieren.
denn pj, mit deiner lösung komme ich ehrlich gesagt nciht klar.
Zuletzt bearbeitet von Kash am Mi 05.04.2006 17:11, insgesamt 1-mal bearbeitet
|
|
|
|
|
labrar
Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht:
|
Verfasst Do 06.04.2006 01:05
Titel
|
|
|
Denke das du damit klar kommen müsstest da das AS 1. Schulstunde ist.
Ich kommentier nochmal jede Zeile das du weißt was die jeweilige macht
Code: |
range=2;//deine x Kordinate.Kannst anpassen.Bei 2 läuft deine Kugel 200 Pixel weit.Also immer mal 100. Is klar ne?
this.onEnterFrame = function() {// Heißt soviel wie reite auf dem Frame rum bis der delete kommt. Oder anderst. Eine Schleife
bln = getBytesLoaded();//bln ist ein Fantasie name. Kannst auch Oma oder sowas schreiben. Ist nur die Variable die den Wert der bisher geladenen Menge als Zahl abspeichert.
blv = getBytesTotal();//blv ist wieder nur eine Variable die den Wert der vermuteten übrigen Zahl der Gesamtmenge an bytes speichert.
prozent = Math.round(bln/blv*100);//prozent ist die Variable die dann eben die oberen Werte als ..ja Prozent ausgibt. Wenn du dir die Zeile anschaust siehst du das das eine ganz simple Mathematische funktion ist ala drei Satz.
kugel._x=prozent*range;// wenn der Prozentwert steigt, steigt auch der Wert deiner Kugel x Position *2
if (prozent>=100) {//wenn 100% erreicht
delete this.onEnterFrame;//verlasse die Schleife(sinnbildlich)
play();//und spiele ab. Sprich hüpf zum nächsten Frame
}
};
ach so.
vieleicht bindest du noch vor dem ganzen code noch ein
stop();
ein.
Also so:
stop();
range=2;
this.onEnterFrame = function() {
bln = getBytesLoaded();
blv = getBytesTotal();
prozent = Math.round(bln/blv*100);
kugel._x=prozent*range;
if (prozent>=100) {
delete this.onEnterFrame;
play();
}
}; |
|
|
|
|
|
Kash
Threadersteller
Dabei seit: 07.11.2002
Ort: Schopfheim
Alter: 41
Geschlecht:
|
Verfasst Do 06.04.2006 11:03
Titel
|
|
|
so ein danke an alle, es funktioniert.
allerdings erst nachdem ich der X-Koordinate einen startwert gegeben habe und deine rechnug labrar erweitert habe.
code schaut jetzt so aus.
Code: |
xstart=625; //AUSSCHLAGGEBEND
range=2.5;
this.onEnterFrame = function() {
bln = getBytesLoaded();
blv = getBytesTotal();
prozent = Math.round(bln/blv*100);
erg = int(getBytesLoaded()*100/getBytesTotal()) add " Prozent"; // HIER HABE ICH DIE AUSGABE MEINER PROZENTANGABE GEMACHT
mc_bewegung._x=xstart+(prozent*range); //UND HIER DIE RECHNUNG ERWEITERT
if (prozent>=100) {
delete this.onEnterFrame;
gotoAndPlay(3);
}
};
stop();
|
aber ohne eure vorarbeit hätte es nicht funktioniert.
danke war diesmal wirklich super.
|
|
|
|
|
|
|
|
Ähnliche Themen |
prob mit png im IE
Div-Prob
new Color Prob
td Anordnungs - Prob
CSS-Prob mit emailformular...
css positionierungs prob
|
|