小白做的“人狗大战”,大家帮着看看,不喜勿喷,谢谢
小白做的“人狗大战”,大家帮着看看,不喜勿喷,谢谢:class Animal: # 创建Animal父类,都有名字、血量和攻击力
def __init__(self, name, blood, fight): # init方法
self.name = name # 名字
self.blood = blood # 血量
self.fight = fight # 攻击力
def eat(self):
self.fight = self.fight + 1 # 吃饭增加攻击力
print(self.name + "吃饭了,攻击力+1")
class People(Animal): # 创建People子类,继承父类Animal
def __init__(self, name, blood=1000, fight=10, money=3000):
super().__init__(name, blood, fight) # 继承父类的init方法
self.money = money # 派生出新的属性“钱”
def attack(self, dog):
dog.blood = dog.blood - self.fight # 打狗,狗的血量对应人的攻击力下降
print("您打了您的狗,他目前还剩的血量为:" + str(dog.blood))
def work(self):
self.money = self.money + 100 # 工作赚钱
print(self.name + "工作了,赚了100块钱," + self.name + "目前还有" + str(self.money) + "块钱")
if self.money >= 4000:
self.fight = self.fight + 100
self.money = self.money - 4000
print(self.name + "买了一把枪,钱数-4000")
class Dog(Animal): # 创建Dog子类,继承父类Animal
def __init__(self, type, name, blood=750, fight=13):
super().__init__(name, blood, fight) # 继承父类的init方法
self.type = type # 派生出新的属性“血统”
def bite(self, person):
person.blood = person.blood - self.fight # 咬人,人的血量对应狗的攻击力下降
print("您的狗咬了您,您目前还剩的血量为:" + str(person.blood))
P1 = People("张三") # 创建People实例P1
D1 = Dog("呆萌", "二哈") # 原理同上
i = 0
while D1.blood != 0 and P1.blood != 0:
i = i + 1
if i % 3 == 0:
P1.eat()
elif i % 6 == 1:
P1.work()
else:
P1.attack(D1)
if D1.blood <= 0 or P1.blood <= 0:
break
if i % 3 == 0:
D1.eat()
else:
D1.bite(P1)
if D1.blood <= 0 or P1.blood <= 0:
break
下面是效果:
张三工作了,赚了100块钱,张三目前还有3100块钱
您的狗咬了您,您目前还剩的血量为:987
您打了您的狗,他目前还剩的血量为:740
您的狗咬了您,您目前还剩的血量为:974
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:729
您的狗咬了您,您目前还剩的血量为:960
您打了您的狗,他目前还剩的血量为:718
您的狗咬了您,您目前还剩的血量为:946
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3200块钱
您的狗咬了您,您目前还剩的血量为:931
您打了您的狗,他目前还剩的血量为:706
您的狗咬了您,您目前还剩的血量为:916
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:693
您的狗咬了您,您目前还剩的血量为:900
您打了您的狗,他目前还剩的血量为:680
您的狗咬了您,您目前还剩的血量为:884
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3300块钱
您的狗咬了您,您目前还剩的血量为:867
您打了您的狗,他目前还剩的血量为:666
您的狗咬了您,您目前还剩的血量为:850
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:651
您的狗咬了您,您目前还剩的血量为:832
您打了您的狗,他目前还剩的血量为:636
您的狗咬了您,您目前还剩的血量为:814
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3400块钱
您的狗咬了您,您目前还剩的血量为:795
您打了您的狗,他目前还剩的血量为:620
您的狗咬了您,您目前还剩的血量为:776
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:603
您的狗咬了您,您目前还剩的血量为:756
您打了您的狗,他目前还剩的血量为:586
您的狗咬了您,您目前还剩的血量为:736
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3500块钱
您的狗咬了您,您目前还剩的血量为:715
您打了您的狗,他目前还剩的血量为:568
您的狗咬了您,您目前还剩的血量为:694
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:549
您的狗咬了您,您目前还剩的血量为:672
您打了您的狗,他目前还剩的血量为:530
您的狗咬了您,您目前还剩的血量为:650
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3600块钱
您的狗咬了您,您目前还剩的血量为:627
您打了您的狗,他目前还剩的血量为:510
您的狗咬了您,您目前还剩的血量为:604
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:489
您的狗咬了您,您目前还剩的血量为:580
您打了您的狗,他目前还剩的血量为:468
您的狗咬了您,您目前还剩的血量为:556
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3700块钱
您的狗咬了您,您目前还剩的血量为:531
您打了您的狗,他目前还剩的血量为:446
您的狗咬了您,您目前还剩的血量为:506
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:423
您的狗咬了您,您目前还剩的血量为:480
您打了您的狗,他目前还剩的血量为:400
您的狗咬了您,您目前还剩的血量为:454
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3800块钱
您的狗咬了您,您目前还剩的血量为:427
您打了您的狗,他目前还剩的血量为:376
您的狗咬了您,您目前还剩的血量为:400
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:351
您的狗咬了您,您目前还剩的血量为:372
您打了您的狗,他目前还剩的血量为:326
您的狗咬了您,您目前还剩的血量为:344
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有3900块钱
您的狗咬了您,您目前还剩的血量为:315
您打了您的狗,他目前还剩的血量为:300
您的狗咬了您,您目前还剩的血量为:286
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:273
您的狗咬了您,您目前还剩的血量为:256
您打了您的狗,他目前还剩的血量为:246
您的狗咬了您,您目前还剩的血量为:226
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
张三工作了,赚了100块钱,张三目前还有4000块钱
张三买了一把枪,钱数-4000
您的狗咬了您,您目前还剩的血量为:195
您打了您的狗,他目前还剩的血量为:118
您的狗咬了您,您目前还剩的血量为:164
张三吃饭了,攻击力+1
二哈吃饭了,攻击力+1
您打了您的狗,他目前还剩的血量为:-11
[此贴子已经被作者于2020-5-2 11:39编辑过]