Bom Dia..
Estou com uma dúvida simples mas não encontro uma solução. Quero retroceder 10 frames. Exemplo: frame 110 para o frame 100 do 100 para o 90 e assim por diante..
Quero usar um botão simples. Como posso fazer isso?
Obrigado ai.
Publicidade
|
|
Page 1 of 1
dúvidas com prevFrame, retroceder sempre 10 em 10 dúvidas com prevFrame, retroceder sempre 10 em 10
#2
Posted 19 August 2009 - 12:58 PM
blz?
Basicamente você resolve isso com condições if else e verifica por exemplo frame atual(currentFrame) e compara com a quantidade de frames total(totalFrames) e controla a timeline baseado nessas condições.
Ex. pra AS3:
1- No stage tem 2 MCs que serão os botões com nome de instâncias prevBtn(retroceder) e nextBtn(avançar),
2- No 1º frame da timeline principal insire o código:
AS3:
Ex:
http://rapidshare.com/files/269148550/cont...es_as3.fla.html
Abraço.
Basicamente você resolve isso com condições if else e verifica por exemplo frame atual(currentFrame) e compara com a quantidade de frames total(totalFrames) e controla a timeline baseado nessas condições.
Ex. pra AS3:
1- No stage tem 2 MCs que serão os botões com nome de instâncias prevBtn(retroceder) e nextBtn(avançar),
2- No 1º frame da timeline principal insire o código:
AS3:
CÓDIGO
//paro a timeline pra não rodar animação.
stop();
//armazeno quantidade atual de frame dessa timeline
var frameAtual:int = MovieClip(root).currentFrame;
//quantidade total de frames dessa timeline
var frameTotal:int = MovieClip(root).totalFrames;
// total de frames que quero mudar a cada clique
var numFrames:uint = 10;
//minimo de frames existente, no minimo tem q ter 1 frame na timeline.
var minFrames:uint = 1;
//aplico eventos de clique nos botões, e dipara função
prevBtn.addEventListener(MouseEvent.CLICK, verificaFrames);
nextBtn.addEventListener(MouseEvent.CLICK, verificaFrames);
//quando um dos botões forem clicado dispara essa função
function verificaFrames(e:MouseEvent):void
{
//se clicar o nextBtn, faça...
if(e.currentTarget.name == "nextBtn")
{
if(frameAtual == minFrames)
{
frameAtual += numFrames - minFrames;
gotoAndStop(frameAtual);
trace("next ", frameAtual);
}
else if(frameAtual != minFrames)
{
if(frameAtual >= frameTotal)
{
frameAtual = frameTotal;
gotoAndStop(frameAtual);
trace("final");
}
else
{
frameAtual += numFrames;
gotoAndStop(frameAtual);
trace("next ", frameAtual);
}
}
}
//se clicar o prevBtn, faça...
else if(e.currentTarget.name == "prevBtn")
{
if(frameAtual == minFrames)
{
frameAtual = minFrames;
gotoAndStop(frameAtual);
trace("começo");
}
else if(frameAtual !== minFrames)
{
frameAtual -= numFrames;
gotoAndStop(frameAtual);
trace("prev ", frameAtual);
}
}
}
stop();
//armazeno quantidade atual de frame dessa timeline
var frameAtual:int = MovieClip(root).currentFrame;
//quantidade total de frames dessa timeline
var frameTotal:int = MovieClip(root).totalFrames;
// total de frames que quero mudar a cada clique
var numFrames:uint = 10;
//minimo de frames existente, no minimo tem q ter 1 frame na timeline.
var minFrames:uint = 1;
//aplico eventos de clique nos botões, e dipara função
prevBtn.addEventListener(MouseEvent.CLICK, verificaFrames);
nextBtn.addEventListener(MouseEvent.CLICK, verificaFrames);
//quando um dos botões forem clicado dispara essa função
function verificaFrames(e:MouseEvent):void
{
//se clicar o nextBtn, faça...
if(e.currentTarget.name == "nextBtn")
{
if(frameAtual == minFrames)
{
frameAtual += numFrames - minFrames;
gotoAndStop(frameAtual);
trace("next ", frameAtual);
}
else if(frameAtual != minFrames)
{
if(frameAtual >= frameTotal)
{
frameAtual = frameTotal;
gotoAndStop(frameAtual);
trace("final");
}
else
{
frameAtual += numFrames;
gotoAndStop(frameAtual);
trace("next ", frameAtual);
}
}
}
//se clicar o prevBtn, faça...
else if(e.currentTarget.name == "prevBtn")
{
if(frameAtual == minFrames)
{
frameAtual = minFrames;
gotoAndStop(frameAtual);
trace("começo");
}
else if(frameAtual !== minFrames)
{
frameAtual -= numFrames;
gotoAndStop(frameAtual);
trace("prev ", frameAtual);
}
}
}
Ex:
http://rapidshare.com/files/269148550/cont...es_as3.fla.html
Abraço.
#3
Posted 23 August 2009 - 11:06 AM
aproveitando o topico, como usar esse exemplo com transiçoes para nao ficar tao "duro", tipo alpha ou mesmo com um tween...
Share this topic:
Page 1 of 1
Similar Topics
| Topic | Forum | Started By | Stats | Last Post Info | |
|---|---|---|---|---|---|
|
Exibir imagem do MYSQL pelo PHP
Imagem do banco de dados é exibida com caracteres. |
PHP |
Kung Lao
|
|
|
|
ddohttp://fitflopsflipshoes.snappages.com/ blumed chunari
|
Eventos | Guest_Basigmapege_* |
|
|
|
Power Mac G5 Quad
Dúvidas e mais Dúvidas... |
Plataforma Macintosh |
jst necromancer
|
|
|
|
Empresa surpreende com vibradores em feira de tecnologia
|
Notícias |
Notícias
|
|
|
|
michael kors outlet onlinengr
www.noveris.com/michaelkorsoutletj4.html |
Eventos |
EssethyRect
|
|
|
|
www.bodeenterprises.com/michaelkorshandbagsj4.htmlrg94
mk outlet |
Zona de Guerra |
sorygeoro
|
|
|
|
Empresas vão comprar 10 milhões de tablets em 2011, indica pesquisa
|
Notícias |
Notícias
|
|
|
|
iclhttp://fitflopmysalesa.snappages.com/ aerogels odalman
|
Eventos | Guest_Basigmapege_* |
|
Publicidade
|
|

Help













