![]() |
|
||||||||||
|
|||||
|
Регистрация: Jan 2010
Сообщений: 38
|
Подскажите, пожалуйста, как сделать проверку на количество фреймов в мувиклипе.
То есть условие, если фреймов в мувиклипе больше двух, то "это", если нет, то "другое". |
|
|||||
|
Регистрация: Nov 2007
Сообщений: 1,724
|
|
|
|||||
|
Регистрация: Jan 2010
Сообщений: 38
|
Спасибо
![]() ЕЩе вопрос появился - можно как нибудь заставить анимированный мувиклип не проигрывать анмиацию, иначе чем stop(). МОжет быть можно как то установить скорость анимации = 0? |
|
|||||
|
...
модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
|
А stop() чем не устраивает?
|
|
|||||
|
Регистрация: Jan 2010
Сообщений: 38
|
Возможно я захотел невозможного. Но все-таки напишу.
В ходе тестов игры была выявлена серьезная пробелма - после последних изменений. Каждый уровень игры постепенно начинал тормозить и до такой степени, что играть становилось невозможно. Причина тормозов выявлена. Имеется множество блоков с множеством кадров и один вид блоков с 2 кадрами - неразрушаемый. На уровнях блоки рандомно распределяются. Теперь пишу код столкновений блоков с шариком и результат столкновений. Кусочек кода о столкновениях: //столкновения с объектами из массива. var i = boxes.length; while (i--) { var curB = boxes[i]; if (curB.hitTest(MCball)){ if (Math.abs(MCball._x-4.5+MCball._width-curB._x)<MCball._width){ Ball_dx=-Math.abs(Ball_dx); } if (Math.abs(MCball._x-4.5-curB._x-curB._width)<MCball._width){ Ball_dx=Math.abs(Ball_dx); } if (Math.abs(MCball._y-4.5+MCball._height-curB._y)<MCball._height){ Ball_dy=-Math.abs(Ball_dy); } if (Math.abs(MCball._y-4.5-curB._y-curB._height)<MCball._height){ Ball_dy=Math.abs(Ball_dy); } //Смотрим, сколько кадров у объекта. Если больше двух - то это обычный блок, //за него начисляются очки и он пропадает. Если меньше двух - то это неразраушаемый блок. if (curB._totalframes > 2) { _global.score+=10; curB.removeMovieClip(); remove = 1; if(remove ==1){ _global.compteurbriques--; remove = 0;} //Если количество блоков на уровне становится равно количеству неразрушаемых блоков //то переходим на другой уровень. if (_global.compteurbriques==_global.blockm){ _global.levelcourant++; _root.gotoAndPlay("chargementLevel"); _global.lives+=1; lvlremove += 1; } } Тормоза в игре усиляются со временем, даже если ни разу не запускать шарик в блоки. Последний раз редактировалось CHLameR; 01.02.2010 в 17:45. |
![]() |
![]() |
Часовой пояс GMT +4, время: 21:38. |
|
|
« Предыдущая тема | Следующая тема » |
|
|