OnCollisionEnter2D不会重新启动场景

时间:2019-11-30 10:17:37

标签: c# unity3d

我希望我的播放器与一个不可见的碰撞器碰撞并立即重新启动场景,但似乎我的脚本由于某种原因无法正常工作。

  1. 在隐形对撞机上添加了“秋天”标签。
  2. 在“隐形对撞机游戏对象”上添加了脚本。
  3. 不可见的碰撞对象已附加了Box Collider 2D并设置为ti:is Trigger
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;

public class sceneRestart : MonoBehaviour
{  
    private void OnCollisionEnter2D(Collision2D platform)
    {
        if (platform.gameObject.tag == "Fall")
        {
            SceneManager.LoadScene("Main");
            Debug.Log("Scene Restarted");
        }
    }
}

1 个答案:

答案 0 :(得分:1)

脚本是附加到不可见对撞机上的,因此它需要检查碰撞对象是否是玩家:

public class sceneRestart : MonoBehaviour
{

    private void OnTriggerEnter2D(Collider2D Col)
    {
        if (Col.gameObject.tag == "Player")
        {
            SceneManager.LoadScene("Main");
            Debug.Log("Scene Restarted");
        }
    }