View Single Post

  #3 (permalink)  
Old 28-05-08, 19:19
Flep Flep is offline
Administrator
 
Join Date: Jul 2007
Location: Cesena
Posts: 4,535
Rep Power: 6
Flep is on a distinguished road
Re: Mouse e proporzioni con Actionscript 3.0

Ciao

Diventa così:
Code:
/*
 *************************************
 * http://www.FlepStudio.org      *
 * © Author: Filippo Lughi           *
 *************************************
 */
package
{
	import flash.display.MovieClip;
	import flash.display.DisplayObjectContainer;
	import flash.text.TextField;
	import flash.events.Event;
	import flash.events.ProgressEvent;
	import flash.events.MouseEvent;
	import flash.net.*;
	
	public class Main extends MovieClip
	{
		private var clips_array:Array;
		private var clips_array2:Array;
		private var url_array:Array;
		
		public function Main()
		{
			init();
		}
		
		private function init():void
		{
			stage.frameRate=31;
			
			url_array=new Array("url1","url2","url3","url4","url5","url6","url7","url8","url9","url10");
			
			this.addEventListener(Event.ENTER_FRAME,checkProgress);
		}
		
		private function checkProgress(_progress:Event):void
		{
			var bytes_loaded:Number=_progress.target.loaderInfo.bytesLoaded;
			var bytes_total:Number=_progress.target.loaderInfo.bytesTotal;
			var percent:Number=Math.round(bytes_loaded/bytes_total*100);
			info_txt.text=percent.toString()+' %';
			if(percent>=100)
			{
				this.removeEventListener(Event.ENTER_FRAME,checkProgress);
				this.gotoAndPlay(2);
			}
		}
		
		public function lets_go():void
		{
			initContainer();
			initContainer2();
			initGradient();
			
			container_mc.addEventListener(Event.ENTER_FRAME,movement);
		}
		
		private function initContainer():void
		{
			clips_array=new Array();
			
			for(var i:int=0;i < container_mc.numChildren;i++)
			{
				clips_array.push(container_mc.getChildAt(i));
				
				clips_array[i].width=100;
				clips_array[i].height=100;
				clips_array[i].x=clips_array[i].width*i+20*i;
				clips_array[i].y=stage.stageHeight/2;
				
				clips_array[i].id=i;
				clips_array[i].buttonMode=true;
				clips_array[i].addEventListener(MouseEvent.CLICK,onClick);
			}
		}
		
		private function initContainer2():void
		{
			clips_array2=new Array();
			
			for(var j:int=0;j < container2_mc.numChildren;j++)
			{
				clips_array2.push(container2_mc.getChildAt(j));
				clips_array2[j].width=100;
				clips_array2[j].height=100;
				clips_array2[j].x=clips_array2[j].width*j+20*j;
				clips_array2[j].y=stage.stageHeight/2+clips_array2[0].height-10;
			}
		}
		
		private function initGradient():void
		{
			gradient_mc.x=0;
			gradient_mc.y=clips_array2[0].y-clips_array2[0].height/2;
			container2_mc.alpha=.2;
		}
		
		private function movement(evt:Event):void
		{
			var rapporto:Number=evt.currentTarget.width/stage.stageWidth;
			var arrX:Number=-mouseX*rapporto+stage.stageWidth/2;
			var dx:Number=arrX-evt.currentTarget.x;
			var ax:Number=dx*.1;
			evt.currentTarget.x+=ax;
			container2_mc.x+=ax;
		}
		
		private function onClick(evt:MouseEvent):void
		{
			var richiesta:URLRequest=new URLRequest(url_array[evt.currentTarget.id]);
			navigateToURL(richiesta,"_blank");
		}
	}
}
Se guardi, ho creato un nuovo Array con dentro degli url ( che dovrai sostituire ) e devi aggiungerne tanti quante sono le MovieClip.
__________________

 


I recommend: Essential Actionscript 3.0

- I do not reply technicians pvt messages. Open a thread !
- Non rispondo ai messaggi privati con domande tecniche. Apri una discussione sul forum !
Reply With Quote