変数の番号管理

よしだとものり
記事: 134
登録日時: 2017年7月25日(火) 23:18

変数の番号管理

投稿記事by よしだとものり » 2017年9月22日(金) 19:43

複数のプラグインを作って、変数でデータを受け渡すような
スクリプトを作っていると、複数個所に変数の番号をセットするように
なります。

以下のような書き方をしているのですが、
C言語のdefineのように一か所を書き換えると、
全て変わるようにすることはできないのでしょうか?

要は複数の箇所で変数の番号を書くような、やり方ではなく
一か所に変数の番号管理をまとめて書いて、
それを参照するようにしたいです。

プラグイン1
var hensu1=1;

プラグイン2
var hensu1=1;

プラグイン3
var hensu1=1;
最後に編集したユーザー よしだとものり on 2017年9月23日(土) 10:33 [ 編集 1 回目 ]

よしだとものり
記事: 134
登録日時: 2017年7月25日(火) 23:18

Re: 変数の番号管理

投稿記事by よしだとものり » 2017年9月23日(土) 12:44

質問変えました。
アバター
しぐれん
記事: 972
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 変数の番号管理

投稿記事by しぐれん » 2017年9月23日(土) 14:38

この場合ゲーム変数($gameVariable)を介してやり取りするよりも、グローバル名前空間に関数をいくつか作ってそこでやり取りする方がいいと思います。
グローバル変数のリスクだけ使っているようなものなので。
同じ変数を参照するということは、機能として一つのプラグインにまとめる方が綺麗な設計になるでしょう。
もし複数のファイルでやりたいのであれば、即時間数による保護なしでdefine専用のプラグインを一つ追加するのがいいと思います。
現在、プラグイン依頼はお休み中です。
よしだとものり
記事: 134
登録日時: 2017年7月25日(火) 23:18

Re: 変数の番号管理

投稿記事by よしだとものり » 2017年9月23日(土) 14:57

いつもありがとうございます。

どうもjavascriptのオブジェクトのスコープがよく分からないですが

グローバル名前空間に関数をいくつか作った場合に、ツクールのクラスを
オーバライドした関数も、そのグローバル名前空間に作って上手く動くのでしょうか?

現在、チャットのデータ受信と通信の初期化の関数はTOMO_FireBaseクラスを
firebaseクラスで受信したデータはチャットデータとして配列にまとめ6番の変数を
更新しています。

表示に関しましてitembookのプラグインから無駄な部分をカットして
リフレッシュで6番を受け取りsetitemでindexのチャットデータをdrawtextする
ようにしています。
アバター
しぐれん
記事: 972
登録日時: 2017年3月28日(火) 22:22
連絡を取る:

Re: 変数の番号管理

投稿記事by しぐれん » 2017年9月23日(土) 15:52

動きます。
というより、動かして試すほうが速いと思います。
JavaScriptは厳密に知っているわけではないですが、グローバル名前空間からツリー構造になっています。
グローバル名前空間でfunctionを宣言すると、グローバルオブジェクトのメンバとして関数が宣言されます。
(globale[関数名] =function...のような処理になっているイメージです。ただ、100%合っているとは言えません)
現在、プラグイン依頼はお休み中です。
よしだとものり
記事: 134
登録日時: 2017年7月25日(火) 23:18

Re: 変数の番号管理

投稿記事by よしだとものり » 2017年9月23日(土) 20:44

ありがとうございます。
試してみます。

“MV:質問” へ戻る