Пример #1
0
                                    anchor=kytten.ANCHOR_CENTER,
                                    theme=gTheme,
                                    on_escape=on_escape)


if __name__ == '__main__':
    window = pyglet.window.Window(800,
                                  600,
                                  caption='Kytten Theme Editor',
                                  resizable=True,
                                  vsync=True)
    batch = pyglet.graphics.Batch()
    bg_group = pyglet.graphics.OrderedGroup(0)
    fg_group = pyglet.graphics.OrderedGroup(1)

    # Update as often as possible (limited by vsync, if not disabled)
    window.register_event_type('on_update')

    def update(dt):
        window.dispatch_event('on_update', dt)

    pyglet.clock.schedule(update)

    # StateManager keeps track of what we're doing
    manager = StateManager(window)

    # Start off by picking the theme directory
    manager.push(ThemeDirSelectState())

    pyglet.app.run()
Пример #2
0
                "kytten Image Editor", kytten.Scrollable(kytten.VerticalLayout(content), width=750, height=500)
            ),
            window=window,
            anchor=kytten.ANCHOR_CENTER,
            theme=gTheme,
            on_escape=on_escape,
        )


if __name__ == "__main__":
    window = pyglet.window.Window(800, 600, caption="Kytten Theme Editor", resizable=True, vsync=True)
    batch = pyglet.graphics.Batch()
    bg_group = pyglet.graphics.OrderedGroup(0)
    fg_group = pyglet.graphics.OrderedGroup(1)

    # Update as often as possible (limited by vsync, if not disabled)
    window.register_event_type("on_update")

    def update(dt):
        window.dispatch_event("on_update", dt)

    pyglet.clock.schedule(update)

    # StateManager keeps track of what we're doing
    manager = StateManager(window)

    # Start off by picking the theme directory
    manager.push(ThemeDirSelectState())

    pyglet.app.run()
Пример #3
0
if __name__ == '__main__':
    window = pyglet.window.Window( 800, 600, caption='Kytten Theme Editor', resizable=True, vsync=True)
    batch = pyglet.graphics.Batch()
    bg_group = pyglet.graphics.OrderedGroup(0)
    fg_group = pyglet.graphics.OrderedGroup(1)

    # Update as often as possible (limited by vsync, if not disabled)
    window.register_event_type('on_update')
    def update(dt):
        window.dispatch_event('on_update', dt)
    pyglet.clock.schedule(update)

    # StateManager keeps track of what we're doing
    manager = StateManager(window)

    parser = argparse.ArgumentParser()

    parser.add_argument('-p', "--theme-path", help='path to theme json')
    parser.add_argument('-c', '--charsets', help='Specify number of character sets in file vertival & horizontal.')
    parser.add_argument("-f", '--frames', help="display list of backup folder")

    args = parser.parse_args()

    if args.theme_path:
        manager.push(ThemeFileSelectState(args.theme_path))
    else:# Start off by picking the theme directory
        manager.push(ThemeDirSelectState())

    pyglet.app.run()
Пример #4
0
class GameController():
    def __init__(self, model, view):
        pygame.init()
        self.model = model
        self.view = view
        self.state_manager = StateManager()
        self.state_manager.push(States.MENU)

    def update(self):
        state = self.state_manager.current()
        events = pygame.event.get()
        keyboard_events = [e for e in events if e.type == pygame.KEYDOWN]
        # ---
        if state == States.MENU:
            self.handle_menu(keyboard_events)
            self.view.draw_menu(self.model.menu)
        elif state == States.PLAY:
            self.handle_play(keyboard_events)
            self.view.draw_play(self.model.play)
        elif state == States.CONTINUE:
            pass
        elif state == States.WIN:
            self.view.draw_win()
        elif state == States.LOSE:
            pass
        elif state == States.EXIT:
            self.handle_exit()
        # ---
        for event in events:
            if event.type == pygame.QUIT:
                sys.exit()
        pygame.display.flip()

    def handle_menu(self, keyboard_events):
        menu = self.model.menu
        for event in keyboard_events:
            if (event.key == pygame.K_UP):
                menu.select_previous()
            elif (event.key == pygame.K_DOWN):
                menu.select_next()
            elif (event.key == pygame.K_SPACE):
                selected_state = menu.get_option_selected_state()
                self.state_manager.push(selected_state)

    def handle_play(self, keyboard_events):
        play = self.model.play
        for event in keyboard_events:
            if (event.key == pygame.K_UP):
                play.move_cursor_up()
            elif (event.key == pygame.K_DOWN):
                play.move_cursor_down()
            elif (event.key == pygame.K_LEFT):
                play.move_cursor_left()
            elif (event.key == pygame.K_RIGHT):
                play.move_cursor_right()
            elif (event.key == pygame.K_SPACE):
                play.toggle_cursor_carry()
            elif (event.key == pygame.K_RETURN):
                play.make_guess(self.state_manager)

    def handle_continue(self, keyboard_events):
        pass

    def handle_win(self, keyboard_events):
        pass

    def handle_lose(self, keyboard_events):
        pass

    def handle_exit(self):
        sys.exit()