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

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

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

Регистрация: Sep 2007
Адрес: Tomsk
Сообщений: 943
Отправить сообщение для kackbip с помощью ICQ Отправить сообщение для kackbip с помощью Skype™
Цитата:
Сообщение от i.o. Посмотреть сообщение
Код AS3:
	arg[0].x += (arg[1] - arg[0].x) * .2;
	arg[0].y += (arg[2] - arg[0].y) * .2;
В строке и 1 и 2 происходит одно и то же действие (Y/N) ?
Ессно, нет. Это типа в этом вопрос заключался?

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

Регистрация: Mar 2010
Адрес: 54.713862552265084 = 20.442724227905273
Сообщений: 449
Отправить сообщение для stweet с помощью Skype™
Цитата:
Сообщение от wvxvw Посмотреть сообщение
Я просто ни в том ни в другом случае не вижу смысла создавать массив...
там система чутка сложнее, нужно просчитать путь от одной точки к другой. В массив может попасть не одна а несколько объектов. Я привёл пример на кусочке кода, что то типа этого:
Код AS3:
		private function tween(arg:Array):void 
		{
			var timer:Timer = new Timer(10);
				timer.addEventListener(TimerEvent.TIMER, ON_TIMER);
				timer.start();
 
			function ON_TIMER(e:TimerEvent):void
			{
				if (arg[0].x != arg[1] || arg[0].y != arg[2])
				{
					arg[0].x += (arg[1] - arg[0].x) * .2;
					arg[0].y += (arg[2] - arg[0].y) * .2;
 
					if (arg[1] - arg[0].x < 1 && arg[1] - arg[0].x > -1) arg[0].x = arg[1];
					if (arg[2] - arg[0].y < 1 && arg[2] - arg[0].y > -1) arg[0].y = arg[2];
				}
 
				if (arg[0].x == arg[1] && arg[0].y == arg[2]) {
 
					timer.stop();
					timer.removeEventListener(TimerEvent.TIMER, ON_TIMER);
					timer = null;
 
					arg[0].mouseEnabled = true;
				}
 
				e.updateAfterEvent();
			}
		}
и меня интересовало, если такую фукцию вызвать дважды, второй вызов может припятствовать первому или первый второму?

Цитата:
Сообщение от i.o. Посмотреть сообщение
Код AS3:
	arg[0].x += (arg[1] - arg[0].x) * .2;
	arg[0].y += (arg[2] - arg[0].y) * .2;
В строке и 1 и 2 происходит одно и то же действие (Y/N) ?
нет, в место ".2" могут быть разные параметры. Цифры выставленны временно и так совпало что одинаковые)
__________________
Спросишь, дурак на минуту. Если не спросишь, дурак на всю жизнь!


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

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

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


 


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


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