..:: MX Studio Fóruns ::..: XMOUSE - Flash + XML - ..:: 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

XMOUSE - Flash + XML Ajuste na lógica de movimento

#1 User is offline   souza_sp 

  • Group: Membros
  • Posts: 128
  • Joined: 09-October 07

Posted 18 July 2008 - 04:59 PM

Fala pessoal.. tudo na paz.?

Alguém poderia me ajudar a regular essa lógica de movimento.?.. vamos lá

O meu arquivo é um loop infinito que executa no _xmouse carregado de um arquivo XML.. se põe o mouse pra esquerda.. as fotos vão para a direita.. e vice-versa.

Ta quase tudo pronto.. só que ao executar o loop.. ou seja, repetir as fotos em ambas as posições X do mouse, qdo as fotos estão passando das primeiras para as ultimas, ao invés de na ultima imagem do XML.. já começar a primiera e vice-versa.. ele da um espaço... e posiciona diferente.

Segue abaixo meu script

//---------------------------

Stage.scaleMode = "noScale";
//// Respeitar acentuacao
System.useCodepage = true;
//// Criar o objeto
var meuXML:XML = new XML();
//// Ignorar os espacos
meuXML.ignoreWhite = true;
//// Carregar o arquivo XML
meuXML.load("./revistas/revistas.xml");
//// Variaveis
var clique = 0;
var gdeMCL:MovieClipLoader = new MovieClipLoader();
var pqMCL:MovieClipLoader = new MovieClipLoader();
var gdeListener:Object = new Object();
var pqListener:Object = new Object();
var linhaAtual:Number = 0;
var colunaAtual:Number = 0;
var largura:Number = 120;
var passo:Number = 480;
var altura:Number = 1;
var xInicial:Number = 200;
var xFinal:Number = slide_recebe.recebe._x;
//// Exibir os dados carregados
meuXML.onLoad = function(ok) {
if (ok) {
qtdFotos = meuXML.firstChild.childNodes.length;
montaPequeno();
}
};
function montaPequeno() {
//// Criar um for pra listar todos os NÓS
for (i=0; i<qtdFotos; i++) {
var mc:MovieClip = slide_recebe.recebe.attachMovie("mc_thumb", "mc_thumb"+i, slide_recebe.recebe.getNextHighestDepth());
mc._x = linhaAtual*largura;
mc._y = colunaAtual*altura;
linhaAtual++;
mc.texto.text = meuXML.firstChild.childNodes[i].attributes.texto;
mcs.push(mc);
//// Carregar os thumbs no MC transparente que esta dentro do MC thumb seguido da var mc
pqMCL.loadClip("./revistas/"+meuXML.firstChild.childNodes[i].attributes.foto, mc.mcFoto);
mc.hit.imagem = i;
//// Logica do movimento
ratio = Stage.width;
speed = 50;
onEnterFrame = function () {
if (this._x>qtdFotos-1) {
_x -= (qtdFotos-1)*120;
}
if (this._x<(0-this._width)) {
_x += (qtdFotos-1)*120;
}
xpos = _root._xmouse-ratio/2;
this._x = this._x-xpos/speed;
};

mc.hit.onRelease = function() {
_root.gotoAndPlay("saida");
_global.id = this.id;
};
}
}
gdeMCL.addListener(gdeListener);
pqMCL.addListener(pqListener);

//---------------------------

Bom é isso.. acho q consegui explicar.
Conto com a ajuda de todos.
[]´s.
Souza.
0

#2 User is offline   UrsuMalditu 

  • Group: Membros
  • Posts: 179
  • Joined: 13-January 06

Posted 18 July 2008 - 05:29 PM

Posta o swf pra gente ver online

QUOTE(souza_sp @ 18/7/2008 15:07:48) <{POST_SNAPBACK}>
Fala pessoal.. tudo na paz.?

Alguém poderia me ajudar a regular essa lógica de movimento.?.. vamos lá

O meu arquivo é um loop infinito que executa no _xmouse carregado de um arquivo XML.. se põe o mouse pra esquerda.. as fotos vão para a direita.. e vice-versa.

Ta quase tudo pronto.. só que ao executar o loop.. ou seja, repetir as fotos em ambas as posições X do mouse, qdo as fotos estão passando das primeiras para as ultimas, ao invés de na ultima imagem do XML.. já começar a primiera e vice-versa.. ele da um espaço... e posiciona diferente.

Segue abaixo meu script

//---------------------------

Stage.scaleMode = "noScale";
//// Respeitar acentuacao
System.useCodepage = true;
//// Criar o objeto
var meuXML:XML = new XML();
//// Ignorar os espacos
meuXML.ignoreWhite = true;
//// Carregar o arquivo XML
meuXML.load("./revistas/revistas.xml");
//// Variaveis
var clique = 0;
var gdeMCL:MovieClipLoader = new MovieClipLoader();
var pqMCL:MovieClipLoader = new MovieClipLoader();
var gdeListener:Object = new Object();
var pqListener:Object = new Object();
var linhaAtual:Number = 0;
var colunaAtual:Number = 0;
var largura:Number = 120;
var passo:Number = 480;
var altura:Number = 1;
var xInicial:Number = 200;
var xFinal:Number = slide_recebe.recebe._x;
//// Exibir os dados carregados
meuXML.onLoad = function(ok) {
if (ok) {
qtdFotos = meuXML.firstChild.childNodes.length;
montaPequeno();
}
};
function montaPequeno() {
//// Criar um for pra listar todos os NÓS
for (i=0; i<qtdFotos; i++) {
var mc:MovieClip = slide_recebe.recebe.attachMovie("mc_thumb", "mc_thumb"+i, slide_recebe.recebe.getNextHighestDepth());
mc._x = linhaAtual*largura;
mc._y = colunaAtual*altura;
linhaAtual++;
mc.texto.text = meuXML.firstChild.childNodes[i].attributes.texto;
mcs.push(mc);
//// Carregar os thumbs no MC transparente que esta dentro do MC thumb seguido da var mc
pqMCL.loadClip("./revistas/"+meuXML.firstChild.childNodes[i].attributes.foto, mc.mcFoto);
mc.hit.imagem = i;
//// Logica do movimento
ratio = Stage.width;
speed = 50;
onEnterFrame = function () {
if (this._x>qtdFotos-1) {
_x -= (qtdFotos-1)*120;
}
if (this._x<(0-this._width)) {
_x += (qtdFotos-1)*120;
}
xpos = _root._xmouse-ratio/2;
this._x = this._x-xpos/speed;
};

mc.hit.onRelease = function() {
_root.gotoAndPlay("saida");
_global.id = this.id;
};
}
}
gdeMCL.addListener(gdeListener);
pqMCL.addListener(pqListener);

//---------------------------

Bom é isso.. acho q consegui explicar.
Conto com a ajuda de todos.
[]´s.
Souza.


0

#3 User is offline   souza_sp 

  • Group: Membros
  • Posts: 128
  • Joined: 09-October 07

Posted 18 July 2008 - 05:45 PM

http://www.j3p.com.br/teste/Revista
0

#4 User is offline   souza_sp 

  • Group: Membros
  • Posts: 128
  • Joined: 09-October 07

Posted 21 July 2008 - 11:57 AM

ninguém.?
0

#5 User is offline   souza_sp 

  • Group: Membros
  • Posts: 128
  • Joined: 09-October 07

Posted 21 July 2008 - 05:04 PM

pessoal.. mudei meu script e ta quase lá.. só que o arquivo está sofrendo modificações.. vejam abaixo.

//-----------------------------------------------

stop();
System.useCodepage = true;
//criando o objeto
var meuXML:XML = new XML();
//ignorar os espaços em branco
meuXML.ignoreWhite = true;
//Carregamos o xml
meuXML.load("./revistas/revistas.xml");
//Variaveis
var speed:Number = 10;
var distancia:Number = 1;
var ratio:Number = Stage.width;
var largura:Number = 132;
//Exibindo os dados carregados
meuXML.onLoad = function():Void {
//vamos pegar a quantidade de itens que há no xml
qtd = this.firstChild.childNodes.length;
//vamos criar um laço de repetição gerando mcs de acordo com a quantidade de itens do XML
for (i=0; i<qtd; i++) {
//agora duplicamos o MovieClip 'mcTexto' que é o nosso modelo
recebe.duplicateMovieClip('mc_thumb'+i, _root.getNextHighestDepth());
//configuramos a largura do novo mc
_root['mc_thumb'+i]._x += i*largura;
//pegamos no xml os atributos
_root["mc_thumb"+i].mcFoto.loadMovie("./revistas/"+this.firstChild.childNodes[i].attributes.foto);
//logica do movimento
_root['mc_thumb'+i].onEnterFrame = function() {
if (this._x<(0-this._width)) {
this._x -= (distancia*speed);
this._x = (qtd-1)*largura;
}
if (this._x>(qtd-1)*largura) {
this._x += (distancia*speed);
this._x = (0-this._width);
}
xpos = _root._xmouse-ratio/2;
this._x = this._x-xpos/speed;
};
}

mc_thumb.unloadMovie();
};

//-----------------------------------------------

Só pra lembrar.. o meu MC começa na posição 0 em X.. e qdo vai rolando as imagens.. ele vai ESPAÇANDO.. tanto pra frente qto pra tras... OQ PODE SER.?

Conto com a ajuda de todos.
[]´s.
Souza.

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)