Solved

need help with preload animation in flash

Posted on 2007-04-04
12
264 Views
Last Modified: 2010-04-03
i'm working on a flash movie and i'd like a preload animation (something that says "loading").  i put a movie clip of the animation i want in the first frame on a layer.  the rest of the movie starts on frame 3.  then i tried two things.  first i tried putting this as an action on the first frame:
ifFrameLoaded(_totalframes){
 gotoAndPlay(3);
}

and this on the 2nd frame:
gotoAndPlay(1);

that didn't work so i tried putting this on the 2nd frame and nothing on the first:
if (_framesloaded < _totalframes) {
    gotoAndPlay(1);
} else {
    gotoAndStop(3);
}
i also put stop(); on the 3rd frame.  i tried this method with "this." in front of everything as well.

for both, when i did control > text movie, the preload animation wouldn't play at all.  and then when i pressed rewind, it would play indefinitely and the actual movie would never load.

what am i doing wrong?

thanks.
0
Comment
Question by:vee417
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 4
  • 3
12 Comments
 
LVL 23

Expert Comment

by:Zeffer
ID: 18855857
your second one would work if you put it on frame 1 and changed the 'if'  statement to ..   >=    (greater than or equal to)... instead of..   <   .. (less than).

frame 1

if (_framesloaded >= _totalframes) {
    gotoAndPlay(1);
} else {
    gotoAndStop(3);
}

frame 2

gotoAndPlay(2);

just a note .. totalframes is now deprecated... in favour of bytesLoaded

so if you used the current format it would be..

frame 1
if (bytes_loaded >= bytes_total) {
      gotoAndPlay(1);
} else {
    gotoAndStop(3);
}

frame 2

gotoAndPlay(1);


Z


0
 
LVL 23

Expert Comment

by:Zeffer
ID: 18855862
first example ..on frame 2 should say..gotoAndPlay(1);

Z : )
0
 

Author Comment

by:vee417
ID: 18855897
are you sure you've got the >= part right?  if they're equal, shouldn't it gotoAndStop(3) and not gotoAndPlay(1) ?  also, bytes_loaded didn't seem to be a variable but bytesLoaded is i think.

anyway, i tried it both the way you have it and with changing >= and bytesLoaded.  neither worked.. i got the same problem as before in both cases.  i really don't get it, it seems like this should work.
0
SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

 
LVL 3

Expert Comment

by:ieciep
ID: 18855997
It should be

frame 1:
----------

if (_framesloaded >= _totalframes)
{
    gotoAndPlay(3);
}
else
{
    gotoAndPlay(1);
}

frame 2:
----------

gotoAndPlay(1);

i think Zeffer have mistakenly written gotoAndPlay(1) if _framesloaded are >= _totalframes.

Regards,
Riz
0
 

Author Comment

by:vee417
ID: 18856056
still no luck :(

maybe it's the movie tester that's the problem?  or maybe i need to put some actions in the movie clip that's on the first frame?
0
 
LVL 3

Expert Comment

by:ieciep
ID: 18856092
hmmm ... try this

frame 1:
----------
if(_root.getBytesLoaded()<_root.getBytesTotal())
{
    gotoAndPlay(1);
}
else
{
    gotoAndPlay(3);
}

frame 2:
----------

gotoAndPlay(1);
0
 
LVL 3

Expert Comment

by:ieciep
ID: 18856110
or just simply write

frame 1:
----------
if(getBytesLoaded()<getBytesTotal())
{
    gotoAndPlay(1);
}
else
{
    gotoAndPlay(3);
}
0
 

Author Comment

by:vee417
ID: 18856190
still repeats the preload animation indefinitely when i click rewind :( .  there must be something wrong besides the code on the first 2 frames.

when i open up the animation normally (not in control > test movie), it works fine but the preload animation doesn't show up at all.  perhaps this is because it loads too quickly.  so maybe the issue is with the movie tester.  but then how should i test the preload animation?
0
 
LVL 3

Expert Comment

by:ieciep
ID: 18856234
testing preloading:
----------------------

control > test movie

during testing...
goto View>Download Settings> 14.4
goto View>Simulate Download
0
 

Author Comment

by:vee417
ID: 18857841
yeah.. that's what i've been doing.  yet whatever code i put it just doesn't work.
0
 
LVL 23

Accepted Solution

by:
Zeffer earned 125 total points
ID: 18860117
thanks Riz.. yes stuffed that up..small error in yours as well..
----------
if(getBytesLoaded()<getBytesTotal())
{
    gotoAndPlay(1);  //  the player is not moving off frame 1

so vee try..
frame1..

if(this.getBytesLoaded()==this.getBytesTotal()){
    gotoAndPlay(3);
}

frame2
gotoAndPlay(1);

Z



0

Featured Post

SharePoint Admin?

Enable Your Employees To Focus On The Core With Intuitive Onscreen Guidance That is With You At The Moment of Need.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

This article describes a solution to a problem of subloading one movie into another when they have different SWF versions. Sometime back, I was working on an ActionScript project while I came across an interesting fact which I would like to share…
In my long career of working as an actionscript developer, I had spent sleepless night often working hard to solve some small problems which actually took a lot of my development time; later found out the solutions to be a line or two. Here are s…
The goal of the tutorial is to teach the user how to select the video input device. Make sure you have an input device that in connected and work and recognized by Adobe Flash Media Live Encoder and select it in the “video input” menu.
This Micro Tutorial will teach to how to utilize bit rate in Adobe Flash Media Live Encoder.

738 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question