Update method of getting player language

This commit is contained in:
Cooldude2606
2024-09-28 02:06:19 +01:00
parent 292c1a1b68
commit 32a8ba8f3a
52 changed files with 9 additions and 126 deletions

View File

@@ -33,7 +33,7 @@
"nameStyle.config": {
"local_name_style": [{
"type" : "pattern",
"param": "_?_?(\\w+)",
"param": "_?_?(\\w+)?",
"$1": "snake_case"
}],
"module_local_name_style": [{

View File

@@ -1,2 +0,0 @@
[language]
local-language=Afrikaans

View File

@@ -1,2 +0,0 @@
[language]
local-language=Arabic

View File

@@ -1,2 +0,0 @@
[language]
local-language=Belarusian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Bulgarian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Catalan

View File

@@ -1,2 +0,0 @@
[language]
local-language=Czech

View File

@@ -1,2 +0,0 @@
[language]
local-language=Danish

View File

@@ -1,2 +0,0 @@
[language]
local-language=German

View File

@@ -1,2 +0,0 @@
[language]
local-language=Greek

View File

@@ -1,2 +0,0 @@
[language]
local-language=English

View File

@@ -1,2 +0,0 @@
[language]
local-language=Esperanto

View File

@@ -1,2 +0,0 @@
[language]
local-language=Spanish (Spain)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Estonian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Basque

View File

@@ -1,2 +0,0 @@
[language]
local-language=Persian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Finnish

View File

@@ -1,2 +0,0 @@
[language]
local-language=Filipino

View File

@@ -1,2 +0,0 @@
[language]
local-language=French

View File

@@ -1,2 +0,0 @@
[language]
local-language=Frysian (Netherlands)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Irish (Ireland)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Hebrew

View File

@@ -1,2 +0,0 @@
[language]
local-language=Croatian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Hungarian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Indonesian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Icelandic

View File

@@ -1,2 +0,0 @@
[language]
local-language=Italian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Japanese

View File

@@ -1,2 +0,0 @@
[language]
local-language=Georgian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Kazakh

View File

@@ -1,2 +0,0 @@
[language]
local-language=Korean

View File

@@ -1,2 +0,0 @@
[language]
local-language=Lithuanian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Latvian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Dutch

View File

@@ -1,2 +0,0 @@
[language]
local-language=Norwegian (Norway)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Polish

View File

@@ -1,2 +0,0 @@
[language]
local-language=Portuguese (Brazil)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Portuguese (Portugal)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Romanian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Russian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Slovak

View File

@@ -1,2 +0,0 @@
[language]
local-language=Slovenian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Albanian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Serbian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Swedish (Sweden)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Thai

View File

@@ -1,2 +0,0 @@
[language]
local-language=Turkish

View File

@@ -1,2 +0,0 @@
[language]
local-language=Ukrainian

View File

@@ -1,2 +0,0 @@
[language]
local-language=Vietnamese

View File

@@ -1,2 +0,0 @@
[language]
local-language=Chinese (Simplified)

View File

@@ -1,2 +0,0 @@
[language]
local-language=Chinese (Traditional)

View File

@@ -6,29 +6,12 @@ local PlayerData = require("modules.exp_legacy.expcore.player_data") --- @dep ex
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 function set_locale(event)
local player = game.players[event.player_index]
if not event.translated then
player.print("Could not detect your language settings")
-- Raise error
return
LocalLanguage:set(player, player.locale)
end
-- Change LocalLanguage value for the player to the recognized one
local language = event.result
LocalLanguage:set(player, language)
end)
--- Set the players language when they join and change language
Event.add(defines.events.on_player_created, set_locale)
Event.add(defines.events.on_player_joined_game, set_locale)
Event.add(defines.events.on_player_locale_changed, set_locale)