卡牌2D游戏展示

  (游戏代码放到  卡牌04_游戏界面  文章最后面~)

  游戏项目已托管到github上(里面有个32bit可执行文件)  传送门

  

规则

  开始游戏每张卡牌初始翻开展示 展示几秒后卡牌扣下。

    点击第一个卡牌,翻开、记录。 点击第二个卡牌, 如果不匹配,等待1秒后两个都重置为扣下 如果匹配,则变暗,禁止再次点击 所有卡牌成功配对

  右上角显示时钟倒计时 时间结束,游戏失败

  不同主题关卡不同,远不止15关~

启动屏
主菜单界面选择主题,不同主题对应不同图片素材。点击后进入选关界面
选关界面
鼠标进入某个具体关卡按钮上,底下对应显示这个关卡的描述信息
当关卡很多时,通过滑动屏幕,来切换多页显示
游戏界面
随机生成偶数对图片。两两配对
全部配对成功,游戏结束
核心算法:先后翻开两张卡牌,判断两个卡牌id相同即可
时间计时。剩余时间越多在关卡中标识星星越多(-3个)
数据结构设计
每个关卡在指定图片素材中随机、在全体图片素材中随机
记录的保存
记录最高的关卡编号。只有通过当前关卡才解锁下一关卡
每关根据完成比赛时间长短,显示不同的星级。

游戏整体分析

  卡牌01_启动屏界面  传送门

  卡牌02_主菜单界面  传送门

  卡牌03_选关界面   传送门

  卡牌04_游戏界面     传送门

启动屏界面

  5s后start场景跳转到MainMenu场景

(0.5s闪烁一次!)

  点击start场景(按任意键),从start场景跳转到MainMenu场景

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement; public class Scene_Start : MonoBehaviour { float _timer;
GameObject anyKeyObj; // Use this for initialization
void Start () {
_timer = ;
anyKeyObj = GameObject.Find("anykeyTxt");
} // Update is called once per frame
void Update () { _timer += Time.deltaTime; if (_timer % 0.5f > 0.25f)
{
anyKeyObj.SetActive(true);
}
else
{
anyKeyObj.SetActive(false);
} if (_timer>||Input.anyKeyDown)
{
GoToMainMenu();
}
} void GoToMainMenu()
{
SceneManager.LoadScene("MainMenu");
}
}

Scene_Start.cs

实现过程

  创建四个场景,并保存到工程项目中

  创建游戏屏幕分辨率

   Canvas的分辨率及多屏幕适配 

  添加background(Image)、logo(Image)、name(text)、anykeyTxt(txt)

  创建一个空对象,挂载脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement; public class Scene_Start : MonoBehaviour { float _timer;
GameObject anyKeyObj; // Use this for initialization
void Start () {
_timer = ;
anyKeyObj = GameObject.Find("anykeyTxt");
} // Update is called once per frame
void Update () { _timer += Time.deltaTime; if (_timer % 0.5f > 0.25f)
{
anyKeyObj.SetActive(true);
}
else
{
anyKeyObj.SetActive(false);
} if (_timer>||Input.anyKeyDown)
{
//任意键按下,则直接跳转主菜单场景
GoToMainMenu();
}
} void GoToMainMenu()
{
SceneManager.LoadScene("MainMenu");
}
}

Scene_Start.cs

  anykeyTxt文字闪烁效果

 

  文字状态可见

anyKeyObj.SetActive(true);

  

  文字状态不可见

 anyKeyObj.SetActive(false);

  添加文字闪烁

        if (_timer % 0.5f > 0.25f)
{
anyKeyObj.SetActive(true);
}
else
{
anyKeyObj.SetActive(false);
}

  5s钟后或任意键按下,则直接跳转到MainMenu场景

        if (_timer>||Input.anyKeyDown)
{
GoToMainMenu();
} void GoToMainMenu()
{
SceneManager.LoadScene("MainMenu");
}

Unity3D_(游戏)卡牌01_启动屏界面的更多相关文章

  1. Unity3D_(游戏)卡牌03_选关界面

      启动屏界面.主菜单界面.选关界面.游戏界面 卡牌01_启动屏界面 传送门 卡牌02_主菜单界面 传送门 卡牌03_选关界面 传送门 卡牌04_游戏界面    传送门 选关界面效果 (鼠标放在不同关 ...

  2. Unity3D_(游戏)卡牌02_主菜单界面

      启动屏界面.主菜单界面.选关界面.游戏界面 卡牌01_启动屏界面 传送门 卡牌02_主菜单界面 传送门 卡牌03_选关界面 传送门 卡牌04_游戏界面    传送门 主菜单界面 (选择左边图标或选 ...

  3. Unity3D_(游戏)卡牌04_游戏界面

        启动屏界面.主菜单界面.选关界面.游戏界面 卡牌01_启动屏界面 传送门 卡牌02_主菜单界面 传送门 卡牌03_选关界面 传送门 卡牌04_游戏界面    传送门 选关界面效果 (源代码在文 ...

  4. 升级IOS9,提示滑动升级,卡在password锁屏界面,无反应了

    注:升级之前一定要把锁屏password取消掉 若遇上述问题.可通过进入DFU 模式解决 进入DFU具体步骤.(进入成功后,屏幕为全黑) 注:在进入DFU操作时务必与电脑连接好数据线. 1.按住pow ...

  5. cocos2d-x 3.3 之卡牌设计 NO.4 定时器的使用(清理内存)

    我的卡牌游戏卡牌有两个类.各自是OpenCard和CardSprite. 不知道分成两个是不是有些奇怪.我分开的原因是:一个卡牌用来当手牌,一个用来当场上的牌,这样说是不是更加奇怪了.. 玩家类里定义 ...

  6. 使用UIKit制作卡牌游戏(三)ios游戏篇

    译者: Lao Jiang | 原文作者: Matthijs Hollemans写于2012/07/13 转自朋友Tommy 的翻译,自己只翻译了这第三篇教程. 原文地址: http://www.ra ...

  7. 华为联运游戏审核驳回:在未安装或需更新HMS Core的手机上,提示安装,点击取消后,游戏卡屏(集成的6.1.0.301版本游戏SDK)

    问题描述 更新游戏SDK到6.1.0.301版本之后,游戏包被审核驳回:在未安装或需更新华为移动服务版本(HMS Core)的手机上,提示安装华为移动服务(HMS Core),点击取消,游戏卡屏.修改 ...

  8. [Firefly引擎][学习笔记二][已完结]卡牌游戏开发模型的设计

    源地址:http://bbs.9miao.com/thread-44603-1-1.html 在此补充一下Socket的验证机制:socket登陆验证.会采用session会话超时的机制做心跳接口验证 ...

  9. TCG卡牌游戏研究:《炉石战记:魔兽英雄传》所做的改变

    转自:http://www.gameres.com/665306.html TCG演进史 说到卡牌游戏,大家会联想到什么呢? 是历史悠久的扑克牌.风靡全球的<MTG 魔法风云会>与< ...

随机推荐

  1. python基础_面向对象

    面向对象定义 把一组数据结构和处理它们的方法组成对象(object),把相同行为的对象归纳为类(class),通过类的封装(encapsulation)隐藏内部细节,通过继承(inheritance) ...

  2. 如何实现一个简化版的 jQuery

    对于操作 DOM 来说,jQuery 是非常方便的一个库,虽然如今随着 React, Vue 之类框架的流行,jQuery 用得越来越少了,但是其中很多思想还是非常值得我们学习的,这篇文章将介绍如何从 ...

  3. 树莓派USB存储设备自动挂载并通过脚本实现自动拷贝,自动播放视频,脚本自动升级等功能

    需求:首先需要树莓派自动挂载USB设备,然后扫描USB指定目录下文件,将相关文件拷贝至树莓派指定目录,然后通过omxplayer循环播放新拷贝文件视频 1. 树莓派实现USB存储设备自动挂载 树莓派U ...

  4. django-Auth模块(详细介绍)

    转载自https://www.cnblogs.com/liuqingzheng/articles/9628105.html 1 Auth模块是什么 Auth模块是Django自带的用户认证模块: 我们 ...

  5. 北上广Java开发月薪20K往上,该如何做,需要会写什么

    这个问题可能很多人会说这只是大企业或者互联网企业工程师才能拿到.也许是的,小公司或者非互联网企业拿两万的不太可能是码农了,应该已经转管理.还有区域问题,这个不在我的考虑范围内,因为这方面除了北上广深杭 ...

  6. Excel中的常用快捷键

    1)工作表之间快速切换 Ctrl+PageUp切换的是当前所在工作表的前一个工作表, Ctrl+PageDown切换的是当前所在工作表的后一个工作表. 2)Ctrl +Home 强迫回到最前一个单元格 ...

  7. MySQL面试题(二)

    ● 请你说一说mysql的四种隔离状态 参考回答: Mysql主要包含四种隔离状态: 事务隔离级别 脏读 不可重复读 幻读 读未提交(read-uncommitted) 是 是 是 不可重复读(rea ...

  8. Charles中使用Rewrite提高测试效率

    上次给大家演示了Charles中通过Map Local功能来提高测试效率,Charles还有另外一个强大的功能,Rewrite,这次也给大家演示一下. Charles中的Rewrite功能非常强大,可 ...

  9. Maven 技巧知多少

    Maven是一种帮助我们快速构建项目的小工具,它可以解决我们在项目过程中手动导包造成的版本不一致的问题,以及找包困难等问题,同时通过Maven创建的项目都有固定的目录格式,使得约定优于配置,我们通过固 ...

  10. 个人小应用服务器安装搭建,HP 360p Gen9 使用winpe安装centos[一]

    以前用aws的时候使用的ec2, 里面可选的windows server搭配umbraco的cms做了自己的个人网站,主要是当年项目需要,使用aws,我也办了国际币种卡,在组里各种联系亚马逊开服务,后 ...