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

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

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

Регистрация: Sep 2009
Адрес: X = 10, Y = 420, Z = -35
Сообщений: 52
Отправить сообщение для Neirol с помощью ICQ Отправить сообщение для Neirol с помощью Skype™
Да дело не в этом, просто без этого, это уже вроде как AS 2, да и про функцию drawCircle флеш ругается, что миграция мол, уже была, иди в *опу со старьем. Что вместо нее использовать то в AS 3?
__________________
Рожденный ползать, везде пролезет...

Старый 29.09.2009, 23:37
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 12  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
я бы не стал работать с компилятором, у которого миграция так далеко зашла

нарисуй квадрат, пусть он бегает..

Старый 29.09.2009, 23:39
Neirol вне форума Посмотреть профиль Отправить личное сообщение для Neirol Посетить домашнюю страницу Neirol Найти все сообщения от Neirol
  № 13  
Ответить с цитированием
Neirol
 
Аватар для Neirol

Регистрация: Sep 2009
Адрес: X = 10, Y = 420, Z = -35
Сообщений: 52
Отправить сообщение для Neirol с помощью ICQ Отправить сообщение для Neirol с помощью Skype™
В FLA:
Код AS3:
var mh:MouseHunter = new MouseHunter();
addChild(mh);
В MouseHunter.as:
Код AS3:
package {
	import flash.display.Sprite;
	import flash.display.Graphics;
 
	public class MouseHunter extends Sprite
	{
		private const a:Number = 0.2;
		public function MouseHunter() 
		{
			graphics.beginFill(0);
			graphics.drawOval(0, 0, 20);
			addEventListener(Event.ENTER_FRAME, onEnterFrameHandler);
		}
 
		public function onEnterFrameHandler(e:Event):void 
		{
			x += a * mouseX;
			y += a * mouseY;
		}
	}
}
Результат: пустое окно, ошибка - 1046: Type was not found or was not a compile-time constant: Event. - 15 строка.
__________________
Рожденный ползать, везде пролезет...

Старый 29.09.2009, 23:42
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 14  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
Код AS3:
package  
{
	import flash.display.Sprite;
	import flash.events.Event;
 
	public class MouseHunter extends Sprite
	{
		private const a:Number = 0.2;
		public function MouseHunter() 
		{
			graphics.beginFill(0);
			graphics.drawCircle(0, 0, 20);
			addEventListener(Event.ENTER_FRAME, onEnterFrameHandler);
		}
 
		private function onEnterFrameHandler(event:Event):void 
		{
			x += a * mouseX;
			y += a * mouseY;
		}
	}
}


Последний раз редактировалось silin; 29.09.2009 в 23:45.
Старый 29.09.2009, 23:46
Neirol вне форума Посмотреть профиль Отправить личное сообщение для Neirol Посетить домашнюю страницу Neirol Найти все сообщения от Neirol
  № 15  
Ответить с цитированием
Neirol
 
Аватар для Neirol

Регистрация: Sep 2009
Адрес: X = 10, Y = 420, Z = -35
Сообщений: 52
Отправить сообщение для Neirol с помощью ICQ Отправить сообщение для Neirol с помощью Skype™
Я знаю что нет =)
Мне флеш говорит что нужно использовать drawOval вместо drawCircle
В общем поставил обратно drawCircle
Поставил flash.events.Event
И все заработало как надо!
Огромное спасибо!!!

Добавлено через 1 час 5 минут
http://vkontakte.ru/app624814_17210304
А как сделать такое же плавное движение как здесь?
__________________
Рожденный ползать, везде пролезет...

Старый 30.09.2009, 09:42
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 16  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
Код AS3:
public class MouseHunter extends Sprite
{
	private var a:Number = 0.1;
	private var damp:Number = 0.925;
	private var sX:Number = 0;
	private var sY:Number = 0;
 
	public function MouseHunter() 
	{
		graphics.beginFill(0);
		graphics.drawCircle(0, 0, 20);
		addEventListener(Event.ADDED_TO_STAGE, onStage);
	}
 
	private function onStage(evnt:Event):void 
	{
		removeEventListener(Event.ADDED_TO_STAGE, onStage);
		addEventListener(Event.ENTER_FRAME, onEnterFrameHandler);
		stage.addEventListener(MouseEvent.MOUSE_MOVE, onMouseMoveHandler);
	}
 
	private function onMouseMoveHandler(evnt:MouseEvent):void 
	{
		sX = a * mouseX;
		sY = a * mouseY;
	}
 
	private function onEnterFrameHandler(event:Event):void 
	{
		x += sX *= damp;
		y += sY *= damp;
	}
}

Старый 30.09.2009, 10:37
Neirol вне форума Посмотреть профиль Отправить личное сообщение для Neirol Посетить домашнюю страницу Neirol Найти все сообщения от Neirol
  № 17  
Ответить с цитированием
Neirol
 
Аватар для Neirol

Регистрация: Sep 2009
Адрес: X = 10, Y = 420, Z = -35
Сообщений: 52
Отправить сообщение для Neirol с помощью ICQ Отправить сообщение для Neirol с помощью Skype™
Классно, стало совсем как там.
Но я имел ввиду саму гладкость передвижения, без морганий =)
Оказывается надо было просто FPS добавить и стало все совсем супер

Результат во вложении.
Всем огромное спасибо
Вложения
Тип файла: rar main.rar (1.4 Кб, 146 просмотров)
__________________
Рожденный ползать, везде пролезет...

Старый 27.02.2010, 12:06
sltt вне форума Посмотреть профиль Отправить личное сообщение для sltt Найти все сообщения от sltt
  № 18  
Ответить с цитированием
sltt

Регистрация: Jan 2010
Сообщений: 26
silin, а можно ли как нибудь просчитать такой-же простой формулой, движение в N шагов?
Примерно::
Код AS1/AS2:
	private var stepN:Number = 15;
 
	private var a:Number = stepN / 10;
	private var damp:Number = stepN / a;
	private var sX:Number;
	private var sY:Number;
 
		sX = a * mouseX;
		sY = a * mouseY;
 
		fot (var i=0; i<stepN; i++)
		{
			x += sX *= damp;
			y += sY *= damp;
		}

Старый 27.02.2010, 12:53
silin вне форума Посмотреть профиль Посетить домашнюю страницу silin Найти все сообщения от silin
  № 19  
Ответить с цитированием
silin
 
Аватар для silin

блогер
Регистрация: Mar 2003
Адрес: Моск. обл.
Сообщений: 5,269
Записей в блоге: 6
старина, движение в N шагов легко вычистятся делением дистанции на эти н-шагов, не ?

Старый 27.02.2010, 13:27
sltt вне форума Посмотреть профиль Отправить личное сообщение для sltt Найти все сообщения от sltt
  № 20  
Ответить с цитированием
sltt

Регистрация: Jan 2010
Сообщений: 26
да, но я имею в виду движение которое сначала ускоренное, а под конец тормозящее.

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

Теги
движение , как , мышь , торможение , ускорение
Опции темы
Опции просмотра

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

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


 


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


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