private void Start() { _initialLoopType = _loopType; _state = _waypointSystem.RegisterNewPathStateInstance(transform, _loopType, false); _state.SusbscribeOnWaypointReached((current, next) => { _dest = next.transform; }); _dest = _state.CurrentWaypoint.transform; }
private void RegisterToNewPathState() { //we need to unregister _waypointSystem.UnRegisterPathState(this.transform); //then we create a new path state ! _state = _waypointSystem.RegisterNewPathStateInstance(this.transform, _loopType, true); //recreate the events _state.SusbscribeOnWaypointReached((current, next) => { _dest = next.transform; }); //just in case it changed (ping pong ?) _dest = _state.CurrentWaypoint.transform; }