2D开发游戏作业:面向对象设计应用——发牌游戏
3 月,跳不动了?>>> 1.游戏介绍 四名牌手打牌,电脑随机將52张牌(不合大、小王)发给四名牌手,并在屏幕上显示每位牌手的牌。 2.程序设计步骤 设计类 发牌程序设计出三个类: Card类、Hand类和Poke类。 Card类 Card类代表一张牌,其中,FaceNum字段指的是牌面数字1~13,Suit字段指的是花色,”梅”为梅花,”方”为方块,”红”为红桃,”黑”为黑桃。 Hand类 Hand类代表手牌(一个玩家手里拿的牌),可以认为是一位牌手手里的牌,其中,cards列表变量存储牌手手中的牌。可以增加牌、清空手里的牌、把一张牌给别的牌手等操作。 Poke类 Poke类代表一副牌,我们可以将一副牌看作是有52张牌的牌手,所以继承Hand类。由于其中cards列表变量要存储52张牌,而且要进行发牌、洗牌操作,所以增加如下的方法。 主程序 主程序比较简单,因为有四个牌手,所以生成players列表存储初始化的四位牌手。生成一副牌的对象实例poke1,调用populate()方法生成有52张牌的一副牌,调用huffle()方法洗牌打乱顺序,调用deal(players,13)方法分别给每位玩家发13张牌,最后示四位牌手所有的牌。 3.部分代码注释 1.定义扑克牌的牌面: 牌面数字:1—13 梅为梅花,方为方钻,红为红心,黑为黑桃 2.定义翻牌方法 3.定义牌的顺序号 4