diff --git a/PyCube.py b/PyCube.py index 7d5e3fd..12407d4 100644 --- a/PyCube.py +++ b/PyCube.py @@ -11,7 +11,6 @@ import multiprocessing from quat import * from geometry import * -import keypress import pygame from pygame.locals import * @@ -343,24 +342,16 @@ def update(): zoom = 1 if event.key == pygame.K_EQUALS: - p = multiprocessing.Process(target=keypress.wail, args=(moves,)) - # thread.daemon = True - p.start() - p.join() + self.scramble(moves) print() print(moves) moves = '' - print(moves) if event.key == pygame.K_MINUS: mvs = 'fFbBlLrRuUdD' scrambled = ''.join(random.choice(mvs) for _ in range(20)) - p = multiprocessing.Process(target=self.scramble, args=(scrambled,)) - # p.daemon = True - p.start() - p.join() - # self.scramble() + self.scramble(scrambled) if event.type == pygame.KEYUP: # Stoping rotation @@ -403,9 +394,12 @@ def update(): sys.stdout.flush() # time.sleep(5000) - def scramble(self, scrambled): - - keypress.wail(scrambled) + def scramble(self, moves): + if moves: + moves = list(reversed(list(moves.swapcase()))) + for move in moves: + newevent = pygame.event.Event(pygame.locals.KEYDOWN, unicode=move, key=pygame.key.key_code(move), mod=pygame.locals.KMOD_NONE) + pygame.event.post(newevent) def draw_cube(self): diff --git a/keypress.py b/keypress.py deleted file mode 100644 index 65185b6..0000000 --- a/keypress.py +++ /dev/null @@ -1,57 +0,0 @@ -from evdev import uinput, ecodes as e - - - -# moves = "fFbBlLrRuUdD" -# moves = list(moves) - - - -def wail(moves): - if moves is not '': - moves = list(reversed(list(moves.swapcase()))) - for move in moves: - with uinput.UInput() as ui: - if move == 'f': - ui.write(e.EV_KEY, e.KEY_F, 1) - ui.write(e.EV_KEY, e.KEY_F, 0) - elif move == 'F': - ui.write(e.EV_KEY, e.KEY_LEFTSHIFT, 1) - ui.write(e.EV_KEY, e.KEY_F, 1) - - elif move == 'b': - ui.write(e.EV_KEY, e.KEY_B, 1) - ui.write(e.EV_KEY, e.KEY_B, 0) - elif move == 'B': - ui.write(e.EV_KEY, e.KEY_LEFTSHIFT, 1) - ui.write(e.EV_KEY, e.KEY_B, 1) - - elif move == 'l': - ui.write(e.EV_KEY, e.KEY_L, 1) - ui.write(e.EV_KEY, e.KEY_L, 0) - elif move == 'L': - ui.write(e.EV_KEY, e.KEY_LEFTSHIFT, 1) - ui.write(e.EV_KEY, e.KEY_L, 1) - - elif move == 'r': - ui.write(e.EV_KEY, e.KEY_R, 1) - ui.write(e.EV_KEY, e.KEY_R, 0) - elif move == 'R': - ui.write(e.EV_KEY, e.KEY_LEFTSHIFT, 1) - ui.write(e.EV_KEY, e.KEY_R, 1) - - elif move == 'u': - ui.write(e.EV_KEY, e.KEY_U, 1) - ui.write(e.EV_KEY, e.KEY_U, 0) - elif move == 'U': - ui.write(e.EV_KEY, e.KEY_LEFTSHIFT, 1) - ui.write(e.EV_KEY, e.KEY_U, 1) - - elif move == 'd': - ui.write(e.EV_KEY, e.KEY_D, 1) - ui.write(e.EV_KEY, e.KEY_D, 0) - elif move == 'D': - ui.write(e.EV_KEY, e.KEY_LEFTSHIFT, 1) - ui.write(e.EV_KEY, e.KEY_D, 1) - - ui.syn()