Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 06-12-2006, 22:25   #1 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 214
Question Preloader - Zahlen sollen von 10 - 0 runterzählen!

hi,
ich brauche einen preloader (am besten flashplayer 6 fähig) wo die zahlen 10 - 0 runterzählen und dann die nächste Szene geladen wird.

hat jemand so etwas schon mal gemacht oder kann mir sagen wie das geht?

Danke
Mirco Gutschmid ist offline   Mit Zitat antworten
Alt 06-12-2006, 23:26   #2 (permalink)
Dumm lebt länger
 
Benutzerbild von Vampire's Party
 
Registriert seit: Jan 2004
Ort: Sachsen
Beiträge: 425
Eigentlich ganz easy...

ActionScript:
  1. _root.onEnterFrame = function ()
  2. {
  3.     zaehler = 10 - 10*_root.getBytesLoaded()/_root.getBytesTotal();
  4.     trace(Math.round(zaehler));
  5.     if (zaehler == 10)
  6.     {
  7.         delete _root.onEnterFrame;
  8.         //springe zur gewünschten Szene
  9.     }
  10.    
  11. }
__________________
Blog
Vampire's Party ist offline   Mit Zitat antworten
Alt 06-12-2006, 23:32   #3 (permalink)
meistens harmlos
 
Benutzerbild von rena
 
Registriert seit: Jun 2001
Ort: Stuttgart
Beiträge: 17.643
Zitat:
Zitat von Mirco Gutschmid Beitrag anzeigen
...und dann die nächste Szene geladen wird.
Wenn du von den flasheigenen Szenen sprichst - die lassen sich nicht separat laden. Wird eine swf-Datei aufgerufen, lädt sie von vorne bis hinten und stoppt nicht an den imaginären Szenengrenzen.

Falls du mit Szenen extern nachgeladene Filme meinst, kannst du einen ganz normalen Preloader, wie er sich hier und überall zu tausenden findet, nehmen und die geladenen Prozent entsprechend umrechnen und ausgeben.

Umrechnungsbeispiel für das Rückwärtszählen von 10 bis 0
Code:
[...]
prozent=57 //bzw. eben die per handelsüblichem Preloader ausgerechneten werte
ausgabe=10-Math.round(prozent/10);
trace(ausgabe);
[...]
Gruß
Rena

Edit: Man sollte nicht so lange überlegen ...
__________________
www.rena-hermann.de

The angels have the phone box
rena ist offline   Mit Zitat antworten
Alt 07-12-2006, 08:18   #4 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 214
Smile Danke :) - Kann man die Kommastellen noch wegbekommen?

Es funktioniert soweit super. genau das was ich suche - danke an euch
aber ist es möglich die zahlen hinter dem komma noch wegzulassen?

also wenn ich den film online teste erscheinen die zahlen so:

10, 9.9, 9.8, 9.7 ...

ich hätte aber gerne:

10, 9 (oder auch 09), 8 (oder auch 08) ...

das währe echt super!
Mirco Gutschmid ist offline   Mit Zitat antworten
Alt 07-12-2006, 08:26   #5 (permalink)
angry > always
 
Benutzerbild von ingohill
 
Registriert seit: Jul 2001
Ort: NRW
Beiträge: 1.635
ActionScript:
  1. _root.onEnterFrame = function ()
  2. {
  3.     zaehler = 10 - 10*_root.getBytesLoaded()/_root.getBytesTotal();
  4.     trace(int(Math.round(zaehler)));
  5.     if (zaehler == 10)
  6.     {
  7.         delete _root.onEnterFrame;
  8.         //springe zur gewünschten Szene
  9.     }
  10.    
  11. }
-ingo
__________________

on air: caliban | neaera | heaven shall burn | hatebreed | the agony scene
ingohill ist offline   Mit Zitat antworten
Alt 07-12-2006, 08:44   #6 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 214
Unhappy hmmm ...

... sorry, aber es hat sich nichts verändert die zahlen erscheinen leider immer noch falsch
Mirco Gutschmid ist offline   Mit Zitat antworten
Alt 07-12-2006, 09:06   #7 (permalink)
seltener Gast
 
Benutzerbild von c-lex
 
Registriert seit: Feb 2002
Ort: München
Beiträge: 352
PHP-Code:

_root
.onEnterFrame = function ()
{
    
zaehler 10 10*_root.getBytesLoaded()/_root.getBytesTotal();
    
trace(int(Math.round(zaehler)));
    if (
zaehler == 0)
    {
        
delete _root.onEnterFrame;
        
//springe zur gewünschten Szene
    
}
    

Also bei mir tut das.

C-LEX
__________________

Gerechtigkeit ist tätige Wahrheit. (Joubert)

Achim Eifohn

c-lex ist offline   Mit Zitat antworten
Alt 07-12-2006, 10:05   #8 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 214
Unhappy komisch ...

bei mir zeigt er immer noch 9.987 usw. an

ich exportiere den film als flash 6 / As1 / textfeld ist dynamisch aber es funzt irgendwie nicht.

anbei mal ne abgespeckte version (ohne originale inhalte) zum anschauen
Angehängte Dateien
Dateityp: zip testloader.fla.zip (36,5 KB, 8x aufgerufen)
Mirco Gutschmid ist offline   Mit Zitat antworten
Alt 07-12-2006, 10:58   #9 (permalink)
will code HTML for food
 
Benutzerbild von querkopf
 
Registriert seit: Mar 2003
Beiträge: 1.232
Wenn Du Dir auch nur die Ausgabe für's trace runden lässt...

PHP-Code:
 zaehler int(Math.round(10 10*_root.getBytesLoaded()/_root.getBytesTotal())); 
bis dann,
querkopf
__________________
Alles ist wie immer. Nur schlimmer.
querkopf ist offline   Mit Zitat antworten
Alt 07-12-2006, 11:59   #10 (permalink)
Neuer User
 
Registriert seit: Dec 2003
Beiträge: 214
Smile super - danke .. es geht!!!!

Super vielen dank

für alle dies es interessiert hier die komplette lösung:

1. ein textfeld erstellen und den Variablennamen "zaehler" verpassen.

2. dann nur noch folgendes AS in den ersten frame packen:

_root.onEnterFrame = function ()
{
zaehler = int(Math.round(10 - 10*_root.getBytesLoaded()/_root.getBytesTotal()));
if (zaehler == 0)
{
delete _root.onEnterFrame;
gotoAndStop("Scene 1");
}

}


3. ... und die sache läuft!!!

[Es ist nicht alles Holz was glänzt]
Mirco Gutschmid ist offline   Mit Zitat antworten
Alt 07-12-2006, 12:19   #11 (permalink)
Dumm lebt länger
 
Benutzerbild von Vampire's Party
 
Registriert seit: Jan 2004
Ort: Sachsen
Beiträge: 425
Da gibts nur noch ein Problem: du rundest die Variable "zaehler" auf. Daher springt das Script schon bei 95% zur Szene, auch wenn der Film noch nicht komplett geladen ist.

Math.round (0.95 / 1) == 1

oder konkreter:

int(Math.round(10 - 10*0.95/1)) == 0
__________________
Blog
Vampire's Party ist offline   Mit Zitat antworten
Alt 07-12-2006, 13:15   #12 (permalink)
will code HTML for food
 
Benutzerbild von querkopf
 
Registriert seit: Mar 2003
Beiträge: 1.232
Jo, stimmt.

Nimm besser Math.floor()....

Bis dann,
querkopf
__________________
Alles ist wie immer. Nur schlimmer.
querkopf ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 03:52 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele