PDA

Просмотр полной версии : Рандом


SpyCandy
15.02.2015, 17:27
random1 = Math.round(Math.random()*2);
trace(random1);

bookshelf.onEnterFrame = function()
{
if (((random1 == 1) || (random1 == 2)) && (hero._x > 420) && (hero._x < 800))
{
bookshelf.gotoAndStop('book');
}
if ((random1 == 0) && (hero._x > 420) && (hero._x < 800))
{
bookshelf.gotoAndStop('book2');
}
else
{
bookshelf.gotoAndStop(1);
}
};


Если random1=1 random1=2, то не переходит на 'book'

Почему?


Заранее Спасибо.

Psycho Tiger
15.02.2015, 20:40
Потому что второй if не связан с первым.
Короче говоря, срабатывает первый if, переходит на book. Всё круто.
Дальше идёт второе условие, там где random1 == 0 и оно не выполняется. Вроде всё верно.
Дальше встречается else, который выполняется, если не выполняется предыдущие условия. Вот тут-то и загвоздка – второй if не выполнился, а значит должен выполнится вот-этот вот else. И bookshelf успешно переходит в 1 кадр.

Решение проблемы: добавить else перед вторым if.

SpyCandy
16.02.2015, 16:04
Да, тупая ошибка) Спасибо)