PDA

Просмотр полной версии : Жизни


Trilan
05.07.2007, 21:13
При столкновении врага с персонажем, у него отнимаются жизни. Как сделать так, чтобы когда жизней становится 0, сама игра переходила на другой кадр?

BigDan
05.07.2007, 21:15
onEnterFrame(если требуется)+if()+gotoAndPlay(Stop)

Trilan
05.07.2007, 21:31
Уже пробовал этот вариант. Есть какие-нибудь другие варианты? Кстати, может tellTarget'ом, может получится, или нет?

Kikasso
05.07.2007, 21:36
Какой другой вариант, кроме if ? Когда жизнь уменьшаете, тогда и проверяйте.
Только не
if(life == 0)...а
if(life <= 0)...

BigDan
05.07.2007, 21:44
onEnterFrame = function(){
if(life <= 0){
_root.gotoAndPlay(нужный_кадр)
delete this.onEnterFrame;
}
}
Чем этот вариант плох?

screamge
05.07.2007, 21:48
а как на счёт watch?

Trilan
05.07.2007, 22:18
Kikasso и BigDan спасибо! Ошибка была в том, что я писал ==.
И как сделать, чтобы пропадали все объекты, после перехода? А то враги остаются.

Kikasso
05.07.2007, 22:19
Ну можно еще life геттер - сеттером сделать ( addProperty )

upd: а, нашлась ошибка.
Чтобы врагов убивать, их надо регистрировать, как-то так, допустим:
_global.ENEMYES_:Object = new Object();
// enemy - мувиклип, добавим
ENEMYES[ enemy._target ] = enemy;
// удалим все
for(var e in ENEMYES){
ENEMYES[e].removeMovieClip();// или спец-функция для уничтожения
delete ENEMYES[e];
}
если удаляете врага заранее - удалите и ссылку на него.