RPGツクールMZ

RPGツクールMZで立ち絵を使った会話の作り方(立ち絵自動表示プラグイン)

こちらはRPGツクールMZ向けの記事です。
RPGツクールMV向けの記事もございます。

座標について、理解が浅い方は「ピクチャの座標の仕様について」を一読いただいてから、こちらに取り掛かるとスムーズです。
また、「ピクチャの座標をGUIで取得!ピクチャのグラフィカルな位置調整プラグインの使い方」も直感的に座標を取得できるので便利です。

サンプルプロジェクト

まとめてZIPダウンロード(3MB)

使用プラグイン

立ち絵自動表示 Ver.2(ルルの教会様作)LL_StandingPicture.js

plugin-mz.fungamemake.com/archives/605
メッセージウィンドウ表示時に立ち絵を自動表示します。

プラグインの仕様

LL_StandingPicture.js では、ピクチャを立ち絵として使用し、会話場面で使用頻度の高い動作(モーション)を制御文字で指定することができます。

このモーションには下記があります。

  • yes(頷く) - y:0から+24
  • yesyes(二回頷く) - y:0から+24
  • no(横に揺れる) - x:-12から+12
  • noslow(ゆっくり横に揺れる) - x:-12から+12
  • jump(跳ねる) - y:-24から0
  • jumpjump(二回跳ねる) - y:-24から0
  • jumploop(跳ね続ける) - y:-24から0
  • shake(ガクガク) - x:-2から+2、y:-2から+2
  • shakeloop(ガクガクし続ける) - x:-2から+2、y:-2から+2
  • runleft(画面左へ走り去る)
  • runright(画面右へ走り去る)

動作を考慮した座標の計算

今回はブタの画像を使用するので、画面端に表示しないと、腹や足が見切れてしまいます。
これを考慮して、座標を決定します。

今回使用する立ち絵は、全て左を向いています。
会話シーンに使うには、左下と右下を使いたいところです。

左向き画像を右下に表示

左を向いているのがデフォルトなので、その座標を計算します。
今回は原点を左上にします。

右下の座標(816,624)から、画像サイズ(330 x 350)の分を差し引いた(486,274)が基本になります。
これに上記のモーションの最大幅を考慮し、x+12,y+24します。
結果的に、(498,298)となります。

左向き画像を反転(右向きに)し左下に表示

反転すると、画像の幅分だけ移動して表示されます。
これを考慮すると、左下の座標(0,624)に画像幅を考慮しx+330,y-350した、(330,274)が基本になります。

これに上記のモーションの最大幅を考慮し、x-12,y+24します。
結果的に、(318,298)となります。

プラグインの設定

立ち絵リストの作成

  • ID
    表示する画像の基本設定を区別するための数字です。
    連番である必要はありませんが、重複しないように注意しましょう。
  • 画像ファイル名
    表示する画像を指定します。
  • 原点
    ピクチャの座標の仕様に書いてある原点です。
    今回は左上(0)を使っています。
  • X,Y座標
    上記で計算した座標を入れます。
    立ち絵1:右下(498,298)
    立ち絵2:左下(318,298)
  • 立ち絵2の左右反転
    「左右反転する」(-1)を選択します。

他の項目は今回はデフォルトのままで使用します。
好みに合わせて変更してください。

リスト作成の豆知識

1つリストを作成したら、それを丸ごとコピー&ペーストできます。
今回はIDとファイル名以外は全て同じ設定なので、コピーして流用します。
また、このリストの順番はドラッグ・アンド・ドロップで入れ替えることができるので、IDの整理などしたい場合、簡単に入れ替えられます。

制御文字の使用方法

立ち絵表示の仕様

リストに登録したIDから2つの画像を表示できます。
ただし、表示できる条件があります。

  • NG:「ID0の立ち絵1」と「ID1の立ち絵1」を表示
  • OK:「ID0の立ち絵2」と「ID1の立ち絵1」を表示

これを制御文字で書くと下記のようになります。

\FF[0]\F[1]文章…

また、この立ち絵表示の指示は、次の文章の表示で上書きされます。
何も指定されないと、立ち絵は消えます。
顔画像の指定と同じと考えれば理解しやすいかと思います。

現状のヘルプだと、少し直感的でない部分があるので、使用してみてこういうことかな?というのを書き出してみます。
立ち絵1枚目と立ち絵2枚目というのを、レイヤーのように解釈すると理解しやすいと思います。
1枚目、2枚目という表現をレイヤーに置き換えて解釈します。

  • レイヤーは2枚まで使える。
  • レイヤー1枚に1つの画像だけが表示できる。
  • 同じレイヤー番号は同時に使えない。片方だけが表示される。

上記の理解で制御文字の説明を置き換えると下記のようになります。

  • \F[ID] レイヤー1に立ち絵ID番を表示します。 【入力例】\F[1]
  • \M[s] レイヤー1でモーションsを再生します。 【入力例】\M[yes]
  • \FF[ID] レイヤー2に立ち絵ID番を表示します。
  • \MM[s] レイヤー2でモーションsを再生します。
  • \AA[1] レイヤー1を明るくし、レイヤー2を暗く表示します。
  • \AA[2] レイヤー2を明るくし、レイヤー1を暗く表示します。

表示のテスト

下記のコマンドを入力し、テストします。

◆文章:なし, なし, ウィンドウ, 上
:  :\FF[0]\F[1]\AA[1]\M[yes]あー、確かに友達と話したりしてたわ。

右クリックから「テスト」を選びます。

すると、そのコマンドだけをテストできます。
制御文字が想定通りに動作しているのか1つずつ確認できるので、大量に作ってからミスを見つけるより効率が上がると思います。

総括

労力の大半が座標計算です。
一度、設定してしまえば、残りは制御文字を書いていくだけで会話が成り立つと思います。

スポンサードリンク

スポンサードリンク

-RPGツクールMZ

Copyright© RPGツクールMZ・MV初心者的備忘録 , 2020 All Rights Reserved.