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

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

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

Регистрация: Aug 2008
Сообщений: 27
По умолчанию startDrag до пересечения мувиклипов

Прошу прощения за скромные познания в области программирования, прошу прощения за использование AS2, но очень нужна помощь.

Задача - перетаскиваем один мувиклип на другой. При событии отпускания мышки - исчезновение перетаскиваемого клипа и проигрывание статического второго мувиклипа.

Моё решение:
Код AS1/AS2:
round1_mc.onPress = function(){
	this.startDrag();
	round1_mc.play();
}
round1_mc.onRelease = function(){
	round1_mc.stopDrag();
}
if(_root.round1_mc, hittest(_root.dom_mc)){
 
	dom_mc.play();
	round1_mc.removeMovieClip();
}
Все на первый взгляд просто, но я не справился.... Заранее благодарю за помощь

Старый 28.01.2010, 17:19
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 2  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код AS1/AS2:
round1_mc.onPress = function(){
	this.startDrag();
	round1_mc.play();
}
round1_mc.onRelease = function(){
	round1_mc.stopDrag();
}
if(_root.round1_mc.hitTest(_root.dom_mc)){
 
	dom_mc.play();
	round1_mc.removeMovieClip();
}
__________________
hauts.ru

Старый 29.01.2010, 14:49
Maxish вне форума Посмотреть профиль Отправить личное сообщение для Maxish Найти все сообщения от Maxish
  № 3  
Ответить с цитированием
Maxish

Регистрация: Aug 2008
Сообщений: 27
Спасибо, но не помогло

Старый 29.01.2010, 14:53
lexa2000lexa вне форума Посмотреть профиль Отправить личное сообщение для lexa2000lexa Найти все сообщения от lexa2000lexa
  № 4  
Ответить с цитированием
lexa2000lexa

Регистрация: Sep 2005
Сообщений: 950
а что именно у вас не получаеться?

Старый 29.01.2010, 15:48
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 5  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,112
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код AS1/AS2:
round1_mc.onPress = function(){
	this.startDrag();
	round1_mc.play();
}
round1_mc.onRelease = function(){
	this.stopDrag();
	if(this.hitTest(_root.dom_mc)){
 		dom_mc.play();
		this.removeMovieClip();
	}
}
__________________
hauts.ru

Старый 02.02.2010, 15:56
Maxish вне форума Посмотреть профиль Отправить личное сообщение для Maxish Найти все сообщения от Maxish
  № 6  
Ответить с цитированием
Maxish

Регистрация: Aug 2008
Сообщений: 27
Проблема в том, что мне нужно хиттестить сложную форму (условие для прямоугольников можно, в принципе, и покоординатно задать).

Повторюсь: Как сделать hitTest при перетаскивании одного сложного (графически) обьекта на другой? Может, есть смысл обойти hitTest и решить задачу по-другому? В таком случае как это реализовывается?


И еще один "ламерский" вопрос. Извините. Какой обработчик событий нужно использовать, чтобы проверка соприкасания объектов выполнялась только один раз. Я использовал onEnterFrame не подходит.

Старый 02.02.2010, 19:10
Maximer вне форума Посмотреть профиль Отправить личное сообщение для Maximer Найти все сообщения от Maximer
  № 7  
Ответить с цитированием
Maximer

Регистрация: Jan 2010
Сообщений: 25
можно использовать onEnterFrame, только потом написать

Код AS1/AS2:
delete this.onEnterFrame;

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

Теги
hittest , removeMovieClip , startdrag , stopdrag
Опции темы
Опции просмотра

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

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


 


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


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