メッセージ背景にグラフィックを

今回はイベントコマンド「文章の表示」で表示されるメッセージボックスの背景にグラフィックを表示します。

※画面中のスクリーンショットはクリックすると拡大できます。(イベントコマンドの部分除く。)

具体的には・・・、

メッセージ背景にグラフィック表示した例1

とまあ、こんな感じ。

では、実際にどうやって実現するか。

以下のスクリプトを、Windows_Messageのスクリプトと差し替えて下さい。
もちろん、#Start〜#Endの部分のみをデフォルトのスクリプトに組み込んでいただいても構いません。#Start〜#Endの箇所は3つほどあります。

mesback.zip(約4KB)

ファイル構成一覧
改造mesback.txt(Window_Message項目と差し替え)

 

さて、今回はスクリプトを変更するだけでは済みません。まだ他にもやることがあります。

表示するためのグラフィックをGraphic/Pictureにインポートしておく必要があります。

今回の場合、バトラー画像の「001-Fighter01」〜「004-Fighter04」を一旦エクスポートしてGame/Pictureにインポートしました。(もちろん、表示するグラフィックがバトラーばかりであれば、スクリプトを変更して読み込み場所をGame/Battlersにしておくと、インポート・エクスポートの作業は不要になりますけどね。まあ、いろいろなグラフィックがありますので、とりあえずGame/Pictureに入れることにしてあります。)

それから、Game.rxprojと同じフォルダにTextという名前のフォルダを作り、その中にarray.txtというファイルを作ります。

array.txtの中はこんな感じ。

001-Fighter01
002-Fighter02
003-Fighter03
004-Fighter04

要するにGame/Pictureにインポートしたファイル名の一覧を列挙すればいいんです。

ちなみに、こんなテキストファイルなんかつけたくないよーという方、スクリプト23行目のコメントをはずして、26〜36行目までをコメントにして下さい。

そして、23行目の@arr_gra = [・・・]の・・・にピクチャのファイル名を以下のような形で列挙して下さい。

@arr_gra = ["001-Fighter01", "002-Fighter02", "003-Fighter03", "004-Fighter04"]

この方法でarray.txtを用意する必要はなくなります。

これで設定は終わりです。

使い方は意外と簡単。文章の表示コマンドのところで制御文字\P[n](nは1以上の整数)を書けばOKです。

\P[n]のnはarray.txtの何行目のピクチャ名を使うかを表しています。

上のスクリーンショットでしたら、「003-Fighter03」を使用しており、array.txtで見ると3行目ですので、\P[3]となるわけです。

実際にイベントコマンドを見てみると、

メッセージボックス背景グラフィックのイベントコマンド例

という具合になっています。ちなみに1つの文章の表示コマンド内に2つ以上の\P[n]を入れた場合、一番最後に書かれた\P[n]に対応したグラフィックが表示されます。(実際には順番にグラフィックが表示されているのですが、高速で表示・消去されているため普通は見えません。動体視力に長けた人なら見れるかも^^。)

メッセージ背景にグラフィック表示した例2

今回はスクリプト以外の追加箇所もあったということで、ややこしいため、おまけとして今回使ったプロジェクトです。

mesback.exe(約383KB)

スクリプト使わなくても、ピクチャコマンドと組み合わせればできるかもしれませんが、まあ好みの問題ということで。


- 戻る -