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

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

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

Регистрация: Aug 2006
Сообщений: 60
спасибо. но кажется проблема не в этом...

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

Регистрация: Nov 2004
Сообщений: 187
Отправить сообщение для whiteRed с помощью ICQ
ну тогда опиши свой алгоритм словами а то я не пойму че ты сделать пытаешься

Старый 25.08.2006, 17:06
fromotherplanet вне форума Посмотреть профиль Отправить личное сообщение для fromotherplanet Найти все сообщения от fromotherplanet
  № 13  
Ответить с цитированием
fromotherplanet

Регистрация: Aug 2006
Сообщений: 60
Щас будет...

Старый 25.08.2006, 17:32
fromotherplanet вне форума Посмотреть профиль Отправить личное сообщение для fromotherplanet Найти все сообщения от fromotherplanet
  № 14  
Ответить с цитированием
fromotherplanet

Регистрация: Aug 2006
Сообщений: 60
Код:
_root.pluch._rotation = Math.atan((_root.pluch._y-_ymouse)/(_root.pluch._x-_xmouse))*180/Math.PI;//чтобы луч поворачивал за мышью на 180
if (_root.apt._y<-_root.apt._x*(_root.pluch._y-_ymouse)/(_root.pluch._x-_xmouse)*(-2) & _root.apt._y>-_root.apt._x*(_root.pluch._y-_ymouse)/(_root.pluch._x-_xmouse)*2) {//задаём 2 графика, по середине которых будет похищающий луч
	_root.apt.d = _root.apt._x*_root.apt._x+_root.apt._y*_root.apt._y;//_root.apt.d - квадрат диагонали от начала координат(для примера, на самом деле будет от начала луча) к аптечки
	_root.apt.d -= 150;//уменьшаем её
	_root.apt._x = Math.sqrt(_root.apt.d-_root.apt._y*_root.apt._y);//вычисляем _х аптечки
	_root.apt._y = _root.apt._x*(_root.pluch._y-_ymouse)/(_root.pluch._x-_xmouse);//и _y
}


Последний раз редактировалось fromotherplanet; 25.08.2006 в 17:36.
Старый 25.08.2006, 17:55
whiteRed вне форума Посмотреть профиль Отправить личное сообщение для whiteRed Найти все сообщения от whiteRed
  № 15  
Ответить с цитированием
whiteRed
 
Аватар для whiteRed

Регистрация: Nov 2004
Сообщений: 187
Отправить сообщение для whiteRed с помощью ICQ
кажется я понял... ты хочешь сделать так: луч поворачивается за мышкой, если аптечка попала в луч, то она приближается на 150 пикселей... так?


Последний раз редактировалось whiteRed; 25.08.2006 в 18:02.
Старый 25.08.2006, 18:09
etc вне форума Посмотреть профиль Найти все сообщения от etc
  № 16  
Ответить с цитированием
etc
Et cetera
 
Аватар для etc

Регистрация: Sep 2002
Сообщений: 30,787
я же говорил, что гадалки в отпуске

Старый 25.08.2006, 18:26
fromotherplanet вне форума Посмотреть профиль Отправить личное сообщение для fromotherplanet Найти все сообщения от fromotherplanet
  № 17  
Ответить с цитированием
fromotherplanet

Регистрация: Aug 2006
Сообщений: 60
почти, двигаться он щдолжен постоянно, и равномерно, а 150 или 1 - уже значения не имеет, поменять в любой момент можно....

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

Регистрация: Aug 2006
Сообщений: 60
Цитата:
Сообщение от __etc
я же говорил, что гадалки в отпуске
Может быть...

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

Регистрация: Nov 2004
Сообщений: 187
Отправить сообщение для whiteRed с помощью ICQ
...почувствовал себя гадалкой...

Старый 25.08.2006, 18:35
whiteRed вне форума Посмотреть профиль Отправить личное сообщение для whiteRed Найти все сообщения от whiteRed
  № 20  
Ответить с цитированием
whiteRed
 
Аватар для whiteRed

Регистрация: Nov 2004
Сообщений: 187
Отправить сообщение для whiteRed с помощью ICQ
Код:
повернули луч;
var aptRot = Math.atan2(apt._y-pluch._y, apt._x-pluch._x)*180/Math.PI; //угол от луча к аптечке
//находим разницу углов от луча к аптечке и собственно луча
var dRot = Math.abs(aptRot - pluch._rotation);
if(dRot>180) dRot=Math.abs(dRot-360);
if(dRot<половина_угловой_ширины_луча){
//приближаем аптечку на 10%
    apt._x = apt._x*0.9 + pluch._x*0.1;
    apt._y = apt._y*0.9 + pluch._y*0.1;
}

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

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

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


 


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


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