public void ReplaceNavAgent(NavAgentBehaviour newValue) { var index = GameComponentsLookup.NavAgent; var component = CreateComponent <NavAgentComponent>(index); component.value = newValue; ReplaceComponent(index, component); }
protected override void Execute(List <InputEntity> entities) { foreach (GameEntity entity in _movingNavAgentsGroup.GetEntities()) { NavAgentBehaviour navAgent = entity.navAgent.value; navAgent.PerformMove(); entity.ReplacePosition(navAgent.positionAfterMove); entity.ReplaceRotation(navAgent.rotationAfterMove); if (navAgent.TargetReached && !navAgent.IsPathQueued && !navAgent.IsSearching) { navAgent.targetPosition = null; entity.isMoving = false; } } }