~ProtoN! Posted October 11, 2013 Share Posted October 11, 2013 Hola a todos! Disculpen que moleste tanto Pero me surgió otra duda. Cómo se borran los datos de una cuenta? Lo único que logro borrar son los valores, pero el indice no puedo. Hay alguna función? Acá un ejemplo function borrarDatos(admin, _, nombre) local jugador = obtenerJugadorPorParteDelNombre(nombre) --Obtengo el jugador local datos = cargarTodosLosDatos(jugador) -- Esta función me devuelve una tabla con todos los datos de la cuenta del jugador deseado(la cuenta se obtiene dentro de dicha función) local cuenta = getPlayerAccount(jugador) for indice, valor in pairs(datos) do setAccountData(cuenta, indice, 'Vacío') --En cada indice obtenido de la tabla(datos) se remplaza el valor por 'Vacío' end end addCommandHandler('borrar', borrarDatos) Pero si quiero cambiar el indice como hago? Gracias de antemano! Link to comment
Julian09123 Posted October 11, 2013 Share Posted October 11, 2013 function borrarDatos(admin, _, nombre) local jugador = obtenerJugadorPorParteDelNombre(nombre) --Obtengo el jugador local datos = cargarTodosLosDatos(jugador) -- Esta función me devuelve una tabla con todos los datos de la cuenta del jugador deseado(la cuenta se obtiene dentro de dicha función) local cuenta = getPlayerAccount(jugador) for indice, valor in pairs(datos) do setAccountData(cuenta, indice, "Vacío") --En cada indice obtenido de la tabla(datos) se remplaza el valor por "Vacío" removeAccount ( jugador ) end end addCommandHandler("borrar", borrarDatos) Para borrar usa removeAccount ah y no es ´ es " Link to comment
Castillo Posted October 11, 2013 Share Posted October 11, 2013 Usar ' y " es lo mismo. @ProtoN: Proba cambiando el valor a nil. Link to comment
~ProtoN! Posted October 11, 2013 Author Share Posted October 11, 2013 function borrarDatos(admin, _, nombre) local jugador = obtenerJugadorPorParteDelNombre(nombre) --Obtengo el jugador local datos = cargarTodosLosDatos(jugador) -- Esta función me devuelve una tabla con todos los datos de la cuenta del jugador deseado(la cuenta se obtiene dentro de dicha función) local cuenta = getPlayerAccount(jugador) for indice, valor in pairs(datos) do setAccountData(cuenta, indice, "Vacío") --En cada indice obtenido de la tabla(datos) se remplaza el valor por "Vacío" removeAccount ( jugador ) end end addCommandHandler("borrar", borrarDatos) Para borrar usa removeAccount ah y no es ´ es " No quiero borrar la cuenta, quiero borrar los datos que se le pueden almacenar. Y las comillas simples se pueden usar también. Re: Borrar datos de una cuenta by Solidsnake14 on Fri Oct 11, 2013 5:24 pm Usar ' y " es lo mismo. @ProtoN: Proba cambiando el valor a nil. Lo que quiero borrar es el index, ponerle nil en el valor simplemente haría que tengan valor nil cada index. No sé si entendiste, mirá un ejemplo local tabla = { -- Index | Valor 'Dinero' = 100,--Acá lo que quiero borrar es el index, osea 'Dinero' 'Nivel' = 5 } Cuando usás getAllAccountData() te devuelve una tabla similar(o casi) como la del ejemplo, pero no encuentro la manera de borrar un index de una cuenta! Supongo que los del MTA tendrían que hacer una función, porque cuando me fije todos los datos de mi cuenta me devolvió como 100 datos inecesarios que habrán almacenado algunos resources, como paneles de usuarios y scoreboards y me gustaria poder limpiarlos Link to comment
Castillo Posted October 12, 2013 Share Posted October 12, 2013 Pero, probaste usando 'nil'? que yo sepa, funcionaba asi. Link to comment
~ProtoN! Posted October 12, 2013 Author Share Posted October 12, 2013 Si, probé pero no me funcionó. Lo único que hace es cambiarle el valor a nil, pero el index sigue intacto. Link to comment
Sensacion Posted October 13, 2013 Share Posted October 13, 2013 Si, probé pero no me funcionó.Lo único que hace es cambiarle el valor a nil, pero el index sigue intacto. Quizá estás poniéndole nil como string. Link to comment
~ProtoN! Posted October 13, 2013 Author Share Posted October 13, 2013 Si, probé pero no me funcionó.Lo único que hace es cambiarle el valor a nil, pero el index sigue intacto. Quizá estás poniéndole nil como string. No, si querés comprobalo vos mismo. Yo creo que deberían crear una función, no hay otra manera Link to comment
Recommended Posts