CocosCreator实现UNO纸牌游戏

CocosCreator实现UNO纸牌游戏

摘要

模仿4399小游戏UNO颜色纸牌,通过typescript语言开发,代码注释较多,适合学习。
游戏已打包为App,可以通过 百度网盘 提取码:9i4j 进行下载,源代码以上传cocos商店,希望感兴趣的小伙伴能够支持一下~~

正文

使用版本

CocosCreator2.4.5

游戏演示

玩法说明
发牌
退出游戏

玩法说明

UNO纸牌已经风靡全球数十年,被誉为是世界上最好玩的纸牌游戏,据说由意大利一个理发师发明,简单易学,版本众多,被加入许多新的功能,玩法更加刺激,而在此游戏中最考的是集中和反应,还有相互间的思维较量。 每副uno牌包括:108张牌和一张说明书(108 张纸牌中包括80张数字牌,28张特殊牌)。Uno由红黄蓝绿4种颜色,每种色牌有0~9号牌各两张,各种颜色还各有6张普通功能牌(“draw 2(加两张)”、“skip(跳过下家)”、“reverse(逆转方向)”各两张。 首先,每人发8张牌,胜利条件是谁的牌首先出完;可以出与上家颜色相同或数字相同的牌,或者wild牌。然后,可以出draw 2(+2) 或draw 4(+4)来陷害下家,让下家摸牌,下家可以出相应的牌来转移或累加要摸的牌,直到最后被陷害的玩家没有更大的牌时,就要摸相应的数量的牌,这样总有人要摸很多牌。然后,玩家在打完倒数第二张牌时要喊UNO(剩一张),捉住其他玩家忘了喊剩一张而罚他摸两张也是游戏的乐趣之一 每副游戏牌共有108张卡牌,游戏牌分四种颜色:红色、绿色、蓝色及黄色,每种颜色各有25张牌(合共100张),其中20张为数字牌(0-9有两张),其余6张(24张)为功能牌:“skip”(跳牌)、“draw two”(罚牌2张)及"reverse"(反转出牌方向),每种各2张。另有黑色特别牌2张:“wild”(转色)及"wild draw four"(转色及罚牌2张),每种各2张。

架构说明

游戏采用MVC架构,通过事件派发实现解耦合,通过controller层管理数据层和视图层,数据层关联卡牌数据,通过事件派发的形式进行视图层渲染,实现游戏的逻辑控制。其中prefab的渲染,控件的操作和脚本的绑定不依赖拖拽的方式,而是通过代码实现,尽量减少编辑器与游戏的耦合。
编辑器说明

代码说明
  • View基类,所有视图相关的脚本都基于View类,通过show_ui_at方法加载prefab预制体并挂载对应的脚本,load_all_object方法获取视图的全部子节点,方便通过代码的方式来对node节点进行操作。
import OnEventMode from "./OnEventMode";
const {
    ccclass, property } = cc._decorator;

@ccclass
export default class View extends OnEventMode {
   

    // 展示对应的UI(Prefab)
    protected show_ui_at(parent: cc.Node, ui_name: string, target?
  • 1
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值