RPGツクールMVでトリアコンタン様作のピクチャの変数設定プラグイン (PictureVariableSetting)とコモンイベントを組みあわせて、立ち絵を表示するシステムを作ってみました。
右・左・中央に1人ずつ、最大3人分の立ち絵を表示できます。
サンプルプロジェクトも用意したので、よければ参考にしてみてください。
ただし、立ち絵のスライドインとかフェードアウトとか高度な機能はありません。
データベースを用意する
変数
40個くらい変数を用意します。
立ち絵_ピクチャ番号は変数100番以内に定義してください。(サンプルでは32番)

スイッチ
立ち絵を反転させるかどうかと、立ち絵を拡大・縮小するかのスイッチを2つ用意します。
コモンイベント
変数初期設定用のコモンイベント
基本となるX座標やY座標をあらかじめ変数として定義しておき、イベントでは変数の操作で「立ち絵X座標 = const立ち絵_中央X座標」みたいに代入して使います。
表情も表情ごとにID番号を決めておいて、「立ち絵_表情ID = const立ち絵表情_笑い」みたいにして呼びだせるようにします。
変数名につけているconstとはプログラミングで定数(1回値を入れたら値が変わらない変数)を定義するときによく使われるキーワードです。
ピクチャ番号取得コモンイベント
サンプルでは立ち絵用のピクチャ番号をそれぞれ以下のように割りふっています。
立ち絵表示位置 | 身体ピクチャ番号 | 表情ピクチャ番号 |
---|---|---|
右 | 1 | 2 |
左 | 10 | 11 |
中央 | 20 | 21 |
立ち絵のX座標から表示位置をわりだして、ピクチャ番号を取得するためのコモンイベントを作ります。
条件分岐に使っている変数「立ち絵_X座標」は立ち絵を表示する直前にイベント側で設定する変数です。
立ち絵反転表示コモンイベント
スクリプトを使って立ち絵の反転表示と縮小表示のコモンイベントを作ります。
反転表示では、ピクチャのX座標をマイナスにしてピクチャを反転させます。
スクリプト2行目の var pictureId = $gameVariables.value(32); は変数32番に代入したピクチャ番号を取得しています。
違う番号の変数にピクチャ番号を入れる場合は、()内の数値を変数の番号に修正してください。

ピクチャ拡大縮小表示コモンイベント
ピクチャを表示している時にスクリプトなどで画面をズームすると、ピクチャも拡大して表示されてしまうので調整用のコモンイベントを作ります。
画面のズームを使わなければ必要ないです。
立ち絵以外のピクチャも含めて、全ピクチャに対して縮小するスクリプトになります。
スクリプト5行目の var rate = Number($gameVariables.value(36)); は変数36番に代入した拡大縮小率を取得しています。
こちらも、違う番号の変数を使う場合は()内の数値を変数の番号に修正してください。

立ち絵表示コモンイベント
立ち絵表示用のコモンイベントを組みます。
コモンイベントの冒頭で、プラグインコマンドで変数によるピクチャ番号の指定を有効にします。
プラグインコマンド:P_VARIABLE_VALID
ピクチャ番号は作っておいたピクチャ番号取得コモンイベントを呼びだして取得します。
ピクチャの表示でまずベースとなる身体部分の画像を表示します。
ピクチャ番号はピクチャ番号を代入する変数の番号を入力します。
サンプルでは変数32番にピクチャ番号を入れるようにしたので、ピクチャ番号に32を指定します。
原点は「中央」にし、X座標を変数33(立ち絵_X座標)、Y座標を変数34(立ち絵_Y座標)にします。
つぎに表情差分を表示します。
変数:立ち絵_ピクチャ番号を+1することで、身体とは別にピクチャを表示できます。
表情IDごとに条件分岐を作り、表情の差分画像を表示させます。
最後に立ち絵表示後の調整を行います。
スイッチ:立ち絵_縮小フラグがONの時に拡大・縮小表示のコモンイベント、スイッチ:立ち絵_反転フラグがONの時に反転表示のコモンイベントを呼びだします。
反転フラグは1回呼びだすごとにOFFにするようにしました。(ここら辺の設定はお好みで)
最後にプラグインコマンドで変数でピクチャ番号指定をオフにします。
立ち絵表示以外では通常どおり、ピクチャの表示の時に入力したピクチャ番号で表示されます。
ピクチャ消去用コモンイベント
右の立ち絵を消す、左の立ち絵を消す、中央の立ち絵を消す、全消去の4つを作りました。



イベントの組み立て
ここまで準備できたら、いよいよイベントから呼びだします。
主人公の初期位置と同じマップにトリガーが「自動実行」のイベントを作り、変数初期化用のコモンイベントを呼びだします。
実際のゲームではこの後にオープニングイベントなどを作りますが、ここでは省略します。
立ち絵表示用のイベントです。
基本的には、立ち絵_X座標や表情IDに値を代入、必要におうじて反転フラグや拡大縮小フラグをONにして立ち絵表示用のイベントを呼びだします。


おまけ:パーツを細分化して立ち絵を表示する
サンプルプロジェクトでは、表情IDを使って表情を切り替える簡易表示Verのほかにポーズ・目・眉・口にそれぞれIDをふって表示させる詳細設定Verも収録しています。
内容は簡易表示Verとほぼ同じなので、サンプルプロジェクトを見てみてください。
まとめ
あまり高度なことはできないとか導入が面倒とか欠点はいろいろありますが、エディタでイベント内容を見たときに「ほとんど日本語で理解できるので、わかりやすい」というメリットがあります。
登場人物が2〜3人くらいの小規模作品なら、エディタ上のわかりやすさ重視でコモンイベントで組んでみてもいいんじゃないでしょうか。
サンプルプロジェクトのpicturesフォルダに入っている立ち絵は、エネミー画像をもとにわたしが作成したものですのでRTP改変素材としてご利用いただけます。
(素材サイト『冒険画材』でも配布しています)
コモンイベントの内容もコピペで使っていただいて大丈夫です。
それ以外の素材はプロジェクトファイルからは直接抜かないでください。