Jump to content

Lord Henry

Other Languages Moderators
  • Posts

    3,990
  • Joined

  • Last visited

  • Days Won

    182

Everything posted by Lord Henry

  1. O seu radar é editado ou é original do GTA?
  2. addEventHandler ("onPlayerLogin", root, function (prevAcc, currAcc) setElementData (source, "tempo.Logou", getTickCount()) end) function meuTempoOnline (thePlayer, cmd) if (getElementData (thePlayer, "tempo.Logou")) then local tempoJogando = getTickCount() - getElementData (thePlayer, "tempo.Logou") -- Isso também pode ser usado no client. outputChatBox ("Você esta jogando a exatamente: "..tempoJogando.." segundos.", thePlayer) end end addCommandHandler ("temp", meuTempoOnline) Em vez de salvar em variável, daria pra salvar como elementData para ser possível usar no client também.
  3. Por se tratar de um script server-side, você precisa indexar as variáveis no jogador. Você não pode usar variáveis simples pois outros jogadores irão influenciar nela. Isso significa, que quando um segundo jogador logar, a variável tempo do primeiro jogador será substituída pelo tempo do segundo jogador, perdendo o tempo online do primeiro jogador. E não use setElementData dentro de timers curtos. Pois eles são muito pesados.
  4. Use o Resource:Bone_attach Ele permite que você anexe elementos nos ossos dos personagens.
  5. Se estiver se referindo a um Hud editado, você precisa editar no resource dele.
  6. Na terceira função, não é if (botao == "left") then e sim if (button == "left") then, pois foi oq vc definiu nos parâmetros da function. (o que vc definiu dentro do parênteses após o nome da function.) O addEventHandler ("onClientGUIClick") sempre dará erro, pois vc está tentando adicionar uma função de clique antes de criar o botão. O botão será criado somente depois quando aquela primeira função for chamada. Para resolver isso vc tem 2 opções. Mover o addEventHandler para dentro daquela primeira função, depois de criar o botão. E em vez de usar button no segundo argumento, use botao no lugar. Manter o addEventHandler ali fora mas sem definir um botão específico. Dai use guiRoot no lugar de button. Dessa forma a função ativará ao clicar em qualquer guiCreateButton deste resource. E então dentro dessa função vc pode verificar if (source == botao) then para fazer funcionar somente no botão específico.
  7. onPlayerLogin setPlayerHudComponentVisible
  8. Ah, hauhauahuah. Não, não. Tostring converte 1 (número) para "1" (texto)
  9. Não há motivo para usar tonumber, pois imgAtual já é um número. Não existe lógica em converter número para um número. Você pode fazer isso: dxDrawImage (x, y, width, height, "img"..tostring(imgAtual)..".png")
  10. Sem problemas, qualquer coisa pode voltar a perguntar. Estamos aqui para ajudar. Agradeça deixando um Thanks nas respostas que lhe ajudaram.
  11. Está vendo as partes em laranja? O que está em laranja significa que é server-side e portanto não vai funcionar no client. O que está em azul significa que funciona em ambos. Ou seja, coloque no server-side. CEGUI por ser mais fácil e mais rápido de fazer.
  12. getPlayerAccount é uma função server-side. Você não pode executá-la em scripts client-side.
  13. Não se esqueça do givePlayerMoney pro source.
  14. local imagens = { [1] = dxCreateTexture ("imagem01.png"), [2] = dxCreateTexture ("imagem02.png"), } local tempo = 20 -- Em segundos. local frame = 1 local sX, sY = guiGetScreenSize () -- Recebe a resolução do jogador. Ex: sX = 1366, sY = 768 function renderImage () dxDrawImage (0, 0, sX, sY, imagens[frame]) -- Mostra a imagem 1 ou a imagem 2, dependendo do valor da variável frame. end addEventHandler ("onClientRender", root, renderImage) theTimer = setTimer (function () -- Timer que alterna o valor da variável frame de 1 e 2 a cada 20 segundos. Você pode adicionar mais imagens depois, se quiser. if (frame == 1) then frame = 2 else frame = 1 end end, tempo*1000, 0)
  15. @filmac o comando debugscript é client only. Você não pode executá-lo no Server Console. Execute-o no Client Console (F8).
  16. Corrigi para você.
  17. freeroam > fr_server.Lua Procura por createBlipAttachedTo e desativa a linha.
  18. Utilize o botão <> do fórum para postar scripts.
  19. Tem que editar o Freeroam, ele é que faz os blips dos players aparecerem no F11.
  20. Faltou verificar se hitElement é um jogador. function entrega2 (hitElement, matchingDimension) if (hitElement and getElementType (hitElement) == "player") then local v = getPedOccupiedVehicle (hitElement) if getElementData (v, "Carregado") == true then setElementFrozen (v, true) outputChatBox ("Espere o veículo ser descarregado!", hitElement, 0, 0, 150) setElementData (v, "Carregado", false) destroyElement (finalm2) destroyElement (blip2) setTimer (function (theHitElement, theSource) if isElementFrozen (theHitElement) then setElementFrozen (theHitElement, false) givePlayerMoney (theHitElement, math.random (1500,3500)) removeEventHandler ("onVehicleExit", theSource, remove2) end end, 3500, 1, hitElement, source) removeEventHandler ("onMarkerHit", source, entrega2) end end end
  21. addEventHandler ("onMarkerHit", ml, function (hitElement, matchingDimension) if (hitElement and getElementType (hitElement) == "player") then if getPlayerMoney (hitElement) >= 400 then takePlayerMoney (hitElement, 400) setElementPosition (hitElement, 733.827, -1355.561, 23.586) end end end)
  22. setElementCollisionsEnabled Mas se usar em jogadores, eles não vão conseguir andar, pois vão atravessar o chão também. Se você quer que seja possível atravessar somente mapas editados, você pode obter todos os elementos de mapas editados com getElementsByType e depois desativar a colisão dos jogadores com estes elementos usando setElementCollidableWith.
  23. Tá, só não entendi a necessidade de fazer via comando.
  24. kickPlayer ué. (o resource precisa ter permissão Admin)
×
×
  • Create New...