//void Update() { } public void CameraHandler(float in_time) { if (_player == null) { return; } _desired_camera_point.SetCurrentPosition(DesiredCameraPos(), in_time); UpdateCameraVelocityAndPosition(in_time); EStateType new_state = _current_state.Update(in_time); if (new_state != _current_state.GetStateType()) { ICameraState old_state = _current_state; _current_state = CreateStateByType(new_state); _current_state.Update(0f); } }