Jump to content

Arsilex

Members
  • Posts

    1,410
  • Joined

  • Last visited

Everything posted by Arsilex

  1. Arsilex

    Login Panel

    https://wiki.multitheftauto.com/wiki/AddAccount https://wiki.multitheftauto.com/wiki/IsGuestAccount https://wiki.multitheftauto.com/wiki/LogIn https://wiki.multitheftauto.com/wiki/LogOut Con esto te debería de servir.
  2. 245 is not a vehicle ID: please check : https://wiki.multitheftauto.com/wiki/Vehicle_IDs
  3. Bueno volviendo al tema aquí esta lo que necesitas: local mbag = { {2422.3,-2261.6,16}, {1758.9,-2767.9,1.7}, {2493.3,-951.8,82.25}, {815.7,-1108.2,25.8}, {390.9,-2054.3,13.8}, {-719.05,-1938.8,8.35}, {-625.7,-2249.5,23.05}, {-1812.3,-168.5,18.2}, {-2659.5,1528.05,54.79}, {-1733.76,194.75,3.6}, {-2535.5,40.15,8.5}, {-1804.85,558.45,35.15}, {-752.6,-131.6,65.8}, } function createBag() local random = math.random ( #mbag ) local x, y, z = mbag[random][1], mbag[random][2], mbag[random][3] bag = createPickup( x, y, z, 3, 1550 ) setElementCollisionsEnabled( bag, false ) bl = createBlipAttachedTo(bag,37) exports.UIPtexts:output("Una Bolsa Misteriosa ha aparecido en tu mapa conseguila primero y obten algunos premios agradables en ella!", root, 0, 255, 0) end addEventHandler("onResourceStart", resourceRoot,createBag) addEventHandler("onPickupHit",root, function ( player, killer ) if ( source ~= bag ) then return end if ( isPedInVehicle( player ) ) then return end if ( getElementData( player, "Ocupacion" ) == "Criminal" ) then destroyElement( bag ) destroyElement( bl ) randomMoney = math.random ( 1000, 20000 ) randomArmor = math.random( 40, 80 ) setPedArmor ( player, getPedArmor(player) + randomArmor ) outputChatBox("Usted Gano $" .. tostring(randomMoney) .." Y ".. tostring(randomArmor) .."% De Chaleco", player, 0, 250, 0) setTimer( createBag, 90000, 1 ) givePlayerMoney(player,randomMoney) local stat = getElementData(player, "BC") setElementData(player, "BC", stat+1) --Linea de stats HiJack local hjackeds = getElementData(player, "hijacks") or 032 setElementData(player, "j", hjackeds+1) else exports.CLtexts:output("Debes Ser Criminal Para Agarrar La Bolsa Misteriosa", player, 0, 255, 0) end end ) function saveData(player) local account = getPlayerAccount ( player ) if not isGuestAccount ( account ) then setAccountData ( account, "hijack", getElementData(player, "hijacks") or 0 ) end end addEventHandler ( "onResourceStop", getThisResource ( ), function ( resource ) local players = getElementsByType ( "player" ) for theKey,thePlayer in ipairs(players) do saveData(thePlayer) end end ) addEventHandler( "onResourceStart",resourceRoot, function( ) outputDebugString( "add Total Kills to scoreboard Return: "..tostring( call( getResourceFromName("dxscoreboard"), "addScoreboardColumn", "BC",root,2, 0.032 ) ) ) end ) addEventHandler("onPlayerLogin", root, function(_, account) local data = getAccountData ( account, "hijack" ) or 032 setElementData(source, "hijacks", data) end ) function loggedOut() saveData(source) end addEventHandler("onPlayerLogout",getRootElement(),loggedOut) eh mejorado algunas cosas de tu scripts..
  4. No. ? and ZA7F no. I outputted the values working fine. So there is the problem the vehicle isn't created and that save the value "false" that return the createVehicle function.
  5. are you sure that the vehicle has been created?
  6. I just tested my code and it works perfectly has nothing to do with "skillWindow" only need need change pairs -- > ipairs because the table what he try to loop have indexes
  7. local betted, amount = 0, 0 function text () dxDrawText ("asd", x/3, y/3, x, y, tocolor (255, 255, 255)) end addEvent ("betPlaced", true) addEventHandler ("betPlaced", root, function (b, a) betted, amount = b, a addEventHandler ("onClientRender", root, text) setTimer ( function () removeEventHandler ("onClientRender", root, text) betted, amount = 0, 0 end , 5000, 1 ) end )
  8. data = { background = { {10, 54, 550, 41, ":test/Adsiz.png", false, skillWindow}, {10, 105, 550, 41, ":test/Adsiz.png", false, skillWindow}, {10, 156, 550, 41, ":test/Adsiz.png", false, skillWindow}, {10, 207, 550, 41, ":test/Adsiz.png", false, skillWindow}, {10, 258, 550, 41, ":test/Adsiz.png", false, skillWindow}, {10, 309, 550, 41, ":test/Adsiz.png", false, skillWindow}, {10, 360, 550, 41, ":test/Adsiz.png", false, skillWindow} } } local back = {} addEventHandler("onClientResourceStart", resourceRoot, function() skillWindow = guiCreateWindow(369, 143, 570, 418, "test", false) guiWindowSetSizable(skillWindow, false) guiSetAlpha(skillWindow, 0.85) for k, v in ipairs(data.background) do back[k] = guiCreateStaticImage(unpack(v)) end end)
  9. Postea tu codigo y te ayudamos a ponerlo todo en su sitio... aleks te explico la manera de hacerlo si no sabes como organizarlo es mejor que pongas el script aquí para que podamos ayudarte mas. Como ya te dijeron arriba para que se guarde una vez que salga de servidor se tiene que usar setAccountData o otros metodos como puede ser sql mysql xml....
  10. en realidad no es una funcion es directamente el uso de la funcion setPedAnimation no tiene mucho misterio: setPedAnimation( player, "ped", "phone_in", -1, false, true, true, true ) con esta funcion hice la funcion de mi RP cuando llaman al descolgar para que tenga la mano en la oreja como si estuviera hablando.
  11. Bueno yo acabo de hacer unas pruebas... el resultado fue el siguiente: Con 10.000 dxdrawText los resultados fueron: 1º Resultado: 27.6 Millisegundo | DX sin for loop 2º Resultado: 27.0 Millisegundo | DX con for loop En cambio con 100.000 dxdrawText los resultados fueron: Resultado 1º : 270.7 Millisegundo | DX sin for loop Resultado 1º : 271.1 Millisegundos | DX con for loop así que esto me deja un poco confundido cual es mejor entonces?
  12. Cual seria en vuestra opion mas rapido y eficiente de estos dos casos: Caso 1 local texts = {"test","test","test","test","test","test","test","test","test","test"} addEventHandler("onClientRender", root, function() for k, text in ipairs( texts ) do dxDrawText(text , 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) end end) Caso 2 addEventHandler("onClientRender", root, function() dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) dxDrawText("Test", 369, 91, 610, 127, tocolor(255, 255, 255, 255), 1.00, "default", "left", "center", false, false, true, false, false) end)
  13. Well i want to sell this clan system what i make.. This resource have: Invite, Kick and ranks you can be part more that 1 clan at same time and can be owner leader or member of all clan you have.. only admin can create a clan and set one player as owner, owner player can invite players to the clan You can contact my in skype: asus.mta i sell it for 5$ in paypal Sorry for my bad english :3
  14. onClientRender no que eso se veria como lageado para eso se usa el onClientPreRender
  15. function propSS () setWeaponProperty(24, "pro", "flags", 0x000200) setWeaponProperty(24, "std", "flags", 0x000200) setWeaponProperty(24, "poor", "flags", 0x000200) end addEventHandler("onResourceStart",root,propSS) addEventHandler("onPlayerJoin",root,propSS)
  16. https://forum.multitheftauto.com/viewtopic.php?f=146&t=76790 Allí tienes para mi es una de las mejoras formas de crear un dxButton
  17. Bueno como veo que la gente del foro esta todo el rato pidiendo esta funcion pues decidí darles la funcion Uso una parecida en mi servidor esta la eh creado solo para postearla aqui: --Client-side local buttons = {} local sx, sy = guiGetScreenSize() --Funcion exportadora function dxCreateButton(x, y, w, h, text, relative) if x and y and w and h and text then local button = createElement ( "dxButton" ) if button then data = {} data.x = x data.y = y data.w = w data.h = h data.text = text data.relative = relative or false data.font = "default-bold" data.hover = false data.textColor = {255, 255, 255, 255} data.dxColor = {255, 255, 255, 255} buttons[button] = data return button else outputDebugString("dxButton: Imposible crear el elemento.") end else outputDebugString("dxButton: Argumentos no definidos") end end --Funcion de dibujo function drawButtons () for i,button in pairs(getElementsByType("dxButton")) do if button then local data = buttons[button] local r, g, b = unpack(data.dxColor) local r2, g2, b2 = unpack(data.textColor) if data.relative then if isCursorHover((data.x*sx), (data.y*sy), (data.w*sx), (data.h*sy)) then if not data.hover then data.hover = true end else if data.hover then data.hover = false end end if getKeyState("mouse1") and d.hover then dxDrawRectangle ( (data.x*sx), (data.y*sy), (data.w*sx), (data.h*sy), tocolor(r, g, b, 150)) dxDrawText(tostring(data.text),(data.x*sx),(data.y*sy),(data.x+data.w)*sx,(data.y+data.h)*sy,tocolor(r2, g2, b2, 150),1,data.font,"center","center",true,false) elseif d.hover then dxDrawRectangle ( (data.x*sx), (data.y*sy), (data.w*sx), (data.h*sy), tocolor(r, g, b, 200)) dxDrawText(tostring(data.text),(data.x*sx),(data.y*sy),(data.x+data.w)*sx,(data.y+data.h)*sy,tocolor(r2, g2, b2, 200),1,data.font,"center","center",true,false) else dxDrawRectangle ( (data.x*sx), (data.y*sy), (data.w*sx), (data.h*sy), tocolor(r, g, b, 255)) dxDrawText(tostring(data.text),(data.x*sx),(data.y*sy),(data.x+data.w)*sx,(data.y+data.h)*sy,tocolor(r2, g2, b2, 255),1,data.font,"center","center",true,false) end else if isCursorHover((data.x*sx), (data.y*sy), (data.w*sx), (data.h*sy)) then if not data.hover then data.hover = true end else if data.hover then data.hover = false end end if getKeyState("mouse1") and data.hover then dxDrawRectangle ( data.x, data.y, data.w, data.h, tocolor(r, g, b, 150)) dxDrawText(tostring(data.text),(data.x),(data.y),(data.x+data.w),(data.y+data.h),tocolor(r2, g2, b2, 150),1,data.font,"center","center",true,false) elseif data.hover then dxDrawRectangle ( data.x, data.y, data.w, data.h, tocolor(r, g, b, 200)) dxDrawText(tostring(data.text),(data.x),(data.y),(data.x+data.w),(data.y+data.h),tocolor(r2, g2, b2, 200),1,data.font,"center","center",true,false) else dxDrawRectangle ( data.x, data.y, data.w, data.h, tocolor(r, g, b, 255)) dxDrawText(tostring(data.text),(data.x),(data.y),(data.x+data.w),(data.y+data.h),tocolor(r2, g2, b2, 255),1,data.font,"center","center",true,false) end end buttons[button] = data end end end addEventHandler ( "onClientRender", root, drawButtons ) function dxClientClick(button,state) if button == "left" and state == "up" then for i,element in pairs(getElementsByType("dxButton")) do if element then local button = buttons[element] if button.hover == true then button.hover = false buttons[element] = button triggerEvent("onClientDXClick",element) end end end end end addEventHandler("onClientClick",getRootElement(), dxClientClick) function isCursorHover(posX,posY,sizeX,sizeY) if posX and posY and sizeX and sizeY then if isCursorShowing() then local x,y = getCursorPosition() local x,y = x*sx,y*sy if x>=posX and x<=posX+sizeX and y>=posY and y<=posY+sizeY then return true end else return false end else return false end end --Event addEvent("onClientDXClick",true) -meta.xml function="dxCreateButton" type="client" /> Lo del meta.xml es lo que hace posible exportar esta funcion de otros scripts. Ejemplo de uso: exports.NombreDelScriptdxButton:dxCreateButton(0, 0, 200, 50, "Test", false) Aquí dejo algunas funciones extra que pueden servirles --Abajo del todo en el mismo archivo del button --Funciones extra function getButtonFont(button) if button and getElementType(button) == "dxButton" then return tostring(buttons[button].font) end return false end function setButtonFont(button, font) if button and getElementType(button) == "dxButton" and type(font) == "string" then buttons[button].font = font return true end return false end function getButtonColor(button) if button and getElementType(button) == "dxButton" then local r, g, b = unpack(buttons[button].dxColor) return r, g, b end return false end function setButtonColor(button, r, g, b) if button and getElementType(button) == "dxButton" and type(r) == "number" and type(g) == "number" and type(b) == "number" then buttons[button].dxColor = {r, g, b} return true end return false end function getButtonTextColor(button) if button and getElementType(button) == "dxButton" then local r, g, b = unpack(buttons[button].textColor) return r, g, b end return false end function setButtonTextColor(button, r, g, b) if button and getElementType(button) == "dxButton" and type(r) == "number" and type(g) == "number" and type(b) == "number" then buttons[button].textColor = {r, g, b} return true end return false end function getButtonText(button) if button and getElementType(button) == "dxButton" then return buttons[button].text end return false end function setButtonText(button, text) if button and getElementType(button) == "dxButton" and type(text) == "string" then buttons[button].text = text return true end return false end --meta.xml function="getButtonFont" type="client" /> function="setButtonFont" type="client" /> function="getButtonColor" type="client" /> function="setButtonColor" type="client" /> function="getButtonTextColor" type="client" /> function="setButtonTextColor" type="client" /> function="getButtonText" type="client" /> function="setButtonText" type="client" /> Si quieren que siga haciendo componentes dxGUI solo decírmelo por comentario Si encuentran algún error avisarme por comentario también
  18. Arsilex

    fileOpen

    ya resolví el error gracias de todas formas. No fue ninguna de las que mencionaste.
  19. local pickup = createPickup ( 0, 0, 5, 1,100) function isPlayerInTeam( thePlayer, teamName ) local pTeam = getPlayerTeam( thePlayer ) local fTeam = getTeamFromName( teamName ) if ( pTeam ) and ( fTeam ) then if ( pTeam == fTeam ) then return true end end end function pickupUse ( thePlayer ) if source == pickup then if isPlayerInTeam (thePlayer, "TeamName") then setPedArmor(thePlayer, 100) else cancelEvent() end end end addEventHandler ( "onPickupUse", getRootElement(), pickupUse )
  20. Arsilex

    fileOpen

    Bueno estoy utilizando fileOpen y todas esas funciones para crear un descargador de mods en mi servidor funciona todo bien el problema es que si añado mods me falla me sale el siguiente error fileOpen: unable to load file esto solo me sale con algunos mods no con todos por que podría ser
  21. Arsilex

    .map name

    Hello guys i need help is there any default mta function for get .map name from meta.xml or i need to use xml functions for get it?
  22. createPed setPedAnalogControlState removePedFromVehicle setPedAnimation createVehicle createVehicle setElementVelocity setCameraMatrix Creo que con esas funciones podrías conseguir lo que pretendes si me falto alguna añadirlas por favor.
×
×
  • Create New...