dcsimg
A Flash Developer Resource Site

Results 1 to 2 of 2

Thread: carousel: link in xml

  1. #1
    Junior Member
    Join Date
    Sep 2003
    Posts
    18

    carousel: link in xml

    Hi,

    I am trying to add a link in a xml file as described here:

    http://www.gotoandlearnforum.com/vie...p?f=28&t=15435

    However, I must be doing something wrong as when I make the changes, I loose all images and text.

    The action script is:

    Code:
    import mx.utils.Delegate;
    import mx.transitions.Tween;
    import mx.transitions.easing.*;
    
    theText.html = true;
    theText.HTMLtext = t.content;
    
    var numOfItems:Number;
    var radiusX:Number = 250;
    var radiusY:Number = 65;
    var centerX:Number = Stage.width / 2;
    var centerY:Number = Stage.height / 2;
    var speed:Number = 0.002;
    var perspective:Number = 50;
    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[i].attributes.tooltip;
    		t.content = nodes[i].attributes.content;
    		t.icon.inner.loadMovie(nodes[i].attributes.image);
    		t.r.inner.loadMovie(nodes[i].attributes.image);
    		t.icon.onRollOver = over;
    		t.icon.onRollOut = out;
    		t.icon.onRelease = released;
    	}
    }
    
    function over()
    {
    	//BONUS Section
    	var sou:Sound = new Sound();
    	sou.attachSound("sover");
    	sou.start();
    	
    	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()
    {
    	//BONUS Section
    	var sou:Sound = new Sound();
    	sou.attachSound("sdown");
    	sou.start();
    	
    	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,100,1,true);
    			var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,180,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()
    {
    	//BONUS Section
    	var sou:Sound = new Sound();
    	sou.attachSound("sdown");
    	sou.start();
    	
    	delete this.onRelease;
    	var tw: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 = function()
    			{
    				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");
    
    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)/8800;
    }
    and the xml file:

    Code:
    <gallery>
       <image>icon1.png</image>
       <tooltip>Community</tooltip>
       <content><![CDATA[<a href="http://www.google.com">Google</a><br><a href="http://www.google.com">Google</a>]]></page>
    </gallery>
    <gallery>
       <image>icon1.png</image>
       <tooltip>Knowledge</tooltip>
       <content><![CDATA[<a href="http://www.google.com">Google</a><br><a href="http://www.google.com">Google</a>]]></page>
    </gallery>
    Do you or your clients need an ecard site/marketing campaign? We have content!
    http://www.cardsup.com/webcontent.php

  2. #2
    Junior Member
    Join Date
    Sep 2003
    Posts
    18
    Do you or your clients need an ecard site/marketing campaign? We have content!
    http://www.cardsup.com/webcontent.php

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