Difference between revisions of "love.run"
(Added 0.8.0 default love.run; removed old 0.6.x series) |
|||
Line 52: | Line 52: | ||
end | end | ||
</source> | </source> | ||
− | === The default function for 0. | + | === The default function for 0.8.0, used if you don't supply your own. === |
<source lang="lua"> | <source lang="lua"> | ||
function love.run() | function love.run() | ||
+ | |||
+ | math.randomseed(os.time()) | ||
+ | math.random() math.random() | ||
if love.load then love.load(arg) end | if love.load then love.load(arg) end | ||
Line 62: | Line 65: | ||
-- Main loop time. | -- Main loop time. | ||
while true do | while true do | ||
+ | -- Process events. | ||
+ | if love.event then | ||
+ | love.event.pump() | ||
+ | for e,a,b,c,d in love.event.poll() do | ||
+ | if e == "quit" then | ||
+ | if not love.quit or not love.quit() then | ||
+ | if love.audio then | ||
+ | love.audio.stop() | ||
+ | end | ||
+ | return | ||
+ | end | ||
+ | end | ||
+ | love.handlers[e](a,b,c,d) | ||
+ | end | ||
+ | end | ||
+ | |||
+ | -- Update dt, as we'll be passing it to update | ||
if love.timer then | if love.timer then | ||
love.timer.step() | love.timer.step() | ||
dt = love.timer.getDelta() | dt = love.timer.getDelta() | ||
end | end | ||
+ | |||
+ | -- Call update and draw | ||
if love.update then love.update(dt) end -- will pass 0 if love.timer is disabled | if love.update then love.update(dt) end -- will pass 0 if love.timer is disabled | ||
if love.graphics then | if love.graphics then | ||
Line 72: | Line 94: | ||
end | end | ||
− | + | if love.timer then love.timer.sleep(0.001) end | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | if love.timer then love.timer.sleep( | ||
if love.graphics then love.graphics.present() end | if love.graphics then love.graphics.present() end | ||
end | end | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
end | end | ||
</source> | </source> |
Revision as of 00:44, 20 February 2012
The main function, containing the main loop. A sensible default is used when left out.
Contents
Function
Synopsis
love.run( )
Arguments
None.
Returns
Nothing.
Examples
The default function for 0.7.0, 0.7.1 and 0.7.2, used if you don't supply your own.
function love.run()
if love.load then love.load(arg) end
local dt = 0
-- Main loop time.
while true do
if love.timer then
love.timer.step()
dt = love.timer.getDelta()
end
if love.update then love.update(dt) end -- will pass 0 if love.timer is disabled
if love.graphics then
love.graphics.clear()
if love.draw then love.draw() end
end
-- Process events.
if love.event then
for e,a,b,c in love.event.poll() do
if e == "q" then
if not love.quit or not love.quit() then
if love.audio then
love.audio.stop()
end
return
end
end
love.handlers[e](a,b,c)
end
end
if love.timer then love.timer.sleep(1) end
if love.graphics then love.graphics.present() end
end
end
The default function for 0.8.0, used if you don't supply your own.
function love.run()
math.randomseed(os.time())
math.random() math.random()
if love.load then love.load(arg) end
local dt = 0
-- Main loop time.
while true do
-- Process events.
if love.event then
love.event.pump()
for e,a,b,c,d in love.event.poll() do
if e == "quit" then
if not love.quit or not love.quit() then
if love.audio then
love.audio.stop()
end
return
end
end
love.handlers[e](a,b,c,d)
end
end
-- Update dt, as we'll be passing it to update
if love.timer then
love.timer.step()
dt = love.timer.getDelta()
end
-- Call update and draw
if love.update then love.update(dt) end -- will pass 0 if love.timer is disabled
if love.graphics then
love.graphics.clear()
if love.draw then love.draw() end
end
if love.timer then love.timer.sleep(0.001) end
if love.graphics then love.graphics.present() end
end
end
See Also
Other Languages
Dansk –
Deutsch –
English –
Español –
Français –
Indonesia –
Italiano –
Lietuviškai –
Magyar –
Nederlands –
Polski –
Português –
Română –
Slovenský –
Suomi –
Svenska –
Türkçe –
Česky –
Ελληνικά –
Български –
Русский –
Српски –
Українська –
עברית –
ไทย –
日本語 –
正體中文 –
简体中文 –
Tiếng Việt –
한국어
More info