Как сделать цикл между 2 кадрами, используя коэффициент скорости? AS3 FlashDevelop

Я рад быть здесь! Позвольте мне спросить.. У меня есть функция:

trace(figurasQuePiscarao) = 1,4,5,6,8,14,15

velocidadePiscaFigura:Number = 5

function enterFramePisca(e:Event):void {
                volta++
                if (volta >= objConfig.velocidadePiscaFigura * 3 )
                    volta = 0
                if (volta == objConfig.velocidadePiscaFigura)
                    trace('blink1')
                    for (var i:int = 1; i < objComunicacao.figurasQuePiscarao.length; i++ ) {
                        if(getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[i])) {
                            MovieClip(getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[i])).gotoAndStop(2)
                        }
                    }
                if (volta == (objConfig.velocidadePiscaFigura * 2))
                    trace('blink2')
                    for (var j:int = 1; j < objComunicacao.figurasQuePiscarao.length; j++ ) {
                        if (getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[j]))
                            MovieClip(getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[j])).goToAndStop(3)

                    }
            }

Выходные данные отладчика: blink1 blink2 blink1 blink2 blink1 blink2 blink1 blink2 blink1 ....

Так что с enterFrame все в порядке... Но я хочу, чтобы эти мувиклипы меняли кадр... но все они настаивают на том, чтобы оставаться в кадре 2... Я хочу, чтобы это изменялось между 2 и 3... зацикливаясь... используя этот фактор скорости 'velocidadePiscaFigura' .. Я ценю вашу помощь, извините за плохой английский... Спасибо

1 ответ

Решение

Я думаю, что, возможно, это простая маленькая ошибка:

MovieClip(getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[j])).goToAndStop(3)

goToAndStop(3) должно быть gotoAndStop(3), право?

РЕДАКТИРОВАТЬ:

Кроме того, вы должны использовать {} скобки и ; правильно:

velocidadePiscaFigura:Number = 5;

function enterFramePisca(e:Event):void {
            volta++;
            if (volta >= objConfig.velocidadePiscaFigura * 3 ) {
                volta = 0;
            }
            if (volta == objConfig.velocidadePiscaFigura) {
                trace('blink1');
                for (var i:int = 1; i < objComunicacao.figurasQuePiscarao.length; i++ ) {
                    if(getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[i])) {
                        MovieClip(getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[i])).gotoAndStop(2);
                    }
                }
            }
            if (volta == (objConfig.velocidadePiscaFigura * 2)) {
                trace('blink2');
                for (var j:int = 1; j < objComunicacao.figurasQuePiscarao.length; j++ ) {
                    if (getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[j])) {
                        MovieClip(getChildByName("mcF" + objComunicacao.posicoesQuePiscarao[j])).gotoAndStop(3);
                    }
                }
            }
        }
Другие вопросы по тегам