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

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

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

Регистрация: Jul 2007
Адрес: Рязанская область.
Сообщений: 42
Отправить сообщение для Edeisys с помощью ICQ
По умолчанию Событие Key.isDown с промежутком во времени

Гаспада! И дамы
У меня работает код
Код:
if (Key.isDown(Key.SPACE)) {
БлаБлаБла;
}
Но когда я нажимаю пробел, этот код успевает сработать раза два-три. Надо нажимать пробел очень-очень быстро!
А я такой медлиииительныыыый...
Как бы мне лучше организовать код, штобы сколько пробел ни дави, а код бы выполнялся с задержками?
__________________
Причиняю добро, наношу пользу.

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
В смысле один раз нажал, один раз сработал код?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 28.07.2007, 00:56
BigDan вне форума Посмотреть профиль Отправить личное сообщение для BigDan Найти все сообщения от BigDan
  № 3  
Ответить с цитированием
BigDan
 
Аватар для BigDan

Регистрация: Apr 2006
Адрес: Kiev
Сообщений: 1,675
Отправить сообщение для BigDan с помощью ICQ
завести счётчик, и проверять остаток от деление на некое число...

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

Регистрация: May 2003
Адрес: Tallinn
Сообщений: 3,182
ну можно в принципе использовать setInterval, setTimeout...это первое, что пришло в голову
__________________
Flash Developer
Папа TDP4 Team Battle

Старый 28.07.2007, 13:54
BigDan вне форума Посмотреть профиль Отправить личное сообщение для BigDan Найти все сообщения от BigDan
  № 5  
Ответить с цитированием
BigDan
 
Аватар для BigDan

Регистрация: Apr 2006
Адрес: Kiev
Сообщений: 1,675
Отправить сообщение для BigDan с помощью ICQ
Код:
var kl:Object = new Object();
var counter:Number = 0;
kl.onKeyDown = function(){
  if(counter%10 != 0) return;
  if (Key.isDown(Key.SPACE)) БлаБлаБла;
  if(counter == 10){
    counter = 1;
  }else{
    ++counter;
  }
}
Key.addListener(kl);

Старый 28.07.2007, 15:24
screamge вне форума Посмотреть профиль Отправить личное сообщение для screamge Посетить домашнюю страницу screamge Найти все сообщения от screamge
  № 6  
Ответить с цитированием
screamge
Ветеран форума
 
Аватар для screamge

Регистрация: Jul 2006
Адрес: Грузия, Тбилиси
Сообщений: 2,675
Код:
var delay:Number = 5;
var flag:Boolean = true;
var __int:Number;
var keyb:Object = {};
keyb.onKeyDown = function() {
	if (Key.isDown(Key.SPACE) && flag){
		clearInterval(__int)
		__int=setInterval(inter, delay*1000)
		flag=false
	} else {
		trace('probel uzhe nazhat');
	}
};
function inter() {
	clearInterval(__int);
	trace('int');
	flag = true;
}
Key.addListener(keyb);
__________________
Free-lance | Twitter | Me


Последний раз редактировалось screamge; 28.07.2007 в 15:39.
Старый 28.07.2007, 17:11
Edeisys вне форума Посмотреть профиль Отправить личное сообщение для Edeisys Найти все сообщения от Edeisys
  № 7  
Ответить с цитированием
Edeisys
 
Аватар для Edeisys

Регистрация: Jul 2007
Адрес: Рязанская область.
Сообщений: 42
Отправить сообщение для Edeisys с помощью ICQ
Смыслу понял
Сделал так:
Код:
// добавил функцию для прироста таймера
function press_button_timer() {
	if (press_button_timer == 10) {
		press_button_timer = 10;
	}
	else {
		press_button_timer ++;
	}
}

function BlaBlaBla() {	
	if (Key.isDown(Key.SPACE)) { 				
	     if (press_button_timer == 10) {
                    БлаБлаБла;
    }
}
Как всегда топорно, но нужного эффекта достиг
__________________
Причиняю добро, наношу пользу.

Старый 28.07.2007, 17:17
BigDan вне форума Посмотреть профиль Отправить личное сообщение для BigDan Найти все сообщения от BigDan
  № 8  
Ответить с цитированием
BigDan
 
Аватар для BigDan

Регистрация: Apr 2006
Адрес: Kiev
Сообщений: 1,675
Отправить сообщение для BigDan с помощью ICQ
Цитата:
Код:
if (press_button_timer == 10) {
		press_button_timer = 10;
	}
Оригинально

Старый 28.07.2007, 20:01
Edeisys вне форума Посмотреть профиль Отправить личное сообщение для Edeisys Найти все сообщения от Edeisys
  № 9  
Ответить с цитированием
Edeisys
 
Аватар для Edeisys

Регистрация: Jul 2007
Адрес: Рязанская область.
Сообщений: 42
Отправить сообщение для Edeisys с помощью ICQ
Ну я просто не знаю как сделать так, штобы когда счётчик станет равен 10, штоб он больше не увеличивался. Вот я его и зациклил так. Главное ведь больше 10 не растёт!
__________________
Причиняю добро, наношу пользу.

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

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Код:
if (press_button_timer < 10) {
	press_button_timer ++;
}
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

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

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


 


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


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