RPGツクールMV で利用できるプラグインは、JS (JavaScript) ベースで Game Scripting System (JGSS) 環境上で動作します。これは JS 基本知識がある方が対象のプラグイン作成の入門資料っぽい何か、です。
4年ほど前に jgss-hack リポジトリ で公開した内容をもとに、今の環境用にリライトしてみました。これは第3回です。
RPGツクールMZ の発売を控えているので、その前にまとめておきたい、と焦っていたりします。なので内容薄目でごめんなさいw
関連リソース
RPGツクールMV プラグイン作成入門
- 簡単なプラグインを作成してみる
- 簡単なプラグインを拡張してみる
- プラグイン用テンプレートの更新【このページ】
今回の内容
第1回でご紹介したプラグインの元ファイル ですが、4年以上前ということもあり、いろいろ改善の余地がありました。(@elleonard_f さん、コメントありがとうございます!)
そこで今回は、MZ 発売前のまとめとして、現時点で私が使用している最新版をご紹介します。また簡単に説明したいとおもいます。
現在のテンプレート
以下がテンプレート用コードです。GitHub 上 にも置いてあります。
//=============================================================================
// RTK_Test2.js 2020/08/16
// The MIT License (MIT)
//=============================================================================
/*:
* @plugindesc Test Plugin 2
* @author Toshio Yamashita (yamachan)
*
* @help This plugin does not provide plugin commands.
* This is for the test purpose only. So, please rename for the production use.
*/
/*:ja
* @plugindesc テスト用プラグイン2
* @author Toshio Yamashita (yamachan)
*
* @help このプラグインにはプラグインコマンドはありません。
* テスト用に作成したものなので、実際に利用する場合には適当にリネームしてください
*/
(function(_global) {
"use strict";
var N = document.currentScript.src.replace(/^.*\/([^/]+)\.js$/, '$1');
var param = PluginManager.parameters(N);
// ここにプラグイン処理を記載
})(this);
説明テキストの多言語化
新しいテンプレートでは、英語と日本語の2種類の説明テキストを設定してあります。
ここでポイントとなるのは、以下の赤枠の ja
部分です。これは、この部分のコメントが「日本語」であることを示しています。
日本語環境で実行されている RPGツクールMV のプラグイン設定の画面では、この ja
が指定された日本語のテキストが優先して表示されます。
それ以外 (英語とか中国語とか) の環境では、特に言語指定のないテキスト、つまり上にある英語テキストが表示されます。
海外でもプラグインを使って貰えるチャンスだと思って、できれば英語のテキストも用意しておくと良いでしょう。
Strict モードの利用
Strict モード はエラーチェックが厳しくなるもので、関数単位で指定します。間違いを見つけやすくなりますし、より高速に実行できるようチェックしてくれますので、ぜひ積極的に利用していきましょう。
関数の最初にある "use strict";
文がこのための指定になります。
これは JavaScript として意味のある文ではありませんが、関数定義の最初にこの指定があることで、その関数内では Strict モードが有効になります。
プラグイン名の自動設定
さて、今回のテンプレートで一番複雑なのは、プラグイン名を設定している以下の部分ですね。
プラグインのファイル名から、拡張子を除いた名前 (今回だと RTK_Test2.js から RTK_Test2) を得たいだけなんですよね。
現在実行しているスクリプトのタグは Document.currentScript で得られます。その src 属性は以下の感じなので、
ここから 正規表現 で欲しい部分だけを抜き出しているわけです。なお元ネタはコメントでも紹介いただいた、尊敬する トリアコンタン さんの、こちらの情報 です。
パラメーター処理の準備
オマケとして、パラメーター処理の準備をしておきます。今回のテンプレートでは特に指定していませんが、まあ、実際にプラグイン作成する場合にはたいてい必要になりますよね。なので準備だけ。
なお実際のパラメーター処理なのですが、具体的な指定方法は プラグインパラメータのtypeまとめ を参照してみてください。(情報をいただいた @elleonard_f さん、こちらも感謝です!)
というわけで
だいぶ古くなっていた、そして当時の理解不足もあった、プラグインの基本テンプレートを更新してみました。自分の知識も整理できたので、RPGツクールMZ を迎える準備としては、やって良かったかな、とも思います。
それではまた!