すみません、素朴な疑問なのですが、
このような条件分岐+変数の操作をスクリプト等で1行〜数行にまとめたりすることは可能でしょうか?
あるいはそのような操作ができるプラグインは無いでしょうか?
もう少し見た目をスッキリさせられたら良いなと思いまして…。
条件分岐の簡略化
Re: 条件分岐の簡略化
// 三行 (代入する値を配列に入れておき、汎用1の値をその添え字にします)
var data = [null, 111, 222, 333];
var gp1 = $gameVariables.value(1);
$gameVariables.setValue(6, data[gp1]);
// 二行 (値はその場に直接記述しない方が良いですが)
var gp1 = $gameVariables.value(1);
$gameVariables.setValue(6, [null, 111, 222, 333][gp1]);
// 一行でいくなら
$gameVariables.setValue(6, [null, 111, 222, 333][$gameVariables.value(1)]);
var data = [null, 111, 222, 333];
var gp1 = $gameVariables.value(1);
$gameVariables.setValue(6, data[gp1]);
// 二行 (値はその場に直接記述しない方が良いですが)
var gp1 = $gameVariables.value(1);
$gameVariables.setValue(6, [null, 111, 222, 333][gp1]);
// 一行でいくなら
$gameVariables.setValue(6, [null, 111, 222, 333][$gameVariables.value(1)]);
Re: 条件分岐の簡略化
汎用1の値と汎用6に代入する値がご提示通りのものであり、汎用1は1〜3の値しか絶対に入らないということであれば
$gameVariables.setValue(6, $gameVariables.value(1) * 111);
という書き方もあると思います。
ご提示の値はあくまで例であり、汎用1と汎用6はさまざまな値を取るということであれば
switch($gameVariables.value(1)) {
case 1: $gameVariables.setValue(6, 111); break;
case 2: $gameVariables.setValue(6, 222); break;
case 3: $gameVariables.setValue(6, 333); break;
}
こんな感じで。
$gameVariables.setValue(6, $gameVariables.value(1) * 111);
という書き方もあると思います。
ご提示の値はあくまで例であり、汎用1と汎用6はさまざまな値を取るということであれば
switch($gameVariables.value(1)) {
case 1: $gameVariables.setValue(6, 111); break;
case 2: $gameVariables.setValue(6, 222); break;
case 3: $gameVariables.setValue(6, 333); break;
}
こんな感じで。
Re: 条件分岐の簡略化
ジャングル様、奏ねこま様、ご回答ありがとうございました!
どちらの方法でも想定通りに動かすことができました。
おかげさまでイベントの内容をかなりスッキリさせられたうえ、
今後の制作の時短にもなりそうです。感謝します!
どちらの方法でも想定通りに動かすことができました。
おかげさまでイベントの内容をかなりスッキリさせられたうえ、
今後の制作の時短にもなりそうです。感謝します!