por solo poner esto:
archivo = io.open("archivos/lugar.txt","r") lugar = archivo:read("*n") archivo:close()
se me ha ralentizado tanto mi juego que no me reconoce las pulsaciones, osea, pulso x y se tendria que mover una imagen en pantalla, pues simplemente no se mueve :S he puesto esto:
archivo = nil collectgarbage() screen.waitVblankStart(100)
y nada, sigue llendo lento, ¿alguna idea?
encontre el problema
el muñeco manejado por la manica se mueve si la imagne "fondo" pesa menos de 45 kb, lo que me hace pensar que sobrecargo la ram, y eso que solo hay un timer en marcha, lectura de ficheros, y una fuente cargada, que si la quito, sigue igual, sin ir, quien lo quiera le paso el homebrew y que esperimente en su psp loque pasa, ¿alguna idea? agradeceria mucho
salu2!
aunque...
tiene que ver algo que la funcion "leer"está en el bucle while true do?, esque si no lo pongo no me funciona...
salu2!
edito: ahora no se me ralentiza alfin!, pero ahora lo que me pasa es que no me va es la cpu!, osea, que el tio que mueve la cpu no se mueve!!! ahhhhh, antes se movia, ahora estrañamente, no se mueve... jo*er...
Esa instrucción lugar =
Esa instrucción
lugar = archivo:read("*n")¿Que hace realmente?, veo que le pones un asterisco.
mira,
n -> lee un número -> información:read(“*n”)
a -> lee el archivo entero desde la posición actual -> información:read(“*a”)
| -> (opción por defecto) lee la siguiente línea, devuelve "nil" si es final de fichero (EOF) -> información:read(“*|”)
número - devuelve una cadena de tantos caracteres como se indique o devuelve nil si es final de fichero -> información:read(6)
alguna idea? salu2!
problema raro
yo leo y escribo varios archivos con el AF y no se me realentiza. ¿Seguro que eso es lo que casua el problema?
Para descartar que sea
Para descartar que sea problema de la lectura del archivo, prueba una cosa:
Comentas las lineas que leen el archivo y le pones el valor a "lugar" directamente. Si te va igual de lento, no es por esto.
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
es por eso,
antes de implementarle nada, mi homebrew ya tenia directamente el valor "lugar", osea, en mi homebrew que ya está en portada, como hay 4 lugares distintos donde jugar (sólo cambia el fondo) pues para cada "fondo" tenia un diferente script lua, y ahora con esto de leer los he juntado 1, solo he puesto eso de arriba que os he dicho y 4 ifs para claro, depende de que sea lugar imprimir cierto fondo, es muy raro, pero es así
salu2!
Te puedes ahorrar el fichero
Te puedes ahorrar el fichero para leer el lugar, si lo que quieres es aparecer en un (o cinco) sitios aleatorios, create un "random"
Lugar = random(1,5)
No se si será así la sintaxis, pero la intención es devolver un entero aleatorio entre 1 y 5
PD: Tienes que iniciar la semilla de números aleatorios al principio del programa (no sé en Lua cómo es).
LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.
no,
lo que quiero es que el jugador elija el lugar, bueno, ya lo sulocioné, es facil, puesto que taba un tanto sobrecargado el script y tenia que decir que si el contador es menor que 250 y mayor de 180 haga tal cosa, pos como que lo ignoraba, sólo e peusto ahora que haga tal cosa al ser mayor de 180, y cuando va por 300 lo para, contando que son milesimas ese retraso no supone mucha cosa, :P gracias por contestar
salu2!