// Update is called once per frame protected void Update() { float frameMs = GameTime.DeltaTime(); if (bMoving) { transform.localPosition = Vector3.SmoothDamp(transform.localPosition, targetPos, ref curVel, switchSecs); if (Vector3.Distance(transform.localPosition, targetPos) < kZeroDist) { bMoving = false; curVel = Vector3.zero; } } secsLeft -= frameMs; if (secsLeft <= 0) { mgr?.RemoveToast(this); } }