Difference between revisions of "love.event.wait"
Shingoscar (talk | contribs) m (Add the return value nil) |
Shingoscar (talk | contribs) (Add an example) |
||
Line 19: | Line 19: | ||
{{param|Variant|f|Sixth event argument.}} | {{param|Variant|f|Sixth event argument.}} | ||
{{param|Variant|...|Further event arguments may follow.}} }} | {{param|Variant|...|Further event arguments may follow.}} }} | ||
+ | == Examples == | ||
+ | An example that replace <code>[[love.event.poll]]()</code> with this function. | ||
+ | <source lang="lua"> | ||
+ | function love.run() | ||
+ | if love.load then love.load(love.arg.parseGameArguments(arg), arg) end | ||
+ | |||
+ | -- Main loop time. | ||
+ | return function() | ||
+ | -- Process events. | ||
+ | if love.event then | ||
+ | local name, a,b,c,d,e,f = love.event.wait() | ||
+ | if name then | ||
+ | if name == "quit" then | ||
+ | if not love.quit or not love.quit() then | ||
+ | return a or 0 | ||
+ | end | ||
+ | end | ||
+ | love.handlers[name](a,b,c,d,e,f) | ||
+ | end | ||
+ | end | ||
+ | |||
+ | -- Call update and draw | ||
+ | if love.update then love.update(0) end | ||
+ | |||
+ | if love.graphics and love.graphics.isActive() then | ||
+ | love.graphics.origin() | ||
+ | love.graphics.clear(love.graphics.getBackgroundColor()) | ||
+ | |||
+ | if love.draw then love.draw() end | ||
+ | |||
+ | love.graphics.present() | ||
+ | end | ||
+ | end | ||
+ | end | ||
+ | </source> | ||
== See Also == | == See Also == | ||
* [[parent::love.event]] | * [[parent::love.event]] |
Latest revision as of 07:51, 19 October 2020
Available since LÖVE 0.6.0 |
This function is not supported in earlier versions. |
Like love.event.poll()
, but blocks until there is an event in the queue.
Function
Synopsis
n, a, b, c, d, e, f, ... = love.event.wait( )
Arguments
None.
Returns
Event n (nil)
- The name of event, or nil if the event is unrecognized.
Variant a
- First event argument.
Variant b
- Second event argument.
Variant c
- Third event argument.
Available since LÖVE 0.8.0
Variant d
- Fourth event argument.
Available since LÖVE 0.10.0
Examples
An example that replace love.event.poll()
with this function.
function love.run()
if love.load then love.load(love.arg.parseGameArguments(arg), arg) end
-- Main loop time.
return function()
-- Process events.
if love.event then
local name, a,b,c,d,e,f = love.event.wait()
if name then
if name == "quit" then
if not love.quit or not love.quit() then
return a or 0
end
end
love.handlers[name](a,b,c,d,e,f)
end
end
-- Call update and draw
if love.update then love.update(0) end
if love.graphics and love.graphics.isActive() then
love.graphics.origin()
love.graphics.clear(love.graphics.getBackgroundColor())
if love.draw then love.draw() end
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