Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Делаю тест. Помогите понять, в чем ошибка (http://www.flasher.ru/forum/showthread.php?t=207693)

samana 03.05.2014 03:06

Причина в ваших условиях. Я попробую объяснить как оно срабатывает. Допустим count равен единице, но почему же переходит в третий кадр?

Код AS1/AS2:

if (count == 1)                //первая проверка. Да, count равен единице и команда перехода
{                                  //на второй кадр выполнится, но только после того, как весь код из данного кадра
        gotoAndStop(2);    //будет прочтён до конца.
}
                                    //чтение кода продолжается....
 
if (count == 2)                //вторая проверка не срабатывает, так как count не равен двойке в данный момент,
{
        gotoAndStop(3);
}
else                                // НО сработает эта строчка, ведь если count не равен двойке, тогда вы переходите 
{                                    // на четвёртый кадр, всё логично.
        gotoAndStop(4);
}

Просто не забывайте, что код обязательно прочитается весь, даже если была команда перехода на другой кадр.
Исправить ситуацию достаточно просто, поставьте цельную ветвь ифов. Здесь, переход на четвёртый кадр произойдёт только тогда, когда count будет равен любому числу, кроме единицы или двойки.

Код AS1/AS2:

if (count == 1)
{
        gotoAndStop(2);
}
else if (count == 2)    // <---  else if
{
        gotoAndStop(3);
}
else
{
        gotoAndStop(4);
}


Графиня 03.05.2014 03:16

Огромнейшее спасибо за объяснение! Мне очень важно было именно понять для себя, почему это так происходит. Удачи вам!!!!!!!!!!!

samana 03.05.2014 04:03

Спасибо и вам удачи!


Часовой пояс GMT +4, время: 08:51.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.