python初学者,刚学到面向对象...

#双人对决
'''
name=玩家的名字;
hp基本属性固定100;
stochastic()玩家技能攻击,随机伤害5-29,随机到30再次给予10伤害
cut()普通攻击,固定伤害10
blood()增加血量,随机8-19,随机到20直接回复30血量
def boss()函数决定电脑攻击模式,3/5概率出普通攻击,1/5概率回血和咸鱼突刺
'''
import time #导入时间的包
import random   #导入随机模块
class Hero:def __init__(self,name):    #初始函数self.name=name  #初始角色名self.hp=100     #初始血量def __str__(self):  #直接打印对象,返回str类型,否则默认指向内存地址return '【%s】血量值:%s'%(self.name,self.hp)def stochastic(self,enemy):    #设置技能攻击hurt=random.randint(5,30) # 设置技能随机伤害enemy.hp-=hurt    #敌人随机减少血量if hurt<=20:print('{}对{}使用技能造成了伤害 -{}!'.format(self.name,enemy.name,hurt))elif hurt>20 and hurt<30:print('{}对{}使用技能造成了暴击 -{}!!'.format(self.name,enemy.name,hurt))elif hurt==30:print('{}对{}使用出了会心一击!!! -{}'.format(self.name,enemy.name,hurt))enemy.hp-=10print('会心一击造成二次伤害! -10')def cut(self,enemy):   #设置普通攻击enemy.hp -= 10  #敌人固定减掉10滴血print('{}捅了{}一刀,-10。'.format(self.name, enemy.name))def blood(self):    #设置回血技能hp_rs=random.randint(8, 20)  #设置回血随机数if hp_rs<20:self.hp+=hp_rs  #随机数回血print('{}使用了回血技能,增加{}血!'.format(self.name,hp_rs))else:self.hp+=30print('{}触发了天籁之音,增加30血!'.format(self.name))
def boss(): #设置BOSS模式函数cpu_rs=random.randint(1, 5)if cpu_rs==1 or cpu_rs==2 or cpu_rs==3:xyw.cut(player)elif cpu_rs==4:xyw.blood()else:print('咸鱼王使用了奥义,对你造成2连击!!\n咸鱼王:吃我咸鱼突刺!!\n{} -12\n{} -13'.format(player.name,player.name))player.hp-=25
#创建2个实例化对象
player=Hero('玩家')
xyw=Hero('咸鱼王')
print('欢迎玩家挑战咸鱼王,双方初始血量100,准备开始吧!')
while True:if player.hp <= 0 and xyw.hp <= 0:  #双方血量同时低于0退出游戏time.sleep(1)  # 休眠暂停一秒钟print('-' * 30)  # 分隔符print('你们同归于尽了...')breakelif xyw.hp <= 0:     #咸鱼王血量低于0退出游戏time.sleep(1)  # 休眠暂停一秒钟print('-' * 30)  # 分隔符print('咸鱼王死了...')print(player)   #打印玩家血量time.sleep(1)  # 休眠暂停一秒钟print('恭喜玩家获得胜利!')breakelif player.hp <= 0:  #玩家血量低于0退出游戏time.sleep(1)  # 休眠暂停一秒钟print('-' * 30)  # 分隔符print('你死了...')print(xyw)  # 打印咸鱼王血量time.sleep(1)  # 休眠暂停一秒钟print('咸鱼王对你发出了嘲讽...')breakprint('-' * 30) #分隔符print(player)   #打印玩家血量print(xyw)  #打印咸鱼王血量print('-' * 30) #分隔符userIn = int(input('(1)普通攻击(2)技能攻击(3)加血技能,请输入数字:'))if userIn == 1:player.cut(xyw) #玩家砍了咸鱼王一刀print('咸鱼王准备中...')time.sleep(1)   #休眠暂停一秒钟boss()  #调用咸鱼王模式函数elif userIn == 2:player.stochastic(xyw) #玩家使用技能攻击咸鱼王print('咸鱼王准备中...')time.sleep(1)   #休眠暂停一秒钟boss()  #调用咸鱼王模式函数elif userIn == 3:player.blood()     #玩家使用回血技能print('咸鱼王准备中...')time.sleep(1)   #休眠暂停一秒钟boss()  # 调用咸鱼王模式函数else:print('输入有误,请重新输入。')
time.sleep(1)   #休眠暂停一秒钟
print('GAME OVER')

python双人对决小游戏相关推荐

  1. python两人一碰_python运用pygame库实现双人弹球小游戏

    使用python pygame库实现一个双人弹球小游戏,两人分别控制一个左右移动的挡板用来拦截小球,小球会在两板间不停弹跳,拦截失败的一方输掉游戏,规则类似于简化版的乒乓球. 因为是第一次用pygam ...

  2. PYTHON pygame库实战——实现双人弹球小游戏

    PYTHON pygame实战--运用pygame库实现双人弹球小游戏 使用python pygame库实现一个双人弹球小游戏,两人分别控制一个左右移动的挡板用来拦截小球,小球会在两板间不停弹跳,拦截 ...

  3. Python快速编程入门#学习笔记02# |第十章 :Python计算生态与常用库(附.小猴子接香蕉、双人乒乓球小游戏源码)

    全文目录 学习目标 1. Python计算生态概述 1.1 Python计算生态概述 2. Python生态库的构建与发布 2.1 模块的构建与使用 * 2.1.1第三方库/模块导入的格式 2.2 包 ...

  4. python弹球游戏双球代码键盘操作_python运用pygame库实现双人弹球小游戏

    使用python pygame库实现一个双人弹球小游戏,两人分别控制一个左右移动的挡板用来拦截小球,小球会在两板间不停弹跳,拦截失败的一方输掉游戏,规则类似于简化版的乒乓球. 因为是第一次用pygam ...

  5. 用python编写乒乓球小游戏--Turtle功能的应用

    用python编写乒乓球小游戏–Turtle功能的应用 python有很多功能强大的代码库,Turtle是一款用于游戏开发的代码库.通过编写乒乓球小游戏可以了解这个库的基本的代码的使用 先创建游戏的背 ...

  6. python手机版做小游戏代码大全-python简单小游戏代码 怎么用Python制作简单小游戏...

    1.Python猜拳小游戏代码: 2.import random #导入随机模块 3. 4.num = 1 5.yin_num = 0 6.shu_num = 0 7.while num <= ...

  7. python写游戏脚本-使用Python写一个小游戏

    引言 最近python语言大火,除了在科学计算领域python有用武之地之外,在游戏.后台等方面,python也大放异彩,本篇博文将按照正规的项目开发流程,手把手教大家写个python小游戏,来感受下 ...

  8. python编程小游戏-使用Python写一个小游戏

    引言 最近python语言大火,除了在科学计算领域python有用武之地之外,在游戏.后台等方面,python也大放异彩,本篇博文将按照正规的项目开发流程,手把手教大家写个python小游戏,来感受下 ...

  9. python小游戏代码大全-python简单小游戏代码 怎么用Python制作简单小游戏

    1.Python猜拳小游戏代码: 2.import random #导入随机模块 3. 4.num = 1 5.yin_num = 0 6.shu_num = 0 7.while num <= ...

最新文章

  1. sql获取oracle数据库数据,通过sql语句获取数据库的基本信息
  2. Flink on Zeppelin (4) - 机器学习篇
  3. creo配置文件config选项详解_5年资深架构师重点聚焦:SpringBoot的配置详解+内嵌Servlet容器
  4. eMMC基础技术2:eMMC概述
  5. 产品类别二级分类_医疗器械分类目录未来可能实施动态调整
  6. linux 安装virtualbox5.2
  7. 周其仁:到以色列游学,让我深受刺激!
  8. 库存现金、现金管理制度、现金的账务处理、银行存款、银行存款的账务处理、银行存款的核对
  9. C语言实现死循环的方式
  10. ios安装并信任证书
  11. 智能算法和人工智能算法,人工智能算法概念股票
  12. 营业执照识别api接口调用OCR识别
  13. 详细讲解从用户空间申请内存到内核如何为其分配内存的过程
  14. java计算点在圆内外_Java—PTA 点是否在圆内?
  15. 计算机屏幕出现条纹w7,win7电脑屏幕出现条纹四种原因和解决方法
  16. 好网站搜集整理(吐血推荐)
  17. 工場 [こうば] 用語
  18. Number()函数
  19. 有图有真相,分享一款网页版HTML5飞机射击游戏
  20. 学校内部校招,定制班培训

热门文章

  1. flash 交互操作:裁剪位图
  2. 原创 | GPT-4 震撼登场,惊艳四座,然而...
  3. 有趣的动态壁纸如何制作
  4. 在服务器上安装tensorflow-gpu版本及其使用
  5. python里char什么意思_编程中“char”是什么意思?
  6. java公众号互推联盟_写公众号15个月以来,这一路上的学习与收获
  7. 不是技术也能看懂云计算,大数据,人工智能
  8. Weakly Supervised Semantic Segmentation list
  9. Redis知识总结(四万字)
  10. android.graphics.bitmap jar,Android入门之画图详解