def Update(self):
     self.counter += 1
     if self.counter == 3:
         #self.PlaySound('phase_complete.ogg')
         levelseed = GamePlay.LevelSeed('next',
                                        self.prevPlayScene.levelSeed,
                                        self.prevPlayScene.level)
         if levelseed.won:
             self.next = GamePlay.WinScene(self.prevPlayScene)
         else:
             self.nextPlayScene = GamePlay.PlayScene(levelseed)
     elif self.counter == 69:
         self.next = self.nextPlayScene
         camOff = self.next.level.initCameraOffset
         if camOff != None:
             self.next.cameraX = self.prevPlayScene.cameraX + camOff[0] * 32
             self.next.cameraY = self.prevPlayScene.cameraY + camOff[1] * 32
    def ProcessInput(self, events):

        for event in events:
            if event.type == pygame.MOUSEBUTTONUP and event.button == 1:
                x = event.pos[0] + self.cameraX
                y = event.pos[1] + self.cameraY

                pressed = pygame.key.get_pressed()
                if pressed[pygame.K_LCTRL] or pressed[
                        pygame.K_RCTRL] or pressed[pygame.K_LSHIFT] or pressed[
                            pygame.K_RSHIFT]:
                    #TODO: figure out why this gets called even when shift/ctrl isn't pressed
                    #self.ToggleSelection(self.dragStart, (x, y))
                    self.SetSelection(self.dragStart, (x, y))
                else:
                    self.SetSelection(self.dragStart, (x, y))
                self.dragStart = None

            elif event.type == pygame.MOUSEBUTTONDOWN and event.button == 1:
                x = event.pos[0] + self.cameraX
                y = event.pos[1] + self.cameraY
                self.dragStart = (x, y)
                self.suppressDragDraw = False

            elif event.type == pygame.MOUSEMOTION:
                self.cursorScreenPosition = event.pos
                x = event.pos[0] + self.cameraX
                y = event.pos[1] + self.cameraY
                self.cursorLogicalPosition = (x, y)

            elif event.type == pygame.MOUSEBUTTONDOWN and event.button == 3:
                self.MoveSelectionToTarget(event.pos[0] + self.cameraX,
                                           event.pos[1] + self.cameraY)

            elif event.type == pygame.KEYDOWN:
                if event.key == pygame.K_ESCAPE:
                    self.next = Menus.GamePauseMenu(self)
                if event.key == pygame.K_F7:
                    for sprite in self.level.citizens:
                        sprite.Decolorize()
                if event.key == pygame.K_F8:
                    self.next = GamePlay.WinScene(self)