Last active
April 17, 2020 00:31
-
-
Save rmkane/049a399501377586171f59e740482257 to your computer and use it in GitHub Desktop.
Userscript : Gundam Build Divers - Episode Staff Translator
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// ==UserScript== | |
// @name Gundam Build Divers - Episode Staff Translator | |
// @namespace net.gundam-bd.story | |
// @version 1.0.1 | |
// @description Translates episode personel information | |
// @author rmkane | |
// @match http://www.gundam-bd.net/story/* | |
// @resource JQUERY_MODAL https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.2/jquery.modal.min.css | |
// @require https://cdnjs.cloudflare.com/ajax/libs/jquery/3.5.0/jquery.min.js | |
// @require https://cdnjs.cloudflare.com/ajax/libs/jquery-modal/0.9.2/jquery.modal.min.js | |
// @grant GM_addStyle | |
// @grant GM_getResourceText | |
// @grant GM_log | |
// ==/UserScript== | |
(function() { | |
/* global $ */ | |
'use strict'; | |
const modalSelector = '#ep-info-modal'; | |
const closeButtonImgData = 'data:image/png;base64,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'; | |
GM_addStyle(GM_getResourceText ('JQUERY_MODAL') + [ | |
`${modalSelector} > p {`, | |
` font-family: "GBDB", sans-serif;`, | |
` color: #000;`, | |
`}`, | |
`${modalSelector} > p > h1 {`, | |
` font-weight: bold;`, | |
` text-align: center;`, | |
` margin: 0.25em 0 0.5em 0;`, | |
' font-size: 1.67em;', | |
`}`, | |
`${modalSelector} > p > table {`, | |
` border: 2px solid #59D7D9;`, | |
` border-collapse: collapse;`, | |
` width: 100%;`, | |
` height: 100%;`, | |
`}`, | |
`${modalSelector} > p > table th,`, | |
`${modalSelector} > p > table td {`, | |
` padding: 0.5em;`, | |
`}`, | |
`${modalSelector} > p > table tbody td:first-child {`, | |
` vertical-align: top;`, | |
`}`, | |
/* Colors */ | |
`${modalSelector} > p > table thead th {`, | |
` background: #59D7D9;`, | |
`}`, | |
`${modalSelector} > p > table tbody tr:nth-child(even) {`, | |
` background: #D6FCFC;`, | |
`}`, | |
`${modalSelector} a.close-modal {`, | |
` background-image: url('${closeButtonImgData}')`, | |
`}` | |
].join('')); | |
const keyDict = { | |
"脚本" : "Script", | |
"絵コンテ" : "Storyboard", | |
"演出" : "Director", | |
"キャラクター作画監督" : "Character Designers", | |
"メカ作画監督" : "Mechanical Designers" | |
}; | |
const personelDict = { | |
"阿部宗孝" : "Munetaka Abe", | |
"阿久津潤一" : "Junichi Akutsu", | |
"海老川兼武" : "Kanetake Ebikawa", | |
"形部一平" : "Ippei Gyōbu", | |
"羽原信義" : "Nobuyoshi Habara", | |
"樋口達人" : "Tatsuto Higuchi", | |
"平岡雅樹" : "Masaki Hiraoka", | |
"イムガヒ" : "Im Ga-hee", | |
"石垣純哉" : "Junya Ishigaki", | |
"石井久美" : "Kumi Ishii", | |
"イシノアツオ" : "Atsuo Ishino", | |
"川原智弘" : "Tomohiro Kawahara", | |
"木村秀彬" : "Hideakira Kimura", | |
"小林寛" : "Hiroshi Kobayashi", | |
"小暮昌広" : "Masahiro Kogure", | |
"小谷杏子" : "Kyoko Kotani", | |
"児谷直樹" : "Naoki Kotani", | |
"小谷野竜成" : "Tatsunari Koyano", | |
"久藤瞬" : "Shun Kudō", | |
"久壽米木信弥" : "Shinya Kusumegi", | |
"松田寛" : "Hiroshi Matsuda", | |
"森木靖泰" : "Yasuhiro Moriki", | |
"むらせまいこ" : "Shūkō Murase", | |
"むとうやすゆき" : "Yasuyuki Mutō", | |
"中原れい" : "Rei Nakahara", | |
"中本尚子" : "Naoko Nakamoto", | |
"西澤晋" : "Susumu Nishizawa", | |
"重田智" : "Susumu Nishizawa", | |
"野崎真一" : "Shinichi Nozaki", | |
"大張正己" : "Masami Ōbari", | |
"大貫健一" : "Kenichi Ohnuki", | |
"大河原邦男" : "Kunio Okawara", | |
"大久保朋" : "Tomo Ōkubo", | |
"大槻敦史" : "Atsushi Ōtsuki", | |
"大嶋博之" : "Hiroyuki Oshima", | |
"斉藤香" : "Kaori Saito", | |
"斉藤哲人": "Tetsuhito Saito", | |
"斎藤哲人" : "Tetsuhito Saito", | |
"島田フミカネ" : "Humikane Shimada", | |
"しんぼくたろう" : "Takuro Shinbo", | |
"しんぼ たくろう" : "Takuro Shinbo", | |
"鈴木勘太" : "Kanta Suzuki", | |
"大籠之仁" : "Norihito Takahashi", | |
"高見明男" : "Akio Takami", | |
"高瀬健一" : "Kenichi Takase", | |
"寺岡巌" : "Iwao Teraoka", | |
"寺岡賢司" : "Kenji Teraoka", | |
"寺島慎也" : "Shinya Terashima", | |
"鳥羽聡" : "Satoshi Toba", | |
"戸井田珠里" : "Shuri Toida", | |
"富野由悠季" : "Yoshiyuki Tomino", | |
"宇田早輝子" : "Sakiko Uda", | |
"鷲尾直広" : "Naohiro Washio", | |
"綿田慎也" : "Shinya Watada", | |
"山田靖智" : "Yasunori Yamada", | |
"山根理宏" : "Masahiro Yamane", | |
"山崎克之" : "Katsuyuki Yamazaki", | |
"柳瀬敬之" : "Takayuki Yanase", | |
"ヤスカワショウゴ" : "Shogo Yasukawa", | |
"矢立肇" : "Hajime Yatate" | |
}; | |
let staffText = $('.c-story-box__staff p').text(); | |
let episodeInfo = staffText.split('/').reduce((obj, pair) => { | |
let tokens = pair.split(/\s*:\s*/); | |
return Object.assign(obj, { | |
[ keyDict[tokens[0]] ] : tokens[1].split('、').map(name => personelDict[name] ? personelDict[name] : name) | |
}); | |
}, {}); | |
// Create, add, and show the modal | |
$('<div>', { id : 'ep-info-modal', class : 'modal' }) | |
.append($('<p>') | |
.append($('<h1>', { text : 'Episode Staff' })) | |
.append(buildTable(episodeInfo))) | |
.append($('<a>', { href : '#', rel : 'modal:close', text : 'Close' })) | |
.appendTo('body') | |
.modal('show'); | |
/** | |
* Constructs a table element containing staff information. | |
* @param {object} info - The episode staff information | |
* @returns {HTMLTableElement} returns a jQuery-wrapped table element. | |
*/ | |
function buildTable(info) { | |
let fields = ['Role', 'Personel']; | |
let entries = Object.entries(info); | |
return $('<table>') | |
.append($('<thead>').append($('<tr>').append(fields.map(th => $('<th>').text(th))))) | |
.append('<tbody>').append(entries.map(pair => $('<tr>') | |
.append($('<td>', { text : pair[0] })) | |
.append($('<td>', { html : pair[1].join('<br>') })))); | |
} | |
})(); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment