- First commit
This commit is contained in:
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
@@ -0,0 +1,2 @@
|
||||
mini
|
||||
mini_debug
|
||||
5
data/game.ini
Normal file
5
data/game.ini
Normal file
@@ -0,0 +1,5 @@
|
||||
title=MiniPilotes
|
||||
config=minipilotes
|
||||
width=320
|
||||
height=240
|
||||
zoom=2
|
||||
BIN
data/gfx.gif
Normal file
BIN
data/gfx.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 4.7 KiB |
74
data/main.lua
Normal file
74
data/main.lua
Normal file
@@ -0,0 +1,74 @@
|
||||
pilota = {
|
||||
x=10,
|
||||
y=10,
|
||||
dx=1,
|
||||
dy=1
|
||||
}
|
||||
|
||||
abad = {
|
||||
x=120,
|
||||
frame = 1,
|
||||
animation = {0,1,0,2},
|
||||
flip = false
|
||||
}
|
||||
|
||||
function mini.init()
|
||||
-- Si no declarem una variable com a "local", per defecte es global
|
||||
grafics = surf.load("gfx.gif")
|
||||
surf.source(grafics)
|
||||
|
||||
-- Esta de baix es local, mor quan eixim de la funció
|
||||
local p = pal.load("gfx.gif")
|
||||
pal.set(p)
|
||||
-- Ai! aleshores petarà la paleta? No, "pal.set" agafa els valors de la paleta i els copia
|
||||
-- a la paleta de sistema
|
||||
-- Pero en el de dalt, la surface, tampoc haguera petat, perque el que torna surf.load en
|
||||
-- realitat es un numeret. A surf.source li havem dit que use eixe numeret, no la variable
|
||||
|
||||
-- Açò diu que, si cridem a sys.beat() sense paràmetres, nomes tornarà true cada 10 frames
|
||||
sys.beat(10)
|
||||
|
||||
-- També està sys.delta() i altres, mes adequats si vols total independència del frame rate
|
||||
end
|
||||
|
||||
function mini.update()
|
||||
surf.cls(16)
|
||||
|
||||
-- Pintar la pilota
|
||||
draw.surf(112,16,16,16,pilota.x,pilota.y)
|
||||
|
||||
-- Que rebote en les vores de la pantalla
|
||||
if pilota.x > 304 then pilota.dx = -1 end
|
||||
if pilota.x < 0 then pilota.dx = 1 end
|
||||
if pilota.y > 224 then pilota.dy = -1 end
|
||||
if pilota.y < 0 then pilota.dy = 1 end
|
||||
|
||||
-- Moure la pilota
|
||||
pilota.x = pilota.x + pilota.dx
|
||||
pilota.y = pilota.y + pilota.dy
|
||||
|
||||
-- Pintem al Abad
|
||||
draw.surf(abad.animation[abad.frame]*16, 0, 16,16, abad.x, 206,16,16, abad.flip)
|
||||
|
||||
-- Cada 10 frames, comprobem el teclat i movem al abad si toca
|
||||
if sys.beat() then
|
||||
if key.down(key.RIGHT) then
|
||||
abad.flip = false
|
||||
abad.x = abad.x + 4
|
||||
abad.frame = abad.frame + 1
|
||||
if abad.frame == 5 then abad.frame = 1 end
|
||||
elseif key.down(key.LEFT) then
|
||||
abad.flip = true
|
||||
abad.x = abad.x - 4
|
||||
abad.frame = abad.frame + 1
|
||||
if abad.frame == 5 then abad.frame = 1 end
|
||||
end
|
||||
end
|
||||
|
||||
-- Si pulsem ESC eixim.
|
||||
-- key.down() mira si la tecla està pulsada o no.
|
||||
-- key.press() mira si s'ha pulsat la tecla (pulsar i soltar).
|
||||
if key.press(key.ESCAPE) then
|
||||
sys.quit()
|
||||
end
|
||||
end
|
||||
Reference in New Issue
Block a user