Jump to content

Lord Henry

Other Languages Moderators
  • Posts

    3,980
  • Joined

  • Last visited

  • Days Won

    181

Everything posted by Lord Henry

  1. Neste exemplo, ele vai criar um marker na posição do elemento que teve a elementData "Transportador" setada em true. addEventHandler ("onElementDataChange", root, function (theKey, old, new) if (theKey == "Transportador") then -- Se a data que foi alterada for "Transportador" então: if (new == true) then -- Se o novo valor da data for true, então: local x,y,z = getElementPosition (source) local theMarker = createMarker (x, y, z, "cylinder") -- Cria um marker na posição do elemento. end end end)
  2. Bom, dai tem o evento OnElementDataChange que aciona sempre que alguém seta algum valor em algum elementData.
  3. Não estou vendo nenhum attachElements no seu código. Testei aqui e funcionou normalmente. (entre em qualquer veículo e ele vai criar um marker e anexar ele no veículo) addEventHandler ("onVehicleEnter", root, function () local x,y,z = getElementPosition (source) local theMarker = createMarker (x, y, z, "cylinder") attachElements (theMarker, source, 0, -4, 0) end)
  4. Somente nas configurações do MTA. E só vai mudar pra vc.
  5. createPed getElementPosition addCommandHandler
  6. É possível de outra forma. Se utilizar call dai não funciona.
  7. Olá. Neste tópico tem uma discussão bem interessante sobre as proteções de resources. Você também vai achar alguns exemplos de proteções e como elas funcionam.
  8. Assim como lhe respondi no privado, o erro acontece pois ele não consegue modificar uma função nativa do MTA getServerPassword Troque o nome da função por alguma que não seja nativa, por exemplo getServerPass e o script funcionará normalmente.
  9. Considerando que você não parece preocupado com o desempenho, sete uma elementData nos Staffs (setElementData) e verifique se o jogador tem essa data no script usando getElementData. Se ele não tiver, prossegue com o esquema de fome e sede nele, se tiver, ignora o script e não muda a fome e sede no staff.
  10. Adicione isso na função do comando, logo abaixo da condição if player and isElement(player) then if (player == thePlayer) then return end -- Se o jogador obtido é o mesmo que está executando o comando, então nada acontece.
  11. Olá, utilize o botão <> do fórum para postar scripts. Não cole direto no texto.
  12. Vc só tem 2 GB de RAM. Isso é bem pouco. E vc estava com Chrome aberto com várias abas.
  13. Olá. Utilize o botão <> do fórum para postar códigos. Não cole direto no texto.
  14. Olá. Prefira fazer um sistema de segurança melhor para as bases em vez de proibir os jogadores de pular com as bikes. Um sistema bem comum e simples é você criar uma cubo de colisão dentro da base usando createColCuboid e depois chutar qualquer jogador que entre nessa colisão e não tiver permissão de entrar na base usando o evento onColShapeHit.
  15. Sim, é possível criar um mapa inteiro com modelagens novas. Só terá um trabalho absurdo pra montar.
  16. Um jeito mais fácil e otimizado é você apenas contar quantos jogadores tem permissão de mutar players. Você usa a função hasObjectPermissionTo.
  17. @CarCrasherthis is a YouTube thing. Not an MTA issue.
  18. Não funciona se fizer ao mesmo tempo que o bot é criado. Pois ele demora até ser concluída a sua criação. Função spawnBot é chamada. Cria o Ped no mesmo instante, este ped é o elemento retornado pela função spawnBot. Chama o evento "onBotSpawned" no mesmo instante. O source deste evento é o Ped, mas ele ainda não é um Bot. Seta o ID da arma como elementData "BotWeapon" no Ped, no mesmo instante que a função foi chamada. Seta o time como elementData "BotTeam" no Ped, no mesmo instante que a função foi chamada. (O bot não é setado de fato em um time, pois isso só funciona com players, mas ele usa essa data para atacar quem não estiver no time de sua data.) Após 100 milissegundos que a função foi chamada, seta o Ped no interior. Após 100 milissegundos que a função foi chamada, seta o Ped na dimensão. Após 200 milissegundos que a função foi chamada, torna o Ped um Bot setando elementData "slothbot" nele. Após 200 milissegundos que a função foi chamada, permite que o Ped ataque, mesmo que você já tenha tentado proibir antes. Aqui é o instante ideal para proibir que ele ataque. (Entre 200 e 300ms) Após 300 milissegundos que a função foi chamada, inicia o funcionamento do Bot. Após 400 milissegundos que a função foi chamada, seta a elementData de "leader" se o status for "following" ou "target" se o status for "chasing". Após 600 milissegundos que a função foi chamada, seta o status do bot como elementData "status". Após 800 milissegundos que a função foi chamada, seta arma no Bot, com 99.999 de munição. O tempo ideal para mandar o bot não atacar, é entre o tempo que ele se tornou bot (200ms) e o tempo que ele vai começar a funcionar (300ms). Mas vale lembrar que essa função não vai impedir que ele siga o jogador. Para evitar que o Bot fique seguindo, crie ele no modo "guarding". AtendenteLoja1 = exports["slothbot"]:spawnBot (308.158, -143.091, 999.602, 0, PedModel, 7, 5, false, 0, "guarding") -- Cria o bot no modo "guarding" para ele manter sua posição. setTimer (function () -- Executa isso após 250 milissegundos. (depois que ele se tornou bot e antes dele começar a funcionar) exports["slothbot"]:setBotAttackEnabled (AtendenteLoja1, false) -- Faz o bot não atacar. Mas ele ainda vai ficar seguindo o alvo se não estiver no modo "guarding" end, 250, 1)
  19. Para fazer giroflex funcional que acende de verdade (diferente dos que criam coronas coloridos tipo /alerta) é necessário que você use shaders. Esse shader basicamente serve para substituir a textura da luz apagada por uma textura de luz acesa. Mas é necessário adaptar o veículo para que isso funcione. Aqui tem um tutorial sobre como adaptar o veículo para criar luzes customizadas.
  20. Olá. Você está sendo expulso dos servidores pelo sistema anti-cheat do MTA que detectou que seu GTA está com alguma modificação/cheat. Também pode acontecer se você estiver usando cheat em outros jogos que podem dar conflito no MTA, o que acaba sendo detectado também. Remova qualquer hack/cheat do seu sistema, reinicie o computador e tente novamente.
  21. Você precisa especificar qual estado de clique você quer que funcione. Caso contrário ele vai ativar ao apertar o botão e depois ao soltar o botão. Ali nos parâmetros da função, adicione os parâmetros button, state e então dentro da função, crie uma condição if (state == "down") then para funcionar o script.
  22. @Balorattutilize o botão <> do fórum para postar scripts. Não cole direto no texto.
×
×
  • Create New...