Parametreleri ve olayları kullanma

*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.

Normalde, fonksiyonlar yalnızca içinde kodlanmış bilgileri kullanabilir. Ancak bazen, o bilginin ne olacağını önceden bilemeyebilirsiniz veya aynı fonksiyonu benzer birden fazla bilgi parçasıyla yeniden kullanabilmek istersiniz. Örneğin, bir fonksiyonu kullanarak en hızlı obby parkurunu tamamlayan kişinin adını dev harflerle herkese göstermek istiyorsanız. Yarış sona erene kadar gelecekteki kazananın adını bilemezsiniz.

Parametreler, fonksiyona daha sonra vermek istediğiniz bilgilerin yer tutucularıdır. Onlar, fonksiyona bilgi aktarmanıza olanak tanıyan pencerelere benzer.

Bir tuzak kurmak için parametreleri ve olayları kullanma

Bu script, dokunan her şeyi, diğer parçalar da dahil olmak üzere, yok eden bir tuzak parçası oluşturacaktır. Bunu ayarlamak için bir parametre kullanmanız gerekecek. Tuzak düşmemesi ve istemeden şeyleri yok etmemesi için dikkatli olun.

Yeni bir parça oluşturma

Dokunan her şeyi yok edecek bir parça ayarlanması gerekiyor.

  1. Hiçbir şeye dokunmayan yeni bir parça oluşturun. Bir şeye dokunuyorsa, çok erken devreye girebilir.
  2. Explorer'da parçanın adını: TrapPart olarak değiştirin.
  3. Parçayı Anchor yapın.

Script'i ayarlama

Tuzak parçasını referans almak için değişkenler ve oyun hiyerarşisi hakkında bildiklerinizi kullanın.

  1. Tuzak parçasına yeni bir script ekleyin. Script'in adını TrapScript olarak değiştirin.

  2. Hello World'ü silin ve açıklayıcı bir yorum ekleyin.

  3. Yorumun altında, script'in ebeveynini bulan yeni bir değişken oluşturun.

    -- Ebeveynine dokunan her şeyi yok eder
    local trap = script.Parent

Parametreli bir fonksiyon oluşturma

Tuzak, dokunan her şeyi yok etmek için bir fonksiyon kullanacaktır. Çalışması için, fonksiyonun parçaya neyin dokunduğunu bilmesi gerekir. Bu da parametreler kullanmak anlamına gelir. Parametreler, bir fonksiyonun adından sonra gelen () içinde yazılır. Şöyle görünürler:

local function functionName(parameterName)
end

Parametre üzerinden aktarılan gerçek bilgiye argüman denir. onTouch() adında, tuzağa dokunan her şeyi takip edecek ve ardından dokunan parçayı yok edecek bir parametre olan objectTouched ile yeni bir fonksiyon oluşturacaksınız.

  1. Yerel bir fonksiyon oluşturun. Herhangi bir isim verilebilir, ancak bu derste onTouch kullanılacaktır.

    local trap = script.Parent
    local function onTouch()
    end
  2. () içinde, parametre için bir isim yazın. Bu derste objectTouched kullanılacaktır.

    local trap = script.Parent
    local function onTouch(objectTouched)
    end
  3. local function onTouch() ile end arasında bir print ifadesi oluşturun. Bunu, bir şeyin parçaya dokunup dokunmadığını kontrol etmek için bir sonraki bölümde kullanacaksınız.

    local trap = script.Parent
    local function onTouch(objectTouched)
    print("Bir şey tuzağa dokundu")
    end

Fonksiyonu çağırmak için bir olay kullanma

Fonksiyonun, bir şey parçaya dokunduğunda çalışmasını istiyoruz. Bunu sağlamak için, fonksiyonu Touched olayına bağlayın. Olaylar, oyunda bir şeylerin önemli olduğunda meydana gelen özel sinyallerdir. Farklı nesnelerin farklı olayları vardır. Fonksiyonlar, her seferinde olay tetiklendiğinde çağrılacak şekilde olaylara bağlanabilir.

Touched olayı, bir parçanın başka bir parçaya dokunduğunda tetiklenir ve butonlar, tuzaklar ve oyuncuların etkileşimde bulunduğu diğer nesneleri oluşturmak için kullanılabilir.

  1. Fonksiyonun end'inin altına trap.Touched:Connect(onTouch) yazın.

    local trap = script.Parent
    local function onTouch(objectTouched)
    print("Bir şey tuzağa dokundu")
    end
    -- Fonksiyonu Touched olayına bağla
    trap.Touched:Connect(onTouch)
  2. Teste tıklayın ve ardından parçaya dokunun. Test print ifadenizi kontrol edin: Bir şey tuzağa dokundu. Eğer bu ifadeyi Çıktı penceresinde göremiyorsanız, aşağıdakileri kontrol edin:

    • "Bir şey tuzağa dokundu!" ifadesinin local function onTouch() ile end arasında olduğundan emin olun.
    • Touched'ın büyük harfle yazıldığını kontrol edin.
  3. Fonksiyon doğru bir şekilde ayarlandığında, parçaya dokunan her şeyi yok etmek için kullanın. Fonksiyonun içinde, string'in ardından objectTouched:Destroy() yazın. Tamamlanmış kod şöyle olmalıdır:

    local trap = script.Parent
    local function onTouch(objectTouched)
    print("Bir şey tuzağa dokundu")
    -- Dokunan nesneyi yok et
    objectTouched:Destroy()
    end
    trap.Touched:Connect(onTouch)
  4. Tekrar test edin ve parça dokunduğunda ne olduğunu görün. Avatarınızın ayakları veya kolları eksik olmalıdır. Eğer parça avatarın başına veya boynuna dokunursa, tamamen yok olabilir.

Özet

Parametreler, normalde kapsam dışında (bir fonksiyonun göremediği yerlerde) olan bilgileri bir fonksiyona aktarmak için kullanılır. Bu arada, olaylar, oyunda önemli bir şey olduğunda tetiklenen özel sinyallerdir. Farklı nesnelerin farklı olayları vardır. Fonksiyonlar, her seferinde olay tetiklendiğinde çağrılacak şekilde olaylara bağlanabilir. Bu küçük script, bir fonksiyonu tuzağın Touched olayına bağladı ve tuzağa dokunanı parametre aracılığıyla aktardı.

©2026 Roblox Corporation. Roblox, the Roblox logo and Powering Imagination are among our registered and unregistered trademarks in the U.S. and other countries.