【小伦出品】Pairs 配对 (VB小游戏-2)
Pairs 配对
很好玩的配对游戏,大家一定对她不陌生,搭配著可爱的动物图案,玩起来心情愉快。
-界面介绍
界面相当的简单,想要难度更高就设定更多的格子吧!
- 玩法介绍
每次翻开两张图,如果图案相同便会消失,若不一样则翻回去重来,时间越快越好。
- 程式介绍
点击,开图,判断,应该都蛮简单的,需要用到两个 TImer 来控制图片关闭的时间,特别是在选好两张图片后,要让点击无效,以防止同时开超过三张图,程式就出错了。
1. 制造随机排列的图片顺序。
我们使用两个 List。
一开始,把 1 ~ 10 的数字放入 List1。【1,2,3,4,5,6,7,8,9,10】
这时, List1 长度 N = 10
利用 Randomize() 随机产生数字 随机数字 S = INT ( Rnd() * N )
例如,第一次 N = 10,其随机数字会介于 0 ~ 9
其数字正好对应 List,因为 List 的位置是以 0 为开始。
接著,利用随机数字 S (假设 S = 7)。
我们把在位置 7 号的数字,从 List1 拿出来。
List1(7) = 8 (记得 List 位置从 0 开始)。
把 8 这个数字,放入 List2。
再把 8 从 List1 删除,List1.RemoveAt(7)。
这时,List1 的 长度 N = 9
以此类推,直到 List1 的长度为零。
而这时,List2 的长度 = 10,且里面的 1 ~ 10 已经形成随机的排列组合。
用于配对游戏:
由于配对游戏,会有相同的图片。
因此,List 的初始排列,可是设成 List1 = 【1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4】
这样,用以上的方法,也能做出随机的排列组合。
我不确定,VB.net 是否有 Shuffle 功能。
不过,把这种基础方法学起来,也是训练程式逻辑的重要步骤。
2. Me.controls 的运用。
将物件的名字与编号拆开叙述,就不用把全部的物件名字打在程式码内。
例如,第一次点击第 3 个图片,第二次点击第 7 个图片。
我们只需要“3”跟“7”这两个数字,便能执行接下来的判定动作。
这大大省去了很多的麻烦。
但也要记得,Me.controls 不是每个都能修改。
3. 防止点击超过两张图。
我的方法,当未点击时,变数 Click = 0。
第一次点击,先判定 Click 变数。
若为 0,则执行步骤 A,比如打开隐藏图片等等。。。
然后,把 Click 变成 1。
第二次点击,也是先判定 Click 变数。
若为 1,则执行步骤 B。
这时,会马上把其他所有 Button 的 Enabled 设为 False。
这样,就不怕有第三次的点击。
再来,会启动 Timer,因为图片不会马上关起来,会让玩家至少看个 1 秒。
记得,结束时,要把 Click 设回 0。
就能够一直循环下去。
直到完成所有配对。
- 结尾
这次的程式不会很难,不过我的方法是把同样的程式码,放在 16 个 Button 上,而 Button 的号码我会设成变数,放在第一排。
这样,只要改第一个数字就好了。
还有,在重新游戏时,记得把 List1 & 2 清空,这样才会有不同的排列组合。
若是在程式中更改照片,记得使用相对路径,才不会造成图片无效。
写完后,记得玩个两三遍,看看有没有程式错误。
- 下载
---档案过大可能会被误判为病毒,此档案保证无毒,请尽管放心---
查看原文 >>