84 lines
2.2 KiB
Lua
84 lines
2.2 KiB
Lua
|
|
-- 记录各游戏的桌面背景
|
||
|
|
json = require 'cjson'
|
||
|
|
|
||
|
|
local ZPTableBG = {}
|
||
|
|
|
||
|
|
local M = ZPTableBG
|
||
|
|
bg_config_zipai = {
|
||
|
|
{id = 1, url = "base/main_zipai/bg/bg_1", thumb = "ui://Main_RunBeard/table_bg1"},
|
||
|
|
{id = 2, url = "base/main_zipai/bg/bg_2", thumb = "ui://Main_RunBeard/table_bg2"},
|
||
|
|
{id = 3, url = "base/main_zipai/bg/bg_3", thumb = "ui://Main_RunBeard/table_bg3"},
|
||
|
|
-- {id = 4, url = "base/main_zipai/bg/bg_gold", thumb = "ui://Main_RunBeard/table_bg3"},
|
||
|
|
-- {id = 5, url = "base/main_zipai/bg/bg8", thumb = "ui://Main_RunBeard/table_bg1"},
|
||
|
|
-- {id = 6, url = "base/tablebg/bg/bg1", thumb = "ui://Common/b04"},
|
||
|
|
}
|
||
|
|
|
||
|
|
local function GetBG(data, game_id)
|
||
|
|
local bg_id = 0
|
||
|
|
for i = 1, #data do
|
||
|
|
if data[i].game_id == game_id then
|
||
|
|
bg_id = data[i].bg_id
|
||
|
|
break
|
||
|
|
end
|
||
|
|
end
|
||
|
|
return bg_id
|
||
|
|
end
|
||
|
|
local function SetBG(data, game_id, bg_id)
|
||
|
|
local contain_key = false
|
||
|
|
for i = 1, #data do
|
||
|
|
if data[i].game_id == game_id then
|
||
|
|
contain_key = true
|
||
|
|
if data[i].bg_id ~= bg_id then
|
||
|
|
data[i].bg_id = bg_id
|
||
|
|
break
|
||
|
|
end
|
||
|
|
end
|
||
|
|
end
|
||
|
|
if not contain_key then
|
||
|
|
local _data = {}
|
||
|
|
_data.game_id = game_id
|
||
|
|
_data.bg_id = bg_id
|
||
|
|
table.insert(data, _data)
|
||
|
|
end
|
||
|
|
end
|
||
|
|
|
||
|
|
function ZPTableBG.GetTableBG(game_id)
|
||
|
|
local id = -1
|
||
|
|
local json_data = Utils.LoadLocalFile(DataManager.SelfUser.account_id .. DataManager.SelfUser.invite_code)
|
||
|
|
if json_data ~= nil then
|
||
|
|
local config_data = json.decode(json_data)
|
||
|
|
id = GetBG(config_data, game_id)
|
||
|
|
end
|
||
|
|
return id
|
||
|
|
end
|
||
|
|
|
||
|
|
function ZPTableBG.LoadTableBG(id, game_id, main_view)
|
||
|
|
local bg_id = M.GetTableBG(game_id)
|
||
|
|
local index
|
||
|
|
if bg_id > 0 then
|
||
|
|
index = bg_id
|
||
|
|
else
|
||
|
|
index = id
|
||
|
|
end
|
||
|
|
|
||
|
|
if index>3 then
|
||
|
|
-- body
|
||
|
|
index=1
|
||
|
|
end
|
||
|
|
local url = bg_config_zipai[index].url
|
||
|
|
LoadGameBg(url, main_view)
|
||
|
|
end
|
||
|
|
|
||
|
|
function ZPTableBG.SaveTableBG(game_id, bg_id)
|
||
|
|
local config_data
|
||
|
|
local json_data = Utils.LoadLocalFile(DataManager.SelfUser.account_id .. DataManager.SelfUser.invite_code)
|
||
|
|
if json_data ~= nil then
|
||
|
|
config_data = json.decode(json_data)
|
||
|
|
else
|
||
|
|
config_data = {}
|
||
|
|
end
|
||
|
|
SetBG(config_data, game_id, bg_id)
|
||
|
|
Utils.SaveLocalFile(DataManager.SelfUser.account_id .. DataManager.SelfUser.invite_code, json.encode(config_data))
|
||
|
|
end
|
||
|
|
|
||
|
|
return M
|