     clock: =>
         if @startedGame
             if @tick % 30 == 0
+                @checkEvents()
                 if not @waiting
-                    @checkEvents @protagonistDoneMoving
                     for name, character of @gameConfig.characters
                         @runCharacterCommand character
                     @waiting = true

                if character.trigger?
                    if character.trigger != "victory" or\
                        (character.trigger == "victory" and\
                            protagonistDoneMoving)
                        triggers[character.trigger]()
        if @protagonistDoneMoving and @protagonist.moving
            @visual.charAnimate @protagonist.index
            @protagonist.moving = false
        return

    start: ->

        return moved

    checkCanMove: (newX, newY, character) ->
        ###
            Returns true if the character CAN'T move.
        ###
        if character != @protagonist and\
          (newX < 0 or newX >= @gameManager.config.visual.grid.gridX\
          or newY < 0 or newY >= @gameManager.config.visual.grid.gridY)
            # Player is out of bounds of grid.
            return true

        if character.group?
