A Mordida dos Caçadores
Parte da seção Física e Jogabilidade do Journey de Unity da Coddy. Lição 63 de 71.
Desafio
MédioFaça os caçadores morderem e empurrarem o jogador para trás.
- Em
Hunter, adicione[SerializeField] private float knockback = 12f;evoid OnCollisionEnter(Collision collision). - Dentro do método, quando
collision.gameObject.TryGetComponent(out Health health), chamehealth.TakeDamage(1);. - Em seguida, empurre-o: use
awaydo caçador em direção ao jogador, defina y como 0 e usecollision.rigidbody.AddForce(away.normalized * knockback, ForceMode.Impulse);.
Pressione “Jogar” e veja quanto tempo você aguenta. Depois, clique em “Verificar”.
Experimente você mesmo
using UnityEngine;
public class Hunter : MonoBehaviour
{
[SerializeField] private float speed = 3f;
private Rigidbody rb;
private Transform player;
void Start()
{
rb = GetComponent<Rigidbody>();
player = GameObject.FindWithTag("Player").transform;
}
void FixedUpdate()
{
Vector3 toPlayer = player.position - rb.position;
toPlayer.y = 0f;
Vector3 dir = toPlayer.normalized;
rb.linearVelocity = new Vector3(dir.x * speed, rb.linearVelocity.y, dir.z * speed);
}
}
Todas as lições de Física e Jogabilidade
1Rigidbody
Gravidade e MassaEmpurrar com AddForcePular com um ImpulsoFixedUpdate para FísicaVelocidadeCorpos CinemáticosRevisão: Plataforma de Lançamento4Corrotinas
InvocarInvocar repetidamente, Cancelar invocaçãoSua primeira corrotinaLoops em corrotinasInterrompendo corrotinasRevisão: contagem regressiva10Projeto: Fuga da Arena
A ArenaCaçadores2Colisões
OnCollisionEnterO que eu acertei?Quebre no impactoNo chãoQuique e atritoFormas dos collidersRevisão: Parede destrutível5Projeto: Corrida das Moedas
A Bola RolanteMoedas para ColetarPratique por conta própria: Playground de Unity