LocalizationTable
*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.
Tabela lokalizacji jest bazą danych tłumaczeń. Zawiera źródłowe wiersze i tłumaczenia na różne języki. Używana jest z systemem Translator i LocalizationService do kontroli tłumaczeń w gra. Lokalizacja Tabel jest zaprojektowana tak
Wejścia w tabeli lokalizacji
Każdy lokalizacja stołów zawiera zestaw wpisów. Każdy wpis zawiera tłumaczenia tekstu, wraz z kilku polami specjalnymi:
- Klucz jest opcjonalnym unikalnym kluczem do szybkiego szukania hachów w kodzie. Jeśli nie jest pusty, musi być unikalny w tabeli.
- Źródło jest oryginalnym tekstem w języku źródłowym, który będzie używany przez system automatycznego zastępowania tekstu, aby zesynchronizować tekst z GUI i wyświetlić tłumaczenie zamiast tego. Pole LocalizationService
- Kontekst jest pełnym imieniem instancji, na którą pojawił się tekst. Kontekst jest używany do rozróżnienia przez system automatycznej zastępy tekstu. Gdy znaleziono wiele dopasów dla źródła, system wybierze najlepszy dopas poprzez porównanie od końca linii ciąg. Są dostępne inne, bardziej elastyczne sposoby
- Przykład to cokolwiek chcesz, aby to było. Jeśli narzędzie do kopiowania tekstu zgadnie niektóre parametry dla łańcucha, pola przykład będzie zawierał przykład używany w kontekście.
Wszystkie te pola są opcjonalne, ale co najmniej jedno z tych pol musi być puste. Nie może być dwóch wpisów z tych samych kluczy, źródeł i kontekstów.
Zobacz Tłumaczenie dynamicznej treści po więcej informacji.
Przykłady kodu
local LocalizationService = game:GetService("LocalizationService")
local function createLocalizationTable(entries)
local localTable = Instance.new("LocalizationTable")
localTable.DevelopmentLanguage = LocalizationService.SystemLocaleId
localTable:SetEntries(entries)
return localTable
end
local entries = {
{
Key = "Hello_World", -- The 'expressionKey' to be used with GetString
Values = { -- A dictionary of keys corresponding to IETF language tags, and their translations.
["ru"] = " !", -- Russian
["fr"] = "Bonjour le monde!", -- French
["de"] = "Hallo Welt!", -- German
["en-US"] = "Hello world!", -- English
["it"] = "Ciao mondo!", -- Italian
["pt-BR"] = "Ol Mundo!", -- Portuguese
["ja"] = "", -- Japanese
["es"] = "Hola Mundo!", -- Spanish
}
}
}
local helloWorldTable = createLocalizationTable(entries)
print(helloWorldTable:GetString("en-US", "Hello_World"))
Podsumowanie
Właściwości
Lokalizacja źródłowych wierszy.
Metody
Zwraca arkusz listy dyskietek, w których każda dyskietka zawiera wpisy lokalizacji.
Wywraca Translator dla wpisów w tabeli lokalizacji, w określonym języku.
Usuwa pozycję z tabeli lokalizacji, używając określonego key , source i context, aby ograniczyć specyficzny wpis do usunięcia.
Usuwa pojedynczą tłumaczenie z tabeli lokalizacji, używając dostarczonego key, source, context i 2> context2>, aby ograniczyć konkretną pozycję do usunięcia.
Usunie wszystkie tłumaczenia z tabeli lokalizacji z określonym lokalizacjąId.
Ustawia zawartość tabeli lokalizacji.
Ustawia polę Kontekst w zapisie newContext na key, używając określonego 1> klucz1>, 4> kod źródłowy4> i 7> text7>, aby ograniczyć wpis, który będzie miał zastosowany ten zmiany.
Ustawia przykład pola w zapisie lokalizacji na example, używając określonego key, 2>kod źródłowy2> i 5> context5>, aby ograniczyć wpis, który będzie miał zastosowaną zmianę.
Ustawia klucz pola w zapisie lokalizacji na newKey, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć zmianę, która zostanie zastosowana.
Ustawia źródło pola w zapisie LokalizacjiStolu na newSource, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć wejście, które ma zastosowane zmiany.
Ustawia tekst lokalnego ID w wierszu w tabeli lokalizacji, używając określonego key, source i context, aby ograniczyć wpis, który będzie miał zastosowaną tę zmianę.
Właściwości
SourceLocaleId
Lokalizacja Roblox dla kluczowych linii wejściowych dla tej tabeli, na przykład "en-us" lub "es-es". Jest to zwykle "język rozwoju" gra. Dla tłumacza, który łączy wiele obiektów tabeli lokalizacji, jest to lokalizacja "domyślna". Domyślnie dla "en-us".
Metody
GetEntries
Funkcja GetCommands zwraca arkusz listy słówek zawartych w LocalizationTable, gdzie każdy słownik reprezentuje jedną pozycję danych lokalizacji.
Aby ustawić wpisy w tabeli lokalizacji, możesz użyć LocalizationTable:SetEntries() .
Każdy słownik w matrycy zawiera następujące pola:
<tbody><tr><td><b>Klucz</b></td><td><code>Library.string</code></td><td>Klucz do wyszukiwania dla tego konkretnego wpisu w tabeli lokalizacji.</td></tr><tr><td><b>Źródło</b></td><td><code>Library.string</code></td><td>Strona używana do formatowania lokalizowanej ciąg. Używana jako szukacz, jeśli klucz nie zostanie podany.</td></tr><tr><td><b>Kontekst</b></td><td><code>Library.string</code></td><td>Class.Instance:GetFullName() droga do obiektu, który używany był do generowania tabeli lokalizacji. Używany jako wyszukiwarka, jeśli klucz nie zostanie podany.</td></tr><tr><td><b>Przykład</b></td><td><code>Library.string</code></td><td>Strona używana do formatowania lokalizacja. Opcjonalnie.</td></tr><tr><td><b>Werte wartości</b></td><td><code>Słownik</code></td><td>Dictionarium tłumaczeń dla tej lokalizacji. Klucze tego典ictwa to lokalizatorzy ID, a wartości są łańcuchami, które są używane do zastosowania lokalizacji dla języka odpowiadającego lokalizatorowi ID.</td></tr></tbody>
Indeks | Typ | Opis |
---|
Zwroty
Materiały dyskietowe zawierające definicje i tłumaczenia dla danego języka.
Przykłady kodu
local LocalizationService = game:GetService("LocalizationService")
local localizationTable = LocalizationService:FindFirstChild("LocalizationTable")
local entries = {
{
["Key"] = "0001",
["Source"] = "en-us",
["Values"] = {
["0001"] = "Hello Muddah, hello Fadduh.",
["0002"] = "Here I am at Camp Granada.",
["0003"] = "Camp is very entertaining.",
["0004"] = "And they say we'll have some fun if it stops raining.",
},
},
}
localizationTable:SetEntries(entries)
local get_results = localizationTable:GetEntries()
for _index, dict in pairs(get_results) do
for _key, value in pairs(dict["Values"]) do -- Loop through every key, value pair in the dictionary to print our strings
print(value)
end
end
GetTranslator
Zwraca Translator dla wpisów w tej tabeli lokalizacji, w określonym języku. Tłumacz najpierw szuka w tej tabeli i potem szuka w tabelach ojców.
Parametry
Zwroty
RemoveEntry
Usuwa pozycję z tabeli lokalizacji, używając określonego key , source i context, aby ograniczyć specyficzny wpis do usunięcia.
Parametry
Zwroty
RemoveEntryValue
Usuwa pojedynczą tłumaczenie z tabeli lokalizacji, używając dostarczonego key, source, context i 2> context2>, aby ograniczyć konkretną pozycję do usunięcia.
Parametry
Zwroty
RemoveTargetLocale
Usunie wszystkie tłumaczenia z tabeli lokalizacji z określonym lokalizacjąId.
Parametry
Zwroty
SetEntries
Ustawia zawartość tabeli lokalizacji.
Parametr wpisów powinien być matrycą słowników w takim formacie, jak ten zwrócony z funkcji LocalizationTable:GetEntries().
Parametry
Zwroty
SetEntryContext
Ustawia polę Kontekst w zapisie newContext na key, używając określonego 1> klucz1>, 4> kod źródłowy4> i 7> text7>, aby ograniczyć wpis, który będzie miał zastosowany ten zmiany.
Parametry
Zwroty
SetEntryExample
Ustawia przykład pola w zapisie lokalizacji na example, używając określonego key, 2>kod źródłowy2> i 5> context5>, aby ograniczyć wpis, który będzie miał zastosowaną zmianę.
Parametry
Zwroty
SetEntryKey
Ustawia klucz pola w zapisie lokalizacji na newKey, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć zmianę, która zostanie zastosowana.
Parametry
Zwroty
SetEntrySource
Ustawia źródło pola w zapisie LokalizacjiStolu na newSource, używając określonego key, 2> kod źródłowy2> i 5> context5>, aby ograniczyć wejście, które ma zastosowane zmiany.