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


Python Layer.blit方法代码示例

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


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

示例1: GameMenu

# 需要导入模块: from layer import Layer [as 别名]
# 或者: from layer.Layer import blit [as 别名]
class GameMenu(State):
    def __init__(self, *args, **kwargs):
        State.__init__(self, *args, **kwargs)
        self.state_vars["MENU"] = self
        self.surface = None
        self.clock = None
        self.controls = None
        self.font = None
        self.exit = False
        self.buttons = None
        self.setup()

    def setup(self):
        self.surface = Layer(GameConfig.SCREEN_SIZE)
        self.surface.fill(GameConfig.MENU_COLOR)
        self.clock = pygame.time.Clock()
        self.controls = EventControl({
            pygame.QUIT: self.quit,
            pygame.MOUSEMOTION: self.mouse_movement_event
        })
        self.font = pygame.font.Font(None, GameConfig.MENU_FONT_SIZE)
        self.buttons = [
            self.font.render("Start", True, GameConfig.MENU_TEXT_COLOR),
            self.font.render("Options", True, GameConfig.MENU_TEXT_COLOR),
            self.font.render("Exit", True, GameConfig.MENU_TEXT_COLOR)
        ]

    def run(self):
        while not self.exit:
            self.clock.tick(GameConfig.FRAMES_PER_SECOND)
            self.controls.poll_event()
            self.draw_menu()
            Layer.update()

        return None

    def draw_menu(self):
        offset = 0
        for button in self.buttons:
            self.surface.blit(button, ((self.surface.get_width() - button.get_width()) / 2,
                                       (self.surface.get_height() - button.get_height()) / 2 + offset))
            offset += button.get_height() + GameConfig.MENU_TEXT_OFFSET

    def mouse_movement_event(self, event):
        for button in self.buttons:
            if button.get_rect(left=self.surface.get_width() - 100).collidepoint(event.pos):
                print button

    def quit(self, event):
        self.exit = True
开发者ID:youngkingtut,项目名称:PygameTemplate,代码行数:52,代码来源:game.py


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