Difference between revisions of "love.run (Українська)"
(→Аргументи) |
|||
Line 1: | Line 1: | ||
− | Основна функція, містить головний цикл. Якщо упущена, то використовується стандартна реалізація цієї функції. | + | Основна функція, яка містить головний цикл. Якщо упущена, то використовується стандартна реалізація цієї функції. |
== Функція == | == Функція == | ||
=== Вигляд === | === Вигляд === | ||
Line 6: | Line 6: | ||
</source> | </source> | ||
=== Аргументи === | === Аргументи === | ||
− | + | Нетмає. | |
− | |||
=== Возвращает === | === Возвращает === | ||
Нічого. | Нічого. | ||
== Приклади == | == Приклади == | ||
− | === Стандартна функція для версії 0. | + | === Стандартна функція для версії [[0.9.0]], [[0.9.1]], і [[0.9.2]], використовується, якщо ви не написали власну. === |
<source lang="lua"> | <source lang="lua"> | ||
function love.run() | function love.run() | ||
+ | |||
+ | if love.math then | ||
+ | love.math.setRandomSeed(os.time()) | ||
+ | for i=1,3 do love.math.random() end | ||
+ | end | ||
+ | |||
+ | if love.event then | ||
+ | love.event.pump() | ||
+ | end | ||
if love.load then love.load(arg) end | if love.load then love.load(arg) end | ||
+ | |||
+ | -- We don't want the first frame's dt to include time taken by love.load. | ||
+ | if love.timer then love.timer.step() end | ||
local dt = 0 | local dt = 0 | ||
− | -- | + | -- 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 | ||
− | if love.update then love.update(dt) end -- | + | |
− | if love.graphics then | + | -- Call update and draw |
+ | if love.update then love.update(dt) end -- will pass 0 if love.timer is disabled | ||
+ | |||
+ | if love.window and love.graphics and love.window.isCreated() then | ||
love.graphics.clear() | love.graphics.clear() | ||
+ | love.graphics.origin() | ||
if love.draw then love.draw() end | if love.draw then love.draw() end | ||
+ | love.graphics.present() | ||
end | end | ||
− | -- | + | if love.timer then love.timer.sleep(0.001) end |
+ | end | ||
+ | |||
+ | end | ||
+ | </source> | ||
+ | |||
+ | === Стандартна функція для версії [[0.8.0]], використовується, якщо ви не написали власну. === | ||
+ | <source lang="lua"> | ||
+ | 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 | if love.event then | ||
− | for e,a,b,c in love.event.poll() do | + | love.event.pump() |
− | if e == " | + | 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 not love.quit or not love.quit() then | ||
if love.audio then | if love.audio then | ||
Line 42: | Line 95: | ||
end | end | ||
end | end | ||
− | love.handlers[e](a,b,c) | + | love.handlers[e](a,b,c,d) |
end | end | ||
end | end | ||
− | if love.timer then love.timer.sleep( | + | -- 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 | if love.graphics then love.graphics.present() end | ||
− | |||
end | end | ||
end | end | ||
</source> | </source> | ||
− | === Стандартна функція для версії 0. | + | === Стандартна функція для версії [[0.7.0]], [[0.7.1]] і [[0.7.2]], використовується, якщо ви не написали власну. === |
<source lang="lua"> | <source lang="lua"> | ||
function love.run() | function love.run() | ||
Line 61: | Line 126: | ||
local dt = 0 | local dt = 0 | ||
− | -- | + | -- Main loop time. |
while true do | while true do | ||
if love.timer then | if love.timer then | ||
Line 67: | Line 132: | ||
dt = love.timer.getDelta() | dt = love.timer.getDelta() | ||
end | end | ||
− | if love.update then love.update(dt) end -- | + | if love.update then love.update(dt) end -- will pass 0 if love.timer is disabled |
if love.graphics then | if love.graphics then | ||
love.graphics.clear() | love.graphics.clear() | ||
Line 73: | Line 138: | ||
end | end | ||
− | -- | + | -- Process events. |
if love.event then | if love.event then | ||
for e,a,b,c in love.event.poll() do | for e,a,b,c in love.event.poll() do | ||
if e == "q" then | if e == "q" then | ||
− | if love.audio then | + | if not love.quit or not love.quit() then |
− | + | if love.audio then | |
+ | love.audio.stop() | ||
+ | end | ||
+ | return | ||
end | end | ||
− | |||
end | end | ||
love.handlers[e](a,b,c) | love.handlers[e](a,b,c) | ||
Line 88: | Line 155: | ||
if love.timer then love.timer.sleep(1) end | if love.timer then love.timer.sleep(1) end | ||
if love.graphics then love.graphics.present() end | if love.graphics then love.graphics.present() end | ||
− | |||
end | end | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
end | end | ||
</source> | </source> | ||
Line 128: | Line 162: | ||
* [[parent::love_(Українська)]] | * [[parent::love_(Українська)]] | ||
[[Category:Callbacks]] | [[Category:Callbacks]] | ||
− | {{#set:Description=Основна функція, містить головний цикл.}} | + | {{#set:Description=Основна функція, яка містить головний цикл. Якщо упущена, то використовується стандартна реалізація цієї функції.}} |
+ | {{#set:Subcategory=General}} | ||
+ | {{#set:Since=000}} | ||
== Інші мови == | == Інші мови == | ||
{{i18n|love.run}} | {{i18n|love.run}} |
Revision as of 13:02, 27 June 2015
Основна функція, яка містить головний цикл. Якщо упущена, то використовується стандартна реалізація цієї функції.
Contents
Функція
Вигляд
love.run( )
Аргументи
Нетмає.
Возвращает
Нічого.
Приклади
Стандартна функція для версії 0.9.0, 0.9.1, і 0.9.2, використовується, якщо ви не написали власну.
function love.run()
if love.math then
love.math.setRandomSeed(os.time())
for i=1,3 do love.math.random() end
end
if love.event then
love.event.pump()
end
if love.load then love.load(arg) end
-- We don't want the first frame's dt to include time taken by love.load.
if love.timer then love.timer.step() 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.window and love.graphics and love.window.isCreated() then
love.graphics.clear()
love.graphics.origin()
if love.draw then love.draw() end
love.graphics.present()
end
if love.timer then love.timer.sleep(0.001) end
end
end
Стандартна функція для версії 0.8.0, використовується, якщо ви не написали власну.
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
Стандартна функція для версії 0.7.0, 0.7.1 і 0.7.2, використовується, якщо ви не написали власну.
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
Дивіться також
Інші мови
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