(Unity)落ちた床を数秒後に元の位置に戻す

(スクリプト)

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

public class FallBlock : MonoBehaviour
{
    private Rigidbody rb;

    // ★追加
    // 最初の位置
    private Vector3 initialPos;
    // 最初の角度
    private Quaternion initialRot;

    void Start()
    {
        rb = GetComponent<Rigidbody>();

        // ★追加
        // 初期位置情報の取得
        initialPos = transform.position;

        // 初期角度情報の取得
        initialRot = transform.rotation;
    }

    private void OnCollisionEnter(Collision collision)
    {
        if (collision.gameObject.CompareTag("Player"))
        {
            Invoke("Fall", 2);
        }
    }

    void Fall()
    {
        rb.isKinematic = false;

        // ★追加
        // 5秒後に戻す
        Invoke("Reset", 5f);
    }

    // ★追加
    private void Reset()
    {
        rb.isKinematic = true;

        transform.position = initialPos;
        transform.rotation = initialRot;
    }
}

(実行結果)