简易抽卡模拟器:修订间差异

更新日期: 2025-01-04  最新编辑:木丶阿伦

无编辑摘要
无编辑摘要
标签已被回退
第1行: 第1行:
<div class="ck_main_area">
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: '温格特'}];
        <!-- <div class="window_area" id="window_area">
var roles_5 = [
            <div class="img_ring ring_0" id="ring_0">[[File:db_ck_ring0.jpg|link=]]</div>
    {
            <div class="img_ring ring_1" id="ring_1">[[File:db_ck_ring1.jpg|link=]]</div>
    name: '洁卡莉特Ex'
            <div class="img_ring ring_2" id="ring_2">[[File:db_ck_ring2.jpg|link=]]</div>
},
            <div class="result_area">
{
            </div>
    name: '亚芬'
         </div> -->
},
         <div class="btns_area">
{
            <div class="title" id="pool_title"></div>
    name: '乌·鲁代'
            <div class="btn_start" id="btn_start_1">抽卡</div>
},
            <div class="btn_start" id="btn_start_10">抽卡*10</div>
{
            <div class="btn_start" id="btn_start_50">抽卡*50</div>
    name: '泰蕾兹'
            <div class="btn_start" id="btn_start_100">抽卡*100</div>
},
         </div>
{
         <div class="all_Result"></div>
    name: '莱欧尼尔'
         <div class="tips"><div class="tips">当前功能为测试版</div><div class="tips">实际抽卡概率请以游戏内为准</div></div>
},
         <div class="">切换至其他卡池</div>
{
         <div class="change_pool"></div>
    name: '海茵特'
     </div>
},
      
{
     {{#css:
    name: '普里姆萝洁'
      
},
         .ck_main_area * {
{
             margin: 0;
    name: '赛拉斯'
             padding: 0;
},
             color: #000000;
{
    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
         }
         }
      
     ]
         .ck_main_area {
},
            width: 100%;
{
            margin: auto;
    name: "历战的旅人们",
            padding: 0;
    btn_1: true,
            color: #000000;
    btn_10: false,
             max-width: 800px;
    btn_50: false,
             min-width: 350px;
    btn_100: false,
             min-height: 220px;
    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;
         }
         }
        .ck_main_area .title{
    }
            text-align: center;
    // var result = JSON.parse(JSON.stringify(arrRolesThis[random_index]));
        }
     result.maxStar = 5;
        .ck_main_area .change_pool{
     result.thisStar = 5;
            cursor:pointer;
     if (max_result_level < 5) {
            text-decoration: underline;
         max_result_level = 5;
        }
    }
   
     arr_result.push(result);
      
     if (result.isUp) {
        .ck_main_area * {
        up_num = up_num + 1;
            box-sizing: border-box;
         arr_ups.push(result)
        }
     } else {
      
         other_num = other_num + 1;
        .ck_main_area .window_area {
         arr_not_ups.push(result);
            width: 100%;
    }
            aspect-ratio: 800/ 500;
} else {
            background-color: #000000;
     var result_num = Math.floor(Math.random() * 1000) / 10.0;
            position: relative;
    for (var i = 0; i < numStep.length; i++) {
        }
        var thisStep = numStep[i];
      
         if (result_num < thisStep) {
         .ck_main_area .window_area .img_ring {
             var roleTypeThis = poolRoleTyels[i];
            width: 100%;
             var arrRolesThis = roleTypeThis.roles;
            height: 100%;
             var random_index = Math.floor(Math.random() * arrRolesThis.length);
            position: absolute;
             var result = JSON.parse(JSON.stringify(arrRolesThis[random_index]));
            left: 0;
             result.maxStar = roleTypeThis.maxStar;
            top: 0;
             result.thisStar = roleTypeThis.thisStar;
            display: none;
             if (max_result_level < roleTypeThis.thisStar) {
        }
                 max_result_level = roleTypeThis.thisStar;
      
        .ck_main_area .window_area .img_ring.ring {
            animation: ring_in;
            animation-duration: 3s;
            /* animation-timing-function: cubic-bezier(0.075, 0.82, 0.165, 1); */
            animation-timing-function: linear;
            animation-fill-mode: forwards;
            position: absolute;
            left: 0;
            top: 65px;
            display: none;
        }
      
        .ck_main_area .window_area .img_ring img {
            width: 100%;
            aspect-ratio: 800 / 500;
         }
      
         .ck_main_area .window_area .result_area {
            width: 100%;
            height: 100%;
            padding: 0 20px 20px 20px;
            background-color: #FFFFFF;
            background-size: 100% 100%;
            background-repeat: no-repeat;
            animation: window_white;
            animation-duration: 2s;
            animation-timing-function: linear;
            animation-fill-mode: forwards;
            display: none;
            flex-direction: row;
            align-items: center;
            flex-wrap: wrap;
            justify-content: center;
            overflow: hidden;
        }
   
         .ck_main_area .window_area .result_area .role_area {
            width: 18%;
            aspect-ratio: 130 / 190;
            padding-top: 10px;
            margin: 2px;
            text-align: center;
            font-size: 12px;
            line-height: 20px;
            position: relative;
        }
   
        .ck_main_area .window_area .result_area .role_area .text {
            text-align: left;
            margin-left: 10px;
            white-space: nowrap;
            overflow: hidden;
            text-overflow: ellipsis;
            line-height: 16px;
        }
   
        .ck_main_area .window_area .result_area .role_area .img {
            width: 100%;
            aspect-ratio: 1;
        }
      
        .ck_main_area .window_area .result_area .role_area .img_xs {
            position: absolute;
            right: 0;
            bottom: 0;
            width: 50%;
            height: auto;
         }
   
        .ck_main_area .btns_area {
             display: flex;
             flex-direction: row;
            justify-content: space-around;
             align-items: center;
        }
   
        .ck_main_area .btns_area .btn_start {
            cursor: pointer;
             width: 120px;
            text-align: center;
             padding: 4px 0;
            margin-bottom: 10px;
            margin-top: 10px;
            border: 4px solid #000000;
        }
   
        .ck_main_area .all_Result {
            width: 100%;
            font-size: 12px;
            text-align: center;
             min-height: 54px;
        }
   
        .ck_main_area .tips {
            color: gray;
             font-size: 12px;
            text-align: center;
        }
   
        @keyframes ring_in {
            0% {
                 left: 0px;
                scale: 0;
             }
             }
   
            arr_result.push(result);
             100% {
 
                 left: 140px;
             if (roleTypeThis.isUp && result.maxStar == 5 && result.thisStar == 5) {
                 scale: 1;
                 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
         }
         }
      
     }
         @keyframes window_white {
}
             0% {
 
                 opacity: 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
                })
             }
             }
   
        })
             100% {
        var arrNotUpRoles = [];
                 opacity: 1;
        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星角色';
         }
         }
     @media screen and (max-width: 600px) {
        obj_all_result.innerHTML = "<div>" + "本次抽卡" + total_num + "次,消费" + total_diamond_num + "钻石" +
     .ck_main_area .window_area .result_area .role_area .text {
            "</div>" +
     font-size: 8px !important;
            "<div>" + strUps + "</div>" +
     margin-left:0;
            // "抽到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);
     }
     }
     }}
 
      
 
     {{ResourceLoader|MediaWiki:Db_role_data.js|isModuleES6=true}}
 
     {{ResourceLoader|MediaWiki:Ck_main_mini.js|isModuleES6=true}}
    $('#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 = "

" + "本次抽卡" + total_num + "次,消费" + total_diamond_num + "钻石" + "

" + "

" + "抽到5星角色" + other_num + '次,4.5星角色' + other_half_num + '次' + "

";

   } 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 = "

" + "本次抽卡" + total_num + "次,消费" + total_diamond_num + "钻石" + "

" + "

" + strUps + "

" + // "抽到5星当期UP角色" + up_num + "次,4.5星当期UP角色" + up_half_num + "次" + // "

其他5星角色" + // other_num + '次,其他4.5星角色' + other_half_num + '次' + "

" + "

" + strNotUps + "

";

   }
   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 + "

" + "
" + objThis.name + "
" + "
";
   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 + "
" + "<img class='img' src='" + img_lh + "'/>" + "<img class='img_xs' src='" + img_xs + "' />" + "

"

}


$(".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()