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

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

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

Регистрация: Jan 2006
Сообщений: 7
По умолчанию управление объектом на сцене

около полутора лет не писал на ЭкшенСкрипте и вот столкнулся со следующей проблемой, достаточно глупой, но тем не менее застопорившей весь рабочий процесс
необходим объект на сцене который бы поворачивался при нажатии клавиш влево-вправо, и двигался с элементарным трением вперед.
итак код номер 1(написанный мною)
Код:
_root.roamer.cSpeed=5
_root.roamer.cFriction=0.7
_root.roamer.onEnterFrame=function(){
	
	
	if(Key.isDown(Key.LEFT)){
		dir-=5
	} else if(Key.isDown(Key.RIGHT)){
		dir+=5
	} else if(Key.isDown(Key.UP)){
		this.cSpeed=4
	}
	
	xIncr = Math.cos(dir*Math.PI/180)*this.cSpeed
	yIncr = Math.sin(dir*Math.PI/180)*this.cSpeed

	this._x-=xIncr
	this._y-=xIncr
	this._rotation=dir
	this.cSpeed*=this.cFriction
}
)

и соответсвенно код стыренный из Нета
Код:
onClipEvent (enterFrame) {
	if (Key.isDown(Key.UP)) {
		speed += 2;
	}
	if (Key.isDown(Key.DOWN)) {
		speed += -2;
	}
	if (Key.isDown(Key.RIGHT)) {
		dir += 15;
	}
	if (Key.isDown(Key.LEFT)) {
		dir += -15;
	}
	xspeed = Math.cos(dir*Math.PI/180)*speed;
	yspeed = Math.sin(dir*Math.PI/180)*speed;
	_x += xspeed;
	_y += yspeed;
	_rotation = dir;
}

причем при общем сходстве, мой код работает некорректно,
а использовать OnClipEvent как то стрёмно,
может ктонить ответит - отчего такое происходит и как лечиццо?

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

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

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


 


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


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