MultiMessage:マルチメッセージスクリプトについての詳細情報です。
制御文字は文章を直接制御する識別子です。文中に何度でも使用できます。 大文字小文字どちらでも認識します。
(ただし、一部には事実上1回しか使えないものもあります。)
| 制御文字 | 名前 | 出力例 | 説明 |
|---|---|---|---|
| \v[n] | 数値変数 | - | (※RGSS/RGSS2標準)数値変数の値を取得します。\v[\v[n]]のような書き方もできます。 |
| \d[cn] | データベース呼び出し | ![]() | データベースから名前を取得します。アイコンも取得します。 取得できなかった場合は空文字を返します。 一文字目は次のようになります。 i (Item) :アイテム w ('W'eapon):武器 a ('A'rmor) :防具 s ('S'kill) :スキル e ('E'nemy) :敵キャラ t ('T'roop) :敵グループ c ('C'lass ):職業 p ('P'lace) :場所 カスタマイズポイントで色を指定した場合は色付きで表示されます。 例:\d[e24] #-> ID24番の敵キャラの名前を表示します。 |
| \n[n] | アクター | (※RGSS/RGSS2標準)アクターの名前を取得します。 カスタマイズポイントで色を指定した場合は色付きで表示されます。 | |
| \c[n] | 文字色 | (※RGSS/RGSS2標準)文字色を指定します。実際の文字色はウィンドウスキンに依存します。(VX) XP版では指定してあります。(15色) | |
| \g | ゴールドウィンドウ | - | (※RGSS/RGSS2標準)ゴールドウィンドウを表示します。 |
| \. | 1/4秒ウェイト | - | (※RGSS2標準)1/4秒待機します。 |
| \: | 1/2秒ウェイト | - | 1/2秒待機します。 |
| \| | 1秒ウェイト | - | (※RGSS2標準)1秒待機します。 |
| \! | 入力待ち | - | ボタンの入力を待ちます。 |
| \> | 瞬間表示開始 | - | (※RGSS2標準)瞬間表示を開始します。瞬間表示終了までの間を一気に表示します。 |
| \< | 瞬間表示終了 | - | (※RGSS2標準)瞬間表示を終了します。 |
| \^ | メッセージ終了 | - | (※RGSS2標準)メッセージを終了します。この前にはウェイトを置くことが推奨されます。マルチウィンドウの場合、ウィンドウは撤去されません。この制御文字以後の文章は無視されます。 |
| \b | 太字 | 文字を太字にします。もう一度指定すると太字を解除します。 | |
| \i | 斜体 | 文字を斜体にします。もう一度指定すると斜体を解除します。 | |
| \k | 影付き文字 | 影つき文字を付ける、もしくは解除します。 | |
| \o[n] | 透明度 | 指定された透明度を文字に適用します。0 ~ 255 の間で指定します。 ただし、64以下は、意図的でない限り読みにくくなるので注意してください。 | |
| \r[w,r] | ルビ文字 | 指定された文字列にルビをふります。最初の指定が文字列、次の指定がルビとなります。多用した場合、ルビが衝突する場合もありますので多用するときは注意してください。 例: \r[齎,もたら]す | |
| \s[n] | スペース | - | 指定したピクセル分スペースを空けます。 |
| \f[n] | 書体 | カスタマイズポイントで指定した文字書体を適用します。 | |
| \w[n] | メッセージ表示速度 | - | メッセージを表示する速度を指定します。値が大きくなるほど表示が遅くなります。 |
| \t | インデント | - | 現在の位置をインデントに設定します。 |
| \L[n] | ライン | - | 現在の行から下線を指定したピクセル分引きます。 |
| \z[n] | 文字の大きさ | 文字の大きさを指定します。10 ~ 95 の間で指定します。小さい文字の場合は、意図的でない限り読みにくくなります。 なお、大きすぎる文字はウィンドウに収まらなくなる事がありますので注意してください。 | |
| \u | 下線 | 文字に下線を付けます。もう一度指定すると下線を取り消します。 | |
| \d | 打ち消し線 | 文字に打ち消し線を付けます。もう一度指定すると解除します。 | |
| \h | かすれ字 | 文字をかすれ字に設定します。もう一度指定すると解除します。この指定は描画するのに時間がかかります。大きな文字や同時出力での使用は極力避けてください。 | |
| \y[f,i] | 顔グラフィック変更 | ![]() ![]() ![]() | 顔グラフィックを変更します。タイミングで切り替えが出来るので表情を表すのにとても効果的です。インデックスは9番目以降も認識します。なお、顔グラフィックの切り替えには6フレーム(60FPSで1/10秒)を要します。 例:\y[Actor1,2] #-> ファイルActor1 の 2番目の顔グラフィックを表示します。 ※日本語のファイル名は極力避けてください。認識しない恐れがあります。 |
| \@ | メッセージウィンドウ撤去 | - | メッセージの表示を終了し、メッセージウィンドウを撤去します。この制御文字の前にウェイトを置く事を推奨します。 この制御文字以後の文章は無視されます。 |
| \a[c,n] | アニメーション再生 | ![]() | 指定したキャラクターにアニメーションを再生します。 c: -1 を指定するとプレイヤー、0 ならこのイベント、それ以外ならイベントID指定です。 n :再生するアニメーションIDです。 |
| \?[c,n] | ふきだし | ![]() | 指定したキャラクターにふきだしを表示します。 c: -1 を指定するとプレイヤー、0 ならこのイベント、それ以外ならイベントID指定です。 n:ふきだしの指定は次の通りです。 1:びっくり 2:はてな 3:音符 4:ハート 5:怒り 6:汗 7:くしゃくしゃ 8:沈黙 9:電球 10:Zzz ※VX版のみ |
| \e[f,v,p] | SEの再生 | - | SEを再生します。 f :ファイル名を指定します。 v :SEのボリュームを(1 ~ 100)の間で指定します。 p:SEのピッチを(50~150)の間で指定します。 |
| \%[n] | アイコン | - | アイコンを表示します。 |
| \x[p,t] | ゲームパッド振動 | - | ゲームパッドを振動させます。強さを 1~100の間で、時間を1~1000の間(1/100秒)で指定します。 ※この制御文字を使用するには、Input-Ex 入力拡張・ゲームパッド振動対応スクリプトの導入が必要です。 |
| \n | 改行 | - | メッセージの改行を行います。(※分岐のときは使わないでください。おかしな結果になる恐れがあります。) |
| \\ | \出力 | - | (※RGSS/RGSS2標準)\の文字に置き換わります。 |
これらは行ごとに指定する制御文字です。大文字小文字どちらでも認識します。
| 制御文字 | 名前 | 説明 |
|---|---|---|
| _LT | 左揃え | メッセージを左揃えにします。ページの最後に達するか、新たに指定されるまで有効です。 特に指定していないときもこの指定になります。 |
| _CT | 中央揃え | メッセージを中央揃えにします。ページの最後に達するか、新たに指定されるまで有効です。 |
| _RT | 右揃え | メッセージを右揃えにします。ページの最後に達するか、新たに指定されるまで有効です。 |
初期化文字は、メッセージを実際に表示する前に制御しておくための識別子です。これは一回の文中にそれぞれ1回だけ使う事が出来ます。(2個以上設置した場合、そのまま描画されます。)
なお、位置は制御文字と異なり、行をまたぐような書き方をしない限り、文章の中で何処に書いても構いません。
初期化文字は大文字小文字ともに認識しますが、一部は大文字小文字で動作が異なります。
会話モードに入り、アクターの名前を表示します。 カスタマイズポイントで色を指定した場合は色付きで表示されます。
会話モードに入り、任意に設定した名前を表示します。 カスタマイズポイントで色を指定した場合は色付きで表示されます。 制御文字も有効です。
会話モードで使用する名前を対応する番号と併せて記録します。 後述する_NL<n>で引き出すことができます。 制御文字も有効です。
実際の記述は次の通りです。
_n56<魔王> : この例では、56番目に名前「魔王」を記録します。
記録は、シーンを抜けるまで有効です。
前述の_n(N)<s>記録した名前を引き出し、会話モードに入ります。
指定したファイルの顔グラフィックを表示します。 インデックスは、9番目以降も認識します。 顔グラフィックのファイルは、/Graphics/pictures に入れてください。
登録されたファイルの顔グラフィックを表示します。 インデックスは、9番目以降も認識します。
顔グラフィックを消去します。
通常時のウィンドウの位置を設定します。 0:上 1:中 2:下 です。
ウィンドウの背景を指定します。 0:通常 1:暗くする 2:透明(XP版では、0:通常、1:透明)
選択肢後に入れる文字列を指定します。選択肢または選択肢を内包しない場合は無効となります。
選択肢内に入れて使えますが、選択肢を内包して使うことを推奨します。
メッセージのポップアップを指定します。
t:上1キャラ分空き T:上接触 b:下1キャラ分空き B:下接触 l:左側1キャラ分空き L:左接触 r:右側1キャラ分空き R:右接触
nはイベントID毎の指定です。 0を指定するとこのイベントから、-1を指定するとプレイヤーからポップアップされます。
メッセージのポップアップを指定し、通常のふきだしを表示します。
t:上1キャラ分空き T:上接触 b:下1キャラ分空き B:下接触 l:左側1キャラ分空き L:左接触 r:右側1キャラ分空き R:右接触
nはイベントID毎の指定です。 0を指定するとこのイベントから、-1を指定するとプレイヤーからポップアップされます。
メッセージのポップアップを指定し、思考しているふきだしを指定します。
t:上1キャラ分空き T:上接触 b:下1キャラ分空き B:下接触 l:左側1キャラ分空き L:左接触 r:右側1キャラ分空き R:右接触
nはイベントID毎の指定です。 0を指定するとこのイベントから、-1を指定するとプレイヤーからポップアップされます。
メッセージを任意の場所に設置します。 左上が基点です。
なお、はみ出す場合は自動的に補正されます。
ポップアップを解除し、通常のウィンドウに戻します。
アイテムセレクトのウィンドウを表示します。 他の初期化文字、制御文字などは無視されます。
結果は、WFRGSS_MultiMessage::ITEM_SELECT_VALIABLE に代入されます。
アイテム: ID 武器: ID + 1000 防具: ID + 2000
キャンセルした場合は、 0 が代入されます。
ここではカスタマイズポイントの設定項目を説明します。
メッセージウィンドウの数を指定します。 ここで指定した以外に選択肢、数値入力のウィンドウも用意されます。
メッセージウィンドウのフェードインアウトの指示を行います。 この指定を行うと、メッセージはフェードインまたはフェードアウトされ、瞬間表示になります。(最後のウェイトは有効です。)
選択肢をメッセージウィンドウに内包させたいときに、指定します。 ここで指定したスイッチがONのとき、選択肢はメッセージウィンドウに内包されます。
数値入力をメッセージウィンドウに内包させたいときに、指定します。 ここで指定したスイッチがONのとき、 数値入力はメッセージウィンドウに内包されます。
ポップアップ時のふきだし画像を指定します。 この機能を使わない場合は、空文字か、nilを指定してください。
※ウィンドウスキンを編集している場合、添付されているファイルの編集が必要な場合があります。
ウィンドウIDの切り替えを行う変数を指定します。ここで指定したIDを切り替えることで使用するウィンドウを切り替えることができます。なお、イベントが終了すると、自動的に0が代入されます。
ポップアップでないときの最小の高さを指定します。
アイテムセレクトで結果を受け取る変数を指定します。
制限時間を代入する数値変数を指定します。単位は秒単位です。
メッセージのタイムアウトが発生したときにONになるスイッチを指定します。 このスイッチは、制限時間が代入されると、自動的にスイッチOFFになります。
バトル時に機能制限を加えます。これはデフォルト戦闘での制限によるものです。 バトル画面を大幅にカスタマイズしたり、自作するときは、falseに指定してください
フォントの大きさの初期値を指定します
文字の縦幅の初期値を指定します。
フォントの書体を指定します。この指定が、制御文字\f[n]に影響します。
顔グラフィックの大きさを指定します。 VX準拠の顔グラフィックを使用する場合は、96に指定します。
顔グラフィックのオフセットを指定します。 この値と顔グラフィックの値がインデントされます。
顔グラフィックを登録します。 顔グラフィックのファイルは、/Graphics/pictures に入れてください。
# n => "facepic" ,
FACESETS = { 0 => "Actor1", 1 => "Actor2" , 2 => "Actor3",
9999 => "end" }
会話モードでの名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
アクターの名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
アイテムの名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
武器の名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
防具の名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
スキルの名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
敵キャラの名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
敵グループの名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
職業の名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
場所の名前の色を指定します。色はウィンドウスキン依存です。 負の値を指定すると、色を指定しなくなります。
バックログの最大高さをピクセル数で指定します。 通常は、152 * [最大履歴数] を推奨します。
バックログの最大履歴数を指定します。
バックログのキーを指定します。Input の定数で指定してください。
バックログのウィンドウ透明度を指定します。
多分岐のフラグIDを代入する数値変数の値です。 フラグID は、0~99まで使用できます。
この値を0にした場合、フラグIDは常に0を使用します
キャンセルの動作を指定します。 0の場合は、キャンセルは働きません。 1以上で選択肢数以下の場合は、選択肢のデフォルトを指定します。 選択肢数より多い場合は分岐させます。
この値を0にした場合、多分岐で常にキャンセルが働かなくなります。
選択したとき、減少させる数値変数のIDおよび、 残りの選択肢数を取得する数値変数のIDを指定します。
減少するまたはマスクする選択肢がいらない場合は、 0を指定してください。
減少する選択肢を使用する場合、指定は次のように行います。
[残りの選択肢数を取得する数値変数] × 10000 + [減少させる数値変数のID]
IDが与えられないか、無効の場合は、常にすべての選択肢が出現します。 詳しくは、多分岐の減少する選択肢を参照してください。
この指定がされていると、残りの選択肢が1つ以下になったとき、自動で分岐されます。 キャンセル分岐はカウントされないので注意してください
ここでは会話モードとスクリプトの取り扱い方を説明します。
会話モードでは、次の文字列に対し、自動的にウェイトを入れ、 より手軽に会話を表現するモードです。
次の文字列は、1/4秒ウェイトを入れます。
、,…‥
次の文字列は、キー入力待機を入れます。
。
文末の。にはキー入力待機を入れません。
選択肢を内包したときは、会話モードが無効となります。ご注意ください。
スクリプトを使用することで、ウィンドウの撤去や同時または大量の文章が表示できるようになります。(イベントが終了する時、特に指示しなくてもウィンドウはすべて撤去されます。)
in :なし out: 2 ~ 6 (Fixnum)
メッセージのスピードを取得します。値が小さいほど速くなります。 標準速度は、4です。
これはRGSS内でコンフィグ化することを推奨します。
in :2 ~ 6 (Fixnum) out:----
メッセージのスピードを代入します。値が小さいほど速くなります。 標準速度は、4です。
これはRGSS内でコンフィグ化することを推奨します。
現在のメッセージウィンドウの撤去を行います。
なお、このスクリプトは直接実行するとデバッグ時に困る事になるので、 コモンイベント化することを強く推奨します。 (こうすると、修正の手間が最小限になります。)
現在のメッセージウィンドウ以外の撤去を行います。
なお、このスクリプトは直接実行するとデバッグ時に困る事になるので、 コモンイベント化することを強く推奨します。 (こうすると、修正の手間が最小限になります。)
すべてのメッセージウィンドウの撤去を行います。
なお、このスクリプトは直接実行するとデバッグ時に困る事になるので、 コモンイベント化することを強く推奨します。 (こうすると、修正の手間が最小限になります。)
このモードに入ると、同時・大量出力モードに入ります。 この間に文章を入れても文章が出力されずに溜められます。 もう一度実行すると溜めていたメッセージを一気に出力します。 これは、同時に複数のメッセージウィンドウを出したり、 大量の文章の入力を一度に表示したいときに使用します。
なお、このスクリプトは直接実行するとデバッグ時に困る事になるので、 コモンイベント化することを強く推奨します。 (こうすると、修正の手間が最小限になります。)
溜め込んでいたメッセージを分岐とみなして多分岐を生成します。 同時・大量出力モードに入っていないときに指定すると、 例外 RuntimeErrorが発生します
分岐数は、縦の行数に依存します。
このスクリプトは直接実行する必要があります。 コモンイベント化するとラベルを見つけられなくなる恐れがあります。
ここではマルチメッセージスクリプトで使用する素材規格について説明します。
※透過PNGに対応していないブラウザ(MSIE6など)では表示が狂う事があります。ご容赦ください。
このイメージは、実際のものよりかなり大きく拡大しています。実際の素材は、64×64ピクセルです。
ここでは多分岐の生成方法と取り扱い方を説明します。
多分岐を生成するには、次のようにします。
例) 選択肢1 選択肢2 選択肢3 選択肢4 選択肢5 選択肢6 選択肢7 選択肢8
多分岐の分岐先は、ラベルで次のように指定します
[flagで指定した値]:[選択肢(0より開始されます)] ※いずれも数値2桁です。 例) 00:00 (フラグID 0番の最初の選択肢
選択肢の数だけラベルを用意する必要があります。 キャンセル分岐がある場合は、選択肢の数+1のラベルが必要となります。 ラベルが見つからない場合は、例外RuntimeErrorが発生します。
減少する選択肢を使用するには、 MULTIPLE_CHOICE_REDUCTION を指定します。 選択したとき、減少させる数値変数のIDおよび、 残りの選択肢数を取得する数値変数のIDを指定します。 指定は次のように行います。
[残りの選択肢数を取得する数値変数] × 10000 + [減少させる数値変数のID]
残りの選択肢数は、残った選択肢の数を代入します。
減少させる数値変数は30ビットの配列とみなして、出現させる選択肢を指定します。 0で出現し、1で出現しなくなります。 最下位ビット(LSB)が最初の選択肢と対応します。 すべて出現させるには、0 を指定しておきます。極力入力値は正数にしてください。
何度か選択した後に消去する場合は、その選択肢にカウンタを設けて、 条件が満たされるまで巻き戻す (減少させる数値変数のIDの中身を以前の構成に戻す)処理が必要になります。
000000000000000000000000010101 3番目の選択肢が選ばれた場合…
↓
000000000000000000000000010001 このように巻き戻すと3番目の選択肢が再び出現する
応用として、最初は出現させない選択肢は予めマスクしておくことも可能です。 ※この場合、選択された選択肢が新たにマスクされるので注意が必要です
残り選択肢が1つの場合、 REDUCTION_NO_CHOICE の指定により、 自動で分岐するかが決定されます。
次の場合、多分岐は有効です。
次の場合、通常の条件分岐を使うべきです。