萬盛學電腦網

 萬盛學電腦網 >> 圖文處理 >> Flash教程 >> 絢麗的閃字動畫-Flash AS特效

絢麗的閃字動畫-Flash AS特效

代碼如下:
import mx.transitions.*;
import mx.transitions.easing.*;
var r:Number = 45;
var p:Number = 0;
var drag:Boolean = false;
var num:Number = 0;
var name_array:Array = new Array("閃", "吧", "2", "0", "0", "8", "興", "旺", "發", "展");
this.createEmptyMovieClip("container", this.getNextHighestDepth());
/*旋轉*/
function start_func() {
for (var i:Number = 0; i<=9; i++) {
  container.attachMovie("ball", "ball"+i, i);
  container["ball"+i]._x = 225+r*(Math.abs(4.5-i))*Math.cos((135-(Math.floor((i/5))*180))*Math.PI/180);
  container["ball"+i]._y = 225+r*(Math.abs(4.5-i))*Math.sin((135-(Math.floor((i/5))*180))*Math.PI/180);
  container["ball"+i].txt.text = name_array[i];
  container["ball"+i].i = i;
  container["ball"+i].onEnterFrame = function() {
   var my_color:Color = new Color(this._mc);
   my_color.setRGB(Math.random()*0xFFFFFF);
   this._x = 225+r*(Math.abs(4.5-this.i))*Math.cos(((135-(Math.floor((this.i/5))*180))+p)*Math.PI/180);
   this._y = 225+r*(Math.abs(4.5-this.i))*Math.sin(((135-(Math.floor((this.i/5))*180))+p)*Math.PI/180);
   p = p+0.5;
  };
  container["ball"+i].onPress = function() {
   var myTween:Tween = new Tween(this, "_xscale", Elastic.easeOut, 100, 200, 1, true);
   var myTween:Tween = new Tween(this, "_yscale", Elastic.easeOut, 100, 200, 1, true);
  };
  container["ball"+i].onRelease = function() {
   var myTween:Tween = new Tween(this, "_xscale", Elastic.easeOut, 200, 100, 1, true);
   var myTween:Tween = new Tween(this, "_yscale", Elastic.easeOut, 200, 100, 1, true);
  };
}
}
start_func();
/*拖動跟隨*/
var mouseListener:Object = new Object();
mouseListener.onMouseDown = function() {
if (container["ball"+0].hitTest(_root._xmouse, _root._ymouse)) {
  drag = true;
}
};
mouseListener.onMouseMove = function() {
if (drag) {
  num = 1;
  delete container["ball"+0].onEnterFrame;
  container["ball"+0]._x = _root._xmouse;
  container["ball"+0]._y = _root._ymouse;
  for (var i:Number = 1; i<=9; i++) {
   delete container["ball"+i].onEnterFrame;
   container["ball"+i]._x += (container["ball"+(i-1)]._x-container["ball"+i]._x)/3;
   container["ball"+i]._y += (container["ball"+(i-1)]._y-container["ball"+i]._y)/3;
  }
}
};
mouseListener.onMouseUp = function() {
drag = false;
/*拖動後才能恢復*/
if(num==1){
  start_func();
  num=0;
}
};
Mouse.addListener(mouseListener);

copyright © 萬盛學電腦網 all rights reserved