1function love.conf(t)2 t.title = "topdown_lua"-- Titre de la fenetre3 t.window.width = 360-- Largeur de la fenetre4 t.window.height = 240-- Hauteur de la fenetre5 t.window.resizable = true-- Laissez la fenetre être redimensionnable6 t.window.borderless = false-- Supprime toutes les bordures de la fenetre7end
player.lua
1-- 1. la table qui va contenir toutes les données et fonctions du player2local Player = {}34------------------------------------------------------------56-- 2. initialisation du player (position, vitesse, sprite)7function Player.load()8 Player.x = 160-- position en x du player9 Player.y = 120-- position en y du player10 Player.speed = 2-- vitesse du player11 Player.sprite = love.graphics.newImage("sprites/player.png") -- sprite12end1314------------------------------------------------------------1516-- 3. mouvement du player (appelé à chaque frame)17function Player.update(dt) -- dt = delta time (temps écoulé depuis la dernière frame)1819-- c o n t r o l l e r --2021if love.keyboard.isDown("up") then-- mouvement haut22 Player.y = Player.y - Player.speed23end2425if love.keyboard.isDown("down") then-- mouvement bas26 Player.y = Player.y + Player.speed27end2829if love.keyboard.isDown("right") then-- mouvement droite30 Player.x = Player.x + Player.speed31end3233if love.keyboard.isDown("left") then-- mouvement gauche34 Player.x = Player.x - Player.speed35end3637end3839------------------------------------------------------------4041-- 4. affichage du player42function Player.draw()43 love.graphics.draw(Player.sprite, Player.x, Player.y) -- afficher un sprite (sprite, x, y)44end4546------------------------------------------------------------4748-- 5. on renvoie la table pour que main.lua puisse la récupérer avec require("player")49return Player
main.lua
1function love.conf(t)2 t.title = "topdown_lua"-- Titre de la fenetre3 t.window.width = 360-- Largeur de la fenetre4 t.window.height = 240-- Hauteur de la fenetre5 t.window.resizable = true-- Laissez la fenetre être redimensionnable6 t.window.borderless = false-- Supprime toutes les bordures de la fenetre7end