unity3D做的翻纸牌消除游戏

核心提示一、功能介绍 1.1场景切换我们的场景分为3个,一个开始场景,主要负责向其他场景的调转以及游戏的退出。另一个是游戏场景,是游戏的主体部分,实现娱乐功能。还一个是帮助场景,玩家可以在此查看游戏玩法。T1开始场景T2游戏场景T3帮助场景1.2游

一、功能介绍

1.1场景切换

我们的场景分为3个,一个开始场景,主要负责向其他场景的调转以及游戏的退出。另一个是游戏场景,是游戏的主体部分,实现娱乐功能。还一个是帮助场景,玩家可以在此查看游戏玩法。

T1开始场景

T2游戏场景

T3帮助场景

1.2游戏场景布置

整个游戏场景中分为三个部分,分别为:16个Button、2个Text、16张image、8张Sprite。

1)按钮的功能主要接收玩家的点击,显示下层纸牌,计数,传递匹配名。按钮将以纸牌背面显示。

2)文本的功能是实时显示倒计时以及玩家得分。

3))的功能是渲染纸牌,它将以纸牌正面显示。

1.3洗牌

每次游戏纸牌排布循序都将不同,增加游戏的不确定性和可玩性。

1.4点击三次匹配

当玩家翻开三张不同的扑克时,游戏将会自动检查前两张是否匹配,匹配则加分并且消除纸牌;不匹配则将前两张纸牌重新置反。

1.5匹配以及消除

游戏判断纸牌是否为相同的纸牌。将纸牌从游戏场景中消除

1.6总分

弹出游戏面板,并且显示玩家的总分。

二、 实现

2.1场景切换

给每个场景添加按钮,在场景跳转的按钮上添加脚本。使用SceneManager.LoadScene(“string”)? 函数可以通过修改string参数实现向不同场景的跳转。

2.2游戏场景布置

1)设置按钮、为预制体并用两个数组分别参访。通过排布预制体的方法可以快速布局游戏场景。同时调节按钮的图层高于,用于最先显示按钮。

T4

T5

2)设置按钮的source image将按钮的显示改为纸牌背面。同时,给按钮添加点击事件:向GameManager脚本传入名字和对应按钮,并且把按钮设为不可见、不可点击。

3)使用InvokeRepeating()函数实现每秒减一的功能,并且修改时间的文本,以更新时间。

4)16张的作用是渲染纸牌,它将以纸牌正面显示。纸牌由8张sprite用作纸牌正面。修改的source image使渲染纸牌。渲染纸牌正面所用到的用一个数组来存放。

T6

2.3洗牌

首先设置两个数组,一个存放0~15的正序数,另一个存放打乱后的数字作为T5数组渲染T6的index.

具体通过使用Random.Range(),函数实现随机取数,然后将取到的数存放到第二个数组中并remove()第一组中相应的内容。

2.4点击三次匹配

首先设置一个showing变量每次点击纸牌时加一,当加到3的时候调用匹配函数。并且重新置1。值得一提的是,在最后一次匹配时判断依据变为匹配数满14并且showing变量为2。其中匹配数为一个整形变量,每成功匹配一对,加二。

2.5匹配和消除

给每个按钮设置对应0~15的标签,用于确定点击的按钮在数组中的位置。通过这个位置访问T6相应位置上的名字。每次点击纸牌都将传出对应的名字,并在游戏主脚本中设置一个集合接收。通过比较集合中前两个元素来检查是否匹配。如果匹配成功就将传值的按钮可见性通过GetComponent<>().enable设置为false。并且把被渲染的也设置为false。然后再把接收名字和按钮的集合清空。

如果匹配不成过,那么重新把就收到的按钮设为可点击,并且把按钮设为可见,把底层设为不可见。

2.7总分

设置一个Panel,并且一开始设为不可见,当倒计时为0时,调节为可见。在Panel上添加得分文本、重来和返回菜单的按钮。

得分文本通过访问游戏的得分数据来显示。给按钮添加场景跳转功能。

操作系统里自带的纸牌是怎样子玩的呢?也许还有大部分人没玩过,不知道怎么玩,下面就来给大家分享玩的方法。

工具/材料

Windows7

01

首先,点击开始按钮,再点击所有程序,找到游戏点击,再点击纸牌。

02

打开后如图界面,点击左上方的背面牌,可以翻出三张牌。

03

继续点击背面牌,就可以再翻出新的三张牌,然后从翻出的最前面一张开始看,如下第二张图上的红6,就到底下那一排牌子中找出比它大1的黑牌,也就是黑7,有的话就可以将红6放到黑7下面,才可以看第二张,没有则需要继续翻牌。如第三张图,红5点一下,再到底下黑6处点一下,就会排下去了。

04

翻三张牌太难了些,可以点击游戏,选项,点选翻一张牌,确定。点击退出并以新设置开始新游戏。

05

再看界面上,黑2点击一下,再到红3点击一下排过去,再红3点一下,到黑4点一下就排过去。效果如下第二张图的排列432,左侧空出一个位,右边的K最大,可以点到空位上,就可以翻K后面的牌。

06

再继续翻上面的牌,翻出来如果是A,最小的则可以点击到右侧的空位上。

07

下面的黑桃2按顺序叠到上面的黑桃A上。就这样想方设法将下面的按着从大到小的排序方式,还要一红一黑进行排列。再把它们一张张从小到大,同色同类放到右上方的四个空位上直到全部排上去就胜利了。

 
友情链接
鄂ICP备19019357号-22