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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 22.05.2008, 16:04
Dear.D вне форума Посмотреть профиль Отправить личное сообщение для Dear.D Найти все сообщения от Dear.D
  № 1  
Ответить с цитированием
Dear.D

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

Значится так, есть некий мувик. При onPress он должен быть startDrag, при двойном клике он должен _xscale *= -1
Код:
mc.onPress = function() {
	if (this.flag != true) {
		this.startDrag();
		this.time = getTimer();
		this.flag = true;
	} else {
		if (getTimer()-this.time<300) {
			//после одного нажатия эта фигня перестает работать, но только до следующего клика			this._xscale *= -1;
			this.flag = false;
		} else {
			this.startDrag();
			this.flag = false;
		}
	}
};
mc.onRelease = mc.onReleaseOutside=function () {
	stopDrag();
};
как поправить?

Старый 22.05.2008, 16:51
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
А тут флаг совсем не нужен, достаточно времени.
Код:
mc.onPress = function () {
	if (getTimer () - this.time < 300) {
		this._xscale *= -1;
	} else {
		this.startDrag ();
	}
	this.time = getTimer ();
};
mc.onRelease = mc.onReleaseOutside = function () {
	stopDrag ();
};
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: May 2008
Сообщений: 66
круто.
Мож ну их эти учебники. У меня мозг раком встал.

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

Регистрация: May 2008
Сообщений: 476
Если нужно чтобы _xscale *= -1 (двойной щелчок) следовало сразу же за событием onPress (одинарный щелчок), то безусловно код iNils выполняет это как нельзя лучше. Однако, для раздельного использования
этих моментов нужен немного другой код. Предлагаю вариант. Не бог весть что, но работает:

Код:
var ID:Number=0;
var clickNum:Number=0;

myClip.onPress = function():Void
{
	clickNum++;
	if (ID==0) ID=setInterval(myFunc,100);
}

function myFunc():Void
{
	clearInterval(ID);
	ID=0;
	if (clickNum==2)
	{
		myClip._xscale+=100;
	}else
	{
		myClip.startDrag();
	};
	clickNum=0;
}

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

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

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


 


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


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