PDA

Просмотр полной версии : as MovieClip.filters not work :(


nouba
12.12.2006, 17:22
Здраствуйте товарищи
Есть вот такая проблемка


package outsource {
import flash.display.MovieClip;
import flash.filters.BevelFilter;
import flash.filters.BitmapFilter;

[Embed (source="/outsource/clock.swf#GameClock")]
public dynamic class GameClock extends MovieClip{

public var __clockBg:MovieClip

public function GameClock(){
__clockBg = getChildByName("clockbg") as MovieClip;
var fi:BitmapFilter = new BevelFilter()
var ar:Array = new Array()
ar.push(fi)
__clockBg.filters = ar;
__clockBg.rotation = 30
__clockBg.visible = true
__clockBg.alpha = 0.2
}
}
}


Как видите после инициализации мувика я пробую поигратся его свойствами.
Прикол в том что допусти rotation и visible можна изменить и эффект будет виден, а вот filters и alpha - НЕТ!
Как я уже не старался ну нельзя изменить прозрачность и добавить фильтры :(

Есть какие-то у кого соображения?
Заранее благодарен за ответы!

etc
12.12.2006, 18:21
А ролик ты прицепляешь? У тебя нет addChild…

nouba
12.12.2006, 18:24
А его не надо цеплять :)
Он и так уже есть. Это же класс к внешниму мувику
[Embed (source="/outsource/clock.swf#GameClock")]

Прикол в том что почему некотырыми свойства мувиклипа невозможно управлять хотя в доке об этом ни слова

etc
12.12.2006, 18:27
Выложи исходник.

ALiEN_2OO6
12.12.2006, 21:13
Попробуй в классе написать функцию например для изменения прозрачности, и уже её вызвать. Должно помочь.

nouba
12.12.2006, 21:22
Попробуй в классе написать функцию например для изменения прозрачности, и уже её вызвать. Должно помочь.

И так я уже писал. Прозрачность я уже добился чтобы менялась
А вот с фильтрами полный пипец

Так тоже не работает:


private function setFilters():void{
__clockBg.filters = [new BevelFilter()]
}


а сели написать после этого trace(__clockBg.filters) то получится
что эффект всётаки есть, потому что пишет в консоли "[object BevelFilter]"
но визуально его нету :(((

Вот такая вот запара

nouba
15.12.2006, 15:16
Кароче это глюк Флэша 9 альфы
Можно играться всеми свойствами класса MovieClip, кроме фильтров
Отображаются только фильтры вручную установленные ещё во флэше

З.Ы. Спасибо __etc за помощь ;)

nouba
15.12.2006, 15:58
Проблема локализирована здесь (http://livedocs.macromedia.com/flash/8/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00002083.html)

К сожалению, приходится выбирать -
либо ты юзаешь ColorTransform либо filters

Ну не пляшет оно друг с другом и всё :(

etc
15.12.2006, 18:04
о_О, ты нашёл ещё и проблему? :) Не знал, не знал =)
Тогда проще — накладывай ColorTransform на вложенный мувик, а фильтр на внешний (т.е. ещё один внутренний мувик сделай).

Тем не менее, остается неясным тот факт, что фильтры, выставленные ручками — работают.

nouba
15.12.2006, 18:15
Вариант... вариант...
Ша попробую :)

Добавлено через 5 минут:

УРА! Б.Я! Заработало
З.Ы. Ещё раз спасибо за светлую идею, а то у меня мозги в ту степь уже не варят за 3 день затр..ха с этими часиками