RPGツクール2000/主人公・自作メニュー
■主人公の選択(4人から1人)
(更新:2015/01/31)


ゲーム開始時に4人の主人公から1人を選択する自作メニューを設定します。




自作メニューの制作に関する基礎説明は、
別のページにて紹介しています。
【自作メニューの基礎説明を見る】

動作見本用のサンプルデータ
サンプルのダウンロードは↓をクリックしてください。
サンプルのイベント設定状況を見る場合は、
ツクールの作品データが入っているフォルダを開いて、
その中にサンプルの作品データを入れてください。
【ツクールのフォルダの開き方を見る】
このサンプルデータのイベント設定をコピー&貼り付けして、
制作中の作品に使用する場合は、
イベントの処理構造を理解した上自己責任でご利用ください。

動作確認用のサンプル内では正常に動いていたイベントが、
制作中の作品にコピー&貼り付けしたら正常に動かなくなった場合は、
明らかにコピー&貼り付けの作業に問題があった事になります。



8人から4人を選ぶ設定は、以下をクリックしてください。
【主人公の選択(8人から4人)のページを見る】

ゲーム開始時ではなく、ゲームの途中でメンバーが変わる設定を行いたい場合は、
以下をクリックしてください。
【パーティー編成(マップ移動型)のページを見る】



☆準備
主人公を選択する時に使うマップを横20×縦15マスで作成してください。

作成しましたマップにパーティーの初期位置と、
主人公のグラフィックを表示する4つのマップイベントを設定してください。


マップイベントの並び順は、
主人公01 主人公02 主人公03 主人公04
としてください。
※マップイベントの設定位置は上の画像で示している位置に設定してください。
※マップイベントには「主人公01」などと分かりやすい名前を付けてください。
※マップイベントの設定はグラフィックだけを設定してください。



主人公を選択する時に使用する選択カーソルをピクチャー画像として用意してください。
▼選択用枠(横22×縦38ピクセル)


画像は素材管理の「Picture」のフォルダへインポートしてください。

※上のカーソル画像を使う場合は、
 カーソルの画像の上で右クリック→「名前を付けて保存」を選択して、
 分かりやすい所へ保存し、ツクールの素材管理からインポートしてください。




データベース「システム」の画面を開き、
初期パーティー1人目の設定を「(なし)」にしてください。



以上で準備完了です。



☆カーソルのピクチャー表示位置を確認
主人公を選択するカーソルの表示は、ピクチャーを使って行います。
各主人公のカーソルの表示位置は以下の通りです。


初めは「X位置=88」「Y位置=112」(主人公01の位置)として、
左キーを押す→X表示位置「減算48」
右キーを押す→X表示位置「加算48」
と設定します。

一番右の主人公(X位置=232)を選択している時に右キーを押した時には、
一番左の主人公(X位置=88)の所にカーソルが戻るようにします。
一番左での左キーも同様に設定します。



☆イベントの設定
変数の番号使用内容の一覧表です。

変数
番号 名前 使用内容
0001 カーソル選択キャラ 選択している主人公の番号(1〜4)を記憶します。
0002 カーソルX位置 主人公を選択するカーソルの表示位置(X)を記憶。
0003 カーソルY位置 主人公を選択するカーソルの表示位置(Y)を記憶。
0004 キー入力 どのキーが押されたのかを記憶するのに使用。



マップ内の空いている所に、
主人公を選択するイベントを設定するマップイベントを作成してください。
■マップイベント「自作メニュー」
イベント出現条件:なし
イベント開始条件:自動的に始まる
グラフィック:透明
◆変数の操作:[0001:カーソル選択キャラ]代入,1<選択キャラの初期番号
◆変数の操作:[0002:カーソルX位置]代入,88<カーソルのX初期位置
◆変数の操作:[0003:カーソルY位置]代入,112<カーソルのY初期位置
◆ピクチャーの表示:1,選択用枠,(V[0002],V[0003])
◆文章:主人公を選択してください。
◆ラベルの設定:1番<カーソルの移動後と主人公の選択し直しの時に、ここへ戻されます
◆キー入力の処理:[0004:キー入力](左、右、決定/オプション:ON)
◆条件分岐;変数[0004:キー入力]が5<決定キーが押された時
 ◆文章:この主人公で宜しいですか?
 ◆選択肢の表示:はい/いいえ(キャンセルの場合:選択肢2)
 :[はい]の場合
  ◆
 :[いいえ]の場合
  ◆指定ラベルへ飛ぶ:1番
  ◆
 :分岐終了
 ◆画面の消去:〜お好きな画面の消去方法を設定〜
 ◆条件分岐:変数[0001:カーソル選択キャラ]が1<一番左の主人公を選択中
  ◆メンバーの入れ替え:主人公01を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が2<左から2番目の主人公を選択中
  ◆メンバーの入れ替え:主人公02を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が3<左から3番目の主人公を選択中
  ◆メンバーの入れ替え:主人公03を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が4<左から4番目の主人公を選択中
  ◆メンバーの入れ替え:主人公04を加える
  ◆
 :分岐終了
 ◆場所移動:〜ゲームが開始する場所〜
 ◆画面の表示:〜お好きな画面の表示方法を設定〜
 ◆イベント処理の中断
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が2<左キーが押された時
 ◆条件分岐;変数[0002:カーソルX位置]が88(オプション:ON)<一番左の主人公の表示位置である時
  ◆変数の操作:[0001:カーソル選択キャラ]代入,4<一番右の主人公を選択中にする
  ◆変数の操作:[0002:カーソルX位置]代入,232<一番右の主人公のX表示位置にする
  ◆
 :それ以外の場合<一番左の主人公の表示位置ではない時
  ◆変数の操作:[0001:カーソル選択キャラ]減算,1<1つ左の主人公を選択中にする
  ◆変数の操作:[0002:カーソルX位置]減算,48<1つ左の主人公のX表示位置にする
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が3<右キーが押された時
 ◆条件分岐;変数[0002:カーソルX位置]が232(オプション:ON)<一番右の主人公の表示位置である時
  ◆変数の操作:[0001:カーソル選択キャラ]代入,1<一番左の主人公を選択中にする
  ◆変数の操作:[0002:カーソルX位置]代入,88<一番左の主人公のX表示位置にする
  ◆
 :それ以外の場合<一番右の主人公の表示位置ではない時
  ◆変数の操作:[0001:カーソル選択キャラ]加算,1<1つ右の主人公を選択中にする
  ◆変数の操作:[0002:カーソルX位置]加算,48<1つ右の主人公のX表示位置にする
  ◆
 :分岐終了
 ◆
:分岐終了
◆効果音の演奏:カーソル1
◆ピクチャーの移動:1,(V[0002],V[0003]),0.0秒(W)
◆指定ラベルへ飛ぶ:1番



以上で設定完了です。



☆8人から1人を選ぶ
4人から1人を選ぶ設定を8人から1人を選ぶ設定に変更します。

マップイベントの配置は以下の通りです。


カーソルの表示位置は以下の通りです。




この色の部分を追加・変更してください。

■マップイベント「自作メニュー」
イベント出現条件:なし
イベント開始条件:自動的に始まる
グラフィック:透明
◆変数の操作:[0001:カーソル選択キャラ]代入,1
◆変数の操作:[0002:カーソルX位置]代入,88
◆変数の操作:[0003:カーソルY位置]代入,96
◆ピクチャーの表示:1,waku,(V[0002],V[0003])
◆文章:主人公を選択してください。
◆ラベルの設定:1番
◆キー入力の処理:[0004:キー入力](・左・右・決定/オプション:ON)<キー追加
◆条件分岐;変数[0004:キー入力]が5
 ◆文章:この主人公で宜しいですか?
 ◆選択肢の表示:はい/いいえ(キャンセルの場合:選択肢2)
 :[はい]の場合
  ◆
 :[いいえ]の場合
  ◆指定ラベルへ飛ぶ:1番
  ◆
 :分岐終了
 ◆画面の消去:〜お好きな画面の消去方法を設定〜
 ◆条件分岐:変数[0001:カーソル選択キャラ]が1
  ◆メンバーの入れ替え:主人公01を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が2
  ◆メンバーの入れ替え:主人公02を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が3
  ◆メンバーの入れ替え:主人公03を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が4
  ◆メンバーの入れ替え:主人公04を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が5
  ◆メンバーの入れ替え:主人公05を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が6
  ◆メンバーの入れ替え:主人公06を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が7
  ◆メンバーの入れ替え:主人公07を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が8
  ◆メンバーの入れ替え:主人公08を加える
  ◆
 :分岐終了

 ◆場所移動:〜ゲームが開始する場所〜
 ◆画面の表示:〜お好きな画面の表示方法を設定〜
 ◆イベント処理の中断
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が2
 ◆条件分岐;変数[0002:カーソルX位置]が88(オプション:ON)
  ◆変数の操作:[0001:カーソル選択キャラ]加算,3
  ◆変数の操作:[0002:カーソルX位置]代入,232
  ◆
 :それ以外の場合
  ◆変数の操作:[0001:カーソル選択キャラ]減算,1
  ◆変数の操作:[0002:カーソルX位置]減算,48
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が3
 ◆条件分岐;変数[0002:カーソルX位置]が232(オプション:ON)
  ◆変数の操作:[0001:カーソル選択キャラ]減算,3
  ◆変数の操作:[0002:カーソルX位置]代入,88
  ◆
 :それ以外の場合
  ◆変数の操作:[0001:カーソル選択キャラ]加算,1
  ◆変数の操作:[0002:カーソルX位置]加算,48
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が1<下キーを押した時
 ◆条件分岐;変数[0003:カーソルY位置]が96(オプション:ON)
  ◆変数の操作:[0001:カーソル選択キャラ]加算,4
  ◆変数の操作:[0003:カーソルY位置]代入,144
  ◆
 :それ以外の場合
  ◆変数の操作:[0001:カーソル選択キャラ]減算,4
  ◆変数の操作:[0003:カーソルY位置]代入,96
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が4<上キーを押した時 ※分岐内は下キーと同じ設定
 ◆条件分岐;変数[0003:カーソルY位置]が96(オプション:ON)
  ◆変数の操作:[0001:カーソル選択キャラ]加算,4
  ◆変数の操作:[0003:カーソルY位置]代入,144
  ◆
 :それ以外の場合
  ◆変数の操作:[0001:カーソル選択キャラ]減算,4
  ◆変数の操作:[0003:カーソルY位置]代入,96
  ◆
 :分岐終了
 ◆
:分岐終了

◆効果音の演奏:カーソル1
◆ピクチャーの移動:1,(V[0002],V[0003]),0.0秒(W)
◆指定ラベルへ飛ぶ:1番



以上で設定完了です。



☆名前を表示させる
選択確認の文章の表示で、主人公の名前を表示させます。




名前の表示には制御文字を使います。
【制御文字について説明しているページを見る】

今回は主人公の名前を表示する「\n」と、
文字の色を変える「\c」の制御文字を使用します。



イベント設定内の…
◆文章:この主人公で宜しいですか?
の部分を…
◆文章:\c[4]\n[\v[1]]\c[0]で宜しいですか?
に変えてください。



なお、主人公の並びがデータベース「主人公」の並び順通りでは無い場合は、
以下のように設定してください。

下記は左から、
主人公01 主人公03 主人公05 主人公07
と並んだ場合の設定例です。

■マップイベント「自作メニュー」
イベント出現条件:なし
イベント開始条件:自動的に始まる
グラフィック:透明
◆変数の操作:[0001:カーソル選択キャラ]代入,1
◆変数の操作:[0002:カーソルX位置]代入,88
◆変数の操作:[0003:カーソルY位置]代入,112
◆ピクチャーの表示:1,waku,(V[0002],V[0003])
◆文章:主人公を選択してください。
◆ラベルの設定:1番
◆キー入力の処理:[0004:キー入力](左・右・決定/オプション:ON)
◆条件分岐;変数[0004:キー入力]が5
 ◆条件分岐:変数[0001:カーソル選択キャラ]が1
  ◆文章:\c[4]\n[1]\c[0]で宜しいですか?
  ◆選択肢の表示:はい/いいえ(キャンセルの場合:選択肢2)
  :[はい]の場合
   ◆
  :[いいえ]の場合
   ◆指定ラベルへ飛ぶ:1番
   ◆
  :分岐終了
  ◆画面の消去:〜お好きな画面の消去方法を設定〜
  ◆メンバーの入れ替え:主人公01を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が2
  ◆文章:\c[4]\n[3]\c[0]で宜しいですか?
  ◆選択肢の表示:はい/いいえ(キャンセルの場合:選択肢2)
  :[はい]の場合
   ◆
  :[いいえ]の場合
   ◆指定ラベルへ飛ぶ:1番
   ◆
  :分岐終了
  ◆画面の消去:〜お好きな画面の消去方法を設定〜
  ◆メンバーの入れ替え:主人公03を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が3
  ◆文章:\c[4]\n[5]\c[0]で宜しいですか?
  ◆選択肢の表示:はい/いいえ(キャンセルの場合:選択肢2)
  :[はい]の場合
   ◆
  :[いいえ]の場合
   ◆指定ラベルへ飛ぶ:1番
   ◆
  :分岐終了
  ◆メンバーの入れ替え:主人公05を加える
  ◆
 :分岐終了
 ◆条件分岐:変数[0001:カーソル選択キャラ]が4
  ◆文章:\c[4]\n[7]\c[0]で宜しいですか?
  ◆選択肢の表示:はい/いいえ(キャンセルの場合:選択肢2)
  :[はい]の場合
   ◆
  :[いいえ]の場合
   ◆指定ラベルへ飛ぶ:1番
   ◆
  :分岐終了
  ◆メンバーの入れ替え:主人公07を加える
  ◆
 :分岐終了

 ◆場所移動:〜ゲームが開始する場所〜
 ◆画面の表示:〜お好きな画面の表示方法を設定〜
 ◆イベント処理の中断
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が2
 ◆条件分岐;変数[0002:カーソルX位置]が88(オプション:ON)
  ◆変数の操作:[0001:カーソル選択キャラ]代入,4
  ◆変数の操作:[0002:カーソルX位置]代入,232
  ◆
 :それ以外の場合
  ◆変数の操作:[0001:カーソル選択キャラ]減算,1
  ◆変数の操作:[0002:カーソルX位置]減算,48
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐;変数[0004:キー入力]が3
 ◆条件分岐;変数[0002:カーソルX位置]が232(オプション:ON)
  ◆変数の操作:[0001:カーソル選択キャラ]代入,1
  ◆変数の操作:[0002:カーソルX位置]代入,88
  ◆
 :それ以外の場合
  ◆変数の操作:[0001:カーソル選択キャラ]加算,1
  ◆変数の操作:[0002:カーソルX位置]加算,48
  ◆
 :分岐終了
 ◆
:分岐終了
◆効果音の演奏:カーソル1
◆ピクチャーの移動:1,(V[0002],V[0003]),0.0秒(W)
◆指定ラベルへ飛ぶ:1番



以上で設定完了です。



◎関連ページ
 ●自作メニューの基礎
 ●主人公の選択(8人から4人)
 ●パーティー編成(マップ移動型)
 ●イベントコマンド:ピクチャーの表示
 ●イベントコマンド:ピクチャーの移動
 ●イベントコマンド:キー入力の処理


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