理解面向对象编写的极致简单的小代码
生活随笔
收集整理的这篇文章主要介绍了
理解面向对象编写的极致简单的小代码
小编觉得挺不错的,现在分享给大家,帮大家做个参考.
# cheer_xiong
# (`・ω・´) python# 对战类游戏
import random
import timeclass ShadowDominates: # 影流之主camp = 'Shadow_Isles' # 暗影岛def __init__(self, name, ad=40, hp=450):self.name = name # 名字self.ad = ad # 攻击力self.hp = hp # 血量def Q(self, Hero): # Q技能 影奥义!诸刃hit_rate = random.randint(0, 100)if hit_rate >= 0 and hit_rate <= 80:Hero.hp -= self.adprint(f"{self.name}使用劫Q中了对面的{Hero.name}使用的亚索!")else:print(f'{Hero.name}的亚索通过走位躲开了Q技能')def W(self): # W技能 影奥义!分身print("劫使用w往后撤退了,这无疑是给亚索机会呀")def E(self, Hero): # E技能 影奥义!鬼斩Hero.hp -= self.adprint(f"{self.name}使用劫E中了对面的{Hero.name}使用的亚索!")def R(self, Hero): # R技能 禁奥义!瞬狱影杀阵Hero.hp -= self.ad * 2print(f"{self.name}使用劫的最终奥义-瞬狱影杀阵-。效果十分显著!")class HurricaneSwordsman: # 疾风剑豪camp = 'Lone_Ranger' # 独行侠def __init__(self, name, ad=22, hp=500):self.name = name # 名字self.ad = ad # 攻击力self.hp = hp # 血量def Q(self, Hero): # Q技能 斩钢闪hit_rate = random.randint(0, 100)if hit_rate >= 0 and hit_rate <= 80:Hero.hp -= self.adprint(f"{self.name}使用亚索Q中了对面的{Hero.name}使用的劫!")else:print(f'{Hero.name}的劫通过走位躲开了Q技能')def W(self): # W技能 风墙print("亚索使用了风墙,太强了!")def E(self, Hero): # E技能 踏浪斩Hero.hp -= self.adprint(f"{self.name}使用亚索踩在了对面的{Hero.name}使用的劫的脸上!")def R(self, Hero): # R技能 狂风绝息斩Hero.hp -= self.ad * 2print(f"{self.name}瞬间击飞劫,接上-狂风绝息斩-!")class Equipment:def BF_sword(self, hero): # 暴风大剑hero.ad += 30player1 = ShadowDominates('Faker')
player2 = HurricaneSwordsman('xiong_chao')
ZB = Equipment()
ZB.BF_sword(player2) #疾风剑豪装备了bf大剑
print(f"疾风剑豪装备了bf大剑,攻击力为:{player2.ad}")while True:if player2.hp < 0:print(f"{player2.name}的血量{player2.hp}")print(f"{player1.name}的劫击败了{player2.name}")breakif player1.hp < 0:print(f"{player1.name}的血量{player1.hp}")print(f"{player2.name}的亚索击败了{player1.name}")breakchoose_who = random.randint(0, 7)time.sleep(0.5)if choose_who == 0:player1.Q(player2)print(f"{player2.name}的血量{player2.hp}")if choose_who == 1:player1.W()print(f"{player2.name}的血量{player2.hp}")if choose_who == 2:player1.E(player2)print(f"{player2.name}的血量{player2.hp}")if choose_who == 3:player1.R(player2)print(f"{player2.name}的血量{player2.hp}")if choose_who == 4:player2.Q(player1)print(f"{player1.name}的血量{player1.hp}")if choose_who == 5:player2.W()print(f"{player1.name}的血量{player1.hp}")if choose_who == 6:player2.E(player1)print(f"{player1.name}的血量{player1.hp}")if choose_who == 7:player2.R(player1)print(f"{player1.name}的血量{player1.hp}")
转载于:https://www.cnblogs.com/xiongchao0823/p/11413485.html
总结
以上是生活随笔为你收集整理的理解面向对象编写的极致简单的小代码的全部内容,希望文章能够帮你解决所遇到的问题。
- 上一篇: 转换图片格式
- 下一篇: oracle的listagg函数