文章分类 | 推荐文章 | 最新文章 | 热点文章 | 最新软件 | 精品软件 | 下载排行 | 推荐下载 | firefox | WPS | 杀毒软件 | Picasa
清风网络
首 页 软件下载 网络学院 数码学院
QQ 电脑入门 游戏 操作系统 图形图像 办公软件 媒体动画 精文荟萃 常用软件 网页编程 技术开发 网络技术 认证考试 网站建设 文章专栏
当前位置:清风网络学院媒体动画Director五子棋游戏的制作(2)
精品推荐
特别推荐
·Director中几种Scirpt
·【Director教程】属性列表应用一则
·用Director制作不规则窗口
·Director 动画技术
·Director 3D 基础(之五)
·DIRECTOR去背技法步步高
·director应用技巧
热点TOP10
·Director MX 2004教程-- Director MX 2004简介
·Director Lingo 语言入门(1)
·Director MX 2004教程--我的第一个作品
·Director MX 2004教程--Director MX 2004都支持些什么?
·Director MX 2004教程--Director的工作界面
·Director Lingo 语言入门(7)
·Director怎样制作自定义光标
·director使用mui xtra创建对话框
·QuickDraw 3D Xtra 使用指南
·Director8新手上路--可视化的交互创作
·Director MX 2004教程--导入演员
·ShockWave 3D 制作系列教程之三
·Director Lingo 语言入门(6)
·Power Director 3快速上手
·制作具有Win XP 风格的菜单
·Director 3D 基础(之一)
·Director 8.5简单基础实例教程(四)
·Director的“洋葱皮”技术介绍
·Director 动画技术
·Director8新手上路--快速入门

五子棋游戏的制作(2)

日期:2007年7月4日 作者: 查看:[大字体 中字体 小字体]



  五子棋游戏的制作
    三.棋子布置和后悔按钮的代码设计

1..介绍一下棋子的布置。

初始时舞台上没有棋子,我们通过puppetsprite 来动态的根据需要把棋子放在舞台上并激活移动用户使用,这样不必在舞台上拖大量的精灵,时游戏显得混乱。我们这里用41及41以后的通道来共摆放棋子。

具体运用时我们在电影脚本里面定义一个函数来完成这一需要多次用到的操作:
根据nowNum的值来设置,为1是设置为黑子用户走子,-1则为白子用户。

on setUser nowNum

if nowNum= 1 then
     nextname= "black"
member ( "info" ). text = "黑子走"
else
     nextname= "white"
member ( "info" ). text = "白子走"
end if

repeat with o= 41 to the lastchannel
--从41通道开始找到第一个memberNum为空的演员,来对其关联给对应的演员
if sprite (o). memberNum = 0 then

--开始控制该通道
puppetsprite o, true

--设置位置等相关精灵属性
sprite (o). loc = point ( 322 , 390 )
sprite (o). ink = 36
sprite (o). width = 18
sprite (o). height = 18

--设置对应member
sprite (o). member = member (nextname)

--添加按钮脚本
x = script ( "chess" ). new ()

--因为设置scriptInstanceList时,不能覆盖已有的元素,固需要加入 sprite(o).scriptInstanceList=[]
sprite (o). scriptInstanceList =[]

sprite (o). scriptInstanceList . add ( x )

--强迫初始化
sendsprite o, #beginsprite
exit repeat
end if
end repeat
end


每次下完一颗棋子后,当没有玩家获胜时,则调用setUser(num)出现下一颗棋子让玩家移动。


2..后悔按钮,就是把棋盘上的最近放置的一颗棋子去掉,并设置新的当前玩家。

on mouseup me
puppetsound 1 , "regret" --播放音效
repeat with i= the lastchannel down to 42 --从最好一个通道往前面扫描
--找到第一个memberNum不为空的通道,即最近放置的棋子
if sprite (i). memberNum <> 0 then
       Pos= sprite (i- 1 ).OnlinePos --得到棋子的位置信息
       onlist[Pos[ 1 ]][Pos[ 2 ]]= 0 --将onlist对应位置恢复,表示该位置为空了

--清空最近一颗棋子的脚本和演员
sprite (i). scriptInstanceList =[]
sprite (i). memberNum = 0
--停止对最近一颗棋子所在通道的控制
puppetsprite i, 0
exit repeat
end if
end repeat
   setUser(-Pos[ 3 ])
--如果舞台上只剩一颗棋子,则不应由后悔按钮了
if i= 42 then sel. visible = 0
end


到此位置,整个游戏的关键代码就介绍完了,大家在看完本文后,在参考dir源文件分析应该时有所收获的。

源程序下载(完)

(出处:清风下载学院






上一篇:用Lingo解决组合问题

下一篇:如何在文本框中限制输入

五子棋游戏的制作(2) 相关文章:
·五子棋游戏的制作(2)
五子棋游戏的制作(2) 相关软件:

特别声明:本站除部分特别声明禁止转载的专稿外的其他文章可以自由转载,但请务必注明出处和原始作者。文章版权归文章原始作者所有。对于被本站转载文章的个人和网站,我们表示深深的谢意。如果本站转载的文章有版权问题请联系编辑人员,我们尽快予以更正。
[打印本页] [关闭窗口] 转载请注明来源:http://www.viphot.com
| 帮助(?) | 版权声明 | 友情连接 | 关于我们 | 信息发布
Copyright 2007 www.viphot.com All Rights Reserved. 鄂ICP备05000083号Powered by:vipcn