allora.. ci ho dato uno sguardo...
riporto il codice
codice:
import flash.filters.BlurFilter;
MovieClip.prototype.flou=function(){
var f:BlurFilter=new BlurFilter(5,5,2);
this.filters=[f];
this.onEnterFrame=function(){
this.onRollOver=function(){
this.val=true;
}
this.onRollOut=function(){
this.val=false;
}
if(this.val){
f.blurX-=.2;
if(f.blurX<0) f.blurX=0;
f.blurY=f.blurX;
this.filters=[f];
}
else{
f.blurX+=.2;
if(f.blurX>5) f.blurX=5;
f.blurY=f.blurX;
this.filters=[f];
}
}
}
var liste:Array=["item 1", "item 2", "item 3", "item 4"]
for(var i:Number=0; i<4; i++){
var mc:Array=attachMovie("item", "item"+i, i);
mc._y=40;
mc._x=60+i*95;
mc.label.text=liste[i];
mc.flou();
}
diciamo tutto abbastanza chiaro, mi sono letto nel manuale quello che nn sapevo e ok..
ora io dovrei invertire. cioè di base tutti e 4 i pulsanti nitidi e, quando uno va ad esempio su 1, far sfocare 2 3 4..
prima cosa ho messo if(!this.val) al posto if(this.val) in modo tale che inizi nitido.. funziona diciamo a metà xkè per un primo istante è offuscato, poi si schiarisce. Ho provato a commentare this.filters=[f]; ma non capisco xkè parta cmq sfocato.. ma è roba di poco conto..
ho pensato allora di fare un for e sostituire this.filters=[f]; all'interno degli if con appunto il filtro applicato ai rimanenti oggetti. Detto in codice
codice:
for (var j:Number=0;j<4;j++)
{
var temp = "item"+j;
if (this._name!= temp)
{
this.filters=[f];
}
}
se non fosse che, anche se temp vale ad esempio "item1" che poi è il nome giusto dell'oggetto lui non riesce a beccarlo xkè penso lui nn lo veda come oggetto ma cm stringa.. conclusione.. come faccio dalla stringa a dirgli il relativo oggetto???
è davvero tanto che nn smanetto con flash
grazie!