Add numpad support

This commit is contained in:
Juhani Krekelä 2021-07-08 20:58:49 +03:00
parent 5504050d56
commit c360c96b69
1 changed files with 9 additions and 2 deletions

View File

@ -1,3 +1,4 @@
#!/usr/bin/env python3
import random
import sys
@ -10,6 +11,12 @@ keypad_keys = [
pyglet.window.key.A, pyglet.window.key.S, pyglet.window.key.D, pyglet.window.key.F,
pyglet.window.key.Z, pyglet.window.key.X, pyglet.window.key.C, pyglet.window.key.V,
]
keypad_keys = list(zip(keypad_keys, [
pyglet.window.key.NUM_7, pyglet.window.key.NUM_8, pyglet.window.key.NUM_9, pyglet.window.key.NUM_SUBTRACT,
pyglet.window.key.NUM_4, pyglet.window.key.NUM_5, pyglet.window.key.NUM_6, pyglet.window.key.NUM_ADD,
pyglet.window.key.NUM_1, pyglet.window.key.NUM_2, pyglet.window.key.NUM_3, pyglet.window.key.NUM_ENTER,
pyglet.window.key.NUM_DIVIDE, pyglet.window.key.NUM_0, pyglet.window.key.NUM_MULTIPLY, pyglet.window.key.NUM_SEPARATOR,
]))
# OSCOM Nano keys are arranged like
# 123C
# 456D
@ -27,7 +34,7 @@ keypad_keys = [keypad_keys[i] for i in [0xd, 0, 1, 2, 4, 5, 6, 8, 9, 0xa, 0xc, 0
def key_pressed(symbol):
global keys_pressed, keypress_arrived
for i in range(16):
if symbol == keypad_keys[i]:
if symbol in keypad_keys[i]:
keys_pressed[i] = True
keypress_arrived = True
break
@ -35,7 +42,7 @@ def key_pressed(symbol):
def key_released(symbol):
global keys_pressed
for i in range(16):
if symbol == keypad_keys[i]:
if symbol in keypad_keys[i]:
keys_pressed[i] = False
break