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

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

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

Регистрация: Jun 2014
Сообщений: 558
По умолчанию как пропустить один кадр?

Добрый день!

Вопрос, у меня идёт сценарий:
1) в начале я создаю слушатели MouseEvent.CLICK для кнопки Start
2) кнопка start удаляется, начинается игра, которая в начале требует выбрать силу удара
3) создаю 2 слушателя, один на кнопку "пробел" второй MouseEvent.CLICK

в итоге все это происходит в одном кадре и при нажатии кнопки старт, создаваемый в последующем слушатель для силы удара тоже срабатывает

приходиться делать костыль, который считает 1) либо кадры, что бы новый слушатель создавался в след кадре 2) либо счётчик нажатий на кнопку мыши

мне это кажется неправильным, есть ли уже нормальное/встроенное решение или этот единственный вариант?

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Нормальное решение - отказаться от кадров вообще. И писать код только в классах.

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

Регистрация: Jun 2014
Сообщений: 558
Цитата:
Сообщение от caseyryan Посмотреть сообщение
Нормальное решение - отказаться от кадров вообще. И писать код только в классах.
не, неправильно поняли, код в классах весь

Код AS3:
			startMenu.getStartButton.addEventListener(MouseEvent.CLICK, clickStartMenu);
		}
 
		private function clickStartMenu(e:MouseEvent):void
		{
			startMenu.getStartButton.removeEventListener(MouseEvent.CLICK, clickStartMenu);
			removeChild(startMenu);
			cat.visible = true;
			addChild(pointerAndRoundSpeed);
			this.addEventListener(MouseEvent.CLICK, getPointerSpeed); //этот слушатель должен добавиться в следующем кадре
		}
 
		private function getPointerSpeed(e:MouseEvent):void 
		{
			this.removeEventListener(MouseEvent.CLICK, getPointerSpeed);
			var _startSpeed:Number = pointerAndRoundSpeed.getPointer;
		}

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

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Зачем там каждый раз разные слушатели добавляются?
Можно добавить слушатель где-то вначале и просто проверять e.target
Код AS3:
if (e.target == startMenu) {
   // обработка стартового меню
} else {
   // все остальное
}
А добавление где-то в следующем кадре - это какой-то дикий костыль

Старый 04.10.2015, 16:41
neonoviiwolf вне форума Посмотреть профиль Отправить личное сообщение для neonoviiwolf Найти все сообщения от neonoviiwolf
  № 5  
Ответить с цитированием
neonoviiwolf

Регистрация: Jun 2014
Сообщений: 558
спасибо, чёт раньше я этим ни разу не пользовался
я потому и задал вопрос, т.к. сам считал, что это бред=)

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

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

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


 


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


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