Exemple #1
1
    def _key_callback(self, symbol, modifiers, event_time):
        # check the key and time (if this is needed)
        keys = val(self.keys)
        correct_resp = val(self.correct_resp)
        sym_str = key.symbol_string(symbol)
        if None in keys or sym_str in keys:
            # it's all good!, so save it
            self.pressed = sym_str
            self.press_time = event_time

            # fill the base time val
            self.base_time = val(self.base_time_src)
            if self.base_time is None:
                # set it to the state time
                self.base_time = self.state_time
            
            # calc RT if something pressed
            self.rt = event_time['time']-self.base_time

            if self.pressed in correct_resp:
                self.correct = True

            # let's leave b/c we're all done
            #self.interval = 0
            self.leave()
Exemple #2
0
 def on_key_release(self, inp, modifers):
     if symbol_string(inp) == "LEFT":
         self.sprite.dx = 0
         print("release left, dx:", self.sprite.dx)
     if symbol_string(inp) == "RIGHT":
         self.sprite.dx = 0
         print("release right, dx:", self.sprite.dx)
Exemple #3
0
 def on_key_release(self, inp, modifers):
     if symbol_string(inp) == "LEFT":
         self.sprite.dx = 0
         print("release left, dx:", self.sprite.dx)
     if symbol_string(inp) == "RIGHT":
         self.sprite.dx = 0
         print("release right, dx:", self.sprite.dx)
Exemple #4
0
    def on_key_press(self, key, modif):
        move_left = MoveBy((-50, 0), .5)
        if symbol_string(key) == "LEFT":
            self.sprite.do(move_left)

        if symbol_string(key) == "RIGHT":
            self.sprite.do(Reverse(move_left))
Exemple #5
0
 def on_key_release(self, key, modifiers):
     if symbol_string(key) == "RIGHT":
         self.rotation_speed -= 90
     elif symbol_string(key) == "LEFT":
         self.rotation_speed += 90
     elif symbol_string(key) == "UP":
         self.power_on = False
Exemple #6
0
 def load(self):
     with io.open(KEYMAP_FILE, 'rt', encoding='utf-8') as f:
         game_options = False
         for l in f:
             if '#' in l:
                 game_options = True
                 continue
             if game_options:
                 semi = l.find(';')
                 name = l[:semi]
                 val = int(l[semi + 1:])
                 self.key_map[name] = val
                 self.game.keybind_menu.controls[
                     name + ' key'].text = Pkey.symbol_string(val)
             else:
                 semi = l.find(';')
                 name = l[:semi]
                 val = int(l[semi + 1:])
                 self.game.keybind_menu.controls[
                     name + ' key'].text = Pkey.symbol_string(val)
                 player_n = int(name[7])
                 name = name[9:]
                 self.player_map[str(player_n)][name] = val
             if not val in self.keys:
                 self.keys[val] = False
Exemple #7
0
    def draw(self):
        super().draw()

        drawLabel("Increment size: {}".format(self.increment), self.width // 2,
                  self.height - 12, self.textSize)

        plusSymbol = key.symbol_string(self.incrementPlusKey)
        minusSymbol = key.symbol_string(self.incrementMinusKey)
        drawLabel("{} - /10 Increment   {} - x10 Increment".format(
            plusSymbol, minusSymbol),
                  self.width // 2,
                  5,
                  self.textSize - 2,
                  anchorY="bottom")

        index = 0
        for i in settings:
            offsetY = (index * 25)
            index += 1
            drawLabel("{}: {}".format(settings[i][1], settings[i][0]),
                      self.textOffsetX + 10,
                      self.height - 60 - offsetY,
                      self.textSize,
                      anchorX='left',
                      anchorY='bottom')
    def save_exp(self, rest_time=1):
        name = inspect.getouterframes(inspect.currentframe())[1][1] #get the file path that called save_exp
        name = name.rsplit('/')[-1].rsplit('.')[0]                  #get its name without '.py'
        self.names.append(name)

        # experiment class
        self.curr_experiment.name = name

        # there is at least one test, so
        # this is not a rest file, so assign a key
        if self.curr_experiment.tests != []: 
            self.experiments.append(self.curr_experiment)
            ind = len(self.experiments)-1
            curr_key = [key._1, key._2, key._3, key._4, key._5,
                        key._6, key._7, key._8, key._9][ind]
            if ind<=8:
                self.window.add_key_action(curr_key, self.begin_experiment, ind)
            if ind==0: print '\nScheduler key assignments:'
            print key.symbol_string(curr_key) + ' - ' + name

        # since this is not a test file and there is at least one
        # rest, add it to rests and make it the default rest
        elif self.curr_experiment.rest != []:
            self.rests.append(self.curr_experiment)
            print 'rest - ' + name

        self.curr_experiment = None #clear it for the next save
def on_key_press(symbol, modifiers):
    if key.symbol_string(symbol) == 'SPACE':
        environment.active = not environment.active
    if key.symbol_string(symbol) == 'S':
        environment.mode = 'S'
    if key.symbol_string(symbol) == 'C':
        environment.mode = 'C'
Exemple #10
0
    def on_key_press(self, symbol, modifiers):
        import p5.globals
        from pyglet.window import key
        try:
            if modifiers == 0:
                p5.globals.keycode.set(ord(key.symbol_string(symbol)))
            else:
                p5.globals.keycode.set(None)
        except TypeError:
            p5.globals.keycode.set(None)
        p5.globals.key.set(key.symbol_string(symbol).replace("_", ""))
        if modifiers != 0:
            p5.globals.modifiers.set(
                key.modifiers_string(modifiers).replace("|", ",").replace(
                    "MOD_", ""))
        else:
            p5.globals.modifiers.set(None)
        p5.globals.keyispressed.set(True)
        try:
            self.KeyPressed()
        except AttributeError:
            pass

        if modifiers == 0:
            try:
                self.KeyTyped()
            except AttributeError:
                pass
    def test_certain_modifier_key_presses_do_not_change_state(self):
        app = MockApp()
        state = dispatcher.init_state(dispatcher.default_state, app, None)
        state.send(NormalEvent(ON_KEY_PRESS, pkey.M))
        current_state = state.gi_frame.f_locals['current_state']
        self.assertEqual(current_state.__name__, 'marking')

        keys = [
            pkey.LSHIFT, pkey.RSHIFT,
            pkey.LCTRL, pkey.RCTRL,
            pkey.CAPSLOCK,
            pkey.LMETA, pkey.RMETA,
            pkey.LALT, pkey.RALT,
            pkey.LWINDOWS, pkey.RWINDOWS,
            pkey.LCOMMAND, pkey.RCOMMAND,
            pkey.LOPTION, pkey.ROPTION
        ]

        for key in keys:
            state.send(NormalEvent(ON_KEY_PRESS, key))
            current_state = state.gi_frame.f_locals['current_state']
            self.assertIsNotNone(current_state,
                    msg="{} has changed the state".format(pkey.symbol_string(key)))
            self.assertEqual(current_state.__name__, 'marking',
                    msg="current_state was changed by {}".format(pkey.symbol_string(key)))
Exemple #12
0
 def on_key_release(self, key, modifiers):
     if symbol_string(key) != "RETURN":
         self.keys_pressed.remove(key)
     if symbol_string(key) == "SPACE":
         if self.accel.isPlaying:
             self.accel.stop()
         self.snake.speed = 180
    def on_key_press(self, key, modifiers):
        if symbol_string(key) == "T":
            self.do(Twirl(amplitude=5, duration=2))

        elif symbol_string(key) == "W":
            self.do(Reverse(Waves(duration=2)))

        elif symbol_string(key) == "F":
            self.do(FlipX3D(duration=1) + FlipY3D(duration=1) + Reverse(FlipY3D(duration=1)))
Exemple #14
0
 def on_key_press(self, key, modifiers):
     if symbol_string(key) == "RIGHT":
         self.rotation_speed += 90
     elif symbol_string(key) == "LEFT":
         self.rotation_speed -= 90
     elif symbol_string(key) == "UP":
         self.power_on = True
     elif symbol_string(key) == "SPACE":
         self.shoot()
	def on_key_press(self, key, modifiers):
		if symbol_string(key) == 'LEFT':
			pass
		if symbol_string(key) == "RIGHT":
			pass
		if symbol_string(key) == "ESCAPE":
			self.backToPrevious()
		if symbol_string(key) == "SPACE":
			self.print_options()
		pass
Exemple #16
0
    def _is_correct_key(self, symbol):
        if not self.chosen_symbol:
            self.fail_test('No more key presses/releases expected.')
            return False

        if self.chosen_symbol != symbol:
            self.fail_test('Received key "{}", but expected "{}"'.format(key.symbol_string(symbol),
                                                                         key.symbol_string(self.chosen_symbol)))
            return False

        return True
Exemple #17
0
    def on_key_press(self, key, modifiers):
        if symbol_string(key) == "T":
            self.do(Twirl(amplitude=5, duration=2))

        elif symbol_string(key) == "W":
            self.do(Reverse(Waves(duration=2)))

        elif symbol_string(key) == "F":
            self.do(
                FlipX3D(duration=1) + FlipY3D(duration=1) +
                Reverse(FlipY3D(duration=1)))
Exemple #18
0
    def on_key_release(self, symbol, modifiers):
        letter = key.symbol_string(symbol)
        if self.verbose: print("release:",letter,key.modifiers_string(modifiers))

        _keyboard.remove(key.symbol_string(symbol))
        if self.keyrelease is not None:
            kwargs = {
            "window":self,
            "symbol":key.symbol_string(symbol),
            "modifiers":key.modifiers_string(modifiers)
            }
            self.keyrelease(**kwargs)
Exemple #19
0
 def on_key_press(self, symbol, modifiers):
     letter = key.symbol_string(symbol)
     if self.verbose:
         print("press:",letter,key.modifiers_string(modifiers))
     _keyboard.add(key.symbol_string(symbol))
     if self.keypress is not None:
         kwargs = {
         "window":self,
         "symbol":key.symbol_string(symbol),
         "modifiers":key.modifiers_string(modifiers)
         }
         self.keypress(**kwargs)
Exemple #20
0
 def on_key_press(self, symbol, modifiers):
     letter = key.symbol_string(symbol)
     if self.verbose:
         print("press:", letter, key.modifiers_string(modifiers))
     _keyboard.add(key.symbol_string(symbol))
     if self.keypress is not None:
         kwargs = {
             "window": self,
             "symbol": key.symbol_string(symbol),
             "modifiers": key.modifiers_string(modifiers)
         }
         self.keypress(**kwargs)
 def on_key_press(self, key, modifiers):
     try:
         if self.active:
             num = int(symbol_string(key)[-1])
             self.inputLabel.element.text = self.inputLabel.element.text + symbol_string(
                 key)[-1]
             if len(self.inputLabel.element.text) > (self.charLimit - 1):
                 self.active = False
                 self.bgImage.image = pyglet.resource.image("textBox.png")
                 self.changed = True
     except ValueError:
         pass
Exemple #22
0
 def on_key_release(self, symbol, modifiers):
     letter = key.symbol_string(symbol)
     if self.verbose: print("release:",letter,key.modifiers_string(modifiers))
     
     _keyboard.remove(key.symbol_string(symbol))
     if self.keyrelease is not None:
         kwargs = {
         "window":self,
         "symbol":key.symbol_string(symbol),
         "modifiers":key.modifiers_string(modifiers)
         }
         self.keyrelease(**kwargs)
Exemple #23
0
    def _direct_mode(self, symbol, modifiers):
        if symbol == key.COLON:
            self._set_command(':')

        elif symbol_string(symbol) in Moves.keys():
            command = symbol_string(symbol)
            commands = self.cube.create_commands(command)
            self._execute(commands, invert=modifiers & key.MOD_SHIFT)
            self._set_command('')

        elif symbol in Macros.keys():
            commands = self.cube.create_commands(Macros[symbol])
            self._execute(commands, invert=modifiers & key.MOD_SHIFT)
            self._set_command('')
Exemple #24
0
 def on_key_release(symbol, modifiers):
     if key.symbol_string(
             symbol).lower() == 'enter' and self._act is not None:
         print("Human input disabled.")
         self.openai_inputs_queue = []
     elif key.symbol_string(symbol).lower() in self.keys:
         next_openai_input = [
             self.action_indices[str([[
                 spaces.KeyEvent.by_name(
                     key.symbol_string(symbol).lower(), down=False)
             ]])]
         ]
         self.push_action_to_queue(next_openai_input)
     self.last_input_was_mouse_motion = False
Exemple #25
0
    def on_key_press(self, key, modifiers):
        # First I create a move action because we programmers are lazy and hate having to retype code!
        move_left = MoveBy((-50, 0), .5)

        # Here's where that Pyglet symbol_string() function comes in handy
        # Rather than having to interpret an inconsistent code, I can simply interpret the word LEFT and RIGHT
        if symbol_string(key) == "LEFT":
            self.sprite.do(move_left)

        # Now I need to tell the layer what to do if the user inputs RIGHT
        if symbol_string(key) == "RIGHT":
            # This is a pretty awesome feature built into Cocos
            # I only wrote code for moving left, but I can use the Reverse() function instead of rewriting code
            # Reverse() simply tells Cocos to do the reverse action of whatever you pass into it.
            self.sprite.do(Reverse(move_left))
Exemple #26
0
    def on_key_release(self, symbol, modifiers):
        print('Release: ', key.symbol_string(symbol))
        symbol = self._handle_meta_release(symbol)
        if symbol not in self.active_keys:
            self.fail_test('Released key "{}" was not pressed before.'.format(key.symbol_string(symbol)))
        else:
            self.active_keys.remove(symbol)

        if len(self.active_keys) == 0 and self.completely_pressed:
            self.completely_pressed = False
            self.checks_passed += 1
            if self.checks_passed == self.number_of_checks:
                self.pass_test()
            else:
                self._select_next_key()
Exemple #27
0
 def on_key_press(self, key, modifiers):
     if symbol_string(key) == "ENTER":
         self.handle_answer()
     else:
         print(key - ord('0'))
         self.answer += chr(key)
         self.answer_label.element.text = self.answer
Exemple #28
0
    def on_key_press(self, symbol, modifiers):
        if pymterm.debug_log:
            LOGGER.debug('on_key_press:{}, {}'.format(
                key.symbol_string(symbol),
                key.modifiers_string(modifiers)))

        key_state = KeyState(symbol, modifiers)

        if symbol == key.Q and \
           (modifiers == key.MOD_COMMAND or modifiers == key.MOD_CTRL):
            self.close()
            return

        if self.session.terminal.process_key(key_state):
            if pymterm.debug_log:
                LOGGER.debug(' processed by pyterm')
            return

        v, handled = term.term_keyboard.translate_key(self.session.terminal,
                                                      key_state)

        if len(v) > 0:
            self.session.send(v)

        self._key_first_down = True
Exemple #29
0
 def get_key_string(self, value):
     value = key.symbol_string(value)
     if value.startswith('_'):
         value = value[1:]
     if value == 'LCTRLREAL':
         return 'LCTRL'
     return value
 def get_key_string(self, value):
     value = key.symbol_string(value)
     if value.startswith('_'):
         value = value[1:]
     if value == 'LCTRLREAL':
         return 'LCTRL'
     return value
Exemple #31
0
    def __init__(self, gui, data, align_x, align_y, padding):
        self.gui = gui
        self.data = data
        self.align_x = align_x
        self.align_y = align_y
        self.padding = padding
        self._index = 0

        self.check_sprite = pyglet.sprite.Sprite(
            graphics.img.gui_radio_check, batch=gui.batch, group=graphics.group.gui_front)
        self.check_sprite.scale = self.sprite_scale

        self.sprites = []
        self.labels = []

        for symbol, caption in self.data:
            text = "[{}] ".format(key.symbol_string(symbol))
            text += caption
            sprite = pyglet.sprite.Sprite(
                graphics.img.gui_radio,
                batch=gui.batch,
                group=graphics.group.gui_mid)
            sprite.opacity = 127
            sprite.scale = self.sprite_scale
            label = pyglet.text.Label(
                text,
                font_size=11, bold=False,
                anchor_y="center",
                color=(255, 255, 255, 127),
                batch=gui.batch,
                group=graphics.group.gui_front)
            self.sprites.append(sprite)
            self.labels.append(label)

        gui.app.window.push_handlers(self.on_resize, self.on_key_press, self.on_mouse_press)
Exemple #32
0
 def on_key_release(self, key, modifiers):
     k = symbol_string(key)
     status = False
     if k == "LEFT":
         self.key_pressed_left = status
     elif k == "RIGHT":
         self.key_pressed_right = status
Exemple #33
0
 def print_keypress_actions(self):
     items = sorted(self.keypress_actions.items())
     for keypress, action in items:
         keysymbol = key.symbol_string(keypress[0]).lstrip(' _')
         modifiers = key.modifiers_string(keypress[1]).replace('MOD_', '').replace('|', ' ').lstrip(' ')
         func, args, kwargs = action[0].__name__, action[1], action[2]
         print('{:<10} {:<6} --- {:<30}({}, {})'.format(modifiers, keysymbol, func, args, kwargs))
Exemple #34
0
 def key(self, symbol, modifiers):
     """ Key pressed event handler.
     """
     if symbol == key.F1:
         self.mode = 1
         self.default()
         print "Projection: Pyglet default"
     if symbol == key.NUM_0:
         global correction_rmatrix1, zero_rmatrix, rmatrix1
         correction_rmatrix1 = np.dot(zero_rmatrix, np.linalg.inv(rmatrix1))
     elif symbol == key.F2:
         print "Projection: 3D Isometric"
         self.mode = 2
         self.isometric()
     elif symbol == key.F3:
         print "Projection: 3D Perspective"
         self.mode = 3
         self.perspective()
     elif self.mode == 3 and symbol == key.NUM_SUBTRACT:
         self.fov -= 1
         self.perspective()
     elif self.mode == 3 and symbol == key.NUM_ADD:
         self.fov += 1
         self.perspective()
     else:
         print "KEY " + key.symbol_string(symbol)
Exemple #35
0
    def on_key_press(self, symbol, modifiers):
        """ Handles key presses in/for menus and toggling fps display """
        if symbol == key.F and not self.game_state == AsteroidGameStates.GAME_OVER:
            self.show_fps = not self.show_fps

        if self.game_state == AsteroidGameStates.MAIN_MENU or \
                self.game_state == AsteroidGameStates.PAUSED or \
                self.game_state == AsteroidGameStates.TOP_SCORES:
            menu = None
            menu_name = None

            if self.game_state == AsteroidGameStates.MAIN_MENU:
                menu = self.main_menu
                menu_name = 'main'
            elif self.game_state == AsteroidGameStates.PAUSED:
                menu = self.pause_menu
                menu_name = 'pause'
            elif self.game_state == AsteroidGameStates.TOP_SCORES:
                menu = self.top_score_menu
                menu_name = 'top score'

            if symbol == key.DOWN:
                self.move_menu_select(menu, 1)
            elif symbol == key.UP:
                self.move_menu_select(menu, -1)
            elif symbol == key.ENTER:
                self.handle_menu_press(
                    self.selected_menu_text(menu), menu_name)

        if symbol == key.ESCAPE and self.game_state == AsteroidGameStates.PLAYING:
            self.game_state = AsteroidGameStates.PAUSED

        elif symbol == key.ESCAPE and self.game_state == AsteroidGameStates.PAUSED:
            self.game_state = AsteroidGameStates.PLAYING

        if symbol == key.ENTER and self.game_state == AsteroidGameStates.GAME_OVER:
            self.game_state = AsteroidGameStates.MAIN_MENU
            # reset game objects
            self.score = 0
            self.level = 1
            self.game_batch = pyglet.graphics.Batch()
            self.game_objects, \
                self.player_ship, \
                self.asteroids = self.create_game_objects(self.game_batch)
            self.game_label_batch = pyglet.graphics.Batch()
            self.player_lives, \
                self.score_label, \
                self.level_label = self.create_game_labels(self.game_label_batch)

        elif self.game_state == AsteroidGameStates.GAME_OVER:
            self.player_name[self.player_name_input_index] = \
                key.symbol_string(symbol)[0]
            self.player_name_input_index += 1
            self.player_name_input_index %= 3
            self.game_over_name_label.text = \
                '%s %s %s' % (
                    self.player_name[0],
                    self.player_name[1],
                    self.player_name[2],
                )
Exemple #36
0
    def save_exp(self):
        name = inspect.getouterframes(inspect.currentframe())[1][1] #get the file path that called save_exp
        name = name.rsplit('/')[-1].rsplit('.')[0]                  #get its name without '.py'
        self.names.append(name)
        self.exps.append(self.tests)
        self.tests = []
        ind = len(self.exps)-1
        curr_key = [key._1, key._2, key._3, key._4, key._5,
                    key._6, key._7, key._8, key._9][ind]

        if ind<=8:
            self.window.add_key_action(curr_key, self.print_exp, ind)
            self.window.add_key_action(curr_key, self.load_exp, ind)
            self.window.add_key_action(curr_key, self.begin, True)
        if ind==0: print '\nScheduler key assignments:'
        print key.symbol_string(curr_key) + ' - ' + name
Exemple #37
0
 def on_key_press(self, key, modifiers):
     k = symbol_string(key)
     status = True
     if k == "LEFT":
         self.key_pressed_left = status
     elif k == "RIGHT":
         self.key_pressed_right = status
     elif k == "SPACE" and self.life == 1:
         if self.jump_count > 0:
             x, y = self.sprite.position
             try:
                 self.remove(self.jump1)
             except:
                 pass
             # jump效果图
             self.jump1 = Sprite("images/jump.png")
             self.jump1.opacity = 250
             self.jump1.position = (x, y-100)
             self.add(self.jump1)
             self.jump_speed = 20
             self.jump_y = y
             self.key_pressed_up = True
             self.jump_count -= 1
     elif k == "DOWN":
         self.key_pressed_down = status
     elif k == "SPACE" and self.life == 0:
         scene = Scene(GameLayer())
         director.replace(SplitColsTransition(scene))
Exemple #38
0
def onKeyPressHandler(p_key, p_mods):
    """
    :param p_key:
    :param p_mods:
    """
    format_str = 'Key pressed: "{}" mods: {}'
    char = key.symbol_string(p_key)
    label.text = format_str.format(char, p_mods)
Exemple #39
0
 def on_key_press(self, key, modifiers):
     self.keys_pressed.add(key)
     self.snake.update_angle(self.keys_pressed)
     #按下空格蛇加速
     if symbol_string(key) == "SPACE":
         self.accel.play(-1)
         self.accel.isPlaying = True
         self.snake.speed = 300
Exemple #40
0
 def on_mouse_release(self, x, y, key, m):
     k = symbol_string(key)
     status = False
     if k == '1':
         self.page_is_pressing = status
         self.mouse_press_left = status
     elif k == '4':
         self.mouse_press_right = status
Exemple #41
0
 def on_mouse_release(self, x, y, key, m):
     k = symbol_string(key)
     status = False
     if k == '1':
         self.page_is_pressing = status
         self.mouse_press_left = status
     elif k == '4':
         self.mouse_press_right = status
    def on_key_press(self, symbol, modifiers):
        print 'Pressed %s with modifiers %s' % \
            (key.symbol_string(symbol), key.modifiers_string(modifiers))

        if symbol == key.E:
            exclusive = not (modifiers & key.MOD_SHIFT)
            self.w.set_exclusive_keyboard(exclusive)
            print 'Exclusive keyboard is now %r' % exclusive
Exemple #43
0
 def on_key_press(self, key, m):
     k = symbol_string(key)
     if k == 'S':        # 按S键保存
         self.save_file('levelfile/level'+str(self.save_as)+'.txt', self.blocks)
         self.reset_level_select()
         self.saveflag.element.text = '已保存'
     elif k == 'P':      # 按P键开始游戏
         scenes = Scene(main.Background(), main.Start())
         director.replace(SplitColsTransition(scenes))
Exemple #44
0
 def on_key_press(self, key, mi):
     k = symbol_string(key)
     if (k == 'R') or (k == 'C'):
         if k == 'R':
             scene = Scene(GameLayer())
         elif k == 'C':
             print(1)
             scene = Scene(GameLayer(self.levels, self.gold, self.deadcount))
         director.replace(scene)
Exemple #45
0
 def on_key_press(self, key, modifiers):
     k = symbol_string(key)
     status = True
     if k == 'LEFT':
         self.key_pressed_left = status
     elif k == 'RIGHT':
         self.key_pressed_right = status
     elif k == 'UP':
         self.key_pressed_up = status
Exemple #46
0
 def on_key_press(self, key, mi):
     k = symbol_string(key)
     print(k)
     if k =='S':
         scenes = Scene(GuoCangDongHua())
         director.replace(SplitColsTransition(scenes))
     elif k == 'E':
         scenes = Scene(editor.Editor())
         director.replace(SplitColsTransition(scenes))
	def on_key_release(self, key, modifiers):
		k = symbol_string(key)
		print('release', k)
		if k == "LEFT":
			self.key_pressed_left = False
		if k == "RIGHT":
			self.key_pressed_right = False
		if k == "UP":
			self.key_pressed_up = False
    def on_key_press(self, symbol, modifiers):
        volume = self.song.get_volume()
        if symbol_string(symbol) == "LEFT" and volume > 0.0:
            volume = round(volume - 0.1, 1)
        if symbol_string(symbol) == "RIGHT" and volume < 1.0:
            volume = round(volume + 0.1, 1)
        self.song.set_volume(volume)

        if symbol == key.LEFT:
            self.idx = max(0, self.idx - 1)
        elif symbol == key.RIGHT:
            self.idx = min(len(self.items) - 1, self.idx + 1)

        if symbol in (key.LEFT, key.RIGHT, key.ENTER):
            self.item.text = self._get_label()
            self.item_selected.text = self._get_label()
            self.callback_func(self.idx)
            return True
Exemple #49
0
 def on_key_press(self, key, m):
     k = symbol_string(key)
     print(k)
     if k == 'S':
         self.save_file('levelfile/level1.txt', self.pos)
         self.saveflag.element.text = '已保存'
     elif k == 'P':
         scenes = Scene(main.Start())
         director.replace(SplitColsTransition(scenes))
	def on_key_press(self, key, modifiers):
		k = symbol_string(key)
		status = True
		if k == "LEFT":
			self.key_pressed_left = status
		elif k == "RIGHT":
			self.key_pressed_right = status
		elif k == "UP":
			self.key_pressed_up = status
Exemple #51
0
    def _is_correct_modifier_key(self, symbol):
        modifier = self._get_modifier_for_key(symbol)
        if modifier == 0:
            return False

        if not self.chosen_modifiers & modifier:
            self.fail_test('Unexpected modifier key "{}"'.format(key.symbol_string(symbol)))

        return True
Exemple #52
0
    def _update_question(self):
        self.question = """Please hold <Shift> and press:

{} ({})


Press Esc if test does not pass.""".format(key.motion_string(self.chosen_key),
                                           key.symbol_string(self.chosen_key))
        self._render_question()
Exemple #53
0
 def on_key_press(self, key, modifiers):
     k = symbol_string(key)
     if k == "UP":
         self.j -= 1
         if self.j < 0:
             self.j = 0
         if self.j == 2:
             self.label1.element.text = "纸醉金迷"
         elif self.j == 1:
             self.label1.element.text = "交易赌局"
         elif self.j == 0:
             self.label1.element.text = "金钱崇拜"
     elif k == "DOWN":
         self.j += 1
         if self.j > 2:
             self.j = 2
         if self.j == 2:
             self.label1.element.text = "纸醉金迷"
         elif self.j == 1:
             self.label1.element.text = "交易赌局"
         elif self.j == 0:
             self.label1.element.text = "金钱崇拜"
     elif k == "LEFT":
         self.i -= 1
         if self.i < 0:
             self.i = 0
         if self.i == 2:
             self.label.element.text = "爷爷"
         elif self.i == 1:
             self.label.element.text = "爸爸"
         elif self.i == 0:
             self.label.element.text = "老公"
         self.remove(self.sprite)
         self.sprite = Sprite(role_choose[self.i])
         self.sprite.position = (500, 450)
         self.add(self.sprite)
     elif k == "RIGHT":
         self.i += 1
         if self.i > 2:
             self.i = 2
         if self.i == 2:
             self.label.element.text = "爷爷"
         elif self.i == 1:
             self.label.element.text = "爸爸"
         elif self.i == 0:
             self.label.element.text = "老公"
         self.remove(self.sprite)
         self.sprite = Sprite(role_choose[self.i])
         self.sprite.position = (500, 450)
         self.add(self.sprite)
     elif k == "SPACE":
         global choose_i, choose_j
         choose_i = self.i
         choose_j = self.j
         print(choose_i)
         scene = Scene(GameLayer())
         director.replace(SplitColsTransition(scene))
Exemple #54
0
 def on_key_press(self, key, mi):
     if self.is_on_exiting:
         k = symbol_string(key)
         if (k == 'R') or (k == 'C'):
             self.is_on_exiting = False
             if k == 'R':
                 scene = create_scene(Start())
             elif k == 'C':
                 scene = create_scene(GameLayer(self.hud))
             director.replace(SplitColsTransition(scene))
 def _on_pyglet_keypress(self, symbol, modifiers, emulated=False):
     """Handler for on_key_press pyglet events"""
     key_time = clock()
     if emulated:
         this_key = str(symbol)
     else:
         from pyglet.window import key
         this_key = key.symbol_string(symbol).lower()
         this_key = this_key.lstrip('_').lstrip('NUM_')
     self._keyboard_buffer.append((this_key, key_time))
Exemple #56
0
    def save_exp(self, rest_time=1):
        name = inspect.getouterframes(inspect.currentframe())[1][1] #get the file path that called save_exp
        name = name.rsplit('/')[-1].rsplit('.')[0]                  #get its name without '.py'
        if name == 'rest': #the stimulus between experiments
            self.rest.append(self.tests)
        else: #regular experiment
            self.names.append(name)
            self.exps.append(self.tests)
            self.tests = [[]] #the first inner parens for the rest procedure
            ind = len(self.exps)-1
            curr_key = [key._1, key._2, key._3, key._4, key._5,
                        key._6, key._7, key._8, key._9][ind]

            if ind<=8:
                self.window.add_key_action(curr_key, self.print_exp, ind)
                self.window.add_key_action(curr_key, self.load_exp, ind)
                self.window.add_key_action(curr_key, self.begin, True)
            if ind==0: print '\nScheduler key assignments:'
            print key.symbol_string(curr_key) + ' - ' + name