Lua Globals
*Bu içerik, yapay zekâ (beta) kullanılarak çevrildi ve hatalar içerebilir. Sayfayı İngilizce görüntülemek için buraya tıkla.
Aşağıda, Lua'nın yerli olduğu bazı işlevler ve değişkenlerin bir listesi bulunmaktadır. Bu işlevler, bazıları Roblox'ta nasıl çalıştığını gösteren bazı farklılıklar olabilir, ancak bunların bazıları standart bir Lua 5.1.4 yüklemesinde kullanılabilir.
Özet
İşlevler
Sunulan value ile eşleşen bir hata oluşturur veya false veya nil ile eşleşen bir hata oluşturur.
Thread'i durdurur ve bir hata oluşturur.
Toplam bellek hedefi büyüklüğünü kilobayt olarak iade eder.
Verilen tablenin metabelini iade eder.
Bir for döngüsünde kullanılmak üzere biriteratör işlevi ve tablosunu iade eder.
Sunulan kodu yürütülebilir bir işlev olarak iade eder.
Metabeli olması için seçeneği olan boş bir userdata oluşturur.
Döngüler için kullanılan bir itici işlevi.
Bir for döngüsünde kullanılmak için bir itici işlevi ve sağlanan tabloyu içerir.
Verilen işlevi çalıştırır ve throwlanan herhangi bir hatayı yakalar, işlevin başarısını ve sonuçlarını döndürür.
Tüm sağlanan değerleri çıktıya yazılır.
Metodlarının v1 ile eşdeğer olup olmadığını v2 ile bir bypass yapar.
Metametodların herhangi birini bypassing olarak gerçek değerini alır table[index] .
Metametodların herhangi birini geçersiz kılarak strungun veya tablinin uzunluğunu iade eder.
Metodların metodlarını geçersiz kılarak table[index] 'in gerçek değerini ayarlar.
Verilen Modül Kodunun döndüğü değeri döndürür, henüz yürütülmediyse.
Verilen indeksin ardından tüm argümanları iade eder.
Verilen tablenin mettablolarını ayarlar.
Eğer imkansızsa sağlanan değeri bir sayıya veya sıfıra dönüştürür.
Eğer imkansızsa sağlanan değeri bir diziveya hiçbir değere dönüştürür.
Sunulan objenin temel tipini iade eder.
Verilen listenin tüm elemanlarını bir tuplu olarak iade eder.
Global.LuaGlobals.pcall() ile aynı except it uses a custom error handling.
İşlevler
assert
Sunulan value eğer sağlansa false veya nil ise tüm verileri içeriğine döndürür. Eğer ifade geçerse, içeriğine döndürülen tüm değerleri içeriğine döndürür.
local product = 90 * 4assert(product == 360, "Oh dear, multiplication is broken")-- The line above does nothing, because 90 times 4 is 360
Parametreler
Alanın tersine geçeceği değer.
Eğer ifade başarısızsa gösterilecek metin.
Dönüşler
error
Koruma işlevi olarak adlandırılan son işlevi sona erdirir ve message bir hata mesajı olarak oluşturur. Eğer hata içeren işlev koruma işlevi olmayan bir işlev ise, pcall() gibi koruma işlevi içeren bir işlevin isteği işlenir. Hata işlevi kendisi asla geri döndüğü ve hata gibi davranır.
Error position specifies how to get the error position. With level 1 (the default), error position is where the error function was called. Level 2 points the error to where the function that called error was called; and so on. Passing a level 0 avoids the addition of error position information to the mesaj.
Parametreler
Dönüşler
getmetatable
Eğer bir tane varsa, verilen masanın mettablosunu t içerir, aksi takdirde hiçbir şeyi iade ederim. t eğer mettablosu varsa ve 2> __mettablo2> metodu ayarla, değer yerine 5> hiçbir şeyi iade ederim5> der.
-- Getmetatable'ı göster:local meta = {}local t = setmetatable({}, meta)print(getmetatable(t) == meta) --> doğru-- __metable metamethodunu ayarlayarak orijinal mettablosunu geri alınamaz hale getirin:meta.__metatable = "protected"print(getmetatable(t)) --> protected
Parametreler
Etkinleştirilecek metabeli almak için.
Dönüşler
ipairs
Üç değer iade eder: bir itici işlevi, tablo t ve sayı 0 . Her yeniden çağrıldığında, itici işlevi ile bir sonraki sayı-değer çiftini tablodaki işaret edilir. Genel bir for-Loop'da kullanıldığında, iade değerleri kullanılarak tablodaki her sayı-değer için itilir:
local fruits = {"apples", "oranges", "kiwi"}for index, fruit in ipairs(fruits) doprint(index, fruit) --> 1 elma, 2 portakal, 3 kiwi, vb...end
Parametreler
İterlenmesi gereken öğeleri olan bir tablo.
loadstring
Bir dizden Lua kodu yükler ve bir işlev olarak döndürür.
Standart Lua 5.1'den farklı olarak, Roblox'un Lua'sı loadstring() kullanarak Lua'nın binary versiyonunu yüklemez.
loadstring() varsayılan olarak devre dışı bırakılmıştır. Habilit edilmesi hakkında rehberlik için, ServerScriptService bakın.
UYARI: Bu yöntem, döndürülen işlevde bazı Luau optimizasyonlarını devre dışı bırakır. Kullanıcıların deneyiminizde kodu çalıştırmasına izin vermeniz için aşırı dikkatli olmalısınız
Parametreler
Dönüşler
next
Matrisindeki ilk anahtar/değer çiftini iade eder. Bir lastKey argumentı belirtilmişse, sağlanan anahtarın üzerine dayanarak matrisin sonraki elemanını iade eder. Sıralama, sayısal indeksler için de kullanılabilir. Bir sayısal indeks için, ipairs .
Sonraki davranış özelleştirilmiş değilse, geçiş sırasında herhangi bir değeri tablodaki mevcut olmayan bir alana atarsanız davranış özelleştirilmiş olur. Ancak, mevcut alanları değiştirebilirsiniz. Özellikle, mevcut alanları temizleyebilirsiniz.
Parametreler
Geçilecek matris.
Daha önce bir çağrıdan alınan son anahtar.
Dönüşler
pairs
Genel bir t döngüsünde bu masanın tüm anahtar/değer çiftlerinde nil , böylece yapım oluğunu genel olarak bu masanın tüm anahtar/değer çiftlerinde for içinde iterecek şekilde yeniden oluşturur:
local scores = {["John"] = 5,["Sally"] = 10}for name, score in pairs(scores) doprint(name .. " has score: " .. score)end
Parametreler
Tekrarlanabilir bir matematiksel tablo veya sözlük gibi.
pcall
Koruma modunda verilen argelerle func işlevini çağırır. Bu, içinde func olan herhangi bir hata olmadan hata yakalar ve bir durum mesajdöndürür. İlk sonuc
Parametreler
Dönüşler
Herhangi bir sayıda argüman alır ve değerlerini çıktıya yazılır. print , biçimlendirilmiş çıktı için kullanılmaz, sadece bir değer göstermek için hızlı bir yoldur, gen
Parametreler
Çıktılan herhangi bir sayıda argüman.
Dönüşler
rawget
Metodları çağırmadan table[index] ın gerçek değerini alır.
Parametreler
Referans edilecek tablo.
t 'den alma indeksi.
Dönüşler
rawset
Metametodu çağırmadan önce table[index] 'in gerçek değerini value ile belirler.
Parametreler
Referans edilecek tablo.
t ile belirlenen indeks, belirli bir value ile değiştirilmelidir. Nulardan farklı olmalıdır.
t tablosunda belirlenen özel bir t değeri.
Dönüşler
require
Sunulan ModuleScript ı çalıştırır ve ModuleScript ın oluşturduğu Global.LuaGlobals.gerek çağrısına atıfta bulunur (genellikle bir tablo veya bir işlev). Ancak,
Yukarıdaki "nesne paylaşma" davranışı, "
Ayrıca, ModuleScript kullanıcının istediği çalıştırma, Roblox'a (durum'ın adı MainModule) yüklenmişse, kaynağındaki require() işlevini kullanarak yüklenebilir. Errors: Error: 2> Class.Module
Parametreler
Sunulan değerin alınması için ModuleScript ile eğitimli olacak olan.
Dönüşler
Class.ModuleScript ile döndürülen şey (genellikle bir tablo veya bir işlev).
select
Argüman numarasından sonra tüm argümanları iade eder. Eğer negatif, argüman listesinin sonundan iade edilir.
print(select(2, "A", "B", "C")) --> Bprint(select(-1, "A", "B", "C")) --> C
index"#" ile döndükten sonra verilen argümanların sayısı.
print(select("#", "A", "B", "C")) --> 3
Parametreler
args sonra tüm argümanlar iade edilecek olan argümanın indeksi. Eğer "#" olarak ayarlandıysa, iade edilen son argüman sayısı.
Bir dizi argüman.
Dönüşler
setmetatable
Verilen tablana t ile newMeta arasındaki metabeli ayarlar. newMeta nul ise, 1> t1> metabeli 4>
local meta = {__metatable = "protected"}local t = {}setmetatable(t, meta) -- Bu, t'nin metabelini ayarlar-- Artık meta-tablolarla bir tabloya sahibiz. Eğer değiştirmeyi deneyeceksek...setmetatable(t, {}) --> Error: cannot change a protected metatable
Parametreler
Metabel'i ayarlayacak masa.
Eğer nilsa, verilen tablenin mettablosu kaldırılır. Aksi takdirde, verilen tablenin mettablosu t olarak ayarlanır.
Dönüşler
tonumber
Arg'ı belirli bir tabanla sayıya dönüştürmeye çalışır. Eğer dönüştürülemezse, bu işlev nil döndürür.
Veritabanı 2 ila 36 arasındaki herhangi bir sayı olabilir,括. 10'un üstüne kadar olan veritabanlarında, harf 'A' (üst veya alt kasa) 10'u temsil eder ve öbür tarafta, 'B' 11'i temsil eder ve öbür tarafta, 'Z' 35'i temsil eder. 10 (varsayılan) numarasında
Bir yarışma başlığı ile 0x ve bir taban sağlanmazsa, 0x kesilir ve taban 16 veya hexadecimal olarak varsayılır.
print(tonumber("1337")) --> 1337 (10, onluk veya düzgün olarak)print(tonumber("1.25")) --> 1.25 (10 temelinde katlanabilir onluk parçaları)print(tonumber("3e2")) --> 300 (10 temelindeki artan sayı, 3 × 10 ^ 2)print(tonumber("25", 8)) --> 21 (8, 8'lik)print(tonumber("0x100")) --> 256 (16'yı varsayar, hexadecimal)print(tonumber("roblox")) --> nil (hata oluşturmaz)-- İpucu: eğer dönüştürülmez sayıların bir hata oluşturmak için kullanılabilirse kullanınprint(assert(tonumber("roblox"))) --> Error: assertion failed
Parametreler
Dönüştürülecek sayıya dönüştürülmesi gereken nesne.
Dönüştürme arg içine sayısal temel.
Dönüşler
tostring
Herhangi bir tipte bir argüman alır ve onu mantıksal bir biçimde bir diziye dönüştürür. Sayıların nasıl dönüştürüldüğünü tam olarak kontrol etmek için e kullanın. __tostring metabelinin bir metametodu varsa, sonuç e olarak kaydedilir ve sonuç d
local isRobloxCool = true-- Boolean'ı bir dizinize dönüştürün ve sonra şu şekilde katıştırın:print("Roblox is cool: " .. tostring(isRobloxCool)) --> Roblox is cool: true
Parametreler
dönüştürülmesi gereken nesne.
Dönüşler
unpack
Verilen tablozdaki elemanları iade eder.Varsayılan olarak, i 1'dir ve j uzunluğu list , belirlenen uzunluk operatörü tarafından tanımlanmış olarak uzunluktur.
Parametreler
Dönüşler
Özellikler
_G
Aynı konteynte seviyesindeki tüm kodlar arasında paylaşılan bir tablo.
_VERSION
Mevcut yorum versiyonunu içeren bir global değişken (fonksiyon değil).