hook.Call

  vararg hook.Call( string eventName, table gamemodeTable = nil, ... )

Açıklama

Belirtilen olayla ilişkili tüm hook'ları, biri nil dışında bir şey döndürene kadar çağırır ve ardından bu veriyi döndürür.

Hemen hemen tüm durumlarda, bunun yerine hook.Run kullanmalısınız - bu fonksiyon dahili olarak hook.Call'u çağırır ancak oyun modu tablosunu kendi başına sağlar, bu da kodunuzu daha düzenli hale getirir.

Argümanlar

1 string eventName
Hook'ların çağrılacağı olay.
2 table gamemodeTable = nil
Eğer oyun modu belirtilirse, içindeki oyun modu hook'u çağrılır, aksi takdirde çağrılmaz.
3 vararg args = nil
Hook'lara aktarılacak argümanlar.

Dönen Değerler

1 vararg
Çağrılan hook'lardan dönen veri. 6 dönüş değeri ile sınırlıdır.

Örnek

DoSomething fonksiyonunu çalıştırır, bu fonksiyon sonunda DoneDoingSomething olayını çağırır ve hook'lanmış DoSomethingElse fonksiyonunu tetikler.

local function DoSomething() -- Bir şeyler yapar hook.Call( "DoneDoingSomething" ) end local function DoSomethingElse() -- "DoneDoingSomething" hook'u çağrıldığında başka bir şey yapar. print( "Done!" ) end hook.Add( "DoneDoingSomething", "Does something else", DoSomethingElse ) DoSomething()
Çıktı:
Done!

Örnek

Ayrıca özel fonksiyonları hook'lar aracılığıyla kontrol edilebilir hale getirebilirsiniz.

local function MakeCheese() local shouldMakeCheese = hook.Call( "MakeCheezPleez" ) if shouldMakeCheese then print( "yay" ) else print( "nay" ) end end local function MakeCheeseOrNot() return player.GetCount() >= 1 end hook.Add( "MakeCheezPleez", "Does something else", MakeCheeseOrNot ) MakeCheese()
Çıktı: Sunucuda oyuncu varsa yay, yoksa nay yazdırılır.

Örnek

DoneDoingSomething olayını bazı argümanlarla çağırır.

hook.Add( "DoneDoingSomething", "Does something else", function( a, b ) print( a ) print( b ) end ) hook.Call( "DoneDoingSomething", nil, "Hello", "Hey" )
Çıktı:
Hello Hey

Tüm sunucular · GmodTR Launcher · Rehber · GMod Wiki · GmodTR nedir? · Sunucu ekle · Discord