summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorraylu <ray.lu@getclever.com>2013-10-12 00:35:07 -0700
committerraylu <ray.lu@getclever.com>2013-10-12 00:35:07 -0700
commit6ed6865d9bb39d464a1f5fc886f0d4f18dd40c37 (patch)
treeb31cadca1d0027f68314dfa7afdc8369c89c18c6
parent7f233c72678e8e644ac85e952806da3c95265bfd (diff)
downloadtroll-6ed6865d9bb39d464a1f5fc886f0d4f18dd40c37.tar.xz
handle ESC and quit better
-rwxr-xr-xtroll20
1 files changed, 12 insertions, 8 deletions
diff --git a/troll b/troll
index 0b55e6f..ee2f7ae 100755
--- a/troll
+++ b/troll
@@ -1,7 +1,5 @@
#!/usr/bin/env python
-import sys
-
import pygame
from tileset import Tileset
@@ -22,19 +20,25 @@ keys = {
pygame.K_UP: False,
pygame.K_DOWN: False,
}
-
-direction = Tileset.RIGHT
-while True:
- clock.tick(60)
- for event in pygame.event.get():
+def handle_events(events):
+ for event in events:
if event.type == pygame.KEYDOWN:
if event.key in keys.iterkeys():
keys[event.key] = True
+ elif event.key == pygame.K_ESCAPE:
+ return True
elif event.type == pygame.KEYUP:
if event.key in keys.iterkeys():
keys[event.key] = False
elif event.type == pygame.QUIT:
- sys.exit()
+ return True
+
+direction = Tileset.RIGHT
+while True:
+ clock.tick(60)
+ if handle_events(pygame.event.get()):
+ pygame.quit()
+ break
new_direction = character.frame(keys)
if new_direction is not None: