Help with Carousel Funtionality

Hi all, here’s my issue…

I followed all three chapters on making a carousel here ~~> http://www.gotoandlearn.com/

But on the third tutorial I can’t get it to work properly. Everything works fine up until i click the focused icon after it has been tweened to the left side and the text box with the content loaded from the XML file is visible. When I try to click it and have the icon return to it’s original position while the other icons reapear… it goes all wacky, the icon returns to the original position but some of the other icons don’t reappear. The carousel still rotates with the remaining icons that are visible but if I click on another one it gets worse removing even more icons when the focused icon is clicked a 2nd time. Now the tooltip still appears over the invisible icons that I con no longer see but when you click on them the text box appears and if I click where the icon should have tweened to the carousel reappears and still without all of the icons.

Please help below is my action script, I’ve checked and rechecked it for errors but can’t find any. It doesn’t seem to have imported all the tabbed spaces but rest assured that they are there in my file within flash. I’m using Flash CS3 but with Actionscript 1.0/2.0 selected in the actions panel. Btw if anyone knows of a turorial to do this with Actionscript 3.0 please place a link.

Thanx,

RiE

Actionscript:

import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.;
var numOfItems:Number;
var radiusX:Number = 200;
var radiusY:Number = 55;
var centerX:Number = Stage.width / 2;
var centerY:Number = Stage.height / 2;
var speed:Number = 0.03;
var perspective:Number = 40;
var home:MovieClip = this;
theText._alpha = 0;
var tooltip:MovieClip = this.attachMovie(“tooltip”,“tooltip”,10000);
tooltip._alpha = 0;
var xml:XML = new XML();
xml.ignoreWhite = true;
xml.onLoad = function()
{
var nodes = this.firstChild.childNodes;
numOfItems = nodes.length
for(var i=0;i<numOfItems;i++)
{
var t = home.attachMovie(“item”,“item”+i,i+1);
t.angle = i * ((Math.PI
2)/numOfItems);
t.onEnterFrame = mover;
t.toolText = nodes*.attributes.tooltip;
t.content = nodes*.attributes.content;
t.icon.inner.loadMovie(nodes*.attributes.image);
t.r.inner.loadMovie(nodes*.attributes.image);
t.icon.onRollOver = over;
t.icon.onRollOut = out;
t.icon.onRelease = released;
}
}
function over()
{
home.tooltip.tipText.text = this._parent.toolText;
home.tooltip._x = this._parent._x;
home.tooltip._y = this._parent._y - this._parent._height*2;
home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
home.tooltip._alpha = 100;
}
function out()
{
delete home.tooltip.onEnterFrame;
home.tooltip._alpha = 0;
}
function released()
{
home.tooltip._alpha = 0;
for(var i=0;i<numOfItems;i++)
{
var t:MovieClip = home[“item”+i];
t.xPos = t._x;
t.yPos = t._y;
t.theScale = t._xscale;
delete t.icon.onRollOver;
delete t.icon.onRollOut;
delete t.icon.onRelease;
delete t.onEnterFrame;
if(t != this._parent)
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true);
var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true);
}
else
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,100,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,100,1,true);
var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,90,1,true);
var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,150,1,true);
var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);
theText.text = t.content;
var s:Object = this;
tw.onMotionStopped = function()
{
s.onRelease = unReleased;
}
}
}
}

function unReleased()
{
delete this.onRelease;
var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);
for(var i=0;i<numOfItems;i++)
{
var t:MovieClip = home[“item”+i];
if(t != this._parent)
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,t.theScale,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,t.theScale,1,true);
var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true);
}
else
{
var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,100,t.theScale,1,true);
var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,100,t.theScale,1,true);
var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true);
var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true);
tw.onMotionStopped = funtion()
{
for(var i=0;i<numOfItems;i++)
{
var t:MovieClip = home[“item”+i];
t.icon.onRollOver = Delegate.create(t.icon,over);
t.icon.onRollOut = Delegate.create(t.icon,out);
t.icon.onRelease = Delegate.create(t.icon,released);
t.onEnterFrame = mover;
}
}
}
}
}

function moveTip()
{
home.tooltip._x = this._parent._x;
home.tooltip._y = this._parent._y - this._parent._height/2;
}
xml.load(“icons.xml”);
for(var i=0;i<numOfItems;i++)
{
var t = home.attachMovie(“item”,“item”+i,i+1);
t.angle = i * ((Math.PI2)/numOfItems);
t.onEnterFrame = mover;
}
function mover()
{
this._x = Math.cos(this.angle) * radiusX + centerX;
this._y = Math.sin(this.angle) * radiusY + centerY;
var s = (this._y - perspective) /(centerY+radiusY-perspective);
this._xscale = this._yscale = s
100;
this.angle += this._parent.speed;
this.swapDepths(Math.round(this._xscale) + 100);
}
this.onMouseMove = function()
{
speed = (this._xmouse-centerX)/2500;
}