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

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

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

Регистрация: Aug 2010
Сообщений: 91
По умолчанию Отслеживать нажатия трех и более кнопок клавиатуры

В моей игре есть комбинации, которые запускаются одновременным нажатием трех-четырех клавиш клавиатуры. Но флеш отлавливает только две первые нажатые клавиши, а остальные игнорирует. Как заставить его видеть все клавиши?

Старый 27.10.2010, 18:14
КорДум вне форума Посмотреть профиль Отправить личное сообщение для КорДум Найти все сообщения от КорДум
  № 2  
Ответить с цитированием
КорДум
 
Аватар для КорДум

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
http://www.flasher.ru/forum/showthre...EE%EF%EE%EA%FD
__________________
тут я

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Не понял, к чему эта ссылка. Даю свою.
http://flasher.ru/forum/showthread.php?t=139421&page=4
__________________
Reality.getBounds(this);

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

блогер
Регистрация: Jan 2008
Адрес: syktyvkar
Сообщений: 3,803
Записей в блоге: 10
Wolsh, а там вот в третьем посте как раз есть код, наталкивающий на мысли.
__________________
тут я

Старый 27.10.2010, 18:45
Mur4ik вне форума Посмотреть профиль Отправить личное сообщение для Mur4ik Найти все сообщения от Mur4ik
  № 5  
Ответить с цитированием
Mur4ik
ветеран форума

Регистрация: Sep 2008
Сообщений: 717
Записей в блоге: 4
Отправить сообщение для Mur4ik с помощью ICQ
КорДум, там по ссылке немного не то.

Robotex, не каждая клавиатура даже способна обработать три и более кнопок одновременно, или некоторые сочетания вообще не воспринимаются.

Т.ч. узким местом такой идеи может стать контроллер клавиатуры.
Могу и ошибаться, тогда гуру поправят
__________________
trace("Остановите Землю, я сойду!!!");

Старый 27.10.2010, 21:06
Wolsh вне форума Посмотреть профиль Отправить личное сообщение для Wolsh Найти все сообщения от Wolsh
  № 6  
Ответить с цитированием
Wolsh
Нуб нубам
 
Аватар для Wolsh

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Повторю мысль - этот "баг" - фича клавиатуры. Флэш тут не при чем и исправить никак не сможет. Разве что когда-то сможет юзать ДиректИнпут, как ДиректХ - игры.
__________________
Reality.getBounds(this);

Старый 28.10.2010, 01:53
Robotex вне форума Посмотреть профиль Отправить личное сообщение для Robotex Найти все сообщения от Robotex
  № 7  
Ответить с цитированием
Robotex

Регистрация: Aug 2010
Сообщений: 91
Здесь до шести нажимается http://vkontakte.ru/app167792
Как они этого добились?

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

модератор форума
Регистрация: Jan 2006
Адрес: Бердск, НСО
Сообщений: 6,445
Шести НЕ ЛЮБЫХ. Попробуйте просто нижний ряд нажать - "ячсмит".
А "про" ?
Еще раз - клава пищит. Она не понимает. Флэш здесь не при чем. Точно также она будет пищать в Блокноте, например.
__________________
Reality.getBounds(this);

Старый 01.11.2010, 05:14
Robotex вне форума Посмотреть профиль Отправить личное сообщение для Robotex Найти все сообщения от Robotex
  № 9  
Ответить с цитированием
Robotex

Регистрация: Aug 2010
Сообщений: 91
Это выходит, что выпускать на компьютер игру нет смысла и стоит заняться портированием на iPad? Там есть флеш?

Старый 01.11.2010, 16:27
Sintesis вне форума Посмотреть профиль Отправить личное сообщение для Sintesis Найти все сообщения от Sintesis
  № 10  
Ответить с цитированием
Sintesis
 
Аватар для Sintesis

Регистрация: Jul 2008
Сообщений: 912
А булевыми значениями пробовал пользоваться? Вот так примерно:
Код AS3:
var left:Boolean = false;
var right:Boolean = false;
var jump:Boolean = false;
 
                private function onKeyDown(e:KeyboardEvent):void {
 
			if (e.keyCode == 37) {
				left = true;
			}
 
			if (e.keyCode == 39) {
				right = true;
			}
 
			if (e.keyCode == 32) {
				jump = true;
			}
		}
 
		private function onKeyUp(e:KeyboardEvent):void {
 
			if (e.keyCode == 37) {
				left = false;
			}
 
			if (e.keyCode == 39) {
				right = false;
			}
 
			if (e.keyCode == 32) {
				chekJump = false;
				jump = false;
			}
		}
 
		private function onBallMove():void {
			if (left) {
				ball.vx = -4;
			}
 
			if (right) {
				ball.vx = 4;
			}
 
			if (jump) {
				ball.vy = -8;
			}
		}
Это я показал свой пример, а ты сделай одну булеву переменную которая будет принимать значение true только когда будут нажаты 3 кнопки(или сколько там тебе нужно) всё должно получиться.
И если не знаеш код клавиш то нужно потрэйсить чуть-чуть, вставь trace(e.keyCode) в функцию KeyboardEvent.


Последний раз редактировалось Sintesis; 01.11.2010 в 16:47.
Создать новую тему Ответ Часовой пояс GMT +4, время: 10:43.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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