形如下边的配置表
language["instrument_txt_open"] = "#level#级\n解锁神兵"
language["camp_race_look_single_race_tip"] = "阵营竞技下周一开启,请主公积极报名参加"
language["FUNC_CAMP_RACE"] = {
{ title = "阵营竞技", list = {
"系统根据每位玩家战力最高的阵容,把报名参赛的玩家分配入不同阵营;",
"经过预赛和决赛两个阶段,决出每个阵营的【霸主】。",} },
{ title = "比赛时间", list = {
"报名时间:每周一、四的4:00-21:00",
"竞技时间:每周一、四的21:00",} },
{ title = "预赛阶段", list = {
"系统将给每位报名的玩家依次匹配20名同阵营的对手进行对战;",
"每次对战的胜利者+10分,失败者-10分,轮空视为胜利;",
"20轮对战后按积分排名,前8名出线进入决赛阶段。",} },
{ title = "决赛阶段", list = {
"出线的前8名玩家将两两匹配,进行三轮淘汰赛决出本阵营的【霸主】;",
"不在对战状态的玩家,都可以选择本阵营的对战者进行支持;",
"如果被支持者成功晋级,支持者可以获得元宝奖励。",} },
{ title = "比赛奖励", list = {
"所有报名玩家都将根据名次获得【破军碎片任选箱】,奖励通过邮件发放;",
"阵营竞技结束后将开启阵营竞技拍卖,报名的玩家越多,拍卖奖励越多;",
"所有报名的玩家都可以获得阵营竞技拍卖的分红。",} }
}
language["camp_bet_win_award"] = "[{\"type\":\"text\",\"msg\":\"获胜可得\",\"color\":\"0xffb80c\",\"fontSize\":20}, \
{\"type\":\"text\",\"msg\":\"#count#\",\"color\":\"0xfff7e8\",\"fontSize\":20},\
{\"type\":\"text\",\"msg\":\"元宝\",\"color\":\"0xffb80c\",\"fontSize\":20}]"
转换脚本
function table2json(t)
local function serialize(tbl)
local tmp = {}
for k, v in pairs(tbl) do
local k_type = type(k)
local v_type = type(v)
local key = (k_type == "string" and "\"" .. k .. "\":")
or (k_type == "number" and "")
local value = (v_type == "table" and serialize(v))
or (v_type == "boolean" and tostring(v))
or (v_type == "string" and "\"" .. v .. "\"")
or (v_type == "number" and v)
tmp[#tmp + 1] = key and value and tostring(key) .. tostring(value) or nil
end
if table.maxn(tbl) == 0 then
return "{" .. table.concat(tmp, ",") .. "}"
else
return "[" .. table.concat(tmp, ",") .. "]"
end
end
assert(type(t) == "table")
return serialize(t)
end
function pairsByKeys(t)
local a = {}
for n in pairs(t) do a[#a + 1] = n end
table.sort(a)
local i = 0
return function ()
i = i + 1
return a[i], t[a[i]]
end
end
print("ready---")
file = io.open("test.ts", "w+")
file:write("export var LangTemplate = {}\n")
-- for key, value in pairs(language) do
for key, value in pairsByKeys (language) do
print("---"..key);
if type(value)=="table" then
file:write("LangTemplate['"..key.."'] = ".."'"..table2json(value).."'".."\n")
else
-- if string.find(value,"\n")>=0 then
--记得在转换好的文件里替换掉_waitReplaceZM_为 "\n"
value = string.gsub(value,"\n","_waitReplaceZM_")
-- end
file:write("LangTemplate['"..key.."'] = ".."'"..value.."'".."\n")
end
end
记得在转换好的文件里替换掉_waitReplaceZM_为 "\n"