Lua Globals

Pokaż przestarzałe

*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

  • assert(value : Variant,errorMessage : string):Variant

    Występuje błąd, jeśli zaznaczony value rozwiązuje się w false lub nil.

  • error(message : string,level : number):void

    Zatrzymuje wykonanie wątku i wyrzuca błąd.

  • Zwraca ogólny rozmiar gniazda pamięci w kilobajtach.

  • getmetatable(t : Variant):Variant

    Zwraca metabelę danej tabeli.

  • Zwraca funkcję inkrementatora i tabelę do użycia w pętli.

  • loadstring(contents : string,chunkname : string):Variant

    Wróщает dostarczony kod jako funkcję, którą można wykonać.

  • newproxy(addMetatable : bool):userdata

    Tworzy pusty userdata , z opcją, aby mieć metabelę.

  • next(t : table,lastKey : Variant):Variant,Variant

    Funkcja generatora dla użycia w pętli.

  • Zwraca funkcję inkrementatora i dostarczoną tabelę do użycia w pętli for.

  • pcall(func : function,args : Tuple):bool,Variant

    Wykonuje podstawową funkcję i kryje wszystkie błędy, które wyrzuca, zwracając sukces funkcji i jej wyniki.

  • print(params : Tuple):void

    Drukuje wszystkie dostępne wartości do wyjścia.

  • rawequal(v1 : Variant,v2 : Variant):bool

    Wywraca, czy v1 jest równoznaczne z v2, omywając ich metodę.

  • rawget(t : table,index : Variant):Variant

    Dostarcza realną wartość table[index] , omińając wszystkie metody metam.

  • Zwraca długość wiersza lub tabeli, omiń metody metametodowe.

  • rawset(t : table,index : Variant,value : Variant):table

    Ustawia wartość rzeczywistą z table[index] , omiń metametody.

  • require(module : ModuleScript):Variant

    Zwraca wartość, która została zwrócona przez podany ModuleScript, uruchom go, jeśli jeszcze go nie uruchomiono.

  • select(index : Variant,args : Tuple):Tuple

    Wyświetla wszystkie argumenty po podanym indeksie.

  • setmetatable(t : table,newMeta : Variant):table

    Ustawia metabelę danej tabeli.

  • tonumber(arg : Variant,base : number):Variant

    Zwraca dostarczoną wartość przeliczoną na liczbę lub zero, jeśli to niemożliwe.

  • tostring(e : Variant):string

    Zwraca dostarczoną wartość przeliczoną na strunę lub zero, jeśli to niemożliwe.

  • type(v : Variant):string

    Zwraca podstawowy typ dostarczonego obiektu.

  • unpack(list : table,i : number,j : number):Variant

    Zwraca wszystkie elementy z podanej listy jako tabelę.

  • xpcall(f : function,err : function,args : Tuple):bool,Variant

    Podobny do pcall() z wyjątkiem użycia niestandardowego kodeksu błędów.

Właściwości

  • Tabela, która jest współdzielona przez wszystkie skrypcity tego samego poziomu kontekstu.

  • Globalna zmienne, która zawiera ciąg znaleziony w obecnej wersji interpretatora.

Funkcje

assert

Variant

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 * 4
assert(product == 360, "Oh dear, multiplication is broken")
-- The line above does nothing, because 90 times 4 is 360

Parametry

value: Variant

Wartość, która zostanie ujawniona przeciwko.

errorMessage: string

Tekst, który zostanie pokazany w błędzie, jeśli zgłoszenie się nie powiodło się.

Wartość domyślna: assertion failed!

Zwroty

Variant

error

void

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

message: string

Nastąpił błąd, który należy wyświetlić.

level: number

Poziom informacji, który powinien być wydrukowany. Domyślnie ustawiony na 1.

Wartość domyślna: 1

Zwroty

void

gcinfo

Wyświetla całkowitą wielkość gniazda pamięci w kilobajtach. Liczba ta odzwierciedla obecny zużycie pamięci z punktu widzenia systemu operacyjnego, co zmienia się wraz z upływem czasu, gdy gromadzą się obiekty zbierania śmieci.

Zwroty

getmetatable

Variant

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

t: Variant

Przedmiot do odczytania metabeli.

Zwroty

Variant

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) do
print(index, fruit) --> 1 jabłka, 2 pomarańcze, 3 kiwi itp.
end

Parametry

Tabela, która ma być przechodzona przez.

loadstring

Variant

Ł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

contents: string

Określony ciąg stron do załadowania jako kod Lua.

chunkname: string

Opcjonalna nazwa części dla wiadomości błędów i informacji o debugowaniu. Jeśli nie określono, Lua używa contents ciągdla wiadomości.

Zwroty

Variant

newproxy

Tworzy pusty userdata , z opcją, aby mieć metabelę.

Parametry

addMetatable: bool
Wartość domyślna: false

Zwroty

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) do
print(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

func: function

Funkcja do wywołania w trybie chronionym.

args: Tuple

Argenty do wysłania do func podczas wykonania.

Zwroty

Variant

print

void

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

params: Tuple

Dowolna liczba argumentów do wyświetlenia.

Zwroty

void

rawequal

Sprawdza, czy v1 jest równoznaczne z v2, bez wzywania żadnych metod metametodu.

Parametry

v1: Variant

Pierwsza zmiana do porównania.

v2: Variant

Druga zmiana do porównania.

Zwroty

rawget

Variant

Dostaje realną wartość table[index] , bez wzywania żadnych metod metametody.

Parametry

Tabela do odniesienia.

index: Variant

Indeks do uzyskania z t .

Zwroty

Variant

rawlen

Zwraca długość wiersza lub tabeli, bez wzywania żadnych metod metametody.

Parametry

Tabela do odniesienia.

Zwroty

rawset

Ustawia realną wartość table[index] na dany value bez wzywania metody metametody.

Parametry

Tabela do odniesienia.

index: Variant

Indeks ustawiony w t do określonego value . Musi być inny od zero.

value: Variant

Wartość ustawiona na określony index w tabeli t .

Zwroty

require

Variant

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

module: ModuleScript

Class.ModuleScript, który zostanie wykonany, aby odzyskać wartość zwracaną przez niego.

Zwroty

Variant

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")) --> B
print(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

index: Variant

Indeks argumentu, aby zwrócić wszystkie argumenty po args . Jeśli jest ustawiony na "#", liczba argumentów, które były przekazywane po powrocie.

args: Tuple

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.

newMeta: Variant

Jeśli nil, to metabela t jest usuwana. W przeciwnym razie metabela do ustawienia dla t .

Zwroty

tonumber

Variant

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łąd
print(assert(tonumber("roblox"))) --> Error: assertion failed

Parametry

arg: Variant

Przedmiot do przeliczenia na liczbę.

base: number

Liczbową podstawę do przekonwertowania arg w.

Wartość domyślna: 10

Zwroty

Variant

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

e: Variant

Przedmiot do przekonwersji na ciąg.

Zwroty

type

Zwraca typ jego jedynego argumentu, zapisany jako ciąg. Możliwe wyniki tej funkcji to "nil" (ciąg, nie wartość nil), "number", "ciąg", "button", "tid", "Vector", "Function", "Thread" i "Userdata".

Parametry

v: Variant

Przedmiot do zwrócenia typu.

Zwroty

unpack

Variant

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

list: table

Lista elementów do rozpakowania.

Indeks pierwszego elementu do rozpakowania.

Wartość domyślna: 1

Indeks ostatniego elementu do rozpakowania.

Wartość domyślna: #list

Zwroty

Variant

xpcall

Funkcja ta jest podobna do pcall() , z wyjątkiem tego, że możesz ustawić nowy identyfikator błędu.

xpcall() wezwie funkcję <

Parametry

Funkcja do wywołania w trybie chronionym.

Funkcja do użycia jako kodeks błędu, jeśli xpcall złapie błąd.

args: Tuple

Zwroty

Variant

Właściwości

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.