Stopping external swf's with no timeline

Hey!
I just released my portfolio at http://www.hyperactive.se/ which consists of a lot of externally loaded swf's (progressive banners). These swf's contains no timeline really, just one keyframe with an imported FLV. I don't have the source files so I need to control these from my Main flash file.
As these external swf's are auto-playing, I would like it to be user initiated instead, so the users click on a button and it plays. But commands like "loader.stop()", "gotoAndPlay" etc. doesn't seem to work obviously. Anyone know a solution for this?

What do you mean by "you'll need to know what's inside the loaded swfs"? there's not much in there, just a video. Then I guess I maybe have to probe.. is this the post? http://forums.adobe.com/message/2017776

Similar Messages

  • Loaded SWF communicating with Main Timeline

    Let's say I load an external SWF to my main timeline. In that
    loaded SWF, I'd like to have a button that when clicked, removes a
    Movie Clip from the main timeline.
    How do I do that? Should be simple, right?

    Sorry I misunderstood your question, but here is the code.
    The second part is original swf altering a movie clip in the
    external (mov2.swf), just making an mc 50% transparent....
    circle_btn.addEventListener(MouseEvent.CLICK, printButton);
    function printButton(myevent:MouseEvent){
    var portLoader:Loader=new Loader();
    var printThumbRequest:URLRequest=new URLRequest("mov2.swf");
    portLoader.load(printThumbRequest);
    stage.addChild(portLoader);
    portLoader.contentLoaderInfo.addEventListener(Event.COMPLETE,
    loaded);
    function loaded(event:Event) {
    circle2_btn.addEventListener(MouseEvent.CLICK,
    talkToExternal);
    function talkToExternal(myevent:MouseEvent){
    event.target.content.green_mc.alpha=.5;
    }

  • AS3 loading external swf files with buttons from inside a movieclip

    In my main .swf I have labels on the timeline, navs for those btns are on the first frame of the AS layer and each button sends the playhead to a different frame.
    On one frame called fr1 there is an mc called mc_1 that appears on stage when the playhead stops there. Inside mc_1 are a set of navigation buttons that need to call external .swfs.
    Do I add event listeners on the last frame of mc_1 for each button?
    how do I call the loaders for the swfs on the buttons since the swfs will load on the main timeline NOT the mc_1 timeline?
    So label on main timeline called fr1 will load external1 swf , on fr10 external 2.swf will load and so on.
    any help?

    The code for that button's event listener needs to be placed wherever it has direct access to the button.  Not necessarily on the same timeline, but in a place where both the button and the code are present at the same time.
    The code could be placed at the frame in the main timeline where the movieclip with the button(s) is, targeting the buttons via the movieclip (mc.button.addEvemtListener...) , unless the buttons are somewhere down the timeline of that movieclip.
    If they are down the timeline of that movieclip, then you would need to have the event listener also inside the movieclip, down its timeline where the buttons are finally settled in... being sure to assign instance names to the buttons at every keyframe.

  • Stopping external SWF when new SWF is loaded

    Ok.... hmmmmm. I am currently working on a flash site that
    loads external SWFs for each page. one of the SWFs contains a
    sitepal movie. the sitepal has been coded to stop playing and
    unload on a frame change but it keeps playing when a link in the
    index is clicked and another SWF comes in. (in other words there is
    no frame change. the new SWF loads but the old one keeps playing)
    make sense?
    I just need the site pal to stop playing when the next SWF
    loads!
    each link on the bottom is part of the main.swf
    (index.swf)...
    I need the links on the bottom to "turn off" the SWF when a
    new page is choosen. the External SWFs are labled 1-5....
    attached is a simple diagram in .jpg format explaining the
    functionality of the site!
    any insight is appreciated...
    PS
    IM NO CODE MONKEY.... more of a point-click, copy-paste type
    o dude..

    HI,
    My files loads an external swf (containing the video) into a
    container on my stage. The loaded swf contains the embedded wmv
    movie file, which is quite large I might add. Do I need to cut file
    size or change to flv?
    thanks again.

  • Including external swf file with preloader in main swf file

    I'm creating a flash 3d website for a company. The idea is
    that there is one overall swf file - this holds the navigation and
    design. Once the user clicks on a button, it goes to frame 10, I
    have included the following script to load a swf file
    loadMovie("deepbartesting.swf", maincontent);
    this.onEnterFrame=function(){
    if(movieClipName._currentframe==5){
    movieClipName.stop();
    delete this.onEnterFrame;
    my problem is that this file is around 3mb. I created a
    preloader with it, with the code
    onClipEvent (load) {
    total = _root.getBytesTotal();
    } onClipEvent (enterFrame) {
    loaded = _root.getBytesLoaded();
    percent = int(loaded/total*100);
    percen101 = ""+percent+"%";
    gotoAndStop(percent);
    if (loaded == total) {
    _root.gotoAndPlay(2);
    the preloader works, but instead of going to frame 2 of that
    swf file, it goes to frame 2 of the overall swf that holds the
    navigation. Does anyone know how to get around this so that it goes
    to frame 2 in the same swf file as the preloader?
    Thanks for your help

    instead of _root, use this._parent (if your preloader is on
    its main timeline).

  • Stopping External SWF?

    I am having a problem manipulating a loaded swf. I would like it to load, play once and not continue until told to.
    I have looked around the web and have gotten confused.
    I have been using a loader, but I have read that to controll a time line you need a movieclip(?)
    so I had created an empty mc, and placed the loader with the swf in the mc.
    that worked
    Trying to get controll of the swf..thats the problem...Not sure how
    Can anybody help

    You'll need to add a listener to wait for the file to load before you try to address/assign it.
    var showswf:Loader= new Loader;
    var swfLocation:URLRequest = new URLRequest("");
    showswf.contentLoaderInfo.addEventListener(Event.COMPLETE, loadComplete);
    showswf.load(swfLocation)
    addChild(showswf);
    var loadedSWF:MovieClip;
    function loadComplete(e:Event):void {
         loadedSWF = MovieClip(e.currentTarget.content);

  • Controlling multiple external swfs from main timeline

    Hi, I've been trying to combine the features of two tutorials I found, one that deals with controlling external swf's from the main timeline and the other that explains how to load and unload multiple external swf's.  I'd like to be able to load and unload multiple external swf's, and control these swf's buttons from the main timeline. 
    I asked this same question on the forum of the site where I found these tutorials, and receive only one reply saying that "it should'nt be hard to do." but they did not elaborate any further.  This left me think that I was missing something very obvious and I've spent too much time now trying to work what it is now.  I understand pretty much how both pieces of code work, but just can't work out how to combine them.
    If someone could explain it to me, I'd much appreciate it.
    Tutorial One code - controlling an external swf from the main timeline.
    var ldr:Loader = new Loader();
    var urlReq:URLRequest = new URLRequest("swfs/balls.swf");
    ldr.load(urlReq);
    function loadHandler (event:Event) {
    var myClip:MovieClip = event.target.content;
    addChild(myClip);
    function myClipOver(event:MouseEvent):void {
    myClip.myBlueBalls.stop();
    function myClipOut(event:MouseEvent):void {
    myClip.myBlueBalls.play();
    // set listeners
    myClip.addEventListener(MouseEvent.ROLL_OVER, myClipOver);
    myClip.addEventListener(MouseEvent.ROLL_OUT, myClipOut);
    // listener
    ldr.contentLoaderInfo.addEventListener(Event.COMPLETE, loadHandler);
    Tutorial Two code - loading and unloading multiple external swfs.
    var Xpos:Number = 110;
    var Ypos:Number = 180;
    var swf:MovieClip;
    var loader:Loader = new Loader();
    var defaultSWF:URLRequest = new URLRequest("swfs/eyesClosed.swf");
    loader.load(defaultSWF);
    loader.x = Xpos;
    loader.y = Ypos;
    addChild(loader);
    // Btns Universal function
    function btnClick(event:MouseEvent):void {
    removeChild(loader);
    var newSWFRequest:URLRequest = new URLRequest("swfs/" + event.target.name + ".swf");
    loader.load(newSWFRequest);
    loader.x = Xpos;
        loader.y = Ypos;
    addChild(loader);
    // Btn listeners
    eyesClosed.addEventListener(MouseEvent.CLICK, btnClick);
    stingray.addEventListener(MouseEvent.CLICK, btnClick);
    demon.addEventListener(MouseEvent.CLICK, btnClick);
    strongman.addEventListener(MouseEvent.CLICK, btnClick);

    I will not be able to help you with whatever relaxatraja provided though it is purported by relaxatraja to be clearly explaining what I was explaining (???).
    Your loadHandler function appears a bit confused.  For the code you show I don't see you assigning any event listeners for the events that will be dispatched in the loaded file.  As I showed earlier, your loadHandler function should be assigning a listener for the event that will be dispatched (modified slightly below). and if you have three different events being dispatched in the loaded file, then you'll do better to have three different listeners.  I show only one below for one of the events you dispatch...
    function loadHandler (event:Event) {
      // assign a listener for the loaded file's goExit function's event
       MovieClip(event.currentTarget.content).addEventListener("close", event1Handler);
    // I can't make sense of what you have here
        removeChild(myClip); // why ?? - it hasn't been added yet as far as I can see - error 2007?
        var newSWFRequest:URLRequest = new URLRequest("swfs/" + event.target.name + ".swf"); // the event.target is the Loader
        ldr.load(newSWFRequest); // this will load over the file you just finished loading??
        ldr.x = Xpos;
        ldr.y = Ypos;
        addChild(myClip);  // why?? it has nothing in it
    function event1Handler(e:Event):void {
        // do whatever is involved with what the "close" event is supposed to do
        trace("goExit function executed");
    As far as what you have in the loaded file, you appear to be trying to pass the files names as if they were parameters.  The file naming should be done at the receiving side for the event handler function for the event listener.  While you could create a custom event that include parameters that you can pass, that's another level of coding that is better left for a future experience.
    Study the following - understand it before you try to use it.
    Below is a link to some files I made for another posting that demonstrates what I have been explaining.  The neurope file is the main file.  Publish the netherlands file so that you have an swf to load for it, and then run the neurope file.  The file that gets loaded (netherlands) only has a button in it that when clicked dispatches an event for which the main file (neurope) has assigned a listener.  The main file displays a message when the button gets clicked in the loaded file.
    http://www.nedwebs.com/Flash/neurope.zip

  • Control mc with external SWF?

    Hello everyone,
    Ok, lets say I have two SWF files.
    In “SWF 1,” I have a movie clip.
    The movie clip in “SWF 1” loads in an external “SWF 2” file.
    Is it possible for me to have something (like a button) inside the external “SWF 2” with the ability to control something (like a movie clip) in “SWF 1?”
    If so what would the path to that mc look like?
    Thanks

    if both are as2 swfs, then you can reference the load-target movieclip in swf1 (the loading swf) from the main timeline of swf2 (the loaded swf) by using:
    this.
    so, if that load-target is on swf1's main timeline, you can reference swf1's main timeline by using:
    this._parent.
    and if there's a movieclip mc on swf1's main timeline, you can reference it by using:
    this._parent.mc1.
    etc.

  • Enabling Parent button while external swf is loaded [AS3]

    Hello everyone,
    I am very new to Flash and it takes me a while to understand what code is trying to tell me
    The problem I am currently facing is as follows:
    After searching the net for hours I finally figured out, how to load an external swf into my main timeline. As far as I understand this main timeline is the "parent". Hence the loaded, external swf should be the "child" (a quiz).
    Now the child (a quiz) loads into the flash file and is played properly, but I cannot access the button on the parent anymore. Unfortunately, I really need the home button on the parent to exit the quiz and allow for new navigation within the flash document.
    I would greatly appreciate any help.
    Thank you all in advance.
    Kliph
    my AS3 Code:
    import flash.events.MouseEvent;
    function onClick611 (event:MouseEvent) :void
            gotoAndPlay("home_einf")
    home_btn.addEventListener (MouseEvent.CLICK, onClick611);
    import flash.net.URLRequest;
    import flash.display.Loader;
    import flash.events.Event;
    import flash.events.ProgressEvent;
    function startLoad()
        var mLoader:Loader = new Loader();
        var mRequest:URLRequest = new URLRequest("quiz.swf");
    mLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onCompleteHandler);
    mLoader.contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS, onProgressHandler);
    mLoader.load(mRequest);
    function onCompleteHandler(loadEvent:Event)
    addChild(loadEvent.currentTarget.content);
        function onProgressHandler(mProgress:ProgressEvent)
        var percent:Number = mProgress.bytesLoaded/mProgress.bytesTotal;
    trace(percent);
    startLoad();
    stop();

    By simply using addChild like you have, you're placing the loaded content above everything on the display list - covering your button. There are a few ways to solve. The easiest, if it works for you, is to just make a new layer in your timeline - make it the top most layer, and place your home button in that layer.
    Then change your addChild line from:
    addChild(loadEvent.currentTarget.content);
    to:
    addChildAt(loadEvent.currentTarget.content, numChildren - 2);
    This will place the loaded content behind the button.
    Alternatively, you can set the button to export for AS and then add it after you add the loaded file. Or you can use content containers - empty sprites that you add first, and then fill with other objects, in order to control layering.

  • Var doesn't work if I load external swf.

    I have a set up with two pages or labeled sections on the main timeline. I brake the code corresponding to actions happening in each page/labeled section. On first page there is a var specified for each button
    var sourceVar:String;
    Then each button uses this var to load a video into FLV player (player itself is constructed in the second page/labeled section).
    function JTV_SatelliteCenterpiece_PlayVideoPopUp(event:MouseEvent): void {
        sourceVar="howto_popups/jtvs18w12_LG30.flv";
        gotoAndPlay("flv_pb");
    where "flv_pb" is the label for the second page/labeled section. On this second page/labeled section there is an FLVPlayback component named "SWF_flv2" which uses this var
    SWF_flv2.source = sourceVar;
    All above works. My problem is that I decided to load externally all the items (image buttons) into the first section. So I saved them as an external SWF file, with all the code in that external swf file.
    Then I link the buttons to section "flv_pb" this way:
    function JTV_SatelliteCenterpiece_PlayVideoPopUp(event:MouseEvent): void {
        MovieClip(parent.parent.parent).sourceVar="howto_popups/jtvs18w07_LG30.flv";
        MovieClip(parent.parent.parent).gotoAndPlay("flv_pb");
    The link to the "flv_pb" section works, which tells me that the set up with "MovieClip(parent.parent.parent)." is appropriate.
    However the code as before with the set up of (still being in the external swf file):
        sourceVar="howto_popups/jtvs18w12_LG30.flv";
        gotoAndPlay("flv_pb");
    works as well, I am not sure why?
    The problem seems to be in the var
    I have an error message 1120: Access of undefined property sourceVar
    It is referencing the code in the second page/labeled section "flv_pb"
    SWF_flv2.source = sourceVar;
    What are my actions?  I kept the code in the external swf file. Should I move it to the main timeline if it is possible? Should I only reference the var in the main time line?
    Should all the code be kept in the beginning of the time line, rather be sectioned into the sections?

    Thank you for your reply.
    Please let me know if all the animation code should be left in the external SWF file (which is being loaded) and all the linkage code on the main time line?
    If so then the code block specifying the link and loading on the botton:
    var sourceVar:String;
    //JTV_SatelliteCenterpiece_btn////////////////////////////////////////////////////
    //event listener//
    howTo_mainInfo.JTVs.JTV_SatelliteCenterpiece_btn.addEventListener(MouseEvent.CLICK, JTV_SatelliteCenterpiece_PlayVideoPopUp);
    function JTV_SatelliteCenterpiece_PlayVideoPopUp(event:MouseEvent): void {
        //MovieClip(parent.parent.parent).sourceVar="howto_popups/jtvs18w07_LG30.flv";
        sourceVar="howto_popups/jtvs18w07_LG30.flv";
        gotoAndPlay("flv_pb");
    Should be left as it is on the main time line or only the function part and event listener put in the external SWF file?
    I tried this way puttin the var and function on the main time line and it brings me to the proper page/labeled section but doesn't load the video.
    In the OUTPUT Panel I have an error message:
    VideoError: 1000: Unable to make connection to server or to find FLV on server
        at fl.video::VideoPlayer/stop()
        at fl.video::FLVPlayback/stop()
        at acolyte46_howTo_Loader_fla::mainsite_mc_2/stopF2()[acolyte46_howTo_Loader_fla.mainsite_mc _2::frame283:49]
        at flash.display::MovieClip/gotoAndPlay()
        at acolyte46_howTo_Loader_fla::mainsite_mc_2/onClick_closeXhowToVideos_btn()[acolyte46_howTo _Loader_fla.mainsite_mc_2::frame283:28]
    Frame 283 is "flv_pb" page/labeled section to where the links properly works but video is not being loaded?
    Same code perfectly worked without any error message before I moved things into an external SWF file.
    I am also confused why both ways are working out of the loaded SWF file:
        MovieClip(parent.parent.parent).sourceVar="howto_popups/jtvs18w07_LG30.flv";
    and
        sourceVar="howto_popups/jtvs18w07_LG30.flv";
    shouldn't only one be the correct one?

  • Control external SWF file?

    Is it possible to control an external SWF file with buttons
    on the main clip?
    I have an external SWF loading into the stage, but I wanted
    to control "play" "stop" and "goto" with buttons outside that
    SWF.

    I need to do the same thing, but i get an error.
    TypeError: Error #1009: Cannot access a property or method of
    a null object reference.
    at page2sub1page1_fla::MainTimeline/frame1()
    TypeError: Error #1034: Type Coercion failed: cannot convert
    flash.display::AVM1Movie@3dcb7359 to flash.display.MovieClip.
    at page2sub1page1_fla::MainTimeline/finished_loading()
    here is my code:
    var external:MovieClip;
    //LOADER//
    var request:URLRequest = new URLRequest("slideshow.swf");
    var loader:Loader = new Loader();
    loader.contentLoaderInfo.addEventListener(flash.events.Event.COMPLETE,
    finished_loading);
    loader.load(request);
    function finished_loading(e:Event) {
    external = MovieClip(loader.content);
    LoadMov.addChild(external);
    external.my_ssp.xmlFilePath="images.xml";
    why do i get that error?

  • Loading external .swf files issue...

    Hi,
    I'm working on a simple example of loading external swf files with some ActionScript.
    I've placed an instance of List Component and gave it an instance name of loadList. Using Component Inspector, I assigned data for 4 external files as below:
    Next, I've added a UILoader component (instance name - loadWindow). The code that is supposed to load the content into UILoader is this:
    loadList.addEventListener(Event.CHANGE, selectItem);
    function selectItem(e:Event):void
        loadWindow.source = e.target.selectedItem.data;
    When I run it in a FlashPlayer, it only loads the first 2 swf files....  (I checked the files and all files are fine).
    I hope to get some light on the issue so any help will be appreciated.

    Try tracing e.target.selectedItem.data to make sure it's what you expect.
    Also, have you tried using the load() method instead of the source property?

  • How can I stop timeline sounds in external swf files from playing during loading?

    I am having a problem with timeline sounds in external swf files playing during loading in a main swf. Can anyone help me?
    Here is some of the code from the main swf. I hope I have included enough.
    Thanks.
    import flash.events.MouseEvent;
    import flash.display.MovieClip;
    import flash.display.Loader;
    import flash.events.ProgressEvent;
    import flash.events.Event;
    import flash.net.URLRequest;
    import fl.events.SliderEvent;
    import flash.media.SoundTransform;
    preloader_mc.fill_mc.scaleX = 0;
    var swfA:Array = ["part1.swf","part2.swf"];
    var frameA:Array = [];
    var currentLoader:Loader;
    var swfTotalFrames:int;
    var tl:MovieClip = this;
    var st:SoundTransform = new SoundTransform()
    var index:int = 0;
    loadNextF();
    play_slider.enabled = false;
    function loadNextF():void{
                    tl["loader_"+index] = new Loader();
                    tl["loader_"+index].name = index.toString();
                    tl["loader_"+index].contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,progressF);
                    tl["loader_"+index].contentLoaderInfo.addEventListener(Event.COMPLETE,completeF);
                    tl["loader_"+index].load(new URLRequest(swfA[index]));
    function progressF(e:ProgressEvent):void{
                    var fractionLoaded:Number = index/swfA.length+e.bytesLoaded/(e.bytesTotal*swfA.length);
                    preloader_mc.fill_mc.scaleX = fractionLoaded;
                    preloader_mc.tf.text = (100*fractionLoaded)+"% Loaded";
    function completeF(e:Event):void{
                    tl["loader_"+index].contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS,progress F);
                    tl["loader_"+index].contentLoaderInfo.removeEventListener(Event.COMPLETE,completeF);
                    SoundMixer.stopAll();
                    var mc:MovieClip = MovieClip(tl["loader_"+index].content);
                    mc.gotoAndStop(1);
                    frameA.push(mc.totalFrames);
                    index++;
                    if(index<swfA.length){
                                    loadNextF();
                    } else {
                                    // all loads complete.  start play.
                                    restart_mc.buttonMode = true;
                                    restart_mc.alpha = 1;
                                    tl.addEventListener(Event.ENTER_FRAME,playUpdateF);
                                    tl.removeChild(preloader_mc);
                                    preloader_mc = null;
                                    play_slider.enabled = true;
                                    playpause_mc.alpha = 1;
                                    currentLoader = tl["loader_0"];
                                    tl.addChild(currentLoader);
                                    MovieClip(currentLoader.content).play();
                                    sliderParamsF();

    import flash.events.MouseEvent;
    import flash.display.MovieClip;
    import flash.display.Loader;
    import flash.events.ProgressEvent;
    import flash.events.Event;
    import flash.net.URLRequest;
    import fl.events.SliderEvent;
    import flash.media.SoundTransform;
    preloader_mc.fill_mc.scaleX = 0;
    var swfA:Array = ["part1.swf","part2.swf"];
    var frameA:Array = [];
    var currentLoader:Loader;
    var swfTotalFrames:int;
    var tl:MovieClip = this;
    var st:SoundTransform = new SoundTransform()
    var index:int = 0;
    loadNextF();
    play_slider.enabled = false;
    function loadNextF():void{
        tl["loader_"+index] = new Loader();
        tl["loader_"+index].name = index.toString();
        tl["loader_"+index].contentLoaderInfo.addEventListener(ProgressEvent.PROGRESS,progressF);
        tl["loader_"+index].contentLoaderInfo.addEventListener(Event.COMPLETE,completeF);
        tl["loader_"+index].load(new URLRequest(swfA[index]));
    function progressF(e:ProgressEvent):void{
        var fractionLoaded:Number = index/swfA.length+e.bytesLoaded/(e.bytesTotal*swfA.length);
        preloader_mc.fill_mc.scaleX = fractionLoaded;
        preloader_mc.tf.text = (100*fractionLoaded)+"% Loaded";
    function completeF(e:Event):void{
        tl["loader_"+index].contentLoaderInfo.removeEventListener(ProgressEvent.PROGRESS,progress F);
        tl["loader_"+index].contentLoaderInfo.removeEventListener(Event.COMPLETE,completeF);
        SoundMixer.stopAll();
        var mc:MovieClip = MovieClip(tl["loader_"+index].content);
        mc.gotoAndStop(1);
        frameA.push(mc.totalFrames);
        index++;
        if(index<swfA.length){
            loadNextF();
        } else {
            // all loads complete.  start play.
            restart_mc.buttonMode = true;
            restart_mc.alpha = 1;
            tl.addEventListener(Event.ENTER_FRAME,playUpdateF);
            tl.removeChild(preloader_mc);
            preloader_mc = null;
            play_slider.enabled = true;
            playpause_mc.alpha = 1;
            currentLoader = tl["loader_0"];
            tl.addChild(currentLoader);
            MovieClip(currentLoader.content).play();
            sliderParamsF();
    ///////////////// start sliders /////////////////////////////////
    sound_slider.addEventListener(SliderEvent.CHANGE,soundSliderF);
    function soundSliderF(e:SliderEvent):void{
        st.volume = e.value/100;
        tl.soundTransform = st;
    play_slider.addEventListener(SliderEvent.CHANGE,playSliderF);
    play_slider.addEventListener(MouseEvent.MOUSE_DOWN,playSliderDownF);
    //play_slider.addEventListener(MouseEvent.MOUSE_UP,playSliderUpF);
    function playSliderDownF(e:MouseEvent):void{
        tl.removeEventListener(Event.ENTER_FRAME,playUpdateF);
        stage.addEventListener(MouseEvent.MOUSE_UP,playSliderUpF);
    function playSliderUpF(e:MouseEvent):void{
        tl.addEventListener(Event.ENTER_FRAME,playUpdateF);
    function playSliderF(e:SliderEvent):void{
        SoundMixer.stopAll();
        var frameNum:int = Math.ceil(swfTotalFrames*e.value/100);
        var partialTotalFrames:int = 0;
        for(var i:int=0;i<frameA.length;i++){
            partialTotalFrames += frameA[i];
            if(partialTotalFrames>=frameNum){
                break;
        partialTotalFrames -= frameA[i];
        //trace(i,frameNum,frameNum-partialTotalFrames);
        if(currentLoader!=tl["loader_"+(i)]){
            tl.removeChild(currentLoader);
            MovieClip(currentLoader.content).stop();
            currentLoader = tl["loader_"+(i)];
            tl.addChild(currentLoader);
        if(playpause_mc.currentFrame==1){
            MovieClip(currentLoader.content).gotoAndPlay(frameNum-partialTotalFrames);
        } else {
            MovieClip(currentLoader.content).gotoAndStop(frameNum-partialTotalFrames);
    function sliderUpdateF(e:Event):void{
        var playedFrames:int = 0;
        for(var i:int=0;i<Number(currentLoader.name);i++){
            playedFrames += frameA[i];
        playedFrames += MovieClip(currentLoader.content).currentFrame;
        play_slider.value = Math.round(100*playedFrames/swfTotalFrames);
    function sliderParamsF():void{
        swfTotalFrames = 0;
        for(var i:int=0;i<swfA.length;i++){
            swfTotalFrames += MovieClip(tl["loader_"+i].content).totalFrames;
    ///////////////// end  sliders //////////////////////////////////
    ///////////////// start playpause restart ///////////////////////
    playpause_mc.addEventListener(MouseEvent.CLICK,playpauseF);
    playpause_mc.alpha = .2;
    restart_mc.addEventListener(MouseEvent.CLICK,restartF);
    restart_mc.buttonMode = false;
    restart_mc.alpha = .2;
    function playpauseF(e:MouseEvent):void{
        if(!e.currentTarget.toggle){
            MovieClip(currentLoader.content).stop();
            tl.removeEventListener(Event.ENTER_FRAME,playUpdateF);
            e.currentTarget.gotoAndStop(2);
        } else {
            MovieClip(currentLoader.content).play();
            tl.addEventListener(Event.ENTER_FRAME,playUpdateF);
            e.currentTarget.gotoAndStop(1);
        e.currentTarget.toggle = !e.currentTarget.toggle;
    ///////////////// end playpause //////////////////////////////
    function playUpdateF(e:Event):void{
        sliderUpdateF(e);
        var playingFrame:int = MovieClip(currentLoader.content).currentFrame;
        if(playingFrame==frameA[Number(currentLoader.name)]){
            // next loader
            MovieClip(currentLoader.content).stop();
            SoundMixer.stopAll();
            MovieClip(currentLoader.content).mute();
            var nextIndex:int = Number(currentLoader.name)+1;
            if(nextIndex<swfA.length){
                tl.removeChild(currentLoader);
                currentLoader = tl["loader_"+nextIndex];
                tl.addChild(currentLoader);
                MovieClip(currentLoader.content).gotoAndPlay(1);
            } else {
                tl.removeEventListener(Event.ENTER_FRAME,playUpdateF);
                playpause_mc.gotoAndStop(2);
                playpause_mc.toggle = !playpause_mc.toggle;
                //playpause_mc.alpha = .2;
                // all swfs have completed play
    function restartF(e:MouseEvent):void{
        MovieClip(currentLoader.content).stop();
        tl.removeChild(currentLoader);
        SoundMixer.stopAll();
        MovieClip(currentLoader.content).mute();
        currentLoader = tl["loader_"+0];
        tl.addChild(currentLoader);
        if(playpause_mc.currentFrame==1){
            MovieClip(currentLoader.content).gotoAndPlay(1);
        } else {
            MovieClip(currentLoader.content).gotoAndStop(1);

  • How to control timeline sound of external SWF

    Hi All,
    Basic Intro:
    I am new in Action Script and trying to create a video tutorial framwork. In this I have lots of animated SWF files in all the files I have multiple scenes as those are 5min. to 10 min. each and all the files have the relevent background and nurration voice place directly on the TIMELINE frame by frame to match lip syncing animated chreactors.
    My file structure :
    Login.swf with login box is embedded into the Index.html
    After logged in it will load another SWF which is Control panel.swf
    3. Controlpanel.swf has the controls to control the loaded external swf files i.e.: Chapter menu, Play, pause, replay, volume-bar, next and previous buttons.
    By Default Controlpanel.swf will open chapter1.swf as soon as user logged in so no one need to open 1st file.
    Here user can navigate to other chapter swf file through Chapter menu or Next and Previous buttons.
    All files are loading and playing properly, here I am trying to control the animation and Sound both at a same time with Pause, Play and Replay through relevant buttons.
    Problem:
    By pressing “Pause button” animation stops but not the sound. Sound remains playing, and if I replay the swf by “Replay button” than animation restarts but sound also restarts that overlaps already playing audio.
    Question: So could anybody help me finding out how to:
    1. Pause the sound with animation by the same click of Pause button, and
    2. Stop the sound with animation by the same click of Stop button, and
    3. On replay it should stop playing the previously running audio and restart it with the animation like fresh loaded file, it should not sound overlapping.
    Constraints:
    Here I am using the sound file on the same time line of each individual swf file which I cannot add into any single movie clip because all the chapter swf file are having multiple scenes in it.
    For my problem I have already done a lot of browsing online in various forums and didn't find the solution. So here I am sharing the complete information regarding the project and wishing to get some good solution out here but if I missed any helpful information please ask me anytime and please help me to quickly find out the solution.
    Thanks a lot to all of you in advance to help me.

    create one global sound variable
    you can write when you are pressing pause button
    globalsoundvariable.setVolume(0)
    to play
    globalsoundvariable.setVolume(100)

  • How to detect external SWF has stopped not using totalFrames

    Trying to find a way to detect when an externally loaded SWF has stopped. Using "totalFrames" like the example below doesn't work for what I'm trying to accomplish.
    I need something that simply listens and detects when the clip has stopped. Editing the external SWF is not an option. Thanks in advance for any insight.
    function onfrm( evnt: Event ): void
    if (newMC.currentFrame == newMC.totalFrames )
    newMC.removeEventListener( Event.ENTER_FRAME, onfrm);
    trace("End of banner");

    Just did a small test, and at least with loading a swf that has a timeline the totalFrames option works fine:
    var m:MovieClip;
    var a:Loader = new Loader();
    a.contentLoaderInfo.addEventListener(Event.COMPLETE, done);
    a.load(new URLRequest("anim.swf"));
    function done(e:Event):void
      m = MovieClip(a.content);
      m.addEventListener(Event.ENTER_FRAME, chek);
      addChild(m);
    function chek(e:Event):void
      if(m.currentFrame == m.totalFrames){
      trace("done");
      m.removeEventListener(Event.ENTER_FRAME, chek);

Maybe you are looking for

  • Stack Overflow Exception in EJB Explorer

    Hello everyone! I have correct working EJB which returns in one method and JPA Entity that have bidirectional relationship with other entity. This relationship is @OneToMany and @ManyToOne on other side and all of the related objects are loaded befor

  • Problem opening PDF attachments

    When I try to open some PDF attachments from Mail, I get a blank screen.  If I try to open the same attachment in a program like Good Reader, I get a message that the file is not valid.  I can however open the file from Microsoft Outlook without any

  • How can I increase the number of sites shown in the location bar dropdown? No matter how much I go to a site, I can't get more than 5 to show.

    I cleared all history. Now I am only able to get 5 sites in the location bar dropdown.

  • Tandberg Duo Video

    Hi, We are having a major issue with this H.239 implementation from Tandberg called Duo Video. For those that don't know, it's the ability to put a presentation from the PC side-by-side or Picture-in-Picture with a Videoconference. The problem we are

  • Unpivot statement in oracle

    I have the following source table and i want to convert the columns into rows. Source Table: EmpID address1 address2 address3 address4 address5 100 A ST. B ST. C ST. D ST. E ST. 200 F ST. G ST. H ST. I ST. J ST. I am trying to get the following outco