Conteúdo do Curso
Jogo de Luta no Unity
Jogo de Luta no Unity
Ataques do Jogador
Gizmos
private void OnDrawGizmos()
: Esta é uma declaração de método para o callback OnDrawGizmos, indicando que o Unity chamará automaticamente este método quando os Gizmos forem desenhados na visualização da Cena para fins de visualização;Gizmos.DrawLine(...)
: Este código desenha uma linha usando Gizmos. Ele recebe dois pontos como argumentos para definir a linha;transform.position
: Isto representa a posição atual do GameObject ao qual este script está anexado;((Vector2)transform.position + 4f * Vector2.right * localScale.x)
: Isto calcula o segundo ponto da linha. Ele pega a posição atual do GameObject (transform.position
) e adiciona a ela um vetor que se estende 4 unidades para a direita (4f * Vector2.right
).localScale.x
é usado para ajustar o comprimento da linha e a direção com base na escala do GameObject na direção do eixo x.
No geral, este código desenha uma linha na visualização da Cena da posição atual do GameObject
até um ponto que está 4 unidades à direita, com o comprimento e a direção ajustados com base na escala do GameObject
na direção do eixo x. Nós o usaremos para visualizar cada alcance de ataque do jogador.
Script de Ataque
Quando iniciamos o ataque, chamaremos a função StartAttacking
, que recebe o alcance do ataque como parâmetro. Como cada ataque tem um alcance diferente, ele começará a atacar e ajustará o alcance de acordo.
Na função Update
, quando o jogador está atacando, criaremos um RayCast começando do jogador, movendo-se na direção que o jogador está enfrentando, com uma distância igual ao alcance do ataque, e filtrando apenas o enemyLayer
.
Se atingirmos um inimigo, faremos um debug do nome dele por enquanto, mas no futuro, recuperaremos sua saúde e o atacaremos.
Além disso, temos uma função EndAttacking
, que concluirá nosso ataque.
Eventos de Animação
Adicionando Eventos
Na janela de Animação do Unity, você pode adicionar eventos a clipes de animação em quadros específicos. Clique com o botão direito na curva de animação ou no quadro-chave para adicionar um evento de animação e especificar a função e os parâmetros opcionais.
Definindo Funções
As funções a serem chamadas por Eventos de Animação devem ser públicas. O sistema de Eventos de Animação do Unity suporta parâmetros opcionais de float e string, invocando automaticamente as funções especificadas durante a reprodução da animação para sincronizar animações com a lógica do jogo e acionar várias ações.
Obrigado pelo seu feedback!