C#入门到退休系列1-一个叫掼蛋的扑克游戏的设计与实现
1些废话
这个系列的创建初衷,是为了分享一些计算机相关(兴趣)的经验(笑),就当是一个个人知识(也许也不太正确)的分享。
最近对一种扑克游戏---掼蛋,有些许热情,奈何打不过真正高手们,就像手动敲一个掼蛋的扑克游戏。
作为一个资深(目前也只有中级工程师职称)解决方案设计人员与程序员,我深知干什么事儿(狗头),都不外乎两点:
1.分析与设计
2.编码与调试

2分析
分析的过程是一个动态的过程,往往是一个循环(迭代)的过程,少许神人可以一针见血,一步到位,大多数凡人,都是一步一步来。所以分析这个段落,我计划按时间顺序记录一下。
2023年6月10日分析
掼蛋作为一个扑克游戏,我们想搞一个程序(游戏)出来,首先我们要明白掼蛋这个游戏是怎么玩的,有什么游戏规则。
那么我们先把掼蛋作为一个对象(分析的对象,此处省略对对象的解释,如有好奇者,可自行研究,有些事,你明白就明白了,你不明白我教你你也不明白,所以我建议各位不明白的时候,先记住,以实用的视角,先为我用为主,逐步深入理解)
(不明白图片为什么会插入失败-狗头)
玩家组队规则:
为了方便后续描述,我们认为4人玩家分为两队,分别是红队与黑队。每队有两人。
回合游戏规则:
定义玩家出完牌,则视为玩家回合游戏结束,根据游戏结束的次序分为1,2,3,4(总共4位玩家),其中1所在队赢得回合胜利,但1,2,3,4玩家顺序影响回合分数(即下回合游戏进展)
同一队玩家均结束游戏,则该回合游戏结束,进入回合结算阶段。
在回合阶结算段阶计算规则如下:
1:头游
2:二游
3:三游
4:四游(末游)
1红队 2红队 3黑队 4黑队 红队得3分, 黑队需要进贡2张牌
1红队 2黑队 3红队 4黑队 红队得2分, 黑队需要进贡1张牌
1红队 2黑队 3黑队 4红队 红队得1分。 红4需要给红1进贡牌
回合得分会影响下一回合“会”的选择与“进贡”。
进贡的规则:
首先进贡规则是强制的,进贡方必须给手牌中最大的牌进贡,如果最大的牌是“混子”(万能牌),可以不给“混子”。
进贡方进贡后,头游先选。
进贡后要回牌,回牌必须是10(含)以下的牌。回牌必须回给自己选择的进贡方。
总体游戏规则:
游戏开始第一回合由系统随机选定一张牌,单数红队,双数黑队开始(类似像围棋的猜先)。回合从2开始,根据胜负交替进行,直至某一队在A上胜利,则总体游戏结束,胜方为该队。
出牌规则: