Menu
CoddyTech

Bir metot yazma

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

Bir süredir yöntemleri çağırıyorsun: Debug.Log, PlaceCrate ve Unity, Start() ile Update() yöntemlerini çağırıyor. Kendi yöntemini yazmak da aynı şekilde çalışır:

void Shout(string word)
{
    Debug.Log(word + "!");
}

void, yöntemin bir işi yaptığını ve geriye bir şey döndürmediğini belirtir. Shout yöntemin adıdır. Parantezlerin içinde parametreleri bulunur: çağıranın değer atadığı değişkenler. Shout("Hello");, word değişkeni "Hello" değerini tutarken yöntemi çalıştırır; Shout("Run"); ise yöntemi "Run" değeriyle yeniden çalıştırır.

Parametresi olmayan bir yöntem de boş parantezlere ihtiyaç duyar: void Jump(); bu yöntem Jump(); şeklinde çağrılır. Bir yöntem, virgülle ayrılmış birden fazla parametre alabilir: void PlaceTile(int column, int row).

challenge icon

Görev

Orta

Her lambanın kendi yerinde durması için PlaceLamp metoduna bir parametre ver.

  1. Metodun ilk satırını void PlaceLamp(float x), konumunu ise new Vector3(x, 1, 0) olarak değiştir.
  2. Start() içindeki çağrıları PlaceLamp(-3);, PlaceLamp(0); ve PlaceLamp(3); olarak değiştir.

“Oyna” düğmesine bas: üç lamba, aralarında 3 birim olacak şekilde bir sıra hâlinde durur. Ardından “Kontrol et” düğmesine bas.

Kendin dene

using UnityEngine;

public class LampRow : MonoBehaviour
{
    void Start()
    {
        PlaceLamp();
        PlaceLamp();
        PlaceLamp();
    }

    void PlaceLamp()
    {
        GameObject lamp = GameObject.CreatePrimitive(PrimitiveType.Cylinder);
        lamp.name = "Lamp";
        lamp.transform.position = new Vector3(0, 1, 0);
        lamp.transform.localScale = new Vector3(0.3f, 1, 0.3f);
        lamp.GetComponent<Renderer>().material.color = new Color(0.3f, 0.3f, 0.35f);
    }
}

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

Kendi başına pratik yap: Unity playground