Пример #1
0
    def run(self):

        self.clock.tick(self.fps)
        
        for event in pygame.event.get():
            for group in self.groups:
                for sprite in group:
                    sprite.doEvent(event)
            self.doEvent(event)
            
            """
                Handle event return
            """
            if event.type == pygame.QUIT:
                self.retval = self.ON_QUIT
            elif event.type == pygame.KEYDOWN:
                self.retval = self.ON_KEYDOWN
            elif event.type == pygame.KEYUP:
                self.retval = self.ON_KEYUP
            elif event.type == pygame.MOUSEBUTTONDOWN:
                self.retval = self.ON_MOUSEDOWN
            elif event.type == pygame.MOUSEMOTION:
                self.retval = self.ON_MOUSEMOTION
            elif event.type == pygame.MOUSEBUTTONUP:
                self.retval = self.ON_MOUSEUP
        
        self.update()
        for group in self.groups:
            group.update()
            group.clear(self.screen, self.background)
            group.draw(self.screen)
            
        """
            Handle fade in and out effect
        """
        if (self.fadeState == self.FADE_IN):
            self.fadeAlpha -= self.FADE_SPEED
            if (self.fadeAlpha == self.FADE_ALPHA_MIN):
                self.fadeState = self.FADE_NONE
        elif (self.fadeState == self.FADE_OUT):
            self.fadeAlpha += self.FADE_SPEED
            if (self.fadeAlpha == self.FADE_ALPHA_MAX):
                self.fadeState = self.FADE_NONE
                """ 
                    Termiante scene if fade terminate is set, thus ending scene on fade out
                """
                if (self.fadeTerminate):
                    self.retval = self.ON_TERMINATE
                    
                    
        self.fadeBackground.set_alpha(self.fadeAlpha)
        self.screen.blit(self.fadeBackground, (0,0))
        pygame.display.flip()
        
        return self.retval
Пример #2
0
    def run(self):

        self.clock.tick(self.fps)

        for event in pygame.event.get():
            for group in self.groups:
                for sprite in group:
                    sprite.doEvent(event)
            self.doEvent(event)
            """
                Handle event return
            """
            if event.type == pygame.QUIT:
                self.retval = self.ON_QUIT
            elif event.type == pygame.KEYDOWN:
                self.retval = self.ON_KEYDOWN
            elif event.type == pygame.KEYUP:
                self.retval = self.ON_KEYUP
            elif event.type == pygame.MOUSEBUTTONDOWN:
                self.retval = self.ON_MOUSEDOWN
            elif event.type == pygame.MOUSEMOTION:
                self.retval = self.ON_MOUSEMOTION
            elif event.type == pygame.MOUSEBUTTONUP:
                self.retval = self.ON_MOUSEUP

        self.update()
        for group in self.groups:
            group.update()
            group.clear(self.screen, self.background)
            group.draw(self.screen)
        """
            Handle fade in and out effect
        """
        if (self.fadeState == self.FADE_IN):
            self.fadeAlpha -= self.FADE_SPEED
            if (self.fadeAlpha == self.FADE_ALPHA_MIN):
                self.fadeState = self.FADE_NONE
        elif (self.fadeState == self.FADE_OUT):
            self.fadeAlpha += self.FADE_SPEED
            if (self.fadeAlpha == self.FADE_ALPHA_MAX):
                self.fadeState = self.FADE_NONE
                """ 
                    Termiante scene if fade terminate is set, thus ending scene on fade out
                """
                if (self.fadeTerminate):
                    self.retval = self.ON_TERMINATE

        self.fadeBackground.set_alpha(self.fadeAlpha)
        self.screen.blit(self.fadeBackground, (0, 0))
        pygame.display.flip()

        return self.retval
Пример #3
0
 def run(self):
     self.clock.tick(self.fps)
     for event in pygame.event.get():
         for group in self.groups:
             for sprite in group:
                 sprite.doEvent(event)
         
         if event.type == pygame.QUIT:
             self.retval = self.ON_QUIT
         elif event.type == pygame.KEYDOWN:
             self.retval = self.ON_KEYDOWN
         elif event.type == pygame.KEYUP:
             self.retval = self.ON_KEYUP
         elif event.type == pygame.MOUSEBUTTONDOWN:
             self.retval = self.ON_MOUSEDOWN
         elif event.type == pygame.MOUSEMOTION:
             self.retval = self.ON_MOUSEMOTION
         elif event.type == pygame.MOUSEBUTTONUP:
             self.retval = self.ON_MOUSEUP
     
     self.update()
     for group in self.groups:
         group.clear(self.screen, self.background)
         group.update()
         group.draw(self.screen)
         
         """
             Handle sprite objects
         """
         for sprite in group:
             try:
                 sprite.rect.x += sprite.dx
                 sprite.rect.y += sprite.dy
             except:
                 continue
                 
                 
     pygame.display.flip()
     
     return self.retval
Пример #4
0
    def run(self):
        self.clock.tick(self.fps)
        for event in pygame.event.get():
            for group in self.groups:
                for sprite in group:
                    sprite.doEvent(event)

            if event.type == pygame.QUIT:
                self.retval = self.ON_QUIT
            elif event.type == pygame.KEYDOWN:
                self.retval = self.ON_KEYDOWN
            elif event.type == pygame.KEYUP:
                self.retval = self.ON_KEYUP
            elif event.type == pygame.MOUSEBUTTONDOWN:
                self.retval = self.ON_MOUSEDOWN
            elif event.type == pygame.MOUSEMOTION:
                self.retval = self.ON_MOUSEMOTION
            elif event.type == pygame.MOUSEBUTTONUP:
                self.retval = self.ON_MOUSEUP

        self.update()
        for group in self.groups:
            group.clear(self.screen, self.background)
            group.update()
            group.draw(self.screen)
            """
                Handle sprite objects
            """
            for sprite in group:
                try:
                    sprite.rect.x += sprite.dx
                    sprite.rect.y += sprite.dy
                except:
                    continue

        pygame.display.flip()

        return self.retval