代码检查:已声明同名事件函数
Unity 事件函数(如 启动、 更新 或 OnCollisionStay )是在对象生命周期不同阶段由 Unity 自动调用的特别命名方法。
虽然某些事件函数有多个有效签名(如 OnCollisionStay() 和 OnCollisionStay(Collision) ),但单个类应只实现其中一个。 如果类中包含多个相同事件函数名称的声明,Unity 的行为可能未定义或出现异常效果。
此检查会识别此类冗余或含糊的声明,并建议移除或合并,以确保代码如预期运行。
修正方法
请检查重复的事件函数,并决定保留哪一个。 如果二者都包含独特逻辑,请将代码合并为单个方法声明。
public class MyScript : MonoBehaviour
{
// Both methods are valid event functions,
// but they shouldn't coexist
void OnCollisionStay()
{
// Some logic
}
void OnCollisionStay(Collision collision)
{
// Other logic
}
}
public class MyScript : MonoBehaviour
{
void OnCollisionStay(Collision collision)
{
// Merged logic
}
}
2026年 5月 8日