C语言扑克牌纸牌游戏设计

纸牌游戏 扑克牌游戏

wx:help-assignment 现成代码

从最广泛的意义上讲,你需要设计和开发一个由以下两个强制性功能组成的原型软件游戏:

1.一种卡片组生成和选择功能,它应该能够随机生成一副卡片,并允许玩家选择下一场比赛中使用的卡片。
2.一种比赛功能,允许玩家使用个性化的一套卡片对抗虚拟玩家。

二级标题

wx:help-assignment

以下详细介绍了这两个功能的规格。请注意,这些是必须在您的工作中实现的强制性功能。
卡片组生成和卡片选择功能:
该功能负责创建一副牌,用户应该能够选择在比赛中使用的子集。
1.你的原型必须能够生成三种类型的牌:增加力量(力量+)、减少当前牌上对手牌的力量(力量-),以及允许从对手尚未玩过的牌集中偷牌的牌(偷牌)。
2.每张卡片按其类型和相应的特征进行描述。Power+必须指示添加的电量;力量-必须表明从对手的棋盘上移除的力量的大小;并且窃取必须指示要被窃取的卡是由玩家选择的还是随机拾取的。
3.比赛前,玩家必须能够从生成的5副牌中选择要使用的牌。类似地,虚拟玩家必须以某种方式拾取5张牌。
为了测试你的原型,你的生成组件必须能够生成一副至少有20张牌的牌组。牌组中每种类型必须至少包含一张牌。

匹配功能:

此功能允许玩家与虚拟玩家进行比赛。
1.纸牌游戏是回合制的。每个玩家都有一个专用的牌板,用来放置所玩的牌。比赛开始时,两块木板都是空的。虚拟播放器首先启动。
2.当两名玩家都没有牌可玩时,游戏结束。力量得分最高的玩家获胜。力量分数是对应玩家棋盘中所有力量+牌的值之和,减去对手所玩所有力量-牌的值的和。
3.在回合中,主动玩家(人为控制或计算机控制)选择以下牌之一进行游戏。
a.电源+板卡。该卡被添加到玩家的棋盘上,玩家的力量分数根据该卡的价值增加。
b.电源卡。该卡被添加到玩家的棋盘上,对手的力量分数相应减少。
c.偷卡。卡片被添加到玩家的棋盘上,玩家从对手的牌集中获得一张卡片。如果对手的牌组为空,则偷牌会转换为力量值为1的力量+牌。
4.一种基本的计算机控制的播放器,可以与人类用户进行游戏。
5.在每个回合中,有关所玩牌的信息和分数的更新必须显示在屏幕上,并存储在文件中。记录的信息必须包括玩家、当前的力量得分值、所玩牌的类型和值以及尚未玩过的牌。
实施要求:
你必须用C++实现你的软件。设计应遵循定义明确的面向对象范式,以便在必要时添加新功能(新类型的卡、新规则等),只需最少的代码修改。这将要求您设计一个利用设计模式、继承和多态性的体系结构。保持高效的代码和良好的内存管理非常重要。
超越强制性功能
上面提供的规范描述了您的作品必须满足的最低功能,才能获得及格分数。要获得更多分数,您必须在本简介中规定的功能之外添加相关功能。例如,更广泛的卡牌类型,虚拟对手将实施的智能策略,以选择卡牌并在比赛中玩,玩家的魔力和魔力等概念,等等。

wx:help-assignment

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值