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