mirror of
https://github.com/PHIDIAS0303/ExpCluster.git
synced 2026-11-11 15:54:52 +09:00
exp_legacy recorded each player's locale in PlayerData statistics which nothing read. The lua side now sends one ipc event with the player's locale when they join and when they change language, the instance forwards it, and the controller stores it on the player record. The Scenario section of the user page shows the language by name with a flag made from regional indicator symbols. Locales with a region use it directly, the rest map to a country through a small table covering Factorio's locale list. Arabic, Catalan, Basque, and Esperanto have no single country and get no flag. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
93 lines
4.4 KiB
Lua
93 lines
4.4 KiB
Lua
local event_handler = require("event_handler")
|
|
|
|
--- @type fun(lib: { on_init: fun(), on_load: fun(), events: { [defines.events]: fun(event: EventData) } })
|
|
local add = event_handler.add_lib
|
|
|
|
--- Command Extensions
|
|
require("modules/exp_scenario/commands/_authorities")
|
|
require("modules/exp_scenario/commands/_rcon")
|
|
require("modules/exp_scenario/commands/_types")
|
|
|
|
--- Commands with events
|
|
add(require("modules/exp_scenario/commands/protected_entities"))
|
|
add(require("modules/exp_scenario/commands/protected_tags"))
|
|
add(require("modules/exp_scenario/commands/lawnmower"))
|
|
|
|
--- Commands
|
|
require("modules/exp_scenario/commands/admin_chat")
|
|
require("modules/exp_scenario/commands/artillery")
|
|
require("modules/exp_scenario/commands/bot_queue")
|
|
require("modules/exp_scenario/commands/cheat")
|
|
require("modules/exp_scenario/commands/clear_inventory")
|
|
require("modules/exp_scenario/commands/connect")
|
|
require("modules/exp_scenario/commands/debug")
|
|
require("modules/exp_scenario/commands/enemy")
|
|
require("modules/exp_scenario/commands/home")
|
|
require("modules/exp_scenario/commands/jail")
|
|
require("modules/exp_scenario/commands/kill")
|
|
require("modules/exp_scenario/commands/locate")
|
|
require("modules/exp_scenario/commands/me")
|
|
require("modules/exp_scenario/commands/rainbow")
|
|
require("modules/exp_scenario/commands/ratio")
|
|
require("modules/exp_scenario/commands/repair")
|
|
require("modules/exp_scenario/commands/roles")
|
|
require("modules/exp_scenario/commands/search")
|
|
require("modules/exp_scenario/commands/spectate")
|
|
require("modules/exp_scenario/commands/surface")
|
|
require("modules/exp_scenario/commands/tag")
|
|
require("modules/exp_scenario/commands/teleport")
|
|
require("modules/exp_scenario/commands/trains")
|
|
require("modules/exp_scenario/commands/vlayer")
|
|
require("modules/exp_scenario/commands/waterfill")
|
|
|
|
--- Control
|
|
add(require("modules/exp_scenario/control/afk_kick"))
|
|
add(require("modules/exp_scenario/control/bonus"))
|
|
add(require("modules/exp_scenario/control/chat_auto_reply"))
|
|
add(require("modules/exp_scenario/control/custom_start"))
|
|
add(require("modules/exp_scenario/control/death_markers"))
|
|
add(require("modules/exp_scenario/control/deconstruction_log"))
|
|
add(require("modules/exp_scenario/control/degrading_tiles"))
|
|
add(require("modules/exp_scenario/control/discord_alerts"))
|
|
add(require("modules/exp_scenario/control/features"))
|
|
add(require("modules/exp_scenario/control/extra_logging"))
|
|
add(require("modules/exp_scenario/control/fast_deconstruction"))
|
|
add(require("modules/exp_scenario/control/greetings"))
|
|
add(require("modules/exp_scenario/control/help_bubbles"))
|
|
add(require("modules/exp_scenario/control/inserter_pickup"))
|
|
add(require("modules/exp_scenario/control/inventory_clear"))
|
|
add(require("modules/exp_scenario/control/mine_depletion"))
|
|
add(require("modules/exp_scenario/control/nuke_protection"))
|
|
add(require("modules/exp_scenario/control/player_settings"))
|
|
add(require("modules/exp_scenario/control/pollution_grading"))
|
|
add(require("modules/exp_scenario/control/popups"))
|
|
add(require("modules/exp_scenario/control/protection"))
|
|
add(require("modules/exp_scenario/control/protection_jail"))
|
|
add(require("modules/exp_scenario/control/report_jail"))
|
|
add(require("modules/exp_scenario/control/research"))
|
|
add(require("modules/exp_scenario/control/roles"))
|
|
add(require("modules/exp_scenario/control/spawn_area"))
|
|
add(require("modules/exp_scenario/control/spectate"))
|
|
add(require("modules/exp_scenario/control/station_auto_name"))
|
|
add(require("modules/exp_scenario/control/vlayer"))
|
|
|
|
--- Guis
|
|
add(require("modules/exp_scenario/gui/autofill"))
|
|
add(require("modules/exp_scenario/gui/elements"))
|
|
add(require("modules/exp_scenario/gui/module_inserter"))
|
|
add(require("modules/exp_scenario/gui/player_bonus"))
|
|
add(require("modules/exp_scenario/gui/player_list"))
|
|
add(require("modules/exp_scenario/gui/player_stats"))
|
|
add(require("modules/exp_scenario/gui/production_stats"))
|
|
add(require("modules/exp_scenario/gui/quick_actions"))
|
|
add(require("modules/exp_scenario/gui/readme"))
|
|
add(require("modules/exp_scenario/gui/research_milestones"))
|
|
add(require("modules/exp_scenario/gui/rocket_info"))
|
|
add(require("modules/exp_scenario/gui/science_production"))
|
|
add(require("modules/exp_scenario/gui/surveillance"))
|
|
add(require("modules/exp_scenario/gui/task_list"))
|
|
add(require("modules/exp_scenario/gui/vlayer"))
|
|
add(require("modules/exp_scenario/gui/warp_list"))
|
|
add(require("modules/exp_scenario/gui/debug/shim"))
|
|
add(require("modules/exp_scenario/gui/debug/event_view"))
|