if iquad==IHDOT:
continue
# hit something
- if damaged(DSRSENS) and not game.condition=="docked":
+ if not damaged(DSRSENS) or game.condition == "docked":
skip(1); # start new line after text track
if iquad in (IHE, IHF): # Hit our ship
skip(1)
if game.quad[bumpto.i][bumpto.j] == IHBLANK:
prout(_(" buffeted into black hole."))
deadkl(w, iquad, bumpto)
- return None
if game.quad[bumpto.i][bumpto.j] != IHDOT:
- # can't move into object
prout(_(" damaged but not destroyed."))
- return None
- proutn(_(" damaged--"))
- enemy.kloc = bumpto
- game.quad[w.i][w.j]=IHDOT
- game.quad[bumpto.i][bumpto.j]=iquad
- prout(_(" displaced by blast to Sector %s ") % bumpto)
- for enemy in game.enemies:
- enemy.kdist = enemy.kavgd = (game.sector-enemy.kloc).distance()
- game.enemies.sort(lambda x, y: cmp(x.kdist, y.kdist))
+ else:
+ prout(_(" damaged-- displaced by blast to Sector %s ")%bumpto)
+ enemy.kloc = bumpto
+ game.quad[w.i][w.j]=IHDOT
+ game.quad[bumpto.i][bumpto.j]=iquad
+ for enemy in game.enemies:
+ enemy.kdist = enemy.kavgd = (game.sector-enemy.kloc).distance()
+ game.enemies.sort(lambda x, y: cmp(x.kdist, y.kdist))
return None
- break
elif iquad == IHB: # Hit a base
skip(1)
prout(_("***STARBASE DESTROYED.."))
if step == 1:
if n != 1:
skip(1)
- proutn(_("Track for %s torpedo number %d- ") % (game.quad[origin.i][origin.j],i+1))
+ proutn(_("Track for torpedo number %d- ") % (i+1))
else:
skip(1)
proutn(_("Torpedo track- "))
game.quad[game.sector.i][game.sector.j] = IHDOT
x = game.sector.i
y = game.sector.j
- n = int(10.0*course.distance*bigger+0.5)
+ n = course.moves
if n > 0:
- for m in range(1, n+1):
+ for m in range(n):
x += deltax
y += deltay
w.i = int(round(x))
self.increment = coord(-math.sin(self.angle), math.cos(self.angle))
bigger = max(abs(self.increment.i), abs(self.increment.j))
self.increment /= bigger
- self.moves = 10*self.distance*bigger +0.5
+ self.moves = int(round(10*self.distance*bigger))
def next(self, grain=1):
"Next step on course."
self.moves -=1