坦克大战4
1.玩家坦克
class Player:
"""玩家管理"""
def __init__(self,view_manager,screen):
self.hp = 100
self.kill = 0
self.move = pv.MOVE_STAND
self.lastmove = pv.MOVE_UP
self.speed = 5
self.x = view_manager.screen_width / 2
self.y = view_manager.screen_height * 3 / 4
self.bullets = []
self.guncenterx = -1
self.guncentery = -1
self.firedelay = 0.3
self.firetime = datetime.datetime.now() - datetime.timedelta(days=1)
self.font = view_manager.font[1]
def is_die(self):
if self.hp <= 0:
return True
else:
return False
def move_position(self,view_manager,screen):
if self.move == pv.MOVE_STAND:
return
if self.move == pv.MOVE_LEFT:
self.x-=self.speed
if self.x <= 0:
self.x = 0
elif self.move == pv.MOVE_RIGHT:
self.x+=self.speed
bodysize = view_manager.player_body[3].get_rect()
if self.x + bodysize.width >= view_manager.screen_width :
self.x = view_manager.screen_width - bodysize.width
elif self.move == pv.MOVE_UP:
self.y-=self.speed
if self.y <= 0:
self.y = 0
elif self.move == pv.MOVE_DOWN:
self.y+=self.speed
bodysize = view_manager.player_body[1].get_rect()
if self.y + bodysize.height >= view_manager.screen_height :
self.y = view_manager.screen_height - bodysize.height
def getrect(self ,view_manager):
if self.lastmove == pv.MOVE_UP :
return view_manager.player_body[0].get_rect()
if self.lastmove == pv.MOVE_DOWN:
return view_manager.player_body[1].get_rect()
if self.lastmove == pv.MOVE_LEFT:
return view_manager.player_body[2].get_rect()
if self.lastmove == pv.MOVE_RIGHT:
return view_manager.