Greasy Fork

来自缓存

Greasy Fork is available in English.

蔚蓝BINGO翻译

2019-10-10 一键翻译脚本

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

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

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

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

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

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

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

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

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

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

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

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

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

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

// ==UserScript==
// @name              蔚蓝BINGO翻译
// @namespace         https://github.com/kuailemario/Celeste_Trans.git
// @version           0.1.4
// @icon              http://www.mattmakesgames.com/images/games/Celeste1.png
// @description       2019-10-10 一键翻译脚本
// @author            zyowo, elderFish, DemoJameson, Hyun.
// @supportURL        https://github.com/kuailemario/Celeste_Trans/issues
// @match             *://www.bingosync.com/room/*
// @match             *://bingosync.com/room/*
// @run-at            document-end
// @grant             unsafeWindow
// @grant             GM_setClipboard
// ==/UserScript==

$(document).ready(function () {
  var targetDom = $('#bingo-chat').closest('.panel').children('.panel-heading');
  var trsBtn = '<span id="transBtn" class="btn btn-default btn-xs pull-right collapse-button" data-lang="cn">显示中文</span>';

  var rollTranslate = {
    // [新] 第9章 由其他任务修改而来
    "15 Berries in 4 Chapters":                          "第9章 踩8不同鱼",          // 9-2 一个人
    "Complete 5 B-Sides":                                "第9章 炸8不同鱼",          // 9-2 一个人
    "Use 10 Binoculars":                                 "第9章 消除8不同水母",      // 9-3 能源
    "All Collectibles in 3A":                            "9-3/能源 清除五门",        // 9-3 能源
    "All Berries in Awake (1)":                          "第9章 假心",              // 9-5 视界线
    "All Collectibles in 5A":                            "第9章 通过所有节奏面",      // 9-7 倔强
    "All Collectibles in 7A":                            "9-6/决心 踩5冰球",         // 9-6 决心(吹风面)
    "Get a 1-Up in 3 Chapters":                          "第9章 抓15不同位置鸟",     // 9-8 和谐(抓鸟面)
    "Use 5 Binoculars in B-Sides":                       "第9章 月莓",               // 9-9 再见
    "Use 6 Binoculars in B-Sides":                       "第9章 3望远镜",

 
    // [新] 杂项 由其他任务修改而来
    "Talk to Theo in Crossing":                         "2A 1冲刺到镜子对话",
    "Talk to Theo in Awake":                            "8B 抱Badeline",
    "75 Berries":                                       "5A 破坏7不同墙",
    "100 Berries":                                      "4A 破坏6不同墙",
    "Hit a Kevin block from all 4 sides":               "红泡泡内破坏5不同墙",
    "Grabless 5A":                                      "3金草莓",
    "Grabless 6A":                                      "5金草莓",
    "Visit the Bird's Nest in Epilogue":                "8A 踩10冰球",
    "Talk to Old Lady in Core":                         "8B 踩10冰球",
    "Use 8 Binoculars":                                 "6A 撞15不同位置Badeline",
    "Use 9 Binoculars":                                 "6B 撞10不同位置Badeline",
    "Use 3 Binoculars in 2 Chapters":                   "7B 通过0米+500米",
    "Use 2 Binoculars in 3 Chapters":                   "7B 通过1000米+1500米",
    "Use 2 Binoculars in 4 Chapters":                   "7B 通过2000米+2500米",

    // 其他杂项
    "Read the Poem in Awake":                           "2A-3/唤醒 读诗词",
    "Take hidden path before Cliff Face":               "在 4A-3/古道 最后一面走隐藏路线",
    "Don't skip final 4A Cutscene":                     "4A 不跳过结尾剧情",
    "No shortcut in 5A double bubble room":             "5A 用钥匙开第二扇门",
    "Get 1 Key in Search":                              "5A-4/搜寻 1钥匙",
    "Get 2 Keys in Search":                             "5A-4/搜寻 2钥匙",
    "Get 3 Keys in Search":                             "5A-4/搜寻 3钥匙",
    "Easteregg room in Reflection":                     "6A 进彩蛋房",
    "Reflection Cutscene in Hollows":                   "6-3/洞穴 支线对话",
    "Only top route in Hollows":                        "6-3/洞穴 全走上面",
    "Only bottom route in Hollows":                     "6-3/洞穴 全走下面",
    "All Flags in 3000M":                               "7A 3000米碰所有旗子",

    // 分检查点草莓
    "All Berries in Start of 1A (6)":                   "1A-1/开始 6草莓",
    "All Berries in Crossing (9)":                      "1A-2/十字路口 9草莓",
    "All Berries in Chasm (5)":                         "1A-3/峡谷 5草莓",
    //----------------------------------------------------------------
    "All Berries in Start of 2A (9)":                   "2A-1/开始 9草莓",
    "All Berries in Intervention (8)":                  "2A-2/干涉 8草莓",
    //----------------------------------------------------------------
    "All Berries in Start of 3A (11)":                  "3A-1/开始 11草莓",
    "All Berries in Huge Mess (7)":                     "3A-2/乱七八糟 7草莓",
    "All Berries in Elevator Shaft (4)":                "3A-3/电梯井 4草莓",
    "All Berries in Presidential Suite (3)":            "3A-4/总统套房 3草莓",
    //----------------------------------------------------------------
    "All Berries in Start of 4A (8)":                   "4A-1/开始 8草莓",
    "All Berries in Shrine (9)":                        "4A-2/神迹 9草莓",
    "All Berries in Old Trail (7)":                     "4A-3/古道 7草莓",
    "All Berries in Cliff Face (5)":                    "4A-4/悬崖峭壁 5草莓",
    //----------------------------------------------------------------
    "All Berries in Start of 5A (12)":                  "5A-1/开始 12草莓",
    "All Berries in Depths (11)":                       "5A-2/深渊 11草莓",
    "All Berries in Unraveling (1)":                    "5A-3/豁然开朗 1草莓",
    "All Berries in Search (6)":                        "5A-4/搜寻 6草莓",
    "All Berries in Rescue (1)":                        "5A-5/营救 1草莓",
    //----------------------------------------------------------------
    "All Berries in 0M (4)":                            "0米 4草莓",
    "All Berries in 500M (6)":                          "500米 6草莓",
    "All Berries in 1000M (6)":                         "1000米 6草莓",
    "All Berries in 1500M (8)":                         "1500米 8草莓",
    "All Berries in 2000M (8)":                         "2000米 8草莓",
    "All Berries in 2500M (8)":                         "2500米 8草莓",
    "All Berries in 3000M (7)":                         "3000米 7草莓",
    //----------------------------------------------------------------
    "All Berries in Into the Core (1)":                 "8A-2/深入腹地 1草莓",
    "All Berries in Hot and Cold (3)":                  "8A-3/冰火两重天 3草莓",
    "All Berries in Heart of the Mountain (1)":         "8A-4/山之心 1草莓",

    // 分章节草莓
    "10 Berries in 1A":                                 "1A 10草莓",
    "10 Berries in 2A":                                 "2A 10草莓",
    "15 Berries in 3A":                                 "3A 15草莓",
    "15 Berries in 4A":                                 "4A 15草莓",
    "20 Berries in 4A":                                 "4A 20草莓",
    "15 Berries in 5A":                                 "5A 15草莓",
    "20 Berries in 5A":                                 "5A 20草莓",
    "20 Berries in 7A":                                 "7A 20草莓",
    "35 Berries in 7A":                                 "7A 35草莓",

    // 多章节草莓
    "5 Berries in 4 Chapters":                          "四个章节 各5草莓",   // 20
    "5 Berries in 5 Chapters":                          "五个章节 各5草莓",   // 25
    "15 Berries in 2 Chapters":                         "两个章节 各15草莓",  // 30
    "10 Berries in 3 Chapters":                         "三个章节 各10草莓",  // 30
    "10 Berries in 4 Chapters":                         "四个章节 各10草莓",  // 40
    "15 Berries in 3 Chapters":                         "三个章节 各15草莓",  // 45
    "10 Berries in 5 Chapters":                         "五个章节 各10草莓",  // 50

    // 累计草莓
    "20 Berries":                                       "20草莓",
    "25 Berries":                                       "25草莓",
    "30 Berries":                                       "30草莓",
    "35 Berries":                                       "35草莓",
    "40 Berries":                                       "40草莓",
    "45 Berries":                                       "45草莓",
    "50 Berries":                                       "50草莓",
    "65 Berries":                                       "65草莓",
    //----------------------------------------------------------------
    "2 Winged Berries":                                 "2飞行草莓",
    "3 Winged Berries":                                 "3飞行草莓",
    "4 Winged Berries":                                 "4飞行草莓",
    "5 Winged Berries":                                 "5飞行草莓",
    "6 Winged Berries":                                 "6飞行草莓",
    "7 Winged Berries":                                 "7飞行草莓",
    //----------------------------------------------------------------
    "2 Seeded Berries":                                 "2种子草莓",
    "3 Seeded Berries":                                 "3种子草莓",
    "4 Seeded Berries":                                 "4种子草莓",

    // PICO-8
    "Complete PICO-8":                                  "PICO-8 Any%",
    "Reach Old Site in PICO-8":                         "PICO-8 跑到旧址",
    "Get the Orb in PICO-8":                            "PICO-8 拿到双冲",
    //----------------------------------------------------------------
    "Get 5 Berries in PICO-8":                          "PICO-8 5草莓",
    "Get 10 Berries in PICO-8":                         "PICO-8 10草莓",
    "Get 15 Berries in PICO-8":                         "PICO-8 15草莓",

    // 蓝心
    "Forsaken City Blue Heart":                         "1A 蓝心",
    "Old Site Blue Heart":                              "2A 蓝心",
    "Celestial Resort Blue Heart":                      "3A 蓝心",
    "Golden Ridge Blue Heart":                          "4A 蓝心",
    "Mirror Temple Blue Heart":                         "5A 蓝心",
    "Reflection Blue Heart":                            "6A 蓝心",
    "The Summit Blue Heart":                            "7A 蓝心",
    //----------------------------------------------------------------
    "1 Blue and 1 Red Heart":                           "1枚蓝心+1枚红心",
    "2 Blue and 2 Red Hearts":                          "2枚蓝心+2枚红心",
    "3 Blue and 3 Red Hearts":                          "3枚蓝心+3枚红心",
    //----------------------------------------------------------------
    "Blue and Red Heart in Forsaken City":              "第1章 蓝心+红心",
    "Blue and Red Heart in Old Site":                   "第2章 蓝心+红心",
    "Blue and Red Heart in Celestial Resort":           "第3章 蓝心+红心",
    "Blue and Red Heart in Golden Ridge":               "第4章 蓝心+红心",
    "Blue and Red Heart in Mirror Temple":              "第5章 蓝心+红心",
    "Blue and Red Heart in Reflection":                 "第6章 蓝心+红心",
    "Blue and Red Heart in The Summit":                 "第7章 蓝心+红心",

    // 磁带
    "Forsaken City Cassette":                           "1A 磁带",
    "Old Site Cassette":                                "2A 磁带",
    "Celestial Resort Cassette":                        "3A 磁带",
    "Golden Ridge Cassette":                            "4A 磁带",
    "Mirror Temple Cassette":                           "5A 磁带",
    "Reflection Cassette":                              "6A 磁带",
    "The Summit Cassette":                              "7A 磁带",
    //----------------------------------------------------------------
    "2 Cassettes":                                      "2张磁带",
    "3 Cassettes":                                      "3张磁带",
    "4 Cassettes":                                      "4张磁带",
    "5 Cassettes":                                      "5张磁带",
    
    // 水晶之心
    "2 Hearts":                                         "2水晶之心",
    "3 Hearts":                                         "3水晶之心",
    "4 Hearts":                                         "4水晶之心",
    "5 Hearts":                                         "5水晶之心",
    "6 Hearts":                                         "6水晶之心",
    "7 Hearts":                                         "7水晶之心",
    "2 Hearts and 2 Cassettes":                         "2水晶之心+2磁带",
    "3 Hearts and 3 Cassettes":                         "3水晶之心+3磁带",
    "4 Hearts and 4 Cassettes":                         "4水晶之心+4磁带",

    // 全收集
    "All Collectibles in 1A":                           "1A 全部收集品",
    "All Collectibles in 2A":                           "2A 全部收集品",
    "All Collectibles in 4A":                           "4A 全部收集品",
    "All Collectibles in 8A":                           "8A 全部收集品",

    // 通关
    "Forsaken City B-Side":                             "通关1B",
    "Old Site B-Side":                                  "通关2B",
    "Celestial Resort B-Side":                          "通关3B",
    "Golden Ridge B-Side":                              "通关4B",
    "Mirror Temple B-Side":                             "通关5B",
    "Reflection B-Side":                                "通关6B",
    "The Summit B-Side":                                "通关7B",
    "Clear Core":                                       "通关8A",
    "Talk to Theo in Elevator Shaft":                   "通关8C",   // 已经修改
    "Talk to Theo in Search":                           "通关7C",   // 已经修改

    // 累计通关
    "Complete 2 B-Sides":                               "2个B面",
    "Complete 3 B-Sides":                               "3个B面",
    "Complete 4 B-Sides":                               "4个B面",
    "Complete 2 A-Sides and 2 B-Sides":                 "2个A面+2个B面",
    "Complete 3 A-Sides and 3 B-Sides":                 "3个A面+3个B面",
    "Complete 5 A-Sides":                               "5个A面",
    "Find Letter and PICO-8 in Huge Mess":              "3个C面",       // 已经修改
    "Complete 1 B-Side":                                "5个C面",       // 已经修改

    // 望远镜
    "Use 2 Binoculars in 2 Chapters":                   "两个章节 各2望远镜",
    "Use 1 Binocular in 3 Chapters":                    "三个章节 各1望远镜",
    "Use 1 Binocular in 4 Chapters":                    "四个章节 各1望远镜",
    "Use 1 Binocular in 5 Chapters":                    "五个章节 各1望远镜",
    "Use all Binoculars in 4A (3)":                     "4A 3望远镜",
    //----------------------------------------------------------------
    "Use 5 Binoculars":                                 "5望远镜",
    "Use 6 Binoculars":                                 "6望远镜",
    "Use 7 Binoculars":                                 "7望远镜",
    //----------------------------------------------------------------
    "Use 3 Binoculars in B-Sides":                      "B面 3望远镜",
    "Use 4 Binoculars in B-Sides":                      "B面 4望远镜",

    // 无抓
    "Grabless 1A":                                      "1A 无抓",
    "Grabless 2A":                                      "2A 无抓",
    "Grabless 3A":                                      "3A 无抓",
    "Complete 2 Chapters Grabless":                     "两个章节 无抓",
    //----------------------------------------------------------------
    "Grabless Huge Mess (3A Checkpoint)":               "3A-2/乱七八糟 无抓通过",
    "Grabless Elevator Shaft (3A Checkpoint)":          "3A-3/电梯井 无抓通过",
    "Grabless Presidential Suite (3A Checkpoint)":      "3A-4/总统套房 无抓通过",
    "Grabless Cliff Face (4A Checkpoint)":              "4A-4/悬崖峭壁 无抓",
    "Grabless Depths (5A Checkpoint)":                  "5A-2/深渊 无抓通过",
    "Grabless Unraveling (5A Checkpoint)":              "5A-3/豁然开朗 无抓通过",
    "Grabless Search (5A Checkpoint)":                  "5A-4/搜寻 无抓通过",
    "Grabless Rescue (5A Checkpoint)":                  "5A-5/营救 无抓通过",
    "Grabless Lake (6A Checkpoint)":                    "6A-2/湖 无抓通过",
    "Grabless Hollows (6A Checkpoint)":                 "6A-3/洞穴 无抓通过",
    "Grabless Rock Bottom (6A Checkpoint)":             "6A-5/谷底 无抓通过",

    // 1-Up
    "Get a 1-Up in 1A":                                 "1A 1-Up",
    "Get a 1-Up in 2A":                                 "2A 1-Up",
    "Get a 1-Up in 4A":                                 "4A 1-Up",
    "Get a 1-Up in 5A":                                 "5A 1-Up",
    "Get a 1-Up in 2 Chapters":                         "两个章节 各1-Up",
    "Get two 1-Ups":                                    "两个 1-Up",
    "Get three 1-Ups":                                  "三个 1-Up",

    // 宝石
    "0M and 500M Gems":                                 "0米+500米宝石",
    "1000M and 1500M Gems":                             "1000米+1500米宝石",
    "2000M and 2500M Gems":                             "2000米+2500米宝石",
    //----------------------------------------------------------------
    "3 Gems in The Summit":                             "第7章 3宝石",
    "4 Gems in The Summit":                             "第7章 4宝石",
    "5 Gems in the Summit":                             "第7章 5宝石",

    // Oshiro
    "Stun Oshiro 10 times":                             "踩10次Oshiro",
    "Stun Oshiro 15 times":                             "踩5不同房间Oshiro",    // 已修改
    "Stun Oshiro 25 times":                             "踩8不同房间Oshiro",   // 已修改

    // 雪球
    "Jump on 8 Snowballs":                              "踩8雪球",
    "Jump on 15 Snowballs":                             "踩15雪球",
    "Jump on 20 Snowballs":                             "踩5不同房间雪球",      // 已修改

    // 新浪
    "Kill a Seeker":                                    "杀1新浪",
    "Kill 2 different Seekers":                         "杀2不同新浪",
    "Stun Seekers 10 times":                            "踩10新浪",
    "Stun Seekers 20 times":                            "踩至少3新浪共20次",    // 已修改 by云
    "Stun Seekers 30 times":                            "踩至少5新浪共30次",    // 已修改 by云

    // Theo 对话类只需要交互一下
    "2 optional Theo Cutscenes":                        "2个可不触发的Theo对话",
    "3 optional Theo Cutscenes":                        "3个可不触发的Theo对话",
    "All 4 optional Theo Cutscenes":                    "4个可不触发的Theo对话",

    // 无冲刺
    "Winged Golden Berry":                              "1A隐藏金",
    "Complete Crossing without dashing":                "1A-2/十字路口 无冲刺通过",
    "Complete Chasm without dashing":                   "1A-3/峡谷 无冲刺通过",
    "Complete Awake without dashing":                   "2A-3/唤醒 无冲刺通过",
    
    // 第三章:天空度假山庄
    "Huge Mess: Chest -&gt; Books -&gt; Towel":         "3A 柜子-书-毛巾",
    "Huge Mess: Books -&gt; Chest -&gt; Towel":         "3A 书-柜子-毛巾",
    "Huge Mess: Towel -&gt; Chest -&gt; Books":         "3A 毛巾-柜子-书",
    "Huge Mess: Chest -&gt; Towel -&gt; Books":         "3A 柜子-毛巾-书",
    "Huge Mess: Books -&gt; Towel -&gt; Chest":         "3A 书-毛巾-柜子",
    "Huge Mess: Towel -&gt; Books -&gt; Chest":         "3A 毛巾-书-柜子",
    //----------------------------------------------------------------
    "Read Diary in Elevator Shaft":                     "3A-3/电梯井 读日记",
  };
  targetDom.append(trsBtn);

  function initLang() {
    $(".text-container").each(function () {
      var enStr = $(this).html();
      // console.log(enStr)
      $(this).attr('data-lang-en', enStr)
      if (rollTranslate[enStr]) {
        $(this).attr('data-lang-cn', rollTranslate[enStr])
      } else {
        $(this).attr('data-lang-cn', enStr)
      }
    });
    $('#transBtn').attr('data-inited', true)
    doTrans($('#transBtn').attr('data-lang'))
  }

  var targetLang;
  var transing = false;

  function doTrans(lang) {
    targetLang = lang;
    var arlang = targetLang == 'cn' ? 'en' : 'cn'
    $('#transBtn').html(targetLang == 'cn' ? '显示英文' : '显示中文')
    $(".text-container").each(function () {
      $(this).html($(this).attr('data-lang-' + targetLang))
    });
    $('#transBtn').attr('data-lang', arlang)

    transChat();
  }

  function resetTrsBtn(){
    $('#transBtn').attr('data-inited', 'false').attr('data-lang', 'cn').html('显示中文')
  }

  function transChat() {
    transing = true;
    $(".goal-name").each(function () {
      if(!$(this).attr('data-lang-en')){
          $(this).attr('data-lang-en', $(this).text());
      }

      if(targetLang == 'cn'){
          $(this).text(rollTranslate[$(this).text().replace(/>/g, "&gt;")]);
      } else {
          $(this).text($(this).attr('data-lang-en'));
      }
    });
    transing = false;
  }

  $('#transBtn').click(function () {
    if ($(this).attr('data-inited') != 'true') {
      initLang()
    } else {
      doTrans($(this).attr('data-lang'))
    }
  })

  $(document).ajaxComplete(function (event, xhr, settings) {
    if (settings.url.indexOf('room-settings') >= 0) {
      console.log('card rebuild!')
      resetTrsBtn()
    }
  });

$('body').on('DOMNodeInserted', '.goal-entry', function(e) {
    if(transing){
        return;
    }
    transChat();
});

})