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

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

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

Регистрация: Feb 2006
Сообщений: 37
По умолчанию применение ColorMatrixFilter к мувикам, подгруженным в цикле - пашет только в локале

Добрый день, подскажите, пожалуйста:

есть ряд мувиков, они подгружаются в ленту в помощью MovieClipLoader и потом расставляются по местам.
По замыслу, они должны быть greyscale, т.е., обесцвеченными, а только при наведении мышки - цветными.

так вот, в локале все работает, а в сети
работает только с первой картинкой цикла!
поскажите, почему такое может быть?
заранее признательна

код примерно такой:

Код:
//в самом начале 
import flash.filters.ColorMatrixFilter;

var myElements_array:Array = [0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0, 0, 0, 1, 0];
var grey:ColorMatrixFilter = new ColorMatrixFilter(myElements_array);
var myElements_array2:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
var color:ColorMatrixFilter = new ColorMatrixFilter(myElements_array2);

//потом загрузка списка, внутри onData запускаются остальные ф-ции, 
//в т.ч. ф-ция загрузки через MCЛодер, внутри него - расставляется все 
//по местам, и написано для каждого (через цикл) мувика примерно следующее:

путь к картинке["t"+i].onRollOut = function() {
	arrOfClips[i].filters = [color];
}
путь к картинке["t"+i].onRollOut = function() {
	arrOfClips[i].filters = [grey];
}
все в 8-ке,
экспорт - тоже, в 8-й плеер

Старый 30.05.2006, 14:03
Nirth вне форума Посмотреть профиль Отправить личное сообщение для Nirth Посетить домашнюю страницу Nirth Найти все сообщения от Nirth
  № 2  
Ответить с цитированием
Nirth
4AM Games
 
Аватар для Nirth

блогер
Регистрация: Nov 2002
Адрес: Sofia
Сообщений: 6,264
Записей в блоге: 1
Отправить сообщение для Nirth с помощью ICQ Отправить сообщение для Nirth с помощью AIM Отправить сообщение для Nirth с помощью MSN Отправить сообщение для Nirth с помощью Yahoo Отправить сообщение для Nirth с помощью Skype™
где находятся картинки?
__________________
Я перестал переписывать, начал редактировать, еще лет 15 и я стану писателем ^_^

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

Регистрация: Feb 2006
Сообщений: 37
в папках, два уровня вложенности.
каждая картинка - в своей папке
названия папок передаются из массива

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

Регистрация: Feb 2006
Сообщений: 37
неужели оно не поддерживает картинки из разных папок?
они же вроде подгружаются в swf, должны слушаться

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

Регистрация: Feb 2006
Сообщений: 37
попробовала перенести картинки в корневую директорию -
все та же самая проблема - работает только первая картинка, остальные остаются цветными...
и если положить в ту же директорию, что и swf-шник, в который все грузится - все то же

написала в несущей html-ке version плеера - 8, но это кажется ничего не значит толком...


помогите не зарыться...


Последний раз редактировалось Micar; 30.05.2006 в 14:49.
Старый 30.05.2006, 14:51
Samodelkin вне форума Посмотреть профиль Отправить личное сообщение для Samodelkin Найти все сообщения от Samodelkin
  № 6  
Ответить с цитированием
Samodelkin

Регистрация: Jul 2005
Адрес: Москва
Сообщений: 452
Отправить сообщение для Samodelkin с помощью ICQ
а зачем два раза onRollOut?

лучше покажи код где грузишь картинки. а еще лучше весь код.
__________________
Давайте отбросим факты, чтобы увидеть суть

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

Регистрация: Feb 2006
Сообщений: 37
буду рада если кто посмотрит

вот RAR, в нем фла, все лишнее я стерла для понятности

знаю, что про другое вопросы надо отдельно задавать, и я задам,
но вдруг - если уж будете смотреть -
тормозит у меня просчет вначале - в чем ошибка?

два раза rollOut - это опечатка, разумеется

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

Регистрация: Dec 2005
Сообщений: 316
дело явно в загрузке картинок - первый раз действительно все в цвете, после f5 - как надо. видимо ты начинаешь их обрабатывать раньше, чем они загрузятся.

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

Регистрация: Feb 2006
Сообщений: 37
Уважаемые знатоки !!!

кажется, я поняла в чем дело -
я запускала много циклов,
а стоило использовать параметр функции onLoadInit

во всяком случае вот это работает

Код:
import flash.filters.ColorMatrixFilter;

var myElements_array:Array = [0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0.3, 0.59, 0.11, 0, 0, 0, 0, 0, 1, 0];
var grey:ColorMatrixFilter = new ColorMatrixFilter(myElements_array);
var myElements_array2:Array = [1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, 1, 0];
var color:ColorMatrixFilter = new ColorMatrixFilter(myElements_array2);


makeImages(8);

function makeImages(j) {
		var list = {};
		var loader = new MovieClipLoader();
		loader.addListener(list);

for (i=0; i<j; i++) {
		this.createEmptyMovieClip("o"+i, i);
		this["o"+i]._x = 100+ i*150;
		this["o"+i]._y = 300;
		var mes = this["o"+i];
		loader.loadClip(i+".jpg", mes);
}

		
		list.onLoadInit = function(u) {
			u.filters = [grey];
		    u.onRollOver = function() {
				this.filters = [color];
			}
			u.onRollOut = function() {
				this.filters = [grey];
			}
		}

}
вот оно

надеюсь будет работать и в проекте
спасибо за человеческое участие!

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

Регистрация: Dec 2005
Адрес: Moscow
Сообщений: 84
Отправить сообщение для heilong с помощью ICQ
действительно, миллион раз уже проблемы была в том что делаешь что-то с клипом, который ещё не загрузился. мораль - всегда любые действия с клипом, загружаемым извне (не attachMovie) делать только проверив что загрузка завершена. лучше всего MovieClipLoader.onLoadInit.
ещё ужасная штука - если внутри клипа есть код, он выполняется после того как выполнится весь код которые его аттачит. например
Код:
// inside mc1's actions 
trace('mc1 init');

// inside root's actions
attachMovie('mc1', 'mc1', getNextHighestDepth());
trace('mc1 attached');
сначала выведется 'mc1 attached', потом 'mc1 init'. неинтуитивно и вообще плохо (с классами например всё правильно и с точность до наоборот, сначала будет конструктор, потом только attachMovie возвращается и будет 'mc1 attached').

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

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

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


 


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


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