〜七章〜 「テキストウインドウによる文章表示」


さて、リクエストがありましたので今回はテキストウインドウの使い方を解説しようと思います。
では、早速行ってみましょう。

NScripterではテキストウインドウを扱う命令として「setwindow」という命令があります。

最近のゲームではほとんどがテキストウインドウに文章を表示するような使用になってますね。
ノベルタイプの「雫」とか「痕」が懐かしいです。(あ、でも「水月」は確かノベルタイプだったような…)

そんなワケでとても実用的なので、ぜひ習得してください。
では、早速使い方を見てみましょう。


setwindow {文字の左上座標X},{〃Y},{文字数横},{〃縦},{文字フォントサイズX},{〃Y},
          {字間X},{〃Y},{表示スピード},{0(普通) or 1(太字)},{0(普通) or 1(影付き)},
          {#ウインドウカラー},{ウインドウ左上X},{〃Y},{ウインドウ右下X},{〃Y}

setwindow {文字の左上座標X},{〃Y},{文字数横},{〃縦},{文字フォントサイズX},{〃Y},
          {字間X},{〃Y},{表示スピード},{0(普通) or 1(太字)},{0(普通) or 1(影付き)},
          {画像ファイルのパス},{ウインドウ左上X},{〃Y}


上はウインドウ指定部分を指定した色に変えてウインドウを作る方法で、下は画像ファイルを読み込み、ウインドウとして使う方法です。
ちなみによく勘違いするのですが、「setwindow」は実行ブロックのみで使える命令です。
間違えて定義ブロックに入れると怒られるので注意してください。

さて、これだけでわかったらアナタはすごい。
まずわかりません。
そんなワケで、こんなものを作ってみました。



これを参考に@,A,B,C,D,E,F,G,H,I,J,K,L,M,N,Oの順で記述していくといいと思います。
なお、画像ファイルをウインドウとして使いたい場合は、Kは画像ファイルのパスにして、NとOはいりません。

ところで、画像ファイルを使用する際には、一つ大きなテクニックがあります。
それは、アルファブレンドを使うというものです。
アルファブレンドについては四章で少し触れましたが、ここでもう少し詳しく解説することにします。
アルファブレンドは、画像の右側に同じ大きさのグレースケールの絵を描き、それにより元画像の透明度を現す方法でした。
(確認しておくと、黒いほど透明度は低く、白いほど透明度は高くなります。)
たとえばこんな画像を作ったとします。



さて皆さん、もうお分かりでしょう!
もう一回繰り返しますが、右側で黒い部分はそのまま表示され、白くなるにつれ透明になっていきます。
つまり上の例ではフレームはそのまま、中身の青い部分だけ半透明になって表示されます。
半透明ということはつまり、背景が透けて見えるというわけですな。

実際に使用してみました。こんな感じになります。

皆さんもぜひ試してみてください。
いまいちアルファブレンドがわからない人や、アルファブレンドの画像を作るのが面倒だという人はこれをダウンロードして使って下さい。
また、色やアルファブレンド画像の濃さなどをいじってみたりすると、理解が深まるかも知れません。


本文をテキストウインドウで表示する場合、キャラクタなどがよく見える代わりにどうしても文章を表示する領域が狭くなってしまいます。
クリック毎に改ページ(\)になることも珍しくありません。
そんなときに役立つのが「linepage」という命令です。(定義ブロック専用)
これを使わない場合、一行ごとに改ページをするにはすべての行末に「\」を入れる必要があり、面倒です。
そこで「linepage」命令を使うと一行ごとに勝手にクリック待ち&改ページをしてくれるので、ただただ本文を記述すればいいという事になります。
非常に便利なので「setwindow」とはセットで用いるといいと思います。

六章へ    八章へ
「NScripter」Top  Top Page