我正在關注XNA教程,並具有以下用於碰撞檢測的代碼(檢測子彈是否與目標碰撞)。基本上我正在尋找增加一個分數變量來顯示屏幕上的分數,而不用重新編寫整個程序。無論我把它放在這個方法中的哪個位置,它似乎都從目標數量開始遞增,而不是從零開始遞增。有什麼簡單的我在這裏失蹤?任何幫助將不勝感激。謝謝。在XNA遊戲中保持分數
private CollisionType CheckCollision(BoundingSphere sphere)
{
if (completeCityBox.Contains(sphere) != ContainmentType.Contains)
return CollisionType.Boundary;
for (int i = 0; i < targetList.Count; i++)
{
if (targetList[i].Contains(sphere) != ContainmentType.Disjoint)
{
targetList.RemoveAt(i);
i--;
AddTargets();
return CollisionType.Target;
}
}
return CollisionType.None;
}
你的分數變量在哪裏?何時/何時初始化?並遞增? – tzaman 2010-05-02 23:07:03
它在類的頂部初始化,但希望在此方法內增加它。 int score = 0; (頂部課程) 得分+ = 1; (希望在某處添加此方法) 這是用於檢測與目標碰撞的方法,因此每次檢測到碰撞時我都會將得分提高1。分數不從0開始,它從完全隨機的目標數量(例如:1250)開始。 – Seven 2010-05-02 23:17:31