Документ взят из кэша поисковой машины. Адрес оригинального документа : http://kodomo.fbb.msu.ru/hg/tanchiki/annotate/010a29a481dd/body.py
Дата изменения: Unknown
Дата индексирования: Fri Feb 28 23:46:33 2014
Кодировка:
tanchiki: body.py annotate

tanchiki

annotate body.py @ 5:010a29a481dd

Fixed spaces
author Daniil Alexeyevsky <me.dendik@gmail.com>
date Sat, 18 Dec 2010 16:00:13 +0300
parents e6e7b30ecde0
children b95121219b90
rev   line source
olya_zol@2 1 import vector
olya_zol@3 2 import math
olya_zol@3 3 delta_phi = math.pi # deltha phi = math.pi
olya_zol@3 4 speed_delta = 1
olya_zol@3 5 delta_t = 1
olya_zol@3 6 max_velocity = 2
olya_zol@2 7
olya_zol@1 8 class Body(object):
olya_zol@3 9 def __init__(self, position, velocity, next_position, radius):
olya_zol@1 10 self.position = position
olya_zol@1 11 self.velocity = velocity
olya_zol@1 12 self.next_position = next_position
olya_zol@1 13 self.radius = radius
olya_zol@1 14
olya_zol@1 15
olya_zol@1 16 class Tank(Body):
olya_zol@1 17 def __init__(self, strength, turret, base_orientation, game, user):
olya_zol@1 18 self.strength = strength
olya_zol@1 19 self.turret = turret
olya_zol@3 20 self.base_orientation = base_orientation # 1 or -1
olya_zol@1 21 self.game = game
olya_zol@1 22 self.user = user
olya_zol@3 23
olya_zol@3 24 def rotate_base(tank, angle):
olya_zol@3 25 tank.base_velocity.phi += angle
olya_zol@3 26 tank.velocity.phi *= tank.base_orientation
olya_zol@1 27
olya_zol@2 28 def rotate_turret(tank, angle):
olya_zol@1 29 pass
olya_zol@1 30
olya_zol@2 31 def accelerate(tank, speed_delta):
olya_zol@3 32 tank.velocity.rho += speed_delta * delta_t
olya_zol@3 33 if tank.velocity.rho > max_velocity:
olya_zol@3 34 tank.velocity.rho = max_velocity
olya_zol@1 35
olya_zol@2 36 def fire(tank):
olya_zol@1 37 pass
olya_zol@1 38
olya_zol@2 39 def on_tick(tank,other_tanks, bullets):
olya_zol@3 40 if tank.user.base_left == True:
olya_zol@3 41 tank.rotate_base(delta_phi)
olya_zol@3 42 if tank.user.base_right == True:
olya_zol@3 43 tank.rotate_base(-1*delta_phi)
olya_zol@3 44 if tank.user.accelerate == True:
olya_zol@3 45 tank.accelerate(speed_delta)
olya_zol@1 46
olya_zol@2 47 def on_spawn(tank):
olya_zol@1 48 pass
olya_zol@1 49
olya_zol@2 50 def on_death(tank) :
olya_zol@1 51 pass
olya_zol@1 52
olya_zol@2 53 def on_hit(tank,bullet):
olya_zol@1 54 pass
olya_zol@1 55
olya_zol@1 56 def on_collision(tank):
olya_zol@1 57 pass
olya_zol@1 58
olya_zol@2 59 def on_wall(tank):
olya_zol@1 60 pass
olya_zol@1 61
olya_zol@1 62 class Bullet(Body):
olya_zol@1 63 pass