2017-03-08 16 views
-4
MessageBox.Show("You are wrong"); 
noOfhearts = noOfhearts - 1; 
if (noOfhearts == 0) 
{ 
    MessageBox.Show("Game Over! You score " + score); 
    Hide(); 
} 
else 
{ 
    for (int i = 0; i <= noOfhearts; i++) 
    { 
     heart[i].Visible = true; 
     //I have 3 heart pcitureboxes "heart1" "heart2" "heart3" 
    } 
} 

我想讓遊戲顯示用戶擁有的心的數量,當他們得到一個問題錯誤時,他們應該失去一顆心。如果用戶有0心,遊戲將結束。在這個遊戲中,我有3個困難,容易從3個心,2箇中等,1個困難。這使得它很尷尬,因爲根據難度用戶將有不同數量的心。這就是爲什麼我嘗試使用for循環,但顯然接下來只是愚蠢的,我認爲這是值得一試。C#棋盤遊戲顯示心的數量

+4

不知道你在這裏問什麼。請澄清。 – OldProgrammer

+1

那麼你的問題究竟是什麼? –

+0

你可以設置心臟的初始數量爲難度(所以如果它的硬度設置爲1開頭),然後像現在這樣進行 –

回答

0

如果沒有更多關於你製作這款遊戲​​的細節,很難回答。 Visual Studio ...你在使用Unity嗎?無論哪種方式,在你的其他地方{},我注意到你並沒有設定你的心>看不見的心的數量。如果你不想顯示它們,你需要補充一點。

for (int i = 0; i <= totalHeartNumber; i++) 
      { 
       if(i <= noOfHearts) { 
        heart[i].Visible = true; 
        //I have 3 heart pcitureboxes "heart1" "heart2" "heart3" 
       } else { 
        heart[i].Visible = false; 
       } 
     } 

你需要設置totalHeartNumber =爲該難度的心臟數量。這只是您在設置遊戲難度時使用的另一個陳述。另外,如果你沒有基於難度級別動態地實例化這些動作,那麼你將需要在任何時候都有最大數量的心(無論你在任何困難中能夠擁有多少心),並且只需要如果不需要,它們將不可見。