Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.cmm.msu.ru/trac/tanchiki/browser/tanchiki/game.py?rev=20%3Aee776b889df7&format=txt
Дата изменения: Mon Dec 20 08:08:18 2010
Дата индексирования: Sun Feb 13 08:12:25 2011
Кодировка:
other_tanks = []
bullets = []

class Game(object):
def __init__(self, width, height, bodies):
self.bodies = bodies
self.width = width
self.height = height

def step(self, delta_t):
self.__calculate_positions(delta_t)
self.__check_walls()
self.__check_collisions()
self.__update_positions()
self.__invoke_ticks()

def __calculate_positions(game, delta_t):
for i in game.bodies :
i.next_position = i.position + i.velocity*(delta_t)

def __update_positions(self):
for i in self.bodies :
i.position = i.next_position

def __collides(self, body1, body2):
pass

def __handle_collision(self, body1, body2):
pass

def __check_collisions(game):
pass

def __check_walls(game):
for i in game.bodies :
if ((i.next_position.x - i.radius) <= 0) or
((i.next_position.y - i.radius) <= 0) or
((i.next_position.x + i.radius) >= game.width) or
((i.next_position.y + i.radius) >= game.height) :
i.on_wall()

def __update_positions(self):
for i in self.bodies :
i.position = i.next_position

def __invoke_ticks(self):
for i in self.bodies :
if i.controller
i.controller.on_tick(other_tanks, bullets)