Typingtube拡張new02

・。・

目前為 2023-09-16 提交的版本,檢視 最新版本

// ==UserScript==
// @name         Typingtube拡張new02
// @license MIT
// @namespace    http://tampermonkey.net/
// @version      1.0
// @description  ・。・
// @author       つべ
// @match       https://typing-tube.net/movie/show*
// @icon         https://www.gEoogle.com/s2/favicons?sz=64&domain=typing-tube.net
// @grant        none
// ==/UserScript==
const mode = [1 ,1 ,1 ,1]
/*0 = 設定無効化, 1 = 設定有効化*/
/*動画を下に配置[0 | 1] ,指定場所までエンターでスクロール[0 | 1] ,KPM表示[0 | 1] ,達成可能スコア表示[0 | 1]*/

const scroll_n = -49;
/*指定場所までエンターでスクロールが有効のときのみ*/
/*スクロールの高さ調整。マイナスにすると上に、プラスにすると下に行きます。*/

if(mode[0]){
const YOUTUBE = document.getElementById("youtube-movie");
const TYPING_AREA = document.getElementById("controlbox");
YOUTUBE.parentNode.insertBefore(YOUTUBE,TYPING_AREA.nextSibling);
//動画下に表示  /*Toshi氏のを借用*/
}


function addElement(){
    document.getElementsByClassName('modal-content')[1].insertAdjacentHTML('beforeend',`<div class="modal-body" id="typing-line-list-container">
        </div>`);
}

function rank_hide(){
    document.getElementById('status').style.display = 'block'
    document.getElementById('ranking_roma').style.display = 'none'
    document.getElementById('ranking_kana').style.display = 'none'
    document.getElementById('ranking_flick').style.display = 'none'
};
document.addEventListener('keydown', (e) => {
    if(is_played){
        if(mode[2] || mode[3]){
            if(!document.getElementById('PS') && mode[3]){
                document.getElementById('score-value').insertAdjacentHTML("afterend",` <span id="PS" style="font-size: 0.7em; color: rgb(204, 153, 204);">0</span>`);
            }
            if(!document.getElementById('line-speed-kpm') && mode[2]){
                document.getElementById('line_remaining_time').insertAdjacentHTML("beforeend", ` - <span id="line-speed-kpm">0KPM</span>`);
            }
            document.addEventListener('keydown',()=>{
            if(mode[2]){
                    document.getElementById("line-speed-kpm").textContent = `${Math.floor(line_typingspeed * 60)}KPM`;
            }
            if(mode[3]){
                const possible_score = (200000 - escape_score)/2000
                document.getElementById("PS").textContent = Math.round(possible_score*100)/100;
            }
            });
        }
    }
    /* is_played*/
    if(e.code == 'Enter'){
        if(mode[1]){
        document.getElementById("gauge").scrollIntoView(true);
        scrollBy(0,scroll_n);
        }
        rank_hide();
    };
    if(e.code === 'F4'){addElement()}
});

document.getElementById('restart').addEventListener('click',addElement())