Porreiro ;) tenho que estudar melhor numChildren e getChildAt. Obrigado pela ajuda.
2009/11/3 Paulo Ferreira <[email protected]> > Lembrei-me que podes verificar quantos items tens carregados na classe e > usa-los ;) > > do género: > > > Na timeline do flash: > > > import pt.web.camposbaptista.utils.BuildGrid; > > var builGrid:BuildGrid = new BuildGrid(10,5,20); > builGrid.x = 100; > builGrid.y = 100; > addChild(builGrid); > > var tamanho:int = builGrid.numChildren - 1 > > for (var i:Number = 0; i < tamanho; ++i) > { > var obecto = dummy.getChildAt(i); > > > var numRandom:Number = Math.floor(Math.random() * > 10+1); > obecto .gotoAndStop(numRandom); > > } > > > cumps > > > > 2009/11/3 Paulo Ferreira <[email protected]> > > >> >> On Tue, Nov 3, 2009 at 4:48 PM, CBaptista <[email protected]>wrote: >> >>> >>> Oi! >>> >>> Apesar de já me começar a safar na construção de classes em AS3 ainda >>> tenho muitas dúvidas. >>> >>> Criei a class BuildGrid.as >>> >>> >>> package pt.web.camposbaptista.utils { >>> >>> import flash.display.MovieClip; >>> import flash.display.Sprite; >>> >>> public class BuildGrid extends MovieClip{ >>> //Properties >>> private var _columns:Number; >>> private var _rows:Number; >>> private var _interval:Number; >>> >>> //Constructor >>> public function BuildGrid (colomns:Number, rows:Number, >>> interval:Number):void { >>> _columns = colomns; >>> _rows = rows; >>> _interval = interval; >>> >>> buildingTheGrid(); >>> } >>> >>> //Methods >>> public function buildingTheGrid():void{ >>> for (var i:int = 0; i < _columns; i++) { >>> for (var j:int = 0; j < _rows; j++) { >>> var boardPiece:BoardPiece = new >>> BoardPiece; >>> >>> //var numRandom:Number = >>> Math.floor(Math.random() * 10+1); >>> boardPiece.x = 0 + >>> (boardPiece.width + _interval) * i; >>> boardPiece.y = 0 + >>> (boardPiece.height + _interval) * j; >>> >>> >>> //boardPiece.gotoAndStop(numRandom); >>> >>> addChild(boardPiece); >>> } >>> } >>> } >>> } >>> } >>> >>> >>> >>> >>> Na timeline do flash: >>> >>> >>> import pt.web.camposbaptista.utils.BuildGrid; >>> >>> var builGrid:BuildGrid = new BuildGrid(10,5,20); >>> builGrid.x = 100; >>> builGrid.y = 100; >>> addChild(builGrid); >>> >>> >>> A class funciona perfeitamente e alterando os parâmetros decido o >>> número de colunas, linhas e o espaço entre os objectos. >>> >>> Se descomentar as linhas dentro da função buildingTheGrid consigo que >>> os movieclips que importo da library para a stage apareçam com frames >>> em random. >>> >>> Eu gostava de saber como posso na timeline fazer com que os movieclips >>> apareçam com as frames em random. Eu queria evitar fazer isto dentro >>> da classe porque alem de achar um erro continuar a trabalhar como a >>> timeline não queria sobre carregar a class com demasiadas “tarefas”. >>> >>> e escutas na timeline e controlas cada uma delas, dps de já criadas ;) >>> >>> ou colocas um valor booleano do genero: >>> >>> public function BuildGrid (colomns:Number, rows:Number, interval:Number, >>> random:Boolean = false):void >>> >>> e verificavas se o corria ou n >>> >> >> if(random) >> boardPiece.gotoAndStop(Math.floor(Math.random() * 10+1)); >> >> ou então mete o código na BoardPiece =D >> >> espero ter ajudado ;) >> >> cumps, >> Paulo Ferreira >> > > > > > -- Campos Baptista http://www.camposbaptista.web.pt/ --~--~---------~--~----~------------~-------~--~----~ Recebeu esta mensagem porque está inscrito em Grupo "Mailing List da Comunidade Portuguesa de Rich Internet Applications - www.riapt.org" do Grupos Google. Para enviar mensagens para este grupo, envie um email para [email protected] Para anular a inscrição neste grupo, envie um email para [email protected] Para mais opções, visite este grupo em http://groups.google.com/group/riapt?hl=pt-PT -~----------~----~----~----~------~----~------~--~---
