/// <summary> /// Initialize the LocomotionTypes used by BotFlyable /// </summary> protected override void InitLocomotionTypes() { BotLogicNavMeshRef = new BotLogicNavMesh(BotFSMLocomotionComponent, NavMeshAgentComponent, JumpProximityChecker); BotLogicFlyingRef = new BotLogicFlight(BotFSMLocomotionComponent, Flying3DObjectComponent); InitStates(); BTFiniteStateMachineManagerComponent.AddFSM(FSMFlyable); }
protected virtual void Start() { if (!Initialized) { return; } BTFiniteStateMachineManagerComponent.StartFSMs(); }
public override bool Init(bool force = false) { if (!base.Init(force)) { return(false); } InitLocomotionTypes(); InitStates(); BTFiniteStateMachineManagerComponent.AddFSM(FSM); InitBotWander(); return(true); }
// Start is called before the first frame update public void Initialize(BotPartWander initialBotWander) { SetCurrentBotWander(initialBotWander); InitStates(); BTFiniteStateMachineManagerComponent.AddFSM(FSM); }