【发布时间】:2017-12-06 16:07:25
【问题描述】:
嗨,大家好, 我在 Unity (C#) 中工作,但遇到了问题。我有一个名为 littleOne 的立方体,它从起始位置落下,另一个立方体破坏了第一个立方体 OnTriggerEnter。当第一个立方体与“毁灭者”立方体碰撞时,我想把它带回起始位置。所有游戏对象都正确附加到脚本。这是我的解决方案:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class DestroyObject : MonoBehaviour
{
public GameObject littleOne;
public Vector3 startPoint;
void Start()
{
startPoint = littleOne.transform.position;
}
// Update is called once per frame
void Update()
{
}
private void OnTriggerEnter(Collider other)
{
if(other.gameObject.name == "littleOne") {
other.gameObject.transform.position = startPoint; //*not working
//littleOne.transform.position = startPoint; //*not Working
}
}
}
有符号 * 的行什么都不做,这些行我有问题。我正在寻找解决方案,我尝试过这种方式,但没有任何反应。
编辑:问题已解决:我已经解决了问题。这段代码我已经移到了一个带有下降操作的脚本中。这是一个对象的多个相关脚本中的问题。感谢您的建议!
【问题讨论】:
-
可能只是复制/粘贴错误,但您缺少“;”在第一条不工作行的末尾
-
另外,如果你在移动它后立即销毁它,你怎么知道它不起作用?
-
投票关闭,因为这只是一个错字
-
“;”没有问题。破坏线应该是评论。我编辑了它。
-
关于“为什么我的碰撞没有被检测到”/“为什么
OnCollisionEnter/OnTriggerEnter没有被调用”等等类似的问题有成千上万个......你有没有简单的@ 987654324@ 在您的OnTriggerEnter函数中以确保调用该函数?