Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

rafahesse

[Resolvido] Duplicar movieClip em A3

Recommended Posts

Olá

ja procurei diversos tutoriais de como fazer isso, mas infelizmente, nenhum me ajudou

estou querendo saber como faço para duplicar um movieClip - uma forma simples, na qual eu possa definir novas coordenadas para essa cópia

PS: Tem que ser tudo via script, não pode ser um movieClip que fica na library e é puxado (como alguns tutoriais mostram)

 

Agradeço desde já

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiramente bem vindo ao forum

 

Segundo é AS 3 que você quer?

Se for a melhor forma realmente é dar um addChild variais vezes... pode ser de um clip externo que você carrega com diferentes nomes... ou um clip na library

 

Exemplo

var arr:Array = new Array('banner1.jpg','banner2.jpg','banner3.jpg');
var loader:Loader;
var xInit:Number = 10;
var inic = 0;

function init(){
	loader = new Loader();
	loader.load(new URLRequest(arr[inic]));
	loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
}

function onComplete(e:Event):void{
	var mc:MovieClip = new MovieClip();
	addChild(mc);
	e.target.content.x = xInit;
	xInit += 40;
	mc.addChild(loader);
	if(inic < arr.length - 1){
		inic++;
		init();
	}
}
init();

Isso deve funcionar

 

 

abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

Muito obrigado!!

(é as3 sim que eu quero - erro de digitação)

No entando, acho que nao fui muito claro quanto ao que eu queria...

Em meu arquivo, crio o moviclip que quero duplicar assim:

 

var square:MovieClip = new MovieClip();
square.graphics.beginFill(0x00FF00);
square.graphics.drawRect(0,0,10,(20 + (40 - 20) * Math.random()));
square.graphics.endFill();
addChild(square);

Não sei se da para fazer essa duplicação pelo metodo que voce mostrou (se der, voce poderia me explicar como?)

Se não for esse o metodo correto, poderia de ajudar mais uma vez?

 

Obrigado!!

 

Primeiramente bem vindo ao forum

 

Segundo é AS 3 que você quer?

Se for a melhor forma realmente é dar um addChild variais vezes... pode ser de um clip externo que você carrega com diferentes nomes... ou um clip na library

 

Exemplo

var arr:Array = new Array('banner1.jpg','banner2.jpg','banner3.jpg');
var loader:Loader;
var xInit:Number = 10;
var inic = 0;

function init(){
	loader = new Loader();
	loader.load(new URLRequest(arr[inic]));
	loader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
}

function onComplete(e:Event):void{
	var mc:MovieClip = new MovieClip();
	addChild(mc);
	e.target.content.x = xInit;
	xInit += 40;
	mc.addChild(loader);
	if(inic < arr.length - 1){
		inic++;
		init();
	}
}
init();

Isso deve funcionar

 

 

abraços

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie um for no qual você vai colocar o numero de vezes que quer...

 

E faça a conta para que ele crie em diferentes posições.

for(var i:uint = 0; i < 4; i++){
var square:MovieClip = new MovieClip();
square.graphics.beginFill(0x00FF00);
square.graphics.drawRect(0,0,10,(20 + (40 - 20) * Math.random()));
square.graphics.endFill();
addChild(square);
}

Simples assim...

 

Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.