لود موی کلیپ به تعداد 1000

hm1365

New Member
سلام
دوستان
من 1000 تا مووی کلیپ دارم که اینها را باید رنگ آمیزی کنم
این 1000 تا مووی کلیپ رو باید با کلیک بر روی هر هر کلید فراخوانی کنم
یعنی روی هر کلید کلیک شد یک مووی کلیپ لود بشه
این کار رو با select case اناجم دادم ولی برای 1000 تا کلیک زیاده
میخواستم بدونم چجوری میتونم از IndexOf برای کوتاه تر کردن کد استفاده کنم
ممنون
این هم کد
PHP:
package  
{ 
    import flash.display.MovieClip; 
    import fl.transitions.Tween; 
    import fl.transitions.easing.*; 
    import flash.events.Event; 
    import flash.events.MouseEvent; 
    import flash.display.Sprite; 
    import flash.geom.ColorTransform; 
    import flash.events.MouseEvent; 
    import flash.events.Event; 
    import flash.utils.ByteArray; 
    import flash.display.DisplayObject; 
    public class Main extends MovieClip 
    { 
        public var earth_btn:Earth_btn = new Earth_btn  ; 
        public var mercury_btn:Mercury_btn = new Mercury_btn  ; 
        public var venus_btn:Venus_btn = new Venus_btn  ; 
        public var buttons = new Array(mercury_btn,venus_btn,earth_btn); 
        public var teddy_mc1:Teddy_mc1 = new Teddy_mc1  ; 
        public var teddy_mc2:Teddy_mc2 = new Teddy_mc2  ; 
        public var teddy_mc3:Teddy_mc3 = new Teddy_mc3  ; 
        public var teddy:Array = new Array(teddy_mc3,teddy_mc2,teddy_mc1); 
        public var venus:MovieClip = new MovieClip  ; 
        public var Btn:MovieClip = new MovieClip  ; 
        public var palette:palette_mc = new palette_mc  ; 
        public var pal_color:ColorTransform; 
        public var colors:Array = new Array(0xFF0000,0x00FF00,0x0000FF,0xFF0000,0x00FF00); 
        public var current_color:int = 0; 
        public var s:int = 0; 
        public function on_palette_click(e:MouseEvent):void 
        { 
            var palette_clicked:palette_mc = e.currentTarget as palette_mc; 
            current_color = palette_clicked.ind; 
        } 
        public function on_teddy_click(e:MouseEvent):void 
        { 
            var f:int = teddy.length; 
            for (s = 0; s < f; s++) 
            { 
                teddy[s].buttonMode = true; 
                for (var i:int = 0; i < teddy[s].numChildren; i++) 
                { 
                    if (teddy[s].getChildAt(i).hitTestPoint(mouseX,mouseY,true)) 
                    { 
                        pal_color = teddy[s].getChildAt(i).transform.colorTransform; 
                        pal_color.color = colors[current_color]; 
                        teddy[s].getChildAt(i).transform.colorTransform = pal_color; 
                    } 
                } 
            } 
        } 
        public function Main() 
        { 
            addChild(venus); 
            for (var i:int = 0; i < 5; i++) 
            { 
                palette = new palette_mc  ; 
                pal_color = palette.transform.colorTransform; 
                pal_color.color = colors[i]; 
                palette.transform.colorTransform = pal_color; 
                palette.ind = i; 
                palette.x = 1000 + i; 
                palette.y = 0 + i * 150; 
                addChild(palette); 
                var l:int = buttons.length; 
                for (var a = 0; a < l; a++) 
                { 
                    buttons[a].buttonMode = true; 
                    buttons[a].addEventListener(MouseEvent.MOUSE_OVER,onMouseOver); 
                    buttons[a].addEventListener(MouseEvent.MOUSE_OUT,onMouseOut); 
                    buttons[a].addEventListener(MouseEvent.CLICK,clickHandler); 
                    Btn.addChild(buttons[a]); 
                    buttons[a].x = 300 + a * 100; 
                    buttons[a].y = 600 + a; 
                    addChild(Btn); 
                } 
                function onMouseOver(event:MouseEvent):void 
                { 
                    scaleAnimation(event); 
                } 
                function onMouseOut(event:MouseEvent):void 
                { 
                    scaleAnimation2(event); 
                } 
                function scaleAnimation(e:Event):void 
                { 
                    this.toMouseX = new Tween(e.target,"scaleX",Regular.easeIn,1.1,1.2,.1,true); 
                    this.toMouseY = new Tween(e.target,"scaleY",Regular.easeIn,1.1,1.2,.1,true); 
                } 
                function scaleAnimation2(e:Event):void 
                { 
                    this.toMouseX = new Tween(e.target,"scaleX",Regular.easeIn,1.0,1.0,.1,true); 
                    this.toMouseY = new Tween(e.target,"scaleY",Regular.easeIn,1.0,1.0,.1,true); 
                } 
                function clickHandler(event:MouseEvent):void 
                { 
                    switch (event.currentTarget) 
                    { 
                        case buttons[0] : 
                            venus.addChild(teddy[0]); 
                            teddy[0].x = 300; 
                            teddy[0].y = 300; 
                            if (teddy[1].stage) 
                            { 
                                teddy[1].parent.removeChild(teddy[1]); 
                            } 
                            else 
                            { 
                                trace("PanelNocolorGroup isn't in display list"); 
                            } 
                            if (teddy[2].stage) 
                            { 
                                teddy[2].parent.removeChild(teddy[2]); 
                            } 
                            else 
                            { 
                                trace("PanelPaintGroup1 isn't in display list"); 
                            } 
                            teddy[0].addEventListener(MouseEvent.CLICK,on_teddy_click); 
                            break; 
                        case buttons[1] : 
                            venus.addChild(teddy[1]); 
                            teddy[1].x = 350; 
                            teddy[1].y = 300; 
                            trace("teddy[1]"); 
                            teddy[1].addEventListener(MouseEvent.CLICK,on_teddy_click); 
                            if (teddy[0].stage) 
                            { 
                                teddy[0].parent.removeChild(teddy[0]); 
                            } 
                            else 
                            { 
                                trace("PanelNocolorGroup isn't in display list"); 
                            } 
                            if (teddy[2].stage) 
                            { 
                                teddy[2].parent.removeChild(teddy[2]); 
                            } 
                            else 
                            { 
                                trace("PanelPaintGroup1 isn't in display list"); 
                            } 
                            break; 
                        case buttons[2] : 
                            venus.addChild(teddy[2]); 
                            teddy[2].x = 400; 
                            teddy[2].y = 300; 
                            trace("teddy[2]"); 
                            teddy[2].addEventListener(MouseEvent.CLICK,on_teddy_click); 
                            if (teddy[1].stage) 
                            { 
                                teddy[1].parent.removeChild(teddy[1]); 
                            } 
                            else 
                            { 
                                trace("PanelNocolorGroup isn't in display list"); 
                            } 
                            if (teddy[0].stage) 
                            { 
                                teddy[0].parent.removeChild(teddy[0]); 
                            } 
                            else 
                            { 
                                trace("PanelPaintGroup1 isn't in display list"); 
                            } 
                            break; 
                    } 
                } 
                palette.addEventListener(MouseEvent.CLICK,on_palette_click); 
            } 
        } 
    } 
}
 

hm1365

New Member
سلام
درستش کردم
اگه کسی نظر بهتری داره ممنون میشم

PHP:
 public class Main extends MovieClip 
{ 
public var earth_btn:Earth_btn = new Earth_btn ; 
public var mercury_btn:Mercury_btn = new Mercury_btn ; 
public var venus_btn:Venus_btn = new Venus_btn ; 
public var buttons = new Array(mercury_btn,venus_btn,earth_btn); 
public var teddy_mc1:Teddy_mc1 = new Teddy_mc1 ; 
public var teddy_mc2:Teddy_mc2 = new Teddy_mc2 ; 
public var teddy_mc3:Teddy_mc3 = new Teddy_mc3 ; 
public var teddy:Array = new Array(teddy_mc3,teddy_mc2,teddy_mc1); 
public var venus:MovieClip = new MovieClip ; 
public var Btn:MovieClip = new MovieClip ; 
public var palette:palette_mc = new palette_mc ; 
public var pal_color:ColorTransform; 
public var colors:Array = new Array(0xFF0000,0x00FF00,0x0000FF,0xFF0000,0x00FF00); 
public var current_color:int = 0; 
public var s:int = 0; 
public function on_palette_click(e:MouseEvent):void 
{ 
var palette_clicked:palette_mc = e.currentTarget as palette_mc; 
current_color = palette_clicked.ind; 
} 
public function on_teddy_click(e:MouseEvent):void 
{ 
var f:int = teddy.length; 
for (s = 0; s < f; s++) 
{ 
teddy[s].buttonMode = true; 
for (var i:int = 0; i < teddy[s].numChildren; i++) 
{ 
if (teddy[s].getChildAt(i).hitTestPoint(mouseX,mouseY,true)) 
{ 
pal_color = teddy[s].getChildAt(i).transform.colorTransform; 
pal_color.color = colors[current_color]; 
teddy[s].getChildAt(i).transform.colorTransform = pal_color; 
} 
} 
} 
}
        public function init():void {
for( var i:int=0; i<buttons.length; i++ ) {
buttons[i].buttonMode = true;
buttons[i].addEventListener( MouseEvent.CLICK, clickPag1 );
                addChild(buttons[i]);
         buttons[i].x = 300 + i* 100; 
buttons[i].y = 600 + i ; 


}


for( var j:int=0; j<teddy.length; j++ ) {
//teddy[j].visible = false;
teddy[j].buttonMode = true;
//teddy[j].addEventListener( MouseEvent.CLICK, clickPag2 );
             teddy[j].x = 300 + j* 150; 
teddy[j].y = 300 + j ; 
}
}


public function clickPag1( e:MouseEvent ):void {
var mc:MovieClip = MovieClip( teddy[ buttons.indexOf( e.currentTarget ) ] );


for( var obj in teddy ) {
teddy[obj].visible = ( teddy[obj] == mc );
addChild(teddy[obj]);

    teddy[obj].addEventListener(MouseEvent.CLICK,on_teddy_click);
                            for (var n:int=0; n<teddy[obj].numChildren-3 ; n++) {


                 var colorTransform:ColorTransform = new ColorTransform();
                 colorTransform.color = 0xFFFFFF;
                 teddy[obj].getChildAt(n).transform.colorTransform = colorTransform;


                 //e.updateAfterEvent();
            }    
        }
}


public function clickPag2( e:MouseEvent ):void {


} 
public function Main() 
{ 
addChild(venus); 
for (var i:int = 0; i < 5; i++) 
{ 
palette = new palette_mc ; 
pal_color = palette.transform.colorTransform; 
pal_color.color = colors[i]; 
palette.transform.colorTransform = pal_color; 
palette.ind = i; 
palette.x = 1000 + i; 
palette.y = 0 + i * 150; 
addChild(palette); 



                
palette.addEventListener(MouseEvent.CLICK,on_palette_click); 
} 
            init();
} 
} 
}
 

جدیدترین ارسال ها

بالا