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

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

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

Регистрация: May 2012
Сообщений: 166
По умолчанию Передача параметров в таймер

Здравствуйте, прошу помощи в такой ситуации:
Пишу функцию "пинка" в игре, которая заставляет объект-цель отлетать от объекта-источника на определенное расстояние в период действия таймера:
Код AS3:
		public static function knock(istochnik:Object, target:Object, knockPow:int, kockRight:Boolean):void
		{
			target.fly = true;
			if (target.x > istochnik.x)
			{
				if (target.sizeMob < knockPow)
				{
					sk.timerKnockR.start();
				}
			}
			if (target.x < istochnik.x)
			{
				if (target.sizeMob < knockPow)
				{
					sk.timerKnockL.start();
				}
			}
		}
Все это сделанно универсально, чтобы передавать параметры из других классов, но возникает проблема с передачей этих же параметров исполняющему таймеру.
Код AS3:
		public static function knockRight(target:Object):void
		{
			sk.timerKnockL.stop();    // sk - это статическая переменная (не обращайте внимания)
			sk.timerKnockComp.start();
			target.x +=  5 + Math.random() * 5;
			target.gotoAndStop("knock_L");
		}
Ошибка: [TimerEvent type="timer" bubbles=false cancelable=false eventPhase=2]
ReferenceError: Error #1069: Не удалось найти свойство x в flash.events.TimerEvent; отсутствует значение по умолчанию.
Параметр target не передается, и я не знаю как нужно в таком случае его передать.

Можно было бы создать переменную в этом же классе которая бы принимала значение передаваемого параметра в статическую функцию knock(istochnik:Object, target:Object, knockPow:int, kockRight:Boolean), но в таком случае будит скопирован 1 объект, а так как под объектом-цель будит пониматься несколько объектов из массива объектов в цикле, то этот вариант не подойдет.
__________________
Выражаю благодарность всем, кто помогают новичкам. Ваша бескорыстная помощь внушает уважение.


Последний раз редактировалось Tetraeon; 17.03.2014 в 15:03.
Создать новую тему   Часовой пояс GMT +4, время: 16:20.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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