Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 19.02.2010, 15:14
Nejasytj вне форума Посмотреть профиль Отправить личное сообщение для Nejasytj Найти все сообщения от Nejasytj
  № 1  
Ответить с цитированием
Nejasytj

Регистрация: Feb 2010
Сообщений: 3
По умолчанию Полное удаление объекта

Всем привет!

Объявляю два объекта (addChild). Один неподвижный, другой тоже по бошке получит летает. Во время соприкосновения (hitTestObject) запускается функция, в которой уберается статичный объект (removeChild) и меняет направление летающий.
Первый раз касаются друг друга - всё как бы хорошо и статичный объект удаляется. Но когда второй раз летит в то место, то функция срабатывает опять. Т.е. как буд-то не убрался объект, а стал невидимым.

Вот код функции:

Код AS3:
 function polet(e:Event):void{
	directionX = dirKoefX * 1;
	directionY = dirKoefY * 1;
	Shar_mc.y -=accelerate * directionY;
	Shar_mc.x -=accelerate * directionX;
	if (Shar_mc.y < 0+21 || Shar_mc.y > 400-21){
		dirKoefY = directionY * -1;
	}
	if (Shar_mc.x < 0+21 || Shar_mc.x > 550-21){
		dirKoefX = directionX * -1;
	}
	if (Shar_mc.hitTestObject(block1)){
		dirKoefY = directionY * -1;
		removeChild(block1);
	}
}

Старый 19.02.2010, 15:28
dixus вне форума Посмотреть профиль Отправить личное сообщение для dixus Найти все сообщения от dixus
  № 2  
Ответить с цитированием
dixus

Регистрация: Feb 2010
Сообщений: 33
Для того, чтобы hitTestObject выполнялся, сравниваемые объекты вообще не обязаны быть выложены на сцену, т.е. removeChild на результат hitTestObject не влияет (точнее влияет только когда сравниваемый объект расположен не в корневом мувиклипе). Стоит прекратить проверять block1 на коллизию с Shar_mc после первого попадания и удалить все ссылки на него.


Последний раз редактировалось dixus; 19.02.2010 в 15:33.
Создать новую тему Ответ Часовой пояс GMT +4, время: 23:40.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Теги
hittestobject , removeChild
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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