saber 酱的抱枕

Fly me to the moon

04/21
2017
游戏

fgotool辅助脚本:检测各种素材消耗AP最少的前三个地点

我一直使用fgotool查询Fate/Grand Order素材的掉落率,这里的数据很准确,不过每次找AP消耗最少的地图有点费劲,所以我写了个脚本来解决这个问题。

打开你要查询的素材,比如煤灰:
fgotool辅助脚本:检测各种素材消耗AP最少的前三个地点

然后复制js代码(在文章底部),在浏览器的控制台里执行,就OK了。

执行完代码,会弹出来一个对话框:
fgotool辅助脚本:检测各种素材消耗AP最少的前三个地点

点掉这个对话框,还会出来另一个对话框,你可以ctrl+c复制结果文字:
fgotool辅助脚本:检测各种素材消耗AP最少的前三个地点

可以粘贴到别的地方:
fgotool辅助脚本:检测各种素材消耗AP最少的前三个地点

over~

代码:

var need = 3, //需要几个排行
	ap = [],
	mapName = [],
	minap,
	result = "",
	allMap = $(".table-striped tbody").eq(0).children("tr");
[].forEach.call(allMap, function(now) {
	if ($(now).hasClass("intrustable") == false) { //如果不是样本数过少的,则记录
		var apString=$(now).children("td").eq(5).html();	//表格最后一条是说明文字,去掉那一条
		if (!!apString) {
			ap.push(parseFloat(apString.replace(",","").replace(" AP","")));
			mapName.push($(now).children("td").eq(0).html() + " " + $(now).children("td").eq(1).children("a").html());
		}
	}
});
for (var j = 0; j < need; j++) {
	minap = Math.min.apply(null, ap); //取出最小值
	for (var i = 0; i < ap.length; i++) {
		if (ap[i] === minap) {
			result += "第" + (j + 1) + "名:" + mapName[i] + ",平均所需AP为" + minap + "\r\n";
			ap.splice(i, 1); //删除这一项
			mapName.splice(i, 1); //删除这一项
			break;
		}
	}
}
alert("该素材平均所需AP最少排行榜是:" + "\r\n" + result);
prompt("你可以复制这个结果", result);

其实一开始我只做了ap最少的一个,但是后来发现有时候AP最少的国服还没出,所以做了前三个。具体数量也可以在代码里改。
另外这个脚本会过滤掉样本数过少的数据。

fgotool辅助脚本:检测各种素材消耗AP最少的前三个地点