public void CustomUpdate() { if (_player == null) { InitPlayer(); } else { SetDistancePivot(); SetVecUp(); if (CheckDistancePivot()) { if (!popJumping && canPopItem && !poping && transform.parent.gameObject.activeSelf) { if (FtueManager.instance.active) { FtueComponent step = FtueManager.instance.currentStep; if (step.popTarget == popItem.itemType && step.CanPop()) { StartCoroutine(PopCoroutine(100f)); } else { StartCoroutine(PopCoroutine(-1)); } } else { StartCoroutine(PopCoroutine(popPct)); } } SetAngle(); SetAxis(); SetNewPosition(); _startTimeLerp = Time.time; } else { LerpToOriginPosition(); } } }