Merhaba arkadaşlar Unity 3D Engine'de survival/hayatta kalma tarzı oyun yapıyosanız işinize yarayacak bir script'i sizlerle paylaşacagım Agaç Kesme scripti Öncelikle 2 C# Scripti Oluşturun Birinin İsimini TreeHealth Digerininkini Treechop Koyun ve En Önemlisi Sahnedeki Agacınıza Rigidbody Ekleyin ve isKinematic ile Use Gravity Kutularına Tik Koyun ve Mass yazan degeri 10 larda birşey yapın ve v o i d leri birleşik yazmayı unutmayın bu arada Raycast scriptini karakterinizdeki main cameraya tree health scriptini agacınıza atın ve agacınıza Agac adlı tag verin
[C#] Raycast Scripti
[C#]TreeHealth
Bir hata bulursanız bana bildirin
Scripti tamamen kendim yazdım emege saygı teşekkür verirseniz sevinirim tabi zorunlu degil
[C#] Raycast Scripti
Kod:
private TreeHealth th; //burda treehealth adlı scriptimizi tanımladık bunu ileride kullanacagız
v o i d Update () {
RaycastHit ray;
Vector3 fwd = transform.TransformDirection (Vector3.forward);
if (Physics.Raycast (transform.position, fwd, out ray, 10)) {
if (ray.collider.gameObject.tag == "Agac" && Input.GetMouseButtonDown (0)) {
ray.collider.gameObject.GetComponent<Treehealth> ().health -= 1;
}
}
}
[C#]TreeHealth
Kod:
public int health = 5;
public Transform log;
// Use this for initialization
v o i d Start () {
rigidbody.isKinematic = true;
}
// Update is called once per frame
v o i d Update () {
if (health <= 0) {
rigidbody.isKinematic = false;
rigidbody.AddForce(transform.forward * 10);
StartCoroutine(DestroyTree());
}
}
IEnumerator DestroyTree() {
yield return new WaitForSeconds (6);
Destroy (this.gameObject);
Instantiate(log,this.gameObject.transform.position,this.gameObject.transform.rotation);
}
Bir hata bulursanız bana bildirin
Scripti tamamen kendim yazdım emege saygı teşekkür verirseniz sevinirim tabi zorunlu degil
Son düzenleme: