162 lines
7.0 KiB
Lua
162 lines
7.0 KiB
Lua
--文件是自动生成,请勿手动修改.来自数据文件: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
|