Показать сообщение отдельно
Старый 03.11.2006, 12:29
s0lar вне форума Посмотреть профиль Отправить личное сообщение для s0lar Найти все сообщения от s0lar
  № 1  
Ответить с цитированием
s0lar

Регистрация: Sep 2006
Адрес: Краснодар
Сообщений: 85
Отправить сообщение для s0lar с помощью ICQ
По умолчанию Как добится подобного эффекта при перетаскивании MovieClip'а

Как сделать подобный эффект, но при перетаскивании scroll_mc

Код:
import flash.filters.GradientGlowFilter;
import mx.transitions.*;
import mx.transitions.easing.*;
//
var art:MovieClip = createRectangle(9, 100, 0x666666, "scroll_mc");

function createRectangle(w:Number, h:Number, bgColor:Number, name:String):MovieClip {
    var mc:MovieClip = this.createEmptyMovieClip(name, this.getNextHighestDepth());
    mc.beginFill(bgColor);
    mc.lineTo(w, 0);
    mc.lineTo(w, h);
    mc.lineTo(0, h);
    mc.lineTo(0, 0);
    mc._x = 20;
    mc._y = 20;
    return mc;
}

//
var distance:Number = 30;
var angleInDegrees:Number = 270;
var colors:Array = [0xFFFFFF, 0x999999];
var alphas:Array = [1, 1];
var ratios:Array = [0, 255];
var blurX:Number = 0;
var blurY:Number = 30;
var strength:Number = 1;
var quality:Number = 3;
var type:String = "outer";
var knockout:Boolean = false;

var filter:GradientGlowFilter = new GradientGlowFilter(distance, 
                                                        angleInDegrees, 
                                                        colors, 
                                                        alphas, 
                                                        ratios, 
                                                        blurX, 
                                                        blurY, 
                                                        strength, 
                                                        quality, 
                                                        type, 
                                                        knockout);
var filterArray:Array = new Array();
filterArray.push(filter);
scroll_mc.filters = filterArray;

onEnterFrame = function ()	{
	var motion = -1*(this.scroll_mc._y-_root._ymouse+50);
	if (motion > 30) {
		motion = 30;
	} 
	
	if (motion < -30) {
		motion = -30;
	}

	filter.distance = motion*0.2;
	filter.blurY = Math.abs(motion);
	scroll_mc.filters = filterArray;

	tween1 = new Tween(_root.scroll_mc, 
					   "_y", Regular.easeOut, 
					   this.scroll_mc._y, 
					   _root._ymouse-50, 
					   1.5, true);
	trace(motion);
}