简易抽卡模拟器:修订间差异
更新日期: 2025-03-21 最新编辑:木丶阿伦
无编辑摘要 |
无编辑摘要 标签:已被回退 |
||
| 第1行: | 第1行: | ||
var roles_3 = [ { name: '马努埃尔'},{ name: '伊布林'}, { name: '哈利'}, { name: '霍尔赫'}, { name: '萨莉亚'}, { name: '佩妮'}, { name: '迪艾格'}, { name: '费丽妮'}, { name: '比利'}, { name: '赫塞'}, { name: '帕尔'}, { name: '特利'}, { name: '弗昂'}, { name: '卡萝尔'}, { name: '科妮'}, { name: '古提'}, { name: '薇薇安'}, { name: '萨妮'}, { name: '伍格'}, { name: '南娜'}, { name: '梅妮'}, { name: '弗利欧'}, { name: '尤妮丝'}, { name: '多利'}]; | |||
var roles_4 = [ { name: '普利基特' },{ name: '洛洛'},{ name: '雪娜'},{ name: '约伦'},{ name: '勒凡'},{ name: '波拉'},{ name: '艾弗伦'},{ name: '肯尼斯'},{ name: '科尔尼利亚'},{ name: '杜兰'},{ name: '纳尔'},{ name: '梅贝儿'},{ name: '伊利斯'},{ name: '法维欧'},{ name: '莉塔'},{ name: '歇尔薇'},{ name: '罗迪恩'},{ name: '玛德蕾妮'},{ name: '诺艾尔'},{ name: '塞德里克'},{ name: '梅诺'},{ name: '巴拉德'},{ name: '贝尔加'},{ name: '阿孜莱特'},{ name: '卡米拉'},{ name: '迈尔斯'},{ name: '贝尔特朗'},{ name: '洁卡莉特'},{ name: '塔希尔'},{ name: '特里休'},{ name: '阿什兰'},{ name: '劳拉'},{ name: '佩雷迪尔'},{ name: '米娜'},{ name: '卢塞塔'},{ name: '拉莫纳'},{ name: '梅蕾特'},{ name: '皮雅'},{ name: '哈因茨'},{ name: '德文'},{ name: '克雷斯'},{ name: '卡尔茨'},{ name: '温格特'}]; | |||
var roles_5 = [ | |||
{ | |||
name: '洁卡莉特Ex' | |||
}, | |||
{ | |||
name: '亚芬' | |||
}, | |||
{ | |||
name: '乌·鲁代' | |||
}, | |||
{ | |||
name: '泰蕾兹' | |||
}, | |||
{ | |||
name: '莱欧尼尔' | |||
}, | |||
{ | |||
name: '海茵特' | |||
}, | |||
{ | |||
{{ | name: '普里姆萝洁' | ||
}, | |||
. | { | ||
name: '赛拉斯' | |||
}, | |||
{ | |||
name: '斯凯亚克罗' | |||
}, | |||
{ | |||
name: '菲欧儿' | |||
}, | |||
{ | |||
name: '米罗德' | |||
}, | |||
{ | |||
name: '薇欧拉' | |||
}, | |||
{ | |||
name: '莉妮特' | |||
}, | |||
{ | |||
name: '吉尔德罗伊' | |||
}, | |||
{ | |||
name: '特欧' | |||
}, | |||
{ | |||
name: '索菲亚' | |||
}, | |||
{ | |||
name: '拉斯' | |||
}, | |||
{ | |||
name: '赛西莉' | |||
}, | |||
{ | |||
name: '莲见' | |||
}, | |||
{ | |||
name: '尼兰娜拉' | |||
}, | |||
{ | |||
name: '欧尔贝克' | |||
}, | |||
{ | |||
name: '欧菲莉亚' | |||
}, | |||
{ | |||
name: '希斯柯特' | |||
}, | |||
{ | |||
name: '哈雷' | |||
}, | |||
{ | |||
name: '索蕾犹' | |||
}, | |||
{ | |||
name: '爱丽莎' | |||
}, | |||
{ | |||
name: '泰里翁' | |||
}, | |||
{ | |||
name: '莫露露' | |||
}, | |||
{ | |||
name: '贝兹' | |||
}, | |||
{ | |||
name: '闪达' | |||
}, | |||
{ | |||
name:'卡杰斯', | |||
} | |||
]; | |||
var roles_5_new = roles_5.concat([ | |||
{ | |||
name:'卢米斯', | |||
}, | |||
{ | |||
name:'江连', | |||
}, | |||
{ | |||
name:'吉尔梅拉', | |||
} | |||
]) | |||
var step_count = [7,8,10,10,10] | |||
// 追忆 | |||
// 艾特里克斯 | |||
var roles_zy_atkls = [{ | |||
name: "艾特里克斯", | |||
isUp: true, | |||
weight: 1 | |||
}] | |||
var roles_zy_5_other = [ | |||
{ | |||
name: "利夏尔", | |||
isUp: false, | |||
weight: 1 | |||
},{ | |||
name: "克拉乌泽", | |||
isUp: false, | |||
weight: 1 | |||
},{ | |||
name: "雷比娜", | |||
isUp: false, | |||
weight: 1 | |||
},{ | |||
name: "阿拉乌妮", | |||
isUp: false, | |||
weight: 1 | |||
}]; | |||
var roles_zy_5_step = [{ | |||
name: "艾特里克斯", | |||
isUp: true, | |||
weight: 4 | |||
},{ | |||
name: "利夏尔", | |||
isUp: false, | |||
weight: 1 | |||
},{ | |||
name: "克拉乌泽", | |||
isUp: false, | |||
weight: 1 | |||
},{ | |||
name: "雷比娜", | |||
isUp: false, | |||
weight: 1 | |||
},{ | |||
name: "阿拉乌妮", | |||
isUp: false, | |||
weight: 1 | |||
}]; | |||
// 圣炎 | |||
// 雷欧 | |||
var roles_sy_5_lo = [ | |||
{ | |||
name: "雷欧", | |||
isUp: true, | |||
weight: 1 | |||
} | |||
] | |||
var roles_sy_5_lo_step = [ | |||
{ | |||
name: "雷欧", | |||
isUp: true, | |||
weight: 3 | |||
}, | |||
{ | |||
name: "泽妮亚", | |||
isUp: false, | |||
weight: 1 | |||
}, | |||
{ | |||
name: "奥黛特", | |||
isUp: false, | |||
weight: 1 | |||
}, | |||
{ | |||
name: "多萝德娅", | |||
isUp: false, | |||
weight: 1 | |||
} | |||
] | |||
var roles_sy_5 = [ | |||
{ | |||
name: "泽妮亚", | |||
isUp: false, | |||
weight: 1 | |||
}, | |||
{ | |||
name: "奥黛特", | |||
isUp: false, | |||
weight: 1 | |||
}, | |||
{ | |||
name: "多萝德娅", | |||
isUp: false, | |||
weight: 1 | |||
} | |||
] | |||
//被选中的旅人 | |||
// 萨莉莎 | |||
var roles_xz_5_sls = [ | |||
{ | |||
name: "萨莉莎", | |||
isUp: true, | |||
weight: 1 | |||
} | |||
]; | |||
var roles_xz_5_sls_step = [ | |||
{ | |||
name: "萨莉莎", | |||
isUp: true, | |||
weight: roles_5_new.length | |||
} | |||
].concat(roles_5_new.map(item=>{ | |||
return { | |||
name:item.name, | |||
isUp:false, | |||
weight:1 | |||
} | |||
})) | |||
// 特蕾莎Ex | |||
var roles_xz_5_tlsex = [ | |||
{ | |||
name: "特蕾莎Ex", | |||
isUp: true, | |||
weight: 1 | |||
} | |||
]; | |||
var roles_xz_5_tlsex_step = [ | |||
{ | |||
name: "特蕾莎Ex", | |||
isUp: true, | |||
weight: roles_5_new.length | |||
} | |||
].concat(roles_5_new.map(item=>{ | |||
return { | |||
name:item.name, | |||
isUp:false, | |||
weight:1 | |||
} | |||
})) | |||
// 普里姆萝洁Ex | |||
var roles_xz_5_plmljex = [ | |||
{ | |||
name: "普里姆萝洁Ex", | |||
isUp: true, | |||
weight: 1 | |||
} | |||
]; | |||
var roles_xz_5_plmljex_step = [ | |||
{ | |||
name: "普里姆萝洁Ex", | |||
isUp: true, | |||
weight: roles_5_new.length | |||
} | |||
].concat(roles_5_new.map(item=>{ | |||
return { | |||
name:item.name, | |||
isUp:false, | |||
weight:1 | |||
} | |||
})) | |||
// 闪光的旅人:约书亚 | |||
var role_sg_5_nkl = [{ | |||
name: "妮可拉", | |||
keyName:'妮可拉', | |||
isUp: true, | |||
weight: 1 | |||
}] | |||
// 圣诞双池:米罗德Ex,卢米斯Ex | |||
var role_sd_5 = [ | |||
{ | |||
name: "米罗德Ex", | |||
isUp: true, | |||
weight: 1 | |||
}, | |||
{ | |||
name: "卢米斯Ex", | |||
isUp: true, | |||
weight: 1 | |||
}, | |||
] | |||
var role_sd_5_mld = [ | |||
{ | |||
name: "米罗德Ex", | |||
isUp: true, | |||
weight: 1 | |||
} | |||
] | |||
var role_sd_5_mld_step = [ | |||
{ | |||
name: "米罗德Ex", | |||
isUp: true, | |||
weight: roles_5_new.length | |||
} | |||
].concat(roles_5_new.map(item=>{ | |||
return { | |||
name:item.name, | |||
isUp:false, | |||
weight:1 | |||
} | |||
})) | |||
var role_sd_5_lms = [ | |||
{ | |||
name: "卢米斯Ex", | |||
isUp: true, | |||
weight: 1 | |||
} | |||
] | |||
var role_sd_5_lms_step = [ | |||
{ | |||
name: "卢米斯Ex", | |||
isUp: true, | |||
weight: roles_5_new.length | |||
} | |||
].concat(roles_5_new.map(item=>{ | |||
return { | |||
name:item.name, | |||
isUp:false, | |||
weight:1 | |||
} | |||
})) | |||
var pools = [ | |||
{ | |||
name: "被选中的旅人:特蕾莎Ex", | |||
btn_1: true, | |||
btn_10: true, | |||
step: false, | |||
stepRole: [], | |||
stepCount: [], | |||
roleType: [{ | |||
// 5 特蕾莎Ex | |||
num: 0.8, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: true, | |||
roles: roles_xz_5_tlsex | |||
}, | |||
{ | |||
// 4.5 特蕾莎Ex | |||
num: 0.4, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: true, | |||
roles: roles_xz_5_tlsex | |||
}, | |||
{ | |||
// 5其他 | |||
num: 1.2, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4.5其他 | |||
num: 1.6, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4星 | |||
num: 18, | |||
maxStar: 4, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3.5星 | |||
num: 40, | |||
maxStar: 4, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3星 | |||
num: 38, | |||
maxStar: 3, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_3 | |||
} | |||
] | |||
}, | |||
{ | |||
name: "觉醒的旅人们(阶梯):特蕾莎Ex", | |||
btn_1: false, | |||
btn_10: true, | |||
step: true, | |||
stepRole: roles_xz_5_tlsex_step, | |||
stepCount: step_count, | |||
roleType: [{ | |||
// 5 特蕾莎Ex | |||
num: 0.8, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: true, | |||
roles: roles_xz_5_tlsex | |||
}, | |||
{ | |||
// 4.5 特蕾莎Ex | |||
num: 0.4, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: true, | |||
roles: roles_xz_5_tlsex | |||
}, | |||
{ | |||
// 5其他 | |||
num: 1.2, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4.5其他 | |||
num: 1.6, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4星 | |||
num: 18, | |||
maxStar: 4, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3.5星 | |||
num: 40, | |||
maxStar: 4, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3星 | |||
num: 38, | |||
maxStar: 3, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_3 | |||
} | |||
] | |||
}, | |||
{ | |||
name: "被选中的旅人:普里姆萝洁Ex", | |||
btn_1: true, | |||
btn_10: true, | |||
step: false, | |||
stepRole: [], | |||
stepCount: [], | |||
roleType: [{ | |||
// 5 普里姆萝洁Ex | |||
num: 0.8, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: true, | |||
roles: roles_xz_5_plmljex | |||
}, | |||
{ | |||
// 4.5 普里姆萝洁Ex | |||
num: 0.4, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: true, | |||
roles: roles_xz_5_plmljex | |||
}, | |||
{ | |||
// 5其他 | |||
num: 1.2, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4.5其他 | |||
num: 1.6, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4星 | |||
num: 18, | |||
maxStar: 4, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3.5星 | |||
num: 40, | |||
maxStar: 4, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3星 | |||
num: 38, | |||
maxStar: 3, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_3 | |||
} | |||
] | |||
}, | |||
{ | |||
name: "觉醒的旅人们(阶梯):普里姆萝洁Ex", | |||
btn_1: false, | |||
btn_10: true, | |||
step: true, | |||
stepRole: roles_xz_5_plmljex_step, | |||
stepCount: step_count, | |||
roleType: [{ | |||
// 5 特蕾莎Ex | |||
num: 0.8, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: true, | |||
roles: roles_xz_5_plmljex | |||
}, | |||
{ | |||
// 4.5 特蕾莎Ex | |||
num: 0.4, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: true, | |||
roles: roles_xz_5_plmljex | |||
}, | |||
{ | |||
// 5其他 | |||
num: 1.2, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4.5其他 | |||
num: 1.6, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4星 | |||
num: 18, | |||
maxStar: 4, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3.5星 | |||
num: 40, | |||
maxStar: 4, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3星 | |||
num: 38, | |||
maxStar: 3, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_3 | |||
} | |||
] | |||
}, | |||
// 圣诞双池:米罗德Ex,卢米斯Ex | |||
{ | |||
name: "圣诞双池:米罗德Ex,卢米斯Ex", | |||
btn_1: true, | |||
btn_10: true, | |||
step: false, | |||
stepRole: [], | |||
stepCount: [], | |||
roleType: [{ | |||
// 5 圣诞双池:米罗德Ex,卢米斯Ex | |||
num: 1.2, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: true, | |||
roles: role_sd_5 | |||
}, | |||
{ | |||
// 4.5 圣诞双池:米罗德Ex,卢米斯Ex | |||
num: 0.8, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: true, | |||
roles: role_sd_5 | |||
}, | |||
{ | |||
// 5其他 | |||
num: 0.8, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4.5其他 | |||
num: 1.2, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4星 | |||
num: 18, | |||
maxStar: 4, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3.5星 | |||
num: 40, | |||
maxStar: 4, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3星 | |||
num: 38, | |||
maxStar: 3, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_3 | |||
} | |||
] | |||
}, | |||
{ | |||
name: "闪光的旅人:妮可拉", | |||
btn_1: true, | |||
btn_10: true, | |||
step: false, | |||
stepRole: [], | |||
stepCount: [], | |||
roleType: [{ | |||
// 5 妮可拉 | |||
num: 0.8, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: true, | |||
roles: role_sg_5_nkl | |||
}, | |||
{ | |||
// 4.5 妮可拉 | |||
num: 0.4, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: true, | |||
roles: role_sg_5_nkl | |||
}, | |||
{ | |||
// 5其他 | |||
num: 1.2, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4.5其他 | |||
num: 1.6, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4星 | |||
num: 18, | |||
maxStar: 4, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3.5星 | |||
num: 40, | |||
maxStar: 4, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3星 | |||
num: 38, | |||
maxStar: 3, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_3 | |||
} | |||
] | |||
}, | |||
{ | |||
name: "邂逅的旅人们", | |||
btn_1: true, | |||
btn_10: true, | |||
step: false, | |||
stepRole: [], | |||
stepCount: [], | |||
roleType: [{ | |||
// 5其他 | |||
num: 2, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4.5其他 | |||
num: 2, | |||
maxStar: 5, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_5_new | |||
}, | |||
{ | |||
// 4星 | |||
num: 18, | |||
maxStar: 4, | |||
thisStar: 4, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3.5星 | |||
num: 40, | |||
maxStar: 4, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_4 | |||
}, | |||
{ | |||
// 3星 | |||
num: 38, | |||
maxStar: 3, | |||
thisStar: 3, | |||
isUp: false, | |||
roles: roles_3 | |||
} | } | ||
] | |||
. | }, | ||
{ | |||
name: "历战的旅人们", | |||
btn_1: true, | |||
btn_10: false, | |||
btn_50: false, | |||
btn_100: false, | |||
step: false, | |||
stepRole: [], | |||
stepCount: [], | |||
roleType: [{ | |||
// 5其他 | |||
num: 100, | |||
maxStar: 5, | |||
thisStar: 5, | |||
isUp: true, | |||
roles: roles_5_new | |||
}] | |||
} | |||
]; | |||
var updateDate = "2024年11月28日"; | |||
var currPool = {}; | |||
var poolName = ""; | |||
var poolRoleTyels = []; | |||
var numStep = []; | |||
var stepPoolIndex = 0; | |||
var arr_result = []; | |||
var max_result_level = 3; | |||
var step = 0; | |||
var total_num = 0; | |||
var total_diamond_num = 0; | |||
var up_num = 0; | |||
var arr_ups = []; | |||
var arr_not_ups = []; | |||
var up_half_num = 0; | |||
var other_num = 0; | |||
var other_half_num = 0; | |||
// 截取字符串 | |||
function extractContentBetweenStrings(text, start, end) { | |||
var pattern = new RegExp(start + '((.*?)(?=' + end + '))', 'gm'); | |||
var matches = text.match(pattern); | |||
if (matches) { | |||
return matches[0].replace(start, ''); | |||
} | |||
return null; | |||
} | |||
function getRoles(count = 1) { | |||
for (var i = 0; i < count; i++) { | |||
cardResult(i); | |||
} | |||
$("#ring").css("display", "none"); | |||
// if (max_result_level == 5) { | |||
// $("#ring_2").css("display", "block") | |||
// } else if (max_result_level == 4) { | |||
// $("#ring_1").css("display", "block") | |||
// } else { | |||
// $("#ring_0").css("display", "block") | |||
// } | |||
step = 2; | |||
} | |||
function cardResult(index) { | |||
if (stepPoolIndex == 5 && index == 9) { | |||
var arrRolesThis = currPool.stepRole; | |||
var stepRoleTotalNum = 0; | |||
arrRolesThis.forEach(item => { | |||
stepRoleTotalNum = stepRoleTotalNum + item.weight; | |||
}) | |||
var random_index = Math.floor(Math.random() * stepRoleTotalNum); | |||
for (var i = 0; i < arrRolesThis.length; i++) { | |||
var objThis = arrRolesThis[i]; | |||
if (random_index < objThis.weight) { | |||
var result = JSON.parse(JSON.stringify(objThis)); | |||
break; | |||
} else { | |||
random_index = random_index - objThis.weight; | |||
} | } | ||
} | |||
// var result = JSON.parse(JSON.stringify(arrRolesThis[random_index])); | |||
result.maxStar = 5; | |||
result.thisStar = 5; | |||
if (max_result_level < 5) { | |||
max_result_level = 5; | |||
} | |||
arr_result.push(result); | |||
if (result.isUp) { | |||
up_num = up_num + 1; | |||
arr_ups.push(result) | |||
} else { | |||
other_num = other_num + 1; | |||
arr_not_ups.push(result); | |||
} | |||
} else { | |||
var result_num = Math.floor(Math.random() * 1000) / 10.0; | |||
for (var i = 0; i < numStep.length; i++) { | |||
var thisStep = numStep[i]; | |||
if (result_num < thisStep) { | |||
var roleTypeThis = poolRoleTyels[i]; | |||
var arrRolesThis = roleTypeThis.roles; | |||
var random_index = Math.floor(Math.random() * arrRolesThis.length); | |||
var result = JSON.parse(JSON.stringify(arrRolesThis[random_index])); | |||
result.maxStar = roleTypeThis.maxStar; | |||
result.thisStar = roleTypeThis.thisStar; | |||
if (max_result_level < roleTypeThis.thisStar) { | |||
max_result_level = roleTypeThis.thisStar; | |||
. | |||
} | } | ||
arr_result.push(result); | |||
if (roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 5) { | |||
up_num = up_num + 1; | |||
arr_ups.push(result) | |||
} else if (!roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 5) { | |||
other_num = other_num + 1; | |||
arr_not_ups.push(result) | |||
} else if (roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 4) { | |||
up_half_num = up_half_num + 1; | |||
arr_ups.push(result) | |||
} else if (!roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 4) { | |||
other_half_num = other_half_num + 1; | |||
arr_not_ups.push(result) | |||
} | } | ||
break | |||
} | } | ||
} | |||
} | |||
0 | |||
} | |||
function clickWindow() { | |||
if (step != 2) return; | |||
step = 3; | |||
// var obj_result_area = document.getElementsByClassName("result_area")[0]; | |||
// obj_result_area.style = "display:flex;" | |||
// 正常流程 | |||
setTimeout(() => { | |||
// obj_result_area.style = | |||
// "display:flex;background-image: url(https://i.17173cdn.com/g8bz6k/octopathsp/5/58/db_ck_bg.png?20240904091141);background-color:transparent;" | |||
// $(".img_ring").each(function() { | |||
// $(this).css("display", "none") | |||
// }) | |||
var obj_all_result = document.getElementsByClassName("all_Result")[0]; | |||
if (currPool.name == '邂逅的旅人们') { | |||
obj_all_result.innerHTML = "<div>" + "本次抽卡" + total_num + "次,消费" + total_diamond_num + "钻石" + | |||
"</div>" + | |||
"<div>" + "抽到5星角色" + other_num + '次,4.5星角色' + other_half_num + '次' + "</div>"; | |||
} else if (currPool.name == '历战的旅人们') { | |||
obj_all_result.innerHTML = "<div></div>" | |||
} else { | |||
var arrUpRoles = []; | |||
var arrUpRolesData = []; | |||
arr_ups.forEach(item => { | |||
var name = item.name; | |||
var indexThis = arrUpRoles.indexOf(name); | |||
if (indexThis >= 0) { | |||
arrUpRolesData[indexThis].count++ | |||
} else { | |||
arrUpRoles.push(name); | |||
arrUpRolesData.push({ | |||
name: name, | |||
count: 1 | |||
}) | |||
} | } | ||
}) | |||
var arrNotUpRoles = []; | |||
var arrNotUpRolesData = []; | |||
arr_not_ups.forEach(item => { | |||
var name = item.name; | |||
var indexThis = arrNotUpRoles.indexOf(name); | |||
if (indexThis >= 0) { | |||
arrNotUpRolesData[indexThis].count++ | |||
} else { | |||
arrNotUpRoles.push(name); | |||
arrNotUpRolesData.push({ | |||
name: name, | |||
count: 1 | |||
}) | |||
} | } | ||
}) | |||
var strUps = "" | |||
arrUpRolesData.forEach(item => { | |||
strUps = strUps + ',' + item.name + ' ' + item.count + '个' | |||
}) | |||
if (strUps.length > 0) { | |||
strUps = '抽到 ' + strUps.substring(1); | |||
} else { | |||
strUps = '暂未抽到当期UP角色'; | |||
} | |||
var strNotUps = "" | |||
arrNotUpRolesData.forEach(item => { | |||
strNotUps = strNotUps + ',' + item.name + ' ' + item.count + '个' | |||
}) | |||
if (strNotUps.length > 0) { | |||
strNotUps = '其他5星角色 ' + strNotUps.substring(1) + ' 共计' + (other_num + other_half_num) + '个'; | |||
} else { | |||
strNotUps = '暂未抽到其他5星角色'; | |||
} | } | ||
obj_all_result.innerHTML = "<div>" + "本次抽卡" + total_num + "次,消费" + total_diamond_num + "钻石" + | |||
. | "</div>" + | ||
"<div>" + strUps + "</div>" + | |||
// "抽到5星当期UP角色" + up_num + "次,4.5星当期UP角色" + up_half_num + "次</div>" + | |||
// "<div>其他5星角色" + | |||
// other_num + '次,其他4.5星角色' + other_half_num + '次' + "</div>" + | |||
"<div>" + strNotUps + "</div>"; | |||
} | |||
showResults(); | |||
}, 100) | |||
} | |||
function showResults() { | |||
var str_html = ""; | |||
for (var i = 0; i < arr_result.length; i++) { | |||
var objThis = arr_result[i]; | |||
str_html = str_html + "<div class='role_area'>" + | |||
"<div class='text'>" + objThis.name + "</div>" + | |||
"<div class='text'>"; | |||
for (var j = 0; j < objThis.thisStar; j++) { | |||
str_html = str_html + "★" | |||
} | |||
if (objThis.maxStar > objThis.thisStar) { | |||
str_html = str_html + "☆" | |||
} | |||
var roleData = getRoleDataWithRoleName(objThis.keyName || objThis.name); | |||
if(roleData[0] == undefined || roleData[2] == undefined) { | |||
} | |||
var img_lh = "https://wiki.17173.com/octopathsp/thumb.php?f=角色立绘-角色编号" + roleData[0] + ".png&width=200x"; | |||
var img_xs = "https://wiki.17173.com/octopathsp/thumb.php?f=" + roleData[2] + ".png&width=90x"; | |||
str_html = str_html + "</div>" + "<img class='img' src='" + img_lh + "'/>" + "<img class='img_xs' src='" + | |||
img_xs + "' />" + "</div>" | |||
} | |||
$(".result_area").each(function() { | |||
$(this).html(str_html).load() | |||
}) | |||
setTimeout(() => { | |||
step = 0; | |||
}, 1000) | |||
} | |||
function clickStart(count = 1) { | |||
if (step != 0) return | |||
step = 1; | |||
max_result_level = 3; | |||
arr_result = []; | |||
if (currPool.step) { | |||
if (stepPoolIndex >= currPool.stepCount.length) { | |||
stepPoolIndex = 0 | |||
} | |||
var countThis = currPool.stepCount[stepPoolIndex]; | |||
total_num = total_num + count; | |||
total_diamond_num = total_diamond_num + countThis * 30; | |||
stepPoolIndex = stepPoolIndex + 1; | |||
} else { | |||
total_num = total_num + count; | |||
total_diamond_num = total_diamond_num + count * 30; | |||
} | |||
setTimeout(function() { | |||
// $("#window_area").css("background-color", "transparent"); | |||
clickWindow(); | |||
}, 100) | |||
// var obj_result_area = document.getElementsByClassName("result_area")[0]; | |||
// obj_result_area.style = "display:none;background-color:#FFFFFF;" | |||
// obj_result_area.innerHTML = ""; | |||
getRoles(count); | |||
} | |||
function initPool(index) { | |||
try { | |||
if (pools.length > index) { | |||
currPool = pools[index]; | |||
} else { | |||
currPool = pools[0]; | |||
} | |||
} catch (e) { | |||
if (e.message == 'pools is not defined') { | |||
setTimeout(() => { | |||
initPool(index) | |||
}, 1000) | |||
} | } | ||
} | |||
poolName = currPool.name; | |||
poolRoleTyels = currPool.roleType; | |||
numStep = []; | |||
stepPoolIndex = 0; | |||
var numCurr = 0; | |||
poolRoleTyels.forEach(item => { | |||
numCurr = numCurr + item.num; | |||
numStep.push(numCurr.toFixed(2)) | |||
}) | |||
$('#pool_title').html(poolName); | |||
if (currPool.btn_1) { | |||
$('#btn_start_1').css("display", "block") | |||
} else { | |||
$('#btn_start_1').css("display", "none") | |||
} | |||
if (currPool.btn_10) { | |||
$('#btn_start_10').css("display", "block") | |||
} else { | |||
$('#btn_start_10').css("display", "none") | |||
} | |||
if (currPool.btn_50) { | |||
$('#btn_start_50').css("display", "block") | |||
} else { | |||
$('#btn_start_50').css("display", "none") | |||
} | |||
if (currPool.btn_100) { | |||
$('#btn_start_100').css("display", "block") | |||
} else { | |||
$('#btn_start_100').css("display", "none") | |||
} | |||
} | |||
function initFunc() { | |||
$(document).ready(function() { | |||
var queryString = window.location.search; | |||
var urlParams = new URLSearchParams(queryString); | |||
var poolIndex = urlParams.get("index") || 0; | |||
initPool(poolIndex) | |||
for (var i = 0; i < pools.length; i++) { | |||
var poolThis = pools[i]; | |||
var $button = $('<div>', { | |||
class: 'btn_change_pool', | |||
text: poolThis.name, | |||
"index": i | |||
}).on('click', function() { | |||
var dataIndex = $(this).attr("data-index"); | |||
var url = new URL(window.location.href); | |||
url.searchParams.set("index", dataIndex); | |||
window.location.href = url.href; | |||
}); | |||
$button.attr("data-index", i); | |||
$('.change_pool').append($button); | |||
} | } | ||
}} | |||
$('#btn_start_1').on("click", function() { | |||
clickStart(1) | |||
}); | |||
$('#btn_start_10').on("click", () => { | |||
clickStart(10) | |||
}); | |||
$('#btn_start_50').on("click", () => { | |||
clickStart(50) | |||
}); | |||
$('#btn_start_100').on("click", () => { | |||
clickStart(100) | |||
}); | |||
$('#window_area').on("click", () => { | |||
clickWindow() | |||
}); | |||
}); | |||
} | |||
initFunc() | |||
2025年1月4日 (六) 23:05的版本
var roles_3 = [ { name: '马努埃尔'},{ name: '伊布林'}, { name: '哈利'}, { name: '霍尔赫'}, { name: '萨莉亚'}, { name: '佩妮'}, { name: '迪艾格'}, { name: '费丽妮'}, { name: '比利'}, { name: '赫塞'}, { name: '帕尔'}, { name: '特利'}, { name: '弗昂'}, { name: '卡萝尔'}, { name: '科妮'}, { name: '古提'}, { name: '薇薇安'}, { name: '萨妮'}, { name: '伍格'}, { name: '南娜'}, { name: '梅妮'}, { name: '弗利欧'}, { name: '尤妮丝'}, { name: '多利'}]; var roles_4 = [ { name: '普利基特' },{ name: '洛洛'},{ name: '雪娜'},{ name: '约伦'},{ name: '勒凡'},{ name: '波拉'},{ name: '艾弗伦'},{ name: '肯尼斯'},{ name: '科尔尼利亚'},{ name: '杜兰'},{ name: '纳尔'},{ name: '梅贝儿'},{ name: '伊利斯'},{ name: '法维欧'},{ name: '莉塔'},{ name: '歇尔薇'},{ name: '罗迪恩'},{ name: '玛德蕾妮'},{ name: '诺艾尔'},{ name: '塞德里克'},{ name: '梅诺'},{ name: '巴拉德'},{ name: '贝尔加'},{ name: '阿孜莱特'},{ name: '卡米拉'},{ name: '迈尔斯'},{ name: '贝尔特朗'},{ name: '洁卡莉特'},{ name: '塔希尔'},{ name: '特里休'},{ name: '阿什兰'},{ name: '劳拉'},{ name: '佩雷迪尔'},{ name: '米娜'},{ name: '卢塞塔'},{ name: '拉莫纳'},{ name: '梅蕾特'},{ name: '皮雅'},{ name: '哈因茨'},{ name: '德文'},{ name: '克雷斯'},{ name: '卡尔茨'},{ name: '温格特'}]; var roles_5 = [
{
name: '洁卡莉特Ex'
}, {
name: '亚芬'
}, {
name: '乌·鲁代'
}, {
name: '泰蕾兹'
}, {
name: '莱欧尼尔'
}, {
name: '海茵特'
}, {
name: '普里姆萝洁'
}, {
name: '赛拉斯'
}, {
name: '斯凯亚克罗'
}, {
name: '菲欧儿'
}, {
name: '米罗德'
}, {
name: '薇欧拉'
}, {
name: '莉妮特'
}, {
name: '吉尔德罗伊'
}, {
name: '特欧'
}, {
name: '索菲亚'
}, {
name: '拉斯'
}, {
name: '赛西莉'
}, {
name: '莲见'
}, {
name: '尼兰娜拉'
}, {
name: '欧尔贝克'
}, {
name: '欧菲莉亚'
}, {
name: '希斯柯特'
}, {
name: '哈雷'
}, {
name: '索蕾犹'
}, {
name: '爱丽莎'
}, {
name: '泰里翁'
}, {
name: '莫露露'
}, {
name: '贝兹'
}, {
name: '闪达'
}, { name:'卡杰斯', } ]; var roles_5_new = roles_5.concat([
{
name:'卢米斯',
},
{
name:'江连',
},
{
name:'吉尔梅拉',
}
]) var step_count = [7,8,10,10,10]
// 追忆 // 艾特里克斯 var roles_zy_atkls = [{
name: "艾特里克斯", isUp: true, weight: 1
}] var roles_zy_5_other = [
{
name: "利夏尔",
isUp: false,
weight: 1
},{
name: "克拉乌泽", isUp: false, weight: 1
},{
name: "雷比娜", isUp: false, weight: 1
},{
name: "阿拉乌妮", isUp: false, weight: 1
}]; var roles_zy_5_step = [{
name: "艾特里克斯", isUp: true, weight: 4
},{
name: "利夏尔", isUp: false, weight: 1
},{
name: "克拉乌泽", isUp: false, weight: 1
},{
name: "雷比娜", isUp: false, weight: 1
},{
name: "阿拉乌妮", isUp: false, weight: 1
}];
// 圣炎 // 雷欧 var roles_sy_5_lo = [
{
name: "雷欧",
isUp: true,
weight: 1
}
] var roles_sy_5_lo_step = [
{
name: "雷欧",
isUp: true,
weight: 3
},
{
name: "泽妮亚",
isUp: false,
weight: 1
},
{
name: "奥黛特",
isUp: false,
weight: 1
},
{
name: "多萝德娅",
isUp: false,
weight: 1
}
] var roles_sy_5 = [
{
name: "泽妮亚",
isUp: false,
weight: 1
},
{
name: "奥黛特",
isUp: false,
weight: 1
},
{
name: "多萝德娅",
isUp: false,
weight: 1
}
]
//被选中的旅人
// 萨莉莎
var roles_xz_5_sls = [
{
name: "萨莉莎",
isUp: true,
weight: 1
} ]; var roles_xz_5_sls_step = [
{
name: "萨莉莎",
isUp: true,
weight: roles_5_new.length
}
].concat(roles_5_new.map(item=>{
return {
name:item.name,
isUp:false,
weight:1
}
})) // 特蕾莎Ex var roles_xz_5_tlsex = [
{
name: "特蕾莎Ex",
isUp: true,
weight: 1
} ]; var roles_xz_5_tlsex_step = [
{
name: "特蕾莎Ex",
isUp: true,
weight: roles_5_new.length
}
].concat(roles_5_new.map(item=>{
return {
name:item.name,
isUp:false,
weight:1
}
})) // 普里姆萝洁Ex var roles_xz_5_plmljex = [
{
name: "普里姆萝洁Ex",
isUp: true,
weight: 1
} ]; var roles_xz_5_plmljex_step = [
{
name: "普里姆萝洁Ex",
isUp: true,
weight: roles_5_new.length
}
].concat(roles_5_new.map(item=>{
return {
name:item.name,
isUp:false,
weight:1
}
}))
// 闪光的旅人:约书亚
var role_sg_5_nkl = [{
name: "妮可拉", keyName:'妮可拉', isUp: true, weight: 1
}]
// 圣诞双池:米罗德Ex,卢米斯Ex var role_sd_5 = [
{
name: "米罗德Ex",
isUp: true,
weight: 1
},
{
name: "卢米斯Ex",
isUp: true,
weight: 1
},
] var role_sd_5_mld = [
{
name: "米罗德Ex",
isUp: true,
weight: 1
}
] var role_sd_5_mld_step = [
{
name: "米罗德Ex",
isUp: true,
weight: roles_5_new.length
}
].concat(roles_5_new.map(item=>{
return {
name:item.name,
isUp:false,
weight:1
}
})) var role_sd_5_lms = [
{
name: "卢米斯Ex",
isUp: true,
weight: 1
}
] var role_sd_5_lms_step = [
{
name: "卢米斯Ex",
isUp: true,
weight: roles_5_new.length
}
].concat(roles_5_new.map(item=>{
return {
name:item.name,
isUp:false,
weight:1
}
}))
var pools = [
{
name: "被选中的旅人:特蕾莎Ex",
btn_1: true,
btn_10: true,
step: false,
stepRole: [],
stepCount: [],
roleType: [{
// 5 特蕾莎Ex
num: 0.8,
maxStar: 5,
thisStar: 5,
isUp: true,
roles: roles_xz_5_tlsex
},
{
// 4.5 特蕾莎Ex
num: 0.4,
maxStar: 5,
thisStar: 4,
isUp: true,
roles: roles_xz_5_tlsex
},
{
// 5其他
num: 1.2,
maxStar: 5,
thisStar: 5,
isUp: false,
roles: roles_5_new
},
{
// 4.5其他
num: 1.6,
maxStar: 5,
thisStar: 4,
isUp: false,
roles: roles_5_new
},
{
// 4星
num: 18,
maxStar: 4,
thisStar: 4,
isUp: false,
roles: roles_4
},
{
// 3.5星
num: 40,
maxStar: 4,
thisStar: 3,
isUp: false,
roles: roles_4
},
{
// 3星
num: 38,
maxStar: 3,
thisStar: 3,
isUp: false,
roles: roles_3
}
]
},
{
name: "觉醒的旅人们(阶梯):特蕾莎Ex",
btn_1: false,
btn_10: true,
step: true,
stepRole: roles_xz_5_tlsex_step,
stepCount: step_count,
roleType: [{
// 5 特蕾莎Ex
num: 0.8,
maxStar: 5,
thisStar: 5,
isUp: true,
roles: roles_xz_5_tlsex
},
{
// 4.5 特蕾莎Ex
num: 0.4,
maxStar: 5,
thisStar: 4,
isUp: true,
roles: roles_xz_5_tlsex
},
{
// 5其他
num: 1.2,
maxStar: 5,
thisStar: 5,
isUp: false,
roles: roles_5_new
},
{
// 4.5其他
num: 1.6,
maxStar: 5,
thisStar: 4,
isUp: false,
roles: roles_5_new
},
{
// 4星
num: 18,
maxStar: 4,
thisStar: 4,
isUp: false,
roles: roles_4
},
{
// 3.5星
num: 40,
maxStar: 4,
thisStar: 3,
isUp: false,
roles: roles_4
},
{
// 3星
num: 38,
maxStar: 3,
thisStar: 3,
isUp: false,
roles: roles_3
}
]
},
{
name: "被选中的旅人:普里姆萝洁Ex",
btn_1: true,
btn_10: true,
step: false,
stepRole: [],
stepCount: [],
roleType: [{
// 5 普里姆萝洁Ex
num: 0.8,
maxStar: 5,
thisStar: 5,
isUp: true,
roles: roles_xz_5_plmljex
},
{
// 4.5 普里姆萝洁Ex
num: 0.4,
maxStar: 5,
thisStar: 4,
isUp: true,
roles: roles_xz_5_plmljex
},
{
// 5其他
num: 1.2,
maxStar: 5,
thisStar: 5,
isUp: false,
roles: roles_5_new
},
{
// 4.5其他
num: 1.6,
maxStar: 5,
thisStar: 4,
isUp: false,
roles: roles_5_new
},
{
// 4星
num: 18,
maxStar: 4,
thisStar: 4,
isUp: false,
roles: roles_4
},
{
// 3.5星
num: 40,
maxStar: 4,
thisStar: 3,
isUp: false,
roles: roles_4
},
{
// 3星
num: 38,
maxStar: 3,
thisStar: 3,
isUp: false,
roles: roles_3
}
]
},
{
name: "觉醒的旅人们(阶梯):普里姆萝洁Ex",
btn_1: false,
btn_10: true,
step: true,
stepRole: roles_xz_5_plmljex_step,
stepCount: step_count,
roleType: [{
// 5 特蕾莎Ex
num: 0.8,
maxStar: 5,
thisStar: 5,
isUp: true,
roles: roles_xz_5_plmljex
},
{
// 4.5 特蕾莎Ex
num: 0.4,
maxStar: 5,
thisStar: 4,
isUp: true,
roles: roles_xz_5_plmljex
},
{
// 5其他
num: 1.2,
maxStar: 5,
thisStar: 5,
isUp: false,
roles: roles_5_new
},
{
// 4.5其他
num: 1.6,
maxStar: 5,
thisStar: 4,
isUp: false,
roles: roles_5_new
},
{
// 4星
num: 18,
maxStar: 4,
thisStar: 4,
isUp: false,
roles: roles_4
},
{
// 3.5星
num: 40,
maxStar: 4,
thisStar: 3,
isUp: false,
roles: roles_4
},
{
// 3星
num: 38,
maxStar: 3,
thisStar: 3,
isUp: false,
roles: roles_3
}
]
},
// 圣诞双池:米罗德Ex,卢米斯Ex
{
name: "圣诞双池:米罗德Ex,卢米斯Ex",
btn_1: true,
btn_10: true,
step: false,
stepRole: [],
stepCount: [],
roleType: [{
// 5 圣诞双池:米罗德Ex,卢米斯Ex
num: 1.2,
maxStar: 5,
thisStar: 5,
isUp: true,
roles: role_sd_5
},
{
// 4.5 圣诞双池:米罗德Ex,卢米斯Ex
num: 0.8,
maxStar: 5,
thisStar: 4,
isUp: true,
roles: role_sd_5
},
{
// 5其他
num: 0.8,
maxStar: 5,
thisStar: 5,
isUp: false,
roles: roles_5_new
},
{
// 4.5其他
num: 1.2,
maxStar: 5,
thisStar: 4,
isUp: false,
roles: roles_5_new
},
{
// 4星
num: 18,
maxStar: 4,
thisStar: 4,
isUp: false,
roles: roles_4
},
{
// 3.5星
num: 40,
maxStar: 4,
thisStar: 3,
isUp: false,
roles: roles_4
},
{
// 3星
num: 38,
maxStar: 3,
thisStar: 3,
isUp: false,
roles: roles_3
}
]
},
{
name: "闪光的旅人:妮可拉",
btn_1: true,
btn_10: true,
step: false,
stepRole: [],
stepCount: [],
roleType: [{
// 5 妮可拉
num: 0.8,
maxStar: 5,
thisStar: 5,
isUp: true,
roles: role_sg_5_nkl
},
{
// 4.5 妮可拉
num: 0.4,
maxStar: 5,
thisStar: 4,
isUp: true,
roles: role_sg_5_nkl
},
{
// 5其他
num: 1.2,
maxStar: 5,
thisStar: 5,
isUp: false,
roles: roles_5_new
},
{
// 4.5其他
num: 1.6,
maxStar: 5,
thisStar: 4,
isUp: false,
roles: roles_5_new
},
{
// 4星
num: 18,
maxStar: 4,
thisStar: 4,
isUp: false,
roles: roles_4
},
{
// 3.5星
num: 40,
maxStar: 4,
thisStar: 3,
isUp: false,
roles: roles_4
},
{
// 3星
num: 38,
maxStar: 3,
thisStar: 3,
isUp: false,
roles: roles_3
}
]
},
{ name: "邂逅的旅人们", btn_1: true, btn_10: true, step: false, stepRole: [], stepCount: [], roleType: [{
// 5其他
num: 2,
maxStar: 5,
thisStar: 5,
isUp: false,
roles: roles_5_new
},
{
// 4.5其他
num: 2,
maxStar: 5,
thisStar: 4,
isUp: false,
roles: roles_5_new
},
{
// 4星
num: 18,
maxStar: 4,
thisStar: 4,
isUp: false,
roles: roles_4
},
{
// 3.5星
num: 40,
maxStar: 4,
thisStar: 3,
isUp: false,
roles: roles_4
},
{
// 3星
num: 38,
maxStar: 3,
thisStar: 3,
isUp: false,
roles: roles_3
}
]
}, {
name: "历战的旅人们",
btn_1: true,
btn_10: false,
btn_50: false,
btn_100: false,
step: false,
stepRole: [],
stepCount: [],
roleType: [{
// 5其他
num: 100,
maxStar: 5,
thisStar: 5,
isUp: true,
roles: roles_5_new
}]
} ];
var updateDate = "2024年11月28日"; var currPool = {}; var poolName = ""; var poolRoleTyels = []; var numStep = [];
var stepPoolIndex = 0;
var arr_result = []; var max_result_level = 3; var step = 0;
var total_num = 0;
var total_diamond_num = 0;
var up_num = 0;
var arr_ups = [];
var arr_not_ups = [];
var up_half_num = 0;
var other_num = 0;
var other_half_num = 0;
// 截取字符串 function extractContentBetweenStrings(text, start, end) { var pattern = new RegExp(start + '((.*?)(?=' + end + '))', 'gm'); var matches = text.match(pattern); if (matches) {
return matches[0].replace(start, );
} return null; }
function getRoles(count = 1) { for (var i = 0; i < count; i++) {
cardResult(i);
}
$("#ring").css("display", "none");
// if (max_result_level == 5) {
// $("#ring_2").css("display", "block")
// } else if (max_result_level == 4) {
// $("#ring_1").css("display", "block")
// } else {
// $("#ring_0").css("display", "block")
// }
step = 2;
}
function cardResult(index) {
if (stepPoolIndex == 5 && index == 9) {
var arrRolesThis = currPool.stepRole;
var stepRoleTotalNum = 0;
arrRolesThis.forEach(item => {
stepRoleTotalNum = stepRoleTotalNum + item.weight;
})
var random_index = Math.floor(Math.random() * stepRoleTotalNum);
for (var i = 0; i < arrRolesThis.length; i++) {
var objThis = arrRolesThis[i];
if (random_index < objThis.weight) {
var result = JSON.parse(JSON.stringify(objThis));
break;
} else {
random_index = random_index - objThis.weight;
}
}
// var result = JSON.parse(JSON.stringify(arrRolesThis[random_index]));
result.maxStar = 5;
result.thisStar = 5;
if (max_result_level < 5) {
max_result_level = 5;
}
arr_result.push(result);
if (result.isUp) {
up_num = up_num + 1;
arr_ups.push(result)
} else {
other_num = other_num + 1;
arr_not_ups.push(result);
}
} else {
var result_num = Math.floor(Math.random() * 1000) / 10.0;
for (var i = 0; i < numStep.length; i++) {
var thisStep = numStep[i];
if (result_num < thisStep) {
var roleTypeThis = poolRoleTyels[i];
var arrRolesThis = roleTypeThis.roles;
var random_index = Math.floor(Math.random() * arrRolesThis.length);
var result = JSON.parse(JSON.stringify(arrRolesThis[random_index]));
result.maxStar = roleTypeThis.maxStar;
result.thisStar = roleTypeThis.thisStar;
if (max_result_level < roleTypeThis.thisStar) {
max_result_level = roleTypeThis.thisStar;
}
arr_result.push(result);
if (roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 5) {
up_num = up_num + 1;
arr_ups.push(result)
} else if (!roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 5) {
other_num = other_num + 1;
arr_not_ups.push(result)
} else if (roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 4) {
up_half_num = up_half_num + 1;
arr_ups.push(result)
} else if (!roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 4) {
other_half_num = other_half_num + 1;
arr_not_ups.push(result)
}
break
} }
}
}
function clickWindow() { if (step != 2) return; step = 3;
// var obj_result_area = document.getElementsByClassName("result_area")[0]; // obj_result_area.style = "display:flex;" // 正常流程 setTimeout(() => {
// obj_result_area.style = // "display:flex;background-image: url(https://i.17173cdn.com/g8bz6k/octopathsp/5/58/db_ck_bg.png?20240904091141);background-color:transparent;" // $(".img_ring").each(function() { // $(this).css("display", "none") // }) var obj_all_result = document.getElementsByClassName("all_Result")[0]; if (currPool.name == '邂逅的旅人们') {
obj_all_result.innerHTML = "
" + "
";
} else if (currPool.name == '历战的旅人们') {
obj_all_result.innerHTML = "
"
} else {
var arrUpRoles = [];
var arrUpRolesData = [];
arr_ups.forEach(item => {
var name = item.name;
var indexThis = arrUpRoles.indexOf(name);
if (indexThis >= 0) {
arrUpRolesData[indexThis].count++
} else {
arrUpRoles.push(name);
arrUpRolesData.push({
name: name,
count: 1
})
}
})
var arrNotUpRoles = [];
var arrNotUpRolesData = [];
arr_not_ups.forEach(item => {
var name = item.name;
var indexThis = arrNotUpRoles.indexOf(name);
if (indexThis >= 0) {
arrNotUpRolesData[indexThis].count++
} else {
arrNotUpRoles.push(name);
arrNotUpRolesData.push({
name: name,
count: 1
})
}
})
var strUps = ""
arrUpRolesData.forEach(item => {
strUps = strUps + ',' + item.name + ' ' + item.count + '个'
})
if (strUps.length > 0) {
strUps = '抽到 ' + strUps.substring(1);
} else {
strUps = '暂未抽到当期UP角色';
}
var strNotUps = ""
arrNotUpRolesData.forEach(item => {
strNotUps = strNotUps + ',' + item.name + ' ' + item.count + '个'
})
if (strNotUps.length > 0) {
strNotUps = '其他5星角色 ' + strNotUps.substring(1) + ' 共计' + (other_num + other_half_num) + '个';
} else {
strNotUps = '暂未抽到其他5星角色';
}
obj_all_result.innerHTML = "
" + "
" + // "抽到5星当期UP角色" + up_num + "次,4.5星当期UP角色" + up_half_num + "次" + // "
" + "
";
} showResults();
}, 100)
}
function showResults() { var str_html = ""; for (var i = 0; i < arr_result.length; i++) {
var objThis = arr_result[i];
str_html = str_html + "
for (var j = 0; j < objThis.thisStar; j++) {
str_html = str_html + "★"
}
if (objThis.maxStar > objThis.thisStar) {
str_html = str_html + "☆"
}
var roleData = getRoleDataWithRoleName(objThis.keyName || objThis.name);
if(roleData[0] == undefined || roleData[2] == undefined) {
}
var img_lh = "https://wiki.17173.com/octopathsp/thumb.php?f=角色立绘-角色编号" + roleData[0] + ".png&width=200x";
var img_xs = "https://wiki.17173.com/octopathsp/thumb.php?f=" + roleData[2] + ".png&width=90x";
"
}
$(".result_area").each(function() {
$(this).html(str_html).load()
})
setTimeout(() => {
step = 0;
}, 1000) }
function clickStart(count = 1) {
if (step != 0) return step = 1; max_result_level = 3; arr_result = [];
if (currPool.step) {
if (stepPoolIndex >= currPool.stepCount.length) {
stepPoolIndex = 0
}
var countThis = currPool.stepCount[stepPoolIndex];
total_num = total_num + count;
total_diamond_num = total_diamond_num + countThis * 30;
stepPoolIndex = stepPoolIndex + 1;
} else {
total_num = total_num + count; total_diamond_num = total_diamond_num + count * 30;
}
setTimeout(function() {
// $("#window_area").css("background-color", "transparent");
clickWindow();
}, 100)
// var obj_result_area = document.getElementsByClassName("result_area")[0]; // obj_result_area.style = "display:none;background-color:#FFFFFF;" // obj_result_area.innerHTML = "";
getRoles(count);
}
function initPool(index) { try {
if (pools.length > index) {
currPool = pools[index];
} else {
currPool = pools[0];
}
} catch (e) {
if (e.message == 'pools is not defined') {
setTimeout(() => {
initPool(index)
}, 1000)
}
}
poolName = currPool.name; poolRoleTyels = currPool.roleType; numStep = []; stepPoolIndex = 0;
var numCurr = 0; poolRoleTyels.forEach(item => {
numCurr = numCurr + item.num; numStep.push(numCurr.toFixed(2))
})
$('#pool_title').html(poolName);
if (currPool.btn_1) {
$('#btn_start_1').css("display", "block")
} else {
$('#btn_start_1').css("display", "none")
}
if (currPool.btn_10) {
$('#btn_start_10').css("display", "block")
} else {
$('#btn_start_10').css("display", "none")
} if (currPool.btn_50) {
$('#btn_start_50').css("display", "block")
} else {
$('#btn_start_50').css("display", "none")
} if (currPool.btn_100) {
$('#btn_start_100').css("display", "block")
} else {
$('#btn_start_100').css("display", "none")
} }
function initFunc() {
$(document).ready(function() {
var queryString = window.location.search;
var urlParams = new URLSearchParams(queryString);
var poolIndex = urlParams.get("index") || 0;
initPool(poolIndex)
for (var i = 0; i < pools.length; i++) {
var poolThis = pools[i];
var $button = $('
class: 'btn_change_pool',
text: poolThis.name,
"index": i
}).on('click', function() {
var dataIndex = $(this).attr("data-index");
var url = new URL(window.location.href);
url.searchParams.set("index", dataIndex);
window.location.href = url.href;
});
$button.attr("data-index", i);
$('.change_pool').append($button);
}
$('#btn_start_1').on("click", function() {
clickStart(1)
});
$('#btn_start_10').on("click", () => {
clickStart(10)
});
$('#btn_start_50').on("click", () => {
clickStart(50)
});
$('#btn_start_100').on("click", () => {
clickStart(100)
});
$('#window_area').on("click", () => {
clickWindow()
});
});
}
initFunc()