らのべえここでは、SfLのメッセージウィンドウ設定コマンドを解説します。メッセージウィンドウの属性は非常に多岐にわたり複雑なので、使用頻度が低い機能については解説を割愛しています。メッセージ背景レイヤーと実際にメッセージが描画されるレイヤーの、2枚のレイヤーから構成されています。キー待ちのアニメーションが別のレイヤーで表示されたりしますが、概念的には2枚のレイヤーだと考えて構いません。したがって、設定も「背景の設定」と「メッセージ/名前表示領域の設定」のふたつに分けて考えます。メッセージ表示オブジェクトの設定ダイアログ0.IDの設定IDはメッセージフレームを識別するための番号で、0〜メモリが許す限りの範囲で任意に設定できます。各種効率の観点から、なるべく連番で、値の範囲も0〜31程度に抑えておくべきです。それ以外のIDは等価に取り扱われます。間接参照定義は、参照グループに含めるをチェックすると有効になります。フレームA(ID:0)とB(ID:1)とC(ID:2)をプレイヤーが任意に選択できるシステムを考えてみましょう。ゲーム中のフレーム指定はIDで行いますから、生のIDしか取り扱えないとこういうシステムを作るのが非常に面倒になります。そこで、レジスタ等を指定できるようにして、そのレジスタの内容を実際のIDとして利用する方法が採られます。いう方法をレジスタによって間接的に実際の値を得ることから「間接参照」と呼びます。メッセージ表示オブジェクトの設定は、下図の6カ所に分解して考えるのがわかりやすいでしょう。それ専用の領域として予約されています。上記のようなシステムを作成したい場合、最初はL9を利用するのがよいでしょう。上記の間接参照定義に、L9と記述して、コンフィグ等で選択されたメッセージフレームIDをL9に代入すればOKです。右図のようにメッセージ背景のどの位置にメッセージや名前を表示するかを決定する部分です。利用するフォントやフォントサイズ、装飾などもここで設定します。メッセージ領域を設定します。領域補正値は無視して構いません。メッセージ文字影指定をチェックすると、文字に影を付けることが出来ます。色はRRGGBB形式で影の色を、ずらしX,Yは、横縦に何ピクセルの影を付けるかを指定します。1,1かせいぜい2,2です。文字の大きさや他の装飾は、FONT設定で行います。説明が必要な部分はないと思いますが、サイズの単位は高さ方向のピクセルです。改行幅で1行の高さを決められます。10ピクセルのルビを作る場合、文字サイズが26なら、改行幅は36以上必要になります。ピクセルが必要になります。縁取りを有効にすると、文字全体の表示領域は左と下に2ピクセルずれます。センタリングは、文字表示時間が指定されている場合は利用できませんのでご注意下さい。名前領域を設定します。フォント設定および文字影設定は、メッセージ領域設定と同じです。「名前専用領域を使う」をチェックすると各種領域が設定できるようになります。チェックしない場合は、名前はメッセージ領域の1行目に表示されるようになります。その際「名前表示をしない」をチェックすると、名前を表示しなくなります。「文字数で背景が変化」は、名前専用領域を利用するときだけ有効です。その場合、名前領域の背景は、右端+複数の真ん中+左端で構成されるようになります。設定...ボタンを押すと次のダイアログが表示されます。ここで、先の右端、中央、左端の画像ファイルを指定します。描画領域指定のdx,dyは、背景相対座標で、右端画像の左上表示位置を指定します。dw,dhは、最大の領域サイズを指定します。「拡張表示を行う」をチェックすると、メッセージ中のコマンド指定で次の7つの機能が利用できるようになります。上記は実際にゲーム画面で出力したスナップショットです。ルビ高とスペーシングと表示領域の関係は右図の通りです。ルビのあるときと無いときでは、ルビ高+スペーシング分だけ、本文の表示位置が下がって見えます。左側のエディットボックスに文字の色を、右側のエディットボックスに縁取りの色を、それぞれRRGGBB形式で指定します。縁取り表示を利用していない場合、縁取り側は空欄にしても構いません。colorをメッセージ中のコマンドで設定するものです。文字サイズ指定、文字太さ指定、イタリック指定については見たとおりです。リンク指定は非常に特殊な機能で、要は文章中にHTMLのリンクのようなものを入れられる機能です。らのべえではブロックの概念が隠蔽されているためMBTとの組み合わせ以外では使いどころが限られるでしょう。