RPGツクール2000/スイッチ・変数【サイトトップへ戻る】
■パーセントの計算
(更新:2020/06/28)


ショートカット
■基本設定
■5桁以上のパーセント計算
■計算結果を文章ウィンドウに表示
■小数点以下の表示
■小数点以下を四捨五入


  
■基本設定

パーセントの計算は、通常は「A÷B×100」と言った計算式ですが、
整数しか扱えないRPGツクール2000で計算すると、
25%」や「70%」などの計算結果が全て「0%」になってしまいます。

そこで「A×100÷B」と先に100倍してから割るようにすると、
「25%」や「70%」などの結果を出す事ができます。

▼主人公のHPが何パーセント残っているのかを調べる時の設定例
◆変数の操作:[0001:パーセント]代入,主人公01のHP
◆変数の操作:[0001:パーセント]乗算,100
◆変数の操作:[0001:パーセント]除算,主人公01の最大HP


▲トップへ戻る▲


  
■5桁以上のパーセント計算

5桁以上の数値に乗算100を実行すると、変数の上限である999999を超えてしまい、
正確なパーセントの計算を行う事ができません。

5桁以上の計算は、以下のように設定にしてください。

▼5桁以上のパーセント計算の設定例
◆変数の操作:[0001:パーセント]代入,〜現在値〜
◆変数の操作:[0002:最大値計算]代入,〜最大値〜
◆変数の操作:[0002:最大値計算]除算,100
◆変数の操作:[0001:パーセント]除算,変数[0002]の値



最大値が4桁以下も5桁以上もある時には、
両方に対応できるようにした方が良いでしょう。

▼4桁以下と5桁以上の両方を設定した設定例
◆変数の操作:[0002:最大値計算]代入,〜最大値〜
◆条件分岐:変数[0002:最大値計算]が10000以上(オプション:ON)<最大値が5桁以上の時
 ◆変数の操作:[0001:パーセント]代入,〜現在値〜
 ◆変数の操作:[0002:最大値計算]除算,100
 ◆変数の操作:[0001:パーセント]除算,変数[0002]の値
 ◆
:それ以外の場合<最大値が4桁以下の時
 ◆変数の操作:[0003:パーセント]代入,〜現在値〜
 ◆変数の操作:[0003:パーセント]乗算,100
 ◆変数の操作:[0003:パーセント]除算,〜最大値〜
 ◆
:分岐終了


▲トップへ戻る▲


  
■計算結果を文章ウィンドウに表示

制御文字\V[半角変数番号]を利用する事で、
文章ウィンドウに変数の値を表示する事ができます。

▼設定例
◆変数の操作:[0001:パーセント]代入,主人公01のHP
◆変数の操作:[0001:パーセント]乗算,100
◆変数の操作:[0001:パーセント]除算,主人公01の最大HP
◆文書:残りHP:\V[1]%





さらに現在のHPなどを変数に代入すれば、
パーセントの表示と一緒に表示する事もできます。

▼設定例
◆変数の操作:[0001:HP]代入,主人公01のHP
◆変数の操作:[0002:最大HP]代入,主人公01の最大HP
◆変数の操作:[0003:パーセント]代入,主人公01のHP
◆変数の操作:[0003:パーセント]乗算,100
◆変数の操作:[0003:パーセント]除算,主人公01の最大HP
◆文書:  HP:\V[1]
:  :最大HP:\V[2]
:  :残りHP:\V[3]%




▲トップへ戻る▲


  
■小数点以下の表示

小数点以下(0.1単位)まで表示したい時には、以下のように設定してください。

▼3桁以下の設定例
◆変数の操作:[0001〜0002]代入,主人公01のHP
◆変数の操作:[0001〜0002]乗算,1000
◆変数の操作:[0001〜0002]除算,主人公01の最大HP
◆変数の操作:[0001:パーセント]除算,10
◆変数の操作:[0002:パーセント0.1]剰余,10
◆文書:残りHP:\V[1].\V[2]%


▼表示結果(現在HP:38/最大HP:48)



4桁以上になる場合は、以下のように設定してください。

▼4桁の設定例
◆変数の操作:[0001〜0002]代入,〜現在値〜
◆変数の操作:[0001〜0002]乗算,100
◆変数の操作:[0003:最大値計算]代入,〜最大値〜
◆変数の操作:[0003:最大値計算]除算,10
◆変数の操作:[0001〜0002]除算,変数[0003]の値
◆変数の操作:[0001:パーセント]除算,10
◆変数の操作:[0002:パーセント0.1]剰余,10
◆文書:残りHP:\V[1].\V[2]%

▼5桁の設定例
◆変数の操作:[0001〜0002]代入,〜現在値〜
◆変数の操作:[0001〜0002]乗算,10
◆変数の操作:[0003:最大値計算]代入,〜最大値〜
◆変数の操作:[0003:最大値計算]除算,100
◆変数の操作:[0001〜0002]除算,変数[0003]の値
◆変数の操作:[0001:パーセント]除算,10
◆変数の操作:[0002:パーセント0.1]剰余,10
◆文書:残りHP:\V[1].\V[2]%

▼6桁の設定例
◆変数の操作:[0001〜0002]代入,〜現在値〜
◆変数の操作:[0003:最大値計算]代入,〜最大値〜
◆変数の操作:[0003:最大値計算]除算,1000
◆変数の操作:[0001〜0002]除算,変数[0003]の値
◆変数の操作:[0001:パーセント]除算,10
◆変数の操作:[0002:パーセント0.1]剰余,10
◆文書:残りHP:\V[1].\V[2]%

▼1〜6桁に対応した設定例
◆変数の操作:[0001〜0002]代入,〜現在値〜
◆変数の操作:[0003:最大値計算]代入,〜最大値〜
◆条件分岐:変数[0003:最大値計算]が100000以上(オプション:ON)<最大値が6桁の時
 ◆変数の操作:[0003:最大値計算]除算,1000
 ◆
:それ以外の場合<最大値が5桁以下の時
 ◆条件分岐:変数[0003:最大値計算]が10000以上(オプション:ON)<最大値が5桁の時
  ◆変数の操作:[0001〜0002]乗算,10
  ◆変数の操作:[0003:最大値計算]除算,100
  ◆
 :それ以外の場合<最大値が4桁以下の時
  ◆条件分岐:変数[0003:最大値計算]が1000以上(オプション:ON)<最大値が4桁の時
   ◆変数の操作:[0001〜0002]乗算,100
   ◆変数の操作:[0003:最大値計算]除算,10
   ◆
  :それ以外の場合<最大値が3桁以下の時
   ◆変数の操作:[0001〜0002]乗算,1000
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
:分岐終了
◆変数の操作:[0001〜0002]除算,変数[0003]の値
◆変数の操作:[0001:パーセント]除算,10
◆変数の操作:[0002:パーセント0.1]剰余,10
◆文書:残りHP:\V[1].\V[2]%


▲トップへ戻る▲


  
■小数点以下を四捨五入

0.5%の時に「1」に繰り上げてパーセントを出す設定例です。

▼3桁の設定例
◆変数の操作:[0001:パーセント]代入,主人公01のHP
◆変数の操作:[0001:パーセント]乗算,1000
◆変数の操作:[0001:パーセント]除算,主人公01の最大HP
◆変数の操作:[0001:パーセント]加算,5
◆変数の操作:[0001:パーセント]除算,10
◆文書:残りHP:\V[1]%


▼表示結果(HP:35/最大HP:48/パーセント:72.8%)



4桁以上になる場合は、以下のように設定してください。

▼4桁の設定例
◆変数の操作:[0001:パーセント]代入,〜現在値〜
◆変数の操作:[0001:パーセント]乗算,100
◆変数の操作:[0002:最大値計算]代入,〜最大値〜
◆変数の操作:[0002:最大値計算]除算,10
◆変数の操作:[0001:パーセント]除算,変数[0002]の値
◆変数の操作:[0001:パーセント]加算,5
◆変数の操作:[0001:パーセント]除算,10
◆文書:残りHP:\V[1]%

▼5桁の設定例
◆変数の操作:[0001:パーセント]代入,〜現在値〜
◆変数の操作:[0001:パーセント]乗算,10
◆変数の操作:[0002:最大値計算]代入,〜最大値〜
◆変数の操作:[0002:最大値計算]除算,100
◆変数の操作:[0001:パーセント]除算,変数[0002]の値
◆変数の操作:[0001:パーセント]加算,5
◆変数の操作:[0001:パーセント]除算,10
◆文書:残りHP:\V[1]%

▼6桁の設定例
◆変数の操作:[0001:パーセント]代入,〜現在値〜
◆変数の操作:[0002:最大値計算]代入,〜最大値〜
◆変数の操作:[0002:最大値計算]除算,1000
◆変数の操作:[0001:パーセント]除算,変数[0002]の値
◆変数の操作:[0001:パーセント]加算,5
◆変数の操作:[0001:パーセント]除算,10
◆文書:残りHP:\V[1]%

▼1〜6桁に対応した設定例
◆変数の操作:[0001:パーセント]代入,〜現在値〜
◆変数の操作:[0002:最大値計算]代入,〜最大値〜
◆条件分岐:変数[0002:最大値計算]が100000以上(オプション:ON)
 ◆変数の操作:[0002:最大値計算]除算,1000
 ◆
:それ以外の場合
 ◆条件分岐:変数[0002:最大値計算]が10000以上(オプション:ON)
  ◆変数の操作:[0001:パーセント]乗算,10
  ◆変数の操作:[0002:最大値計算]除算,100
  ◆
 :それ以外の場合
  ◆条件分岐:変数[0002:最大値計算]が1000以上(オプション:ON)
   ◆変数の操作:[0001:パーセント]乗算,100
   ◆変数の操作:[0002:最大値計算]除算,10
   ◆
  :それ以外の場合
   ◆変数の操作:[0001:パーセント]乗算,1000
   ◆
  :分岐終了
  ◆
 :分岐終了
 ◆
:分岐終了
◆変数の操作:[0001:パーセント]除算,変数[0002]の値
◆変数の操作:[0001:パーセント]加算,5
◆変数の操作:[0001:パーセント]除算,10
◆文書:残りHP:\V[1]%


▲トップへ戻る▲



◎関連ページ

●制御文字と外字
●イベントコマンド:変数の操作

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