- game.quad[game.tholian.kloc.x][game.tholian.kloc.y] = IHWEB
- if game.tholian.kloc.x != idx:
- # move in x axis
- im = math.fabs(idx - game.tholian.kloc.x)*1.0/(idx - game.tholian.kloc.x)
- while game.tholian.kloc.x != idx:
- game.tholian.kloc.x += im
- if game.quad[game.tholian.kloc.x][game.tholian.kloc.y]==IHDOT:
- game.quad[game.tholian.kloc.x][game.tholian.kloc.y] = IHWEB
- elif game.tholian.kloc.y != idy:
- # move in y axis
- im = math.fabs(idy - game.tholian.kloc.y)*1.0/(idy - game.tholian.kloc.y)
- while game.tholian.kloc.y != idy:
- game.tholian.kloc.y += im
- if game.quad[game.tholian.kloc.x][game.tholian.kloc.y]==IHDOT:
- game.quad[game.tholian.kloc.x][game.tholian.kloc.y] = IHWEB
- game.quad[game.tholian.kloc.x][game.tholian.kloc.y] = IHT
- #game.enemies[-1].kloc = game.tholian #FIXME
+ here = copy.copy(game.tholian.kloc)
+ delta = (id - game.tholian.kloc).sgn()
+ # move in x axis
+ while here.x != id.x:
+ #print "Moving in X", delta
+ here.x += delta.x
+ if game.quad[here.kloc.x][here.y]==IHDOT:
+ game.tholian.move(here)
+ # move in y axis
+ while here.y != id.y:
+ #print "Moving in Y", delta
+ here.y += delta.y
+ if game.quad[here.x][here.y]==IHDOT:
+ game.tholian.move(here)