using UnityEngine; namespace DynamicFogAndMist { public class PillarManager : MonoBehaviour { private float initialX; private void Start() { initialX = base.transform.position.x; RepositionPillar(); } private void Update() { if (base.transform.position.z < Camera.main.transform.position.z - base.transform.localScale.z) { RepositionPillar(); } } private void RepositionPillar() { Vector3 vector = base.transform.position + Vector3.forward * 200f; base.transform.position = new Vector3(initialX + Random.value * 6f - 3f, vector.y, vector.z); } private void OnCollisionEnter(Collision collision) { GetComponent().Play(); } } }