当前位置:首页 > 网站源码 > 正文内容

易语言斗地主源码(斗地主小游戏源码)

网站源码2年前 (2023-03-24)437

本篇文章给大家谈谈易语言斗地主源码,以及斗地主小游戏源码对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。

本文目录一览:

易语言怎样做斗地主游戏?

似乎如果真的做出来 别的棋牌网站可以不用活了

反正做一个棋牌游戏需要巨大的数据 如果是你一个人做脑袋可能承受不了

易语言局域网斗地主源码怎么用!

用易语言的 客户和 服务器 发送文本信息 比如说发送“红桃2:方片3” 然后接收端检测发过来的一段文本 然后用分割文本 按照":"这个符号分割然后判断 很麻烦的。。

用易语言如何制作一个欢乐斗地主抢位置的小程序?

欢乐斗地主是用C++写的游戏.一般座位基值是顺时针数,最上一个是0,右边是1,左边是2,再用ve和ce搜索出该基值就ok了.

vb编写斗地主

我试着做过类似的程序,判断出牌是否符合规则的部分我已经做出来了。方法如下,仅供你参考。

一、自已做一个“牌”控件,它有一个属性 “值”。例如:牌A的值为1,J为11,Q为12,K为13,小王14,大王15 ……

二、做多个字符型数组。数组的每个元素均为合法的出牌可能,即,不在数组中的出牌是不合法的。如单牌数组,它有15个元素,分别是每个单牌的值。

三、在玩家选牌(即单击某张牌)的事件里,扫描一下所有被选中的牌,得到选中牌的值的顺序。

四、将得到的值顺序的这个字符串与二步中所创建数组的所有元素比较,若有相同则说明所选的牌符合规则。

例子:

For i = 1 To 13

DuiZi(i) = Trim(Hex(i)) Trim(Hex(i)) '对子牌的所有可能,两个王属于炸弹牌,不属于对子。

Next i

至于这里为什么要把数字转化成十六进制,那是因为当我选择了比如Q这张牌时,它的值为12,和选择了A、2这两张牌时产生的选牌字符串是一样的,会产生混淆,转化成十六进制后,Q的值是十六进制数“C”,而A、2这两张牌的值的字符形式还是“12”。

判断函数:

Public Function IsRight(ByVal SelectedCard As String) As Boolean

IsRight = False

For i = 1 To 13

If SelectedCard =DuiZi(i) Then

IsRight = True

Card_Style = CS_DUIZI

Exit Function

End If

Next i

End Function

当然,这只是判断函数的一部分,你可以把所有判断都写到一个函数里,这样,当你的函数返回真的时候,你不但知道你所选的牌是符合要求的,还可以知道它是什么类型的牌。

如何用易语言做记牌器..(QQ欢乐斗地主)

你如果是高手,自己一定会做,如果是菜鸟去网上下载一个吧,如果你想学习以语言,下载易语言零起点,自己学习,自己探究,自己做一个!(本人推荐你学 C/C++ ,易语言功能差)

简易c++斗地主源码,简单的斗地主不需要ui,只要能发牌,随机决定地主,把牌按大小顺序排列

#include time.h

#include iostream

#include string

#include vector

enum em_CardClass_t

{

_CC_hearts = 0, // 红桃

_CC_Spade, // 黑桃

_CC_Clubs, // 梅花

_CC_Diamonds, // 方块

_CC_King // 大小王

};

struct st_Card_t

{

em_CardClass_t _emCardClass;

UINT _uCardIndex; // _emCardClass为_CC_King时,有效取值[1,2]

// _emCardClass非_CC_King时,有效取值[1,13]

};

using namespace std;

void InitCard(vectorst_Card_t vtCard)

{

st_Card_t card;

for( UINT i=0; i_CC_King; i++ )

{

card._emCardClass = (em_CardClass_t)i;

for( UINT j=1; j14; j++ )

{

card._uCardIndex = j;

vtCard.push_back(card);

}

}

card._emCardClass = _CC_King;

card._uCardIndex = 1;

vtCard.push_back(card);

card._uCardIndex = 2;

vtCard.push_back(card);

}

// 分牌

void DealCard(vectorst_Card_t vtCard, vectorst_Card_t vtPlayer1,

vectorst_Card_t vtPlayer2, vectorst_Card_t vtPlayer3)

{

srand( (unsigned)time( NULL ) );

for( int i = 0; i 51; i++ )

{

int iCard = rand() % vtCard.size();

switch( i % 3 )

{

case 0:

vtPlayer1.push_back(vtCard[iCard]);

break;

case 1:

vtPlayer2.push_back(vtCard[iCard]);

break;

default:

vtPlayer3.push_back(vtCard[iCard]);

break;

}

if( iCard != vtCard.size()-1 )

{

vtCard[iCard] = vtCard[vtCard.size()-1];

}

vtCard.pop_back();

}

}

// 叫牌

int Bid(vectorst_Card_t vtCard, vectorst_Card_t vtPlayer1,

vectorst_Card_t vtPlayer2, vectorst_Card_t vtPlayer3)

{

srand( (unsigned)time( NULL ) );

int iBider = rand() % 3; // 叫牌者,也就是地主

vectorst_Card_t* pPlayer = NULL;

switch( iBider )

{

case 0:

pPlayer = vtPlayer1;

break;

case 1:

pPlayer = vtPlayer2;

break;

default:

pPlayer = vtPlayer3;

break;

}

for( UINT i = 0; i vtCard.size(); i++ )

{

pPlayer-push_back(vtCard[i]);

}

return iBider;

}

// 整牌(按红桃、黑桃、梅花、方块、小大王的花色顺序整理,同一花色再按从小到大的顺序整理)

void SortCard(vectorst_Card_t vtPlayer)

{

st_Card_t tmp;

for( UINT i=0; ivtPlayer.size()-1; i++ )

{

for( UINT j=i+1; jvtPlayer.size(); j++ )

{

if( vtPlayer[i]._emCardClass vtPlayer[j]._emCardClass )

{

continue;

}

if( vtPlayer[i]._emCardClass == vtPlayer[j]._emCardClass

vtPlayer[i]._uCardIndex vtPlayer[j]._uCardIndex )

{

continue;

}

tmp = vtPlayer[i];

vtPlayer[i] = vtPlayer[j];

vtPlayer[j] = tmp;

}

}

}

void PrintPlayerCard(const string sPlayerName,

const vectorst_Card_t vtPlayer)

{

cout sPlayerName " cards:" endl;

for( UINT i=0; i vtPlayer.size(); i++ )

{

switch( vtPlayer[i]._emCardClass )

{

case _CC_hearts:

cout "红桃";

break;

case _CC_Spade:

cout "黑桃";

break;

case _CC_Clubs:

cout "梅花";

break;

case _CC_Diamonds:

cout "方块";

break;

default:

cout "King";

break;

}

cout vtPlayer[i]._uCardIndex " ";

}

cout endl endl;

}

void main()

{

vectorst_Card_t vtCard;

vectorst_Card_t vtPlayer1;

vectorst_Card_t vtPlayer2;

vectorst_Card_t vtPlayer3;

InitCard(vtCard);

DealCard(vtCard, vtPlayer1, vtPlayer2, vtPlayer3);

int iBider = Bid(vtCard, vtPlayer1, vtPlayer2, vtPlayer3);

SortCard(vtPlayer1);

SortCard(vtPlayer2);

SortCard(vtPlayer3);

PrintPlayerCard("Player1", vtPlayer1);

PrintPlayerCard("Player2", vtPlayer2);

PrintPlayerCard("Player3", vtPlayer3);

cout "地主是Player" iBider+1 endl endl;

}

易语言斗地主源码的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于斗地主小游戏源码、易语言斗地主源码的信息别忘了在本站进行查找喔。

扫描二维码推送至手机访问。

版权声明:本文由我的模板布,如需转载请注明出处。


本文链接:http://sdjcht.com/post/7374.html

分享给朋友:

“易语言斗地主源码(斗地主小游戏源码)” 的相关文章

PHP教程(php电子书)

PHP教程(php电子书)

今天给各位分享PHP教程的知识,其中也会对php电子书进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、PHP入门教程之日期与时间操作技巧总结(格式化,验证,获...

番茄少年app下载文件(番茄少年app下载文件怎么下载)

番茄少年app下载文件(番茄少年app下载文件怎么下载)

本篇文章给大家谈谈番茄少年app下载文件,以及番茄少年app下载文件怎么下载对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、番茄影视下载的视频在哪个文件夹 2、番茄小说...

直播1万音浪是多少钱(主播1千万音浪等于多少钱)

直播1万音浪是多少钱(主播1千万音浪等于多少钱)

今天给各位分享直播1万音浪是多少钱的知识,其中也会对主播1千万音浪等于多少钱进行解释,如果能碰巧解决你现在面临的问题,别忘了关注本站,现在开始吧!本文目录一览: 1、抖音1万音浪可以提现多少人民币...

php后端框架有哪些(php后端框架有哪些类型)

php后端框架有哪些(php后端框架有哪些类型)

本篇文章给大家谈谈php后端框架有哪些,以及php后端框架有哪些类型对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、基于ThinkPHP5和Bootstrap的极速后台开发...

一对一软件开发培训,计算机编程培训,电脑编程培训(计算机编程一对一教学)

一对一软件开发培训,计算机编程培训,电脑编程培训(计算机编程一对一教学)

本篇文章给大家谈谈一对一软件开发培训,计算机编程培训,电脑编程培训,以及计算机编程一对一教学对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、编程培训哪里好一点? 2、计...

代码软件下载手机版(代码编程软件手机软件)

代码软件下载手机版(代码编程软件手机软件)

本篇文章给大家谈谈代码软件下载手机版,以及代码编程软件手机软件对应的知识点,希望对各位有所帮助,不要忘了收藏本站喔。 本文目录一览: 1、android手机上看代码有什么好软件 2、手机编程软件有...