-
Posts
4,005 -
Joined
-
Last visited
-
Days Won
184
Everything posted by Lord Henry
-
Utilize o timestamp do getRealTime server-side para calcular quantos segundos o jogador passa logado. Salve a quantidade de segundos na conta do jogador.
-
[AJUDA] Somente uma ACL pode utilizar o comando
Lord Henry replied to Matheus.'s topic in Programação em Lua
Olá. Utilize o botão <> do fórum para postar scripts. Não cole direto no texto. -
A blindagem do veículo faça server-side. A imortalidade do jogador dentro do veículo faça client-side. -- SERVER-SIDE function blindar(thePlayer) if (getElementModel(source) == 601) then -- (source = veículo que o jogador entrou) Se o modelo do veículo é o 601 (S.W.A.T.) então: if (isVehicleDamageProof(source)) then -- Se o veículo que o jogador entrou já estiver blindado, então: outputChatBox ("Este veículo já está blindado!", thePlayer, 255, 255, 255) else -- Se o veículo que o jogador entrou não está blindado, então: setVehicleDamageProof (source, true) -- Blinda o veículo. outputChatBox ("Este veículo ficou blindado.", thePlayer, 255, 255, 255) end end end addEventHandler("onVehicleEnter", root, blindar) -- Ativa a função blindar quando alguém entrar em algum veículo. -- CLIENT-SIDE function danoBlindado() local blindadocar = getPedOccupiedVehicle (localPlayer) -- blindadocar recebe o veículo que o jogador está dentro. (será false caso o jogador esteja a pé) if (blindadocar) then -- Se o jogador está em um veículo, então: (blindadocar não é false) if (getElementModel(blindadocar) == 601) then -- Se o modelo do veículo que o jogador está é o 601 (S.W.A.T.) então: cancelEvent() -- Cancela o dano no jogador. end end end addEventHandler("onClientPlayerDamage", localPlayer, danoBlindado) -- Ativa sempre que o localPlayer tomar dano.
-
Utilize a função exportada do painel admin para saber qual o país do jogador: myCountry = exports.admin:getPlayerCountry(thePlayer)
-
Veículos criados client-side servem apenas para visualização. Eles não podem ser usados por jogadores. O evento onPlayerVehicleEnter é server-side, então não vai funcionar em scripts client-side.
-
Utilize o botão <> do fórum para postar scripts. Não cole ele direto no texto.
-
Sem problemas. Estamos aqui pra ajudar.
-
Reinstale seu MTA.
-
A função setElementSpeed é do tipo útil. Portanto vc precisa adicionar o código-fonte dela no seu script antes de usar. function setElementSpeed(element, unit, speed) local unit = unit or 0 local speed = tonumber(speed) or 0 local acSpeed = getElementSpeed (element, unit) if acSpeed and acSpeed ~= 0 then -- if true - element is valid, no need to check again local diff = speed / acSpeed if diff ~= diff then return false end -- if the number is a 'NaN' return false. local x, y, z = getElementVelocity (element) return setElementVelocity (element, x*diff, y*diff, z*diff) end return false end
-
Separadamente cada arquivo não tem como. Mas vc pode ver quanto que cada resource está consumindo por meio do resource ipb. /start ipb /ipb
-
ACL Group é server-side. Utilize element-data para isso.
-
Está faltando um end para fechar o escopo.
-
createObject - Cria um objeto. Use-o para criar 2 objetos, um para a câmera apontar e outro pra câmera seguir. setElementAlpha - Deixe os dois objetos invisíveis. moveObject - Move os objetos em animação. getElementPosition - Obtém a posição atual do objeto, use a posição obtida no cameraMatrix. setCameraMatrix - Seta posição da câmera e posição para onde ela deve apontar. setCameraTarget - Use para fazer a câmera voltar ao jogador depois da animação. onClientRender - Use para ficar atualizando a posição da câmera a cada frame.
- 1 reply
-
- 1
-
-
Respondido no tópico original.
- 1 reply
-
- 1
-
-
Como manter um servidor de MTA seguro e livre de ataques
Lord Henry replied to +Everyone's topic in Tutoriais em geral
@MaasterSim. Serve para qualquer comando que faça tais verificações. -
Divulgando servidor no privado do meu servidor
Lord Henry replied to BSRHenrique's topic in Portuguese / Português
Conteúdo separado do tópico anterior para um tópico separado. Não reviva tópicos antigos. Sobre o seu problema, não podemos fazer nada. É uma falha na segurança do seu servidor. Basta banirem o usuário que está divulgando do seu servidor, se mesmo assim continuar você pode denunciar a conta para o Discord por fazer spam. -
Somente uma vez. Se criar outro tópico vc será punido por spam. Você pode editar o tópico caso queira adicionar novas informações. Você também não deve ficar revivendo o tópico.
-
-
Tópico movido para Programação Lua. Você tinha postado na seção geral.
- 1 reply
-
- 1
-
-
Tópico movido para Programação Lua.
-
Mais detalhes: O math.random é uma função nativa da linguagem Lua que gera um número aleatório obedecendo aos parâmetros que você configurar nele. Se você usar math.random () sem argumentos, ele vai gerar um valor real entre 0 e 1. (0, 0.0484, 0.52, 0.9999) mas nunca vai gerar 1. Seu intervalo é [0,1) Se você usar math.random (5) ele vai gerar um valor inteiro entre 1 e 5. (1, 2, 3, 4 ou 5). Se você usar math.random (-3, 2) ele vai gerar um valor inteiro entre -3 e 2. (-3, -2, -1, 0, 1, 2). Usando número real nos parâmetros vai gerar erro. A única forma de gerar números reais é no primeiro exemplo. Os dois parâmetros, se declarados, precisam ser inteiros, podendo ser negativos.
-
Olá. Não existe um comando nativo que faça isso. O mais próximo seria vc ter acesso ao painel admin e usar /destroyvehicle <nome de quem está dentro do veículo> Se você quer um comando que funcione por fora do veículo, vc precisará criar um resource para isso.
-
ERRO [ CD09 ]
Lord Henry replied to Murilo Renner's topic in Ajudas relacionadas ao MTA:SA (Cliente/Servidor)
E cadê o relatório dele? Vc tem que mostrar. -
Já que vc está traduzindo, troque Width por largura e Height por altura. Geralmente os novatos não entendem inglês e não sabem oq significam. É mais fácil usar posição e tamanho fixos para facilitar o entendimento. Se vc usa posição e escala relativas, como no seu exemplo, o novato precisará saber mais de matemática para entender como funciona. O jeito que vc usou o guiGetScreenSize é mais confuso para novatos, pois a maioria não entende de tabelas ainda. Prefira o uso padrão nos tutoriais, que seria usando duas variáveis. local screenX, screenY = guiGetScreenSize() Novatos podem não entender o uso do math.floor, então você deve explicar seu uso ou não usá-lo no tutorial. Sim, é necessário ter total domínio do assunto para fazer um tutorial. É válido o seu objetivo de ajudar, por isso estamos dando este feedback para que melhore. Você pode ainda editar o tópico se quiser.