Esse é um erro comum de quem está aprendendo Flash: colocar actions de botões em quadros na timeline.
O que você vai fazer: DECIDIR, primeiramente, ONDE você prefere colocar suas actions: se for no botão, faça como você disse acima, mas CLIQUE NO BOTÃO antes de abrir o painel de actions.
Aí, então, insira o code
on (release) {
if (this._currentframe == this._totalframes) {
gotoAndStop (1);
} else {
nextFrame ();
}
}
Agora, se for colocar na TIMELINE, tem que ser assim:
1) Instancie o MC como "proximaFoto_btn" no painel de propriedades do Flash MX...
2) Clique NO PRIMEIRO FRAME DE SUA CAMADA DE ACTIONS, em SEGUIDA, abra o painel de actions e insira o código abaixo:
stop();
this.proximaFoto_btn.onRelease = function():Void {
if (this._currentframe == this._totalframes) {
gotoAndStop(1);
} else {
nextFrame();
}
};
Daí você me pergunta: mas qual a diferença entre os dois codes, já que eles fazem exatamente a mesma coisa?
Eu já respondo: é que, colocando seu code em uma única camada (e o máximo possível no mesmo quadro) todo o seu code fica no mesmo lugar. Fica fácil de localizar, editar e atualizar. Se você estiver trabalhando em conjunto ou em equipe de desenvolvimento isso fará o trabalho mais fácil e mais consistente.
Aproveite que você está começando e desenvolva bons hábitos de programação Flash: procure por tutoriais sobre como comentar, estruturar e organizar o fluxo de scripts de seus arquivos Flash.
Isso fará seu rendimento e aprendizado render muito.
Abraços e bom estudo a todos nós.
pp