Jump to content

andreisrw

Members
  • Content Count

    244
  • Joined

  • Last visited

  • Days Won

    7

andreisrw last won the day on October 4 2020

andreisrw had the most liked content!

Community Reputation

130 Excellent

About andreisrw

  • Rank
    Red-Headed Stepchild
  • Birthday 23/12/1999

Details

  • Gang
    None
  • Location
    São Paulo
  • Occupation
    Developer
  • Interests
    <script>alert('-1');</script>

Recent Profile Visitors

2,233 profile views
  1. Funções necessárias: addCommandHandler (adicionar o comando desejado) getPlayerFromID (você deve criar) isElement (verificar se o jogador que está vindo do ID realmente é um elemento válido) getElementPosition (obtém a posição do jogador) getDistanceBetweenPoints3D (obtém a distância dos jogadores) takePlayerMoney (retira o dinheiro do jogador especificado)
  2. Olá. Eu não recomendo fazer isso. O que você pode fazer, é armazenar as informações do mapa, apenas uma vez, em uma tabela. Depois, somente quando precisar, você cria o mapa para o jogador. Crie também uma checagem de dimensão: caso o jogador for para uma dimensão que seja diferente da atual e o mapa lá ainda não esteja criado, então você envia a tabela que contém as informações do mapa para ele.
  3. Você consertou um erro e criou outro. Veja abaixo o que você deve fazer. Além disso, tente não usar nome de função igual do MTA. Você deixou a sua função com o mesmo nome da função do MTA. (stopSound) Não se esqueça também de alterar o nome do terceiro parâmetro do evento. Ele deve ter o mesmo nome da função escolhida.
  4. Você pode sim. Invés de adicionar o destroyElement diretamente, faça um trigger para o server-side, e destrua-o lá. NOTA: Apenas objetos que foram criados em determinado lado, podem ser removidos. Objetos criados em client-side, só podem ser manuseados client-side, e vice-versa. Porém, isso não te impede de manuseá-los através de trigger. Posso estar enganado sobre, estou apenas relatando o que aconteceu comigo a algum tempo atrás.
  5. function whenClick(button, state, _, _, _, _, _, clickedElement) local isLeft = button == "left" local isUp = state == "up" if isLeft and isUp then local object = clickedElement if isElement(object) and getElementType(object) == "object" then outputChatBox(getElementModel(object)) end end end addEventHandler("onClientClick", root, whenClick) Código testado. Não é necessário verificar se a pessoa que clicou é um jogador, pois apenas um jogador pode clicar. Então é sem sentido. Apenas não adicionei aquela elementData, faça isso você mesm
  6. Você tem o resource Fonts no seu servidor? Se sim: ligue-o. Se não: deixe as fontes padrão do MTA. Altere todas as fontes para "default-bold".
  7. O nome do parâmetro dos eventos, está errado. Ele possui um nome diferente da função. Inclusive, por mais que sejam lados opostos (client-side e server-side), tente utilizar nomes diferentes para funções. function stopSoundonLogin() if isElement(sound) then stopSound(sound) end end addEvent("stop", true) addEventHandler("stop", root, stopSoundonPlayerLogin) -- Aqui está o seu erro. O nome desse parâmetro é diferente do nome da função. Isso também ocorre no server-side.
  8. Olá. Recomendo usar o evento client-side onClientClick. Pois o evento que você está utilizando, ele possui uma área de clique um pouco errada. Creio eu que seja devido à sincronização. Já no evento que citei acima, ele irá reconhecer qualquer elemento, independente da posição, latência ou qualquer outra coisa.
  9. Olá. A função aclList retorna uma tabela que contém elementos server-side, o client-side não reconhece. Você precisa armazenar esses elementos já preparados para envio, como por exemplo o nome da ACL e outras coisas que a lista possui.
  10. Não se esqueça também de bloquear os botões "Client" e "Server", que ficam na aba Resources. Alguém mais espertinho pode executar um código ali que retorna o IP do jogador. (ou você pode bloquear o campo onde é escrito o código, tanto faz.) Código: outputChatBox(getPlayerIP(getPlayerFromName("nick_de_algum_jogador_aqui")), source)
  11. O evento onPlayerJoin é chamado assim que o jogador entra no servidor. Dê /reconnect e veja se funciona. Também verifique outros resources que possam vir a conflitar.
  12. O seu código está totalmente errado, totalmente sem lógica alguma. A Wiki te oferece um exemplo mais conciso sobre essa função, você poderia pegar o exemplo de lá. Somente digitar qualquer coisa sem pensar, pesquisar e revisar, não vai funcionar. Não tenha preguiça de ler, muito menos de aprender. toggleControl Faça usando server-side. Erros no seu código: root definido como parâmetro na função; thePlayer sendo passado como função na segunda linha, sendo que ele é um parâmetro da função; condição if com o escopo aberto; função toggleControl com os argum
  13. Hello. Wrong section to post, but I will reply you. I also have an AMD GPU, and it's totally normal not showing the percentage of it's use. Even on others games that function doesn't work. Probably an AMD issue, not a MTA issue. Just chill. MTA is using your GPU properly. Post here when you got a new question: Ajudas relacionadas ao MTA: SA (Cliente/Servidor)
  14. Sim, você pode anular variáveis. Elas são armazenadas na memória do computador. Recomendo também o uso da função collectgarbage, após anular alguma variável. Mas só um adendo: JAMAIS UTILIZE ESSA FUNÇÃO EM TODOS OS SEUS RESOURCES! Use apenas naqueles resources que você acha que está consumindo bastante memória RAM.
  15. Olá. Cara, para ser bem sincero — e também como a maioria diz — tudo depende de como você utiliza essa função. Por mais que eu brinque bastante com quem me pergunta sobre, não dispenso o uso dela, até porque é uma função, está ali para ser usada. Lembre-se apenas que tudo tem um limite, qualquer exagero é ruim para o servidor; e qualquer outra coisa. Saber usar de forma correta é super válido. Por mais que eu não a uso há um bom tempo, às vezes, para coisas simples é necessário usar, embora eu prefira usar trigger hehe. Nesse seu caso, como é que você está fazendo as missões? Pelo o
×
×
  • Create New...