【发布时间】:2021-03-22 21:32:36
【问题描述】:
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;
public class LevelLoader : MonoBehaviour
{
void OnCollisionEnter(Collision col)
{
if (col.gameObject.tag == "Player");
{
StartCoroutine(LoadAsynchronously(1));
}
}
IEnumerator LoadAsynchronously (int sceneIndex)
{
AsyncOperation operation = SceneManager.LoadSceneAsync(1);
while (!operation.isDone)
{
yield return null;
}
}
}
我尝试改变一些东西,但如果有人可以帮助我,它无论如何都不起作用。应该在与该对象碰撞时工作,但 IDK 为什么什么也没发生
【问题讨论】:
-
你能确定这个脚本附加到的游戏对象和玩家有碰撞器吗?
-
碰撞是否有效?您是否尝试过在 OnCollisionEnter 中调试.log() 播放器?
-
好吧,假设当你与触发的这个立方体发生碰撞时,玩家会完成关卡。 cdn.discordapp.com/attachments/353359492672520193/… 抱歉链接,但你也可以看到规格,如果你想了解更多关于属性的信息,请告诉我
-
是的,碰撞应该是有效的,因为我创建了一个代码,当你与标签“敌人”碰撞时,你会破坏,IDK 什么可能不起作用
-
你试过把“SceneManager.LoadScene(sceneIndex)”放在函数里吗?