Ir para conteúdo

POWERED BY:

Arquivado

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

ricardo_mc

[Resolvido] swapDepths e criar MC em uma layer específica

Recommended Posts

Bom, eu montei o seguinte código, que pode ser visto funcionando aki:

 

http://www.unlock.com.br/gestor/

 

on (release) {
	this.createEmptyMovieClip("img_mc",this.getNextHighestDepth());
	duplicateMovieClip(img_mc, "newImg_mc2", this.getNextHighestDepth());
	if (Stage.width >= 1050 || Stage.height >= 850) {
		newImg_mc2._x = 470;
		newImg_mc2._y = random(60);
	}
	if (Stage.width < 1050 || Stage.height < 850) {
		newImg_mc2._x = 10;
		newImg_mc2._y = random(60);
	}
	newImg_mc2.loadMovie("pastas/garantias.swf");
}

Isso é um botão de uma grade botões que dão loadMovie em SWFs externos. De modo a poder alinhar todos os botões aonde eu quiser (assim como colocar a função de Drag na grade) eu coloquei todos em um MC chamado "buttons".

 

Acontece que todos os SWFs externos são chamados dentro desse MC criado, e se eu colocar a função Drag nele, ela vai arrastar todos os botões junto dos SWFs externos.

 

Tem como de dentro desse MC mandar criar e duplicar os loadMovie no "root"?? Dessa forma o 'Drag' não afetaria todos os loads.

 

Tentei colocar '_root' no lugar do 'this', assim como "duplicateMovieClip(img_mc, _root.newImg_mc2, this.getNextHighestDepth());" e outras variações, mas nenhuma deu certo.

 

Aguém sabe como resolver isso??

 

*********************************

 

A outra é em relação ao 'swapDepths'. Em cada loadMovie, é aberto uma janela, com função de Drag, mas acontece que várias janelas podem ser abertas ao mesmo tempo. O problema é que ao dar loadMovie nelas, elas já ficam com Depth fixo, e eu não estou conseguindo usar a função "swapDepth" nela.

 

A idéia é que ao arrastar as janelas (usar o startDrag) ele automaticamente mudar as 'Depths' para cima.

 

Como pode ser visto no código, ele já usa 'getNextHighestDepth()' no loadMovie. A minha idéia foi pegar esses SWFs externos e colocar na função Drag deles o seguinte código:

 

on (press) {
	startDrag(this._parent);
	this.swapDepths(getNextHighestDepth());
	this._parent._alpha = 50;
}

E no caso eu tbm tentei tirar o código 'getNextHighestDepth()' do loadMovie, mas tbm não deu certo.

 

Alguém tem idéia de como resolver isso??

 

 

Agradeço quem puder me dar uma ajudinha :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

Bom, consegui resolver 1 dos problemas.

 

No caso de criar o MC novo no '_root', eu tive que colocar as funções dos botões em um frame no _root, ao invés de colocar diretamente dentro do botão.

 

Mas eu ainda não estou conseguindo fazer o "swapDepths", com a função de ao clicar para arrastar as janelas, elas ficarem sobre as outras.

 

Any ideas about that?? :D

Compartilhar este post


Link para o post
Compartilhar em outros sites

BOm, sinto q estou chegando perto, mas dei de cara com a parede. Conseguir fazer o swapDepth da maneira errada.

 

Ele está funcionando mas de forma oposta. Ao clicar no botão Drag, ao invés de ele trazer para cima, ele está enviando para baixo.

 

O código q eu estou usando no botão é esse aqui:

on (press) {
	startDrag(this._parent);
	this._parent._alpha = 50;
	this._parent.swapDepths(getNextHighestDepth());
}

O que eu preciso é que ele faça exatamente o oposto do que está acontecendo, ao invés de trocar o Depth e enviar para trás do resto, eu quero que ele troque para frente (e não com a frente).

 

Bom, tentei colocar uma condição, mas naum deu muito certo. Fiz assim:

 

on (press) {
	startDrag(this._parent);
	this._parent._alpha = 50;
	if (this._parent.getNextHighestDepth() == 0) {
		this._parent.swapDepths(getNextHighestDepth());
	}
}

Mas dessa forma ele continua enviando para baixo ao invés de para cima. Olhando o efeito funcionar, parece uma coisa simples, mas eu naum estou conseguindo.

 

 

Malz pelos 3 posts seguidos, mas infelizmente não dá pra editar o post.

 

Se precisarem eu posto os arquivos fontes para analisarem. VLw ae quem puder dar uma ajuda.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caraio, eu naum sei se te agradeço ou se bato em você.... pqp eu sabia q era uma parada babaca de simples, mas naum esperava que fosse tanto.

 

Meu caro, funcionou perfeitamente, muito obrigado pelo bizu. O pior é que eu tinha tentado várias coisas parecidas, e inclusive isso tbm, mas eu havia tentado colocando o código no frame, ao invés de fazer essa alteração apenas no botão.

 

Bahh... acho que só vou voltar a ver esse código semana que vem de tanto estresse que ele trouxe.

 

Vlw mesmo e se quiserem podem fechar o tópico :D

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.