GameMaker8 Pro で MMO スタイルのゲームのターゲティング配列を設定しようとすると、プレイヤーのキャラクターの作成イベントに次のコードが含まれています。これは完全に正常に実行されています。
j = 0
i = 0
g = 0
for (i=100000; i<1000000; i+=1) if instance_exists(i) {if i.object_index = enemy {global.ttarget[j] = i j+=1} if i.object_index = rk or i.object_index = sage {global.etarget[g] = i g += 1}}
global.rmtargets = j
global.etargets = g
次に、プレイヤー キャラクターのステップ イベントで次のコードを実行します。
h = 0
g = 0
i = 0
for (i=0; i<global.rmtargets; i+=1) global.target[i] = 0
global.target[0]=101139
for (h = 0; h<global.rmtargets; h+=1){hv = -1
for (g = 0; g<global.rmtargets; g+=1){if global.ttarget[g].range > hv {hv = global.ttarget[g].range}}
global.target[h] = hv
global.ttarget[h] = -1}
次のエラー メッセージを返します。
ERROR in
action number 1
of Step Event
for object rk:
Error in code at line 8: for (g = 0; g<global.rmtargets; g+=1){if global.ttarget[g].range > hv {hv = global.ttarget[g].range}}
at position 61: Unknown variable range
敵の作成イベントにこれがありますが:
range = 0
range = distance_to_object(rk)
そして、私はこの種の構文をいたるところで使用しました:
global.target[target].threat[s] += damage
ヘルプ?Game Maker が変数を認識しない理由はありますか?