我正在关注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