Menu
CoddyTech

Bayrağı Göndere Çek

Coddy'nin Unity Journey'sinin Unity'de Script Yazmanın Temelleri bölümünün bir parçası. Ders 32 / 85.

localPosition, position gibi her karede okunabilir ve değiştirilebilir. Ebeveyninin üzerinde yükselmesi gereken bir çocuk nesne (örneğin bir kulenin tepesine çıkan bir kabin ya da direğin tepesine çekilen bir bayrak), localPosition boyunca hareket eder ve yerel yüksekliğini tepeyle karşılaştırır; böylece ebeveyn nerede olursa olsun çalışır:

if (transform.localPosition.y < 10)
{
    transform.localPosition += new Vector3(0, 2 * Time.deltaTime, 0);
}

Bunun yerine position.y ile karşılaştırılsaydı, ebeveyn daha yüksekte veya daha alçakta durduğunda tepe de yer değiştirirdi.

challenge icon

Görev

Orta

Bayrağı yukarı okla direğin tepesine çek.

  1. Update() içinde if (Input.GetKey(KeyCode.UpArrow) && transform.localPosition.y < 4) yaz.
  2. İçine new Vector3(0, climb * Time.deltaTime, 0) değerini transform.localPosition değerine ekle.

“Oyna” düğmesine bas ve yukarı oku basılı tut: bayrak direğin tepesine çıkar ve durur. Ardından “Kontrol et” düğmesine bas.

Kendin dene

using UnityEngine;

public class Hoist : MonoBehaviour
{
    public float climb = 1f;

    void Start()
    {
        transform.localPosition = new Vector3(0.6f, 1, 0);
    }

    void Update()
    {
        // Yukarı ok tuşu basılı tutulurken, Ship'e göre yükseklik 4 olana kadar yüksel
    }
}

Unity'de Script Yazmanın Temelleri bölümündeki tüm dersler

Kendi başına pratik yap: Unity playground