当前位置: 首页 > 软件库 > 游戏/娱乐 > 单机游戏 >

Cocos2d-X 单机麻将

授权协议 未知
开发语言 C/C++
所属分类 游戏/娱乐、 单机游戏
软件类型 开源软件
地区 国产
投 递 者 连鸿
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

COCOS2D-X 单机麻将

项目介绍

基于最新版 Cocos2d-X 3.17 与 cocostudio V3.10 开发的单机麻将游戏,麻将算法为商业级麻将服务器端算法,整个项目代码精简、注释详细。

  • 如果你刚刚接触Cocos2d-X 这绝对是个不错的入门项目

  • 如果是你C++初学者或者其他语言转游戏开发,这项目没有复杂的语法绝对是一个不错的学习项目

  • 如果你是游戏开发从业者想转行棋牌行业,这项目的棋牌算法绝对能够给予你启发

截图

输入图片说明

输入图片说明

软件架构

  • 游戏引擎基于最新版本 Cocos2d-X v3.17

  • 游戏UI设计使用 Cocostudio3.10

  • 游戏使用C++开发

  • 商业级麻将算法

安装教程

  1. 由于Cocos2d源码比较庞大,GIT上不包括Cocos2d-X 3.17源码,所以第一步需要下载并且安装cocos2d-x-3.17 安装好后使用命令行创建个新项目,将项目里的cocos2d文件夹拷到本项目下,
    输入图片说明

  2. 下载安装好Cocostudio3.10,打开UI.ccs文件即可编辑和发布UI
    UI编辑器

  3. MAC直接用Xcode 或者AppCode 直接打开 proj.ios_mac 即可运行
    输入图片说明

  4. AndroidStudio安装直接打开 proj.android 项目即可运行
    输入图片说明

  5. Visual Studio 安装未验证

源码说明

UI项目说明

  • cocosstudio目录为UI目录

  • UI.ccs是UI项目配置文件

文件 说明
HelloLayer.csd 欢迎界面层
AlertLayer.csd 弹框层
GameLayer.csd 游戏层
SetLayer.csd 设置层
GameOverLayer.csd 游戏结算层
Gang0.csd 横向显示杠的节点
Peng0.csd 横向显示碰的节点
Gang1.csd 竖向显示杠的节点
Peng1.csd 竖向显示碰的节点
BtnPeng.csd 碰按钮节点
BtnGang.csd 杠按钮节点
BtnHu.csd 胡按钮节点
BtnGuo.csd 过按钮节点
EffectZm.csd 自摸特效
EffectPeng.csd 碰特效
EffectHu.csd 胡特效
EffectGang.csd 杠特效
SignAnim.csd 标记当前出牌动画
MainScene.csd 没用

源码说明

文件 说明
AppDelegate.h/AppDelegate.cpp Cocos2d游戏启动类
GameSceneManager.h/GameSceneManager.cpp 单例,封装创建提示层、设置Scene和Layer等
AlertLayer.h/AlertLayer.cpp 弹出层类
HelloWorldScene.h/HelloWorldScene.cpp 游戏Scene类
BaseUILayer.h/BaseUILayer.cpp Cocostudio界面基类,封装了部分按钮事件绑定功能
HelloLayer.h/HelloLayer.cpp 游戏初始欢迎界面类
GameLayer.h/GameLayer.cpp 游戏层界面类,用来控制游戏的显示
SetLayer.h/SetLayer.cpp 游戏设置层
GameConfig.h/GameConfig.cpp 加载与存储游戏设置信息
ViewControl.h/ViewControl.cpp 通过观察者模式,控制界面切换
ViewObject.h/ViewObject.cpp 封装界面切换指令与数据
UIHelper.h/UIHelper.cpp UI工具类,封装节点查找方法
Utility.h 工具类,封装字符串操作方法
IPlayer.h 游戏玩家基类
AIPlayer.h/AIPlayer.cpp 机器人玩家
RealPlayer.h/RealPlayer.cpp 真实玩法
GameEngine.h/GameEngine.cpp 麻将引擎,控制游戏逻辑流转
GameLogic.h/GameLogic.cpp 麻将算法类
GameCmd.h 麻将传递的对象定义
AIEngine.h/AIEngine.cpp 机器人引擎
FvMask.h 标记位操作工具
  • GameEngine.h中定义的IGameEngineEventListener接口,该接口用于玩家处理游戏事件,AIEngine实现了机器人的游戏事件处理接口,GameLayer中实现了真实玩家的游戏事件处理接口。

参与贡献

  1. Fork 本项目

  2. 新建 Feat_xxx 分支

  3. 提交代码

  4. 新建 Pull Request

https://gitee.com/xiyoufang/cocostudio-mahjong

  • 今天开始打算讲解下cocos2dx下如何制作国标麻将 前半部分先讲解麻将的逻辑部分,因为都是代码,可能会比较枯燥无聊. 这部分讲完后,你也可以用其他游戏引擎来制作麻将 后半部分,就讲解余下的cocos2dx部分, 因为要把这部分留到后面讲,主要是还在考虑用3d做还是用2d做. 到最后可以扩展AI部分的机器人 和 服务器模块 cocos2dx 制作单机麻将(一) 麻将逻辑1. 打乱麻将顺序(初始化牌

  • cocos2dx 制作单机麻将(四) 麻将逻辑5.模拟出牌 // // main.cpp // MajiangLogicTest // // Created by TinyUlt on 14-8-16. // Copyright (c) 2014年 TinyUlt. All rights reserved. // #include <iostream> using namespace s

 相关资料
  • quick-cocos2d-x 是一个游戏快速开发框架,基于 cocos2d-x,使用 Lua 来编写移动游戏。 对于初次接触 quick 的开发者,建议直接用 player 模拟器执行 quick 附带的示例程序。然后通过修改、完善这些示例程序来学习 quick-cocos2d-x。这样可以避免一开始就陷入如何配置编译环境的繁琐步骤中。

  • 我需要根据收到的表单游戏中心服务器的位置移动box 2d主体。 收到体位后,我只需使用以下命令更新体位:- 但它以不受许可的方式移动身体(例如,身体在屏幕上显示出一些人)。同时我的精灵形象不动(附身)。

  • 著名的开源社区 Cocos2d 发布 Cocos2d-X for XNA 版本。该游戏引擎针对微软最新移动操作系统 Windows Phone 7 平台,开发者可以采用 C# 语言开发基于 Windows Phone 平台的游戏,而无需学习 XNA 绘图接口。现改名为cocos2d-xna,利用monogame框架跨平台,支持的平台包括WP7,XBox 360, iOS, Android, Pla

  •   3D ToolKit for cocos2dx 是一个简单的cocos2d-x 3D扩展,可以方便地在cocos2dx环境中创建3D图形。 基于cocos2d-x 2.2开发。 已实现功能: 1,向量和矩阵运算。 2,扩展的3D相机。(支持 透视投影 和 正交投影) 3,3D Sprite。(支持空间变换,更换mesh,更换shader) 4,扩展的shader program和uniform

  • 欢迎使用 Cocos2d-x 用户手册,本手册包含引擎的介绍,功能组件的使用方法以及引擎在多个平台的环境搭建。能够帮助您快速上手 Cocos2d-x!

  • 利用 cocos2d-x 实现多平台高仿微信打飞机游戏。平台包括:iOS、Mac OS 和 Anroid。代码基于@JustDifferent__ 发布于 code4app 的代码 “高仿微信打飞机”(http://code4app.com/ios/高仿微信打飞机/521495136803fa1d5f000001)移植而来。 作者说:需要在代码工程中加入cocos2d-x的库才能运行demo。 请