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

戦国IXA ツールスレPart49

1名無しさん:2024/02/13(火) 19:30:54 ID:guo7Kikc
■前スレ
戦国IXA ツールスレPart48
https://jbbs.shitaraba.net/bbs/read.cgi/netgame/15829/1674020414/l50
荒らしは管理人が即出禁にするので注意

77名無しさん:2024/03/16(土) 21:55:41 ID:gP.Mv2OE
①定数(+マーク省略)
CONSTANT_VALUE = [2, 10, 20, 30, 100, 128, 200, 250, 500, 1000, 2000],

//道場スキル追加(常設のみ)ここから
DOJO_SKILL = {
Da0389: '槍隊堅守',
Aa0599: '槍隊襲撃',
Aa0559: '槍隊進撃',
Da0009: '槍隊備え',
Da0409: '騎馬隊堅守',
Aa0619: '騎馬隊襲撃',
Aa0579: '騎馬隊進撃',
Da0029: '騎馬隊備え',
Da0399: '弓隊堅守',
Aa0609: '弓隊襲撃',
Aa0569: '弓隊進撃',
Da0019: '弓隊備え',
};
//道場スキル追加(常設のみ)ここまで

var SUB_FILTER_MENU = (function() {
var org = (function() {

②共通function(+マークの行のみ追加)
// カード Window
function get_card_data(target) {
(===中略===)
// 出品中フラグ
var exhibit = $('#btn_gounit_' +card_id).length;
var $div = target.find('div.parameta_area_back div.ig_skill_box'),
+ skill_index = [],
name_list = [],
lv_list = [],
+ rank_list = [],
str;
for (var i = 0, len = $div.length; i < len; i++) {
str = $div.eq(i).find('span.ig_skill_name').text().trim();
if (!str) {
continue;
}
+ skill_index.push(i);
name_list.push(str.split('LV')[0].replace(' ', ' '));
lv_list.push(parseInt(str.split('LV')[1]));
+ rank_list.push(($div.eq(i).find('span.ig_skill_name.skill_rare').attr('class') || 'ig_skill_name skill_rare dummy').split(' ')[2]);
}
(===中略===)
return {
card_id: card_id,
card_no: card_no,
grp: category,
card_name: card_name,
rare: rare,
cost: card_cost,
rank: rank,
level: level,
hp: hp,
hp_max: hp_max,
t1: yari,
t2: kiba,
t3: yumi,
t4: heiki,
att: attack,
def: defense,
int: int,
num: command_num,
max: command_max,
type_str: command_type_str,
type: command_type,
+ sidx: skill_index,
sname: name_list,
slv: lv_list,
+ srank: rank_list,
sEffect: o,
card_img: card_img,
exhibit: exhibit
};

78名無しさん:2024/03/16(土) 21:57:24 ID:gP.Mv2OE
③右クリックメニューの部分(+マーク省略)
function createCardTooltip(e, target, $tooltip, data) {
(===中略===)
if (!data.sname[i]) {
toolMenu += '<li id="skill_additional_synthetic_' + sort + '">【新規】未設定</li>';
} else {
toolMenu += '<li id="skill_additional_synthetic_' + sort + '">【入替】' + data.sname[i] + 'LV' + data.slv[i] + '</li>';
}
}
toolMenu += '</ul></li>';
}

//道場スキル追加(常設のみ)ここから
if (data.rare.indexOf('warabe') == -1 && data.rare.indexOf('ketsu') == -1 && data.rare.indexOf('miyabi') == -1 && data.rare.indexOf('bake') == -1) {
for (var i = 1; i < 3; i++) {
var skillName = data.sname[i], cnt = 0, flg = 9;
if (data.sidx[i] == 3) {
skillName = null;
}
if (data.sname[1]) {
flg = i + 1;
}
toolMenu += '<li class="sub_root">【道場】' + (skillName || '新規追加') + '<span class="tree">►</span>' +
'<ul class="sub_list">';
for (var key in DOJO_SKILL) {
if (data.sname.includes(DOJO_SKILL[key])) {
++cnt;
continue;
}
toolMenu += '<li id="skill_additional_dojo_' + key + '_' + flg + '">' + DOJO_SKILL[key] + '</li>';
if (cnt != (Object.keys(DOJO_SKILL).length - 1)) {
toolMenu += '<hr class="separator" />';
}
++cnt;
}
toolMenu += '</ul>';
if (!data.sname[1]) {
break;
}
}
toolMenu += '</li><hr class="separator" />';
}
//道場スキル追加(常設のみ)ここまで

if (data.level == 20) {
toolMenu += '<li id="rank_up_synthesis">ランクアップ合成</li>';
}
(===中略===)
// 追加
$('li[id^="skill_additional_synthetic"').on('click', function() {
send_data = PostData.union(data.card_id, '2');
send_data.target_sort = $(this).attr('id').match(/\d+/g)[0];
return $.form({
type: 'post',
url: '/union/learn.php',
data: send_data
});
});

//道場スキル追加(常設のみ)ここから
$('li[id^="skill_additional_dojo"').on('click', function() {
var learn_skill_id = $(this).attr('id').split('_')[3],
target_sort = $(this).attr('id').split('_')[4],
chajin_skill = new RegExp(/一期一会|天の福音|茶人の教え/),
confirm_rank = new RegExp(/x|s+|a|b/),
idx = parseInt(target_sort) - 1;
if (target_sort != '9') {
if (chajin_skill.test(data.sname[idx]) || confirm_rank.test(data.srank[idx])) {
if (!confirm(data.sname[idx] + 'LV' + data.slv[idx] + 'を' + DOJO_SKILL[learn_skill_id] + 'LV10に入れ替えますか?')) {
return false;
}
}
}
else {
target_sort = '';
}

(このまま続く)

79名無しさん:2024/03/16(土) 21:59:29 ID:gP.Mv2OE
(続き)
nowLoading();
Info.title('スキル道場 習得編 - IxaMoko');
var target_skill = !data.slv[idx] ? 'スキル空' : data.sname[idx] + 'LV' + data.slv[idx];
Info.log(data.card_name + ' の ' + target_skill + ' に ' + DOJO_SKILL[learn_skill_id] + 'LV10 をスキル追加合成をします');
sleep(1).then(function() {
Info.log('道場画面に遷移しています...');
$.ajax({
type: 'post',
url: '/union/dojo_learn.php',
data: {union_type: 10},
beforeSend: xrwStatusText,
}).then(function(html) {
var target_link = $(html).find('a[data-skill_id="' + learn_skill_id + '"]');
if (!target_link.length) {
Info.ng('道場画面に遷移できませんでした[不明なエラー]');
Info.title('異常終了');
sleep(1).then(() => location.reload(false));
return false;
}
if (target_link.attr('data-today_remain_count') == '0') {
Info.ng($(html).find('div.union_dojo_learn_count p').text() + ' です');
Info.title('異常終了');
sleep(1).then(() => location.reload(false));
return false;
}
Info.log('対象カードを選択しています...');
$.ajax({
type: 'post',
url: '/union/dojo_learn_select_card.php',
data: {
lineup_id: 4,
learn_skill_id,
},
beforeSend: xrwStatusText,
}).then(function(html) {
if (($(html).find('td.skill_name.skill_rare.f').text() || '').trim().split('LV')[0] != DOJO_SKILL[learn_skill_id]) {
Info.ng('対象カードを選択できませんでした[不明なエラー]');
Info.title('異常終了');
sleep(1).then(() => location.reload(false));
return false;
}
Info.log('習得確認画面に遷移しています...');
var obj_1 = PostData.learn(html),
obj_2 = {
base_cid: data.card_id,
target_sort,
union_type_dojo_learn_flg: 1,
lineup_id: 4,
learn_skill_id,
};
Object.assign(obj_1, obj_2);
(このまま続く)

80名無しさん:2024/03/16(土) 22:00:48 ID:gP.Mv2OE
(続き)
$.ajax({
type: 'post',
url: '/union/dojo_learn_confirm.php',
data: obj_1,
beforeSend: xrwStatusText,
}).then(function(html) {
if (!$(html).find('img[alt="習得実行"]').attr('alt')) {
Info.ng('習得確認画面に遷移できませんでした[不明なエラー]');
Info.title('異常終了');
sleep(1).then(() => location.reload(false));
return false;
}
var user_point = parseInt($(html).find('span.money_b').text().trim().replace(/,|万/g, '')),
user_coin = parseInt($(html).find('span.money_c').text().trim().replace(/,|万/g, '')),
point = $(html).find('input[name="RadioGroup1"]:checked').attr('data-point'),
probability_type = $(html).find('input[name="RadioGroup1"]:checked').val();
if (user_point < point) {
Info.ng('銅銭がたりません');
Info.title('異常終了');
sleep(1).then(() => location.reload(false));
return false;
}
$.ajax({
type: 'post',
url: '/union/dojo_learn_execute.php',
data: {
lineup_id: 4,
learn_skill_id,
base_cid: data.card_id,
target_sort,
probability_type,
point,
user_point,
user_coin,
item_confirm_text: '',
},
beforeSend: xrwStatusText,
}).then(function(html) {
var result = $(html).find('img[alt^="習得"]').attr('alt');
if (result) {
Info.log(result + '!');
Info.log($(html).find('p.new_union_result_para').text().replace(/\n|\s|。/g, ''));
Info.title('終了');
}
else {
Info.ng('スキルを習得できませんでした[不明なエラー]');
Info.title('異常終了');
}
sleep(1).then(() => location.reload(false));
});
});
});
});
});
});
//道場スキル追加(常設のみ)ここまで

// 削除
$('#delete_synthesis_skill').on('click', function() {

81名無しさん:2024/03/16(土) 22:04:14 ID:gP.Mv2OE
道場スキル右クリック追加は以上です
バグあったら教えてください

82名無しさん:2024/03/16(土) 22:10:30 ID:gP.Mv2OE
あ、いつも投稿してから気付いてすみません
>>79は一か所こう直してください
(誤)
Info.ng($(html).find('div.union_dojo_learn_count p').text() + ' です');


(正)
Info.ng($(html).find('div.union_dojo_learn_count p:eq(0)').text() + ' です');


新着レスの表示


名前: E-mail(省略可)

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

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

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

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