RPGツクール2000/スイッチ・変数
■1〜2個の変数を使った設定例
(更新:2015/11/28)


1〜2個の変数を使ったイベントの設定例を紹介します。



☆初めに
「変数」と聞いて「何だか難しそう」と思う方はいると思います。

確かに自作戦闘などの複雑なイベントを作る場合は、
大量の変数を使う事になりますので、変数の扱いも難しくなります。

しかし変数を数個だけ使用するなど、使用する変数の数を抑えれば、
ツクールの初心者でも比較的簡単に扱う事ができます。

このページでは、1〜2個の変数だけで作れる簡単なイベント設定を紹介します。

変数に関する基本的な情報は「変数」って何?のページで紹介しています。
【「変数」って何?のページを開く】



制御文字\V[〜変数番号〜]を使いますと、
文章の表示選択肢の表示の中で変数の値を表示する事ができます。
例えば、変数0001番の値を文章で表示する場合は、
◆文章:\V[1]
と言った設定になります。
【制御文字に関する説明のページを開く】



テストプレー中に現在の変数の値を確認したい時には、
キーボード上段にある[F9]を押してください。



☆ランダムにセリフを変える
町の人と話しかけた時にランダムでセリフの表示を変える設定例です。



今回の処理では乱数を使います。
乱数とは、設定された値の範囲内でコンピューターが自動的に値を決定します。
今回の処理では「乱数[0〜2]」を設定しますので、
コンピューターが自動的に「0」「1」「2」の値から1つを決定します。
ランダムなので「0」の次が「2」になる事もありますし、
0」「0」と同じ値が続く場合もあります。



■マップイベント「町の人」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:町の人の画像
◆変数の操作:[0001:乱数]代入,乱数[0〜2]
◆条件分岐:変数[0001:乱数]が0
 ◆文章:こんにちわ!
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が1
 ◆文章:良い天気ですね!
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が2
 ◆文章:この村は平和だ!
 ◆
:分岐終了




☆前のセリフと異なるセリフを表示
前と異なるセリフが表示されるように設定します。

上記の☆ランダムにセリフを変えると似ていますが、
上記の☆ランダムにセリフを変えると大きく異なる点は、
同じセリフを2回連続で表示しない事です。

処理としては変数0001番の値が3以上になったら、
減算3を実行して変数0001番の値が常に0〜2の間になるように設定します。



■マップイベント「町の人」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:町の人の画像
◆変数の操作:[0001:乱数]加算,乱数[1〜2]
◆条件分岐:変数[0001:乱数]が3以上
 ◆変数の操作:[0001:乱数]減算,3
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が0
 ◆文章:こんにちわ!
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が1
 ◆文章:良い天気ですね!
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が2
 ◆文章:この村は平和だ!
 ◆
:分岐終了


なお、ランダム設定を行わずに、
セリフ1 → セリフ2 → セリフ3 → セリフ1…
の順番で表示したい時には、上記設定の、
◆変数の操作:[0001:乱数]加算,乱数[1〜2]
の部分を、
◆変数の操作:[0001:乱数]加算,1
に変えてください。



☆取得できるアイテムの内容をランダムで変える
ツボを調べたら3種類のアイテムからどれか1つを取得できるようにします。





■マップイベント「ツボ」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:ツボの絵
◆条件分岐:スイッチ[0001:ツボ01]がOFF
 ◆イベント処理の中断
 ◆
:分岐終了
◆スイッチの操作:[0001:ツボ01]をONにする
◆効果音の演奏:あたり2
◆変数の操作:[0001:乱数]代入,乱数[0〜2]
◆条件分岐:変数[0001:乱数]が0
 ◆アイテムの増減:ポーションを1増やす
 ◆文章:ポーションを手に入れた。
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が1
 ◆アイテムの増減:アンチドーテを1増やす
 ◆文章:アンチドーテを手に入れた。
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が2
 ◆アイテムの増減:ハイポーションを1増やす
 ◆文章:ハイポーションを手に入れた。
 ◆
:分岐終了


※複数のツボを設定する場合は、
 ツボごとに設定するスイッチの番号を変えてください。




上記の設定では、同じ確率でアイテムを取得する事ができます。
もしもアイテムの種類によって取得できる確率を変えたい時には、
以下のように設定してください。
アイテムの種類 取得確率 条件分岐の値
ポーション 50% 50以下
アンチドーテ 40% 51〜90
ハイポーション 10% 91以上

■マップイベント「ツボ」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:ツボの絵
◆条件分岐:スイッチ[0001:ツボ01]がOFF
 ◆イベント処理の中断
 ◆
:分岐終了
◆スイッチの操作:[0001:ツボ01]をONにする
◆効果音の演奏:あたり2
◆変数の操作:[0001:乱数]代入,乱数[1〜100]
◆条件分岐:変数[0001:乱数]が50以下
 ◆アイテムの増減:ポーションを1増やす
 ◆文章:ポーションを手に入れた。
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が51以上
 ◆条件分岐:変数[0001:乱数]が90以下
  ◆アイテムの増減:アンチドーテを1増やす
  ◆文章:アンチドーテを手に入れた。
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が91以上
 ◆アイテムの増減:ハイポーションを1増やす
 ◆文章:ハイポーションを手に入れた。
 ◆
:分岐終了




ツボを調べる直前にセーブして、良いアイテムが得られなかったらロードして、
良い物が出るまで何度もやり直す行為を防止したい時には、
以下のように設定してください。

■マップイベント「ツボ」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:ツボの絵
◆条件分岐:スイッチ[0001:ツボ01]がOFF
 ◆イベント処理の中断
 ◆
:分岐終了
◆スイッチの操作:[0001:ツボ01]をONにする
◆効果音の演奏:あたり2
◆条件分岐:変数[0001:乱数]が0
 ◆変数の操作:[0001:乱数]代入,乱数[1〜100]
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が50以下
 ◆アイテムの増減:ポーションを1増やす
 ◆文章:ポーションを手に入れた。
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が51以上
 ◆条件分岐:変数[0001:乱数]が90以下
  ◆アイテムの増減:アンチドーテを1増やす
  ◆文章:アンチドーテを手に入れた。
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が91以上
 ◆アイテムの増減:ハイポーションを1増やす
 ◆文章:ハイポーションを手に入れた。
 ◆
:分岐終了
◆変数の操作:[0001:乱数]代入,乱数[1〜100]


上記の設定では、
初めてツボを調べた時のみ直前にセーブしてやり直す方法が使えますが、
2つ目以降のツボを調べた時には、
前のツボを調べた時の最後に次のツボの乱数を決めてしまいますので、
直前にセーブしてやり直す方法が使えません。



★補足
ツボの中身がランダム設定であるかどうかは、
同じツボで2回以上アイテムを取得する必要があり、
やり直しが少ない作品や2周目のプレーが無い作品では、
ツボの中身がランダムで変わる事に気付かれない可能性もあり、
ランダム設定が単なる制作者の自己満足で終わってしまう可能性もあります。

また運悪くポーションのみの取得になったり、
逆に運良くハイポーションのみの取得になったりと、
プレイヤーによって取得するアイテムの内容に偏りが出て、
ゲームの難易度がプレイヤーによって変わってくる可能性もあります。

ただ、ダンジョンに入る度にツボや宝箱のアイテムが再び取れるようになったり、
お金を払うとランダムでアイテムが手に入るようなイベントを作る場合は、
このランダム設定が生かされると思います。

なお、お金を払ってランダムでアイテムが手に入るイベントの設定方法は、
以下のようになります。
文章の表示にある「\$」は現在の所持金を表示する制御文字です。

■マップイベント「ツボ」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:ツボの絵
◆文章:40Gを払ってランダムのツボを調べますか?\$
◆選択肢の表示:調べる/調べない
:[調べる]の場合
 ◆
:[調べる]の場合
 ◆イベント処理の中断
 ◆
:分岐終了
◆条件分岐:所持金が39以下
 ◆お金が足りません。
 ◆イベント処理の中断
 ◆
:分岐終了
◆所持金の増減:所持金を40減らす
◆効果音の演奏:あたり2
◆条件分岐:変数[0001:乱数]が0
 ◆変数の操作:[0001:乱数]代入,乱数[1〜100]
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が50以下
 ◆アイテムの増減:ポーションを1増やす
 ◆文章:ポーションを手に入れた。
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が51以上
 ◆条件分岐:変数[0001:乱数]が90以下
  ◆アイテムの増減:アンチドーテを1増やす
  ◆文章:アンチドーテを手に入れた。
  ◆
 :分岐終了
 ◆
:分岐終了
◆条件分岐:変数[0001:乱数]が91以上
 ◆アイテムの増減:ハイポーションを1増やす
 ◆文章:ハイポーションを手に入れた。
 ◆
:分岐終了
◆変数の操作:[0001:乱数]代入,乱数[1〜100]




☆パーティー内の人数によって処理を変える
パーティーにいる人数を変数に代入し、
その情報を基にイベント処理が変わるようにします。

今回はパーティーの人数が3人以上でないと、
宝箱のフタが開かないように設定します。



パーティー人数を設定する時には、
変数の操作のオペランドの「その他」をクリックして設定してください。


■マップイベント「宝箱01」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
アニメーションタイプ:向き固定/足踏みなし
グラフィック:フタが閉まっている宝箱の絵
◆変数の操作:[0001:パーティー人数]代入,パーティー人数
◆条件分岐:変数[0001:パーティー人数]が2以下
 ◆文章:フタが重くて開けられない。
 :  :もっとパーティー人数がいないとダメだな。
 ◆イベント処理の中断
 ◆
:分岐終了
◆効果音の演奏:開ける1
◆キャラクターの動作指定:このイベント,右を向く,上を向く,左を向く(移動頻度5)
◆指定動作の全実行
◆スイッチの操作:[0001:宝箱01]をONにする
◆効果音の演奏:あたり2
◆アイテムの増減:ポーションを1増やす
◆文章:ポーションを手に入れた。


▼2ページ目
イベント出現条件:スイッチ[0001:宝箱01]がON
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
アニメーションタイプ:向き固定/足踏みなし
グラフィック:フタが開いている宝箱の絵
イベント実行内容には何も設定しません。

※複数の宝箱を設定する場合は、
 宝箱ごとに設定するスイッチの番号を変えてください。




☆平均レベルを算出
パーティー内にいる主人公の平均レベルを算出します。

◆変数の操作:[0001:平均レベル]代入,0
◆条件分岐:主人公01がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公01のレベル
 ◆
:分岐終了
◆条件分岐:主人公02がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公02のレベル
 ◆
:分岐終了
◆条件分岐:主人公03がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公03のレベル
 ◆
:分岐終了
◆条件分岐:主人公04がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公04のレベル
 ◆
:分岐終了
◆変数の操作:[0001:平均レベル]除算,パーティーの人数


このイベント処理を利用する事で、例えば平均レベルが5以上でないと、
ダンジョン内に入る事ができないイベントを設定する事ができます。
◆変数の操作:[0001:平均レベル]代入,0
◆条件分岐:主人公01がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公01のレベル
 ◆
:分岐終了
◆条件分岐:主人公02がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公02のレベル
 ◆
:分岐終了
◆条件分岐:主人公03がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公03のレベル
 ◆
:分岐終了
◆条件分岐:主人公04がパーティーにいる
 ◆変数の操作:[0001:平均レベル]加算,主人公04のレベル
 ◆
:分岐終了
◆変数の操作:[0001:平均レベル]除算,パーティーの人数
◆条件分岐:変数[0001:平均レベル]が4以下
 ◆文章:まだこのレベルでは入らない方が良さそうだ。
 ◆イベント処理の中断
 ◆
:分岐終了
◆場所移動:ダンジョン(009,007)


更に設定を追加し、パーティー人数が2人以上でないと、
ダンジョン内に入る事ができないように設定する事もできます。
◆変数の操作:[0001:人数&平均レベル]代入,パーティーの人数
◆条件分岐:変数[0001:人数&平均レベル]が1
 ◆文章:ダンジョンに入るには仲間がいた方が良さそうだ。
 ◆イベント処理の中断
 ◆
:分岐終了
◆変数の操作:[0001:人数&平均レベル]代入,0
◆条件分岐:主人公01がパーティーにいる
 ◆変数の操作:[0001:人数&平均レベル]加算,主人公01のレベル
 ◆
:分岐終了
◆条件分岐:主人公02がパーティーにいる
 ◆変数の操作:[0001:人数&平均レベル]加算,主人公02のレベル
 ◆
:分岐終了
◆条件分岐:主人公03がパーティーにいる
 ◆変数の操作:[0001:人数&平均レベル]加算,主人公03のレベル
 ◆
:分岐終了
◆条件分岐:主人公04がパーティーにいる
 ◆変数の操作:[0001:人数&平均レベル]加算,主人公04のレベル
 ◆
:分岐終了
◆変数の操作:[0001:人数&平均レベル]除算,パーティーの人数
◆条件分岐:変数[0001:人数&平均レベル]が4以下
 ◆文章:まだこのレベルでは入らない方が良さそうだ。
 ◆イベント処理の中断
 ◆
:分岐終了
◆場所移動:ダンジョン(009,007)




☆パーセントの計算
変数を使ってパーセントの計算を行います。

通常のパーセントの計算では、
現在値÷最大値×100」と言った計算式になりますが、
RPGツクール2000では小数点以下の数値を扱う事ができませんので、
RPGツクール2000で設定する場合は「現在値×100÷最大値」と言ったように、
先に100倍してから最大値で割るように設定します。

下記は主人公01の残りHPをパーセントで計算する時の設定例です。
◆変数の操作:[0001:パーセント]代入,主人公01のHP
◆変数の操作:[0001:パーセント]乗算,100
◆変数の操作:[0001:パーセント]除算,主人公01の最大HP


最大HPが「50」で現在のHPが「30」である時に、
上記のイベントを実行しますと、変数0001番には「60」が設定されます。
つまり主人公01のHPは60%残っている事が分かります。



☆アイテムを取得した回数をカウント
宝箱やツボを調べてアイテムを取得した時の回数をカウントします。

▼ツボの場合
■マップイベント「ツボ」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
グラフィック:ツボの絵
◆条件分岐:スイッチ[0001:ツボ01]がOFF
 ◆イベント処理の中断
 ◆
:分岐終了
◆スイッチの操作:[0001:ツボ01]をONにする
◆変数の操作:[0001:アイテム取得回数]加算,1
◆効果音の演奏:あたり2
◆アイテムの増減:ポーションを1増やす
◆文章:ポーションを手に入れた。




▼宝箱の場合
■マップイベント「宝箱01」
▼1ページ目
イベント出現条件:なし
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
アニメーションタイプ:向き固定/足踏みなし
グラフィック:フタが閉まっている宝箱の絵
◆効果音の演奏:開ける1
◆キャラクターの動作指定:このイベント,右を向く,上を向く,左を向く(移動頻度5)
◆指定動作の全実行
◆スイッチの操作:[0001:宝箱01]をONにする
◆変数の操作:[0001:アイテム取得回数]加算,1
◆効果音の演奏:あたり2
◆アイテムの増減:ポーションを1増やす
◆文章:ポーションを手に入れた。


▼2ページ目
イベント出現条件:スイッチ[0001:宝箱01]がON
イベント開始条件:決定キーが押されたとき
プライオリティタイプ:通常キャラと重ならない
アニメーションタイプ:向き固定/足踏みなし
グラフィック:フタが開いている宝箱の絵
イベント実行内容には何も設定しません。



▼表示設定例
文章の表示で表示する時には、以下のように設定してください。
◆文章:アイテムの取得数:\V[1]個
▼実際の表示状態


更に使用する変数を増やす事で、アイテムの取得率を表示する事もできます。
※以下は作品内にツボや宝箱が60個ある時の設定例です。
◆変数の操作:[0002:取得率]代入,変数[0001]の値
◆変数の操作:[0002:取得率]乗算,100
◆変数の操作:[0002:取得率]除算,60
◆文章:アイテムの取得数:\V[1]個
:  :アイテムの取得率:\V[2]%

▼実際の表示状態




◎関連ページ
 ●「変数」って何?
 ●「乱数」って何?
 ●「剰余」って何?
 ●イベントコマンド:変数の操作

 ●「スイッチ」って何?
 ●スイッチの設定例


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