Que tal, saludos a tod@s
Pues, retomando LUA, y empezando con un proyecto, me he liado que ya no uso windows :P, y por ende no tengo el LUA player, y no puedo reproducir los scripts como lo hacia en windows.
Me tira un error al ejecutar el script desde la terminal. aquí esta mi código(es un simple "hola") para que no se dificulte tanto la legibilidad del programa en si :P
#!/usr/bin/lua --Empezando con LUA de nuevo xD --Un hola mundo --Declaramos variables de colores rojo = Color.new(255,0,0) while true do screen:print(100, 100, "HOla mundo me llamo irving Xd", rojo) screen.flip() scren.waitVblankStart() end --Se termina el miniprograma :P
Lo de #!/usr/bin/lua lo he puesto, ya que gorrister me dijo en otro post que lo hiciera para lograr ejecutarlo. Ahora ya que tengo el código, procedo a guardarlo en la carpeta personal, osea mi nombre XD, ya que lo tengo guardado, abro la terminal y tecleo lo siguiente;
irving@irving-desktop:~$ ./script.lua
y me sale esto;
error: attempt to index global `Color' (a nil value)
stack traceback:
1: main of file `./script.lua' at line 8
PD; antes de ejecutarlo en la terminal le doy permisos de ejecución y sigue igual, dándome ese error. Espero me puedan ayudar, y desde ya gracias.
no eres el unico con
no eres el unico con problemas simples
http://psp.scenebeta.com/node/51771
pero creo que tiene q ver con como comenzaste el bucle
Lo unico raro que veo
es un error de sintaxis en la linea
scren.waitVblankStart()donde escribes "scren" un lugar de "screen", pero no se por que te pone error con el objeto Color, al parecer esta bien.
si de ese error
ya me percate, y lo corregí, solo que no volví a poner el código aquí,
PD: hise el miniprograma xD igual en windows y se reproduce normal, ahora me he traído el script hecho en el notepad en windows, y me tira ahora otro error
omar@omar-desktop:~$ ./script.lua
bash: ./script.lua: /usr/bin/luac^M: intérprete erróneo: No existe el fichero ó directorio
No sé cómo todavía hay gente
No sé cómo todavía hay gente que puede teclear una linea de código con esa basura del Notepad de Windows.
El error te lo da porque tienes "^M" el carácter "retorno de carro" de MSDOS. Microsoft tubo una de sus brillantes ideas, y para un salto de linea se usan 2 caracteres en vez de uno, por eso da error, es el carácter que sobra.
Soluciones hay muchas, pero yo te diré una:
Un saludo.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
Perdon por no expresarme
bien, o no escribir el nombre correcto, creo has entendido que utilizo el notepad de windows :S y no no es asi, es este http://notepad-plus.sourceforge.net/es/site.htm, el cual es de codigo abierto y trabaja bajo la licencia GNU.
Y si lo escribi mal, El nombre real es NOTEPAD++, perdon por no haberlo escrito adecuadamente.
Ahora por el consejo, ejeje lo tomare en cuenta para no usarlo, si es que algun dia lo necesito xD que no creo :S.
Bien, ahora lo que preguntaba, si alguien me puede ayudar con lo de mi problema.
Un saludo y gracias
No sé como el Notepad++ te ha
No sé como el Notepad++ te ha metido los 2caracteres de retorno. ¿Lo abriste con otro programa alguna vez?.
Sobre lo del otro problema, ni idea, lo siento.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
no pues lo unico que hise
fue primero escribir mi codigo en GEANY, de ahi que no me ha servido al ejecutarlo desde terminal, entonces pense que seria el IDE, regrese a Windows, abir notepad++,teclee el codigo, lo ejecute con el cmd que abre el script en lua player, funciono y lo copie a la unidad de respaldo, despues me loguie a Linux, y lo trate de ejecutar(antes que nada le di permisos). fue todo.
es color no Color: el color
es color no Color: el color va con minuscula no con MAYUSCULA XD
primer capitulo
de "Una forma alternativa de iniciarse en LUA"
ADVERTENCIA: Lua diferencia las mayúsculas de las minúsculas, por lo que los comandos deben escribirse exactamente como los muestro. El código de debajo no funcionará si escribes color en vez de Color.
rojo = Color.new(255,0,0)
ya se me ekivoq
ya se me ekivoq
Hola,
según yo lo tengo, el código debería ser así:
rojo = Color.new(255,0,0)
screen:print(100, 100, "HOla mundo me llamo irving Xd", rojo)
screen.flip()
while true do
screen.waitVblankStart()
end
A ver pruébalo a ver si te funciona.
Salu2!
100% M E X I C A N O
mismo error
lo que yo he hecho es escribir ese print dentro del bucle, y tu no(así como esta en los tutoriales).
Pero de todas formas me sigue tirando el error ese.
saludos