怎樣用Flash CS4製作撲克牌切換效果
本例思路:
<1>創建實例背景。
<2>繪製牌的正面和反面並轉換爲圖形元件。
<3>創建一個牌的容器,轉換爲元件類“Card”,將正反面牌分別放置於第1、2幀。
<4>創建文檔類,控制撲克牌對象的rotationY屬性。
實例步驟:
(1)新建一個空白文檔,舞臺大小設置爲500*250,幀頻設置爲120,繪製一個與舞臺大小同樣大小的矩形,並填充放射狀漸變色,設置第一色標顏色爲(R:0,G:246,B:93)Alpha: 100%,設置第二色標顏色爲(R:0,G:131,B:49)Alpha: 100% ,設置第三色標顏色爲(R:0,G:62,B:23)Alpha: 100% ,如下圖15-1所示。
圖15-1 繪製背景
(2)使用“漸變變形工具”進行調整高光位置和漸變分佈模式,如下圖15-2 所示。
圖15-2 漸變調整
(3)分別創建兩個圖形元件,命名爲“back”和“9”。簡單繪製撲克牌“9”的正反面,註冊點在中心位置且大小必需相同,如下圖15- 3所示。
圖15-3 撲克牌正反面
(4)新建一個影片剪輯,命名爲“Card” ,命名元件類名也爲“Card”,如圖3-所示。將上面步驟中創建的撲克牌“9”的'正反面分別放置於第1、2幀處正中心位置,如下圖15-4所示。
圖15-4 創建“Card”對象
(5)創建文檔類Main類,如圖3-所示,首先創建一個牌的容器“container”,並將其放置於舞臺中心位置,如構造函數第20到23行代碼所示,然後創建撲克牌容器對象並添加到容器“container”中,如第25、26行代碼所示,並將撲克牌容器對象停止播放(也就是停留在第1幀)、啓動按鈕模式和註冊偵聽器函數,如第27到29行代碼所示。
AS3代碼
package
{
import lay.*;
import ts.*;
import ner;
/**
* ...
* @author lbynet (Tools -> Custom Arguments...)
*/
public class Main extends Sprite {
private var container:Sprite;
private var pane:MovieClip;
private var isback:Boolean;
private var currentPlane:MovieClip;
private var currentRotationY:Number;
public function Main():void {
container = new Sprite();
container.x=eWidth/2;
container.y=eHeight/2;
addChild(container);
pane = new Card();
hild(pane);
();
onMode=true;
ventListener(K, onClick);
}
(6)當撲克牌容器對象被單擊時調用onClick偵聽器函數,爲stage註冊事件偵聽來控制何時切換爲正面或是反面,通過判斷變量isback 來重新設置被單擊撲克牌的rotationY屬性,如第36到44行代碼所示,在第38、42行代碼,通過Tweener 來切換撲克牌的rotationY值在0與-180度之間,如下原理圖15-5 所示。
AS3代碼
private function onClick(event:MouseEvent):void {
ventListener(R_FRAME, enterFrameHandler);
currentPlane = MovieClip(entTarget);
if (isback) {
ween(currentPlane, { rotationY:0,time:1 } );
//ween(currentPlane, { z:0,time:1 } );
} else {
ween(currentPlane, { rotationY:-180,time:1 } );
//ween(currentPlane, { z:-200,time:1 } );
}
isback = ! isback;
}
private function enterFrameHandler(event:Event):void {
currentRotationY = tionY;
if (currentRotationY >= -90 && currentRotationY <= 10) {
if (isback) {
AndStop(2);
} else {
AndStop(1);
}
veEventListener(R_FRAME, enterFrameHandler);
trace("已清除事件偵聽");
}
}
}
圖15-5 文檔類
(7) 當用戶單擊撲克牌容器對象,在第34行代碼中註冊的偵聽器後,執行偵聽器函數enterFrameHandler ,並通過時時判斷撲克牌容器對象的rotationY的值來判斷撲克牌容器對象要切換跳轉到哪一幀,如第50到59行代碼所示,最後,清除無用的偵聽器,如第57行代碼所示。
(8)把onClick偵聽器函數中第39、43兩行代碼放開,發佈測試,當用戶單擊撲克牌容器對象後,撲克牌切換翻轉並放大(其實際是對象的z軸值減小),如下圖3- 所示,當再次單擊後,撲克牌切換翻轉並縮小致原始狀態。
-
(熱門)製作的作文8篇
在學習、工作或生活中,大家都接觸過作文吧,作文是人們把記憶中所存儲的有關知識、經驗和思想用書面形式表達出來的記敘方式。怎麼寫作文才能避免踩雷呢?下面是小編精心整理的製作的作文8篇,僅供參考,希望能夠幫助到大家。製作的作文篇1從小到大,製作西米露的活兒,一直...
-
[精華]實用的製作的作文300字
在日常學習、工作和生活中,大家對作文都不陌生吧,寫作文是培養人們的觀察力、聯想力、想象力、思考力和記憶力的重要手段。那麼問題來了,到底應如何寫一篇優秀的作文呢?以下是小編幫大家整理的製作的作文300字4篇,歡迎閱讀,希望大家能夠喜歡。製作的作文300字篇1今天...
-
【精】實用的製作燈籠作文7篇
在平平淡淡的學習、工作、生活中,大家都不可避免地要接觸到作文吧,寫作文是培養人們的觀察力、聯想力、想象力、思考力和記憶力的重要手段。那麼你知道一篇好的作文該怎麼寫嗎?下面是小編整理的製作燈籠作文8篇,歡迎大家借鑑與參考,希望對大家有所幫助。製作燈籠作...
-
控制作文[通用6篇]
無論在學習、工作或是生活中,說到作文,大家肯定都不陌生吧,藉助作文人們可以實現文化交流的目的。你知道作文怎樣寫才規範嗎?以下是小編整理的控制作文7篇,歡迎閱讀與收藏。控制作文篇1“嗒,嗒,嗒。”陣陣急促的高跟鞋聲彷彿敲打在我的心上,讓本就煩躁不堪的我更加焦躁...