Lord Henry

Members
  • Content count

    392
  • Joined

  • Last visited

  • Days Won

    1

Lord Henry last won the day on May 12 2017

Lord Henry had the most liked content!

Community Reputation

62 Popular

7 Followers

About Lord Henry

  • Rank
    Thug
  • Birthday 16/01/1996

Details

  • Gang
    Grove Street
  • Location
    Brazil
  • Occupation
    Gamer,Game Designer,Level Designer,Developer
  • Interests
    Game Design, Script Development

Recent Profile Visitors

1,560 profile views
  1. @Netus+ Na verdade ele se refere a ir no MTA: ESC >> Opções >> Áudio >> Redefinir as configurações.
  2. Ainda estou tentando fazer client-side. Estou tendo que mudar a lógica de tudo, passar todas as variáveis pro client.
  3. [Ajuda] Pegar quantidade player do time

    function verificaRoubo () local theTeam = getTeamFromName ("PM") if (theTeam) then if countPlayersInTeam (theTeam) >= 5 then -- Se tem 5 ou mais jogadores no time "PM", então inicia o roubo. -- Inicia o roubo. else -- Cancela o roubo. end end end
  4. Mas e quando o jogador sair do servidor? Como eu vou fazer pra salvar os dados na conta dele? Faço um triggerClientEvent pra que o cliente envie os dados ao servidor usando um triggerServerEvent? Estou usando isso para salvar os dados quando o resource para. Também faço isso quando o jogador da Quit ou desloga. function saveAllLevels () for theKey, thePlayer in ipairs (getElementsByType ("player")) do local acc = getPlayerAccount (thePlayer) if not isGuestAccount (acc) then setAccountData (acc, "level", playerLevel[thePlayer]) -- Variáveis que estou usando para guardar os dados o tempo todo. setAccountData (acc, "levelExp", playerExp[thePlayer]) setAccountData (acc, "levelTimeLapsed", playerLapsed[thePlayer]) end end end addEventHandler ("onResourceStop", getResourceRootElement(getThisResource()), saveAllLevels)
  5. Então... na verdade quando o jogador fica AFK. Ele ativa uma função no cliente do jogador que irá gerar um código e mostrar na tela do jogador para que ele digite pra poder sair do AFK. Quando ele usar o código, vai se movimentar 0.01 posição pro lado, para reiniciar o getPlayerIdleTime e então seta a data "AFK" false no jogador. O objetivo é justamente fazer o jogador não querer ficar AFK. Se o jogador se mover sem acertar o código, a data "AFK" vai continuar lá e ele vai continuar bloqueado de upar até que digite o código que está mostrando na tela. E eu coloquei verificador duplo de AFK ali no timer pois não quero q ele fique ativando o cliente a cada segundo, ele só deve ativar 1 vez e esperar o jogador desativá-lo.
  6. Eae pessoal. Estou com uma dúvida rápida aqui. Estou fazendo um sistema de level, nesse sistema existe um verificador server-side que verifica todos os jogadores a cada 1 segundo procurando por players AFK para pausar o Up do level. Até então sem problemas, mas estou querendo colocar o tempo do up de cada jogador aparecer na tela deles, qual procedimento a seguir é MAIS LEVE para fazer isso? cria uma variável, salva o tempo nela e triggerClientEvent a cada 1 segundo, para enviar essa variável atualizada ao cliente. setElementData no jogador a cada 1 segundo, então o client irá sempre mostrar essa data na tela dele. setAccountData no jogador a cada 1 segundo. [Já vi que é inviável fazer assim, até porque não há como receber esse valor client-side] fazer o próprio client calcular o tempo de up? A propósito, o timer em si é este: (server-side) No script client, deverá ter um onClientRender que deverá mostrar o playerLapsed ao jogador. (só que no client, irá formatar os milisegundos em minutos/segundos.)
  7. Dúvidas

    Ah... Vc não me disse que era Client-Side o script. Achei que fosse Server-side. Mas tudo bem, que bom que funcionou. Deixa um like lá pra ajudar.
  8. Não tem como saber. Vc não falou pra que ele serve. E também não entendi a utilidade da primeira linha, já que vc poderia usar root pois ele já é = getRootElement() Você inclusive deixou comentários no código mas sem marcar como comentário, dai ele está tentando interpretar seu comentário como código. (linha 280)
  9. Dúvidas

    function Health (player) local hungerLvl = tonumber (getElementData (player, "Hunger")) if hungerLvl <= 0 then -- Se o jogador estiver com fome, então: local healthLvl = getElementHealth (player) hungerTimer = setTimer (function() -- Começa a matar 5 de HP a cada meio segundo. setElementHealth (player, healthLvl - 5) end, 500, 0) if healthLvl == 0 then -- Se o jogador não tem mais vida (morreu), então: if isTimer (hungerTimer) then killTimer (hungerTimer) -- Para de tirar a vida que ele nem tem. end end elseif isTimer (hungerTimer) then -- Se o jogador não estiver mais com fome, para de tirar a vida dele. killTimer (hungerTimer) end end
  10. Como Configurar Painel De Login

    Procure pelo seu código, onde tiver isso: showCursor(true) Coloque isso na linha seguinte: guiSetInputEnabled(true) E onde estiver com isso: showCursor(false) Coloque isso na linha seguinte: guiSetInputEnabled(false) O guiSetInputEnabled, se for true, desabilita os comandos do jogo e as teclas vão para o menu GUI, se for false, habilita as teclas do jogo novamente.
  11. Desabilitar comandos F1 como ?

    Se você tivesse procurado pelo fórum, encontraria sua pergunta já respondida aqui: https://forum.mtasa.com/topic/93890-mtasa-comandos-de-atalho-freeroam/?tab=comments#comment-844519
  12. Sair do veiculo em movimento

    Acho que deve usar o loop pois todos os ocupantes do veículo devem sair quando o veículo começa a pegar fogo. O loop verifica quais jogadores estão dentro do veículo e faz cada um deles executar o comando de saída. Não entendi como você faria sem o loop.
  13. Report community resources here!

    @murathanryz You need to post the original resource link here for verification.
  14. Sair do veiculo em movimento

    JUST DO IT! Tente isso: function getOutVehicle (loss) local thePlayers = getVehicleOccupants (source) -- thePlayers recebe todos os ocupantes do veículo que está recebendo dano. if getElementHealth (source) <= 250 then -- Se o veículo está prestes a explodir, então: for seat, occupant in pairs (thePlayers) do -- Para cada jogador que está no veículo, faça isso: if occupant and getElementType (occupant) == "player" then -- Se existe um ocupante e ele é um jogador (poderia ser um NPC), então: setControlState (occupant, "enter_exit", true) -- Faz o jogador sair do veículo, ativando controle de entrar_sair de veículo. (não funciona em NPCs) setTimer (setControlState, 500, 1, occupant, "enter_exit", false) -- Depois de meio segundo, para de ativar esse controle. end end end end addEventHandler ("onVehicleDamage", getRootElement(), getOutVehicle) -- Executa essa função cada vez que um veículo recebe dano.
  15. Dúvidas

    Acrescentando a resposta 4 do @DNL291: Sim, é possível restringir um script para rodar somente em um servidor específico, mas é melhor restringir por IP pois nada impede o proprietário de mudar o nome do servidor para tentar burlar o sistema de restrição. Eu desenvolvi um sistema avançado de bloqueio, ele funciona assim: De fato, não é uma tarefa fácil mexer com segurança, você precisa pensar em todas as possibilidades de invasão e armar um jeito de impedir todas elas. No fim das contas nenhum sistema é 100% seguro, mas garanto que precisa ser muito profissional para passar pela criptografia, isso está além de programadores.