C# 我的传送脚本使我的玩家随机传送回中心

C# 我的传送脚本使我的玩家随机传送回中心,c#,unity3d,game-development,C#,Unity3d,Game Development,我有一个OnTiggerEnter对撞机,当玩家进入对撞机时,它会将他们传送回另一个OnTiggerEnter对撞机的“中心” using System.Collections; using System.Collections.Generic; using UnityEngine; public class Teleport : MonoBehaviour { public Transform teleportTarget; public Rigidbody player;

我有一个OnTiggerEnter对撞机,当玩家进入对撞机时,它会将他们传送回另一个OnTiggerEnter对撞机的“中心”

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Teleport : MonoBehaviour
{
    public Transform teleportTarget;
    public Rigidbody player;



    private void OnTriggerEnter(Collider other)
    {
        player.transform.position = teleportTarget.position;
    }
}
问题是,玩家将继续行走,并将随机传送回中心

这是OnTiggerEnter碰撞器上的脚本

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Teleport : MonoBehaviour
{
    public Transform teleportTarget;
    public Rigidbody player;



    private void OnTriggerEnter(Collider other)
    {
        player.transform.position = teleportTarget.position;
    }
}

我只是这样做的,所以进入触发器的对撞机必须被标记为“玩家”,这就解决了它

using System.Collections;
using System.Collections.Generic;
using UnityEngine;

public class Teleport : MonoBehaviour
{
    public Transform teleportTarget;
    public Rigidbody player;


    private void OnTriggerEnter(Collider other)
    {
        if (other.gameObject.tag == "Player")
        {
            player.transform.position = teleportTarget.position;
        }
    }
}