WOLF RPGエディター(ウディタ)[3.175]/演出・システム【サイトトップへ戻る】
■パーティ編成(会話型・外す主人公を選択肢で選択)
(更新:2023/04/18)


マップ上にいるマップイベントに話しかけて、パーティを組んでいくイベントを設定します。



ショートカット
■仕様の確認
■コモンイベントの設定
■マップイベントの設定
■先頭の主人公以外をパーティから外す
■パーティ編成以外でパーティメンバーを増減する


  
■仕様の確認

パーティは6人までしか設定する事ができないため、
7人以上の主人公が登場する場合は、パーティ編成を行うイベントが必要になります。



パーティに6人いる時に、新たな主人公をパーティに加えようとした場合は、
パーティから外す主人公を選択する選択肢を表示し、選択した主人公をパーティから外してから、新たな主人公を追加します。





処理の流れは以下のとおりです。

【1】(起動)
マップイベントに話しかけると、
コモンイベント「パーティ編成(会話型)」が呼び出される。
【2】(加える確認)へ移動。
【2】(加える確認) パーティに加えるかどうかを選択肢で確認。
「はい」の場合は【3】(人数確認)へ移動。
「いいえ」の場合は【9】(処理終了)へ移動。
【3】(人数確認) パーティ人数が5人以下の場合は【4】(主人公追加)へ移動。
パーティ人数が6人の場合は【5】(主人公名保存)へ移動。
【4】(主人公追加) 主人公を追加し、追加した主人公の予備変数9を「2」にする。
【9】(処理終了)へ移動。
【5】(主人公名保存) パーティ内にいる2人目以降の主人公の名前を文字列変数(セルフ変数[5〜9])に設定。
【6】(外す主人公選択)へ移動。
【6】(外す主人公選択) 選択肢で主人公の名前を表示。
名前を選択した場合は【7】(主人公外す)へ移動。
「キャンセル」の場合は【9】(処理終了)へ移動。
【7】(主人公外す) 選択した主人公をパーティから外し、外した主人公の予備変数9を「1」にする。
【8】(主人公追加)へ移動。
【8】(主人公追加) 主人公を追加し、追加した主人公の予備変数9を「2」にする。
【9】(処理終了)へ移動。
【9】(処理終了) マップイベントに処理が戻り、全ての処理が終了する。



主人公には1人1個の変数を割り当てます。

今回は「予備変数9」を使います。

システムDB[23:予備変数9]のタイプの設定にて、
予備変数9の変数の名前が主人公の名前になるように設定してください。





表示されていない主人公が居る場合は、データ数を増やしてください。





予備変数9の変数番号と可変DB[0:主人公ステータス]のデータIDは連動しています。
可変DB[0:主人公ステータス]のデータID[0](ヒーローさん)の変数は予備変数[9-0]になり、
可変DB[0:主人公ステータス]のデータID[12](ウルファール)の変数は予備変数[9-12]になります。



この予備変数9はパーティ編成用のマップイベントの起動条件で使います。

起動条件の変数の値 パーティ編成 マップイベントのキャラ画像 補足
0 不可 表示しない まだ出会っていないなど、パーティ編成ができない状態。
1 可能 表示する パーティに加える事ができる状態。
2 不可 表示しない 現在パーティ内に居る状態。


▲トップへ戻る▲


  
■コモンイベントの設定

【イベントコード表示】【コモン出力ファイル】

■コモンイベント「パーティ編成(会話型)」

起動条件:呼び出しのみ

入力の数 / 結果を返す
設定 名前 初期値 特殊指定
数値1 追加主人公ID 0 可変DB[0]

■■文章:「\cdb[0:\cself[0]:0]」をパーティに加えますか?
■文章選択肢:/ 【1】はい / 【2】いいえ
-◇選択肢:【1】 はい の場合↓
|■
-◇選択肢:【2】 いいえ の場合↓
|■イベント処理中断
|■
◇分岐終了◇
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 6 未満
-◇分岐: 【1】 [ 可変DB(18,4,0)[現在パーティー人数 数値 ] が 6 未満 ]の場合↓
|■イベントの挿入[名]: ["○メンバーの増減"] <コモンEv 5> / 0:仲間に加える / CSelf0[追加主人公ID]
|■変数操作: CSelf10[予備9変数呼出] = CSelf0[追加主人公ID] + 2900000
|■変数操作: V[CSelf10[予備9変数呼出]] = 2 + 0
|■文章:「\cdb[0:\cself[0]:0]」をパーティに加えました。
|■イベント処理中断
|■
◇分岐終了◇
■文字列操作:CSelf5[名前:2人目] = ""
■文字列操作:CSelf6[名前:3人目] = ""
■文字列操作:CSelf7[名前:4人目] = ""
■文字列操作:CSelf8[名前:5人目] = ""
■文字列操作:CSelf9[名前:6人目] = ""
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 2 以上
-◇分岐: 【1】 [ 可変DB(18,4,0)[現在パーティー人数 数値 ] が 2 以上 ]の場合↓
|■文字列操作:CSelf5[名前:2人目] = "\cdb[0:\cdb[6:0:2]:0]"
|■
◇分岐終了◇
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 3 以上
-◇分岐: 【1】 [ 可変DB(18,4,0)[現在パーティー人数 数値 ] が 3 以上 ]の場合↓
|■文字列操作:CSelf6[名前:3人目] = "\cdb[0:\cdb[6:0:3]:0]"
|■
◇分岐終了◇
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 4 以上
-◇分岐: 【1】 [ 可変DB(18,4,0)[現在パーティー人数 数値 ] が 4 以上 ]の場合↓
|■文字列操作:CSelf7[名前:4人目] = "\cdb[0:\cdb[6:0:4]:0]"
|■
◇分岐終了◇
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 5 以上
-◇分岐: 【1】 [ 可変DB(18,4,0)[現在パーティー人数 数値 ] が 5 以上 ]の場合↓
|■文字列操作:CSelf8[名前:5人目] = "\cdb[0:\cdb[6:0:5]:0]"
|■
◇分岐終了◇
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 6 以上
-◇分岐: 【1】 [ 可変DB(18,4,0)[現在パーティー人数 数値 ] が 6 以上 ]の場合↓
|■文字列操作:CSelf9[名前:6人目] = "\cdb[0:\cdb[6:0:6]:0]"
|■
◇分岐終了◇
■変数操作: Sys4:選択肢ウィンドウ Y座標 = 30 + 0
■文章:パーティから外す主人公を選択してください。
■文章選択肢:/ 【1】\cdb[0:\cdb[6:0:1]:0] / 【2】\cself[5] / 【3】\cself[6] / 【4】\cself[7] /
        【5】\cself[8] / 【6】\cself[9] / 【7】キャンセル
-◇選択肢:【1】 \cdb[0:\cdb[6:0:1]:0] の場合↓
|■DB読込(可変): CSelf11[外す主人公ID] = 可変DB[ パーティー情報 : 0 : 1 ] (6 : メイン設定 : メンバー1)
|■
-◇選択肢:【2】 \cself[5] の場合↓
|■DB読込(可変): CSelf11[外す主人公ID] = 可変DB[ パーティー情報 : 0 : 2 ] (6 : メイン設定 : メンバー2)
|■
-◇選択肢:【3】 \cself[6] の場合↓
|■DB読込(可変): CSelf11[外す主人公ID] = 可変DB[ パーティー情報 : 0 : 3 ] (6 : メイン設定 : メンバー3)
|■
-◇選択肢:【4】 \cself[7] の場合↓
|■DB読込(可変): CSelf11[外す主人公ID] = 可変DB[ パーティー情報 : 0 : 4 ] (6 : メイン設定 : メンバー4)
|■
-◇選択肢:【5】 \cself[8] の場合↓
|■DB読込(可変): CSelf11[外す主人公ID] = 可変DB[ パーティー情報 : 0 : 5 ] (6 : メイン設定 : メンバー5)
|■
-◇選択肢:【6】 \cself[9] の場合↓
|■DB読込(可変): CSelf11[外す主人公ID] = 可変DB[ パーティー情報 : 0 : 6 ] (6 : メイン設定 : メンバー6)
|■
-◇選択肢:【7】 キャンセル の場合↓
|■イベント処理中断
|■
◇分岐終了◇
■イベントの挿入[名]: ["○メンバーの増減"] <コモンEv 5> / 1:仲間から外す / CSelf11[外す主人公ID]
■変数操作: CSelf10[予備9変数呼出] = CSelf11[外す主人公ID] + 2900000
■変数操作: V[CSelf10[予備9変数呼出]] = 1 + 0
■イベントの挿入[名]: ["○メンバーの増減"] <コモンEv 5> / 0:仲間に加える / CSelf0[追加主人公ID]
■変数操作: CSelf10[予備9変数呼出] = CSelf0[追加主人公ID] + 2900000
■変数操作: V[CSelf10[予備9変数呼出]] = 2 + 0
■文章:「\cdb[0:\cself[11]:0]」をパーティから外し、\n「\cdb[0:\cself[0]:0]」をパーティに加えました。



▼補足

コモンイベントには「入力の数 / 結果を返す」を設定します。

「数値1」の設定には「データベース参照(数値)」で可変DB[0]を呼び出すように設定します。



このように設定する事で、コモンイベントを呼び出す時に、主人公の名前で設定できるようになります。





パーティの最大人数を「4」にする場合は、8行目の…
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 6 未満
の設定を…
■条件分岐(変数): 【1】 可変DB(18,4,0)[現在パーティー人数 数値 ] が 4 未満
に変えてください。



■変数操作: CSelf10[予備9変数呼出] = CSelf0[追加主人公ID] + 2900000
■変数操作: V[CSelf10[予備9変数呼出]] = 2 + 0

この中にある「2900000」は予備変数9の変数呼び出し値です。
【変数呼び出し値とX番の変数呼出の説明を見る】

2900000」を設定する時には「データを呼ばない」にチェックを付けてください。

また「V[CSelf10[予備9変数呼出]]」は「X番の変数呼出」にチェックを付けてください。







47行目の…
■変数操作: Sys4:選択肢ウィンドウ Y座標 = 30 + 0
の設定は、選択肢のY表示位置を調整する設定です。

この調整がないと、メッセージウィンドウと選択肢が重なって表示されます。

調整なし 調整あり



先頭の主人公は選択できない(外せない)ようにする場合は、【選択肢】の分岐1の設定を空欄にしてください。

分岐1に名前の設定あり 分岐1が空欄


▲トップへ戻る▲


  
■マップイベントの設定

マップイベントは以下のように設定します。

【イベントコード表示】

■マップイベント「ヒーローさん」

グラフィック:ヒーローさんの画像([Chara]Hero3_USM.png)
起動条件:決定キーで実行
起動条件変数:V9-0:ヒーローさんが 1 以下
待機時アニメ:チェック無し

■イベントの挿入[名]: ["パーティ編成(会話型)"] <コモンEv 215> / 0:ヒーローさん





マップイベント「ヒーローさん」と次のマップイベント「ファイターさん」との設定の違いは以下のとおりです。

【イベントコード表示】

■マップイベント「ファイターさん

グラフィック:ファイターさんの画像([Chara]Fighter2_USM.png)
起動条件:決定キーで実行
起動条件変数:V9-1:ファイターさんが 1 以下
待機時アニメ:チェック無し

■イベントの挿入[名]: ["パーティ編成(会話型)"] <コモンEv 215> / 1:ファイターさん





起動条件の変数の設定で「1以下」としていますが、
これはゲーム開始時からマップイベントが出現している状態の時の設定です。

もしもゲーム開始時にはマップイベントが出現せず、
ゲームの途中でマップイベントが出現する場合は、起動条件を「1と同じ」にしてください。




マップイベントを出現させる場合は、変数の値を「1」にしてください。

【イベントコード表示】

■変数操作: V9-0[ヒーローさん] = 1 + 0


▲トップへ戻る▲


  
■先頭の主人公以外をパーティから外す

先頭にいる主人公以外をパーティから外すマップイベントを設定します。


【イベントコード表示】

■マップイベント「パーティ解散」

起動条件:決定キーで実行

■文章:先頭の主人公以外をパーティから外しますか?
■文章選択肢:/ 【1】はい / 【2】いいえ
-◇選択肢:【1】 はい の場合↓
|■
-◇選択肢:【2】 いいえ の場合↓
|■イベント処理中断
|■
◇分岐終了◇
■回数付きループ [ 5 ]回
|■DB読込(可変): このEvのセルフ変数0 = 可変DB[ パーティー情報 : 0 : 2 ] (6 : メイン設定 : メンバー2)
|■条件分岐(変数): 【1】 このEvのセルフ変数1 が -1 以下
|-◇分岐: 【1】 [ このEvのセルフ変数1 が -1 以下 ]の場合↓
| |■ループ中断
| |■
|◇分岐終了◇
|■イベントの挿入[名]: ["○メンバーの増減"] <コモンEv 5> / 1:仲間から外す / このEvのセルフ変数0
|■変数操作: このEvのセルフ変数0 += 2900000 + 0
|■変数操作: V[このEvのセルフ変数0] = 1 + 0
|■
◇ループここまで◇◇


▲トップへ戻る▲


  
■パーティ編成以外でパーティメンバーを増減する

パーティ編成以外でパーティメンバーの増減を行う場合は、以下のように設定してください。



▼主人公ID[5](シーフさん)をパーティに加える場合

【イベントコード表示】

■イベントの挿入[名]: ["○メンバーの増減"] <コモンEv 5> / 0:仲間に加える / 5:シーフさん
■変数操作: V9-5[シーフさん] = 2 + 0



▼主人公ID[5](シーフさん)をパーティから外す場合(マップイベントを表示して、再びパーティ編成ができる場合)

【イベントコード表示】

■イベントの挿入[名]: ["○メンバーの増減"] <コモンEv 5> / 1:仲間から外す / 5:シーフさん
■変数操作: V9-5[シーフさん] = 1 + 0



▼主人公ID[5](シーフさん)をパーティから外す場合(マップイベントを表示せず、以降はパーティ編成ができなくなる場合)

【イベントコード表示】

■イベントの挿入[名]: ["○メンバーの増減"] <コモンEv 5> / 1:仲間から外す / 5:シーフさん
■変数操作: V9-5[シーフさん] = 0 + 0


▲トップへ戻る▲



◎関連ページ

◆キャラクターイベントを作る

YADOT-WOLFトップ  気紛れな空間へ戻る  メール