Merge pull request #244 from DrahcPro/dev

Language detection module
This commit is contained in:
Cooldude2606
2023-08-15 19:30:19 +01:00
committed by GitHub
52 changed files with 135 additions and 0 deletions
+1
View File
@@ -78,6 +78,7 @@ return {
'modules.data.tag',
'modules.data.bonus',
'modules.data.personal-logistic',
'modules.data.language',
--- GUI
'modules.gui.readme',
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Afrikaans
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Arabic
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Belarusian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Bulgarian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Catalan
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Czech
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Danish
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=German
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Greek
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=English
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Esperanto
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Spanish (Spain)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Estonian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Basque
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Persian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Finnish
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Filipino
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=French
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Frysian (Netherlands)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Irish (Ireland)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Hebrew
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Croatian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Hungarian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Indonesian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Icelandic
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Italian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Japanese
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Georgian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Kazakh
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Korean
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Lithuanian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Latvian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Dutch
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Norwegian (Norway)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Polish
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Portuguese (Brazil)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Portuguese (Portugal)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Romanian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Russian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Slovak
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Slovenian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Albanian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Serbian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Swedish (Sweden)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Thai
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Turkish
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Ukrainian
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Vietnamese
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Chinese (Simplified)
+2
View File
@@ -0,0 +1,2 @@
[language]
local-language=Chinese (Traditional)
+34
View File
@@ -0,0 +1,34 @@
--- 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.Statistics:combine('LocalLanguage')
LocalLanguage:set_default("Unknown")
--- Creates translation request on_load of a player
LocalLanguage:on_load(function(player_name, _)
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 event.localised_string is a table
-- Check if the translation request was for language setting
if type(event.localised_string) ~= "table" or event.localised_string[1] ~= "language.local-language" then
return
end
-- Check if the translation request was succesful
local player = game.players[event.player_index]
if not event.translated then
player.print("Could not detect your language settings")
-- Raise error
return
end
-- Change LocalLanguage value for the player to the recognized one
local language = event.result
LocalLanguage:set(player, language)
end)