shadowlogcn

shadowlog翻译

当前为 2018-02-26 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name shadowlogcn
  3. // @description shadowlog翻译
  4. // @namespace http://tampermonkey.net/
  5. // @version 0.1
  6. // @description try to take over the world!
  7. // @author You
  8. // @match https://shadowlog.com/*
  9. // @grant none
  10. // ==/UserScript==
  11. let translateAll = (elements, translateTable) => {
  12. for (let ele of elements) {
  13. transferElementLang(ele, translateTable);
  14. }
  15. };
  16.  
  17. let transferElementLang = (ele, translateTable) => {
  18. let jp_terms = Object.keys(translateTable)
  19. .sort((a, b) => b.length - a.length);
  20.  
  21. for (let jp_term of jp_terms) {
  22. if (haveSubstring(ele.innerHTML, jp_term)) {
  23. let cht_term = translateTable[jp_term];
  24. ele.innerHTML = ele.innerHTML.replace(jp_term, cht_term);
  25. }
  26. }
  27. };
  28.  
  29. let haveSubstring = (str, sub_str) => {
  30. return str.indexOf(sub_str) !== -1;
  31. };
  32.  
  33. let titles = {
  34. '使用割合': '使用比率',
  35. '使用されたリーダー': '使用主战者',
  36. '使用デッキタイプ': '使用牌组',
  37. '使用数': '使用数',
  38. '勝利数': '胜利数',
  39. '自分のリーダー': '自己职业',
  40. '勝敗': '胜负',
  41. 'デッキタイプ': '胜利数',
  42. '相手のリーダー': '对手职业',
  43. '手番': '先后手',
  44. '対戦日時': '对战日期',
  45. '対戦形式': '对战形式',
  46. 'アンリミ': '无限',
  47. 'ローテ': '轮换',
  48. 'アンリミテッド': '无限',
  49. 'ローテーション': '轮换'
  50. };
  51.  
  52. let title = {
  53. 'アンリミテッド': '无限',
  54. 'ローテーション': '轮换'
  55. };
  56.  
  57. let classes = {
  58. 'ウィッチ':'巫师',
  59. 'ヴァンパイア': '吸血鬼',
  60. 'ヴァンプ': '吸血鬼',
  61. 'ネクロマンサー': '死灵法师',
  62. 'ネクロ': '死灵法师',
  63. 'エルフ': '精灵',
  64. 'ドラゴン': '龙族',
  65. 'ロイヤル': '皇家护卫',
  66. 'ビショップ': '主教',
  67. 'ネメシス': '复仇者'
  68. };
  69.  
  70. let decks = {
  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. 'OTKヴァンパイア': 'OTK 鬼',
  102. 'ヴァンパイア全般': '其他血鬼',
  103.  
  104. '疾走ビショップ': '疾走教',
  105. 'エイラビショップ': '奶教',
  106. 'イージスビショップ': '天盾教',
  107. 'エイラセラフビショップ': '天使奶敎',
  108. 'セラフビショップ': '天使教',
  109. 'コントロールビショップ': '控教',
  110. 'カウントビショップ': '盾教',
  111. '陽光ビショップ': '阳光教',
  112. '冥府ビショップ': '冥府教',
  113. 'ニュートラルビショップ': '中立教',
  114. '燭台ビショップ': '烛台教',
  115. 'レリアビショップ': '雷莉亞主教',
  116. 'ビショップ全般': '其他主教',
  117. '教会ビショップ': '教会',
  118. '聖杯ビショップ': '圣杯教',
  119.  
  120. 'ランプドラゴン': '跳费龙',
  121. '原初ドラゴン': '元祖龙',
  122. '疾走ランプドラゴン': '疾走跳费龙',
  123. 'フェイスドラゴン': '脸龙',
  124. '疾走ドラゴン': '疾走龙',
  125. 'OTKドラゴン': 'OTK 龙',
  126. 'ミッドレンジドラゴン': '中速龙',
  127. 'ディスカードドラゴン': '弃牌龙',
  128. 'ニュートラルドラゴン': '中立龙',
  129. 'サタンドラゴン': '撒旦龙',
  130. '庭園ドラゴン': '庭院龙',
  131. '竜爪ドラゴン': '龙爪龙',
  132. 'ドラゴン全般': '其他龙族',
  133.  
  134. 'ニュートラルエルフ': '中立妖',
  135. 'アグロエルフ': '速攻妖',
  136. '(OTK)コンボエルフ': 'OTK 妖',
  137. 'OTKエルフ': 'OTK 妖',
  138. '冥府エルフ': '冥府妖',
  139. 'コントロールエルフ': '控妖',
  140. '白狼エルフ': '白狼妖',
  141. '薔薇エルフ': '薔薇妖',
  142. '白銀エルフ': '银箭妖',
  143. 'エルフ全般': '其他精灵',
  144. 'テンポエルフ': '节奏妖',
  145. 'ミッドレンジエルフ': '中速妖',
  146.  
  147. 'ミッドレンジロイヤル': '中速皇',
  148. 'アグロロイヤル': '快皇',
  149. 'フェイスロイヤル': '脸皇',
  150. 'コントロールロイヤル': '控皇',
  151. 'ニュートラルロイヤル': '中立皇',
  152. '指揮官ロイヤル': '指挥官皇',
  153. '潜伏ロイヤル': '潜伏皇',
  154. '援護射撃ロイヤル': '炮皇',
  155. '御旗ロイヤル': '旗皇',
  156. 'カエルロイヤル': '蛙皇',
  157. '冥府ロイヤル': '冥府皇',
  158. 'ロイヤル全般': '其他皇家',
  159.  
  160. 'アーティファクトネメシス': '神器鱼',
  161. 'ネメシス全般': '其他复仇',
  162. 'ミッドレンジネメシス': '中速鱼',
  163. '操り人形ネメシス': '人偶鱼',
  164. 'コントロールネメシス': '控制鱼',
  165. 'クロノスネメシス': '时间神鱼',
  166. 'アグロネメシス': '速攻鱼'
  167. };
  168.  
  169. let ths = document.querySelectorAll('th');
  170. let match = document.querySelectorAll('.rankmatch-list');
  171. let bs = document.querySelectorAll('b');
  172. let spans = document.querySelectorAll('span');
  173. let options = document.querySelectorAll('option');
  174. let trs = document.querySelectorAll('tr');
  175.  
  176. translateAll(ths, titles);
  177. translateAll(match, title);
  178. translateAll(spans, classes);
  179. translateAll(bs, decks);
  180.  
  181. translateAll(options, decks);
  182. translateAll(options, classes);
  183.  
  184. translateAll(trs, titles);
  185. translateAll(trs, decks);
  186.