Flash CS制作幸運(yùn)大抽獎(jiǎng)gif動(dòng)畫(huà)特效教程

照慣例上主要代碼:
/*
@sxl
@QQ:285510591
@http://sxl001.129hb.com
@2009.12.20
*/
System.useCodePage =true;
// title_mc:標(biāo)題 | gong_mc:顯示中獎(jiǎng) | msg_mc:顯示所有中獎(jiǎng)和未中獎(jiǎng)情況
title_mc.cacheAsBitmap=true;
gong_mc.cacheAsBitmap=true;
gong_mc.y=1000;
msg_mc.cacheAsBitmap=true;
msg_mc.x=-1000;
// 下列是聲音效果數(shù)據(jù)
var mousw_over_sound:Over=new Over(),rect_up_sound:Move=new Move(),rect_down_soundown=new Down(),_win:Win=new Win();
// gong_array:獎(jiǎng)品名 | Balls:各個(gè)號(hào)碼 | hit_ball_array:已抽號(hào)碼
var gong_array:Array =[],Balls:Array =[],hit_ball_array:Array =[],move_gong_mc:Boolean=true,move_msg_mc:Boolean;
// 以下是內(nèi)部設(shè)置獎(jiǎng)品
var data_str:String ="環(huán)保手提袋|羅技|電磁爐|顯示器|移動(dòng)硬盤(pán)|掌上游戲機(jī)|手機(jī)|3G手機(jī)|九陽(yáng)豆?jié){機(jī)|電動(dòng)剃須刀|雅頓香水|數(shù)碼相機(jī)|閃存盤(pán)|離子電視|消毒柜|松下洗衣機(jī)|電磁爐|電飯煲|電壓力鍋|光波爐|攪拌機(jī)|榨汁機(jī)|電茶壺|咖啡機(jī)|自動(dòng)烹飪鍋|紫砂煲|空調(diào)|吸油煙機(jī)|取暖器|加濕器";
gong_array =data_str.split("|");
randomArray(gong_array);
/* 以下注釋部分是從外部文本中導(dǎo)入獎(jiǎng)品數(shù)據(jù)
var loaderNum:URLLoader = new URLLoader();
configureListenersNum(loaderNum);
var urlNum:String ="data/獎(jiǎng)品.txt";
var requestNum:URLRequest=new URLRequest(urlNum);
loaderNum.load(requestNum);
function configureListenersNum(dispatcher:IEventDispatcher):void {
dispatcher.addEventListener(Event.COMPLETE, completeHNum);
dispatcher.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);
}
function completeHNum(event:Event):void {
gong_array =event.target.data.split("|");
randomArray(gong_array);
event.target.removeEventListener(Event.COMPLETE, completeHNum);
event.target.removeEventListener(Event.COMPLETE, ioErrorHandler);
}
function ioErrorHandler(event:IOErrorEvent):void {
dele_balls_seleabled();
chakan_mc.buttonMode =false;
chakan_mc.removeEventListener(MouseEvent.MOUSE_OVER ,onMouse_Click);
chakan_mc.removeEventListener(MouseEvent.MOUSE_DOWN ,onMouse_Click);
chakan_mc.removeEventListener(MouseEvent.MOUSE_OUT ,onMouse_Click);
gong_mc._txt.text="請(qǐng)檢查數(shù)據(jù)";
gong_mc.Ball._txt.text="-_-";
gong_mc.addEventListener(Event.ENTER_FRAME,move_gong_mc_rect);
gong_mc.close_btn.enabled=false;
gong_mc.close_btn.removeEventListener(MouseEvent.MOUSE_DOWN,onCloseShowGong);
event.target.removeEventListener(Event.COMPLETE, completeHNum);
event.target.removeEventListener(Event.COMPLETE, ioErrorHandler);
}
*/
for (var i:uint =0; i<30; i++) {
this["Ball" + i].cacheAsBitmap=true;
this["Ball" + i].gotoAndStop("one");
Balls.push(this["Ball" + i]);
msg_mc["m" + i].ball_mc.gotoAndStop("one");
if (i<9) {
this["Ball"+i]._txt.text="0"+uint(i+1);
msg_mc["m"+i].ball_mc._txt.text="0"+uint(i+1);
} else {
this["Ball"+i]._txt.text=""+uint(i+1);
msg_mc["m"+i].ball_mc._txt.text=""+uint(i+1);
}
msg_mc["m"+i].t.text="等 待 抽 獎(jiǎng)";
this["Ball"+i].i=i;
this["Ball"+i].buttonMode =true;
this["Ball"+i].mouseChildren=false;
this["Ball" + i].addEventListener(MouseEvent.MOUSE_OVER ,onMouse_Click);
this["Ball" + i].addEventListener(MouseEvent.MOUSE_DOWN ,onMouse_Click);
this["Ball" + i].addEventListener(MouseEvent.MOUSE_OUT ,onMouse_Click);
//......
}
chakan_mc.buttonMode =true;
chakan_mc.mouseChildren=false;
chakan_mc.addEventListener(MouseEvent.MOUSE_OVER ,onMouse_Click);
chakan_mc.addEventListener(MouseEvent.MOUSE_DOWN ,onMouse_Click);
chakan_mc.addEventListener(MouseEvent.MOUSE_OUT ,onMouse_Click);
function onMouse_Click(sxl:MouseEvent) {
var target:MovieClip =sxl.currentTarget as MovieClip;
var target_name:String =target.name.substr(0,1);
switch (sxl.type) {
case "mouseOver" :
mousw_over_sound.play();
switch (target_name) {
case "B" :
getBitmapFilter(target);
break;
case "c" :
setTxtColor(target.t,0xFFFFFF);
break;
}
break;
case "mouseOut" :
switch (target_name) {
case "B" :
target.filters =null;
break;
case "c" :
setTxtColor(target.t,0xFFFF00);
break;
}
break;
case "mouseDown" :
switch (target_name) {
case "B" :
dele_balls_seleabled();
target.removeEventListener(MouseEvent.CLICK ,onMouse_Click);
target.gotoAndStop("two");
setTxtColor(target._txt);
var index:String =target.i;
hit_ball_array.push(target);
var str:uint =uint(target.name.substr(4));
if (str<9) {
gong_mc.Ball._txt.text="0"+uint(str+1);
} else {
gong_mc.Ball._txt.text=""+uint(str+1);
}
gong_mc._txt.text=gong_array[index];
gong_mc.addEventListener(Event.ENTER_FRAME,move_gong_mc_rect);
rect_up_sound.play();
msg_mc["m" + index].ball_mc.play();
msg_mc["m"+index].t.text=gong_array[index];
setTxtColor(msg_mc["m"+index].t,0xffff00);
setTxtColor(msg_mc["m" + index].ball_mc._txt);
break;
case "c" :
target.t.text="移開(kāi)中獎(jiǎng)結(jié)果";
if (Math.abs(gong_mc.y-300)<10) {
move_gong_mc=false;
gong_mc.addEventListener(Event.ENTER_FRAME,move_gong_mc_rect);
}
move_msg_mc=!move_msg_mc;
msg_mc.addEventListener(Event.ENTER_FRAME,show_msg_mc);
rect_up_sound.play();
break;
}
break;
}
}
//
function show_msg_mc(sxl:Event) {
if (move_msg_mc) {
var dis_up:Number =(354-sxl.target.x)/5;
sxl.target.x+=dis_up;
if (Math.abs(dis_up)<1) {
sxl.target.x=354;
sxl.target.removeEventListener(Event.ENTER_FRAME,show_msg_mc);
}
} else {
var dis_down:Number =(1800-sxl.target.x)/5;
sxl.target.x+=dis_down;
if (Math.abs(dis_down)<10) {
chakan_mc.t.text="查看中獎(jiǎng)結(jié)果";
sxl.target.x=-1000;
sxl.target.removeEventListener(Event.ENTER_FRAME,show_msg_mc);
}
}
}
// 刪除所有數(shù)字按鈕功能
function dele_balls_seleabled() {
for (var i:uint =0; i<Balls.length; i++) {
var A:MovieClip =Balls;
A.buttonMode =false;
A.removeEventListener(MouseEvent.MOUSE_OVER ,onMouse_Click);
A.removeEventListener(MouseEvent.MOUSE_DOWN ,onMouse_Click);
A.removeEventListener(MouseEvent.MOUSE_OUT ,onMouse_Click);
}
}
// 啟用可用數(shù)字按鈕功能
function show_balls_seleabled(A_arr:Array,B_arr:Array) {
var A_array:Array=A_arr,B_array:Array=B_arr;
for (var i:uint =0; i<A_array.length; i++) {
var A:MovieClip =A_array;
A.buttonMode =true;
A.mouseChildren=false;
A.addEventListener(MouseEvent.MOUSE_OVER ,onMouse_Click);
A.addEventListener(MouseEvent.MOUSE_DOWN ,onMouse_Click);
A.addEventListener(MouseEvent.MOUSE_OUT ,onMouse_Click);
}
for (var j:uint =0; j<B_array.length; j++) {
var B:MovieClip =B_array[j];
B.filters =null;
B.buttonMode =false;
B.removeEventListener(MouseEvent.MOUSE_OVER ,onMouse_Click);
B.removeEventListener(MouseEvent.MOUSE_DOWN ,onMouse_Click);
B.removeEventListener(MouseEvent.MOUSE_OUT ,onMouse_Click);
}
}
gong_mc.close_btn.addEventListener(MouseEvent.MOUSE_DOWN,onCloseShowGong);
function onCloseShowGong(sxl:MouseEvent) {
rect_down_sound.play();
gong_mc.addEventListener(Event.ENTER_FRAME,move_gong_mc_rect);
}
function move_gong_mc_rect(sxl:Event) {
if (move_gong_mc) {
var dis_up:Number =(300-sxl.target.y)/5;
sxl.target.y+=dis_up;
if (Math.abs(dis_up)<1) {
_win.play();
sxl.target.gold.play();
sxl.target.y=300;
sxl.target.removeEventListener(Event.ENTER_FRAME,move_gong_mc_rect);
move_gong_mc=false;
}
} else {
var dis_down:Number =(1000-sxl.target.y)/5;
sxl.target.y+=dis_down;
if (Math.abs(dis_down)<10) {
sxl.target.y=1000;
sxl.target.removeEventListener(Event.ENTER_FRAME,move_gong_mc_rect);
move_gong_mc=true;
show_balls_seleabled(Balls,hit_ball_array);
}
}
}
function randomArray(Target_array:Array):void {
Target_array.sort(function () {
return Math.round(Math.random()) ? 1 : -1;
});
}
function setTxtColor(_txt:TextField,color:uint=0x666666) {
var my_TextFormat:TextFormat =new TextFormat();
my_TextFormat.color =color;
_txt.defaultTextFormat = my_TextFormat;
_txt.setTextFormat(my_TextFormat);
}
//... 投影
function getBitmapFilter(_mc:MovieClip) {
var color:Number = 0x000000;
var angle:Number = 45;
var alpha:Number = 0.8;
var blurX:Number = 8;
var blurY:Number = 8;
var distance:Number = 15;
var strength:Number = 0.65;
var inner:Boolean = false;
var knockout:Boolean = false;
var quality:Number = BitmapFilterQuality.HIGH;
var myDropShadowFilterropShadowFilter= new DropShadowFilter(distance,angle,color,alpha,blurX,blurY,strength,quality,inner,knockout);
_mc.filters =[myDropShadowFilter];
}
相關(guān)文章
flash如何做雨滴下落的動(dòng)畫(huà)效果? Flash8做一個(gè)下雨效果的技巧
flash如何做雨滴下落的動(dòng)畫(huà)效果?想要做一個(gè)逼真的雨滴落下的效果,該怎么做雨滴落下水花擴(kuò)散的效果呢?下面我們就來(lái)看看Flash8做一個(gè)下雨效果的技巧2022-08-18flash理發(fā)店旋轉(zhuǎn)彩燈動(dòng)畫(huà)效果怎么做? 理發(fā)店旋轉(zhuǎn)燈制作技巧
flash理發(fā)店旋轉(zhuǎn)彩燈動(dòng)畫(huà)效果怎么做?經(jīng)常使用flash制作動(dòng)畫(huà)效果,該怎么制作旋轉(zhuǎn)燈效果,下面我們就來(lái)看看理發(fā)店旋轉(zhuǎn)燈制作技巧,詳細(xì)請(qǐng)看下文介紹2022-07-23flash怎么把形狀變成文字? flash星星變文字動(dòng)畫(huà)的實(shí)現(xiàn)方法
flash怎么把形狀變成文字?flash繪制的星星想要慢慢變成文字,該怎么將圖形變文字呢?下面我們就來(lái)看看flash星星變文字動(dòng)畫(huà)的實(shí)現(xiàn)方法,詳細(xì)請(qǐng)看下文介紹2022-06-06flash怎么制作補(bǔ)間動(dòng)畫(huà)? flash變形動(dòng)畫(huà)的實(shí)現(xiàn)方法
flash怎么制作補(bǔ)間動(dòng)畫(huà)?flash中想要制作形狀變化的動(dòng)畫(huà)效果,該怎么制作補(bǔ)間動(dòng)畫(huà)呢?下面我們就來(lái)就來(lái)看看flash變形動(dòng)畫(huà)的實(shí)現(xiàn)方法2022-02-06FLASH怎么讓搖曳的荷花更逼著? flash制作風(fēng)吹荷花動(dòng)畫(huà)的技巧
FLASH怎么讓搖曳的荷花更逼?flash中想要制作風(fēng)吹荷花的動(dòng)畫(huà)熊愛(ài)國(guó),該怎么制作這個(gè)效果呢?下面我們就來(lái)看看flash制作風(fēng)吹荷花動(dòng)畫(huà)的技巧2022-02-06flash怎么制作荷花在荷花池里搖擺的動(dòng)畫(huà)? FLASH做擺動(dòng)荷花的技巧
flash怎么制作荷花在荷花池里搖擺的動(dòng)畫(huà)??flash中想要制作荷花搖擺的動(dòng)畫(huà),該怎么制作荷花搖曳的動(dòng)畫(huà)呢?下面我們就來(lái)看看FLASH做擺動(dòng)荷花的技巧2022-02-06flash怎么做徑向彩虹文字動(dòng)畫(huà)? 文字添加彩虹動(dòng)畫(huà)效果的技巧
flash怎么做徑向彩虹文字動(dòng)畫(huà)?flash椎間盤(pán)買(mǎi)個(gè)輸入的文字,想要添加動(dòng)畫(huà)效果,該怎么添加徑向彩虹文字效果呢?下面我們就來(lái)看看flash文字添加彩虹動(dòng)畫(huà)效果的技巧,詳細(xì)請(qǐng)2021-11-09flash怎么做眨眼動(dòng)畫(huà)效果? flash動(dòng)漫人物眨眼動(dòng)畫(huà)的做法
flash怎么做眨眼動(dòng)畫(huà)效果?flash中想要制作一個(gè)動(dòng)漫人物的眼睛眨眼動(dòng)畫(huà),該怎么制作呢?下面我們就來(lái)看看flash動(dòng)漫人物眨眼動(dòng)畫(huà)的做法2021-11-08flash怎么制作火焰文字效果? flash做火焰字體動(dòng)畫(huà)的技巧
flash怎么制作火焰文字效果?flash中想要制作一個(gè)熊熊燃燒的活顏文字,該怎么制作這個(gè)文字效果呢?下面我們就來(lái)看看flash做火焰字體動(dòng)畫(huà)的技巧2021-11-01flash怎么做文字動(dòng)畫(huà)logo? 閃動(dòng)的片頭動(dòng)畫(huà)flash的實(shí)現(xiàn)方法
flash怎么做文字動(dòng)畫(huà)logo?flash中想要制作一個(gè)文字logo的動(dòng)畫(huà),讓文字閃爍,該怎么制作這個(gè)效果呢?下面我們就來(lái)看看flash制作文字動(dòng)畫(huà)的技巧2021-10-29