Menu
CoddyTech

Rangkuman: Anjing Penjaga

Termasuk bagian Fisika dan Gameplay dalam perjalanan Unity di Coddy. Pelajaran 55 dari 63.

challenge icon

Tantangan

Sedang

Anjing penjaga mengusir orang asing dari kandangnya. Tulis skrip Dog. Inspector mengatur player, kennel (alas merah di depan rumah anjing), speed (3.5), guardRange (6), dan bite (5). Skrip Player dan Health sudah siap: tombol panah mendorong player, dan Health milik player memiliki TakeDamage(int amount) publik.

  • Selama player berada lebih dekat dari guardRange ke kennel, di sepanjang tanah, anjing berlari ke arah player. Jarak diukur dari kennel, bukan dari anjing.
  • Jika tidak, anjing berlari kembali ke kennel dan diam setelah berada dalam jarak 0.3 darinya.
  • Anjing berlari dengan mengatur velocity Rigidbody-nya ke speed di sepanjang tanah, sambil mempertahankan velocity y-nya.
  • Saat anjing menabrak player (dengan tag Player), Health milik player menerima 1 damage, dan player mendapat Impulse sebesar bite tepat menjauhi anjing, di sepanjang tanah.

Tekan Play dan berjalanlah mendekati kennel, lalu tekan Check.

Coba sendiri

using UnityEngine;

public class Dog : MonoBehaviour
{
    [SerializeField] private Transform player;
    [SerializeField] private Transform kennel;
    [SerializeField] private float speed = 3.5f;
    [SerializeField] private float guardRange = 6f;
    [SerializeField] private float bite = 5f;
    private Rigidbody rb;

    void Start()
    {
        rb = GetComponent<Rigidbody>();
    }

    void FixedUpdate()
    {
        // jaga kandang: kejar player jika mendekat, atau kembali ke kandang
    }
}

Semua pelajaran di Fisika dan Gameplay