見出し画像

【GameMaker】変数の初期化

起きたこと

GameMakerの変数は、何らかの値を入れて初期化する必要がある。
どういった値を入れればよいだろう? ー̀ωー́ ).。oஇ

var _attackPoint; // シンタックスエラーになる
var _attackPoint = 0;

どうする?

真っ先に「0」や「""」が思いつくけれど、これらで初期化すると、初期化されたままなのか、後から0や””という値で上書きされたかが分からない。

対応

undefinedで初期化する。
undefinedは「is_undefined()」を使って判定できる。
初期化されたままか、上書きされたかの判別がかんたん。

var _attackPoint = undefined;

if (is_undefined(_attackPoint)) {
	// 値が上書きされていない場合の処理
}

参考リンク

Why is initialization mandatory? https://forum.gamemaker.io/index.php?threads/why-is-initialization-mandatory.53026/#post-324289


この記事が気に入ったらサポートをしてみませんか?