Jump to content

main

Members
  • Content Count

    110
  • Joined

  • Last visited

  • Days Won

    1

Everything posted by main

  1. Coloque para ler primeiro o arquivo que contém as variáveis globais <meta> <info author="Gaimo"/> <script src="c.Lua" type="client"/> <script src="vars.Lua" type="server"/> <script src="s.Lua" type="server"/> </meta>
  2. Aqui está o erro, os três primeiros argumentos não condiz com a posição desejada do texto resultando em um não aparecimento do texto mediante a verificação de distancia if getDistanceBetweenPoints3D(0 , 0, 4 + 5, x, y, z) < 10 then Desta forma, deve solucionar o problema: local pX,pY,pZ = 1007.8150024414, -1993.7969970703, 13.155365943909 function texto() local x,y,z = getElementPosition( source ) if getDistanceBetweenPoints3D(pX, pY, pZ, x, y, z) < 10 then local coords = {getScreenFromWorldPosition(pX,pY,pZ)} if coords[1] and coords[2] then
  3. Não necessita do source como parâmetro no server-side -- CLIENT-SIDE triggerServerEvent ( "onGreeting", localPlayer, guiGetText ( GUIEditor.edit[1] ) ) -- SERVER-SIDE function greetingHandler ( message ) local data = getAccountData ( getAccount("database", "senha"), message ) if data then outputChatBox("Jogador : "..getPlayerName(source), source, 255, 255, 255, true) else outputChatBox("Não achei :(", source, 255,255,255, true) end end addEvent( "onGreeting", true ) addEventHandler( "onGreeting", getRootElement(), greetingHandler )
  4. Basta verificar no evento onClientMarkerHit se o hitElement é igual a localPlayer addEventHandler( "onClientMarkerHit", getRootElement(), function (thePlayer, dim) -- Source = Marker que o player hitou if dim and thePlayer == localPlayer then if source == getJob and not isPedInVehicle(thePlayer) then showPanel(thePlayer) end if source == startMarker then -- Avisar se o jogador já tem as caixas e não pode pegar mais if aBoxes >= 10 then outputChatBox("Aviso, player ja tem as caixas") return end -- Roda alguma
  5. local tempoMensagem = 5 -- Tempo em minutos para aparecer a mensagem local enviarMensagem = { "#FFFFFFO banco cobrou #FFFF00{1} #FFFFFFda sua conta.", "#FFFFFFVocê perdeu #FFFF00{1} #FFFFFFquando estava a caminho do trabalho." } setTimer(function() for _, player in ipairs(getElementsByType("player")) do local value = math.random(100, 1000) takePlayerMoney(player, value) local randomMessage = enviarMensagem[math.random(1, #enviarMensagem)] outputChatBox(format(randomMessage, value), root, 255, 255, 255, true) end end, 60000 * tempoMensagem, 0) function format(s, ...)
  6. Depurei o código e sim, estão sendo salvas porém na pos { 0, 0, 0 }.
  7. To com um problema no servidor referente ao spawn no 'limbo' ( pos { 0, 0, 0 } ); Alguns jogadores spawnam no 'limbo' após cair do servidor por perda de pacote ou algo relacionado a isso; Parece que antes de acontecer isso ele é direcionado pro limbo por padrão. Tentei uma forma de solucionar no meu save-system, porém não obtive sucesso. Há alguma forma melhor de solucionar isso? local joinX, joinY, joinZ = 1481.1440429688, -1766.98828125, 18.795755386353 local spawnX, spawnY, spawnZ, rotZ = 2029.8, -1406.0, 23.1, 180 function loadAccountData(source) if isElement(source) then
  8. function checkPointFinal(hitElement, d) if isElement(hitElement) and getElementType(hitElement) == "player" and d then -- se existir o elemento e se o tipo do elemento for player e se esta na mesma dimensao do marcador if getElementData(hitElement, "checkpoint3") then destroyElement(getPedOccupiedVehicle(hitElement)) setElementVisibleTo(blip2, hitElement, false) setElementVisibleTo(blip3, hitElement, false) setElementVisibleTo(blip4, hitElement, false) setElementVisibleTo(blip5, hitElement, false) setElementVisibleTo(job2, hitElement, false) setElementVisibleTo(job3,
  9. Creio que com essa função você consiga fazer isso: https://wiki.multitheftauto.com/wiki/FxAddBlood
  10. O resource padrão 'defaultstats' faz isso, basta você configurar os valores de cada habilidade na tabela.
  11. Você quer resetar o saldo de todos os jogadores, ou só de um jogador especifico?
  12. Sem código não tem como saber como está sendo salvo...
  13. Creio que seja do resource 'deathmessages', basta desativa-lo. Está localizado na pasta [gameplay].
  14. Seu código está bagunçado e não faz sentido você colocar o parâmetro do evento na função do setTimer. Comentei cada parte do código, espero que entenda. -- SERVER-SIDE local commands = { ["coco"] = true } local antiSpam = {} addEventHandler("onPlayerCommand", root, function(cmd) -- quando executar o comando if commands[cmd] then -- verifica se é o comando que está na tabela if isTimer(antiSpam[source]) then -- se existir o timer cancelEvent() -- cancela o evento fazendo com o que o comando não seja executado outputChatBox("Aguarde mais um pouco para utilizar o coman
  15. Da próxima vez, utilize o botão <> do fórum para postar código. Bom, vamos lá, você pode fazer isto de 2 formas: Utilizando 'or', que na tradução para português é 'ou' function revistar (source, cmd, pname) local accountname = getAccountName(getPlayerAccount(source)) if isObjectInACLGroup("user."..accountname, aclGetGroup("BOPE")) or isObjectInACLGroup("user."..accountname, aclGetGroup("PMERJ")) then -- seguindo a lógica, se estiver na acl BOPE ou PMERJ, executa a funcao local Player_2 = getPlayerFromPartialName(pname) if isElement(Player_2) then
  16. Tente isto: -- func para arredondar os numeros, encontrada em: Lua-users.org/wiki/SimpleRound function round2(num, numDecimalPlaces) return tonumber(string.format("%." .. (numDecimalPlaces or 0) .. "f", num)) end local kill = getElementData(source, "Kills") or 0 local mortes = getElementData(source, "Deaths") or 0 local kdr = round2(kill/mortes, 3)
  17. Entendi @Lord Henry, muito obrigado pela ajuda!
  18. Olá pessoal, estou tentando identificar o clique no porta-malas do veículo com a função processLineOfSight, porém sempre que clico no porta-malas do veículo retorna 4 identificando que o clique foi na parte de trás do carro. Eu acho que as posições que coloquei no parâmetro da função estejam erradas e não estou conseguindo solucionar isto. local vehicleClicked = nil function fClientClick(button, state, absoluteX, absoluteY, worldX, worldY, worldZ, clickedElement) if button == "left" and state == "up" then if not getPedOccupiedVehicle(localPlayer) and isElement(clickedElement) and getEl
  19. local screenW, screenH = guiGetScreenSize() local render = false -- variável function f_tabPanel() dxDrawLine(screenW * 0.3160, screenH * 0.3444, screenW * 0.7694, screenH * 0.3444, tocolor(41, 49, 213, 255), 1, false) end function f_executeTab() local addRemove = render and removeEventHandler("onClientRender", root, f_tabPanel) or addEventHandler("onClientRender", root, f_tabPanel) -- se a váriavel render for true vai remover o evento caso contrário irá adicionar if addRemove then render = not render -- alterna a variável end end addCommandHandler("rectangle", f_executeT
  20. @MaligNos deu certo convertendo para string, muito obrigado!
  21. @MaligNos Isso que estava precisando e não sabia como fazer! Na parte de incluir deu certo, porém na parte de remover não obtive sucesso O que tentei abaixo: addEvent ( "housing:removeWeaponHouse", true ) addEventHandler ( "housing:removeWeaponHouse", resourceRoot, function ( weaponID, ammo ) local houseName = playersInInterior [ client ] if houseName then local houseData = getHouseData( houseName, "houseWeapons" ) if houseData then local itens = fromJSON( houseData ) giveWeapon( client, weaponID, ammo, true ) itens [ weaponID ] = nil setHouseData ( hou
  22. Olá pessoal, estou com uma dúvida de como posso fazer para inserir e retirar mais de 1 no painel de inventário da casa, pois só estou conseguindo fazer pra setar 1 arma. OBS: Estou setando na database em toJSON Imagem do painel para melhor entendimento do funcionamento: https://imgur.com/a/DNtKdpv addEvent ( "housing:addWeaponHouse", true ) addEventHandler ( "housing:addWeaponHouse", resourceRoot, function ( weaponID, ammo ) local houseName = playersInInterior [ client ] if houseName then local table = fromJSON( getHouseData( houseName, "houseWeapons" ) ) if table [ to
  23. Como é função útil, então necessita que você coloque isso dentro do seu código Em seguida, só utilizar a função: convertNumber(getElementData ( localPlayer, "Bank:Caixa" )) or 0
×
×
  • Create New...