五子棋游戏的制作
1 ..介绍棋子的排列。
一开始,舞台上没有棋子。我们用puppetsprite动态把棋子放到舞台上,激活移动用户使用,这样就不需要在舞台上拖一大堆小精灵,游戏也就混乱了。这里我们用41和41之后的通道* * *放置棋子。
在具体应用中,我们在电影脚本中定义了一个函数来完成这个需要多次使用的操作:
根据nowNum的值,如果是1,则设置为黑子的用户,如果是-1,则为白子的用户。
关于setUser nowNum
如果nowNum= 1,则
nextname= "black "
成员(“信息”)。text = "黑子去"
其他
nextname= "白色"
成员(“信息”)。text = "白子去了"
如果…就会结束
重复o= 41到最后一个通道
-从通道41中找到memberNum为空的第一个actor,并将其与相应的actor相关联。
如果雪碧(o)。那么memberNum = 0
-开始控制频道。
木偶精灵o,真
-设置位置和其他相关elf属性。
雪碧(o)。loc =点(322,390)
雪碧(o)。墨水= 36
雪碧(o)。宽度= 18
雪碧(o)。高度= 18
-设置相应的成员
雪碧(o)。member = member (nextname)
-添加按钮脚本
x =脚本(“象棋”)。新()
-因为设置ScriptingStepList时不能覆盖现有元素,所以确实需要添加sprite (o)。ScriptingStepList = []。
雪碧(o)。scriptInstanceList =[]
雪碧(o)。scriptInstanceList。添加(x)
-强制初始化
发送精灵o,# beginsprite
退出重复
如果…就会结束
结束重复
结束
每下完一个棋子,当没有玩家赢的时候,调用setUser(num)来显示下一个棋子让玩家移动。
2.后悔按钮是移除棋盘上最新的棋子,并设置一个新的当前玩家。
鼠标触发我
PuppetSound 1,《遗憾》——播放音效。
重复I =最后一个通道到42-从最佳通道到前面扫描。
-查找memberNum不为空的第一个通道,即最近放置的棋子。
如果雪碧(我)。膜
那么0
Pos = sprite (I-1)。在线pos-获取棋子的位置信息。
Onlist[pos[1]][pos[2]]= 0-恢复on list的对应位置,表示该位置为空。
-清空最新棋子的剧本和演员。
雪碧(一)。scriptInstanceList =[]
雪碧(一)。memberNum = 0
-停止最新棋子所在通道的控制。
puppetsprite i,0
退出重复
如果…就会结束
结束重复
setUser(-Pos[ 3 ])
-如果舞台上只剩下一颗棋子,就不应该有后悔键。
如果i= 42,那么sel。可见= 0
结束
至此,整个游戏的关键代码已经介绍完毕。看完这篇文章,参考dir源文件分析应该有所收获。