Özet - Basit Event Handler
Coddy'nin Lua Journey'sinin Logic & Flow bölümünün bir parçası — ders 15 / 54.
Görev
KolayÖnceden kaydedilmiş olaylara sahip basit bir olay sistemi oluşturan ve giriş parametrelerine göre birini tetikleyen bir createEventSystem fonksiyonu yazın.
Mantık:
createEventSystemiçinde olayları saklamak için boş bir tablo oluşturuneventNamevecallbackalan birregisterfonksiyonu tanımlayın; bu fonksiyon, geri aramayı (callback) olay tablosunda olay adını anahtar olarak kullanarak saklamalıdıreventNameveargalan birtriggerfonksiyonu tanımlayın; bu fonksiyon, olay tablosunda geri aramayı aramalı ve eğer varsa argümanla birlikte çağırmalıdır- Üç olayı önceden kaydedin:
"double": bir sayı alır ve onu 2 ile çarpılmış halini döndürür"square": bir sayı alır ve karesini döndürür"increment": bir sayı alır ve 1 fazlasını döndürür
eventNameparametresi ile belirtilen olayıvalueparametresi ile tetikleyin- Tetiklenen olayın sonucunu döndürün veya olay mevcut değilse
"Event not found"döndürün
Parametreler:
eventName(string): Tetiklenecek olayın adıvalue(number): Olay geri aramasına iletilecek değer
Dönen Değer:
- Geri arama fonksiyonunun sonucu (number) veya olay mevcut değilse
"Event not found"(number|string)
Kendin dene
function createEventSystem(eventName, value)
-- Kodunuzu buraya yazın
end
Logic & Flow bölümündeki tüm dersler
1İleri Düzey Tablo Yineleme
pairs() ile Yinelemeipairs() ile Yinelemepairs() vs. ipairs()Özet - Karakter Sayfası2Daha Fazla Tablo Kütüphanesi Fonksiyonu
table.concat()Tablo Oluşturma ve unpack()table.sort()Fonksiyonlar ile Özel SıralamaÖzet - Yüksek Skor Tablosu3İleri Düzey Fonksiyon Kavramları
Birden Fazla Değer DöndürmeVariadic Fonksiyonlar (...)Birinci Sınıf Değer Olarak FonksiyonlarAnonim FonksiyonlarClosure Nedir?Özet - Basit Event Handler