Study
LÖVE2D

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.

Editor Latihan

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.