using UnityEngine; public class Skywalker_MovingPlatform : MonoBehaviour { public float speed = 2f; public float distance = 3f; private Vector3 startPos; Transform prevParent; void Start() { startPos = transform.position; } void Update() { transform.position = startPos + Vector3.down * Mathf.PingPong(Time.time * speed, distance); } private void OnCollisionEnter(Collision collision) { if (collision.gameObject.CompareTag("Player")) { if (collision.transform.parent != null) { prevParent = collision.transform.parent; } collision.transform.parent = transform; } } private void OnCollisionExit(Collision collision) { if (collision.gameObject.CompareTag("Player")) { collision.transform.parent = prevParent; } } }