したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | メール | |

戦国IXA ツールスレPart49

272名無しさん:2024/09/18(水) 22:31:10 ID:SAPQMjIY
>>254 に書いた通り、distanceCalculationに追加しました。
攻撃国防御国では動いてますが対面は未確認です。
手元のソースから書き込み用に修正した部分もあるのでミスあったらすみませんがご指摘ください。

distanceCalculation = function (html, code, flag) {
var coord = code.match(/(-?\d+)/g),
$tr = $(html).find("TABLE.common_table1 TR.fs14"),
array = [],
infinity = 9999,
adjust_x,
adjust_y,
dist;
$tr.each(function () {
/* 中略 */
});
/* ここから */
var DIRECTION_SFX = ["-1", "-2", "-3", "-4", "-11", "-12", "-13", "-14"];
DIRECTION_SFX.each(function (sfx) {
let $item = $(".sideBoxInner.basename.category_country_" + sfx);
$item.find("li.nolist").each(function () {
var $base = $(this).find("a, span").not(".sidebox_badge_icon").not('[class^="facility_level_"]');
var title = $base.attr("title").replace(/ \([^)]*\)$/, "");
if (/^.*\((本|影)\)$/.test(title)) {
var id = $(this).attr("data-village_id"),
x = $(this).attr("data-village_x"),
y = $(this).attr("data-village_y"),
c = $(this).attr("data-village_c");
adjust_x = parseInt(x - coord[0]);
adjust_y = parseInt(y - coord[1]);
dist = Math.sqrt(Math.pow(adjust_x, 2) + Math.pow(adjust_y, 2));
dist = Math.round(dist * 100) / 100;
if (infinity > dist && dist > 0) {
data = {};
data.dist = dist;
data.base_name = title.replace(/\((本|影)\)$/, "");
data.land_href = "/village_change.php?village_id=" + id;
data.map_href = "/map.php?x=" + x + "&y=" + y + "&c=" + c;
array.push(data);
}
}
});
});
/* ここまで */
array.sort(function (a, b) {
return a.dist - b.dist;
});
return array.shift();
},


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら

※画像アップローダーはこちら

(画像を表示できるのは「画像リンクのサムネイル表示」がオンの掲示板に限ります)

掲示板管理者へ連絡 無料レンタル掲示板