通行证: 用户 密码 域名空间  下载中心 社区论坛 信息公告 my小屋
联系我们
设为首页
加入收藏

 

qq,asp,php,jsp,xml,sql,.net,编程 程序 网页图象 建站经验 私服
首页 | 新闻资讯 | 编程开发 | 网页设计 | 图形图象 | 网络媒体 | 网站模板 | 数 据 库 | 投稿
论坛 | 操作系统 | 系统优化 | 网络安全 | 黑客技术 | 硬件学堂 | 硬件报价 | 服 务 器 | 地图
专题 | 应用软件 | 聊天通讯 | q q 专栏 | 建站经验 | 在线工具 | 站长club | 注 册 表 | 旧版
社会 | 游戏娱乐 | 设计欣赏 | 疑难解答 | 社区论坛 | 韩国素材 | 素材图库 | 广告服务 | 服务
当前位置:首页>>网络媒体>>director>>正文 新版上线![旧版]
注:打开慢时请稍等

用director 制作配对记忆游戏

http://www.iyit.net  日期:2006-5-29 8:54:03  来源:网络转载   点击:
参加讨论】用director 制作配对记忆游戏
   配对记忆游戏也算是一款比较经典的小游戏了,今天和大家一起讨论如何用director来制作这类游戏。

一.游戏介绍:
配对记忆游戏的玩法很简单,在牌上按一下鼠标左键就会翻开一张卡片,最多可以同时翻开两张,如果是两张相同,就可以配对消掉,不同的话就会自动盖回去,让用户继续选择。一般会有个时间限制,必须要在规定的时间内完成。直到把所有的卡片都消去之后游戏结束。这之中其实并没有什幺特殊技巧,完全是要靠瞬间的印象来回想自己点过的卡片花色与位置,然后逐一配对消去。(如图)

二.游戏制作:

   游戏制作思路和玩法一样也很简单,这里我们以一个实例来比较详细的讨论整个过程。

   游戏程序设计可以分为三个部分来,游戏初始化代码(相当于出题),卡片代码和计时器代码。

(1) 游戏初始化代码:

   分析:

   进行游戏的初始化,这里我们用到了10种不同的卡片,由于要配对每一张卡片在舞台上都会出现两个,也就是说我们要在舞台上随机放好20张卡片,开始时不会看到卡片正面,都统一显示为背面。这里我们将卡片一次编号为p1,p2..p10。

代码:

1> 我们先要得到一个代码编号列表,由于每个卡片出现两次,所以每个都添加了两次。

tlist=[]
repeat with i = 1 to 10
add tlist,i
add tlist,i
end repeat

2 > 将列表随机打散。

tlist=randomlist(tlist)

randomlist()是一个自定义的将指定列表随机打散的函数,论坛上有相关的讨论,这里就不做具体介绍了。

3 > 然后对应的设置好这20个卡片精灵的pmember属性。

   len=tlist. count
repeat with i= 1 to len
sprite ( 10 +i).pmember= member ( "p" &tlist[i])
end repeat

pmember记录了每个卡片精灵的正面member。(不是直接将sprite( 10 +i). member = member ( "p" &tlist[i]),因为开始时都显示为背面,即 member “back”。)

4 > 相关变量初始化:

--gselspnumlist记录了用户选择的精灵通道号列表。
   gselspnumlist=[]
--grightnum记录了用户已经配对成功的对数。
   grightnum= 0

( 2 ) 卡片精灵代码:

     接下来介绍核心的卡片代码了。

1 > 定义好属性变量:

property pself --自己
property spritenum --自己的精灵号
property pmember --自己正面的member
property pclicked --是否已经点击

2 > 精灵初始化:

on beginsprite me
   pself= sprite ( me . spritenum )
   pclicked= 0
end

3 > 卡片的鼠标点击判断:

on mousedown me
--在一次判断中,一个已经点击的卡片不能再次被点击
if not pclicked then
--点击后播放点选音效并显示正面图片。
puppetsound 1 , "down"
     pself. member =pmember
     pclicked= 1
--添加自身精灵号到一个记录列表,如果用户已经选择好了两个卡片就开始比较,看看是否匹配。
add gselspnumlist, spritenum
if gselspnumlist. count = 2 then checkifmatch( me )
end if
end

4 > 检测是否匹配(看看是否匹配)

on checkifmatch me
--如果匹配则播放音效
if sprite (gselspnumlist[ 1 ]). member = sprite (gselspnumlist[ 2 ]). member then
puppetsound 1 , "up"
--等待声音播放完成,一个自定义函数。
     delaywaitsound( 1 , 1 )
sprite (gselspnumlist[ 1 ]). blend = 0
sprite (gselspnumlist[ 2 ]). blend = 0
--正确数加一
     grightnum=grightnum+ 1
--如果正确的数目等于10则游戏成功。
if grightnum= 10 then
go "win"
end if
else
--延时40个ticks即2/3秒,让用户在看一下卡片就翻回背面。
     delaytime( 40 , 1 )
--不匹配则将该两个卡片显示回背面
sprite (gselspnumlist[ 1 ]). member = member ( "back" )
sprite (gselspnumlist[ 2 ]). member = member ( "back" )
--pclicked=0恢复可点选状态。
sprite (gselspnumlist[ 1 ]).pclicked= 0
sprite (gselspnumlist[ 2 ]).pclicked= 0
end if
--清空用户选择卡片记录列表,为后面的选择做好准备。
   gselspnumlist=[]
end

   至此整个游戏的核心代码都介绍玩了,还剩下一个计时器代码。

(3) 计时器代码:

这里就简单的介绍一下计时器代码。

1 > 定义并初始化属性变量:
property poldtime
on beginsprite me
    initimer( me )
end
on initimer( me )
--初始化计时器
--poldtime记录的游戏开始时的时间。
   poldtime= the timer
member ( "timer" ). text = "80"
end

2 > 更新计时器显示,并检测时间是否已经用完。

on exitframe me
--更新计时器,得到已用时间(单位:秒数)
   passed=( the timer -poldtime)/ 60
member ( "timer" ). text = string ( 80 -passed)
--如果已用时间等于80秒就去到游戏结束画面。
if passed= 80 then
go "lose"
end if
go the frame
end


   至此,整个游戏的代码设计过程就介绍玩了,希望大家能从中学到一些东西。本文以介绍代码设计为核心,大家完全可以把它设计得更漂亮,加上更多得创意。

下载范例

编辑:黑鹰 [发送给好友] [打印本页] [关闭窗口] [返回顶部]
上一篇:director生成文件减肥技巧
下一篇:director中事件发生的顺序及其意义
转载请注明来源:www.iyit.net
特别声明: 本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。

 相关文章
五子棋游戏的制作(1) 五子棋游戏的制作(2) director 编写“拼图游戏”(1)
director 编写“拼图游戏”(2) director 编写“拼图游戏”(3) flash游戏制作:打砖块
flash游戏制作:弹力球 flash游戏制作:找错误 flash趣味游戏制作:猜数字
flash游戏制作:七巧板 利用条件语句制作单词游戏(as条件语句 asp作的剪包锤游戏
如何在win20003中更好的玩游戏
最新更新 热点排行 推荐新闻
发布director mx 2004
directmedia xtra 在 director 中的应
speech xtra 应用(director mx 新增 
谈谈director作品的发布模式
关于多媒体程序运行速度的研究
博客网总裁辞职
发布director mx 2004
directmedia xtra 在 director 中的应
speech xtra 应用(director mx 新增 
谈谈director作品的发布模式
关于多媒体程序运行速度的研究
director mx 2004教程--哪些人适合使用
director mx 2004教程--常用多媒体编著
director mx 2004教程--为什么选择dir
director mx 2004教程--director与fla
发布director mx 2004
directmedia xtra 在 director 中的应
speech xtra 应用(director mx 新增 
谈谈director作品的发布模式
关于多媒体程序运行速度的研究
优秀公益广告作品欣赏(8)
java数据类型转换
windows xp专业版iis连接数的更改
新开放qq免费挂级网站
优秀公益广告作品欣赏(7)
免费在qq上看在线电影电视听音乐
qq最新版下载 2006 beta2 体验新感受 
office2007简体中文版浮出水面 美图抢
qq珊瑚虫外挂4.0版本发布!
免费把qq炫铃设为本机qq的系统提示音
dreamweaver mx 2004从零开始(1)
利用css改善网站可访问性
如何让mm的脸通透可人
msn8.0下载
asp 五大高效提速技巧
如何在win20003中更好的玩游戏
qq收费头像免费使用的方法 
微软将在华推分期付款,充值卡pc 可低价
 amd处理器am2测试 风扇竟运行7分钟
exeplorer.exe错误的问题的总结、解决
 友情链接
设置首 页 - 版权声明 - 广告服务 - 关于我们 - 联系我们 - 友情连接
copyrights © 2004-2006 iyit.net all rights reserved.
网站合作、广告联系qq:147007642、466949678
易特网络技术 点击这里给我发消息