RPGツクール2000/変数・主人公【サイトトップへ戻る】
■パーティー内の主人公の番号を変数へ代入する
(更新:2020/06/28)


パーティーにいる主人公の番号を変数へ代入する方法を紹介します。


ショートカット
■主人公の番号について
■パーティーにいる主人公の番号を変数へ代入する
■メンバーの入れ替えを行う度に主人公の番号を変数へ代入する
■補足


  
■主人公の番号について

主人公の番号データベース「主人公」の番号になります。



この主人公の番号を変数に代入する事で、
イベントコマンド:メンバーの入れ替えなどにある
変数〜の番号の主人公」の設定で使用する事ができる他、
パーティー編成システムや自作戦闘システムなどで、
主人公の番号が必要な時にも活用する事ができます。



今回は以下の変数番号にパーティー内にいる主人公の番号を保存します。
変数0011番=1人目の主人公の番号
変数0012番=2人目の主人公の番号
変数0013番=3人目の主人公の番号
変数0014番=4人目の主人公の番号




イベントコマンド:変数の操作の設定には、
」が付いている設定付いていない設定があります。
設定する際には注意してください。

  ↓Vがない
◆変数の操作:[0001:変数番号]加算,1
名前表示あり↑
     ↓Vがある
◆変数の操作:[V[0001]]代入,1
名前表示なし↑


▲トップへ戻る▲


  
■パーティーにいる主人公の番号を変数へ代入する

イベントコマンド:条件分岐を使用して現在パーティー内にいる主人公を調べて、
変数11〜14番にデータベース「主人公」の番号を代入します。

なお、変数へ代入される主人公の番号は、パーティーの並び順ではなく、
データベース「主人公」の番号順になります。

◆変数の操作:[0001:変数番号]代入,11<1人目の変数番号を設定
◆変数の操作:[0011〜0014]代入,0<値を初期化
◆条件分岐:主人公01がパーティーにいる
 ◆変数の操作:[V[0001]]代入,1<主人公の番号を設定
 ◆変数の操作:[0001:変数番号]加算,1<次の変数番号にする
 ◆
:分岐終了
◆条件分岐:主人公02がパーティーにいる
 ◆変数の操作:[V[0001]]代入,2<主人公の番号を設定
 ◆変数の操作:[0001:変数番号]加算,1<次の変数番号にする
 ◆
:分岐終了
〜登場する人数分を作成する〜

このイベントを実行させると、
データベース「主人公」1番3番4番8番がパーティーにいる場合は…
変数0011番=1
変数0012番=3
変数0013番=4
変数0014番=8

と設定されます。



なお、変数の番号を+100番(変数0001番→変数0101番)に変える場合は、
以下のように設定してください。

◆変数の操作:[0101:変数番号]代入,111
◆変数の操作:[01110114]代入,0
◆条件分岐:主人公01がパーティーにいる
 ◆変数の操作:[V[0101]]代入,1
 ◆変数の操作:[0101:変数番号]加算,1
 ◆
:分岐終了
◆条件分岐:主人公02がパーティーにいる
 ◆変数の操作:[V[0101]]代入,2
 ◆変数の操作:[0101:変数番号]加算,1
 ◆
:分岐終了
〜登場する人数分を作成する〜


▲トップへ戻る▲


  
■メンバーの入れ替えを行う度に主人公の番号を変数へ代入する

上記の設定では…
変数0011番=1
変数0012番=4
変数0013番=8

と設定されている所に主人公3番をパーティーに入れますと…
変数0011番=1
変数0012番=3
変数0013番=4
変数0014番=8

データベース「主人公」の番号順に変数の値が設定されます。

これを…
変数0011番=1
変数0012番=4
変数0013番=8

と設定されている所に主人公3番をパーティーに入れて…
変数0011番=1
変数0012番=4
変数0013番=8
変数0014番=3

パーティーに入れた順番通りに変数の値を設定したい時には、
以下の設定を行ってください。



■初期設定

今回の設定ではゲーム開始時に変数の値を設定する初期設定イベントが必要になります。

ゲームが開始するマップのどこかに以下のマップイベントを設定してください。

■マップイベント「初期設定」※ゲーム開始時に主人公4番と6番がいる時の設定例。

▼1ページ目

イベント出現条件:なし
イベント開始条件:自動的に始まる

◆変数の操作:[0011:1人目の番号]代入,4<1人目が主人公4番の時
◆変数の操作:[0012:2人目の番号]代入,6<2人目が主人公6番の時
◆変数の操作:[0001:変数番号]代入,13<3人目の変数番号に合わせる
◆スイッチの操作:[0001:初期設定完了]をONにする




▼2ページ目

イベント出現条件:スイッチ[0001:初期設定完了]がON
イベント開始条件:決定キーが押されたとき

イベント実行内容には何も設定しません。



変数0001番には次に主人公が追加する時に使用する変数番号を設定します。
ゲーム開始時の主人公は1人→◆変数の操作:[0001:変数番号]代入,12
ゲーム開始時の主人公は2人→◆変数の操作:[0001:変数番号]代入,13
ゲーム開始時の主人公は3人→◆変数の操作:[0001:変数番号]代入,14
ゲーム開始時の主人公は4人→
◆変数の操作:[0001:変数番号]代入,15

オープニングイベントなどのゲーム開始時に必ず実行するイベントがある場合は、
上記のようなマップイベントは設定せずに、
◆変数の操作:[0011:1人目の番号]代入,4
◆変数の操作:[0012:2人目の番号]代入,6
◆変数の操作:[0001:変数番号]代入,13
の設定をオープニングイベントの中に設定してください。



■メンバーを追加

パーティーに主人公を追加する時のイベント設定です。

◆メンバーの入れ替え:主人公08を加える
◆変数の操作:[V[0001]]代入,8<増えた主人公の番号を設定
◆変数の操作:[0001:変数番号]加算,1
<次の変数番号にする



■メンバーを外す

パーティーから主人公を外す時のイベント設定します。

◆メンバーの入れ替え:主人公08を外す
◆条件分岐:変数[0011:1人目の番号]が8<1人目に今回外す主人公の番号がある時
 ◆変数の操作:[0011:1人目の番号]代入,変数[0012]の値
 ◆変数の操作:[0012:2人目の番号]代入,変数[0013]の値
 ◆変数の操作:[0013:3人目の番号]代入,変数[0014]の値
 ◆
:それ以外の場合
 ◆条件分岐:変数[0012:2人目の番号]が8<2人目に今回外す主人公の番号がある時
  ◆変数の操作:[0012:2人目の番号]代入,変数[0013]の値
  ◆変数の操作:[0013:3人目の番号]代入,変数[0014]の値
  ◆
 :それ以外の場合
  ◆条件分岐:変数[0013:3人目の番号]が8<3人目に今回外す主人公の番号がある時
   ◆変数の操作:[0013:3人目の番号]代入,変数[0014]の値
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
:分岐終了
◆変数の操作:[0014:4人目の番号]代入,0
◆変数の操作:[0001:変数番号]減算,1


以上で設定完了です。



なお、変数の番号を+100番(変数0001番→変数0101番)に変える場合は、
以下のように設定してください。

■マップイベント「初期設定」

▼1ページ目

イベント出現条件:なし
イベント開始条件:自動的に始まる

◆変数の操作:[0111:1人目の番号]代入,4
◆変数の操作:[0112:2人目の番号]代入,6
◆変数の操作:[0101:変数番号]代入,113
◆スイッチの操作:[0001:初期設定完了]をONにする




▼2ページ目

イベント出現条件:スイッチ[0001:初期設定完了]がON
イベント開始条件:決定キーが押されたとき

イベント実行内容には何も設定しません。

■メンバーを追加

◆メンバーの入れ替え:主人公08を加える
◆変数の操作:[V[0101]]代入,8
◆変数の操作:[0101:変数番号]加算,1

■メンバーを外す

◆メンバーの入れ替え:主人公08を外す
◆条件分岐:変数[0111:1人目の番号]が8
 ◆変数の操作:[0111:1人目の番号]代入,変数[0112]の値
 ◆変数の操作:[0112:2人目の番号]代入,変数[0113]の値
 ◆変数の操作:[0113:3人目の番号]代入,変数[0114]の値
 ◆
:それ以外の場合
 ◆条件分岐:変数[0112:2人目の番号]が8
  ◆変数の操作:[0112:2人目の番号]代入,変数[0113]の値
  ◆変数の操作:[0113:3人目の番号]代入,変数[0114]の値
  ◆
 :それ以外の場合
  ◆条件分岐:変数[0113:3人目の番号]が8
   ◆変数の操作:[0113:3人目の番号]代入,変数[0114]の値
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
:分岐終了
◆変数の操作:[0114:4人目の番号]代入,0
◆変数の操作:[0101:変数番号]減算,1


▲トップへ戻る▲


  
■補足

RPGツクール2003には「ならべかえ」と言う機能がありますが、
この「ならべかえ」を使った場合、主人公の並び順を変数へ代入する事はできません。

主人公の並び順を変数に保存したい時には、
上記の■メンバーの入れ替えを行う度に主人公の番号を変数へ代入するを設定してください。


▲トップへ戻る▲



◎関連ページ

●パーティー編成(マップ移動型)
●イベントコマンド:変数の操作
●イベントコマンド:メンバーの入れ替え
●イベントコマンド:条件分岐
●データベース「主人公」

YADOTトップ  このサイトは何?  気紛れな空間へ戻る  メール