Stricter PEP-8 conformance.
[python-bulletml.git] / bulletml-runner
index 3dfdfa3..f361d75 100755 (executable)
@@ -50,7 +50,7 @@ def main(argv):
         active = set([source])
         source.vanished = True
         print filename
-        print "  Loaded %d top-level actions." % len(source._actions)
+        print "  Loaded %d top-level actions." % len(source.actions)
         frames = 0
         total = 0
         paused = False
@@ -78,17 +78,18 @@ def main(argv):
                     elif event.key == pygame.K_RETURN:
                         newfile = True
                     elif event.key == pygame.K_s:
-                        actions = [act([], 0.5) for act in doc.actions]
-                        source = bulletml.Bullet(
-                            x=150, y=150, target=target,
-                            actions=actions, rank=0.5)
+                        source = bulletml.Bullet.FromDocument(
+                            doc, x=150, y=150, target=target, rank=0.5)
                         source.vanished = True
                         active.add(source)
             target.x, target.y = pygame.mouse.get_pos()
             target.x /= 2
             target.y /= 2
             target.y = 300 - target.y
+            target.px = target.x
+            target.py = target.y
 
+            collides = False
             if not paused or go:
                 lactive = list(active)
                 start = time.time()
@@ -102,7 +103,7 @@ def main(argv):
                         or not (-50 < obj.y < 350)):
                         active.remove(obj)
                 if lactive:
-                    collides_all(lactive[0], lactive)
+                    collides = collides_all(target, lactive)
                 elapsed = time.time() - start
 
                 frames += 1
@@ -112,10 +113,10 @@ def main(argv):
                     if elapsed:
                         seconds_per_bullet = elapsed / count
                         bullets_per_second = count / elapsed
-                        print "  %g seconds per bullet (60Hz max: %g)." % (
-                            seconds_per_bullet, bullets_per_second / 60)
+                        print "  %g seconds per bullet (120Hz max: %g)." % (
+                            seconds_per_bullet, bullets_per_second / 120)
 
-            screen.fill([0, 0, 0])
+            screen.fill([0, 0, 64] if collides else [0, 0, 0] )
             for obj in active:
                 try:
                     x, y = obj.x, obj.y