Anuncios Google

0 Dudas en luaDev cierren el post [CERRADO]

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

A ver si con eso

de los dos puntos se arregla, un momento

Bien el codigo esta asi:

--Pequeño juego es una "cabeza" moviendose por la hierba
 
Flor = image.load("flor.png")
hierba = image.load("hierba.png")
jugador = image.load("player.png")
 
anchopantalla = 480 - jugador:width()
altopantalla = 272 - jugador:width()
 
jugador = { }
jugador[1] = { x = 200, y = 50 }
 
while true do
controls.read()
for a = 0, 14 do
for b = 0, 8 do
hierba:blit(32 * a, 32 * b)
end
end
Flor:blit(100,100)
Flor:blit(300,220)
jugador:blit(jugador[1].x,jugador[1].y)
if controls.press("left") and jugador[1].x > 0 then
jugador[1].x = jugador[1].x - 2
end
if controls.press("right") and jugador[1].x < anchopantalla then
jugador[1].x = jugador[1].x + 2
end
if controls.press("up") and jugador[1].y > 0 then
jugador[1].y = jugador[1].y - 2
end
if controls.press("down") and jugador[1] < altopantalla then
jugador[1].y = jugador[1].y + 2
end
screen.flip()
end

Y en la linea 22 sale este error:

attempt to call method "blit" (a nil value)

Linea 22: jugador:blit(jugador[1].x,jugador[1].y)

por que ocurre?

Creo que es porque una imagen

Creo que es porque una imagen y una tabla se llaman igual. Cambia el nombre de alguna de ellas y prueba de nuevo.

Imagen de Dioni0396

Gracias

Gracias, gracias muchas gracias de verdad, por fin lo ha cargado!

 

La sentencia if puede evaluar

La sentencia if puede evaluar todas las condiciones que necesites. El ejemplo que has puesto es correcto, pero incluso se puede hacer más largo, evaluando más condiciones y mezclando and, or, ~= (diferente de) <, >, etc.

Para hacer que un texto siga en pantalla, es necesario introducir un poco más de código:

if pad:cross and status == false then
     status == true
elseif pad:cross and status == true then
     status == false
end
 
     if status == true then
          screen:print(100,100,"Texto",verde)
     end

EDITO: Cambiado el código... no sé dónde traigo la cabeza el día de hoy xD

Imagen de iRVing_Prog

es valido

asi se haría

pad:cross()

en lua player es para ver si se esta pulsando un boton me parece, para comprobar que se pulso el boton y se solto entonces mostrar algo hay que hacer una chapuza de codigo, que ahora no recuerdo :S

PD: por que usas luaplayer?


 

Imagen de Dioni0396

Porque el luadev

los comandos son distintos y me gustaria que alguien me pusiera una tabla o algo para que me dijera que  funcion hay que cambiar, como control.press("cross") que en player seria el pad:cross()

Una tabla de equivalencias...

Una tabla de equivalencias... ya veo. Que yo sepa, no existe tal tabla, pero no le veo necesidad tampoco. Con la documentación de LuaDEV a la mano, es cuestión de ir buscando las funciones pertinentes, que por lo general son muy parecidas (véase Screen:print en HM, y screen.print en LuaDEV). Cuidado, que el print de LuaDEV es realmente potente, aceptando hasta 9 parámetros.

Imagen de Dioni0396

Tienes la documentacion?

? Que no este en formato .chm porque no se cual es

chm sólo le das doble clic, y

chm sólo le das doble clic, y lo abre windows con el visor de ayuda xD

Imagen de Dioni0396

Vale

pasamela

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.