Ir para conteúdo

POWERED BY:

Arquivado

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

sabrinabandare

Como resolver loop infinito no Flash?

Recommended Posts

Com diversas ajudas estou desenvolvendo um joguinho para criança com o seguinte conceito:- 2 bolas que se draga- 2 quadrados estaticosAo dragar as 2 bolas para seus respectivos quadrados corretamente, deve se abrir um formulario noframe 2.Porém esta apresentando o seguinte erro:256 levels of recursion were exceeded in one action list.This is probably an infinite loop.Further execution of actions has been disabled in this movie.== CÓDIGO ACTIONSCRIPT ================================//cria uma variável que nos indicará se está na posição certavar circ_ok = false;var quad_ok=false;//cria uma função para quando manter o botão pressionado em cima do circulocirculo_mc.onPress = function() {//Este if é para evitar que o mc se movimente novamente, caso já esteja na posição certa.if (!circ_ok) {//começa a arrastar o circulothis.startDrag();}}// cria uma função para quando soltar o botão do mouse de cima do circulocirculo_mc.onRelease = function() {//para de arrastarthis.stopDrag();//Testa se a posição do circulo esta no eixo corretoif (this._x > 10 && this._x <50 && this._y >200 && this._y<250) {//Se estiver entre essas posições, fixa o circulo nas coordenadas a seguir.this._x=30;this._y=220;circ_ok = true;} else {//Se não estiver na posição certa, coloca o circulo na posição inicialthis._x=117.1;this._y=-48.3;}}//cria uma função para quando manter o botão pressionado em cima do quadradoquadrado_mc.onPress = function() {//Este if é para evitar que o mc se movimente novamente, caso já esteja na posição certa.if (!quad_ok) {//começa a arrastar o quadradothis.startDrag();}}// cria uma função para quando soltar o botão do mouse de cima do quadradoquadrado_mc.onRelease = function() {//para de arrastarthis.stopDrag();//Testa se a posição do quadrado esta no eixo correto.if (this._x > 220 && this._x <250 && this._y >200 && this._y<250) {//Se estiver entre essas posições, fixa o quadrado nas coordenadas a seguirthis._x=200;this._y=220;quad_ok = true;} else {//Se não estiver na posição certa, coloca o quadrado na posição inicialthis._x=237;this._y=-64.8;}}//Cria uma função que fica testando constantemente se as duas variáveis que marcam se os MCs estão na posição certa e, se estiverem, avança a animação para o próximo quadro, onde está o formulário.this.onEnterFrame = function() {//Se o circulo e o quadrado estiverem na posição certa, para de verificar e avança para o quadro 2.if(circ_ok && quad_ok) {delete this.onEnterFrame();gotoAndStop(2);}}//fica parado neste quadro.stop();== FINAL CÓDIGO ACTIONSCRIPT ================================

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.