Jump to content

Lord Henry

Other Languages Moderators
  • Posts

    3,983
  • Joined

  • Last visited

  • Days Won

    181

Everything posted by Lord Henry

  1. Somente para quem está no canal e estiver próximo. Não é possível remover o canal de um jogador pois isso faria ele não ouvir e nem falar com ninguém (rádio sem conexão). Se quiser ter um canal "global" você pode definir um ID padrão para colocar todos os jogadores nesse ID ao conectarem no servidor. Por exemplo, coloque todos os jogadores para o canal 0 quando eles entram no servidor. Assim quando quiser que um jogador volte ao canal global pra falar com geral, basta setá-lo no canal 0. Os jogadores só são removidos dos canais ao desconectarem do servidor, então defina um canal padrão para manter os "sem canal". Proximidade, como dito na primeira resposta. OBS: Por padrão, o resource voice está configurado para criar canais associados aos teams. Se o jogador estiver em um team, o resource irá colocá-lo no canal do team, assim ele só poderá se comunicar com os jogadores deste team. Você pode desabilitar a criação automática de canais de equipe deixando a configuração "autoassign_to_teams" como false pelo painel Admin. Da mesma forma, para colocar um jogador no canal de sua equipe (caso ele não esteja em nenhum ou esteja em canal numérico), basta não declarar o parâmetro de ID ao usar o setPlayerChannel que ele irá identificar o team do jogador e colocá-lo no canal do mesmo.
  2. @Vinícius 123não reviva tópicos antigos. Veja as regras aqui:
  3. Uma sugestão: A animação de plantando a semente poderia ser aquela de plantar bomba. Que ele abaixa e fica manuseando algo. Dai a animação de colheita poderia ser essa que está sendo usada pra plantar a semente.
  4. Testei aqui e está funcionando normal. Certifique-se de ter deixado seu script como client-side e que ele está ativado.
  5. Source não tem nada a ver com quem executou tal função. Ela é definida pelo evento que ativou aquela função. Se o evento que está ativando a função for por exemplo onVehicleEnter, então source será o veículo que foi entrado pelo jogador. Por outro lado, se o evento ativador for onPlayerVehicleEnter, então dai sim source será o jogador que entrou no veículo. É necessário ler na Wiki o source de cada evento antes de usá-lo na função para saber o que está guardado nessa variável.
  6. if (math.floor(id) == id) then -- Se o número arredondado é igual a ele mesmo, então ele é inteiro. print ("É inteiro.") else print ("Não é inteiro.") end
  7. Não use source como parâmetro de função, troque por thePlayer. O segundo parâmetro de função nem precisa neste caso. Nome de função está curto demais, a não ser que seja apenas um teste. Mas evite. Linha 2 nunca vai passar pela condição, pois accountName não existe. Troque todos os source por thePlayer. Na linha 9, falta 1 TAB na linha. Falta um end depois da linha 9. Pra fechar aquele if e else. Corrija esses problemas por enquanto. Depois mande novamente o código corrigido e te ajudo com o próximo passo.
  8. Só anexar o veículo ao caminhão usando os parâmetros de offset pra ele ficar na posição correta em relação ao caminhão. attachElements (veh, truck, 0, -2, 3) -- Mude os números para encaixar melhor o carro no caminhão, eu fiz de cabeça. -- veh = o carro que vc quer anexar ao caminhão. -- truck = o caminhão no qual vc quer anexar o carro.
  9. Pra np++ eu não conheço. Eu também uso ele pra programar meus resources mas não utilizo autocompletar pra me forçar a aprender as sintaxes. Mas em outros editores de texto sei que tem.
  10. Na próxima vez, aguarde 48h antes de reviver seu tópico. Era mais fácil ter simplesmente colado o erro aqui em vez de ter o trabalho de upar uma imagem. No primeiro erro, ele está reclamando que a variável Imagens é booleana. (provavelmente false) No segundo erro, ele diz que não é possível comparar se false é menor que 10. O que eu sugiro que você faça, é trocar aquela linha 9 onde ele seta o valor de Imagens, para isso: Imagens = getElementData(getLocalPlayer(), "Imagens") or "0" Mas vale lembrar que a linha 15 (aparece na linha 12 que vc enviou) continuará dando erro se você não tiver a imagem "0.png" dentro da pasta "Portfolio".
  11. Cara, não recomendo que vc use pois ele buga em algumas sintaxes. Além disso sempre que o MTA atualizar e adicionar/remover funções, vc precisará ficar editando a linguagem manualmente.
  12. addCommandHandler getPlayerAcls (função útil, é necessário incluir o código-fonte dela no seu script) getPlayerAccount getAccountName (loop for) aclGetGroup aclGroupRemoveObject
  13. Aqui não é lugar pra pedir script pronto, amigo. Mas podemos te ajudar a fazer um. Você vai precisar de addCommandHandler e setVehicleOverrideLights. É bem simples. Inclusive o próprio exemplo da Wiki já faz isso, basta adaptar com o comando /farol.
  14. Certifique-se de que seu personagem está na dimensão 0.
  15. Ta ae: setPedAnimation (source, "ped", "KO_shot_front", -1, false, false, false, true)
  16. Eu também faria com timer. Pois se trata de um curto período de tempo com repetições.
  17. Para grandes períodos de tempo, calcula-se usando getRealTime().timestamp
  18. Considerando que o texto possui esse retângulo escuro atrás. Eu acho bem inútil colocar sombra no texto, pois ele praticamente nem é visto. Na minha opinião vc deveria simplesmente desativar esses outros textos de sombra e deixar só o texto principal.
  19. Basta usar isso ao abrir o painel de login: guiSetInputEnabled (true) -- Desativa binds. As teclas T, Y não irão ativar o chat. E isso ao fechar o painel de login: guiSetInputEnabled (false) -- Habilita as binds novamente.
  20. Tópico movido para Offtopic, pois se trata de um anúncio de solicitação de staff.
  21. A função killPed burla as proteções, pois ela não dá dano e sim mata direto. Se a sua proteção seta um elementData no jogador quando ele ativa a proteção, adicione essa condição antes no seu script de headshot. Dessa forma o jogador só irá morrer se não estiver com a elementData da proteção.
×
×
  • Create New...