love.run (Polski)

Główna funkcja LÖVE, zawierająca główną pętle aplikacji. LÖVE zapewnia sensowną domyślną implementację, także najczęściej nie ma potrzeby jej nadpisywać.

Funkcja

Sygnatura

love.run( )

Argumenty

Brak.

Wartość zwracana

Żadna

Przykłady

Domyślna implementacja funkcja w wersji 0.9.0

function love.run()

    if love.math then
        love.math.setRandomSeed(os.time())
    end

    if love.event then
        love.event.pump()
    end

    if love.load then love.load(arg) end

    -- Nie chcemy, by czas jaki zajęło wywołanie funkcji load miał wpływ
        -- na  wartość zmiennej dt przekazanej przy pierwszym wywołaniu love.update
    if love.timer then love.timer.step() end

    local dt = 0

    -- Główna pętla
    while true do
        -- Przetwarzanie zdarzeń
        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

        -- Uaktualnij wartość dt, która będzie przekazana do love.update
        if love.timer then
            love.timer.step()
            dt = love.timer.getDelta()
        end

        -- Wywołanie funkcji love.update oraz love.draw
        if love.update then love.update(dt) end -- jeżeli moduł love.timer został wyłączony, jako dt zostanie przekazane  0

        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

Domyślna implementacja funkcja w wersji 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

    -- Główna pętla
    while true do
        -- Przetwarzanie zdarzeń
        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

        -- Uaktualnij wartość dt, która będzie przekazana do love.update
        if love.timer then
            love.timer.step()
            dt = love.timer.getDelta()
        end

        -- Wywołanie funkcji love.update oraz love.draw
        if love.update then love.update(dt) end  -- jeżeli moduł love.timer został wyłączony, jako dt zostanie przekazane  0

        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

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

    -- Główna pętla
    while true do
        if love.timer then
            love.timer.step()
            dt = love.timer.getDelta()
        end
        if love.update then love.update(dt) end -- jeżeli moduł love.timer został wyłączony, jako dt zostanie przekazane  0
        if love.graphics then
            love.graphics.clear()
            if love.draw then love.draw() end
        end

        -- Przetwarzanie zdarzeń
        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

Zobacz również


Inne języki

Personal tools