Jump to content

Lord Henry

Other Languages Moderators
  • Posts

    4,010
  • Joined

  • Last visited

  • Days Won

    184

Everything posted by Lord Henry

  1. Tente pelo comando /admin Se der certo, em seguida utilize: /bind p admin
  2. LOD (Level Of Detail) é um sistema que carrega os objetos em diferentes qualidades dependendo da distância que ele está da câmera do jogador. Tanto no GTA quanto no MTA, ele faz com que objetos mais distantes tenham qualidade menor, e portanto ficam mais leves de serem processados e renderizados, enquanto que os objetos mais próximos ficam com qualidade maior.
  3. Pois não tem nenhum evento ativando ela. Vc só criou a função mas não está chamando ela em evento nenhum.
  4. Faça banimento por IP também.
  5. 1) Depende oq vc considera como recompensa. Se for quantidade de players, sim compensa se você fizer um servidor divertido e atraente ao público. Se for lucro, não compensa. 2) O MTA possui um sistema de anti-cheat nativo muito bom e avançado. Raramente você encontra algum hacker e quando aparece, é por causa de alguma falha de segurança no servidor em si e não no MTA. Ele é muito superior em relação à segurança do SAMP onde os hackers rolam soltos. 3) Basicamente limitações do próprio GTA em si, mas mesmo assim algumas ainda é possível superar usando a programação no MTA.
  6. Sim, tem um jeito de descobrir. Mas isso é ilegal. Se o resource está compilado, é pq o desenvolvedor não quer que vc mexa nele. Na próxima vez, antes de fazer a compra, certifique-se de deixar bem claras suas intenções ao vendedor e solicite o resource já descompilado.
  7. Se a tela for um DX, existe um parâmetro chamado postGUI que faz ela aparecer na frente do CEGUI. Veja detalhes em dxDrawImage
  8. onPlayerWasted onPlayerSpawn addBan
  9. Você pode obter todos os comandos bindados em uma tecla específica com getCommandsBoundToKey, dai você pode usar um loop com uma tabela para checar todas as teclas possíveis. Obs: Tenha em mente que esta função é client-side, vc vai precisar de triggers para obter o jogador no servidor, depois mandar a função pra ele executar no client e depois receber os resultados novamente no servidor.
  10. Isso pode ser feito com a função útil DxDrawImage3D e um marker normal invisível com createMarker.
  11. @Sousateewcuidado para não se equivocar. Sua solução não tem nada a ver com o problema do tópico.
  12. @Sousateewisso está além dos limites do GTA SA. Só é possível fazer isso na skin do CJ.
  13. Esse parâmetro ali não é aplicável. Ele serve somente para verificações de script. Aplique o parâmetro em todos os objetos do .map
  14. Códigos ilegíveis.
  15. @M4DD NØGessa distância está muito alta. Pode acabar removendo outros objetos com mesmo ID que estejam dentro dessa área. A não ser que seja esse o objetivo.
  16. setPlayerVoiceBroadcastTo faz isso. Vc define pra quem a voz do jogador será transmitida. Essa função não tem relação com o resource voice. Não é possível estar em duas frequências ao mesmo tempo. Ao setar um novo canal de voz para o jogador, ele já vai sair do canal que estava antes. Na Wiki não deixa explícito sobre as frequências (canais de voz) pois isso é uma função do resource voice e não do MTA. Ao usar a função setPlayerVoiceBroadcastTo, ele vai ignorar os canais, a não ser que você sete o jogador em um novo canal depois. Na verdade essa função já faz a mesma coisa que os canais, ele define quem vai ouvir a voz do jogador. -------- Sobre o seu exemplo de tabelas, não faz sentido atribuir valores aleatórios aos jogadores, pois podem repetir. Por se tratar de uma tabela de elementos (jogadores), você usa o pairs. Só se usa ipairs em tables indexadas com integers (números inteiros). for player,value in pairs (exemplo) do -- Para cada jogador na lista exemplo, faça: if (isElement (player)) then -- Se player ainda é um elemento, então: local name = getPlayerName (player) -- Obtém o nick desse player. print ("Valor de "..name..": "..value) -- Mostra o nick e o valor dele salvo na table. end end Evento que é acionado sempre que um jogador habilita seu microfone para falar. Se quem começou a falar for você mesmo (localPlayer) então você será o source desse evento. Se foi outro player que começou a falar com vc, então ele será o source. Sobre o script que vc está mostrando, no resource voice essa tabela serve apenas para informar ao cDrawIcon.lua quais jogadores próximos (inclusive o próprio localPlayer) estão falando para poder desenhar o microfone em cima de sua cabeça. Além disso ele verifica se o jogador que está tentando falar está mutado ou não. Se estiver, o microfone também não será desenhado. Ou seja, o player que estiver como true, terá um microfone sendo desenhado em cima da sua cabeça, após o script verificar se ele está mutado ou não. O primeiro é um evento e o segundo é uma função. O evento onClientPlayerVoiceStart é ativado quando o jogador libera o microfone para falar (segurando a tecla Z, por exemplo). A função setPlayerVoiceBroadcastTo serve para definir pra quais jogadores a voz de tal jogador será transmitida.
  17. Então não procurou direito. Está sim no admin_main.lua, o checkbox se chama aTab6.OutputPlayer
  18. Coloque isso na linha anterior: if not (getElementData(player, "char.money")) then return end
  19. Provavelmente seu gamemode está salvando as armas ao morrer. É o mesmo que dá respawn no jogador depois dele morrer.
  20. O erro ocorre pois provavelmente getElementData(player, "char.money") é false.
  21. Só pra avisar que ainda é possível obter os dados do jogador ao deixar selecionada a opção "Output player information to console on select" na aba Options do painel. As informações aparecem no F8 ao selecionar o nome do jogador no painel. Nesse caso, deve-se bloquear essa opção também.
×
×
  • Create New...