Цитата:
Сообщение от -De-
Вы каждый кадр рандомно меняете индекс o. И при клике проверяете на попадание только один круг с этим рандомным индексом.
Я бы советовал подписать на клик все 6 ламп, и тогда в условии можно оставить только
 Код AS3:
if (e.currentTarget.currentLabel == "red")
|
Спасибо за совет, всё работает, но этот способ не совсем рациональный, я бы даже сказал вообще не рациональный. Может можна как-нибуть запихнуть все клипы(lampa1 - lampa6) в масив, а потом отслеживать клики по нему, или ешё какой-то вариант. Чтобы без личшего кода. Кстате вот код этой игры на AS2:

Код AS1/AS2:
onClipEvent (load) {
timeBetweenFoxes = 2000;
nextFox = getTimer() + timeBetweenFoxes;
score = 0;
numFoxes = 0;
}
onClipEvent (enterFrame) {
if (getTimerO >= nextFox) {
timeBetweenFoxes -= 10;
if (timeBetweenFoxes < 1000) {
_root.gotoAndPlay("End") ;
} else {
numFoxes++; _root.showScore = score + "/" + numFoxes;
while (true) {
fox = Int (Math.Random0*18) ;
if (_root["fox"+fox]._currentFrame == 1) break;
_root ["fox"+fox].gotoAndPlay ("popup") ;
nextFox = getTimerO + timeBetweenFoxes;
}
}
}
onClipEvent (mouseDown) {
х = _root. _xmouse;
у = _root. _ymouse;
for (i=0;i<18;i++) {
if (_root["fox"+i]._currentFrame > 24) {
if (_root["fox"+i].hitTest(x,у,false)) {
_root["fox"+i].gotoAndPlay("whack");
score++;
_root.showScore = score + "/" + numFoxes;
}
}
}
}
}