斗地主AI分析
八爪鱼keepmoving8
走别人的路,让别人无路可走…
展开
-
cocos2d-x播放骨骼动画(C++)
cocos2d-x是怎样播放骨骼动画的呢?很多新手不知道怎么播放。我们首先看一下资源文件中的骨骼地画文件:我们主要看一下json文件里的内容:找到动画的名称:huojianfei_you (火箭从右边飞) ,huojianfei_zhiji(火箭从中间飞) ,huojianfei_zhou(火箭从左边飞),这三个代表火箭起飞,后面还有一个是前面都要执行的名字:huojianzha(火箭爆炸)下面看C++播放代码:头文件:#include "cocos2d.h"#i...原创 2020-05-09 01:05:02 · 588 阅读 · 0 评论 -
C++开发斗地主(QT)第五篇之牌型权重
牌型权重给定一组手牌,怎么计算它的权重呢?我们可以把手牌切分成不同的牌型,一次出牌只能出一个牌型(Node),手上有多少个Node就是手数。 我们可以对每种牌型,同一个牌型的每个面值,设置不同的权重。权重可以是正值,也可以是负值。斗地主以跑牌成功为胜利,手上多一张牌,就多一分负担。 我们可以考虑以厌恶度来衡量每张牌型的权重。如果出完手上的牌,那么手数为0,权重设为0;以此为基础,面值...原创 2020-04-27 13:35:57 · 1926 阅读 · 1 评论 -
C++开发斗地主(QT)第四篇之手牌分类
本篇将讲的是发到牌以后对手上的牌进行处理。在讲之前,我把本游戏开发要用到的声音图片下载地址给大家:https://download.csdn.net/download/keepmoving0407/12363899同时我也刚刚创建了一个QQ学习交流群:1005923608我们先看一下LoadCards结构体class LordCards{public: static i...原创 2020-04-26 18:20:13 · 1433 阅读 · 0 评论 -
C++开发斗地主(QT)第三篇之动画发牌与位置计算
本篇讲的是是怎样发牌,计算牌的准确位置,请看下面桌面:发好牌后的样子:自己家的牌位置很好计算:假如牌的大小为122*150,数量为n,每张牌的间隔是40,窗口的宽为width(),高为height()按从左到右的排列,后面盖住前面。则起点位置为:x=(width()-((n-1)*40+122))/2y=height()-150-60.(n-1)*40是除最后一张牌的...原创 2020-04-26 11:03:25 · 2385 阅读 · 0 评论 -
C++开发斗地主(QT)第二篇之牌的绘制与显示
这一节为什么讲的是牌的显示?因为我觉得要学习这些,必须与实际相结合。一.单张牌显示控件 (CardWidget)我的QT版本是5.12.5,编译器是MinGW32,没下载的请选下载QT,下载地址:http://download.qt.io/archive/qt/新建一个项目名称为:Game_DDZ,点右键选AddNew,新建一个类CardWidget ,继承类为:QWidget,...原创 2020-04-25 21:16:36 · 3408 阅读 · 3 评论 -
C++开发斗地主(QT)第一篇之数据结构
斗地主,是一种在中国流行的纸牌游戏。游戏最少由3个玩家进行,用一副54张牌(连鬼牌),其中一方为地主,其余两家为另一方,双方对战,先出完牌的一方获胜。如今已风靡整个中国,并流行于互联网上!从今天开始,我将会一步步详细讲解单机斗地主游戏开发过程。该游戏以C++为主,QT做为界面(包括显示动画声音等)的Window平台,没有用到第三方面库如CoCo2d等,至于为什么要用QT,主要是自己得心应...原创 2020-04-25 19:43:11 · 6559 阅读 · 2 评论