2017-02-13 34 views
-2
for(xwingwaves = 0 ; xwingwaves < xwingwc ; xwingwaves += 1) 
{ 
    if(alarm[3] = -1) alarm[3] = 500; 
} 

我的for就是被激活,但我的if沒有開始。在gamemaker中編碼。 xwingwc = 2;爲什麼我的「for()」不能正常工作

+1

錯誤說什麼? – imudin07

+0

沒有錯誤。它只是沒有開始。那就是說:/ – Pasgru

+1

應該是'alarm [3] == -1' – imudin07

回答

1

==代替=

if(alarm[3] == -1) alarm[3] = 500; 

for(var xwingwaves = 0;代替for(xwingwaves = 0;

GameMaker: Studio - Loops

+0

不改變任何東西。 – Pasgru

+0

@Pasgru'檢查(int xwingwaves = 0;' – 2017-02-13 00:42:38

+0

我沒有改變它仍然沒有檢查if() – Pasgru

1

是有var xwingwaves循環之前?我想你只是錯過了宣言。

+1

是不是for()定義var? – Pasgru

+1

'for(xwingwaves = 0; xwingwaves ScegfOd

0

你的代碼是正確的,但你做了奇怪的事情。

for (xwingwaves = 0 ; xwingwaves < xwingwc ; xwingwaves += 1) 
{ 
    if(alarm[3] = -1) alarm[3] = 500; 
} 

在這裏你開始alarm[3],如果它沒有啓動。

  1. 這裏您多次檢查alarm[3]。你做同樣的事情2次。沒有理由這樣做。沒有理由使用for循環。沒有簡單的有什麼區別:

    if (alarm[3] = -1) alarm[3] = 500; 
    
  2. 請記住,如果你沒有內部alarm[3]事件(空事件),也不會啓動任何代碼(在這種情況下,只需添加一行代碼OD,像// empty裏面)

  3. 並請記住,此代碼啓動alarm[3] insde對象,其中此代碼放置(或調用,如果代碼放置在腳本中)。

0
for(xwingwaves = 0 ; xwingwaves < xwingwc ; xwingwaves += 1) 
{ 
    if(alarm[3] <= -1) alarm[3] = 500; 
} 

//也是我不明白爲什麼你這個循環?繼承人你需要的代碼

if(alarm [3] < = -1)alarm [3] = 500; //循環毫無意義把它放在一步事件