2013-09-24 37 views
1

我有一個yield WaitForSeconds,transform.position.y = transform.position.y + 1;循環不斷增加數字。JS - Unity - 一個數字的倍數

在底部,我將這些52:

function Update() { 
     if (transform.position.y ? == 1) { 
print ("Part2") 
     } 

     if (transform.position.y ? == 2) { 
print ("Part3") 
     } 

     if (transform.position.y ? == 3) { 
print ("Part4") 
     } 
    etc... 

如何設置它,以便得到它說「第2部分」,該transform.position.y必須是2,54 ,106等(永遠在前)。 很多不勝感激

回答

0

是這樣的?

if (transform.position.y == 2 || transform.position.y == 54 || transform.position.y == 106) { 
    print ("Part2"); 
} 
+0

的是,這是控制分數所以,如果有人得到了得分30,450,本場比賽將無法認識到成績腳本。我不太確定這個公式是否可以成爲模式中的任何數字,而不是一組固定的數字。 – user2507295

0

你可以使用Mod運算符(%在Javascript),它返回的division remainder of two integers

例如:

  • 7 % 2 = 1

所以transform.position.y % 52會做你想要什麼:

  • 0 % 52 = 0
  • 1 % 52 = 1
  • 2 % 52 = 2
  • ...
  • 51 & 52 = 51
  • 52 % 52 = 0
  • 53 % 52 = 1
  • 54 % 52 = 2
  • 等等...

,我們將會從1-520-51相反,你可以只添加一個結果。

一起:

function Update() { 
    var part : int = transform.position.y % 52 + 1; 
    print("Part" + part.ToString()); 
} 
相關問題