Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   hitTestPoint для вложенных в movieclip объектов. (http://www.flasher.ru/forum/showthread.php?t=143848)

we11 27.08.2010 10:19

hitTestPoint для вложенных в movieclip объектов.
 
Есть мувклип - loca, персонаж - car и препятствие - wall.
Помещаем на stage клип loca, в loca помещаем car и wall. Как в таком случае сделать проверку на столкновения я не смог понять.

Проверка на столкновение работает, если car и wall разместить в stage:

Код AS3:

var par:main=this.parent as main;
if (wall.hitTestPoint(point_left.x,point_left.y,true)) {
    rotation+=5;
    speed*=0.5;
}

- То есть присваиваем стэйджу класс main и через this.parent as... мы обращаемся к wall.
Как быть если wall и car в мувклипе loca, который размещен на stage?

bebop 27.08.2010 10:29

какой класс проверяет столкновение? car?

Код AS3:

if((parent as main).wall.hittestObject(this))
{
...
}


we11 27.08.2010 10:55

Цитата:

Сообщение от bebop (Сообщение 931717)
какой класс проверяет столкновение? car?

Да, car. И car находится в мувклипе loca, в loca же находится wall.
И именно hitTestPoint, ибо wall - это дорога, по бортам которой препятствия. hittestObject не катит.
Основу взял здесь: http://www.emanueleferonato.com/2010...l-as3-version/
И хочу совместить с двигающимся фоном, как здесь: http://xitri.com/2009/07/13/scrollin...cept_hero.html

bebop 27.08.2010 11:13

Код AS3:

if((parent as main).wall.hittestPoint(point_left.x,point_left.y,true))
{
...
}

Не понимаю, в чем конкретно проблема?

we11 27.08.2010 11:54

Вышлю свои потуги: архив.
Если его сейчас запустить, то таракан свободно бегает по полю и ничто его не тормозит.
Идея заключается чтоб он затормаживался если заходит на зеленое поле.
Второй архив - здесь это получается, но таракан не центрируется. И хотелось бы оставить вложенность loca в стэйдже, а в локе дорога и таракан, чтоб масштабировать можно было.

Спасибо за внимание :)

samana 27.08.2010 12:00

Не могу открыть, наверно CS 5 формат, но скорее всего нужно преобразовывать координаты из локальных в глобальные
http://help.adobe.com/ru_RU/AS3LCR/F...ocalToGlobal()

we11 27.08.2010 12:09

Для CS4: первый, второй.
Повторюсь что желаемый результат: таракан в центре и при соприкосновении с "зеленью" поинтами он тормозится.

samana 28.08.2010 13:04

Вложений: 1
Посмотри вот тут. Я сделал столкновения только для одного таракана, теперь работает! Для других точек я думаю разберёшься как сделать. Добавленный код с 58 строчки в классе таракана

we11 30.08.2010 05:36

Спасибо! :) Бегает как планировалось =)


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

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