Added a background grass
screen(640,480,0,"Pick the Stick ")
backcolor(0,255,0)
setframetimer(20)
colorkey(0,0,0)
local player={image = loadimage("bluegirl.png"),x = screenwidth()/2,y= screenheight()/2,
speed = 3}
colorkey(255,255,255)
local stick = loadimage("stick.png")
colorkey(0,0,0)
local explosion = loadimage("explo.png")
local down = 0;leftd = 1; rightd = 2;up = 3
local step = 0;explosions = false
local key = 0;sticks = 0;x = rnd()*100;y =rnd()*100;expx = 0
local keyCodes = {LEFTDIR = 276,RIGHTDIR = 275,UPDIR = 273,DOWNDIR = 274,ESC=27}
local side = down; stickx = 0;sticky = 0;delay=0
local grass = loadimage("grass.bmp")
colorkey(0,0,0)
myfont = loadbmpfont("font.bmp",3,20," ! '() ,-./0123456789:; ? ABCDEFGHIJKLMNOPQRSTUVWXYZ_")
sound = loadsound("boom.wav")
--'function for the animation, not needed, just for function introduction
function SpriteAnim(width,height,xcoord,ycoord,image,step,side)
drawimage(width*step,height*side,width,height,xcoord,ycoord,image)
end
--' end of function animation
repeat
key=getkey()
cls()
for x = 0,screenwidth()/imagewidth(grass) do
for y = 0,screenheight()/imageheight(grass) do
putimage(x*imagewidth(grass),y*imageheight(grass),grass)
end
end
if key == keyCodes.LEFTDIR then
side = leftd
player.x = player.x - player.speed
step = step +1
end
if key == keyCodes.RIGHTDIR then
side = rightd
player.x = player.x + player.speed
step = step +1
end
if key == keyCodes.UPDIR then
side = up
player.y = player.y - player.speed
step = step + 1
end
if key == keyCodes.DOWNDIR then
side = down
player.y = player.y + player.speed
step = step + 1
end
if step >= 3 then
step = 0
end
if player.x < 0 then
side = down
step = 0
player.x = 0
end
if player.x > screenwidth() - 32 then
player.x = screenwidth() - 32
side = down
step = 0
end
if player.y < 0 then
player.y = 0
side = down
step = 0
end
if player.y > screenheight() -32 then
player.y = screenheight() -32
side = up
step = 0
end
if boxcoll(player.x,player.y,imagewidth(player.image)/4,imageheight(player.image)/4,x,y,imagewidth(stick),imageheight(stick)) then
stickx = x
sticky = y
x = rnd()*screenwidth() - 32
y = rnd()*screenheight() -32
explosions = true
sticks = sticks + 1
end
SpriteAnim(32,32,player.x,player.y,player.image,step,side)
putimage(x,y,stick)
if explosions ==true then
drawimage(32*expx,0,32,32,stickx,sticky,explosion)
playsound (sound,60, 2, 0)
end
delay = delay + 0.2
if delay >= 1 then
delay = 0
expx = expx + 1
if expx > 7 then
expx = 0
explosions = false
end
end
bmptext(0,0,uppercase("Stick's - ")..sticks,myfont)
setcaption("Pick the Stick "..sticks)
sync()
until key == keyCodes.ESC
closewindow()
This bmp file is from ESGL example.