Anuncios Google

[DUDA LUA] Saber el nombre del script actual

Pues eso, si hay alguna manera con Lua, preferiblemente con Luaplayer o HM7, de saber cual es el nombre del script actual. Con el Lua "normal" es muy sencillo, ya que es el argumento cero (arg[0]), pero parece ser que esto no está implementado en los intérpretes PSP.

Un saludo.


LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.


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 moikop

Pues si no hay nada implementado, hacelo vos :P

Desconozco si HM tiene algo para saberlo. Pero sino, es fácil de imitar. Si usas 'dofile()', simplemente usa una variable global. Mira:

-- Script.lua
-- Declaras una variable global, string, con el nombre del script..
scriptActual = "script"
--Demás código--
if x = 10 then
scriptActual = "proximoScript"
dofile("proximoScript")
end
--Demás código--

Y en el otro script:

--Demás código--
screen:print(0, 0, "El script actual es: "..scriptActual, blanco)
--Demás código--

Una variable global la podes usar en todos los scripts, las locales (aunque estén declaradas fuera de sentencias) no.
Si usas un System.runeboot(), se borran todas las variables y todo. Por eso dije 'Si usas "dofile"'...

Un saludo ;-)


Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderas trucos para resolver tus dudas antes.

No preguntes por MP, mejor pregunta aquí.

Imagen de pspgorrister

Gracias

Es una buena idea, aunque justamente para lo que lo quiero no puedo usar otro fichero (es uno de esos casos "raros").

Ya he encontrado una solución, no es muy limpia, pero funciona. En breve voy a subir un tuto de programación y haré uso de ella explicándola.

Un saludo.

Editado: No me he dado cuenta pero eso no puede servir, porque se parte de la base que NO se conoce ningún nombre de script.


LuaDiE: Crea en Lua sin teclear código. Compatible HM7, HMv2, LuaPlayer, LuaDEV y PGE.

Imagen de moikop

:S, Sí que es un caso raro

:S, Sí que es un caso raro XD. Me esperaré al tutorial para como es. Que ni me doy una idea···

Saludo :P

Edito: Ahora que ví para qué es el script y cómo funciona, he tenido una idea:

Sabes que el nombre del archivo a infectar esta almacenado en fileList[n].name (tomo variables y etc de tu tuto). Simplemente debes anotar fileList[n].name en el archivo a infectar como comentario (por ejemplo en la linea 2). Y luego obtienes el nombre del archivo leyendo esa linea (--Script Name Nombre.lua; por ejemplo..) Ya tienes el nombre del archivo anotado y sin provocar un error XD


Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderas trucos para resolver tus dudas antes.

No preguntes por MP, mejor pregunta aquí.

Imagen de pspgorrister

Eso tiene un gran bug.

¿Y si alguien renombra el archivo?, ahhh ahí está el "bug" :D

Imagen de moikop

Eso ni siquiera se me ocurrió :S

Se nota que me falta experiencia XD, gracias por mostrarme :P
De todos modos, el método que utilizaste es bastante ingenioso..

Un saludo :D


Para recibir ayuda por parte de otros usuarios más rápidamente, recomendamos que pongas títulos descriptivos y no utilices abreviaturas (estilo MSN) en tus post de los foros. Recuerda que accediendo al Manual del perfecto forero y las Normas de la Comunidad aprenderas trucos para resolver tus dudas antes.

No preguntes por MP, mejor pregunta aquí.

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.