JavaScript 未経験者向けガイド
(全体的にほぼ未推敲)
風呂のコマンドは、JavaScript(に似た言語)で記述します。ただし、このページでは JavaScript を極力学ばずにコマンドを書く方法をごく簡単にですが解説します。
キャラクターコマンドの編集ボタンは、キャラクター編集モーダルの右下の方にあります。キャラクターコマンドは、キャラクターコマもしくは立 ち絵コマを右クリックしたときに出るメニューから実行できます(将来、他の実行方法を提供するかもしれません)。
コマンド編集ウィンドウが開いたら、コマンドを新規作成します。そうするとコマンドを書き込むことができるようになります。
キャラクター名の変更
例えばキャラクター名を山田太郎に変更するコマンドの全文は下のようになります。
character.name = '山田太郎';
実際にcharacterを入力しようとしてみるとオートコンプリートメニューが出ることと、character.まで打つと様々な選択肢がメニューとして出てくるのが確認できると思います。メニューが表示されているときにキーボードの上下を押して Enter を押すと、自動入力されます。この機能を使うと打ち間違いが少な くコマンドを記述できるので便利です。また、これらのメニューの右端あたりにカーソルを合わせると>のようなマークが出てきますが、これをクリックすると各選択肢の解説が表示されます。これはドキュメント代わりになるので有用だと思います。
話を元に戻して、この JavaScript の大まかな意味ですが、「character.nameに山田太郎という文字列を代入する」といった感じになります。
"山田太郎"は山田太郎という文字列を表します。文字列はstringとも呼ばれ、先程のメニューにもname: stringのような文字を確認できると思います。これは name の値の種類が文字列であることを示します。文字列は string ということは知っておくとコマンドを書く上で役立つと思います。
"山田太郎"の左右の"は中身が文字列だということを示す記号です。そのため、このコマンドを実行すると、このキャラクターの名前は"山田太郎"ではなく山田太郎になります。ここで、もし例えばやっと"風呂"に入ることができるのように"という文字が含まれる文字列を書く場合は、"やっと\"風呂\"に入ることができる"のように\を用いてエスケープします。
文字列は、"ではなく'などで囲んでも問題ありません。
数値
'山田太郎'で山田太郎という文字列を表すことを学びましたが、100や-10や3.14のように書くことで数値を表すことができます。数値はnumberとも呼ばれます。JavaScript においては、数値と文字列は基本的には異なる値として扱われます。例えば100は数値ですが、'100'は文字列であり、これらは等しくありません1ので注意してください。
なお、先程のコマンドですが、もし文字列の代わりに下のように数値を代入しようとするとエラーとなります。これは、character.name は文字列のみを受け付けるため、数値などは代入できないからです。
character.name = 100;
真偽値
文字列、数値の仲間に真偽値というものもあります。真偽値はbooleanとも呼ばれます。真偽値はtrueとfalseの 2 つのみです。
文字列、数値、真偽値の他にも様々な種類の型がありますが、ここでは解説しません。
キャラクター画像の変更
例えばキャラクター画像をhttps://example.com/foo.pngに変更するコマンドの全文は下のようになります。
character.icon = { sourceType: 'Default', path: 'https://example.com/foo.png' };
また、例えばキャラクター画像を Firebase Storage の/version/1/uploader/user-name/bar.pngというファイルに変更するコマンドの全文は下のようになります。なお、/version/1/uploader/user-name/bar.pngに相当する文字列は、アップローダーを開いてファイルの右のほうにあるメニュー開閉ボタンをクリックしパスをクリップボードにコピーから取得できます。
character.icon = {
sourceType: 'FirebaseStorage',
path: '/version/1/uploader/user-name/bar.png',
};
どちらの書き方も初見で完全に覚えるのは困難だと思いますが、オートコンプリート機能の助けを借りれば完全に覚えなくても書けるかなと思います。
path は任意の文字列を指定できます。sourceType のほうはDefaultかFirebaseStorageのいずれかの文字列である必要があります。
この記法は、ファイルを変更する命令において原則として共通です。例えばキャラクターの立ち絵を変更するコマンドは下のようになります。
character.portrait = {
sourceType: 'Default',
path: 'https://example.com/foo.png',
};
character.portrait = {
sourceType: 'FirebaseStorage',
path: '/version/1/uploader/user-name/bar.png',
};
画像の他に BGM などでもこの記法は使われます。
パラメーターの変更
(書きかけ)
例えばこのコマンドで HP という名前の数値パラメーターの値を 2 増やせます。HP という名前の数値パラメーターが作られていない場合は何も起こりません。
character.numberParameters.incrementValue('HP', 2);
incrementValue の他にもいろいろあります。ただ、find は JavaScript 習得者向けの関数なのであまりおすすめできないかも(厳密なことを言うとこれは関数ではなくてメソッドだと思うが話がややこしくなるので以下略)。
numberParameters の他に maxNumberParameters と booleanParameters と stringParameters もあります。