private void Throw() { if (!pickupable) { return; } Transform lockon; if (GetTarget(out _targetPoint, throwDistance.x, throwDistance.y, pickupable.transform, cam, out lockon)) { Release(); pickupable.Throw(); if (pickupable.transform.TryGetComponent(out Rigidbody rb)) { rb.velocity = Trajectory.CalculateTrajectoryData(pickupable.transform.position, _targetPoint, Physics.gravity.y).initialVelocity; } SetListeners(false); onHolding.Invoke(false); } }