+ -
当前位置:首页 → 问答吧 → [教程]flash拼图游戏演示

[教程]flash拼图游戏演示

时间:2011-08-13

来源:互联网

本教程转载自爱闪客,源文地址



此篇教程的目标是要展示怎样在flash应用程序中让用户能简单地在舞台上拖动对象。在这个示例中,我们将创建一个拼图游戏以便让用户能移动并集合图块。
示例效果:
http://www.flashigot.com/files/image/articles_images/136/drag-puzzle_finished.swf
1. 下载并打开源文件(drag-puzzle_begin.fla),然后从这里开始。
2. 已经可以在“pieces”层看见拼图的图块。每个图块都是一个影片剪辑。
3. 首先,在舞台上给每个影片剪辑取实例名,类似p1_mc,p2_mc,p3_mc。。。等等

4. 然后在时间线上新建一层,名为actions,并锁定层

5. 现在第一帧上按F9,打开脚本面板输入以下代码:
复制内容到剪贴板
代码:
var pieces : Array = [p1_mc, p2_mc, p3_mc,
        p4_mc, p5_mc, p6_mc,
        p7_mc, p8_mc, p9_mc];
for (var i:int=0; i<pieces.length; i++) {
pieces[i].buttonMode = true;
pieces[i].addEventListener(MouseEvent.MOUSE_DOWN, startMove);
pieces[i].addEventListener(MouseEvent.MOUSE_UP, stopMove);
}
function startMove(evt:MouseEvent):void{
evt.target.startDrag();
}
function stopMove(evt:MouseEvent):void{
evt.target.stopDrag();
}
6. 解释代码,开始我们声明一个数组来保存拼图游戏中所有用到的影片剪辑实例。然后,在"for loop"上,使用for each块来循环数组。
- 设置按钮模式为true以便当鼠标悬停的时候显示鼠标指针。
- 然后加入事件侦听器,一个用于侦听鼠标按下事件,一个用于鼠标松开事件。
通过调用startDrag方法,starMove函数将能处理鼠标按下事件的逻辑
通过调用stopDrag方法,stopMove函数将能处理鼠标松开事件的逻辑
7. 测试影片(Ctrl + Enter)了解一下拼图游戏的运行过程。

sample.rar (197.13 KB)
sample.rar (197.13 KB)
下载次数: 0
2011-8-13 09:47


[ 本帖最后由 flashigot 于 2011-8-13 09:52 编辑 ]

附件

sample.rar (197.13 KB)

2011-8-13 09:45, 下载次数: 1

作者: flashigot   发布时间: 2011-08-13

简单易学的教程, 谢谢楼主!

作者: fisk129   发布时间: 2011-08-13

热门下载

更多