Close
    Search Search

    Tutorial: Fazendo um Heal Pad

      Página do tutorial; este artigo é um tutorial fácil.Todos os tutoriais · Tutoriais de script

      Neste tutorial, veremos como fazer uma almofada de cura simples. Este tutorial é um script, não uma construção. Este script pressupõe que você já tenha algo configurado como:

      • Tutorial: Fazendo um Heal PadTutorial: Fazendo um Heal Pad Área de trabalho
        • Tutorial: Fazendo um Heal PadTutorial: Fazendo um Heal Pad Heal Pad
          • Tutorial: Fazendo um Heal PadTutorial: Fazendo um Heal Pad Parte
            • Tutorial: Fazendo um Heal Pad Script

      Caso contrário, crie algo idêntico a isto. Você pode nomeá-lo como quiser, pois o nome não importa.



      Vamos entrar na parte do script. Vamos começar fazendo um evento Touched.

      script.Parent.Touched: Connect (function (hit) end)

      O código dentro desta função agora será executado sempre que a parte for tocada. Mas não podemos simplesmente curar o jogador. Como podemos saber se é um jogador? Se descobrisse que a parte era apenas o chão, o script quebraria. Precisamos adicionar uma instrução if para determinar se é um jogador. Fazemos isso adicionando esta declaração:

      script.Parent.Touched: Connect (function (hit) if hit.Parent: FindFirstChildOfClass ("Humanoid") then end end)

      Esta instrução if verifica se o hit tem um Tutorial: Fazendo um Heal PadHumanóide em seu pai. Mas por que em seu pai, não em si mesmo? Simples. O 'golpe', se for o personagem de um jogador, é um dos membros, não o modelo. Agora que temos a instrução if, vamos curar o jogador.

      script.Parent.Touched: Connect (function (hit) local hum = hit.Parent: FindFirstChildOfClass ("Humanoid") se hum then hum.Health = hum.MaxHealth end end)

      Este código define o Tutorial: Fazendo um Heal PadA saúde do humanóide à sua saúde máxima, essencialmente curando-os. Simples assim.


      O script anterior permitia que o jogador curasse até 100% de sua saúde, mas e se quisermos apenas curá-los um pouco? Bem, usamos o mesmo código de antes, só que em vez de definir a saúde do jogador para um valor fixo, adicionamos à saúde atual.


      script.Parent.Touched: Connect (function (hit) local hum = hit.Parent: FindFirstChildOfClass ("Humanoid") se hum then hum.Health = hum.MaxHealth * 0.1 + hum.Health end end)

      Cada vez que o jogador tocar a parte agora, isso adicionará 10% da saúde máxima do jogador. Coloquei o símbolo * antes do sinal + para evitar qualquer confusão com a ordem das operações.


      Um último problema, porém: a função dispara muitas vezes! Queremos que ele seja acionado apenas uma vez e, em seguida, inicie o resfriamento. Para fazer isso, usamos debounce.

      local db = false script.Parent.Touched: Connect (function (hit) if db == false then db = true local hum = hit.Parent: FindFirstChildOfClass ("Humanoid") se hum then hum.Health = hum.MaxHealth * 0.1 + hum. Fim de espera de saúde (5) db = fim falso)

      Aqui, a função será acionada uma vez e aguarde 5 segundos antes de poder ser acionada novamente.

      Adicione um comentário do Tutorial: Fazendo um Heal Pad
      Comentário enviado com sucesso! Vamos analisá-lo nas próximas horas.