
~ProtoN!
Members-
Posts
45 -
Joined
-
Last visited
Everything posted by ~ProtoN!
-
Si ya me dí cuenta Igual ya creé algo parecido, gracias por responder
-
Pero al utilizar guiSetAlpha() afecta a todo el edit, yo decía que el texto no se vea afectado. Osea, el fondo que tiene el edit que es blanco desaparesca y quede solamente el texto que se está ingresando.
-
Hola a todos! Tengo una duda. ¿Hay alguna manera de hacer un GUI edit transparente? Osea, que se vea el texto que se ingresa pero el fondo del edit esté transparente. Gracias de ante mano!
-
Y queres que hagamos? No entiendo :_
-
Mostrame los triggerServerEvent() del client-side(creo que es obvio ).
-
Im saying to delete the index, no the value. Because i see all account data of my account and have so much indexs(data). didn't quite test it, but in Lua, whenever you assign nil to an index (global variables are simple fields of the global table _G) it gets "deleted" and later becomes garbage collected, it should be the same with account and element data in MTA Dont work man, try your self
-
Usá setElementData() Esta función sirve para añadirle un valor a un elemento, en este script te va a ser muy útil. En tu script deberías hacer algo así function loca() local x, y, z = getElementPosition( source ) if (getElementData(veh, 'existe')) then -- Si el dato existe devuelve un valor entonces.. destroyElement(veh) -- Destruimos el vehiculo. end local veh = createVehicle(411, x, y, z+2) setElementData(veh, 'existe', true) warpPedIntoVehicle(source, veh) end addEvent("fee", true) addEventHandler("fee", root, loca) No lo probé al script, probalo y decime que tal te fué. Cualquier cosa me avisas!
-
Hola. Fijate en setTimer() el 2do parámetro es el tiempo a ejecutar y el 3ero o es de cuantas veces se ejecuta. Entonces necesitarias 2 setTimer() que trabajen coordinados. Acá un ejemplo setTimer(guiSetVisible, 500, 10, blood, false) setTimer(guiSetVisible, 1000, 10, blood, true)
-
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
-
que raro, yo lo probé y me andubo. Mañana lo reviso bien, es que estoy en una netbook y se traba mucho
-
Copiá el código que te di yo y usalo en tu script, el problema del setVehicleHeadLightColor() ya te lo solucioné. Y te solucioné un par de errores mas que tenía el script.
-
El script lo hiciste vos? o no tenés ni idea de como scriptear? Acá te dejo el script con lo de las luces, no lo puedo probar por que no estoy en mi pc. Probalo y decime que tal local discoTimer = {} local discoState = {} function Disco(player,command) local vehicle = getPedOccupiedVehicle(player) if (vehicle) then if discoState[player] == false then discoState[player] = true discoTimer[player] = setTimer( function () setVehicleOverrideLights(vehicle, 2) setVehicleHeadLightColor(vehicle, math.random(0,255), math.random(0,255), math.random(0,255) ) end, 150, 0, vehicle ) outputChatBox( "* #0080FFDisco light Activado!", player, 255, 255, 255, true ) else outputChatBox( "* #0080FFDisco light Desactivado!", player, 255, 255, 255, true ) if discoTimer[player] then killTimer( discoTimer[player] ) discoState[player] = false setVehicleOverrideLights(vehicle, 1) setVehicleHeadLightColor(vehicle, 255, 255, 255 ) end end else outputChatBox( "* #0080FFNecesitas un vehiculo para usar el comando!", player, 255, 255, 255, true ) end end addCommandHandler("disco",Disco) function setStateOnStart() for _, players in ipairs( getElementsByType( "player" ) ) do discoState[players] = false end end addEventHandler( "onResourceStart", getResourceRootElement( getThisResource() ), setStateOnStart ); function setStateOnJoin() discoState[player] = false end addEventHandler( "onPlayerJoin", getRootElement(), setStateOnJoin ) function removeStateOnQuit() discoState[player] = false killTimer( discoTimer[player] ) end addEventHandler( "onPlayerQuit", getRootElement(), removeStateOnQuit)
-
Poné el tiempo en el server de noche masomenos las 00:00 hs Como te dije antes, tenes que agregar la funcion para que se prendan las luces! Usá setVehicleOverrideLights(vehicle theVehicle, int value)
-
Gracias frana
-
Hola! El error esta en local vehicle = getPedOccupiedVehicle(player)--Acá estas definiendo la varible con vehicle y en setVehicle... poners playerVehicle function (playerVehicle) -- Acá no hace falta poner playerVehicle ya que no estas poniendo el argumento en ningun otro lado, esto te da errores setVehicleHeadLightColor(vehicleSource --Acá poné vehicle, math.random(0,255), math.random(0,255), math.random(0,255) ) end También en esta líneas function removeStateOnQuit() discoState[player] = false killTimer( discoTimer[player] ) --Acá puse que cuando salga destruya el timer así no se ejecuta mas end addEventHandler( "onPlayerQuit", getRootElement(), setStateOnJoin -- Acá debría ir removeStateOnQuit) y también tenés que agregar la función para que se prendan las luces, sino nunca se van a ver los colores Acá te dejo el script arreglado(Agregá la función para que se prendan las luces que no las agregué ) local discoTimer = {} local discoState = {} function Disco(player,command) local vehicle = getPedOccupiedVehicle(player) if (vehicle) then if discoState[player] == false then discoState[player] = true discoTimer[player] = setTimer( function () setVehicleHeadLightColor(vehicle, math.random(0,255), math.random(0,255), math.random(0,255) ) end, 150, 0, vehicle ) outputChatBox( "* #0080FFDisco light Activado!", player, 255, 255, 255, true ) else outputChatBox( "* #0080FFDisco light Desactivado!", player, 255, 255, 255, true ) if discoTimer[player] then killTimer( discoTimer[player] ) discoState[player] = false setVehicleHeadLightColor(vehicle, 255, 255, 255 ) end end else outputChatBox( "* #0080FFNecesitas un vehiculo para usar el comando!", player, 255, 255, 255, true ) end end addCommandHandler("disco",Disco) function setStateOnStart() for _, players in ipairs( getElementsByType( "player" ) ) do discoState[players] = false end end addEventHandler( "onResourceStart", getResourceRootElement( getThisResource() ), setStateOnStart ); function setStateOnJoin() discoState[player] = false end addEventHandler( "onPlayerJoin", getRootElement(), setStateOnJoin ) function removeStateOnQuit() discoState[player] = false killTimer( discoTimer[player] ) end addEventHandler( "onPlayerQuit", getRootElement(), removeStateOnQuit)
-
Hola a todos! Quería compartir este script que acabo de crear, el adm(Account data manager), es un panel para guardar y cargar datos de una cuenta. Subi dos versiones, una en español y otra en inglés. Si tiene alguna sugerencia, encuentran algun bug o no saben como usarlo, no duden en decirmelo Versión en español: https://community.multitheftauto.com/index.php?p=resources&s=details&id=8014 Versión en inglés: https://community.multitheftauto.com/index.php?p=resources&s=details&id=8013 Espero les sirva
-
Si, probé pero no me funcionó. Lo único que hace es cambiarle el valor a nil, pero el index sigue intacto.
-
No quiero borrar la cuenta, quiero borrar los datos que se le pueden almacenar. Y las comillas simples se pueden usar también. 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
-
You can just do setAccountData(account, index, nil). And you can post suggestions here as it reads 'Suggestions'. Im saying to delete the index, no the value. Because i see all account data of my account and have so much indexs(data).
-
Hey all! I don´t know where post a sugestion. I want tell to MTA developers if they can do a function like "removeAccountData(account, index)" i think it´s a needed function for clear account data. Sorry for my bad english
-
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!
-
significa que pruebes con lo que puse Muchas gracias me sirvió! Aunque hubiese sido mejor que me explicaras el error Igual ya me di cuenta, les faltaban el false a los eventos 'onClientGUIClick'. En la wiki no te dicen nada de eso, que funcion cumplen el true y el false en el evento?
-
De nada serviría poner el debugscript porque para funcionar(El script que estoy creando) no tiene ningún problema, la cosa es que cuando clickeo en cualquier parte del tabpanel dispara las funciones que le asigné a los botones y no entiendo por qué pasa eso Los botones están dentro del tab, no sé que decís
-
Hola a todos! Tengo un problema con unos elementos GUI. Lo que pasa es que puse dos botones dentro de un Tabpanel y al clickear en cualquier parte del Tabpanel me dispara las funciones que deberian ejecutar los botones! Acá dejo el codigo a ver si ven algo(Yo no encuentro nada ) function elementosGUI() showCursor(true) --Ventana GUI.ventana[1] = guiCreateWindow(20, 200, 264, 283, "Controlador de datos", false) guiWindowSetSizable(GUI.ventana[1], false) --Tab panel GUI.tabpanel[1] = guiCreateTabPanel(9, 26, 245, 247, false, GUI.ventana[1]) --Tab guardar GUI.tab[1] = guiCreateTab("Guardar", GUI.tabpanel[1]) --Labels GUI.label[1] = guiCreateLabel(19, 19, 58, 17, "Jugador: ", false, GUI.tab[1]) guiSetFont(GUI.label[1], "default-bold-small") GUI.label[2] = guiCreateLabel(19, 70, 58, 17, "Dato: ", false, GUI.tab[1]) guiSetFont(GUI.label[2], "default-bold-small") GUI.label[3] = guiCreateLabel(18, 123, 58, 17, "Valor:", false, GUI.tab[1]) guiSetFont(GUI.label[3], "default-bold-small") --Edits GUI.edit[1] = guiCreateEdit(19, 36, 203, 30, "", false, GUI.tab[1]) GUI.edit[2] = guiCreateEdit(19, 87, 203, 30, "", false, GUI.tab[1]) GUI.edit[3] = guiCreateEdit(18, 140, 203, 30, "", false, GUI.tab[1]) --Botones GUI.boton[1] = guiCreateButton(76, 182, 67, 27, "Aceptar", false, GUI.tab[1]) GUI.boton[2] = guiCreateButton(154, 182, 67, 27, "Borrar", false, GUI.tab[1]) --Tab cargar GUI.tab[2] = guiCreateTab("Cargar", GUI.tabpanel[1]) --Labels GUI.label[4] = guiCreateLabel(19, 19, 58, 17, "Jugador: ", false, GUI.tab[2]) guiSetFont(GUI.label[4], "default-bold-small") GUI.label[5] = guiCreateLabel(19, 70, 58, 17, "Dato: ", false, GUI.tab[2]) guiSetFont(GUI.label[5], "default-bold-small") GUI.label[6] = guiCreateLabel(18, 123, 58, 17, "Valor:", false, GUI.tab[2]) guiSetFont(GUI.label[6], "default-bold-small") --Edits GUI.edit[4] = guiCreateEdit(19, 36, 203, 30, "", false, GUI.tab[2]) GUI.edit[5] = guiCreateEdit(19, 87, 203, 30, "", false, GUI.tab[2]) GUI.edit[6] = guiCreateEdit(18, 140, 203, 30, "", false, GUI.tab[2]) guiEditSetReadOnly(GUI.edit[6], true) --Botones GUI.boton[3] = guiCreateButton(76, 182, 67, 27, "Aceptar", false, GUI.tab[2]) GUI.boton[4] = guiCreateButton(154, 182, 67, 27, "Borrar", false, GUI.tab[2]) --Eventos addEventHandler('onClientGUIClick', GUI.boton[1], guardar) addEventHandler('onClientGUIClick', GUI.boton[2], borrarGuardar) addEventHandler('onClientGUIClick', GUI.boton[3], cargar) addEventHandler('onClientGUIClick', GUI.boton[4], borrarCargar) end
-
Hola a todos! Me surgió una duda, cómo se hace para poner inconos en el radar? Por ejemplo, para ubicar un marker en algun lugar del mapa, jugadores, vehiculos, etc. Gracias de antemano!