From bc701dd8e092a6a079061f7ed158bb4096202d4d Mon Sep 17 00:00:00 2001 From: DarkGod <darkgod@net-core.org> Date: Tue, 17 Mar 2020 15:42:23 +0100 Subject: [PATCH] force font package --- game/engines/default/engine/FontPackage.lua | 11 +++++++++++ game/engines/default/engine/I18N.lua | 5 ++++- game/engines/default/engine/Module.lua | 5 ++--- game/engines/default/engine/init.lua | 1 - 4 files changed, 17 insertions(+), 5 deletions(-) diff --git a/game/engines/default/engine/FontPackage.lua b/game/engines/default/engine/FontPackage.lua index 542b7c9186..52f842d797 100644 --- a/game/engines/default/engine/FontPackage.lua +++ b/game/engines/default/engine/FontPackage.lua @@ -48,13 +48,24 @@ end --- Default font id, "default" local cur_id = "default" + +--- Forced id, usuly only needed by some translations +local forced_id = nil + --- Set default font to use -- @string id if it can't find it, then the font will be "basic" function _M:setDefaultId(id) + if forced_id then id = forced_id end if not packages[id] then id = "basic" end cur_id = id end +--- Force all fonts to use this package, no matter what is actually requested +function _M:forceId(id) + cur_id = id + forced_id = id +end + --- Resolves a font -- @string name -- @string orname diff --git a/game/engines/default/engine/I18N.lua b/game/engines/default/engine/I18N.lua index 2e3792bb3d..19d4052151 100644 --- a/game/engines/default/engine/I18N.lua +++ b/game/engines/default/engine/I18N.lua @@ -97,6 +97,10 @@ function _M:loadLocale(file) setFlag = function(flag, data) self.setFlag(lc, flag, data) end, + forceFontPackage = function(id) + local FontPackage = require "engine.FontPackage" + FontPackage:forceId(id) + end, }, {__index=getfenv(2)}) local f, err = util.loadfilemods(file, env) if not f and err then error(err) end @@ -151,7 +155,6 @@ function _M.setFlag(lc, flag, data) end end - function _M:test() self:loadLocale("/data/locales/fr_FR.lua") self:setLocale("fr_FR") diff --git a/game/engines/default/engine/Module.lua b/game/engines/default/engine/Module.lua index 2067360b6a..0e3cbf2af9 100644 --- a/game/engines/default/engine/Module.lua +++ b/game/engines/default/engine/Module.lua @@ -945,9 +945,8 @@ function _M:instanciate(mod, name, new_game, no_reboot, extra_module_info) I18N:loadLocale("/data/i18n/"..locale..".lua") end - -- I18N:loadLocale("/data/locales/zh_hans.lua") - -- I18N:setLocale("zh_hans") - -- config.settings.tome.fonts = {type="chinese", size="big"} + I18N:loadLocale("/data/locales/zh_hans.lua") + I18N:setLocale("zh_hans") -- Load font packages FontPackage:loadDefinition("/data/font/packages/default.lua") diff --git a/game/engines/default/engine/init.lua b/game/engines/default/engine/init.lua index d330e0cb4c..f2399cef30 100644 --- a/game/engines/default/engine/init.lua +++ b/game/engines/default/engine/init.lua @@ -127,7 +127,6 @@ end -- I18N:loadLocale("/data/locales/zh_hans.lua") -- I18N:setLocale("zh_hans") --- config.settings.tome.fonts = {type="chinese", size="big"} -- Default resolution as big as possible -- GitLab