Files
Main/Assets/GameAssets/Resources/Lua/Config/Data/DataTodayFunction.lua
2025-01-25 04:38:09 +08:00

162 lines
7.0 KiB
Lua
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

--文件是自动生成,请勿手动修改.来自数据文件:today_function
local L_CompressMaxColumn = 3
local L_CompressData = {
29482529715417313,19358339453,57000,
--1,仙盟战,玩法时间21:00-21:30,相关任务时间:[4ADDFF]开服第3天[-]#n#n开启本服第一次仙盟战胜利后可获得粉装的合成材料。,19007_9;19008_9,3_3,,57000,,,
29484178995447010,19358339456,1340000,
--2,剑灵阁,玩法时间:全天,相关任务时间:[4ADDFF]开服第3天[-]#n#n挑战剑灵阁可获得灵魄同时层数越高在剑灵阁挂机的收益越多。,6307241_9;6307242_9,3_3,,1340000,,,
29485278494483971,210025992606082,1052000,
--3,巅峰竞技,玩法时间21:00-21:30,相关任务时间:[4ADDFF]每周一、二、四、五[-]#n#n实战1V1激情无限能获得极品宠物装备。,7000033_9;7000034_9,4_30,1_2_4_5,1052000,,,
29486378019461444,19358470532,1212000,
--4,套装,玩法时间:全天,相关任务时间:[4ADDFF]开服第4天[-]#n#n首领中的套装首领可以掉落套装材料激活套装可获得大量战力,24013_9;1002_9,4_4,,1212000,,,
8928809143522949,19357815175,1223000,
--5,福地论剑,玩法时间21:30-21:45,相关任务时间:[4ADDFF]开服第2天[-]#n#n本服福地剑主之争。独有绝版称号让你荣耀加身,70085_9;82220_0;82223_1;82220_2;82223_3;,2_2,,1223000,,,
29489126797778022,23804039561,1271000,
--6,神兽,玩法时间:全天,相关任务时间:[4ADDFF]开服第5到第10天[-]#n#n跨服玩法击杀BOSS可获得神兽装备可获得超高战力加成。,7000049_9;7000050_9,5_10,,1271000,,,
8928102898246631,19357815180,1222000,
--7,仙盟福地,玩法时间开服第2天,相关任务时间:[4ADDFF]开服第2天[-]#n#n击杀BOSS可获得圣装凑齐圣装套装可获得海量战力,4007721_9;4107721_9,2_2,,1222000,,,
8927159848153512,21353124239,1273000,
--8,诸界远征(2服,玩法时间:全天,相关任务时间:[4ADDFF]开服第3天到第7天[-]#n#n跨2服的诸界远征开启和其他服务器玩家战斗获得更高等阶圣装。,4010821_9;4110821_9,3_7,,1273000,,,
29493524831709289,210975825645969,1272000,
--9,八极阵图,玩法时间21:00-21:30,相关任务时间:[4ADDFF]每周三、周六[-]#n#n神秘的八卦阵法独特的城战玩法集全服的力量和智慧争夺圣城,83088_9;83087_9,11_30,3_6,1272000,,,
29495174141183274,211869178843540,1273000,
--10,古魔封印,玩法时间21:30-21:45,相关任务时间:[4ADDFF]每周一、周三、周五[-]#n#n诸界远征的全新玩法全服狂欢战古魔助战魔魂战力多,1338_9;1337_9,11_30,1_3_5,1273000,,,
8925510580712107,19307745687,1273000,
--11,诸界远征(4服,玩法时间:全天,相关任务时间:[4ADDFF]开服第8到第14天[-]#n#n诸界远征进入4服阶段更广阔的地图更强大的敌人更高阶的装备。,4012821_9;4012821_9,8_14,,1273000,,,
6796306313523980,24938205594,1273000,
--12,诸界远征(8服,玩法时间:全天,相关任务时间:[4ADDFF]开服第15-20天[-]#n#n诸界远征进入8服阶段各服有自己的安全城市更易获得高阶圣装。,4200033_9;4200066_9,15_20,,1273000,,,
29500121914043725,24213508509,1274000,
--13,荒古神坛,玩法时间:全天,相关任务时间:[4ADDFF]开服第25-30天[-]#n#n击杀其中的怪物可获得坐骑脉轮激活坐骑的神秘力量获得超高战力,8000407_9;8000631_9,25_30,,1274000,,,
29501771168903406,211366022402429,57000,
--14,仙盟战,玩法时间21:00-21:30,相关任务时间:[4ADDFF]每周日[-]#n#n定时开启本服仙盟战连胜更能获得海量奖励和荣誉为了仙盟而战,19007_9;19008_9,4_30,7,57000,,,
}
local L_MainKeyDic = {
[1]=1,[2]=2,[3]=3,[4]=4,[5]=5,[6]=6,[7]=7,[8]=8,[9]=9,[10]=10,[11]=11,[12]=12,[13]=13,[14]=14,}
local L_NamesByNum = {
Id = 1,
FunctionID = 8,
Parm = 9,
}
local L_NamesByString = {
Name = 2,
TimeDes = 3,
Des = 4,
RewardItem = 5,
OpenDay = 6,
WeekDay = 7,
}
local L_ColNameIndexs = {
Id = 0,
Name = 1,
TimeDes = 2,
Des = 3,
RewardItem = 4,
OpenDay = 5,
WeekDay = 6,
FunctionID = 7,
Parm = 8,
}
--local L_ColumnUseBitCount = {5,17,17,17,17,17,15,22,2,}
--local L_ColumnList = {1,1,1,1,2,2,2,3,3,}
--local L_ShiftDataList = {0,5,22,39,0,17,34,0,22,}
--local L_AndDataList = {15,65535,65535,65535,65535,65535,16383,2097151,1,}
local L_ColumnShiftAndList = {1,0,15,1,5,65535,1,22,65535,1,39,65535,2,0,65535,2,17,65535,2,34,16383,3,0,2097151,3,22,1,}
local L_ColNum = 9;
local L_UseDataK = setmetatable({ },{ __mode = 'k'});
local L_UseDataV = setmetatable({ },{ __mode = 'v'});
local L_UseDataRow = setmetatable({ },{ __mode = 'v'});
local L_IsCache = false;
local mt = {}
local function GetData(row, column)
local startIndex = (column - 1) * 3
local _compressData = L_CompressData[(row - 1)*L_CompressMaxColumn+L_ColumnShiftAndList[startIndex + 1]]
local _tempData = _compressData >> L_ColumnShiftAndList[startIndex + 2]
local _data = _tempData & L_ColumnShiftAndList[startIndex + 3]
local _andSign = L_ColumnShiftAndList[startIndex + 3] + 1
local _isMinus = (_andSign & _tempData) == _andSign
return _isMinus and -_data or _data;
end
mt.__index = function (t,key)
local _key = L_UseDataK[t];
local _row = L_MainKeyDic[_key];
local _column = L_NamesByNum[key];
if _column ~= nil then
if L_IsCache then
local _data = L_UseDataRow[_row * L_ColNum + _column]
if not _data then
_data = GetData(_row, _column)
L_UseDataRow[_row * L_ColNum + _column] = _data
end
return _data
else
return GetData(_row, _column)
end
end
_column = L_NamesByString[key]
if _column ~= nil then
return StringDefines[GetData(_row, _column)]
end
if string.find(key, '_') then
local _newKey = string.gsub(key, '_', '')
_column = L_NamesByString[_newKey]
if _column ~= nil then
return GetData(_row, _column)
end
end
if key ~= '_OnCopyAfter_' then
return
end
end
local M = {
_CompressData_ = L_CompressData,
_ColumnShiftAndList_ = L_ColumnShiftAndList,
_CompressMaxColumn_ = L_CompressMaxColumn,
_ColumnNameIndexs_ = L_ColNameIndexs,
Count = 14
}
function M:Foreach(func)
for i=1,M.Count do
local _key = GetData(i, 1)
func(_key, M[_key])
end
end
function M:ForeachCanBreak(func)
for i = 1,M.Count do
local _key = GetData(i, 1)
if func(_key, M[_key]) then
break
end
end
end
function M:GetByIndex(index)
return M[GetData(index, 1)];
end
function M:IsContainKey(key)
return not(not L_MainKeyDic[key]);
end
function M:SetIsCache(isCh)
L_IsCache = isCh;
end
setmetatable(M, {__index = function(t, key)
if not L_MainKeyDic[key] then
return;
end
local _t = L_UseDataV[key];
if not _t then
_t = setmetatable({}, mt);
L_UseDataV[key] = _t;
L_UseDataK[_t] = key;
end
return _t
end})
return M