· 

戦闘前にセリフを言わせてみる

アケマシテ オメデトウ ゴザイマス コトシハ ミナサマノヨリヨキヒ デアルコトヲ キボウ イタシマス

JONYです

 

今回はツクールMVの戦闘開始時に、キャラにセリフを言わせてみようと思います。

こんな感じです。

使用するプラグインはYEP_GabWindowです。

日本語化パッチもあります。

 

 

このプラグインは画面上に文章をを一行表示させることができます。

表示は一定時間で消え、左側に顔グラを表示できるので、

一言セリフを言わせるのに適しています。

また、表示中にウエイトを挟まないので、テンポの邪魔をしません。

 

戦闘開始時にセリフを言わせるためには、以下の例の様にイベントを組みます。

コモンイベントで用意すると良いでしょう。

 

◆プラグインコマンド:GabActorFace 3

//アクター番号3の顔グラセット

◆プラグインコマンド:GabFaceIndex 2

//顔グラ3番目をセット(0~7で指定)

◆プラグインコマンド:GabText 敵です……! 皆さん注意して下さい!

//セリフ

◆プラグインコマンド:ShowGab

//発射

 

この顧問イベントを、敵グループのバトルイベントのターン0に設置すれば、

戦闘開始時にセリフを言わせることができます。

 

 

・応用例1…セリフを数パターン用意する

 変数にランダムな値を代入する乱数を使用しましょう。

◆変数の操作:#0006 一時変数6 = 乱数 0..3

//変数6に0~3のランダムな数値が入る

 

後は変数の値に応じて条件分岐しましょう。

◆条件分岐:一時変数6 = 0

//セリフ0

  :分岐終了

◆条件分岐:一時変数6 = 1

//セリフ1

  :分岐終了

 

・応用例2…バトル参加者の誰か1人がランダムに話す

 4人パーティの場合

◆変数の操作:#0007 一時変数7 = 乱数 0..3

◆変数の操作:#0008 一時変数8 = $gameParty.members()[$gameVariables.value(7)].actorId()

//変数8に、変数7の値の位置にいるメンバーのIDが入る

  つまり、戦闘参加メンバーの誰かのIDが入ります。

 

さらに応用例1と合わせて、メンバーごとに数パターンのセリフを用意できます

◆条件分岐:一時変数8 = 3

  ◆注釈:メンバー3のとき

  ◆プラグインコマンド:GabActorFace 3

  ◆条件分岐:一時変数6 = 0

    ◆プラグインコマンド:GabFaceIndex 2

    ◆プラグインコマンド:GabText 敵です……! 皆さん注意して下さい!

    ◆

  :分岐終了

:分岐終了

◆条件分岐:一時変数8 = 4

  ◆注釈:メンバー4のとき

 

・応用例3…HPが少ないときに違うセリフを言わせる

◆注釈:HPが1/4以下の時

◆変数の操作:#0009 一時変数9 = $gameActors.actor($gameVariables.value(8)).hp/$gameActors.actor($gameVariables.value(8)).param(0)*100

//$gameActors.actor(アクターID).hp…HPを取得、$gameActors.actor(アクターID).param(0)…最大HPを取得

◆条件分岐:一時変数9 ≤ 25

  ◆変数の操作:#0006 一時変数6 = 12

:分岐終了

 

 

・応用例4…戦闘終了時にもセリフを言わせる

戦闘開始時と違って、イベントのみで組むのは難しいので、こちらのプラグインを使用します。

FTKR_ExBattleEvent 

 

このプラグインは、戦闘勝利時に実行するコモンイベントを指定できます。

戦闘開始前のセリフ表示コモンイベントと同様に、

戦闘勝利時のセリフ表示コモンイベントを作成すればOKです。

 

 

いかかでしょうか。セリフが増えればキャラの深みと幅が広がると思います。

意外と実装は簡単なので、試せる方は試されてみては、いかがでしょうか。