如何使玩家坚持下降平台

时间:2020-04-06 21:41:22

标签: unity3d

所以我有一个平台,当玩家使用“刚体”重力踩到平台时,我会掉落。问题是,玩家在跌落时会不断跳出平台。我希望玩家在跌落时仍能坚持住平台,同时仍然能够移动。我曾尝试将平台作为播放器的父级,但由于播放器和平台的规模不同,因此播放器的规模会发生变化,我也不希望这种情况发生。这是我的代码供参考:

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

public class falling : MonoBehaviour
{  
    public GameObject Player;
    public float respawnTime = 10.0f;
    public float delayTime = 5.0f;


    private Vector3 initialPosition;

     // Start is called before the first frame update
     void Start()
     {
         initialPosition = transform.position;
     }

     private void OnTriggerEnter(Collider other)
     {
         if(other.gameObject == Player)
         {
             StartCoroutine(Fall());          
         }
     }

     IEnumerator Fall()
     {
         yield return new WaitForSecondsRealtime(delayTime);
         GetComponent<Rigidbody>().isKinematic = false;
         StartCoroutine(respawn());
     }

     IEnumerator respawn()
     {
         yield return new WaitForSecondsRealtime(respawnTime);
         GetComponent<Rigidbody>().isKinematic = true;
         transform.position = initialPosition;
     }
 }

0 个答案:

没有答案