当前位置: 首页>>代码示例>>Python>>正文


Python EventManager.run方法代码示例

本文整理汇总了Python中event_manager.EventManager.run方法的典型用法代码示例。如果您正苦于以下问题:Python EventManager.run方法的具体用法?Python EventManager.run怎么用?Python EventManager.run使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在event_manager.EventManager的用法示例。


在下文中一共展示了EventManager.run方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。

示例1: Window

# 需要导入模块: from event_manager import EventManager [as 别名]
# 或者: from event_manager.EventManager import run [as 别名]
class Window():
    def __init__(self,):
        """
        Définit une Window et un screen qui y est dessiné
        """
        self.surface = pygame.display.set_mode((1024, 574), pg.DOUBLEBUF)
        pygame.display.set_caption("Dunwall's Gate")
        self.eventmanager = EventManager(self)
        self._screen = None
        self.game = None
        self.set_screen(HomeScreen())
        self.fpsClock = pygame.time.Clock()
        self.do_run = True

    def set_screen(self, screen):
        """
        Définit l'écran affiché dans la Window
        """
        if self._screen is not None:
            self._screen.surface.fill(0)
            self._screen.shutdown()
            self.eventmanager.purge_callbacks(self._screen)
        self._screen = screen
        self._screen.start(self, self.eventmanager)

    def set_do_run(self, value=True):
        self.do_run = value

    def start_game(self, game):
        self.game = game
        game.start(self)

    def run(self):
        """
        Lance le jeu
        """
        self.eventmanager.on_quit(lambda x: self.set_do_run(False), "global")
        while self.do_run:
            self._screen.update()
            self._screen.draw()
            if self.game:
                self.game.game_event.update()
            self.eventmanager.run(pygame.event.get())
            pygame.display.flip()
            self.fpsClock.tick(FPS)
        pygame.quit()
开发者ID:PaulEcoffet,项目名称:stonewallsgate,代码行数:48,代码来源:window.py


注:本文中的event_manager.EventManager.run方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。