Lua Globals
*Ta zawartość została przetłumaczona przy użyciu narzędzi AI (w wersji beta) i może zawierać błędy. Aby wyświetlić tę stronę w języku angielskim, kliknij tutaj.
Poniżej znajduje się lista funkcji i zmiennych, które są domyślnie w Lua. Te funkcje można używać w standardowej instalacji Lua 5.1.4 , choć są pewne różnice w tym, jak niektóre z tych funkcji działają na Roblox.
Podsumowanie
Funkcje
Występuje błąd, jeśli zaznaczony value rozwiązuje się w false lub nil.
Zatrzymuje wykonanie wątku i wyrzuca błąd.
Zwraca ogólny rozmiar gniazda pamięci w kilobajtach.
Zwraca metabelę danej tabeli.
Zwraca funkcję inkrementatora i tabelę do użycia w pętli.
Wróщает dostarczony kod jako funkcję, którą można wykonać.
Tworzy pusty userdata , z opcją, aby mieć metabelę.
Funkcja generatora dla użycia w pętli.
Zwraca funkcję inkrementatora i dostarczoną tabelę do użycia w pętli for.
Wykonuje podstawową funkcję i kryje wszystkie błędy, które wyrzuca, zwracając sukces funkcji i jej wyniki.
Drukuje wszystkie dostępne wartości do wyjścia.
Wywraca, czy v1 jest równoznaczne z v2, omywając ich metodę.
Dostarcza realną wartość table[index] , omińając wszystkie metody metam.
Zwraca długość wiersza lub tabeli, omiń metody metametodowe.
Ustawia wartość rzeczywistą z table[index] , omiń metametody.
Zwraca wartość, która została zwrócona przez podany ModuleScript, uruchom go, jeśli jeszcze go nie uruchomiono.
Wyświetla wszystkie argumenty po podanym indeksie.
Ustawia metabelę danej tabeli.
Zwraca dostarczoną wartość przeliczoną na liczbę lub zero, jeśli to niemożliwe.
Zwraca dostarczoną wartość przeliczoną na strunę lub zero, jeśli to niemożliwe.
Zwraca podstawowy typ dostarczonego obiektu.
Zwraca wszystkie elementy z podanej listy jako tabelę.
Podobny do pcall() z wyjątkiem użycia niestandardowego kodeksu błędów.
Funkcje
assert
Występuje błąd, jeśli zapewniony value jest false lub nil. Jeśli zaś twierdzenie przeprowadza, to zwraca wszystkie przekazane mu wartości.
local product = 90 * 4assert(product == 360, "Oh dear, multiplication is broken")-- The line above does nothing, because 90 times 4 is 360
Parametry
Wartość, która zostanie ujawniona przeciwko.
Tekst, który zostanie pokazany w błędzie, jeśli zgłoszenie się nie powiodło się.
Zwroty
error
Zakończa ostatnią chronioną funkcję nazwał i wygrywa message jako wiadomość błędu. Jeśli funkcja zawierająca błąd nie zostanie wezwana w chronionej funkcji, tak jak pcall(), to skrypt, który wywołał funkcję, trwale blokować. Funkcja błędu sama się nie zwraca i działa jak błąd w skrypcie.
Argument level określa, jak uzyskać pozycję błędu. Z poziomem 1 (domyślnie) pozycja błędu jest tam, gdzie funkcja błędu została wezwana. Poziom 2 wskazuje na pozycję błędu, w której znajduje się funkcja błędu; i tak dalej. Przekazanie poziomu 0 uniknie dodania wiadomość
Parametry
Zwroty
getmetatable
Wywraca metabelę danej tabeli t jeśli ma jedną, lub nil. Jeśli t ma metabelę, a metodą __metatable jest ustawiać, zwraca wartość zamiast tego.
-- Pokaż getmetatable:local meta = {}local t = setmetatable({}, meta)print(getmetatable(t) == meta) --> prawdziwy-- Uczyn metabeliarny oryginalny nieodzyskiwalny poprzez ustawienie metody metabeliarniej __metablo:meta.__metatable = "protected"print(getmetatable(t)) --> protected
Parametry
Przedmiot do odczytania metabeli.
Zwroty
ipairs
Zwraca trzy wartości: funkcję it器, tabelę t i numer 0. Każdym razem, gdy funkcja it器 jest wezwana, zwraca następną wartość liczbową 1 w tabeli. Gdy używany jest w genéricznym for-Loop, wartości zwracane mogą być używane do iterytacji nad każdą liczbą w tabeli:
local fruits = {"apples", "oranges", "kiwi"}for index, fruit in ipairs(fruits) doprint(index, fruit) --> 1 jabłka, 2 pomarańcze, 3 kiwi itp.end
Parametry
Tabela, która ma być przechodzona przez.
loadstring
Ładowuje kod Lua z wiersza i wypisuje go jako funkcję.
W przeciwieństwie do standardowego Lua 5.1, Lua Roblox nie może załadować binarnej wersji Lua używając loadstring() .
loadstring() jest wyłączony domyślnie. Aby uzyskać instrukcje w sprawie włączenia go, zobacz ServerScriptService.
OSTRZE?ENIE: Ta metoda wyłącza niektóre optymalizacje Luau na zwracanej funkcji. Bardzo ostrożna ostrożność należy przyjmować, gdy używa się loadstring() ; jeśli intencją jest umożliwienie użytkown
Parametry
Zwroty
next
Zwraca pierwszy pary klucz/wartość w arkuszu. Jeśli określono argument lastKey , zwraca następny element w arkuszu w oparciu o klucz zaszkodzony. Porządek, w którym indeksy są numerycznie zapisane, nie jest określony, nawet dla indeksów liczbowych. Aby przejść przez tabelę w liczbowym porządku, użyj liczby dla pętli lub
Zachowanie następnego jest niedefiniowane, jeśli podczas przejścia przypiszesz jakiejkolwiek wartości polu, które nie istnieje w tabeli. Możesz jednak modyfikować już istniejące pola. W szczególności możesz usunąć już istniejące pola.
Parametry
Lista do przechwycenia.
Ostatni klucz, który został wcześniej odzyskany z wezwania do następnego.
Zwroty
pairs
Zwraca funkcję inkrementatora, przesłaną tabelę t i nil, aby budowa przeszła przez wszystkie pary klucz/wartości tej tabeli podczas używania genérica for pętli:
local scores = {["John"] = 5,["Sally"] = 10}for name, score in pairs(scores) doprint(name .. " has score: " .. score)end
Parametry
Tabela lub lista arkuszy do przejścia.
pcall
Wezwuje funkcję func z podanymi argumentami w trybie chronionym. Oznacza to, że każdy błąd w środku func nie jest rozprzestrzeniany; zamiast tego, pcall() k
Parametry
Zwroty
Odbiera dowolną liczbę argumentów i drukuje ich wartości do wyjścia. print nie jest przeznaczony dla wydruków związanych z Roblox, ale tylko jako szybki sposób na pokazanie wartości, zwykle do debugingu. Dla wydruków związanych z formu
Parametry
Dowolna liczba argumentów do wyświetlenia.
Zwroty
rawget
Dostaje realną wartość table[index] , bez wzywania żadnych metod metametody.
Parametry
Tabela do odniesienia.
Indeks do uzyskania z t .
Zwroty
require
Konfiguruje dostarczony ModuleScript i
Jak wspomniano powyżej, zachowanie "udzielania użyt
Uwaga: jeśli ModuleScript użytkownika chce się załadować, została ona wysłana do Roblox (z nazwą instancji MainModule), można ją załadować poprzez użycie funkcji require() na ID zasobu 2>Class.ModuleScript2>, choć tylko na serwerze
Parametry
Class.ModuleScript, który zostanie wykonany, aby odzyskać wartość zwracaną przez niego.
Zwroty
Co ModuleScript zwrócił (zwykle tabela lub funkcja).
select
Zwraca wszystkie argumenty po argument number index . Jeśli negatywne, zwróci z końca listy argumentów.
print(select(2, "A", "B", "C")) --> Bprint(select(-1, "A", "B", "C")) --> C
Jeśli argument index ustawiony na "#", liczba argumentów, które były przekazywane po jego zwróceniu.
print(select("#", "A", "B", "C")) --> 3
Parametry
Indeks argumentu, aby zwrócić wszystkie argumenty po args . Jeśli jest ustawiony na "#", liczba argumentów, które były przekazywane po powrocie.
Zestaw argumentów.
Zwroty
setmetatable
Ustawia metabelę dla danej tabeli t na newMeta . Jeśli newMeta jest nil, metabela 1> t1> jest usuwana. Następnie funkcja
local meta = {__metatable = "protected"}local t = {}setmetatable(t, meta) -- To ustawia metabelę t-- Teraz mamy tabelę, t, z metabelą. Jeśli spróbujemy ją zmienić...setmetatable(t, {}) --> Error: cannot change a protected metatable
Parametry
Tabela do ustawienia metabeli.
Jeśli nil, to metabela t jest usuwana. W przeciwnym razie metabela do ustawienia dla t .
Zwroty
tonumber
Próby przekonwertowania argumentu na liczbę z określoną bazą, aby interpretować wartość w nim. Jeśli nie może być przekonwertowany, funkcja ta zwraca nil.
Bazą może być każda liczba pomiędzy 2 i 36, włącznie. W bazach powyżej 10 litery "A" (w każdym razie w wersji górnej lub dolnej) reprezentują 10, "B" reprezentuje 11 i tak dalej, z "Z" reprezentującym 35. W bazie 10 (domyślnie) akceptowane są tylko liczby dziesięcioprstępne, a także
Jeśli początek 0x i baza nie jest dostarczana, 0x jest skrócony, a baza jest zakładana jako 16 lub dziesięciodziesiątkowy.
print(tonumber("1337")) --> 1337 (zakłada podstawę 10, dziesiętny)print(tonumber("1.25")) --> 1.25 (baza 10 może mieć dziesiętne części dziesięcioprocentowe)print(tonumber("3e2")) --> 300 (baza 10 może mieć część eksponencji, 3 & times; 10 ^ 2)print(tonumber("25", 8)) --> 21 (8 baz, 8-bajtowy)print(tonumber("0x100")) --> 256 (zakłada podstawę 16, 16-bitowy)print(tonumber("roblox")) --> nil (nie weryfikuje błędu)-- Wskazówka: użyj z azy, jeśli chcesz zwiększyć błądprint(assert(tonumber("roblox"))) --> Error: assertion failed
Parametry
Przedmiot do przeliczenia na liczbę.
Liczbową podstawę do przekonwertowania arg w.
Zwroty
tostring
Otrzymuje argument dowolnego typu i konwertuje go w rozsądnym formacie. Aby uzyskać pełną kontrolę nad tym, jak liczby są konwertowane, użyj zmiennej formatu e. Jeśli metoda __tostring ma metodę e, to zostanie ona wywołana z 2> e2> jako jedyny argument i zwróci wynik.
local isRobloxCool = true-- Konwertuj booleto na ciąg znaków, a następnie połącz go:print("Roblox is cool: " .. tostring(isRobloxCool)) --> Roblox is cool: true
Parametry
Przedmiot do przekonwersji na ciąg.
Zwroty
unpack
Zwraca elementy z podanej tabeli. Domyślnie i ma 1, a j jest długością list, jak zdefiniowano przez operator długości.
Parametry
Zwroty
Właściwości
_G
Tabela, która jest współdzielona przez wszystkie skrypcity tego samego poziomu kontekstu.
_VERSION
Globalna zmienne (nie funkcja), która zawiera ciąg znaleziony w obecnej wersji interpretatora.