def tick(self):
"""
Pulls all keyboard events from the event queue and processes them according to our keyboard_registry/descriptions.
Triggers events for all registered keys like: 'key_down.[desc]' (when pressed) and 'key_up.[desc]' (when released),
where desc is the lowercase string after `pygame.K_`... (e.g. 'down', 'up', etc..).
"""
events = pygame.event.get([pygame.KEYDOWN, pygame.KEYUP])
for e in events:
# a key was pressed that we are interested in -> set to True or False
if e.key in self.keyboard_registry:
if e.type == pygame.KEYDOWN:
self.keyboard_registry[e.key] = True
self.trigger_event("key_down." + self.descriptions[e.key])
else:
self.keyboard_registry[e.key] = False
self.trigger_event("key_up." + self.descriptions[e.key])
评论列表
文章目录