【解決】変数で配列を利用して、スクリプトを動かしたい

アバター
ムノクラ
記事: 2118
登録日時: 2018年2月23日(金) 11:41
連絡する:

Re: 変数で配列を利用して、スクリプトを動かしたい

投稿記事 by ムノクラ »

astral さんが書きました:>入れ子が多いということのようですが、動いている記述だと、変数1[0]というように見えるのですが、そういうものだと理解するのがしぜんということでしょうか。

入れ子が多いというより、$gameVariables.setValueや$gameVariables.valueの仕様の認識の違いのような気がします。

配列を直接指定する場合にも対応して、わかりやすく書くとこういう感じでしょうか。

コード: 全て選択

var array = $gameVariables.value(1);
var id = array[0];
var value = $gameVariables.value(id) + array[1];
$gameVariables.setValue(id, value);

var event = $dataCommonEvents[array[2]];
if (event) {//存在しないコモンイベントIDの場合のエラー対策
    this.setupChild(event.list, 0);
}
配列を直接指定する場合は、先頭を
var array = [11, -10, 2];
に置き換えてください。
これはわかりやすいです!

早速、応用してみようとして、つまづきました!
SS06.png
SS07.png
SS08.png
SS08.png (36.96 KiB) 閲覧された回数 2209 回
分けるとエラーになってしまいます。
分けないと問題なく動作するのですが…。
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
astral
記事: 106
登録日時: 2018年11月14日(水) 00:21
連絡する:

Re: 変数で配列を利用して、スクリプトを動かしたい

投稿記事 by astral »

スコープといって、分けるとvarなどで宣言したものが別物扱いになります。
変数の$gameVariablesと違ってvar arrayは同一スクリプト内でしか使えません。
アバター
ムノクラ
記事: 2118
登録日時: 2018年2月23日(金) 11:41
連絡する:

Re: 変数で配列を利用して、スクリプトを動かしたい

投稿記事 by ムノクラ »

astral さんが書きました:スコープといって、分けるとvarなどで宣言したものが別物扱いになります。
変数の$gameVariablesと違ってvar arrayは同一スクリプト内でしか使えません。
そうなんですか!
勉強になりました!

ご指導いただき、ありがとうございました。
---
JavaScriptの基本を学習せずにツクールのプラグインやスクリプトを使って横着してゲームを作ろうとしている人間です。
そのような者なので、適当な投稿をするかも知れません。
他の方の投稿を信用してください。
返信する

“MV:質問”に戻る