練習 - 完成使用 do 和 while 反覆運算陳述式的挑戰活動
程式碼挑戰將強化您所學到的內容,並協助您在繼續進行前先獲得一些信心。
角色扮演遊戲的戰鬥挑戰
在某些角色扮演遊戲中,玩家的角色會和非玩家角色戰鬥,後者通常是怪物或「壞人」。 有時,戰鬥包含每個角色使用骰子來產生隨機值,並從對手的體力分數中減去該值。 一旦角色的體力到達零,他們便會輸掉這場遊戲。
在此挑戰中,我們會將該互動簡化至其精髓。 英雄和怪物會從相同的體力分數開始。 在英雄的回合中,他們會產生隨機值,並從怪物的體力中減去該值。 若怪物的體力大於零,其便會進行他們的回合並攻擊英雄。 只要英雄和怪物的體力都大於零,戰鬥便會繼續。
程式碼挑戰 - 撰寫程式碼以實作遊戲規則
以下是您在程式碼專案中實作的對戰遊戲規則:
- 您必須使用
do-while
陳述式或while
陳述式作為外部遊戲迴圈。 - 英雄和怪物會從 10 個體力點開始。
- 所有攻擊都會是介於 1 和 10 之間的值。
- 英雄會先進行攻擊。
- 顯示怪物喪失的體力數,以及他們剩餘的體力。
- 若怪物的體力大於 0,它便可以攻擊英雄。
- 顯示英雄喪失的體力數,以及他們剩餘的體力。
- 繼續這一系列的攻擊,直到怪物或英雄的體力為零或低於零。
- 顯示獲勝者。
請確定您已在 Visual Studio Code 中開啟空的 Program.cs 檔案。
如有必要,請開啟 Visual Studio Code,然後完成下列步驟,以在編輯器中備妥 Program.cs 檔案:
在 [檔案] 功能表上,選取 [開啟資料夾]。
使用 [開啟資料夾] 對話方塊瀏覽至 CsharpProjects 資料夾,然後加以開啟。
在 Visual Studio Code 的 [總管] 窗格中,選取 [Program.cs]。
在 Visual Studio Code [選取項目] 功能表上,選取 [全部選取],然後按 [刪除] 鍵。
撰寫要實作每個規則的遊戲程式碼。
執行您的應用程式,並確認您的輸出符合需求。
無論您的做法為何,您的程式碼應產生相似輸出:
Monster was damaged and lost 1 health and now has 9 health. Hero was damaged and lost 1 health and now has 9 health. Monster was damaged and lost 7 health and now has 2 health. Hero was damaged and lost 6 health and now has 3 health. Monster was damaged and lost 9 health and now has -7 health. Hero wins!
很明顯地,因為程式碼的隨機本質,每一次的結果都會不同,因此您的結果絕對會和以上所顯示輸出不同。 但是,您可以使用此作為您程式碼應產生輸出的範例。
無論是遇到困難需要查看解決方案,還是已成功完成,都請繼續檢視此挑戰的解決方案。