View Full Version : Help...!!!niveis No Flash!!!


The Dreamer
08-02-2008, 19:10
Allôs Malta!
Venho pedir mais uma vez a vossa preciosa ajuda.

Tou a construir sites em flash mas ainda ando com o Actionscript 2. E ainda assim meio tosco.Tenho uma duvida que é:

-Como é q consigo atribuir comandos a botoes ou movieclip's q estejam em niveis diferentes?! Por ex:Se tiver um botão no nivel 1 e um movieclip no nivel 0 como faço para ao clicar no botao acionar o movieclip no nivel abaixo? E vice-versa. O botao no nivel 0 e o movie no 1.
Nós puxamos o ficheiro do nivel que queremos com o loadMovieNum mas depois como podemos dar acçoes dentro desse nivel?

Mais um exemplo...
Se tiver 5 botoes no nivel 0 e um movie no nivel 1 com 5 frames(imagina q são 5 fotos) e quiser que cada botao no nivel 0 abra uma frame do movie do nivel 1 como faço?

Bem...desculpem a seca. Espero ter-me feito entender. Se puderem dar umas dicas agradeço.

Abraço e tudo de bom.

PS:Se conhecerem algum livro de Actionscript 3 em portugues digam qlqr coisa please

Grande Obrigado a todos.

michael c
08-02-2008, 20:17
Boas

- Respondendo à tua questão: como podes subir/descer de nível no flash?

Para manipulares objectos que estão em diferentes níveis dentro do Flash tens de usar o comando _parent. cada "_parent." sobe um nível, ou seja, se tiveres algo deste genero num botão:

on (release) {
_parent._parent._parent.nomedomovieclipquequeresma nipular.gotoAndPlay("nomedaLabel");
}

o que estás a manipular é um movieclip (define o nome no instance name field) que está duas timelines, ou seja, dois níveis acima da timeline onde se encontra o teu botão.

Isto para subires.

Para manipulares um movieclip que está abaixo da tua timeline tens de usar os instance name de diversos movieclips até chegares até ele. Assim, por exemplo:

on (release) {
_this.movieclip1.movieclip2.meumc.gotoAndPlay("nomedalabel");

}

O que estarias a fazer era, estando numa determinada timeline que tem um movieclip chamado "movieclip1" que por sua vez tem outro dentro dele chamado "movieclip2" que por sua vez tem outro dentro dele chamado "meumc" (que é o que tu queres manipular), esse "meumc" iria para a label ou frame que tu definisses.

Com esta solução automaticamente resolves também o teu segundo problema da galeria de fortografias e dos botões.

Caso não tenhas percebido diz que eu tento ser mais explicito.

Cumps

davidprod
11-02-2008, 10:45
ja tives-te a tua ajuda, e penso que com o _parent ja te safas. So querida deixar aqui uma sugestão.. o _parent não serve para níveis (apesar de ser essa a nossa ideia), níveis no flash é outra coisa... por exemplo quando crias um movieclip por codigo tens de lhe atribuir o nível.. isso sim são os níveis :D

Cumps

michael c
11-02-2008, 17:35
Com os _level0 ou _level1 etc só iria deixar o user ainda mais confuso. Acho que para quem começa é sempre mais simples o _parent. No Flash tem de se entrar primeiro na mecânica da coisa, e isso ao inicio é bastante complicado. Mais vale simplificar e não complicar mto.

Just my 50cent
Cumps

The Dreamer
11-02-2008, 19:34
Oi! Desculpem que fikei um poukito baralhado agora. É que quando me refiro a niveis estou a falar em swf's diferentes.E que estão em level's diferentes e são chamados por loadMovieNum..! E nesse caso como consigo dar instruções de um level para outro?! Eu sei q o _parent vai subindo "nivel" a nivel" até chegar ao _root né?! Dentro do mesmo documento. Mas estou a falar mesmo de "level's" diferentes.

Imaginem uma situação:

-Tenho um menu no level 0 onde tenho um movieclip com uma bola(por exemplo). Entretanto nesse menu no level 0 clico num dos botoes e abre um conteudo um nivel acima(level1).Até aqui tudo bem q é fácil chamar os level's.
Agora a minha kestão é que se tiver um botão nesse documento que está no level 1 em que eu queira que acione a bola que está no level 0 e corra a animação,como faço?!

Não sei se me estou a conseguir explicar. E se calhar é uma coisa simples mas ainda não consegui lá chegar e dava um jeitão atinar com isso.

Bem...mais uma vez agradeço a vossa atenção.

Abraços

FredAsterr
11-02-2008, 19:53
Oi! Desculpem que fikei um poukito baralhado agora. É que quando me refiro a niveis estou a falar em swf's diferentes.E que estão em level's diferentes e são chamados por loadMovieNum..! E nesse caso como consigo dar instruções de um level para outro?! Eu sei q o _parent vai subindo "nivel" a nivel" até chegar ao _root né?! Dentro do mesmo documento. Mas estou a falar mesmo de "level's" diferentes.

Imaginem uma situação:

-Tenho um menu no level 0 onde tenho um movieclip com uma bola(por exemplo). Entretanto nesse menu no level 0 clico num dos botoes e abre um conteudo um nivel acima(level1).Até aqui tudo bem q é fácil chamar os level's.
Agora a minha kestão é que se tiver um botão nesse documento que está no level 1 em que eu queira que acione a bola que está no level 0 e corra a animação,como faço?!

Não sei se me estou a conseguir explicar. E se calhar é uma coisa simples mas ainda não consegui lá chegar e dava um jeitão atinar com isso.

Bem...mais uma vez agradeço a vossa atenção.

Abraços
Tou com o mesmo problema... Tipo tenho dois movieclips que estão na mesma layer, com nome carega1 e carega2

o problema é o seguinte eu kero k quando o carega1 esta a caregar um movie esse fique por cima do carega2 e vice versa...

axo k o the dreamer esta na mesma situaçao

desde ja agradeço a vossa atencao

cumps

Axo k ja encontrei algo...

o parametro swapDepths axo k resolve a minha duvida...

instancia_do_clipe.swapDepths(nivel);

assim posso definir o nivel do movieclip

Axo eu ainda nao testei...

FredAsterr
11-02-2008, 20:07
Ja testei e é isso mesmo swapDepths permit nos dizer o nivel do movie...

michael c
11-02-2008, 20:58
Oi! Desculpem que fikei um poukito baralhado agora. É que quando me refiro a niveis estou a falar em swf's diferentes.E que estão em level's diferentes e são chamados por loadMovieNum..! E nesse caso como consigo dar instruções de um level para outro?! Eu sei q o _parent vai subindo "nivel" a nivel" até chegar ao _root né?! Dentro do mesmo documento. Mas estou a falar mesmo de "level's" diferentes.

Imaginem uma situação:

-Tenho um menu no level 0 onde tenho um movieclip com uma bola(por exemplo). Entretanto nesse menu no level 0 clico num dos botoes e abre um conteudo um nivel acima(level1).Até aqui tudo bem q é fácil chamar os level's.
Agora a minha kestão é que se tiver um botão nesse documento que está no level 1 em que eu queira que acione a bola que está no level 0 e corra a animação,como faço?!

Não sei se me estou a conseguir explicar. E se calhar é uma coisa simples mas ainda não consegui lá chegar e dava um jeitão atinar com isso.

Bem...mais uma vez agradeço a vossa atenção.

Abraços

Simples. Partindo do principio que o teu movieclip da bola tem como instance name "bolamc" e que se encontra no level0 e que o teu botão se encontra no level1 basta colocares isto no botão:

on (release) {
_level0.bolamc.gotoAndPlay("qqcoisa")

}

Cumps

The Dreamer
11-02-2008, 21:03
Sou mesmo duhhh..! lol

Bem me parecia q não seria nada de extraordinário mas não tava a chegar lá. :(

Um grande obrigado a todos. É fixe ter um forum e malta a ajudar.

Obrigado também ao FredAsterr que essa do swapdepths tb há-de ser útil.

Até breve