Anuncios Google

Duda Sprite LuaDev

Bueno, tengo un problema, me he iniciado hace un par de días en LuaDev xD y estoy haciendo un RPG. El probema viene cuando voy a meter a los enemigos del personaje, ya que se meter los sprites pero no como hacer que se muevan de una forma pre-programada. Si alguien me pudiese ayudar no duden en hacerlo.

 

Gracias por adelantado


Anuncios Google

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de Dioni0396

Sacado del tutorial de chimecho

Jugador[Estado][Direccion]:setframe(anim)

Anim debes ponerlo que cuando este moviendose hacia arriba, vaya aumentando en 1 y cuando no te interese que vuelva al valor 1

Imagen de m.rr

esto

esto tambien vale sprites en plantilla?

Si

Hace tiempo dejé un ejemplillo muy sencillo sobre como animar sprites, supongo que servirá para orientarte (no es la mejor forma de hacerlo, pero verás que es sencillo)

Imagen de m.rr

Script

Mira te pongo el script entero porque no hay mas que fallo tras fallo.

 

----Imágenes
soldado = image.loadsprite("Sprites/soldado1.png",32,48)
paisaje = image.load("Imgs/fondo.jpg")
bla1 = image.load("Imgs/fondo2.jpg")
 
----Variable
cuadro = 0
minitimer = 0
function mover() 
 
	if cuadro>7 then cuadro = 0 end 
 
 
		if minitimer==10 then  
			minitimer = 0
			cuadro = cuadro + 1
		end
 
			soldado:setframe(cuadro)    
			soldado:blit(100,100)
 
 
			minitimer = minitimer + 1			
 
end
 
link = {}
link["stay"]={}
link["walk"]={}
 
link.stay.up = image.load("Sprites/link_stay_up.png")
link["stay"].down = image.load("Sprites/link_stay_down.png")
link.stay["right"] = image.load("Sprites/link_stay_right.png")
link["stay"]["left"] = image.load("Sprites/link_stay_left.png")
 
rawset(link["walk"],"up",image.loadsprite("Sprites/link_walk_up.png",22,27))
rawset(link["walk"],"down",image.loadsprite("Sprites/link_walk_down.png",22,27))
rawset(link["walk"],"right",image.loadsprite("Sprites/link_walk_right.png",22,27))
rawset(link["walk"],"left",image.loadsprite("Sprites/link_walk_left.png",22,27))
 
statuslink = "stay" ---Al principio estará quieto
directionlink = "down" 
linkx = 372
linky = 250 -- posicion en Y en la que se mostrará inicialmente
animlink = 0 -- cuadro de la animación actual, cuenta desde 0, e irá hasta 10
while true do
	controls.read()
	image.blit(1,1,paisaje)
	if statuslink=="walk" then
	mover()
	else
	soldado:setframe(12)
	soldado:blit(100,100)
	end
 
	if controls.up() or controls.down() or controls.left() or controls.right() then
		animlink = animlink + 0.2
		statuslink = "walk"
		if math.floor(animlink)>9 then
			animlink = 0
		end
	else
		animlink = 0
		statuslink = "stay"
	end
 
	if controls.up() then
		linky=linky-1
		directionlink = "up"
	elseif controls.down() then
		linky=linky+1
		directionlink = "down"
	elseif controls.right() then
		linkx=linkx+1
		directionlink = "right"
	elseif controls.left() then
		linkx=linkx-1
		directionlink = "left"
	end
 
	if statuslink=="walk" then
		link[statuslink][directionlink]:setframe(animlink)
	end
 
    linkx = math.min(math.max(0,linkx), 480-22)
	linky = math.min(math.max(0,linky), 272-27)
 
	link[statuslink][directionlink]:blit(linkx,linky)
 
 
	screen.flip()
	if controls.l() and controls.cross() then
		broke()
	end
end
gracias por la paciencia es que soy novato xD

No tienes por qué mezclar el

No tienes por qué mezclar el tuto de chime, y el ejemplo que te dejé xD
Por sí solos pueden mover el sprite perfectamente, pero tómalos sólo de ejemplo, ya que los debes adecuar a tus necesidades. De nada sirve que pegues el código tal cual, si no lo comprendes no podrás usarlo para tu beneficio :P

Si alguna función no la entiendes, revisa la documentación de LuaDEV ;)

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.