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

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

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

Регистрация: Jan 2014
Сообщений: 27
По умолчанию действие при нажатии

Помогите пожалуйста!
Есть квадрат, разбит на 4 четверти, мувик находится в одной из четвертей.
Как сделать так, чтоб при перетаскивании его в другую четверть, тебя перекидывало в другой кадр.
3 четверти - 3 разных кадра соответственно.
Код который использую для перетаскивания.
Код AS1/AS2:
a.onPress = function() {
	a.startDrag();
};
a.onRelease = function() {
	a.stopDrag();
};

Старый 04.02.2014, 17:51
Sergey_A вне форума Посмотреть профиль Отправить личное сообщение для Sergey_A Найти все сообщения от Sergey_A
  № 2  
Ответить с цитированием
Sergey_A

Регистрация: Jun 2010
Сообщений: 128
Во-первых, надо четко задать границы для startDrag - в соответствии с вашим квадратом, а чтобы запускать переход на другой кадр - разместите в каждой из четвертей по невидимому мувику и проверяйте событие пересечения с ними. (hitTest). Если хотите большой точности - размещайте несколько мувиков в каждой из четвертей, чтобы переход выполнялся, только если есть пересечение со всеми.

Старый 04.02.2014, 17:57
Youngflasher вне форума Посмотреть профиль Отправить личное сообщение для Youngflasher Найти все сообщения от Youngflasher
  № 3  
Ответить с цитированием
Youngflasher

Регистрация: Jan 2014
Сообщений: 27
А вы можете, пожалуйста, в коде показать как это реализовать? на любом примере, с любыми координатами.
Спасибо большое!

Старый 04.02.2014, 18:59
Sergey_A вне форума Посмотреть профиль Отправить личное сообщение для Sergey_A Найти все сообщения от Sergey_A
  № 4  
Ответить с цитированием
Sergey_A

Регистрация: Jun 2010
Сообщений: 128
Ну, если совсем просто, то что-то вроде: На сцене мувики t_drag и t1, в кадре код:
Код AS1/AS2:
t1._visible = false; //делаем мувик t1 невидимым
t_drag.onPress = function() {
	startDrag("t_drag", true, 140, 92, 383, 279); //по нажатию кнопки t_drag таскается за мышкой, не покидая определенной области
	this.onEnterFrame = function() {
		if (this.hitTest(t1)) { 
    		stopDrag(); //если он пересекается с t1, то таскание прекращаем
			delete this.onEnterFrame;
			this._x = 255.95; //и возвращаем его на место
			this._y = 180; //сюда же можно прописать и другие действия, например
                                       trace("УРА!!!!");
			}
		}
	}
//по отпусканию кнопки мыши таскание тоже прекращаем
t_drag.onRelease = 
t_drag.onReleaseOutside = function() {
	stopDrag();
	delete this.onEnterFrame;
	}
Остается прописать то же самое не только для t1, но и еще для любого нужного количества мувиков. Впрочем, проверять можно не только пересечение с мувиком, но и пересечени точки с определенными координатами (функция та же - hitTest), но с мувиками, ИМХО, нагляднее и проще.

Старый 04.02.2014, 19:26
Youngflasher вне форума Посмотреть профиль Отправить личное сообщение для Youngflasher Найти все сообщения от Youngflasher
  № 5  
Ответить с цитированием
Youngflasher

Регистрация: Jan 2014
Сообщений: 27
Спасибо большое!
Очень помогли)

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

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

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


 


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


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