Menu
CoddyTech

Avcıların Isırığı

Coddy'nin Unity Journey'sinin Fizik ve Oynanış bölümünün bir parçası. Ders 63 / 71.

challenge icon

Görev

Orta

Avcıların ısırmasını ve oyuncuyu geri savurmasını sağla.

  1. Hunter içine [SerializeField] private float knockback = 12f; ve void OnCollisionEnter(Collision collision) ekle.
  2. İçeride, collision.gameObject.TryGetComponent(out Health health) olduğunda health.TakeDamage(1); çağır.
  3. Ardından onu it: away, avcıdan oyuncuya doğru olsun; y değerini 0 olarak ayarla ve collision.rigidbody.AddForce(away.normalized * knockback, ForceMode.Impulse); kullan.

“Oyna” düğmesine bas ve ne kadar dayanabileceğini gör. Ardından “Kontrol et” düğmesine bas.

Kendin dene

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);
    }
}

Fizik ve Oynanış bölümündeki tüm dersler

Kendi başına pratik yap: Unity playground