対応した変数への代入

返信する
ああああう
記事: 2
登録日時: 2020年4月15日(水) 03:28

対応した変数への代入

投稿記事 by ああああう »

こんばんは

スクリプトでの変数操作をしたいと思っていますが、どう書けば良いのか分からなかったので質問させて下さい。

いくつかの変数の中から条件にあったものを一つ選び、それに対応したもう一つの変数(片方が1なら11、2なら12のような)にそれぞれ別の数値を代入したいと考えています。

こんな感じが理想です
変数1~変数40の内、数値が0のものを一つ選び、その変数nに1を,変数n+50に30を代入する。

わかりにくい文になってしまいましたが、よろしくお願いします
アバター
トリアコンタン
記事: 2311
登録日時: 2015年11月10日(火) 21:13
お住まい: きのこ王国
連絡する:

Re: 対応した変数への代入

投稿記事 by トリアコンタン »

こんにちは!

こんな感じでしょうか。

「条件にあったものを一つ選び」とありますが、以下の例の場合は、
「条件に合う変数のうち最も小さい番号の変数」が優先的に採用されます。

コード: 全て選択

// 1~40までの繰り返し
for (let n = 1; n <= 40; n++) {
    // 変数[n]の値を取得
    const prevValue = $gameVariables.value(n);
    // 変数[n]の値が[0]かどうかの判定
    if (prevValue === 0) {
        // 変数[n]に[1]を設定
        $gameVariables.setValue(n, 1);
        // 変数[n+50]に[30]を設定
        $gameVariables.setValue(n + 50, 30);
        // 条件を満たす変数が見付かった場合はループ終了
        break;
    }
}
イベントコマンドのスクリプトは11行制限があるのでコピペする場合は以下の通りです。

コード: 全て選択

for (let n = 1; n <= 40; n++) {
    const prevValue = $gameVariables.value(n);
    if (prevValue === 0) {
        $gameVariables.setValue(n, 1);
        $gameVariables.setValue(n + 50, 30);
        break;
    }
}
プラグイン関連のトラブルが発生した際の切り分けと報告の方法です。
http://qiita.com/triacontane/items/2e227e5b5ce9503a2c30

[Blog] : http://triacontane.blogspot.jp/
[Twitter]: https://twitter.com/triacontane/
[GitHub] : https://github.com/triacontane/
ああああう
記事: 2
登録日時: 2020年4月15日(水) 03:28

Re: 対応した変数への代入

投稿記事 by ああああう »

返信ありがとうございます。
無事理想の動きができるようになりとても感動してます!
ありがとうございました!!
返信する

“MV:質問”に戻る