Futaba Dice Ex

ふたばのダイスの出目に説明を追加するためのスクリプトです。(デフォルトでは東方キャラダイス)

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Greasemonkey 油猴子Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Violentmonkey 暴力猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴Userscripts ,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展,例如 Tampermonkey 篡改猴,才能安装此脚本。

您需要先安装一款用户脚本管理器扩展后才能安装此脚本。

(我已经安装了用户脚本管理器,让我安装!)

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展,比如 Stylus,才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

您需要先安装一款用户样式管理器扩展后才能安装此样式。

(我已经安装了用户样式管理器,让我安装!)

// ==UserScript==
// @name         Futaba Dice Ex
// @namespace    https://www.2chan.net/
// @version      1.1
// @description  ふたばのダイスの出目に説明を追加するためのスクリプトです。(デフォルトでは東方キャラダイス)
// @author       ふたばとしあき
// @match        http://*.2chan.net/*
// @grant        none
//jQueryのロード
// @require      http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js
// ==/UserScript==

(function() {
    'use strict';
  //---------------------------------------------------------------ここから設定-------------------------------------------------------------------
    //表示形態 option=0で併記 1で上書き 2でマウスオーバー で表す
    var option = 0;
    //適用範囲 firstが何個目から適用するか countが何回適用するか count=0の場合全部適用
    var first = 1;
    var count = 1;
    //対応リスト
    var assign = {
        0:"",
        1:"八雲藍",
        2:"八意永琳",
        3:"寅丸星",
        4:"レイセン",
        5:"本居小鈴",
        6:"姫海棠はたて",
        7:"十六夜咲夜",
        8:"洩矢諏訪子",
        9:"九十九弁々",
        10:"パチュリー・ノーレッジ",
        11:"今泉影狼",
        12:"水橋パルスィ",
        13:"宮古芳香",
        14:"純狐",
        15:"蓬莱山輝夜",
        16:"伊吹萃香",
        17:"小悪魔",
        18:"橙",
        19:"アリス・マーガトロイド",
        20:"レミリア・スカーレット",
        21:"ドレミー・スイート",
        22:"多々良小傘",
        23:"ルナチャイルド",
        24:"森近霖之助",
        25:"リリカ・プリズムリバー",
        26:"東風谷早苗",
        27:"秋静葉",
        28:"因幡てゐ",
        29:"封獣ぬえ",
        30:"豊聡耳神子",
        31:"四季映姫・ヤマザナドゥ",
        32:"永江衣玖",
        33:"八坂神奈子",
        34:"星熊勇儀",
        35:"フランドール・スカーレット",
        36:"綿月豊姫",
        37:"大妖精",
        38:"西行寺幽々子",
        39:"紅美鈴",
        40:"宇佐見菫子",
        41:"犬走椛",
        42:"ナズーリン",
        43:"射命丸文",
        44:"八雲紫",
        45:"稀神サグメ",
        46:"比那名居天子",
        47:"古明地さとり",
        48:"古明地こいし",
        49:"赤蛮奇",
        50:"黒谷ヤマメ",
        51:"ルナサ・プリズムリバー",
        52:"スターサファイア",
        53:"少名針妙丸",
        54:"上海人形",
        55:"メディスン・メランコリー",
        56:"物部布都",
        57:"ヘカーティア・ラピスラズリ",
        58:"メルラン・プリズムリバー",
        59:"蘇我屠自古",
        60:"九十九八橋",
        61:"二ッ岩マミゾウ",
        62:"ルーミア",
        63:"秋穣子",
        64:"霍青娥",
        65:"魂魄妖夢",
        66:"上白沢慧音",
        67:"レティ・ホワイトロック",
        68:"風見幽香",
        69:"清蘭",
        70:"わかさぎ姫",
        71:"小野塚小町",
        72:"鈴瑚",
        73:"朱鷺子",
        74:"綿月依姫",
        75:"火焔猫燐",
        76:"霊烏路空",
        77:"鈴仙・優曇華院・イナバ",
        78:"雲居一輪",
        79:"秦こころ",
        80:"リリーホワイト",
        81:"鬼人正邪",
        82:"ミスティア・ローレライ",
        83:"幽谷響子",
        84:"聖白蓮",
        85:"藤原妹紅",
        86:"チルノ",
        87:"リグル・ナイトバグ",
        88:"マエリベリー・ハーン",
        89:"宇佐見蓮子",
        90:"霧雨魔理沙",
        91:"稗田阿求",
        92:"キスメ",
        93:"クラウンピース",
        94:"鍵山雛",
        95:"サニーミルク",
        96:"村紗水蜜",
        97:"河城にとり",
        98:"堀川雷鼓",
        99:"茨木華扇",
        100:"博麗霊夢",
        101:"エタニティラルバ",
        102:"坂田ネムノ",
        103:"高麗野あうん",
        104:"矢田寺成美",
        105:"丁礼田舞",
        106:"爾子田里乃",
        107:"摩多羅隠岐奈"
    };
    //---------------------------------------------------------------設定ここまで-------------------------------------------------------------------
    //こっから処理
    $("font[color='#ff0000']").each(function(){
        var pattern = /(\d+ )+\(\d+\)/g;
        var content = $(this).text();
        if( content.match(pattern) ) {
            var rolls = content.split(' ');
            var j;
            if(count === 0) {
                j = rolls.length - 1;
            } else {
                j = first + count - 1;
            }
            switch(option) {
                case 0:
                    for(let i = first - 1; i < j; i++){
                        rolls[i] = rolls[i] + '<font size="2" color="midnightblue">' + assign[rolls[i]] +'</font>';
                    }
                    $(this).html(rolls.join(" "));
                break;
                case 1:
                    for(let i = first - 1; i < j; i++){
                        rolls[i] = assign[rolls[i]];
                    }
                    $(this).html(rolls.join(" "));
                break;
                case 2:
                    for(let i = first - 1; i < j; i++){
                        rolls[i] = assign[rolls[i]];
                    }
                    $(this).attr("title", rolls.join(",").slice(0,-(rolls[rolls.length-1].length + 1)));
                break;
            }
        }
    });
})();