{"00-农-表格引擎-by青锋":{"20    -------代码使用说明-----------":{"Note":"本代码是一个简单的底层框架，为表格输出引擎，可以不依赖代码，使用现有的API即可将大部分农场数据快速生成表格，支持模糊查询、自定义排序公式、自定义计算公式、自定义显示列数、自定义每列的宽度、专业模式和傻瓜模式。只需要改变参数和显示的字段，即可以自动生成表格，不需要js编程能力。测试中，可以实现对守卫，装备，果实，种子，活动等内容的快速输出。","Delay":300,"Task":1},"20-01 获取游戏配置数据":{"Url":"appimg.qq.com/happyfarm/unity/Assets/Config/WebGL/UnityCommonConfig_3d690d2629d5656e00a82f2349934046.json","Msg":"ecode","MsgOut":"ecode","Time":"21:30:00,22:30:00","End":"登;{20-02}","Values":"ActivityList","Delay":300,"Task":1},"20-02 查看最新活动":{"Url":"{!nc}cgi_farm_opt?","Post":"{ncs}&mod=farmlandstatus&act=water&place=0&&ownerId&qf={CC:qf_show({#20-01:ActivityList})}","Msg":"farmlandIndex","MsgOut":"farmlandIndex","End":"登","JsCode":"var row=\"--------------------------------------------------------------------------------------------------------------\";\r\nvar row_length=row.length;\r\nvar kong=\"                              \";\r\nvar k_length=kong.length;\r\nvar col=\"|\";\r\nvar default_place=10;\r\nfunction qf_tlength(str){\r\n\tvar len=0;\r\n\tvar s_length=str.length;\r\n\tfor(var i=0;i<s_length;i++){\r\n\t\tif(str.charCodeAt(i)>127||str.charCodeAt(i)==94){\r\n\t\t\tlen+=2;\r\n\t\t}else{\r\n\t\t\tlen++;\r\n\t\t}\r\n\t}\r\n\treturn len;\r\n}\r\nfunction tocol(str,p,ie,hascn){\r\n\tvar str=String(str);\r\n\tvar s_length=hascn?qf_tlength(str):str.length;\r\n\tif(s_length+2<p){\r\n\t\tstr=col+str+kong.slice(0,p-s_length-2);\r\n\t\tif(ie==true){\r\n\t\t\tstr+=col;\r\n\t\t}\r\n\t}else{\r\n\t\tstr=col+str.slice(0,p);\r\n\t}\r\n\treturn str;\r\n}\r\nfunction qf_olength(o){\r\n\tvar num=0;\r\n\tvar i;\r\n\tfor(var x in o){\r\n\t\tnum++;\r\n\t}\r\n\treturn num;\t\r\n}\r\nfunction format(p,i){\r\n\tif(qf_olength(p)==0){\r\n\t\treturn default_place;\r\n\t}else{\r\n\t\treturn p[i];\r\n\t}\r\n}\r\nfunction qf_has_json_mohu(a,f1,v1,mode){\r\n\tvar i;\r\n\tvar a_length=a.length;\r\n\tvar ret=[];\r\n\tfor(i=0;i<a_length;i++){\r\n\t\tif(mode==true){\r\n\t\t\tif(a[i][f1].search(v1)!=-1){\r\n\t\t\t\tret.push(a[i]);\r\n\t\t\t}\r\n\t\t}else{\r\n\t\t\tif(a[i][f1]==v1){\r\n\t\t\t\tret.push(a[i]);\r\n\t\t\t}\r\n\t\t}\r\n\t}\r\n\tif(ret.length==0){\r\n\t\treturn false;\r\n\t}\r\n\treturn ret;\r\n}\r\nfunction ncs(t){\r\n\tvar dd=new Date(t*1000);\r\n\tvar y=dd.getFullYear();\r\n    var m=dd.getMonth()+1;\r\n    var d=dd.getDate();\r\n    var h=dd.getHours();\r\n    var i=dd.getMinutes();\r\n    var s=dd.getSeconds();\r\n    return y+\"-\"+m+\"-\"+d+\" \"+h+\":\"+i+\":\"+s;\r\n}\r\nfunction qf_table(data){\r\n  var x,i,j;\r\n  var data_1=data[0];\r\n  var table_info=\"\\r 青锋建站 QQ943703539 网址:http://www.sjzphp.com\";\r\n  var field=data[\"field\"];\r\n  var order=data[\"order\"];\r\n  var limit=data[\"limit\"];\r\n  var formula=data[\"formula\"];\r\n  var search=data[\"search\"];\r\n  var place=data[\"place\"];\r\n  \r\n  var table_head=[\"order\"].concat(field);\r\n  for(x in formula){\r\n\ttable_head.push(x);\r\n  }\r\n  \r\n  if(search[\"mode\"]==\"value\"){\r\n\t  var db=qf_has_json_mohu(data[\"db\"],search.key,search.value,false);\r\n  }else if(search[\"mode\"]==\"mohu\"){\r\n\t  var db=qf_has_json_mohu(data[\"db\"],search.key,search.value,true);\r\n  }else{\r\n\t var db=data[\"db\"];\r\n  }\r\n\r\n  var table_content=[];\r\n  var db_length=db.length;\r\n  eval(order);\r\n  for(i=0;i<db_length;i++){\r\n\tdb[i][\"order\"]=i;\r\n\tfor(x in formula){\r\n\t\tvar add_x=formula[x].replace(/{[a-z0-9]+}/ig,function(x){return db[i][x.replace(/[{}]/g,\"\")]});\r\n\t\tdb[i][x]=eval(add_x);\r\n\t}\r\n  }\r\n\r\n  var th_length=table_head.length;\r\n  for(i=0;i<db_length;i++){\r\n\t  table_content[i]=[];\r\n\t  table_content[i][0]=\"\\r \"+row+\"\\r \"+tocol(db[i][table_head[0]],8,false,false);\r\n\t  for(j=1;j<th_length-1;j++){\r\n\t\t  table_content[i][j]=tocol(db[i][table_head[j]],format(place,table_head[j]),false,true);\r\n\t  }\r\n\t  table_content[i][j]=tocol(db[i][table_head[j]],format(place,table_head[j]),true,false);\r\n  }\r\n  \r\n  table_head[0]=\"\\r \"+row+\"\\r \"+tocol(table_head[0],8,false,false);\r\n  for(i=1;i<th_length-1;i++){\r\n\t  table_head[i]=tocol(table_head[i],format(place,table_head[i]),false,false);\r\n  }\r\n  table_head[th_length-1]=tocol(table_head[th_length-1],12,true,false);\r\n  var table=[table_head].concat(table_content);\r\n  var tb_length=table.length;\r\n  var new_table=[];\r\n  for(i=0;i<tb_length;i++){\r\n\tnew_table.push(table[i].join(\" \"));\r\n  }\r\n  return table_info+new_table.join(\"\");\r\n}\r\n\r\nfunction qf_show(data){\r\n\tvar param={\r\n\t\t\"db\":data,\r\n\t\t\"field\":[\"equipIndex\",\"equipId\",\"equipLevel\",\"equipType\",\"name\",\"quality\"],\r\n\t\t\"place\":{\"equipIndex\":12,\"equipId\":12,\"equipLevel\":12,\"equipType\":12,\"name\":12,\"quality\":42},\r\n\t\t\"order\":\"db.sort(function(a,b){return (4*b.attack+4*b.defend+b.physical)-(4*a.attack+4*a.defend+a.physical)})\",\r\n\t\t\"limit\":10,\r\n\t\t\"formula\":{\"power\":\"4*{attack}+4*{defend}+{physical}\"},\r\n\t\t\"search\":{\"mode\":\"mohu\",\"key\":\"name\",\"value\":\"精良\"},\r\n\t\t\"filter\":{}\r\n\t};\r\n\tvar simple={\r\n\t\t\"db\":data,\r\n\t\t\"field\":[\"name\",\"start_time\",\"time\",\"expire_time\"],\r\n\t\t\"place\":{\"order\":8,\"name\":16,\"start_time\":20,\"time\":35,\"expire_time\":20},\r\n\t\t\"order\":\"\",\r\n\t\t\"limit\":10,\r\n\t\t\"formula\":{},\r\n\t\t\"search\":{},\r\n\t\t\"filter\":{}\r\n\t};\r\n\treturn qf_table(simple);\r\n}","Delay":300,"Task":1}}}