【RPGツクールMV】指定した変数の指定した桁に対して、参照したり計算したりするプラグイン「VariableDigitsHandler.js」

習慣化62日目

RPGツクールMV用にプラグインを作成しました。
プラグイン「VariableDigitsHandler.js」の紹介です。

ダウンロード

プラグインファイルはDropboxに配置しています。
下記リンク先からファイルをダウンロードしてください。

www.dropbox.com

利用規約
プラグインはMITライセンスのもとで公開されています。
http://opensource.org/licenses/mit-license.php

プラグインの説明

指定した変数の指定した桁に対して、参照したり計算したりします。
変数の中身は数字だけでなく文字列にも対応しています。
下記内容はプラグインのヘルプにも記載しています。

プラグインコマンド

イベントコマンド「プラグインコマンド」から実行してください。 (引数の間は半角スペースで区切ってください)

コマンドの書式

 VDH_CTD 操作 対象変数 桁数 [計算値] [代入先変数]
 ※VDH_ Command Target Digit の意

ざっくり実行例

<参照(REF)>

 変数1の3桁目を参照し、変数10に代入
 VDH_CTD 参照 1 3 10

 変数1の左から2桁目を参照し、変数10に代入
 VDH_CTD REF 1 -2 10

<計算(CAL)>

 変数1の3桁目に5を加算し、変数10に代入
 VDH_CTD 計算 1 3 5 10

 変数1の左から4桁目に -2を計算(減算)し、変数1を上書き更新
 VDH_CTD CAL 1 -4 -2

 変数1(文字列)の3桁目に 特別な を結合し、変数10に代入
 VDH_CTD 計算 1 3 特別な 10

操作についての詳細

 VDH_CTD 操作 対象変数 桁数 [計算値] [代入先変数]

 第一引数で操作を指定します。
 (括弧内で書かれた文字でも指定できます)

参照(REF)

  指定した変数の、任意の桁の数を参照します。

 (例) 変数13桁目 を参照し、結果を 変数10 に代入する
 VDH_CTD 参照 1 3 10
 →変数1が 3857461 なら 変数10 に 4 が代入される

  第三引数の桁数に負の数を指定すると、左から桁数カウントします。

 (例) 変数1左から2桁目 を参照し、結果を 変数10 に代入する
 VDH_CTD REF 1 -2 10
 →変数1が 3857461 なら 変数10 に 8 が代入される

 指定した変数の中身が文字列だった場合、対象位置の文字が代入先変数に入ります。

 (例) 変数13桁目 を参照し、結果を 変数10 に代入する
 VDH_CTD 参照 1 3 10
 →変数1が 「これは文字列です」 なら 変数10 に 「列」 が代入される

 VDH_CTD REF 1 -2 10
 →変数1が 「これは文字列です」 なら 変数10 に 「れ」 が代入される

計算(CAL)

  指定した変数の、任意の桁を、計算値で計算します。

 (例) 変数13桁目 に、計算値 5を加算し、結果を 変数10 に代入する
 VDH_CTD 計算 1 3 5 10
 →変数1が 3857461 なら 変数10 に 3857961 が代入される

  計算値に負の数を入れると減算します。
 VDH_CTD CAL 1 3 -2 10
 →変数1が 3857461 なら 変数10 に 3857261 が代入される

  桁の繰り上がり繰り下がりはなく、0に戻ります。ダイヤルのイメージです。
 VDH_CTD 計算 1 3 8 10
 →変数1が 3857461 なら 変数10 に 3857261 が代入される
 VDH_CTD 計算 1 3 -5 10
 →変数1が 3857461 なら 変数10 に 3857961 が代入される

  第三引数の桁数に負の数を指定すると、左から桁数カウントします。

 (例) 変数1左から2桁目 に、計算値 5を加算し、結果を 変数10 に代入する
 VDH_CTD 計算 1 -2 5 10
 →変数1が 3857461 なら 変数10 に 3357461 が代入される

  第五引数の代入先変数を指定しないと、第二引数の対象変数を上書きする形で計算します。

 (例) 変数13桁目 に、計算値 5を加算する
 VDH_CTD 計算 1 3 5
 →変数1が 3857461 なら 変数1 が 3857961 になる

 (例) 変数1左から4桁目 に、計算値 -5を計算する(減算)
 VDH_CTD 計算 1 -4 -5
 →変数1が 3857461 なら 変数1 が 3852961 になる

 指定した変数の中身が文字列だった場合、対象位置に文字列が結合されます。

 (例) 変数13桁目「のテスト」を結合し、結果を 変数10 に代入する
 VDH_CTD 計算 1 3 のテスト 10
 →変数1が 「これは文字列です」 なら 変数10 に 「これは文字列のテストです」 が代入される

 左からの桁数カウントと変数上書きも同様
 VDH_CTD CAL 1 -3 特別な
 →変数1が 「これは文字列です」 なら 変数1 が 「これは特別な文字列です」 になる