168 lines
8.9 KiB
Lua
168 lines
8.9 KiB
Lua
--文件是自动生成,请勿手动修改.来自数据文件:vip
|
||
local L_CompressMaxColumn = 4
|
||
local L_CompressData = {
|
||
2174129307008369601,1061597206308954,2827556869304674,192868,
|
||
--1,30,,专属称号:“打BOSS送VIP”;战力2000+,2_100_1_9;60002_20_1_9;20001_1_1_9;21001_1_1_9;3_1300000_1_9,1_440,1_50,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,1_2_24_36_25,36_2_2;25_1_1;24_25_25;34_10000_10000,,34,36_2;1_0;2_0;25_1;24_25,,,
|
||
2174340414851522050,1061596896620903,2827556870091112,192874,
|
||
--2,240,,专属称号:“初窥天境”;战力3000+,2_200_1_9;16003_5_1_9;60004_8_1_9;20002_1_1_9;21002_1_1_9,1_1010,1_100,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,3_23_1_2_24_36_25_40,36_2_2;25_1_1;24_30_30;23_1_1;34_12500_12500,,34,3_0;24_30;23_1,,,
|
||
2174551522694680899,1061596894654829,2827556870746472,192879,
|
||
--3,650,,专属称号:“吾心玲珑”;战力6000+,2_400_1_9;82394_1_1_9;16001_5_1_9;20002_1_1_9;21002_1_1_9,1_2310,1_200,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,3_23_1_2_24_36_25_40,36_5_5;25_1_1;24_35_35;23_2_2;34_15000_15000,,34,36_5;24_35;23_2,,,
|
||
2174727445897361540,1061597859737970,2827556871532915,192885,
|
||
--4,2500,,专属称号:“蓬莱之宾”;战力8000+,2_500_1_9;4006621_1_1_0;4106621_1_1_1;4006621_1_1_2;4106621_1_1_3;2068_1_1_9;20003_1_1_9;21003_1_1_9,1_5990,1_500,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_14_3_23_1_2_24_36_25_40_17,37_10000_100;38_5000_50;39_10000_100;36_6_6;25_3_3;24_40_40;23_2_2;14_1_1;34_17500_17500;17_1_1,,34,25_3;24_40;23_2;17_1,,,
|
||
2174938553740587269,1061603759026552,2827556872450426,192892,
|
||
--5,5000,,专属称号:“玉壶观世”;战力12000+,2_688_1_9;83085_1_1_9;10003_12_1_9;20003_1_1_9;21003_1_1_9,1_6708,1_688,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_16_20_22_14_3_23_1_2_24_36_25_40_17,37_10000_100;38_5000_50;39_10000_100;36_7_7;25_5_5;24_45_45;23_3_3;14_1_1;16_1_1;20_1_1;22_1_1;34_20000_20000;17_1_1,,34,25_5;24_45;23_3;14_1;16_1;20_1;22_1;17_1,,,
|
||
2175184846224577286,1061598608290175,2827556873236864,192898,
|
||
--6,15000,,专属称号:“名动九州”;战力16000+,2_1000_1_9;3007305_1_1_9;11003_10_1_9;20004_1_1_9;21004_1_1_9,1_9980,1_1000,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_9_16_20_22_14_3_23_1_2_24_36_25_40_17,37_10000_100;38_5000_50;39_10000_100;36_8_8;9_10_10;25_8_8;24_50_50;23_3_3;14_1_1;16_2_2;20_1_1;22_2_2;34_22500_22500;17_1_1,,34,9_10;25_8;24_50;15_1;16_2;17_1;22_2,,,
|
||
2175395954068203015,1061598608814469,2827556874023302,192904,
|
||
--7,30000,,专属称号:“神游四方”;战力20000+,2_1500_1_9;1334_10_1_9;82397_1_1_9;11004_20_1_9;11005_20_1_9,1_13650,1_1500,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_15_9_16_20_22_14_13_3_23_1_2_25_24_36_40_17,37_10000_100;38_5000_50;39_10000_100;36_9_9;9_10_10;25_10_10;24_50_50;23_4_4;13_1_1;14_1_1;15_1_1;16_3_3;20_2_2;22_3_3;34_25000_25000;17_1_1,,34,24_50;23_4;16_3;20_2;22_3;25_10;13_1,,,
|
||
2175607061911988744,1061598609863051,2827556874678662,192909,
|
||
--8,50000,,专属称号:“绝尘无垢”;战力24000+,83094_1_1_9;83091_1_1_9;83092_1_1_9;20006_1_1_9;21006_1_1_9,1_11580,1_2500,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_15_9_16_20_22_14_13_3_23_1_2_25_24_36_40_17,37_10000_100;38_5000_50;39_10000_100;36_10_10;9_20_20;25_12_12;24_50_50;23_4_4;13_1_1;14_3_3;15_1_1;16_4_4;20_2_2;22_4_4;34_27500_27500;17_2_2,,34,9_20;14_3;15_2;16_4;17_2;22_4;25_12,,,
|
||
2175782985116210185,1061603762172304,2827556875465094,192915,
|
||
--9,100000,,专属称号:“日月齐光”;战力28000+,2_1500_1_9;3007501_1_1_9;83098_1_1_9;20006_1_1_9;21006_1_1_9,1_28730,1_3888,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_15_9_16_20_22_14_13_3_23_1_2_25_24_36_40_17,37_10000_100;38_5000_50;39_10000_100;36_11_11;9_20_20;25_15_15;24_50_50;23_5_5;13_1_1;14_3_3;15_2_2;16_5_5;20_3_3;22_4_4;34_30000_30000;17_2_2,,34,23_5;16_5;20_3,,,
|
||
2175994092965755914,1061603762958742,2827556876251526,192921,
|
||
--10,300000,,专属称号:“心神化一”;战力32000+,2_2000_1_9;1335_10_1_9;15012_1_1_9;20007_1_1_9;21007_1_1_9,1_25090,1_4888,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_15_9_16_20_22_14_13_3_23_1_2_25_24_36_40_17,37_10000_100;38_5000_50;39_10000_100;36_12_12;9_20_20;25_15_15;24_50_50;23_5_5;13_1_1;14_3_3;15_2_2;16_6_6;20_3_3;22_4_4;34_32500_32500;17_3_3,,34,15_3;16_6;17_3,,,
|
||
2176205200815301643,1061603763745180,2827556877037958,192927,
|
||
--11,500000,,专属称号:“九州听吾令”;战力54000+,2_2000_1_9;1336_10_1_9;15021_1_1_9;20007_1_1_9;21007_1_1_9,1_25990,1_5888,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_15_9_16_20_22_14_13_3_23_1_2_25_24_36_40_17,37_10000_100;38_5000_50;39_10000_100;36_12_12;9_20_20;25_15_15;24_50_50;23_6_6;13_1_1;14_4_4;15_3_3;16_7_7;20_3_3;22_4_4;34_35000_35000;17_3_3,,34,23_6;14_4;15_4;16_7,,,
|
||
2176416308674447372,1061603764531618,2827556877824390,192933,
|
||
--12,1000000,,专属称号:“十方任凭栏”;战力56000+,2_2000_1_9;1337_10_1_9;15010_1_1_9;20008_1_1_9;21008_1_1_9,1_28110,1_6888,16_50_1_9;2_30_1_9;20001_1_1_9;21001_1_1_9,37_38_39_15_9_16_20_22_14_13_3_23_1_2_25_24_36_40_17,37_10000_100;38_5000_50;39_10000_100;36_12_12;9_20_20;25_15_15;24_50_50;23_6_6;13_1_1;14_5_5;15_4_4;16_8_8;20_3_3;22_6_6;34_37500_37500;17_3_3,,34,15_4;16_7,,,
|
||
}
|
||
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,}
|
||
local L_NamesByNum = {
|
||
VipLevel = 1,
|
||
VipLevelUp = 2,
|
||
TitleReward = 3,
|
||
}
|
||
local L_NamesByString = {
|
||
TitleRewardDesc = 4,
|
||
VipReward = 5,
|
||
VipRewardPriceOriginal = 6,
|
||
VipRewardPriceNow = 7,
|
||
VipRewardPer = 8,
|
||
VipPowerId = 9,
|
||
VipPowerPra = 10,
|
||
ShowNewPower = 11,
|
||
ShowMainPower = 12,
|
||
VipUpPower = 13,
|
||
VIPTitleDesc = 14,
|
||
}
|
||
local L_ColNameIndexs = {
|
||
VipLevel = 0,
|
||
VipLevelUp = 1,
|
||
TitleReward = 2,
|
||
TitleRewardDesc = 3,
|
||
VipReward = 4,
|
||
VipRewardPriceOriginal = 5,
|
||
VipRewardPriceNow = 6,
|
||
VipRewardPer = 7,
|
||
VipPowerId = 8,
|
||
VipPowerPra = 9,
|
||
ShowNewPower = 10,
|
||
ShowMainPower = 11,
|
||
VipUpPower = 12,
|
||
VIPTitleDesc = 13,
|
||
}
|
||
--local L_ColumnUseBitCount = {5,21,2,17,17,17,17,17,17,17,2,17,17,2,}
|
||
--local L_ColumnList = {1,1,1,1,1,2,2,2,3,3,3,3,4,4,}
|
||
--local L_ShiftDataList = {0,5,26,28,45,0,17,34,0,17,34,36,0,17,}
|
||
--local L_AndDataList = {15,1048575,1,65535,65535,65535,65535,65535,65535,65535,1,65535,65535,1,}
|
||
local L_ColumnShiftAndList = {1,0,15,1,5,1048575,1,26,1,1,28,65535,1,45,65535,2,0,65535,2,17,65535,2,34,65535,3,0,65535,3,17,65535,3,34,1,3,36,65535,4,0,65535,4,17,1,}
|
||
local L_ColNum = 14;
|
||
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 = 12
|
||
}
|
||
|
||
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
|