# Slide Show Question

**URL:** <https://forum.kirupa.com/t/slide-show-question/252376>\
**Category:** Uncategorized\
**Created:** [February 19, 2008, 4:14pm UTC](https://forum.kirupa.com/t/slide-show-question/252376 "2008-02-19T16:14:33Z")\
**Posts on this page:** 1\
**Page:** 1

<div class="post-metadata">

**Author:** ![jborrows](https://avatars.discourse-cdn.com/v4/letter/j/f04885/32.png) [@jborrows](https://forum.kirupa.com/u/jborrows)\
**Post date:** [February 19, 2008, 4:14pm UTC](https://forum.kirupa.com/t/slide-show-question/252376/1 "2008-02-19T16:14:33Z")

</div>

Hello all, first time posting

Thanks to everybody on this forum. I have learned alot. I usually can find the info I need by searching the forum and using the tutorials, but having a problem with this slideshow I’m working on.

Here is a link to how it is set up.

[http://home.earthlink.net/~brcoats/ss/](http://home.earthlink.net/%7Ebrcoats/ss/)

I did in in Flash 8 with a component called SlideShowPro and ActionScript. It loads the photos via XML. What I’m trying to achieve is for the images to move infinitely rather than stopping on the last image. I tried adapting some ActionScript from some of the other tutorials on continuous scrolling, etc., but have not been successful.

Here is the ActionScript code:

import mx.transitions.Tween;  
import mx.transitions.easing.\*;

ssp.\_visible = false;

var hsCenterImg:Number;  
var sspListener:Object = new Object;  
var theArr:Object = new Object;  
var lgPath:String;  
var albumCount:Number;  
var albumID:Number;  
var thumbLdr:MovieClipLoader = new MovieClipLoader;  
var loadListen:Object = new Object;  
var widthArr:Array = new Array;  
var fs\_holder:MovieClip;  
var fs\_mask:MovieClip;  
var next\_mc:MovieClip;  
var back\_mc:MovieClip;  
var loadNum:Number;  
var preload\_ln:MovieClip;  
var preload\_fill:MovieClip;  
var preload\_txt:TextField;  
var nav\_txt:TextField;

var txtFrmt:TextFormat = new TextFormat;  
txtFrmt.color = 0xCCCCCC;  
txtFrmt.size = 9;  
txtFrmt.font = “Verdana”;

sspListener.onGalleryData = function(eventObject):Void {  
theArr = eventObject.data;  
}  
ssp.addEventListener(“onGalleryData”, sspListener);

sspListener.onAlbumData = function(eventObject):Void {  
lgPath = eventObject.data.lgpath;  
albumCount = eventObject.data.totalImages;  
for (var i:Number = 0; i\<theArr.length;i++) {  
if (eventObject.data.id == theArr\*[0].id) {  
albumID = i;  
}  
}  
drawFS();  
}  
ssp.addEventListener(“onAlbumData”, sspListener);

function drawFS():Void {  
fs\_holder = \_root.createEmptyMovieClip(“fs\_holder”,100);  
fs\_holder.\_x = 0;  
fs\_holder.\_y = 0;  
drawBox(fs\_holder,0,0,albumCount\*600,600,0x000000,100,0,0x000000,0);  
fs\_mask = \_root.createEmptyMovieClip(“fs\_mask”,200);  
drawBox(fs\_mask,0,0,Stage.width,Stage.height,0xFF0000,100,0,0x000000,0);  
fs\_holder.setMask(fs\_mask);  
hsCenterImg = null;  
loadNum = null;  
preload\_ln = \_root.createEmptyMovieClip(“preload\_ln”,89);  
preload\_ln.\_x = 520;  
preload\_ln.\_y = fs\_holder.\_y + 630;  
drawBox(preload\_ln,0,0,102,6,0xCCCCCC,0,2,0xCCCCCC,100);  
preload\_fill = preload\_ln.createEmptyMovieClip(“preload\_fill”,2);  
preload\_fill.\_x = 1;  
preload\_fill.\_y = 1;  
drawBox(preload\_fill,0,0,.1,4,0xCCCCCC,100,0,0x000000,0);  
preload\_txt = \_root.createTextField(“preload\_txt”,11,preload\_ln.\_x+5,preload\_ln.\_y-20,100,20);  
preload\_txt.setNewTextFormat(txtFrmt);  
preload\_txt.text = “loading…”;  
loadThumb(fs\_holder,0);  
}

function loadThumb(tgt\_holder:MovieClip,tgtNum:Number):Void {  
var holder:MovieClip = tgt\_holder.createEmptyMovieClip(“holder\_”+tgtNum,1000+tgtNum);  
var tgt\_mc:MovieClip = holder.createEmptyMovieClip(“Image\_”+String(albumID)+"\_"+String(tgtNum), 1000+tgtNum);  
var loc\_path = lgPath + theArr[albumID][1][tgtNum].src;  
thumbLdr.loadClip(loc\_path, tgt\_mc);  
holder.\_alpha = 0;  
}

loadListen.onLoadInit = function(target\_mc:MovieClip) {  
loadNum = Number(target\_mc._name.split("_")[2]);  
preload\_txt.text = “loading… “+(loadNum+1)+”/”+albumCount;  
preload\_fill.\_width = ((loadNum+1)/albumCount)\*100;  
if (loadNum==0) {  
target\_mc.\_parent.\_x = (fs\_mask.\_width - target\_mc.\_width)/2;  
target\_mc.\_parent.\_alpha = 100;  
drawNav();  
} else {  
var priorClip:MovieClip = eval(target\_mc.\_parent._parent+".holder_"+(loadNum-1));  
target\_mc.\_parent.\_x = priorClip.\_x+priorClip.\_width + 0;  
target\_mc.\_parent.\_alpha = 100;  
}  
target\_mc.\_parent.\_y = 0;  
if (loadNum\<(albumCount-1)) {  
loadThumb(fs\_holder,(loadNum+1));  
} else {  
preload\_ln.removeMovieClip();  
preload\_txt.removeTextField();  
}  
}  
thumbLdr.addListener(loadListen);

function drawNav() {  
hsCenterImg = 0;  
var nav\_mc:MovieClip = \_root.createEmptyMovieClip(“nav\_mc”,400);  
back\_mc = nav\_mc.attachMovie(“backBttn”,“back\_mc”,50, {\_x:707,\_y:0});  
nav\_txt = nav\_mc.createTextField(“nav\_txt”,10,back\_mc.\_x+back\_mc.\_width,-2,15,15);  
nav\_txt.autoSize = “left”;  
nav\_txt.setNewTextFormat(txtFrmt);  
nav\_txt.text = “1/”+albumCount;  
next\_mc = nav\_mc.attachMovie(“nextBttn”,“next\_mc”,100, {\_x:nav\_txt.\_x+nav\_txt.\_width+20,\_y:back\_mc.\_y});  
nav\_mc.\_x = fs\_mask.\_x-((fs\_mask.\_width-nav\_mc.\_width)/2);  
nav\_mc.\_y = fs\_holder.\_y + nav\_mc._height + 590;  
back\_mc.alpha = 25;  
next\_mc.onRelease = function() {  
if((hsCenterImg!=albumCount-1)&&(loadNum\>hsCenterImg)) {  
updateFS(eval(fs\_holder+".holder"+(Number(hsCenterImg)+1)));  
}  
}  
back\_mc.onRelease = function() {  
if(hsCenterImg!=0) {  
updateFS(eval(fs\_holder+".holder_"+(Number(hsCenterImg)-1)));  
}  
}  
}

function updateFS(target\_mc:MovieClip):Void {  
var tempFSarr:Array = target\_mc._name.split("_");  
new Tween(fs\_holder, “\_x”, Strong.easeOut, fs\_holder.\_x, ((-(target\_mc.\_x))+((fs\_mask.\_width/2)-(target\_mc.\_width/2))),1,true);  
new Tween(target\_mc, “\_alpha”, Strong.easeOut, target\_mc.\_alpha, 100, 0.5, true);  
hsCenterImg = tempFSarr[1];  
new Tween(eval(target\_mc._parent+".holder_"+(Number(tempFSarr[1])-1)), “\_alpha”, Strong.easeIn, target\_mc.\_alpha, 100, 0.5, true);  
new Tween(eval(target\_mc._parent+".holder_"+(Number(tempFSarr[1])+1)), “\_alpha”, Strong.easeIn, target\_mc.\_alpha, 100, 0.5, true);  
back\_mc.\_alpha = (hsCenterImg==0)?25:100;  
next\_mc.\_alpha = (hsCenterImg==(albumCount-1))?25:100;  
nav\_txt.text = (Number(hsCenterImg)+1)+"/"+albumCount;  
nav\_txt.\_x = (hsCenterImg\>8)?(back\_mc.\_x+back\_mc.\_width-3):(back\_mc.\_x+back\_mc.\_width);  
}

var keyListen:Object = new Object;  
keyListen.onKeyDown = function() {  
if (Key.getCode() == 37) {  
back\_mc.onRelease();  
}  
if (Key.getCode() == 39) {  
next\_mc.onRelease();  
}  
}  
Key.addListener(keyListen);

function drawBox(tgt\_mc:MovieClip,tgt\_x:Number,tgt\_y:Number,b\_w:Number,b\_h:Number,b\_fc:Number,b\_fa:Number,b\_lw:Number,b\_lc:Number,b\_la:Number):Void {  
tgt\_mc.beginFill(b\_fc,b\_fa);  
tgt\_mc.lineStyle(b\_lw,b\_lc,b\_la);  
tgt\_mc.moveTo(tgt\_x,tgt\_y);  
tgt\_mc.lineTo(b\_w,0);  
tgt\_mc.lineTo(b\_w,b\_h);  
tgt\_mc.lineTo(0,b\_h);  
tgt\_mc.endFill();  
}

Any help or ideas is greatly appreciated.  
Thanks,  
JBorrows
