A Flash Developer Resource Site

Results 1 to 4 of 4

Thread: Fade in & out Slideshow from XML - im stuck !

  1. #1
    Junior Member
    Join Date
    Sep 2004
    Location
    London
    Posts
    9

    Fade in & out Slideshow from XML - im stuck !

    Hi i am stuck... Can anyone help me ? please...

    i have a fade in & out slide show - works well. The slide show gets
    the content var from an XML file e.g. _x _y pos of the images, fade
    times and time between images etc...

    However ontop of the images fading in & out i need to:

    - add a single word for each image
    (so the word has got to fade in and out with that specific image too)

    - need to be able to change the colour of the word
    (depending if its on a dark background or light background)

    - and need to be able to change the position of the word on the image
    (so the word is not over a part of the image that would make it hard to read)

    all of this needs to be done in the XML file ! so the flash movie or images
    never need to be touched again. CAN THIS EVEN BE DONE ?!?!?!?!?!?!?

    Help ?!

    THE CURRENT XML FILE READS LIKE THIS:

    <!--
    "timer" -- Number of seconds between each image transition.
    "order" -- How you want your images displayed. choose either 'sequential' or 'random'.
    "looping" -- If the slide show is in sequential mode, this stops the show at the last image (use 'yes' for looping, 'no' for not).
    "fadetime" -- Velocity of image crossfade. Increment for faster fades, decrement for slower. Approximately equal to seconds.
    "xpos" -- _x position of all loaded clips (0 is default).
    "ypos" -- _y position of all loaded clips (0 is default).
    -->


    <gallery timer="5" order="sequential" fadetime="2" looping="yes" xpos="0" ypos="0" >
    <image path="images/slideshow_1.jpg" /> <!-- slideshow image 1 -->
    <image path="images/slideshow_2.jpg" /> <!-- slideshow image 2 -->
    <image path="images/slideshow_3.jpg" /> <!-- slideshow image 3 -->
    <image path="images/slideshow_4.jpg" /> <!-- slideshow image 4 -->
    <image path="images/slideshow_5.jpg" /> <!-- slideshow image 5 --> <!-- to add more images duplicate this line of code and paste below -->
    </gallery>


    THE CURRENT ACTIONSCRIPT IN THE FIRST FRAM OF THE TIMELINE IS:



    fscommand("allowscale", "false");
    // set random # variables - each must be 0 for first 'while' loop below
    var randomNum = 0;
    var randomNumLast = 0;

    // parent container
    var container_mc = this.createEmptyMovieClip("container",0);
    // movie clip containers
    container_mc.createEmptyMovieClip("loader1_mc",2);
    container_mc.createEmptyMovieClip("loader2_mc",1);

    // preload watcher
    this.createEmptyMovieClip("watcher_mc",100);

    // load xml
    images_xml = new XML();
    images_xml.ignoreWhite=true;
    images_xml.onLoad = parse;
    images_xml.load("slideshow.xml");

    function parse(success) {
    if (success) {
    imageArray = new Array();
    var root = this.firstChild;
    _global.numPause = Number(this.firstChild.attributes.timer * 1000);
    _global.order = this.firstChild.attributes.order;
    _global.looping = this.firstChild.attributes.looping;
    _global.fadetime = Number(this.firstChild.attributes.fadetime);
    _global.xpos = Number(this.firstChild.attributes.xpos);
    _global.ypos = Number(this.firstChild.attributes.ypos);
    _global.strapline = (this.firstChild.attributes.strapline);
    var imageNode = root.lastChild;
    var s=0;
    while (imageNode.nodeName != null) {
    imageData = new Object;
    imageData.path = imageNode.attributes.path;
    imageArray[s]=imageData;
    imageNode = imageNode.previousSibling;
    s++;
    }
    // place parent container
    container_mc._x = _global.xpos;
    container_mc._y = _global.ypos;
    // parse array
    imageArray.reverse();
    imageGen(imageArray);
    } else {
    trace('problem');
    }
    }

    // depth swapping
    function swapPlace(clip,num) {
    eval(clip).swapDepths(eval("container_mc.loader"+n um+"_mc"));
    }

    function loadImages(data,num) {
    if (i==undefined || i == 2) {
    i=2;
    createLoader(i,data,num);
    i=1;
    } else if (i==1) {
    createLoader(i,data,num);
    i=2;
    }
    }
    function createLoader(i,data,num) {
    thisLoader=eval("container_mc.loader"+i+"_mc");
    thisLoader._alpha=0;
    thisLoader.loadMovie(data[num].path);
    watcher_mc.onEnterFrame=function () {
    var picLoaded = thisLoader.getBytesLoaded();
    var picBytes = thisLoader.getBytesTotal();
    if (isNaN(picBytes) || picBytes < 4) {
    return;
    }
    if (picLoaded / picBytes >= 1) {
    swapPlace("container_mc.loader2_mc",1);
    alphaTween = new mx.transitions.Tween(thisLoader, "_alpha", mx.transitions.easing.Regular.easeOut,0,100,_globa l.fadetime,true);
    timerInterval = setInterval(imageGen,_global.numPause,data);
    delete this.onEnterFrame;
    }
    }
    }
    function imageGen(data) {
    // random, or sequential?
    if (_global.order=="random") {
    // choose random # between 0 and total number of images
    while (randomNum == randomNumLast) {
    randomNum = Math.floor(Math.random() * data.length);
    trace(randomNum);
    }
    loadImages(data,randomNum);
    randomNumLast = randomNum;
    } else if (_global.order=="sequential") {
    // start at 0, increment to total number of images, then drop back to zero when done
    if (p==undefined || p==data.length && _global.looping=="yes") { p=0; } else { break; }
    loadImages(data,p);
    p++;
    } else {
    trace ("order attribute in xml isn't correct - must specify either 'random' or 'sequential'");
    }
    clearInterval(timerInterval);
    }
    stop();

  2. #2
    Senior Member cancerinform's Avatar
    Join Date
    Mar 2002
    Location
    press the picture...
    Posts
    13,448
    You can have a movieclip with a textfield in the library and attach the movieclip to your slide when necessary. Then you can change many parameters.
    - The right of the People to create Flash movies shall not be infringed. -

  3. #3
    Junior Member
    Join Date
    Sep 2004
    Location
    London
    Posts
    9

    would you like to earn the money to do this ???

    OK this sounds great !

    would you like to earn the money to do this ???

    let me know asap ???!!! will pay £40.00

  4. #4
    Senior Member cancerinform's Avatar
    Join Date
    Mar 2002
    Location
    press the picture...
    Posts
    13,448
    You can advertise this in the freelance forum if you want to pay money. Let me know.
    - The right of the People to create Flash movies shall not be infringed. -

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •  




Click Here to Expand Forum to Full Width

HTML5 Development Center