0 0 7 7 - 小天才剪刀石头布 - 【战】
本帖最后由 不二如是 于 2016-11-25 16:21 编辑这个游戏,可以说是控制模块的集大成者!
各种判断眼花缭乱,但却非常经典哈~
程序一开始,玩家在左侧选择一个动作,剪刀、石头、布
电脑随机产生一个,动作。
判断输赢~
玩家赢,提示“U win”
玩家输,提示“U loss”
平局,提示“Try again”
程序不难,但是这个逻辑判断流程一定要理清~
好了,上程序~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[*]绿旗
当玩家按下绿旗时,只会触发结果角色!
[*]舞台
舞台在这个程序里,是重点哈~
为啥呢,因为他像一个中间节点一点,控制其他模块的运行!
怎么控制呢?
通过各种指示性广播!
看一下,程序有这些角色:
当玩家选择了一个手势时,会发送一个广播'start'
说明下,程序规定:
石头Rock = choice =1
布Paper = choice = 2
剪刀 Scissor = choice = 3
当背景接收到广播后,开始脚本:
-> 广播新游戏(New Game)
(主脚本跳入这个子脚本,就是进入玩家角色)
-> 判断输赢模块
-> 广播展示结果(ShowResult)
-> 广播游戏结束(Game Over)
[*]广播新游戏
当玩家角色接收到'NewGame'消息,执行用户选择脚本:
电脑脚本同玩家一样,只是要产生随机性:
好了,现在广播NewGame全部被接收'消化'了,进入判断。
[*]判断输赢
判断就是用来判断输赢平局的哈~
国际术语,稍微普及下:
win、loss、tie
[*]广播输出结果
此时便进入了,展示结果的时间啦!
在这些角色中,只有一开始那个结果角色,会接收这个广播哈:
[*]广播游戏结束
隐藏这哥三儿哈:
这也就解释了,为啥接收到NewGame广播时,要显示哈~
注意:
所有角色变化都是通过造型变化哈,很简单不做解释了。
不错~{:10_256:}
页:
[1]