Ch4p0L1N 0 Denunciar post Postado Agosto 27, 2008 Olá amigos, fiz um menu de fotos em actionscript mas estou com dificuldades em conseguir colocar o efeito espelhado que aparece na foto do meio nas fotos dos lados, vejam: http://lemadesign.com.br/diego/ o código: import mx.transitions.Tween; import mx.transitions.easing.*; import flash.display.BitmapData; import flash.filters.GradientBevelFilter; Stage.scaleMode = "noScale"; Stage.align = "left"; function porc(tipo,val) { if(tipo = "x"){ var rad = val/1000; poc = Math.round(rad*Stage.width); }else if(tipo = "y"){ var rad = val/1000; poc = Math.round(rad*Stage.height); } return poc; } function Smoot(target:MovieClip) { var mcParent:MovieClip = target._parent; var mcName:String = target._name; var poc = porc(target._width,target._height); var myBitmap:BitmapData = new BitmapData(target._width, target._height); var myBitmaps:BitmapData = new BitmapData(target._width, target._height); var target2:MovieClip; wx = target._width; hy = target._height; myBitmap.draw(target); myBitmaps.draw(target); target.removeMovieClip(); target = mcParent.createEmptyMovieClip(mcName, mcParent.getNextHighestDepth()); target.attachBitmap(myBitmap,1,"auto",true); target._x = -(target._width/2); target._y = -(target._height/2); var efeito:MovieClip; var efeito2:MovieClip; target2 = mcParent.createEmptyMovieClip(mcName+"s", mcParent.getNextHighestDepth()); target2.attachBitmap(myBitmaps,1,"auto",true); efeito = target2.createEmptyMovieClip(mcName+"s2", target2.getNextHighestDepth()); fillType = "linear"; colors = [0xC1C0BF, 0xC1C0BF]; alphas = [100, 50]; ratios = [200, 255]; matrix = {matrixType:"box", x:0, y:0, w:wx, h:hy, r:90/180*Math.PI}; efeito.beginGradientFill(fillType,colors,alphas,ratios,matrix); efeito.moveTo(0,0); efeito.lineTo(wx,0); efeito.lineTo(wx,hy); efeito.lineTo(0,hy); efeito.lineTo(0,0); efeito.endFill(); target2._x = -(target._width/2); target2._xscale = -100; target2._y = ((target._height)+(target._height/2)); target2._rotation = 180; } var oXML:XML = new XML(); oXML.ignoreWhite = true; function listaTitulos():Void { var childs:XMLNode = oXML.firstChild; var childTotal:Number = childs.childNodes.length; _root.clips = Array(childTotal); _root.desc = Array(childTotal); var fig_car:MovieClipLoader = new MovieClipLoader(); var mclListener:Object = new Object(); for (var i = 0; i<childTotal; i++) { var clip:String = String(childs.childNodes[i].childNodes[0].childNodes); var descx:String = childs.childNodes[i].childNodes[1].childNodes; _root.createEmptyMovieClip("botao"+i,i); _root["botao"+i].createEmptyMovieClip("alinhar"+i,i); fig_car.loadClip(clip,_root["botao"+i]["alinhar"+i]); mclListener.onLoadInit = Smoot; fig_car.addListener(mclListener); clips[i] = _root["botao"+i]._name; desc[i] = descx; } } function posCircular(angulo, raio) { var pos = new Object(); var rad = angulo*conversao; pos.x = Math.sin(rad)*raio; pos.y = Math.cos(rad)*raio; return pos; } function montarFiguras() { _root.raio = porc("x",350); _root.alphaMinimo = -(50*clips.length); _root.alphaMaximo = 100; _root.escalaMinima = 0; _root.escalaMaxima = porc("x",75); _root.mouseSeguro = 100; _root.difAlpha = alphaMaximo-alphaMinimo; _root.difEscala = escalaMaxima-escalaMinima; _root.xIni = (Stage.width-30)/2; _root.yIni = (Stage.height-30)/2; _root.dobroRaio = raio*2; _root.conversao = Math.PI/180; _root.difAngular = 360/clips.length; _root.angulo = 0; for (i=0; i<clips.length; i++) { var ptr = _root[clips[i]]; ptr._y = yIni; ptr.difAngular = difAngular*i; var pos = posCircular(angulo+ptr.difAngular, raio); ptr._x = xIni+pos.x; var perc = (pos.y+raio)/dobroRaio; ptr._alpha = perc*difAlpha+alphaMinimo; ptr._xscale = ptr._yscale=perc*difEscala+escalaMinima; ptr.swapDepths(pos.y+dobroRaio); } } function movFiguras(q) { if (q == 1) { velocidade = -difAngular; } else { velocidade = difAngular; } angulo += velocidade; for (i=0; i<clips.length; i++) { var ptr = _root[clips[i]]; ptr._y = yIni; ptr.difAngular = difAngular*i; var pos = posCircular(angulo+ptr.difAngular, raio); ptrx = xIni+pos.x; var mov:Tween = new Tween(_root[clips[i]], "_x", Back.easeOut, ptr._x, ptrx, 1, true); var perc = (pos.y+raio)/dobroRaio; ptralpha = perc*(difAlpha+50)+alphaMinimo; var mov:Tween = new Tween(_root[clips[i]], "_alpha", Back.easeOut, ptr._alpha, ptralpha, 1, true); ptrscale = perc*difEscala+escalaMinima; var mov:Tween = new Tween(_root[clips[i]], "_xscale", Back.easeOut, ptr._xscale, ptrscale, 1, true); var mov:Tween = new Tween(_root[clips[i]], "_yscale", Back.easeOut, ptr._yscale, ptrscale, 1, true); prtswap = Math.round(pos.y+dobroRaio); if (_root[clips[i]]._alpha<=100) { ptr.swapDepths(pos.y+dobroRaio-50); } else { ptr.swapDepths(pos.y+dobroRaio); } _root.masc.swapDepths(_root.getNextHighestDepth()); if (prtswap >= porc("x",1050)) { _root[clips[i]].useHandCursor = true; _root[clips[i]].id = i; _root[clips[i]].onRollOver = function() { var mov:Tween = new Tween(this, "_xscale", Back.easeOut, this._xscale, porc("x",100), 1, true); var mov:Tween = new Tween(this, "_yscale", Back.easeOut, this._yscale, porc("x",100), 1, true); var my_fmt:TextFormat = new TextFormat(); my_fmt.bold = false; my_fmt.font = "Arial"; my_fmt.color = 0x92393d; _root.createTextField("desc_t",1000,(Stage.width-250)/2,(Stage.height-50),250,500); _root.desc_t.setNewTextFormat(my_fmt); _root.desc_t.html = _root.desc[this.id]; _root.desc_t.htmlText = _root.desc[this.id]; }; _root[clips[i]].onRollOut = function() { var mov:Tween = new Tween(this, "_xscale", Back.easeOut, this._xscale, porc("x",80), 1, true); var mov:Tween = new Tween(this, "_yscale", Back.easeOut, this._yscale, porc("x",80), 1, true); _root.desc_t.removeTextField(); }; } else { _root[clips[i]].useHandCursor = false; _root[clips[i]].onRollOver = function() { }; _root[clips[i]].onRollOut = function() { }; } } } function add_bt() { _root.createEmptyMovieClip("bt_ir",50000); _root.bt_ir.attachMovie("bt","bt_ir",50000); _root.bt_ir._x = Stage.width-20; _root.bt_ir._y = Stage.height/2-20; _root.bt_ir._xscale = bt_ir._yscale=50; _root.bt_ir.onPress = function() { movFiguras(1); }; _root.bt_ir.onRollOver = function() { var mov:Tween = new Tween(this, "_yscale", Back.easeOut, this._yscale, 75, 1, true); var mov:Tween = new Tween(this, "_xscale", Back.easeOut, this._xscale, 75, 1, true); }; _root.bt_ir.onRollOut = function() { var mov:Tween = new Tween(this, "_yscale", Back.easeOut, this._yscale, 50, 1, true); var mov:Tween = new Tween(this, "_xscale", Back.easeOut, this._xscale, 50, 1, true); }; _root.createEmptyMovieClip("bt_volta",50001); _root.bt_volta.attachMovie("bt","bt_volta",50001); _root.bt_volta._x = 20; _root.bt_volta._y = Stage.height/2-20; _root.bt_volta._rotation = 180; _root.bt_volta._xscale = bt_volta._yscale=50; _root.bt_volta.onPress = function() { movFiguras(2); }; _root.bt_volta.onRollOver = function() { var mov:Tween = new Tween(this, "_yscale", Back.easeOut, this._yscale, 75, 1, true); var mov:Tween = new Tween(this, "_xscale", Back.easeOut, this._xscale, 75, 1, true); }; _root.bt_volta.onRollOut = function() { var mov:Tween = new Tween(this, "_yscale", Back.easeOut, this._yscale, 50, 1, true); var mov:Tween = new Tween(this, "_xscale", Back.easeOut, this._xscale, 50, 1, true); }; } oXML.onLoad = function(success:Boolean):Void { if (success) { if (oXML.status == 0) { listaTitulos(); montarFiguras(); movFiguras(2); add_bt(); } } }; oXML.load("moments.xml"); se alguém puder me ajudar, eu agradeço Compartilhar este post Link para o post Compartilhar em outros sites
Ch4p0L1N 0 Denunciar post Postado Agosto 29, 2008 ninguem saberia fazer? Compartilhar este post Link para o post Compartilhar em outros sites