Python(面向对象)--阶段案例——反恐精英CS

反恐精英CS案例

游戏说明:

在全世界风靡起来的反恐精英是一种以团队合作为主的第一人称射击游戏,简称CS。根据面向对象的编程思维,模拟实现一个战士开枪射击敌人的场景。

游戏中主要包含两个角色:战士(玩家)和敌人,还有三个道具:枪、弹夹和子弹。其中战士和敌人的默认血量为100,它们一旦被子弹击中,就会因子弹的杀伤力而出现掉血行为,每次中击一次的血量减少10;枪里面默认是没有弹夹的,弹夹里面也没有子弹。战士若想持枪射击敌人,需要给弹夹装上子弹、给枪装弹夹,每次射击一次,子弹的数量减少一枚。

分析类具体如下:
(1)战士和敌人类:Person
属性:姓名(name)、血量(blood)、枪(gun)
方法:安装子弹(install_bullet)、安装弹夹(install_clip)、持枪(take_gun)、开枪(fire)
(2)子弹类:Bullet
属性:杀伤力(damage)
方法:伤害敌人(hurt)
(3)弹夹类:Clip
属性:最大容量(capacity)、当前子弹列表(current_list)
方法:放置子弹(save_bullets)、弹出子弹(launch_bullet)
(4)枪类:Gun
属性:弹夹(clip)
方法:链接弹夹(mounting_clip)、发射子弹(shoot)

具体代码如下:

"""
战士(玩家),敌人,枪,子弹,弹夹
"""


# 定义表示战士、敌人的类
class Person:
    def __init__(self, name):
        # 姓名
        self.name = name
        # 血量
        self.blood = 100
        self.gun = None

    # 给弹夹安装子弹
    def install_bullet(self, clip, bullet):
        # 弹夹放置子弹
        clip.save_bullets(bullet)

    # 给枪安装弹夹
    def install_clip(self, gun, clip):
        # 枪链接弹夹
        gu
  • 15
    点赞
  • 59
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小脆筒style

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值