|
|
发表于 2019-9-27 20:49:07
|
显示全部楼层
缩进错误。
- import random as r
- leng_x =[0,10]
- leng_y =[0,10]
- class Truet:
- def __init__(self):
- self.power =100
- self.x =r.randint(leng_x[0],leng_x[1])
- self.y =r.randint(leng_y[0],leng_y[1])
- def move(self):
- new_x =self.x + r.choice([1,2,-1,-2])
- new_y =self.y + r.choice([1,2,-1,-2])
- if new_x < leng_x[0]:
- self.x = leng_x[0] - (new_x - leng_x[0])
- elif new_x > leng_x[1]:
- self.x = leng_x[1] - (new_x - leng_x[1])
- else:
- self.x = new_x
- if new_y < leng_y[0]:
- self.y = leng_y[1] - (new_y - leng_y[0])
- elif new_y > leng_y[1]:
- self.y = leng_y[1] - (new_y - leng_y[1])
- else:
- self.y = new_y
- self.power -= 1
- return (self.x,self.y)
- def eat(self):
- self.power += 20
- if self.power > 100:
- self.power =100
- class Fish:
- def __init__(self):
- self.x =r.randint(leng_x[0],leng_x[1])
- self.y =r.randint(leng_y[0],leng_y[1])
- def move(self):
- new_x = self.x + r.choice([1,-1])
- new_y = self.y + r.choice([1,-1])
- if new_x < leng_x[0]:
- self.x =leng_x[0] - (new_x - leng_x[0])
- elif new_x > leng_x[1]:
- self.x =leng_x[1] - (new_x - leng_x[1])
- else:
- self.x = new_x
- if new_y < leng_y[0]:
- self.y =leng_y[0] - (new_y - leng_y[0])
- elif new_y > leng_y[1]:
- self.y =leng_y[1] - (new_y - leng_y[1])
- else:
- self.y =new_y
- return (self.x,self.y)
- turtle = Truet()
- fish =[]
- for i in range(10):
- new_fish = Fish()
- fish.append(new_fish)
- while True:
- if not len(fish):
- print('鱼儿都吃完了,游戏结束!')
- break
- if not turtle.power:
- print('乌龟体力耗尽,游戏结束!')
- break
- pos =turtle.move()
- for each in fish[:]:
- if each.move() ==pos:
- turtle.eat()
- fish.remove(each)
- print('有要条鱼被吃掉了!')
复制代码 |
|