atrapar=sound.load("GAMES/arka/atrapado.mp3")
chocar=sound.load("GAMES/arka/choque.mp3")
explosion=sound.load("GAMES/arka/explosion.wav")

explosion:volume(20)


pelota={x=230,y=231,w=25,h=25,d=4,vel=2,i=img_prede,rotacion=1}

saque=true

pegado=false

plata={}

plata[1]={x=190,y=256,w=40,h=12}
plata[2]={x=230,y=256,w=20,h=12}
plata[3]={x=250,y=256,w=40,h=12}


objetos={}
img_caja={}

for i=1,10 do
objetos[i]={x=math.random(0,455),y=-100-i*200,w=25,h=25,e=false,t=math.random(1,4)}
end
respecial=0

temporizadores={}
for i=1,4 do
temporizadores[i]=timer.new()
end

dofile("GAMES/arka/funciones.lua")
dofile("GAMES/arka/niveles.lua")

function arka()

liberar(6)
levelup()

while true do
controls.read()
screen.clear(negro)
fondo_blend:blend(240,130,pelota.vel*60-40)


for i=1,3 do

	if controls.left() then 
		plata[i].x=plata[i].x-4 
	elseif controls.right() then 
		plata[i].x=plata[i].x+4
	end
end



plata_img:blit(plata[1].x,plata[1].y)

if saque or pelota.d==7 then

	if controls.press("cross") then pelota.d=6 saque=false end

	if controls.left() then
		pelota.x=pelota.x-4 
	elseif controls.right() then
	pelota.x=pelota.x+4
	end		
end

if temporizadores[1]:time()>10 then 

for i=1,3 do
if col(plata[i],pelota) then pelota.d=7 atrapar:play(1) temporizadores[1]:reset() temporizadores[1]:stop() end
end

end

if pelota.d!=7 then
if not col(plata[2],pelota) then
	if col(plata[1],pelota) then pelota.d=3 chocar:play(1) end
	if col(plata[3],pelota) then pelota.d=5 chocar:play(1) end
else
	pelota.d=6 chocar:play(1)
end
end


if pelota.x>460 then 
	if pelota.d==2 then
		pelota.d=1 
	else 
		pelota.d=3
	end
end

if pelota.x<0 then 
	if pelota.d==1 then
		pelota.d=2 
	else 
		pelota.d=5
	end
end
if pelota.y>252 then 
os.message("Perdiste")
levelup()
end
if pelota.y<0 then 
	if pelota.d==3 then
		pelota.d=1 
	elseif pelota.d==6 then
		pelota.d=4
	elseif pelota.d==5 then
		pelota.d=2 
	end
end

for y = 1, #nivel do
  for x = 1, #nivel[y] do
	local dir=pelota.d
	
  	if nivel[y][x]=="c" then
		if choque(pelota,x,y) and dir==pelota.d then chocar:play(1) cambio_ang() movimiento_pelota() nivel[y][x]="a" end
		bloque2:blit(x*30-30,y*30-30)	
	end	
	if nivel[y][x]=="t" then
		if choque(pelota,x,y) and dir==pelota.d then chocar:play(1) explosion:play(2) cambio_ang() movimiento_pelota() 
		nivel[y][x]="a"
		if y>1 then 
			nivel[y-1][x]="a"
		end
		nivel[y+1][x]="a" 
		if x>1 then 
			nivel[y][x-1]="a" 
		end
		if x<16 then 
			nivel[y][x+1]="a" 
		end
		end
		bloque3:blit(x*30-30,y*30-30)	
	end	
	if nivel[y][x]=="b" then
		if choque(pelota,x,y) and dir==pelota.d then chocar:play(1) cambio_ang() movimiento_pelota() nivel[y][x]="c" end
		bloque1:blit(x*30-30,y*30-30)	
	end	
	
 end
end

movimiento_pelota()


pelota.i:blit(pelota.x+12.5,pelota.y+12.5)

fondo_blend:rotate(pelota.rotacion/4)
pelota.i:rotate(pelota.rotacion)
pelota.rotacion=pelota.rotacion+pelota.vel*2+respecial

habilidades()

if controls.start() then sistema() end
ganar()

screen.flip()
end
end