2014-02-11 27 views
0

我在遊戲中我使用移相器使得下面的代碼:循環精靈除了在移相器的AJAX功能內

game.add.sprite(response.Turret0.posx, response.Turret0.posy, "turret"); 
game.add.sprite(response.Turret1.posx, response.Turret1.posy, "turret"); 
game.add.sprite(response.Turret2.posx, response.Turret2.posy, "turret"); 

我想用一個循環運行上述然而下面的辦法似乎沒有工作的聲明:

for(int i=0;i<length;i++) 
    game.add.sprite(response.'Turret+i'.posx, response.Turret0.posy, "turret"); 

該代碼是在一個AJAX函數,因此我必須留在功能邊界。爲什麼這不起作用,我該如何解決?

回答

1

這個問題實際上是用連續ID命名變量(Turret0,Turret1等)。 這將結構信息轉換爲命名約定,這當然不便於使用。

相反,您應該在AJAX響應中返回一個Turret陣列,並通過循環中的turrets[i]來訪問它。

+0

我覺得現在不適合使用數組方法。感謝您的幫助 – user3292309

1

根據您當前的命名標準,我認爲使用:

response['Turret'+i]

應該工作,但我同意,聲明炮塔從一開始的建議將是一個更好的辦法以前的答案的數組。