# love.update

Callback function used to update the state of the game every frame.

## Function

### Synopsis

    love.update( dt )

### Arguments

`number dt`
  Time since the last update in seconds.

### Returns

Nothing.

## Examples

Run a function called think inside a table called npc once per second.

    dtotal = 0   -- this keeps track of how much time has passed
    function love.update(dt)
       dtotal = dtotal + dt   -- we add the time passed since the last update, probably a very small number like 0.01
       if dtotal >= 1 then
          dtotal = dtotal - 1   -- reduce our timer by a second, but don't discard the change... what if our framerate is 2/3 of a second?
          npc.think()
       end
    end

Change a variable var at a constant rate (+/- 3 per second in this example).

    var = 10   -- arbitrary starting value
    rate = 3   -- change to change the rate at which the var is changed
    function love.update(dt)
       if love.keyboard.isDown("down") then   -- reduce the value
          var = var - (dt * rate)
       end
       if love.keyboard.isDown("up") then   -- increase the value
          var = var + (dt * rate)
       end
    end

## See Also

- love
- World:update
- variable

##

Category:

- Callbacks