unity3d - 更改场景或关闭 Unity 后脚本不起作用
问题描述
我遇到了标题所暗示的问题。我有一些门游戏对象,我附加了以下脚本,以便通过光线投射打开和关闭它们:
void Update()
{
if (Input.GetMouseButtonDown(0))
{
RaycastHit hit;
Ray ray = Camera.main.ScreenPointToRay(Input.mousePosition);
if (Physics.Raycast(ray, out hit, 1000))
{
if (!EventSystem.current.IsPointerOverGameObject())
{
if (hit.collider.gameObject.tag == "door")
{
if (hit.collider.gameObject.GetComponent<Animator>().GetBool("ApritiSesamo") == true)
{
hit.collider.gameObject.GetComponent<Animator>().SetBool("ApritiSesamo", false);
}
else if (hit.collider.gameObject.GetComponent<Animator>().GetBool("ApritiSesamo") == false)
{
hit.collider.gameObject.GetComponent<Animator>().SetBool("ApritiSesamo", true);
}
}
}
}
}
}
该对象具有“门”标签,并且在动画师中我从Entry-->New state(an empty one)--->my door animation
. 在动画器中,过渡箭头分别需要bool ApritiSesamo
变为true
执行“开门动画”……并false
返回空状态。
问题是这一切都有效,直到我关闭统一或更改场景(并回到这个场景再试一次)。另外,我注意到如果我复制粘贴这个门游戏对象......原来的仍然没有工作,但副本在我关闭 Unity 或更改场景 ecc 之前一直有效。
希望我解释清楚,并希望得到一些帮助。提前致谢。
解决方案
推荐阅读
- php - 如何在 .htaccess 中重定向特定模式 URI
- spring-boot - RestHighLevelClient JUnit 测试返回 NullPointerException
- javascript - Jinja 将引号转换为 '
- powerbi - LUIS 聊天机器人与 Power BI 的集成
- excel - 有没有办法通过 excel vba 检查外部宏显示的 msgbox 的内容?
- c# - 如何构建具有自定义结构的 TreeView 节点?
- php - Laravel 为什么用户收到相同的电子邮件
- reactjs - 如何查看 webpack 以编程方式生成的代码以搜索 Component、useState 或 render 等字符串?
- svg - 如何在Angular中调整svg的大小?
- drop-down-menu - 在python中使用破折号的默认下拉菜单