王者荣耀对战小游戏

# 定义英雄: 亚瑟
class Arthur:
hero_type = 'Tank' def __init__(self, attack_value=164, armor=98, life_value=3622, money=1000):
self.attack_value = attack_value
self.armor = armor
self.life_value = life_value
self.money = money # 普攻
def attack(self, enemy):
damage_value = self.attack_value - enemy.armor
enemy.life_value -= damage_value # 定义英雄: 鲁班七号
class LubanN07:
hero_type = 'ADC' def __init__(self, attack_value=174, armor=88, life_value=3401, money=1000):
self.attack_value = attack_value
self.armor = armor
self.life_value = life_value
self.money = money # 普攻
def attack(self, enemy):
damage_value = self.attack_value - enemy.armor
enemy.life_value -= damage_value # 定义装备: 暗影战斧
class ShadowBattleAxe:
def __init__(self, price=500, attack_value=85, armor=50, life_value=400):
self.price = price
self.attack_value = attack_value
self.armor = armor
self.life_value = life_value def update(self, obj):
obj.money -= self.price # 减钱
obj.attack_value += self.attack_value # 加攻击
obj.armor += self.armor # 加防御
obj.life_value += self.life_value # 加生命值 # 装备的主动技能
def fire(self, obj):
damage_value = 1000 - obj.armor # 火焰攻击为1000
obj.life_value -= damage_value DBJ = Arthur()
XLB = LubanN07()
AXE = ShadowBattleAxe() print('DBJ:', DBJ.hero_type, DBJ.attack_value, DBJ.armor, DBJ.life_value)
print('XLB:', XLB.hero_type, XLB.attack_value, XLB.armor, XLB.life_value) while True: # 装备可多次购买
if XLB.money >= AXE.price:
# 装备提升属性
AXE.update(XLB)
XLB.AXE = AXE # 普攻
XLB.attack(DBJ)
# 装备技能伤害
XLB.AXE.fire(DBJ)
print(f'XLB attacked DBJ! life value of DBJ: {DBJ.life_value}')
if DBJ.life_value <= 0:
print('XLB WIN!')
break # 普攻
DBJ.attack(XLB)
print(f'DBJ attacked XLB! life value of XLB: {XLB.life_value}')
if XLB.life_value <= 0:
print('DBJ WIN!')
break

DBJ: Tank 164 98 3622

XLB: ADC 174 88 3401

XLB attacked DBJ! DBJ life value: 2559!

DBJ attacked XLB! XLB life value: 3775!

XLB attacked DBJ! DBJ life value: 1411!

DBJ attacked XLB! XLB life value: 4199!

XLB attacked DBJ! DBJ life value: 263!

DBJ attacked XLB! XLB life value: 4223!

XLB attacked DBJ! DBJ life value: -885!

XLB WIN

最新文章

  1. mysql 控制台 快捷方式
  2. linux内存和虚拟内存的使用
  3. win8访问win7中的共享文件夹 映射网络驱动器
  4. linux中软链接打包、计算以及同步
  5. java 12-3 StringBuffer的添加和删除功能
  6. 不用插件直接同步wordpress文章日志到新浪微博
  7. 【LEETCODE OJ】Candy
  8. "用wow64exts调试64位任务管理器抓取的32位程序的dump"
  9. applet部署,无需修改客户端设置。
  10. 搜索广告与广告网络Demand技术-流式计算平台
  11. Android Studio 2.2 新功能详解
  12. java基础 ---- 一维数组
  13. python爬虫之天气预报网站--查看最近(15天)的天气信息(正则表达式)
  14. 综述 - 染色质可及性与调控表观基因组 | Chromatin accessibility and the regulatory epigenome
  15. MySQL数据库之part1
  16. 9.翻译:EF基础系列---使用EF开发的方式有哪些?
  17. GSAP JS基础教程--TweenLite操作元素的相关属性
  18. ETL工具kettle基本使用
  19. 嵌入式C语言自我修养 04:Linux 内核第一宏:container_of
  20. plan-6.17周末

热门文章

  1. PHP Laravel5实现的RBAC权限管理操作示例
  2. 全网阅读过20k的Java集合框架常见面试题总结!
  3. netty源码解析(4.0)-29 Future模式的实现
  4. 后台开发小白必学服务器框架——UDPServer
  5. jquery 向页面追加HTML
  6. 力扣(LeetCode)反转链表 个人题解
  7. 领扣(LeetCode)N叉树的层序遍历 个人题解
  8. 【搞定 Java 并发面试】面试最常问的 Java 并发基础常见面试题总结!
  9. js数组之sort()函数
  10. 【控制系统数字仿真与CAD】实验三:离散相似法数字仿真