与团结的胜利背道而驰
本文关键字:胜利 背道而驰 | 更新日期: 2023-09-27 18:33:48
在使用
Unity时遇到了问题。我只是想在每次发生碰撞时增加分数,但我的代码没有帮助。我知道这听起来很基本,但我已经在网站上四处寻找了很长一段时间,但我还没有找到答案。下面是脚本:
我已经检查过了,"胜利屏幕"已经制作和构建。
public class PaintScriptGreen : MonoBehaviour {
public GameObject CylGreen;
private int score = 0;
private Vector3 tempPos;
private Quaternion tempRot;
private GameObject tempCyl;
void Awake ()
{
}
public void AddScore (int scoreValue)
{
score += scoreValue;
}
void OnTriggerEnter(Collider col)
{
if (col.gameObject.tag == "Cylinder" && col.gameObject.tag != "TreeHolder")
{
tempPos = col.gameObject.transform.position;
tempRot = col.gameObject.transform.rotation;
Destroy (col.gameObject);
tempCyl = Instantiate(CylGreen, tempPos, tempRot) as GameObject;
AddScore (1);
if (score >= 4)
{
Application.LoadLevel ("VictoryScreen");
}
}
if ((col.gameObject.tag != "Player")&&(col.gameObject.tag != "PlayPart"))
{
// destroy self bullet
Destroy (this.gameObject);
}
}
if ((col.gameObject.tag != "Player")&&(col.gameObject.tag != "PlayPart"))
{
// destroy self bullet
Destroy (this.gameObject);
}
这大概是罪魁祸首。只要上述条件不成立,您就会破坏"这个"。这个剧本在子弹上吗?如果是这样,则需要将评分机制移动到未被销毁的对象或使其成为静态变量。我不喜欢静态变量,但这是一个可能的解决方案。