打开/关闭菜单
打开/关闭外观设置菜单
打开/关闭个人菜单
未登录
未登录用户的IP地址会在进行任意编辑后公开展示。

用户:RedDragon/Test2:修订间差异

来自Rizline中文维基
RedDragon
RedDragon留言 | 贡献 (新增冲突配置;新增below;增加mod无限制和观赏;)
第36行: 第36行:
     </tbody>
     </tbody>
</table>
</table>
<script>
<script>
     document.addEventListener('DOMContentLoaded', function () {
     document.addEventListener('DOMContentLoaded', function () {
第245行: 第244行:
         var speeds = Array(40).fill("无限制").concat(Array.from({ length: 91 }, function (_, i) { return (i + 10) / 10 }))
         var speeds = Array(40).fill("无限制").concat(Array.from({ length: 91 }, function (_, i) { return (i + 10) / 10 }))
         // 随机流速
         // 随机流速
         document.getElementById('speed-data').textContent = speeds[Math.floor(Math.random() * speeds.length)]
         var selectedSpeed = speeds[Math.floor(Math.random() * speeds.length)]
        // 随机难度
        var selectedDifficulty = window.difficultyArray[Math.floor(Math.random() * window.difficultyArray.length)]


         // 随机难度
         // 流速难度显示
         document.getElementById('difficulty-data').innerHTML = window.difficultyArray[Math.floor(Math.random() * window.difficultyArray.length)]
         document.getElementById('speed-data').textContent = selectedSpeed
        document.getElementById('difficulty-data').innerHTML = selectedDifficulty


         // MOD权重配置
         // MOD权重配置
第320行: 第322行:
             var maxAttempts = 20
             var maxAttempts = 20


             while (selectedItems.length < count && weightedOptions.length > 0 && maxAttempts > 0) {
             while (maxAttempts > 0) {
                maxAttempts--
                if (selectedItems.length < count) {
                    if (weightedOptions.length > 0) {
                        maxAttempts--


                var randomIndex = Math.floor(Math.random() * weightedOptions.length)
                        var randomIndex = Math.floor(Math.random() * weightedOptions.length)
                var candidate = weightedOptions[randomIndex]
                        var candidate = weightedOptions[randomIndex]
                var canAdd = true
                        var canAdd = true


                for (var j = 0; j < selectedItems.length; j++) {
                        for (var j = 0; j < selectedItems.length; j++) {
                    var selectedItem = selectedItems[j]
                            var selectedItem = selectedItems[j]
                    if (candidate.exclude) {
                            if (candidate.exclude) {
                        if (candidate.exclude.includes(selectedItem)) {
                                if (candidate.exclude.includes(selectedItem)) {
                             canAdd = false
                                    canAdd = false
                             break
                                    break
                                }
                             }
                            var selectedOption = availableOptions.find(function (opt) { return opt.name === selectedItem })
                            if (selectedOption) {
                                if (selectedOption.exclude) {
                                    if (selectedOption.exclude.includes(candidate.name)) {
                                        canAdd = false
                                        break
                                    }
                                }
                             }
                         }
                         }
                    }
 
                    var selectedOption = availableOptions.find(function (opt) { return opt.name === selectedItem })
                        if (canAdd) {
                    if (selectedOption) {
                            selectedItems.push(candidate.name)
                         if (selectedOption.exclude) {
                            weightedOptions = weightedOptions.filter(function (opt) { return opt.name !== candidate.name })
                             if (selectedOption.exclude.includes(candidate.name)) {
                         } else {
                                canAdd = false
                             weightedOptions.splice(randomIndex, 1)
                                break
                            }
                         }
                         }
                    } else {
                        break
                     }
                     }
                }
                if (canAdd) {
                    selectedItems.push(candidate.name)
                    weightedOptions = weightedOptions.filter(function (opt) { return opt.name !== candidate.name })
                 } else {
                 } else {
                     weightedOptions.splice(randomIndex, 1)
                     break
                 }
                 }
             }
             }
第367行: 第377行:
     function updateRestrictionElement(elementId, items) {
     function updateRestrictionElement(elementId, items) {
         var element = document.getElementById(elementId)
         var element = document.getElementById(elementId)
         if (items.length === 1) {
         if (items.length == 1) {
             element.textContent = items[0]
             element.textContent = items[0]
         } else {
         } else {
第377行: 第387行:
         var belowElement = document.querySelector('.infobox-below')
         var belowElement = document.querySelector('.infobox-below')
         var belowText = ""
         var belowText = ""
       
        var difficultyStr = typeof difficulty === 'string' ? difficulty : difficulty.outerHTML || ''


         if (mods.length === 1) {
         if (mods.length == 1) {
             if (mods[0] === "观赏模式") {
             if (mods[0] == "观赏模式") {
                 belowText = "WOW奖励关!"
                 belowText = "WOW奖励关!"
             }
             }
         }else if (difficulty.includes('EZ')) {
         } else if (difficulty.includes('EZ')) {
             if (speed === "无限制") {
             if (speed == "无限制") {
                 if (mods.length === 1) {
                 if (mods.length == 1) {
                     if (mods[0] === "无限制") {
                     if (mods[0] == "无限制") {
                         if (others.length === 1) {
                         if (others.length == 1) {
                             if (others[0] === "无限制") {
                             if (others[0] == "无限制") {
                                 belowText = "最简单的一集"
                                 belowText = "最简单的一集"
                             }
                             }
第394行: 第406行:
                 }
                 }
             }
             }
         }else if (difficulty.includes('AT')) {
         } else if (difficulty.includes('AT')) {
             belowText = "这么强?!"
             belowText = "这么强?!"
         }
         }

2025年10月23日 (四) 00:33的版本

曲目
限制
难度 a
流速 b
MOD c
其他 d

神秘的随机挑战!

Ver.1.6

{{Infobox
|name = 随机挑战
|title = 曲目
|titlestyle = background:#ccc
|image = [[File:插画图标.png|100px]]
|headerstyle = background:#ccf
|labelstyle = background:#ddf

|header1 = 限制
|label2 = 难度
|data2 = a
|label3 = 流速
|data3 = b
|label4 = MOD
|data4 = c
|label5 = 其他
|data5 = d

|belowstyle = background:#ddf;
|below = e

}}

User:RedDragon/Test User:RedDragon/Test1 User:RedDragon/Test2