Форум 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)
-   -   hitTest cтолкновение и переход на второй кадр (http://www.flasher.ru/forum/showthread.php?t=126900)

alex001 30.06.2009 10:27

hitTest cтолкновение и переход на второй кадр
 
есть 2 мув клипа.
ut и hit01(который лежит _root.gr.s1.hit01)

я проверяю их хит тестом:

Код AS1/AS2:

if (_root.ut.hitTest(_root.gr.s1.hit01)){
      _root.gotoAndPlay(2);
}

но код не работает. что не так? :wacko:

nextand 30.06.2009 11:10

объекты двигаются?

mooncar 30.06.2009 11:11

Вам нужно непрерывно проверять это условие.
Сделайте это, например, с использованием onEnterFrame или с помощью интервальной функции.

alex001 30.06.2009 12:22

с onEnterFrame он выдает ошибку. можно както подругому?1 обьект стоит а другой движется. потом первый объект может перепрыгнуть/обойти 2-ой обьект а может и не обойти. это и проверяеться.

mooncar 30.06.2009 12:28

Ошибку, говорите... Ошибки разные бывают. Вы понимаете, что их "столкновение" - это событие, а событие нужно отслеживать непрерывно каким-то методом. Суть того как они двигаются не важна, если только у вас нет там переходов по кадрам.
Покажите ваш код или исходник прямо тут выложите. Ничего никто не сможет вам сказать, так как информации недостаточно.

alex001 30.06.2009 12:34

Вложений: 1
вот исходник. а про движение nextand спросил. но я согласин, что от движения суть не меняеться.

lexa2000lexa 30.06.2009 12:39

вот так нужно
Код AS1/AS2:

onEnterFrame = function  () {
if (_root.ut.hitTest(_root.gr.s1.hit01)){
      _root.gotoAndPlay(2);
}
}


alex001 30.06.2009 12:42

огромное спасибо все работает.
стото я забыл про эту function ().
спасибо.

mooncar 30.06.2009 12:45

У вас там полно ошибок. Повремените с hitTest, исправьте остальной код.
Такие вещи как
Код AS1/AS2:

this._x -= 10;

нельзя писать прямо на мувиках.
Нужно так.
Код AS1/AS2:

onClipEvent(enterFrame) {
this._x -= 10;
}

У вас еще там косячищи есть.

alex001 30.06.2009 13:05

я знаю. там много лишнего. и неправильного. просто мне бы было жаль много делать а потом бы выяснилось что сталкновение не получиться. я уже начал испровлять.
теперь вместо
Код AS1/AS2:

this._x -= 10;

Код AS1/AS2:

onClipEvent (enterFrame) {
        this._x = -100;
        this._y = -3;
        this._x -= 1;
        updateAfterEvent();
}



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

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