「RPGツクールMZ」が発売されましたね!めでたい
今回もMVに引き続き、Javascriptで書かれたコアスクリプトが提供されています。というわけで、コアスクリプトに対するTypeScript用の型定義ファイルをさわりだけ、本当に最低限だけ作ってみました。
最低限なのであまり使いこまないでね。めちゃ使いづらかったりバグも出るだろうし、いつの間にかぼくのコミットが続いて完全に別物になってるかもしれないので……
これはRPGツクールMZのコアスクリプト(javascript)を元に、 dtsmake
を使って型定義ファイルを生成し、エラーの無いように一部修正したものです。
dtsmakeの実行をラクにしたかった
本題は、とりあえず dtsmake
で最初の型定義ファイルを作るところまでをやってくれるソフトウェアを作ったので、みんなも型定義書いてみてね(そしてぼくが合流する)、というところです。
最初の型定義ファイルまでやってくれるアプリのリポジトリがこれです:
こちらはC#で書かれています。
完全にRPGツクールMZ用で、dtsmakeを使用するような別のシナリオで使えるものではないです。
つかいかた概略
READMEにも書いてありますが、実行の際には以下のものをインストールしておく必要があります。
- RPGツクールMZ (体験版でもいけるかも)
- .NET Core 3.1
- TypeScript
-
dtsmake
(と、そのために必要なtern
)
TypeScript, dtsmake, tern は npm (node.jsのやつ) 経由でインストールできます。
まずはREADMEの手順に従って型定義ファイルを作っていただいたとして、その型定義ファイルは不完全で実用には耐えないため、手動で整えてあげる必要があります。
そうしたら、適切な場所に型定義ファイルを配置します。 <ゲームフォルダ>/node_modules/@types
フォルダに、生成された *.d.ts
ファイルたちを配置します。これにより型定義ファイルどうしで型定義を互いに参照するようになってくれます。
その後はとにかく手書きで型定義を整えてあげます。頑張ってください!ぼくも頑張ります。
おわりに
まだ誰も型定義ファイルを作っている様子が無かったので(そりゃそうだ)、とりあえず最初の一歩を踏み出すためのソフトを作った次第です。
ここで紹介した rmmz-dtsmake-run
を使うもよし、自前で型定義を生成するもよし、ともかくTypeScriptでガリガリとプラグインを書ける日を目指して誰か頑張ってくれないかな~と思っています。
ぼくも自分のリポジトリにて型定義ファイルをガリガリ書いていきますが、なにぶんTypeScript初心者なので、TypeScriptに慣れている方が同じことをしている最中だったらそちらに合流したいところです……。 やってるよ!という方がいらっしゃれば頑張ってコミットしてみたいので、ぜひご一報ください。