纸牌游戏红心大战设计 ( C语言 )

红心大战是Windows的经典游戏,中国式的红心是拱猪游戏,加入了方块J羊和梅花10  变压器(即俗称加倍)。加大了游戏难度和趣味性。
试制此游戏是准备编制网络版拱猪或红心大战的基础框架,若设计拱猪游戏还要加方块J (J49) 和♣梅花10 (c35) 。

此版本是手机界面的测试版,如单机版就要加入另三家的AI智能出牌设置。
另外桥牌游戏的设置也很相似,游戏开始时多一个叫牌环节,以及桥牌的计分方法。此游戏的通用部分能适用桥牌的设置。

注意:程序界面纸牌显示全是明牌,这是为AI智能出牌算法设计和测试。设计阶段查看和检测算法。游戏程序完成时,主玩家是明牌,其他3家均显示牌背。

游戏规则变更:
Windows的红心大战是玩家单独和PC对抗的,我倾向于中国式拱猪方式,按分组对抗,组合的二人的配合,这样更具有游戏的趣味性和博弈的竞争性。

本文提供了纸牌游戏设计的框架和基础部分,即洗牌,发牌,牌张排序排列显示的基本算法,以及游戏开始时间使用时间的显示。我是用简单的C语言编译器MySpringC在安卓手机上编写的。此是游戏的框架,供游戏设计者参考。

下面是纸牌游戏设计的通用部分:
shuffle_cards ( ){    //  洗牌设计                          }
transcards ( ){   //传入牌序号num转为牌点和牌花色,画出牌张     }
cardback ( ){    //发牌时隐藏牌面显示牌背图案    }
start ( ) {    //发牌,按SHCD黑桃红心梅花方块 4 花色排序             }
showtim ( ){    //计算和显示使用时间                 }
print_t ( ){   //打印标题提示等文字 
                     //**  参数:位置 sx ,  sy,字串 t$,文字尺寸 tsize }

新开局首攻梅花2 :

//以下是源码:
//***********************************************
//*    纸牌游戏《红心大战》  Version   1.1.0    
//*    制作:张纯叔   ( micelu@126.com )       
//***********************************************
Canvas cs ;       //画布
string sBarDes[10];
int nBarId[10];
float src[4];  //ClearDraw (cls) clear screen
string ss1,ss2,ss3,ss4,ss5,ss6 ;     //print ,  test
string s1,s2,s3,s4,s5,s6,s7,s8,s9 ;  //print text
int sx,sy,dx,dy,px,py;      //draw
int i,j,n,t,k;    //t = times
int num;      //select card number
int pn ;        //发牌序号数
 int pnum[54];    //洗牌后的牌序列(2付牌108)
int cardnum,cardstyle;   //牌点牌花色
string cas1,cas2,cas4;   //牌点牌花色图案
string cas3,cas5 ;            //牌背花色
double Rn;    //random number
string t$;     //提示文字
int tsize;      //textsize
int isdo ;    //控制操作:  1 可操作 , 0 不可操作
int context;    //canvasProc
int obj;
int id;
int event;      //canvasProc
int tim[3];   //get Time & show finished time
 int thh,tmm,tss;
 int oldhh,oldmm,oldss;
 int newhh,newmm,newss;
 int mms;               //show using time
 string hhts,mmts,ssts;
 string ts,ts1,ts2;    
 int sdfn,edfn,ndfn,wdfn ;     //得分牌张数
int sdf,edf,ndf,wdf ;     //4家计分
 int sc0,sc1,sc2,sc3 ;   //4家计分累计
int score0,score1;   //SN , EW组合*计分
int total0,total1 ;   //show score 总分
int wnum ;      //切换玩家 
int doit ;
int nn,wn,sn,en ;    //北西南东牌序号
 int spn[13];     //user south 牌序列
int epn[13];     //user east   牌序列
int npn[13];     //user north 牌序列
int wpn[13];    //user west  牌序列
int temp ;       //排序
int dhh ;         //全红心标记

//wnum , doit  出牌顺序 
//fpn=100=新开局首攻c27=club 2
int fpn ;   // c27 每圈首攻家 S=0 E=1 N=2 W=3
int fgstyle ; // 每圈主攻花色 S=0 H=1 C=2 D=3
//**EW东西 2家牌型张数分析,南北自家组不分析
//EW东西家AI计算 出牌,SN南北家手控出牌
      int SS, SH, SC, SD ;
 int ES, EH, EC, ED ;
      int NS, NH, NC, ND ;
int WS, WH, WC, WD ;

//♠Q , J49=

纸牌游戏红心大战拱猪设计(C语言)相关推荐

  1. 红心大战c语言程序设计,红心大战怎么玩?Win7小游戏红心大战玩法操作介绍

    Win7系统中有很多个小游戏,其中红心大战是很多朋友喜欢的牌类小游戏,在闲暇时来一局还是比较惬意的,当然很多首次玩红心大战的朋友是不知道红心大战怎么玩的,下面小编就不吝赐教和大家分享下玩法. 首先我们 ...

  2. 适合w ndows系统的游戏,【游戏经验】Wndows系统游戏“红心大战”实战技巧图解版.doc...

    [游戏经验]Wndows系统游戏"红心大战"实战技巧图解版 [游戏经验]Windows系统游戏"红心大战"实战技巧图解版 Windows系统自带的"红 ...

  3. java 扑克游戏_Java扑克游戏——红心大战

    游戏介绍: 用一幅除去大小王的扑克玩的扑克游戏,开局时先洗牌,然后发给4位玩家.每个回合玩家轮流出牌,牌面大的玩家将会获得积分,并且下一个回合先出牌.积分牌包括红桃和黑桃Q,    红桃1分,黑桃Q1 ...

  4. 纸牌游戏c语言 翻牌游戏,纸牌游戏.doc

    纸牌游戏 纸牌游戏 摘要 纸牌游戏是大家熟知的益智游戏.早期纸牌大部分为数码牌,中国的玩法通常是高点数胜低点数,或以特殊组合牌型取胜,此二原则仍为两大牌戏派别中论计胜负的标准.今天,桥牌已成为高雅的社 ...

  5. 装逼绝学!利用c++制作纸牌游戏,完爆赌神的扑克绝技!

    笔者在大学二年级期间,做过的一次C++程序设计:扑克牌的洗牌发牌游戏.具体内容是:除去大王和小王,将52张扑克牌洗牌,并发出5张牌.然后判断这5张牌中有几张相同大小的牌,是否是一条链,有几个同花等.那 ...

  6. 啊哈算法之纸牌游戏小猫钓鱼

    简述 本算法摘选自啊哈磊所著的<啊哈!算法>第二章第三节的题目--纸牌游戏小猫钓鱼.文中代码使用C语言编写,但是仔细看了一遍发现原书中有个细节是错误的,也就是说按照算法题目意思,原书中作者 ...

  7. 【Pygame实战】曾经风靡全国的游戏,终于复活了,你小时候玩过嘛?(纸牌红心大战游戏)

    导语 还记得那些年,我们玩过的Windows小游戏吗? 说起Windows自带的游戏,相信许多80.90后的朋友都不陌生. 在很早的那个游戏贫瘠的年代,<纸牌>.<扫雷>等游戏 ...

  8. 计算机自带游戏纸牌怎么玩,电脑上自带的游戏是怎么玩的,【红心大战】,【空当接龙】,【纸牌】都是怎么玩的啊...

    满意答案 coffee55 2013.03.13 采纳率:43%    等级:12 已帮助:11074人 "红心大战"的玩法 选出三张牌传给其他对手(第四局不传牌).如要选牌,单击 ...

  9. 纸牌游戏21点设计制作(C语言)

    纸牌游戏21点设计制作 (C语言) 我是编程爱好者.早期使用windows时就被扫雷游戏,钻石棋游戏,红心大战游戏迷住.相信大家也都玩过吧.在学习VB6编程时就编制过钻石棋和红心大战那样的纸牌游戏.都 ...

最新文章

  1. 彼之蜜糖,吾之砒霜——聊聊软件开发中的最佳实践
  2. go python php 压力测试_pyLot 基于python的压力测试工具
  3. 安卓性能测试之 adb shell 常用命令
  4. mysql连接池_基于Swoole的通用连接池 - 数据库连接池(life)
  5. How research looks?
  6. PureXXX使用手记
  7. 210106阶段三 文件I/O
  8. 将阿里云上的nodejs应用配置成SAP云平台上destination的目的地之后
  9. 建立代理,而不是框架
  10. Hibernate4 注解方法说明
  11. 串口之GetCommState、SetCommState函数详解
  12. 基于城市交通监控大数据的行程时间估计
  13. SpringMVC+DWR + Hibernate + 菜单树
  14. 2018年工业机器人销量排位_报告显示中国工业机器人销量排名世界前三
  15. 2019.08.27BOM的六个子对象(2)
  16. Linux管理员常用网络资源(收集帖)
  17. java写入文件编码格式为ansi_java 获取文本文件编码格式
  18. MRP里如何预测lead time :Approaches for the Prediction of Lead Times in an Engineer to Order Environment
  19. 软文营销成功案例-华为用猫设置手机解锁密码
  20. 手机流量不清零这个便宜不好占

热门文章

  1. 如何设计一个锂电池充电电路(TP4056)
  2. COCO数据集标注格式
  3. 腾讯的死对头COCO360出来了
  4. job是什么 oracle12c_oracle12c版本容器模式下job管理的问题
  5. ACM巨全模板(上)
  6. 微信小程序优购商城项目
  7. Git最后一个支持WinXPsp3的版本——2.10
  8. 如何实现微信公众号预约服务器,微信公众号的微信预约是怎么实现的
  9. Mac下使用Xquartz连接CentOS的Xdm服务器
  10. js encodeURI和encodeURIComponent