-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathmain.lua
More file actions
54 lines (47 loc) · 1.56 KB
/
main.lua
File metadata and controls
54 lines (47 loc) · 1.56 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
require "player"
require "platform"
-- definimos constantes globales
WINDOW_HEIGHT = love.graphics.getHeight()
WINDOW_WIDTH = love.graphics.getWidth()
-- creamos los objetos del juego
function love.load()
-- cargamos la imagen del fondo
background = love.graphics.newImage('sprites/background.png')
-- creamos el jugador y la plataforma
player = player:new(WINDOW_WIDTH/2, WINDOW_HEIGHT/2)
platform = platform:new(0, WINDOW_HEIGHT/2)
-- cargamos la música y la reproducimos
music = love.audio.newSource("mario_soundtrack.mp3")
music:play()
end
-- lógica interna del juego, que cambia con cada frame dt
function love.update(dt)
-- se sale del juego con ESC
if love.keyboard.isDown('escape') then
love.event.quit()
end
-- actualizamos la lógica del jugador
player:update(dt)
-- comprobamos las colisiones con la plataforma
io.write("platform 1 surface: "..platform:surface().."\n")
io.write("player bottom: "..player:bottom().."\n")
if platform:surface() <= player:bottom() then
player.grounded = true
io.write("player grounded\n")
else
player.grounded = false
end
end
function love.draw()
-- dibujamos primero el fondo, para que esté detrás, escalado al tamaño de pantalla
for i = 0, WINDOW_WIDTH / background:getWidth() do
for j = 0, WINDOW_HEIGHT / background:getHeight() do
love.graphics.draw(background, i * background:getWidth(), j * background:getHeight())
end
end
-- dibujamos la plataforma
platform:draw()
-- dibujamos al jugador y su posición
player:draw()
player:log()
end