..:: MX Studio Fóruns ::..: Dúvidas para multiplicar MovieClips - ..:: MX Studio Fóruns ::..

Jump to content

Publicidade




ATENÇÃO

Para evitar posts desnecessários e que não influam para o andamento e desenvolvimento do fórum, clique aqui e leia todas as regras.
Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic

Dúvidas para multiplicar MovieClips

#1 User is offline   Uriel Juliatti 

  • Group: Membros
  • Posts: 120
  • Joined: 27-March 09

Posted 09 May 2009 - 04:52 PM

Então, como todos sabem sou inciante.. Em AS2 eu não faço idéia de como é para multiplicar MovieClips..

Estou montando uma galeria de imagens e prefiro apanhar aprendendo do zero do que copiar Códigos.

Já tentei de várias formas com With e depois um IF (quando ele chega no limite), a minha estrutura de código está assim:

Obs: thumb_mc = instância do MovieClip que já se encontra no Stage.

CÓDIGO
function formaMc () { //
// Duplicando os MCs
for (var i:Number = 0; i<10; i++) {
    thumb_mc._x = 10 * (i);
trace(thumb_mc);
}
}
formaMc();


No trace ele apresenta assim:

CÓDIGO
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc
_level0.thumb_mc


Os passos são esses mesmo?
Alguém me corrija caso contrário.

Abraço a todos!!

0

#2 User is offline   Natan 

  • Group: Moderador Global
  • Posts: 7350
  • Joined: 28-February 04

Posted 09 May 2009 - 05:06 PM

Para duplicar MovieClips você usa a função duplicateMovieClip. As ações que você está usando apenas modifica a posição do seu MovieClip, e não duplica ele.

Assim o Flash deve duplicar seu MovieClip 10 vezes.

CÓDIGO
function formaMc() {//
    // Duplicando os MCs
    for (var i:Number=0; i<10; i++) {
        var mc:MovieClip = thumb_mc.duplicateMovieClip("mc"+i, _root.getNextHighestDepth());
        mc._x = mc._width*i+10*i;
    }
    unloadMovie(thumb_mc);
}
formaMc();


[]s
0

#3 User is offline   Uriel Juliatti 

  • Group: Membros
  • Posts: 120
  • Joined: 27-March 09

Posted 09 May 2009 - 06:09 PM

QUOTE(Natan @ 9/5/2009 16:05:24) <{POST_SNAPBACK}>
Para duplicar MovieClips você usa a função duplicateMovieClip. As ações que você está usando apenas modifica a posição do seu MovieClip, e não duplica ele.

Assim o Flash deve duplicar seu MovieClip 10 vezes.

CÓDIGO
function formaMc() {//
    // Duplicando os MCs
    for (var i:Number=0; i<10; i++) {
        var mc:MovieClip = thumb_mc.duplicateMovieClip("mc"+i, _root.getNextHighestDepth());
        mc._x = mc._width*i+10*i;
    }
    unloadMovie(thumb_mc);
}
formaMc();


[]s



Eu tentei quebrar a linha..

Se for maior que 4 "mc" ele parte pra debaixo e preenche com mais 4 mcs e assim sucetivamente..

Agora, deu pau!

CÓDIGO
function formaMc () { //
// Duplicando os MCs
for (var i:Number = 0; i<10; i++) {
    var mc:MovieClip = thumb_mc.duplicateMovieClip("mc"+i, _root.getNextHighestDepth());
    mc._x = mc._width*i+(10*i);
    if (mc > 4){
    mc._y = mc._height*i+(50*i);
    }
trace(mc);
}
unloadMovie(thumb_mc);
}

formaMc()


Quais são as propriedades de controle?
0

#4 User is offline   ubi_rj 

  • Group: Moderador Global
  • Posts: 2920
  • Joined: 29-June 07

Posted 09 May 2009 - 09:46 PM

E ae grande,

Testa assim:

CÓDIGO
EspaçoX = 10; // Espaço entre os MovieClips na horizontal
EspaçoY = 10; // Espaço entre os MovieClips na vertical
InicioX = 10; // Define em que X vai começar a duplicação
InicioY = 50; // Define em que Y vai começar a duplicaçao

function formaMc() {
_root.controle = 0;
for (var i:Number=0; i<10; i++) {
var mc:MovieClip = thumb_mc.duplicateMovieClip("mc"+i, _root.getNextHighestDepth());
if (_root.controle >= 4) {
_root.controle = 0;
InicioX = 10;
InicioY = InicioY + mc._height + EspaçoY
}
mc._x = InicioX
mc._y = InicioY
InicioX = mc._x + mc._width + EspaçoX
_root.controle = _root.controle + 1
}

unloadMovie(thumb_mc);
}
formaMc();


Abraço !
0

#5 User is offline   Uriel Juliatti 

  • Group: Membros
  • Posts: 120
  • Joined: 27-March 09

Posted 10 May 2009 - 09:30 PM

QUOTE(ubi_rj @ 9/5/2009 20:05:10) <{POST_SNAPBACK}>
E ae grande,

Testa assim:

CÓDIGO
EspaçoX = 10; // Espaço entre os MovieClips na horizontal
EspaçoY = 10; // Espaço entre os MovieClips na vertical
InicioX = 10; // Define em que X vai começar a duplicação
InicioY = 50; // Define em que Y vai começar a duplicaçao

function formaMc() {
_root.controle = 0;
for (var i:Number=0; i<10; i++) {
var mc:MovieClip = thumb_mc.duplicateMovieClip("mc"+i, _root.getNextHighestDepth());
if (_root.controle >= 4) {
_root.controle = 0;
InicioX = 10;
InicioY = InicioY + mc._height + EspaçoY
}
mc._x = InicioX
mc._y = InicioY
InicioX = mc._x + mc._width + EspaçoX
_root.controle = _root.controle + 1
}

unloadMovie(thumb_mc);
}
formaMc();


Abraço !


Opa, perfeito!!
0

#6 User is offline   Uriel Juliatti 

  • Group: Membros
  • Posts: 120
  • Joined: 27-March 09

Posted 12 May 2009 - 05:07 PM

Beleza pura, atualizei o código, consegui multiplicar e vou fazer um teste com a classe tween!
0

#7 User is offline   Thiago Torres 

  • Group: Membros
  • Posts: 16
  • Joined: 23-May 07

Posted 13 May 2009 - 05:20 PM

Aproveitando o gancho deste tópico, estou com uma dúvida também, mas só que é no AS3.

Estou criando MovieClips dinâmicamente e gostaria de saber como saber manipular cada MC criado ?

Meu código é o seguinte:

var total:Number;
var xml:XML = new XML();
var loadXML:URLLoader = new URLLoader();
//carregando XML adicionando o evento COMPLETE
loadXML.load(new URLRequest("xml.xml"));
loadXML.addEventListener(Event.COMPLETE, lista);
//função Listar, mostra o MC e duplica
function lista (event:Event) {
xml = new XML(event.target.data);
total = xml.nomes.length();
for (var i=0; i<total; i++) {
var MC:MovieClip = new mc();
var loadIMG:Loader = new Loader();
addChildAt(MC);
// adicionando Imagem
loadIMG.load(new URLRequest(xml.banners.img[i]));
MC.img.addChild(loadIMG);

}
}

Minha intenção é fazer com que cada MovieClip carregue uma imagem e deixe invisível, assim tento trabalhar com uma transição entre
os MC's...

No AS2, como no exemplo deste tópico podemos criar os MC's colocando o nome e o nível. E no AS3, ainda é possível ?

Obrigado
0

Share this topic:


Page 1 of 1
  • You cannot start a new topic
  • You cannot reply to this topic



Publicidade




1 User(s) are reading this topic
0 membro(s), 1 visitante(s) e 0 membros anônimo(s)