mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2026-05-28 06:09:54 +09:00
Added local language detection
Added language.cfg for all locale folders from the base game Added language.lua with the functions which detect the local language Added language.lua to _file_loader.lua
This commit is contained in:
@@ -61,6 +61,7 @@ return {
|
||||
'modules.data.alt-view',
|
||||
'modules.data.tag',
|
||||
'modules.data.bonus',
|
||||
'modules.data.language',
|
||||
|
||||
--- GUI
|
||||
'modules.gui.readme',
|
||||
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Afrikaans
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Arabic
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Belarusian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Bulgarian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Catalan
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Czech
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Danish
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=German
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Greek
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=English
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Esperanto
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Spanish (Spain)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Estonian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Basque
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Persian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Finnish
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Filipino
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=French
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Frysian (Netherlands)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Irish (Ireland)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Hebrew
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Croatian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Hungarian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Indonesian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Icelandic
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Italian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Japanese
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Georgian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Kazakh
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Korean
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Lithuanian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Latvian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Dutch (Netherlands)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Norwegian (Norway)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Polish
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Portuguese (Brazil)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Portuguese (Portugal)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Romanian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Russian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Slovak
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Slovenian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Albanian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Serbian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Swedish (Sweden)
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Thai
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Turkish
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Ukrainian
|
||||
@@ -0,0 +1,2 @@
|
||||
[language]
|
||||
local-language=Vietnamese
|
||||
@@ -0,0 +1,33 @@
|
||||
--- Stores the language used to join the server
|
||||
-- @data Language
|
||||
|
||||
local Event = require 'utils.event' ---@dep utils.event
|
||||
local PlayerData = require 'expcore.player_data' --- @dep expcore.player_data
|
||||
local LocalLanguage = PlayerData.Settings:combine('LocalLanguage')
|
||||
LocalLanguage:set_default("Unknown")
|
||||
|
||||
--- Creates translation request on_load of a player
|
||||
LocalLanguage:on_load(function(player_name, language)
|
||||
local player = game.players[player_name]
|
||||
player.request_translation("language.local-language")
|
||||
end)
|
||||
|
||||
--- Resolves translation request for language setting
|
||||
Event.add(defines.events.on_string_translated, function(event)
|
||||
-- Check if the translation request was for language setting
|
||||
if event.localised_string ~= "language.local-language" then
|
||||
return
|
||||
end
|
||||
|
||||
-- Check if the translation request was succesful
|
||||
if not event.translated then
|
||||
game.print("Could not detect your language settings")
|
||||
-- Raise error
|
||||
return
|
||||
end
|
||||
|
||||
-- Change LocalLanguage value for the player to the recognized one
|
||||
local player = game.players[event.player_index]
|
||||
local language = {event.result}
|
||||
LocalLanguage:set(player, language)
|
||||
end)
|
||||
Reference in New Issue
Block a user