Director五子棋游戏制作教程

五子棋游戏的制作

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源文件分析应该时有所收获的。

(0)

相关推荐

  • 经典H5游戏制作教程

    想知道怎么样既不花钱也不需要写代码就可以制作H5小游戏的方法吗?游戏简单好玩又能在朋友圈疯传,还能蹭蹭蹭地涨粉,下面我就来手把手地教大家怎样制作H5小游戏. 操作方法 01 登录.搜索H5游戏制作网站 ...

  • Director匹配精灵游戏制作教程

    问题 我正在做一个锻炼记忆力的游戏,用户在点击了一个精灵后,必须在两秒以内点击另一个与它匹配的精灵。我用全局变量来记录匹配的变量,但我不确定如何来做时间记录这部分工作。我已经尝试过使用”the sho ...

  • unity3D游戏制作教程

    U3D现已经占领了国内85%的手游开发,同时又布局了华南地区的人才战略,建立了名动漫官方unity3D人才培训中心,进一步占领游戏引擎领地!我准备把对如何用Unity3D制作愤怒的小鸟的研究过程记录下 ...

  • JAVA培训五子棋游戏教程01

    通过对网络五子棋游戏算法和技术的研究,以JAVA为开发平台,设计并实现了一个基于C/S模式的网络五子棋对战游戏.本程序将一般的单机五子棋程序开发成了一种网络游戏,其主要乐趣是实现人与人之间的对战,而不 ...

  • 安卓卡刷包制作教程 教你如何使用ZIPme修改制作安卓手机卡刷包

    最近央视315晚会上手机预装黑幕的曝光,余温未了。身边还有很多小伙伴们在头痛,这以后别人做的rom包不能随便下载了,如果出现上面的问题了咋办?除了选择知名的rom团队制作的rom包之外,其实我们还可以 ...

  • XPK文件制作教程介绍(附XPK打包工具及使用方法)

    XPK打包工具是一款针对国内安卓游戏的打包工具。现在用安卓系统手机的用户越来越多了,游戏的下载量也呈井喷状态,很多时候因为下载的游戏规格很大,且在没有WIFI的时候更是浪费流量,给用户使用带来诸多不便 ...

  • 明日之后中UZI冲锋枪制作教程

    相信很多小伙伴都有在玩"明日之后"这个游戏,那么其中我们怎么去自己制作一个UZI冲锋枪呢?下面小编就来为大家具体介绍.具体如下:1. 首先,进入装备制作台,然后点击下图箭头所指处的 ...

  • 侠盗圣安 MOD制作教程(非汽车、人物)

    侠盗圣安  MOD制作教程(非汽车.人物) ---枫叶君子123 编者我用的是sketchup 8.0 制作模型,其实可以直接用3DMAX,这里只是做一个skp导入3dmax小教程而已. 好了,打开s ...

  • UE4 独立游戏开发教程

    在我们的日常生活中,往往会遇到UE4 独立游戏开发教程的问题,常常会不知道怎么处理,下面就让小编为大家提供一下解决这种问题的方法,希望能够给大家提供一定的帮助. 操作方法 01 首先,要大胆设计,策划 ...