Jump to content

zMpyster

Members
  • Posts

    111
  • Joined

  • Last visited

Everything posted by zMpyster

  1. Depurei e apareceu tudo corretamente, quando o player está sem fica com o valor "nil", não o nil de nulo, e sim "nil" de verificação se o player tem ou não. Já usei também o outputChatBox pra verificar e vai tudo certinho também... http://prntscr.com/mrxzso Ainda aparece o mesmo erro.
  2. Gente, eu fiz um mod de comprar coisas no mercado só que toda vez que eu clico em comprar aparece sempre o mesmo erro attempt to call field '?' (a string value) local c = getElementData(getLocalPlayer(), "mercadoCoisas") local d = split(c, ',') setElementData(getLocalPlayer(), "mercadoCoisas", ""..d[1]..","..d[2]..","..d[3]..",1,"..d[5]..","..d[6]..","..d[7]..","..d[8]..","..d[9]","..d[10]) Eu já coloquei no inicio do código o d = {}, a linha do setElementData que está dando erro
  3. Vi em um post aqui no fórum que é possível mudar a cor do Cj, só que precisa usar shaders e eu n faço a miníma ideia de como posso fazer uma shaders desse tipo, se alguém puder me ajudar ficarei grato..
  4. Recomendo que vc salve em string, veja este tópico pode lhe ajudar
  5. v = {} function Comprar (_,state) if dxRoupa == false then if state == "down" then if isCursorOnElement (x*115, y*277, x*95, y*15) then if tonumber(dxCamisas) then local money = getPlayerMoney(localPlayer) elseif tonumber(dxCalcas) then elseif tonumber(dxTenis) then elseif tonumber(dxBone) then local money = getPlayerMoney(localPlayer) if money >= tonumber(bone[dxBone]) then takePlayerMoney(bone[dxBone]) outputChatBox(bone[dxBone]) setElementFrozen(localPlayer, false) setCameraTarget(localPlayer) removeEventHandler ("onClientRender", root, dxRoupas) removeEventHandler ("onClientRender", root, dxRoupasComprar) showCursor (false) dxRoupa = false if dxBone == 1 then if getElementData(localPlayer, "BoneClothes") then local c = getElementData(localPlayer, "BoneClothes") local v = split(c, ',') if v[1] == "1" then outputChatBox("OLA") else setElementData(localPlayer, "BoneClothes", "1,"..v[2]..","..v[3]..","..v[4] ) end else setElementData(localPlayer, "BoneClothes", "1,0,0,0" ) end elseif dxBone == 2 then if getElementData(localPlayer, "BoneClothes") then local c = getElementData(localPlayer, "BoneClothes") local v = split(c, ',') if v[2] == "1" then outputChatBox("OLAA") else setElementData(localPlayer, "BoneClothes", ""..v[1]..",1,"..v[3]..","..v[4] ) end else setElementData(localPlayer, "BoneClothes", "0,1,0,0" ) end elseif dxBone == 3 then if getElementData(localPlayer, "BoneClothes") then local c = getElementData(localPlayer, "BoneClothes") local v = split(c, ',') if v[3] == "1" then outputChatBox("OLAB") else setElementData(localPlayer, "BoneClothes", ""..v[1]..","..v[2]..",1,"..v[4] ) end else setElementData(localPlayer, "BoneClothes", "0,0,1,0" ) end elseif dxBone == 4 then if getElementData(localPlayer, "BoneClothes") then local c = getElementData(localPlayer, "BoneClothes") local v = split(c, ',') if v[4] == "1" then outputChatBox("OLAC") setElementData(localPlayer, "BoneClothes", false) else setElementData(localPlayer, "BoneClothes", ""..v[1]..","..v[2]..","..v[3]..",1" ) end else setElementData(localPlayer, "BoneClothes", "0,0,0,1" ) end end end end end end end end addEventHandler ("onClientClick", root, Comprar) Observe como uma função facilita totalmente a criação de um script.
  6. 'split' essa função que eu estava procurando, obrigado, ficará bem mais fácil agr
  7. Acabei "economizando" 3 setElementData, se alguém encontrar quaisquer erro me fale por favor
  8. function Comprar (_,state) if dxRoupa == false then if state == "down" then if isCursorOnElement (x*115, y*277, x*95, y*15) then if tonumber(dxCamisas) then local money = getPlayerMoney(localPlayer) elseif tonumber(dxCalcas) then elseif tonumber(dxTenis) then elseif tonumber(dxBone) then local money = getPlayerMoney(localPlayer) if money >= tonumber(bone[dxBone]) then takePlayerMoney(bone[dxBone]) outputChatBox(bone[dxBone]) setElementFrozen(localPlayer, false) setCameraTarget(localPlayer) removeEventHandler ("onClientRender", root, dxRoupas) removeEventHandler ("onClientRender", root, dxRoupasComprar) showCursor (false) dxRoupa = false if dxBone == 1 then if getElementData(localPlayer, "BoneClothes") then local number = (getElementData(localPlayer, "BoneClothes")) if tonumber(number) >= 1000 then setElementData(localPlayer, "BoneClothes", false) outputChatBox(number .."D") else setElementData(localPlayer, "BoneClothes", 1000 + number ) outputChatBox(1000 + number .."C") end else setElementData(localPlayer, "BoneClothes", 1000) end elseif dxBone == 2 then if getElementData(localPlayer, "BoneClothes") then local number = (getElementData(localPlayer, "BoneClothes")) if tonumber(number) == 100 or tonumber(number) >= 1100 or tonumber(number) == 101 or tonumber(number) == 111 or tonumber(number) == 1110 or tonumber(number) == 110 then setElementData(localPlayer, "BoneClothes", false) outputChatBox(number .."B") else setElementData(localPlayer, "BoneClothes", number + 100 ) outputChatBox(number + 100 .."A") end else setElementData(localPlayer, "BoneClothes", 100) end elseif dxBone == 3 then if getElementData(localPlayer, "BoneClothes") then local number = (getElementData(localPlayer, "BoneClothes")) if tonumber(number) == 10 or tonumber(number) == 110 or tonumber(number) == 1110 or tonumber(number) == 1111 or tonumber(number) == 111 or tonumber(number) == 11 or tonumber(number) == 1010 or tonumber(number) == 1011 then setElementData(localPlayer, "BoneClothes", false) outputChatBox(number + 10 .."E") else setElementData(localPlayer, "BoneClothes", number + 10 ) outputChatBox(number + 10 .."F") end else setElementData(localPlayer, "BoneClothes", 10) end elseif dxBone == 4 then if getElementData(localPlayer, "BoneClothes") then local number = (getElementData(localPlayer, "BoneClothes")) if tonumber(number) == 1 or tonumber(number) == 11 or tonumber(number) == 111 or tonumber(number) == 1011 or tonumber(number) == 1111 or tonumber(number) == 1001 then setElementData(localPlayer, "BoneClothes", false) outputChatBox(number + 1 .."H") else setElementData(localPlayer, "BoneClothes", number + 1 ) outputChatBox(number + 1 .."G") end else setElementData(localPlayer, "BoneClothes", 1) end end end end end end end end addEventHandler ("onClientClick", root, Comprar)
  9. Olá pessoas eu dnv aqui com dúvida kk, queria saber como posso simplificar o setElementData e o setAccountData, para evitar trafego de rede... if tonumber(dxBone) then if dxBone == 1 then addPedClothes ( localPlayer, "captruck", "captruck", 16 ) Texto("Boné", 150, 217, 300, 234, tocolor(255, 255, 255, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false) Texto("R$ 50", 167, 240, 281, 257, tocolor(0, 169, 15, 254), 1.00, "default", "center", "center", false, false, false, false, false) bone[1] = 50 elseif dxBone == 2 then addPedClothes ( localPlayer, "skullygrn", "skullycap", 16 ) Texto("Touca", 150, 217, 300, 234, tocolor(255, 255, 255, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false) Texto("R$ 25", 167, 240, 281, 257, tocolor(0, 169, 15, 254), 1.00, "default", "center", "center", false, false, false, false, false) bone[2] = 25 elseif dxBone == 3 then addPedClothes ( localPlayer, "hatmancblk", "hatmanc", 16 ) Texto("Chapéu", 150, 217, 300, 234, tocolor(255, 255, 255, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false) Texto("R$ 20", 167, 240, 281, 257, tocolor(0, 169, 15, 254), 1.00, "default", "center", "center", false, false, false, false, false) bone[3] = 20 elseif dxBone == 4 then addPedClothes ( localPlayer, "capgang", "cap", 16 ) Texto("Boné Preto", 150, 217, 300, 234, tocolor(255, 255, 255, 255), 1.00, "default-bold", "center", "center", false, false, false, false, false) Texto("R$ 45", 167, 240, 281, 257, tocolor(0, 169, 15, 254), 1.00, "default", "center", "center", false, false, false, false, false) bone[4] = 45 end end function Comprar (_,state) if dxRoupa == false then if state == "down" then if isCursorOnElement (x*115, y*277, x*95, y*15) then if tonumber(dxCamisas) then local money = getPlayerMoney(localPlayer) elseif tonumber(dxCalcas) then elseif tonumber(dxTenis) then elseif tonumber(dxBone) then local money = getPlayerMoney(localPlayer) if money >= tonumber(bone[dxBone]) then takePlayerMoney(bone[dxBone]) outputChatBox(bone[dxBone]) setElementFrozen(localPlayer, false) setCameraTarget(localPlayer) removeEventHandler ("onClientRender", root, dxRoupas) removeEventHandler ("onClientRender", root, dxRoupasComprar) showCursor (false) dxRoupa = false if dxBone == 1 then if getElementData(localPlayer, "BoneClothes") then ten = (getElementData(localPlayer, "BoneClothes")) setElementData(localPlayer, "BoneClothes", 1 .."".. 1 .."".. 0 .."".. 1 .."" ) outputChatBox(ten) else setElementData(localPlayer, "BoneClothes", dxBone) end end end end end end end end addEventHandler ("onClientClick", root, Comprar) Aqui está uma tentiva de salvar se o player tiver 1 bone ali irá ficar 1 onde está 0, más sem sucesso, o getElementData retorna o texto inteiro ex: 1101 e não tenho ideia de como faço para ver o valor de cada número sem retornar os 4 números. 0 = Não tem boné 1 = tem boné edit1 : esses elseif estão sendo por causa que cada um tem o seu valor, dxCalcas quando o player estiver na tabela de comprar calças e assim por diante
  10. Tem alguma taxa considerada muito alta ou alta?
  11. Estou criando um servidor e queria usar alguns accountsDatas só que tenho medo de fazer o script e o server começar a lagar dps de um tempo, o meu server atualmente é de 200 slots e hd ilimitado, estou usando + ou - uns 50 setAccountData, na WIKI diz que tem que tomar cuidado com a quantidade de datas usadas, queria que alguém me desse um valor ou então me falasse como posso verificar se o server estiver lagando será por causa dos accountsDatas, o meu server não está lagando, más quero prevenir...
  12. Olá, até onde eu sei o só é possível add clothes no cj certo? Como alguém faria pra colocar uma mulher no jogo sem substituir o cj e que ela tenha como colocar roupas e tirar, teria que ser pelo bone_attach né?
  13. Acabei de me deparar com um problema, eu peguei uns tênis e mesmo mudando a resolução o MTA ta crashando, alguma sugestão?
  14. Consegui, era a resolução mesmo, obrigado
  15. No txd está... Size 512*512, 32 bit
  16. https://wiki.multitheftauto.com/wiki/Clothing_Component_IDs primeiro id
  17. Já coloquei outra txd em um capacete, más, está crashando...
  18. txd = engineLoadTXD("10ls.txd") engineImportTXD(txd, 30152) Gente toda vez que inicio o resource e coloco o clothes no cj o MTA crasha, oq pode tar ocasionando esse crash?
  19. function buzina() if isPedInVehicle(localPlayer) then local oni = getPedOccupiedVehicle(localPlayer) local motorista = getVehicleController(oni) if motorista == localPlayer then local id = getElementModel(oni) if id == 537 then local x,y,z = getElementPosition(oni) local oni = getPedOccupiedVehicle(localPlayer) addEventHandler ( "onClientRender", getRootElement(), cc ) end end end end bindKey("h", "down", buzina) soundinside2 = {} function cc() local abc = getPedOccupiedVehicle(localPlayer) soundinside2[abc] = playSound3D("tremb.mp3", 0,0,0) attachElements(soundinside2[abc], abc) setSoundVolume(soundinside2[abc], 2.3) setSoundMinDistance(soundinside2[abc], 5) setSoundMaxDistance(soundinside2[abc], 300) setTimer( function() removeEventHandler ( "onClientRender", getRootElement(), cc ) end, 3500,1) end Quando algum player estiver em um trem e pressionar H era pra sair um buzina que todos conseguissem ouvir, más, só ele ouve, alguém ajuda
  20. Só pra desencargo de consciência, você achou algum erro
  21. Não está tendo erro o script só estou com medo de que quando entre bastante pessoas bug ent resolvi pedir algumas sugestões e opiniões function Init () if ( getResourceFromName ( "scoreboard" ) and getResourceState ( getResourceFromName ( "scoreboard" ) ) == "running" ) then scoreboard = exports.scoreboard _dxver = false elseif ( getResourceFromName ( "dxscoreboard" ) and getResourceState ( getResourceFromName ( "dxscoreboard" ) ) == "running" ) then scoreboard = exports.dxscoreboard _dxver = true else outputDebugString ( "No scoreboard resource has been started", 2 ) _initp = false end if _initp then scoreboard:addScoreboardColumn ( "ID", getRootElement(), 1, 0.05 ) -- Add the ID column sortScoreboard( "ID" ) end if not _loaded then loadID() end end addEventHandler ( "onResourceStart", resourceRoot, Init ) function loadID () _loaded = true for _, player in ipairs ( getElementsByType ( "player" ) ) do assignPlayerID ( player ) end end function assignPlayerID ( player ) local acc = getPlayerAccount(player) if getAccountData(acc, "ID") then local IDdeQuemJaTem = getAccountData(acc, "ID") return setElementData(player, "ID", IDdeQuemJaTem) else local chorID = nil local chorID = math.random(1,999) if isIDAvailable ( chorID, player ) == true then setElementData ( player, "ID", chorID ) sortScoreboard( "ID" ) availableID[ chorID ] = false else end end end n = {} function isIDAvailable ( id, player ) local accs = getAccounts() for i, accounts in ipairs(accs) do if getAccountData(accounts, "ID") then local idNew = getAccountData(accounts, "ID") if idNew == id then n[player] = false break else n[player] = true end else n[player] = true end end if n[player] == true then return true else assignPlayerID(player) return false end end function onLeave () local acc = getPlayerAccount(source) local s_id = getElementData ( source, "ID" ) or getAccountData(acc, "ID") availableID[ s_id ] = false setAccountData(acc, "ID", s_id) end addEventHandler ( "onPlayerQuit", getRootElement(), onLeave ) function onLogin (_, c) assignPlayerID(source) end addEventHandler ( "onPlayerLogin", getRootElement(), onLogin )
  22. Oi gente já procurei de tudo no mta wiki más ainda continuo na dúvida se existe alguma forma de ligar um trem ao vagão sem ser pelo attachElements, se alguém souber me fale pf.
  23. Só pra não ter que criar outro tópico, estou com uma dúvida, fiz um mod de headshot, só que quando eu crio um ped e cancelo os eventos 'onClientPedDamage' e 'onClientPedWasted' não adiantam pois no headshot está o killPed será que teria algum forma de eu desabilitar o killPed para esse ped?
  24. Não lord era só com esse, eu dps daquilo fiquei com um pouco de medo ent tirei essa print de agr, e na opinião de vcs melhorou? obs: já coloquei o y no lugar do x
×
×
  • Create New...