187 lines
7.5 KiB
Lua
187 lines
7.5 KiB
Lua
--文件是自动生成,请勿手动修改.来自数据文件:world_question
|
||
local L_CompressMaxColumn = 2
|
||
local L_CompressData = {
|
||
812770053033025,387624500,
|
||
--1,你觉得锻炼身体最有效的运动是?,A 跑步,B 被狗追,C 谈恋爱,D 吃霸王餐,,
|
||
813113660902786,387788345,
|
||
--2,当您心情不舒畅的时候,你觉得那种方法最容易调整心态,A 喝酒,B 睡觉,C 买买买,D 蹦极,,
|
||
813457268772547,387952190,
|
||
--3,和别人争执打起架来,你认为下面哪个道具最有用?,A 防弹头盔,B 砖头,C 滑板鞋,D 鲱鱼罐头,,
|
||
813800876642308,388116035,
|
||
--4,治疗失眠最有效的方法是?,A 吃安眠药,B 放下手机,C 催眠术,D 打晕自己,,
|
||
814144484512069,388279880,
|
||
--5,安慰一个失恋的人最有效果的方式是?,A 旅游,B 打游戏,C 喝酒,D 买买买,,
|
||
814488092381830,388443725,
|
||
--6,哪种笑声听起来不正经?,A he he he,B hei hei hei,C hia hia hia,D hou hou hou,,
|
||
814831700251591,388607570,
|
||
--7,牛顿说,"力的作用是相互的",根据这个定理,我们可以得出什么结论?,A 扁人跟被扁是一样的,B 被车撞了要给对方赔钱,C "力的作用"属于一个叫"相互"的人,D 凭什么牛顿说的我就要信?,,
|
||
815175308121352,388771415,
|
||
--8,"道可道,非常道。"的意思是?,A 你知道我不知道,B 可能是广告词,C 可以说又不好说,D 我才不管你道不道呢,,
|
||
815518915991113,388935260,
|
||
--9,红灯停止,绿灯前进,红绿灯一起亮代表呢?,A 边走边停,B 灯出问题了,C 这是比较无厘头的灯,D 你眼睛花了,,
|
||
815862523860874,389099105,
|
||
--10,迅速减重最有效的方法是?,A 吃泻药,B 不吃,C 超负荷运动,D 截肢,,
|
||
816206131730635,389262950,
|
||
--11,下面最厉害的武功是?,A 夺命剪刀脚,B 面目全非拳,C 还我漂漂拳,D 王八拳,,
|
||
816549739600396,389426795,
|
||
--12,生活中最悲惨的事情莫过于?,A 缺灵玉了,B 缺钱,C 缺爱,D 缺德,,
|
||
816893347470157,389590640,
|
||
--13,如果有段时间不停的有人夸你帅,你会怎么想?,A 究竟是谁走漏了风声,B 我哪里不帅了,C 这是事实,D 我哪里帅了,,
|
||
817236955339918,389754485,
|
||
--14,生了病,打针跟吃药,哪一种比较痛苦?,A 打针,B 吃药,C 细菌,D 我,,
|
||
817580563209679,389918330,
|
||
--15,你觉得赚钱最有效的途径是?,A 做梦,B 努力工作,C 中大奖,D 等拆,,
|
||
817924171079440,390049337,
|
||
--16,开心的时候,你想做什么?,A 大吃一顿,B 仰天大笑,C 买买买,D 喝喝喝,,
|
||
818199057375249,390213251,
|
||
--17,生气的时候,怎么调整最有用?,A 仰天长啸,B 念经,C 跳进水里,D 暴打枕头,,
|
||
818542665245010,390377096,
|
||
--18,你觉得最有效的逃跑方式,A 脚底抹油,B 插翅而飞,C 化敌为友,D 干掉追兵,,
|
||
818886273114771,390540941,
|
||
--19,哪种哭声听起来最可怜?,A 嘤嘤嘤,B 呜呜呜,C 哇啦啦,D 哼哼哼,,
|
||
819229880984532,390704786,
|
||
--20,如果有人说你丑,你会怎么想?,A 你才丑,B 这是妒忌,C 丑关你屁事,D 我的字典里没有“丑”,,
|
||
819573488854293,390868631,
|
||
--21,如果穿越到仙侠世界,你想穿越到哪里?,A 这里,B 诛仙,C 凡人修仙传,D 蜀山传,,
|
||
819917096724054,391032476,
|
||
--22,如果穿越到武侠世界,你想穿越到哪里?,A 七剑下天山,B 天龙八部,C 绝代双骄,D 武林外传,,
|
||
820260704593815,391196321,
|
||
--23,如果穿越到科幻世界,你想穿越到哪里?,A 三体,B 沙丘,C 攻壳机动队,D 黑客帝国,,
|
||
820604312463576,391360166,
|
||
--24,如果让你选择穿越方式,你能接受哪种?,A 雷劈,B 车祸,C 闷棍,D 时光机,,
|
||
820947920333337,391524011,
|
||
--25,如果让你选择一个代价,获取绝世神功,你能接受哪种?,A 眼瞎,B 变老,C 坐轮椅,D 欲练此功,必先XX,,
|
||
821291528203098,391687856,
|
||
--26,填空:八仙过海,______,A 各显神通,B 自身难保,C 海枯石烂,D 小马过河,,
|
||
821635136072859,391851701,
|
||
--27,填空:蛤蟆玩青蛙,______,A 有缘千里来相会,B 长得丑玩的花,C 真是顶呱呱,D 对上眼了,,
|
||
821978743942620,392015546,
|
||
--28,填空:粪坑里的石头,______,A 又臭又硬,B 装死,C 打着灯笼都难找,D 不能翻身,,
|
||
822322351812381,392179391,
|
||
--29,填空:高射炮打蚊子,______,A 就是任性,B 大材小用,C 怎么输,D 小题大做,,
|
||
}
|
||
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,[15]=15,
|
||
[16]=16,[17]=17,[18]=18,[19]=19,[20]=20,[21]=21,[22]=22,[23]=23,[24]=24,[25]=25,[26]=26,[27]=27,[28]=28,[29]=29,}
|
||
local L_NamesByNum = {
|
||
Id = 1,
|
||
}
|
||
local L_NamesByString = {
|
||
Describe = 2,
|
||
Answer1 = 3,
|
||
Answer2 = 4,
|
||
Answer3 = 5,
|
||
Answer4 = 6,
|
||
}
|
||
local L_ColNameIndexs = {
|
||
Id = 0,
|
||
Describe = 1,
|
||
Answer1 = 2,
|
||
Answer2 = 3,
|
||
Answer3 = 4,
|
||
Answer4 = 5,
|
||
}
|
||
--local L_ColumnUseBitCount = {6,15,15,15,15,15,}
|
||
--local L_ColumnList = {1,1,1,1,2,2,}
|
||
--local L_ShiftDataList = {0,6,21,36,0,15,}
|
||
--local L_AndDataList = {31,16383,16383,16383,16383,16383,}
|
||
local L_ColumnShiftAndList = {1,0,31,1,6,16383,1,21,16383,1,36,16383,2,0,16383,2,15,16383,}
|
||
local L_ColNum = 6;
|
||
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 = 29
|
||
}
|
||
|
||
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
|