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

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

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

Регистрация: Apr 2003
Адрес: Ukraine, Kiev
Сообщений: 189
Отправить сообщение для sinya с помощью ICQ
По умолчанию Флэш забивает на прорисовку мувиков с координатой > 4005 ?

Всем привет.
Столкнулся вот с чем: у меня есть мувик bgr, в нем еще два мува, а и b. для а написана онЕнтерФрейм-функция, увеличивающая его y-координату до того момента, пока а не ляжет своим центром на b. Проверяется этот момент хитТестом. Все работает, но когда я начинаю перемещать общий мув bgr по иксу, то при bgr._x > 4005 мув а начинает двигаться по игреку, как будто b под ним исчез. Вырезка из трейса (первое число - bgr._x, второе - bgr.a._y):
Код:
3999
-3.5
____________
4000
-3.5
____________
4001
-3.5
____________
4002
-3.5
____________
4003
-3.5
____________
4004
-3.5
____________
4005
-3.5
____________
4006
1.5
____________
4007
6.5
____________
4008
11.5
____________
Мой вопрос заключается в том, как можно этого избежать и верно ли мое предположение в теме поста? Спасибо.
__________________
Платон мне друг, но истина в вине.

Старый 29.05.2008, 12:58
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Исходник?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

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

Регистрация: Apr 2003
Адрес: Ukraine, Kiev
Сообщений: 189
Отправить сообщение для sinya с помощью ICQ
Вот..
Вложения
Тип файла: rar src.rar (4.4 Кб, 52 просмотров)
__________________
Платон мне друг, но истина в вине.

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

Регистрация: May 2008
Сообщений: 476
Из Вашего исходника, понять, собственно ниче нельзя. Если можно изложите идею словесно и по-подробнее, т.е. что Вы хотите реализовать. Я думаю так будет проще, чем мы будем парсить мозгом ваш исходник.

Сразу же есть несколько советов.

1. Делайте по возможности все на основной временной шкале а не на шкалах вложенных мувов, т.е не bgr....onEnterFrame, а _root.onEnterFrame и в первом кадре (если нет прелоадера). Это способствует централизации кода, т.е. и Вам и другим флешерам легкче будет с ним разбираться.

Поясните пожалуйста зачем Вам 2 слой. Я не вижу там никаких трасформаций или действий?


Последний раз редактировалось Alex_beginner; 29.05.2008 в 14:59.
Старый 29.05.2008, 14:58
sinya вне форума Посмотреть профиль Отправить личное сообщение для sinya Посетить домашнюю страницу sinya Найти все сообщения от sinya
  № 5  
Ответить с цитированием
sinya
 
Аватар для sinya

Регистрация: Apr 2003
Адрес: Ukraine, Kiev
Сообщений: 189
Отправить сообщение для sinya с помощью ICQ
Исходник проще этого трудно себе представить.. Я не знаю как в нем можно что-то не понять. Этот файл иллюстрирует мою проблему. Если бы меня интересовало использование _root.onEnterFrame, я бы так и написал.

2. Не уничтожаю, т.к. он мне нужен. В реальной задаче мув b может менять координаты, и мув a при этом должен опускаться на него.
__________________
Платон мне друг, но истина в вине.

Старый 29.05.2008, 15:10
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 6  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
На счет _root.onEnterFrame львиная доля всех динамических процессов может быть описана в onEnterFrame главной временной шкалы и нет необходимости делать его на клипах, кнопках и др. кадрах итд.

Давайте уточним.

1. Есть клип-контейнер - bgr;
2. В bgr есть два клипа bgrr и char;
3. Необходимо менять свойство char._y до момента совпадения координат его центра и края клипа bggr;
4. Остановка процесса;

Если что то не так или что-то я упустил попавьте меня, указав номер пункта и поправку.

Старый 29.05.2008, 15:36
chingachgoog вне форума Посмотреть профиль Найти все сообщения от chingachgoog
  № 7  
Ответить с цитированием
chingachgoog
Banned
[+4 01.02.09]
[+1 01.02.09]
 
Аватар для chingachgoog

блогер
Регистрация: Nov 2006
Адрес: Moscow
Сообщений: 2,145
Записей в блоге: 7
Вот простой исходник.
Как видно дело в ограничениях третьего синтаксиса хиттеста.
Вложения
Тип файла: rar src.rar (5.0 Кб, 50 просмотров)

Старый 29.05.2008, 15:42
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 8  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
А вот так организовать процесс нельзя?

Код:
var centralPoint:Object = {x:0,y:0}; //для точки регистрации в центре клипа
this.onEnterFrame = function():Void
{
	this.bgr.char._y +=3;
	centralPoint.x=0;
	centralPoint.y=0;
	this.bgr.char.localToGlobal(centralPoint);
	if (this.bgr.bgrr.hitTest(centralPoint.x,centralPoint.y,true))
	{
		delete this.onEnterFrame;
		trace("столкновение");
	};
}
Видите ли hitTest принимает в качестве параметров координаты в координатной системе основной шкалы. А отследить все изменения координат от изменения координатных систем вложенных клипов может localToGlobal.
Вложения
Тип файла: rar mysrc.rar (4.9 Кб, 42 просмотров)


Последний раз редактировалось Alex_beginner; 29.05.2008 в 16:16.
Старый 29.05.2008, 15:49
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 9  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
Сhingachgoog! Большой змей! Скажи мне а че он вообще то хотел, если ты понял.

Вот еще что непонятно. Как можно достигнуть координаты 4005 если максимальные размеры холста -2880 px.


Последний раз редактировалось Alex_beginner; 29.05.2008 в 16:08.
Старый 29.05.2008, 16:26
chingachgoog вне форума Посмотреть профиль Найти все сообщения от chingachgoog
  № 10  
Ответить с цитированием
chingachgoog
Banned
[+4 01.02.09]
[+1 01.02.09]
 
Аватар для chingachgoog

блогер
Регистрация: Nov 2006
Адрес: Moscow
Сообщений: 2,145
Записей в блоге: 7
Цитата:
Сообщение от Alex_beginner Посмотреть сообщение
Скажи мне а че он вообще то хотел, если ты понял.
sinya нашел интересный глюк и высказал правдоподобное объяснение сего явления. Скорее всего он прав. Но точно могут сказать только разработчики метода хитТест (они знают, как он НА САМОМ ДЕЛЕ работает)

Цитата:
Сообщение от Alex_beginner Посмотреть сообщение
Вот еще что непонятно. Как можно достигнуть координаты 4005 если максимальные размеры холста -2880 px.
Холст может быть практически любых размеров. Это битмапа не может быть больше 2880.

add:
Цитата:
Сообщение от Alex_beginner Посмотреть сообщение
А вот так организовать процесс нельзя?
В этом нет смысла для поставленного вопроса. В моем примере шарик вообще не падает.


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

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

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


 


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


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