Timer & love.timer
Penjelasan
Modul `love.timer` menyediakan fungsi terkait waktu seperti `love.timer.getFPS()` untuk memantau frame rate, dan `love.timer.getTime()` untuk mendapat timestamp presisi tinggi yang berguna membuat timer kustom (misalnya cooldown skill atau durasi power-up). LÖVE2D juga otomatis mengelola `dt` di `love.update`, jadi kebanyakan kebutuhan timing sudah tercakup tanpa modul ini. Untuk kebutuhan penjadwalan seperti "jalankan aksi setelah 3 detik", pola umum LÖVE2D adalah variabel counter yang diakumulasi dengan `dt` di `love.update`, bukan `love.timer.sleep` yang akan membekukan seluruh game.
Contoh Konsep
local cooldownSkill = 0
function love.update(dt)
if cooldownSkill > 0 then
cooldownSkill = cooldownSkill - dt
end
end
function love.keypressed(key)
if key == "e" and cooldownSkill <= 0 then
print("Skill digunakan!")
cooldownSkill = 3 -- cooldown 3 detik
end
end
function love.draw()
love.graphics.print("FPS: " .. love.timer.getFPS(), 10, 10)
end
Praktikum
Buat sistem cooldown 2 detik untuk tombol "f" (misalnya menembak), dan tampilkan sisa waktu cooldown di layar.
Ketik/edit bebas di sini untuk latihan — kode ini tidak dijalankan.
Tips
Pantau `love.timer.getFPS()` selama development untuk mendeteksi drop performa lebih awal, terutama setelah menambah banyak entity atau particle system.