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

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

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

Регистрация: Jun 2010
Сообщений: 153
По умолчанию Проблема с функцией с Math.cos(this.a) и Math.sin(this.a)

Проблема с функцией с Math.cos(this.a) и Math.sin(this.a)

функция нормально работает если в ней нету Math.cos(this.a) и Math.sin(this.a) но они мне нужны для того что-бы пыля летела в нужное направления! код очень маленький! помогите мне! во код:
Код:
var lev:Number = 1;
var bulletSpeed:Number = 35;

function NewMyBullet(event:Event):void 
{
++lev;
var NewR4: MovieClip = new bulletAvtomat();
this.addChild(NewR4)
NewR4.x = Hero.x;
NewR4.y = Hero.y;
NewR4.addEventListener(Event.ENTER_FRAME, NewMyBulletonEnterFrame);
NewR4.rotation = Hero.rotation;
NewR4.a = NewR4.rotation / 180 * 3.14159265359;
function NewMyBulletonEnterFrame(event:Event){
	event.target.x = event.target.x + bulletSpeed * Math.cos(this.a);
        event.target.y = event.target.y + bulletSpeed * Math.sin(this.a);
		
	//event.target.x = event.target.x + bulletSpeed;
        //event.target.y = event.target.y + bulletSpeed;
};};

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

Регистрация: Apr 2001
Адрес: Berlin
Сообщений: 1,862
Отправить сообщение для derhab с помощью ICQ Отправить сообщение для derhab с помощью Skype™
а что за this.a? у вас вычисляется NewR4.a
__________________
freelance | Раздор

Старый 03.10.2011, 17:45
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 3  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
тему в топку! решения
Код:
Math.cos(event.target.a)
Добавлено через 51 минуту
Блин еще одна проблема! как мне удалить эти пули если их Х больше 350 пробывал так но не работает =(
Код :
Код:
function NewMyBulletonEnterFrame(event:Event)//она же и есть листенер
{
   event.target.x = event.target.x + bulletSpeed * Math.cos(event.target.a);
   event.target.y = event.target.y + bulletSpeed * Math.sin(event.target.a);

  if (event.target.x > 350){trace("1111111111111");removeChild(this)};
};

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

Регистрация: Apr 2001
Адрес: Berlin
Сообщений: 1,862
Отправить сообщение для derhab с помощью ICQ Отправить сообщение для derhab с помощью Skype™
опять this)
__________________
freelance | Раздор

Старый 03.10.2011, 19:09
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 5  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
вот так работает но выдает ошибку! removeChild(NewR4)

Код:
ArgumentError: Error #2025: Предоставленный DisplayObject должен быть дочерним элементом вызывающего объекта.
	at flash.display::DisplayObjectContainer/removeChild()
	at MethodInfo-230()

Старый 03.10.2011, 19:26
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 6  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Код AS3:
removeChild(event.target)
не ?
__________________
Марк Tween

Старый 03.10.2011, 19:34
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 7  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
не=) вот решение:
Код:
	if (event.target.x > 450){
		removeChild(NewR4)
		NewR4.removeEventListener(Event.ENTER_FRAME, NewMyBulletonEnterFrame);
	};

Старый 03.10.2011, 19:53
toFL вне форума Посмотреть профиль Найти все сообщения от toFL
  № 8  
Ответить с цитированием
toFL
Banned

Регистрация: May 2011
Адрес: +48° 27' 57.93", +35° 2' 46.02"
Сообщений: 447
Записей в блоге: 2
Отправить сообщение для toFL с помощью Skype™
Код AS3:
removeChild(event.target)
Цитата:
не=)
Забавно.

Старый 03.10.2011, 19:54
yo3o вне форума Посмотреть профиль Отправить личное сообщение для yo3o Найти все сообщения от yo3o
  № 9  
Ответить с цитированием
yo3o

Регистрация: Jun 2010
Сообщений: 153
блинблинблин все ровно периодически выскакивает это ошибка! что делать?

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

Регистрация: Feb 2009
Адрес: Гы...поди, найди!
Сообщений: 853
Записей в блоге: 1
Не писать в кадрах, не?
Код AS3:
if (NewR4.parent) removeChild(NewR4);
__________________
http://www.chessmax.ru

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

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

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


 


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


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