Repository: jlreymendez/planilo Branch: master Commit: 2631b9b306c8 Files: 299 Total size: 412.8 KB Directory structure: gitextract_5trksu_0/ ├── .gitmodules ├── BehaviourTree/ │ ├── Base/ │ │ ├── BehaviourTree.cs │ │ ├── BehaviourTree.cs.meta │ │ ├── BehaviourTreeEnumerator.cs │ │ ├── BehaviourTreeEnumerator.cs.meta │ │ ├── BehaviourTreeNode.cs │ │ ├── BehaviourTreeNode.cs.meta │ │ ├── BehaviourTreeNodeState.cs │ │ ├── BehaviourTreeNodeState.cs.meta │ │ ├── BehaviourTreeState.cs │ │ └── BehaviourTreeState.cs.meta │ ├── Base.meta │ ├── Builder/ │ │ ├── Base/ │ │ │ ├── BehaviourTreeGraph.cs │ │ │ ├── BehaviourTreeGraph.cs.meta │ │ │ ├── BehaviourTreeGraphConnection.cs │ │ │ ├── BehaviourTreeGraphConnection.cs.meta │ │ │ ├── BehaviourTreeGraphNode.cs │ │ │ ├── BehaviourTreeGraphNode.cs.meta │ │ │ ├── BehaviourTreeSubGraphNode.cs │ │ │ └── BehaviourTreeSubGraphNode.cs.meta │ │ ├── Base.meta │ │ ├── Composite/ │ │ │ ├── ActiveSelectorGraphNode.cs │ │ │ ├── ActiveSelectorGraphNode.cs.meta │ │ │ ├── CompositeGraphNode.cs │ │ │ ├── CompositeGraphNode.cs.meta │ │ │ ├── SelectorGraphNode.cs │ │ │ ├── SelectorGraphNode.cs.meta │ │ │ ├── SequencerGraphNode.cs │ │ │ └── SequencerGraphNode.cs.meta │ │ ├── Composite.meta │ │ ├── Decorator/ │ │ │ ├── DecoratorGraphNode.cs │ │ │ ├── DecoratorGraphNode.cs.meta │ │ │ ├── InverterGraphNode.cs │ │ │ ├── InverterGraphNode.cs.meta │ │ │ ├── ResultReplacerGraphNode.cs │ │ │ └── ResultReplacerGraphNode.cs.meta │ │ ├── Decorator.meta │ │ ├── Leaf/ │ │ │ ├── LeafGraphNode.cs │ │ │ └── LeafGraphNode.cs.meta │ │ └── Leaf.meta │ ├── Builder.meta │ ├── Composite/ │ │ ├── ActiveSelector.cs │ │ ├── ActiveSelector.cs.meta │ │ ├── CompositeNode.cs │ │ ├── CompositeNode.cs.meta │ │ ├── Selector.cs │ │ ├── Selector.cs.meta │ │ ├── Sequencer.cs │ │ └── Sequencer.cs.meta │ ├── Composite.meta │ ├── Decorator/ │ │ ├── DecoratorNode.cs │ │ ├── DecoratorNode.cs.meta │ │ ├── InverterNode.cs │ │ ├── InverterNode.cs.meta │ │ ├── ResultReplacerNode.cs │ │ └── ResultReplacerNode.cs.meta │ ├── Decorator.meta │ ├── Editor/ │ │ ├── BehaviourTreeGraphEditor.cs │ │ ├── BehaviourTreeGraphEditor.cs.meta │ │ ├── BehaviourTreeGraphNodeEditor.cs │ │ ├── BehaviourTreeGraphNodeEditor.cs.meta │ │ ├── BehaviourTreeSubGraphNodeEditor.cs │ │ └── BehaviourTreeSubGraphNodeEditor.cs.meta │ ├── Editor.meta │ ├── Leaf/ │ │ ├── LeafNode.cs │ │ └── LeafNode.cs.meta │ └── Leaf.meta ├── BehaviourTree.meta ├── FiniteStateMachine/ │ ├── Base/ │ │ ├── FiniteStateMachine.cs │ │ ├── FiniteStateMachine.cs.meta │ │ ├── FiniteStateMachineRuntimeState.cs │ │ ├── FiniteStateMachineRuntimeState.cs.meta │ │ ├── FiniteStateMachineState.cs │ │ ├── FiniteStateMachineState.cs.meta │ │ ├── FiniteStateMachineTransition.cs │ │ └── FiniteStateMachineTransition.cs.meta │ ├── Base.meta │ ├── Builder/ │ │ ├── Base/ │ │ │ ├── FiniteStateMachineConnection.cs │ │ │ ├── FiniteStateMachineConnection.cs.meta │ │ │ ├── FiniteStateMachineGraph.cs │ │ │ ├── FiniteStateMachineGraph.cs.meta │ │ │ ├── FiniteStateMachineGraphNode.cs │ │ │ ├── FiniteStateMachineGraphNode.cs.meta │ │ │ ├── FiniteStateMachineStateGraphNode.cs │ │ │ ├── FiniteStateMachineStateGraphNode.cs.meta │ │ │ ├── FiniteStateMachineSubGraphNode.cs │ │ │ ├── FiniteStateMachineSubGraphNode.cs.meta │ │ │ ├── FiniteStateMachineTransitionGraphNode.cs │ │ │ └── FiniteStateMachineTransitionGraphNode.cs.meta │ │ ├── Base.meta │ │ ├── Transition/ │ │ │ ├── AlwaysTransitionGraphNode.cs │ │ │ └── AlwaysTransitionGraphNode.cs.meta │ │ └── Transition.meta │ ├── Builder.meta │ ├── Editor/ │ │ ├── FiniteStateMachineGraphEditor.cs │ │ ├── FiniteStateMachineGraphEditor.cs.meta │ │ ├── FiniteStateMachineGraphNodeEditor.cs │ │ ├── FiniteStateMachineGraphNodeEditor.cs.meta │ │ ├── FiniteStateMachineStateGraphNodeEditor.cs │ │ ├── FiniteStateMachineStateGraphNodeEditor.cs.meta │ │ ├── FiniteStateMachineSubGraphNodeEditor.cs │ │ └── FiniteStateMachineSubGraphNodeEditor.cs.meta │ └── Editor.meta ├── FiniteStateMachine.meta ├── Interfaces/ │ ├── IAIBehaviour.cs │ ├── IAIBehaviour.cs.meta │ ├── IAIBehaviourBuilder.cs │ ├── IAIBehaviourBuilder.cs.meta │ ├── IAIBehaviourDebugger.cs │ └── IAIBehaviourDebugger.cs.meta ├── Interfaces.meta ├── License.md ├── License.md.meta ├── Planilo.asmdef ├── Planilo.asmdef.meta ├── README.md ├── README.md.meta ├── Samples~/ │ ├── Gatherer/ │ │ ├── Code/ │ │ │ ├── BT/ │ │ │ │ ├── Behaviours/ │ │ │ │ │ ├── GathererBTDebugger.cs │ │ │ │ │ ├── GathererBTDebugger.cs.meta │ │ │ │ │ ├── GathererBTRunner.cs │ │ │ │ │ ├── GathererBTRunner.cs.meta │ │ │ │ │ ├── GatherersBTManager.cs │ │ │ │ │ └── GatherersBTManager.cs.meta │ │ │ │ ├── Behaviours.meta │ │ │ │ ├── LeafNodes/ │ │ │ │ │ ├── CheckAlarmRaisedGraphNode.cs │ │ │ │ │ ├── CheckAlarmRaisedGraphNode.cs.meta │ │ │ │ │ ├── CheckNeedsRestGraphNode.cs │ │ │ │ │ ├── CheckNeedsRestGraphNode.cs.meta │ │ │ │ │ ├── ConsumeResourceGraphNode.cs │ │ │ │ │ ├── ConsumeResourceGraphNode.cs.meta │ │ │ │ │ ├── DropResourceGraphNode.cs │ │ │ │ │ ├── DropResourceGraphNode.cs.meta │ │ │ │ │ ├── FindResourceGraphNode.cs │ │ │ │ │ ├── FindResourceGraphNode.cs.meta │ │ │ │ │ ├── GoHomeGraphNode.cs │ │ │ │ │ ├── GoHomeGraphNode.cs.meta │ │ │ │ │ ├── MoveToTargetGraphNode.cs │ │ │ │ │ ├── MoveToTargetGraphNode.cs.meta │ │ │ │ │ ├── PickResourceGraphNode.cs │ │ │ │ │ ├── PickResourceGraphNode.cs.meta │ │ │ │ │ ├── RestGraphNode.cs │ │ │ │ │ └── RestGraphNode.cs.meta │ │ │ │ └── LeafNodes.meta │ │ │ ├── BT.meta │ │ │ ├── Common/ │ │ │ │ ├── Behaviours/ │ │ │ │ │ ├── BehaviourDebugger.cs │ │ │ │ │ ├── BehaviourDebugger.cs.meta │ │ │ │ │ ├── GatherersManager.cs │ │ │ │ │ ├── GatherersManager.cs.meta │ │ │ │ │ ├── Home.cs │ │ │ │ │ ├── Home.cs.meta │ │ │ │ │ ├── Resource.cs │ │ │ │ │ ├── Resource.cs.meta │ │ │ │ │ ├── SampleController.cs │ │ │ │ │ └── SampleController.cs.meta │ │ │ │ ├── Behaviours.meta │ │ │ │ ├── Blackboard/ │ │ │ │ │ ├── Gatherer.cs │ │ │ │ │ ├── Gatherer.cs.meta │ │ │ │ │ ├── WorldState.cs │ │ │ │ │ └── WorldState.cs.meta │ │ │ │ ├── Blackboard.meta │ │ │ │ ├── Interfaces/ │ │ │ │ │ ├── IBehaviourManager.cs │ │ │ │ │ └── IBehaviourManager.cs.meta │ │ │ │ └── Interfaces.meta │ │ │ ├── Common.meta │ │ │ ├── FSM/ │ │ │ │ ├── Behaviours/ │ │ │ │ │ ├── GathererFSMDebugger.cs │ │ │ │ │ ├── GathererFSMDebugger.cs.meta │ │ │ │ │ ├── GathererFSMRunner.cs │ │ │ │ │ ├── GathererFSMRunner.cs.meta │ │ │ │ │ ├── GatherersFSMManager.cs │ │ │ │ │ └── GatherersFSMManager.cs.meta │ │ │ │ ├── Behaviours.meta │ │ │ │ ├── States/ │ │ │ │ │ ├── ConsumeResourceStateGraphNode.cs │ │ │ │ │ ├── ConsumeResourceStateGraphNode.cs.meta │ │ │ │ │ ├── DropResourceStateGraphNode.cs │ │ │ │ │ ├── DropResourceStateGraphNode.cs.meta │ │ │ │ │ ├── FindResourceStateGraphNode.cs │ │ │ │ │ ├── FindResourceStateGraphNode.cs.meta │ │ │ │ │ ├── GoHomeStateGraphNode.cs │ │ │ │ │ ├── GoHomeStateGraphNode.cs.meta │ │ │ │ │ ├── MoveToTargetStateGraphNode.cs │ │ │ │ │ ├── MoveToTargetStateGraphNode.cs.meta │ │ │ │ │ ├── PickResourceStateGraphNode.cs │ │ │ │ │ ├── PickResourceStateGraphNode.cs.meta │ │ │ │ │ ├── RestStateGraphNode.cs │ │ │ │ │ ├── RestStateGraphNode.cs.meta │ │ │ │ │ ├── WaitStateGraphNode.cs │ │ │ │ │ └── WaitStateGraphNode.cs.meta │ │ │ │ ├── States.meta │ │ │ │ ├── Transitions/ │ │ │ │ │ ├── AlarmIsRaisedTransitionGraphNode.cs │ │ │ │ │ ├── AlarmIsRaisedTransitionGraphNode.cs.meta │ │ │ │ │ ├── FoundResourceTransitionGraphNode.cs │ │ │ │ │ ├── FoundResourceTransitionGraphNode.cs.meta │ │ │ │ │ ├── HasRestedTransitionGraphNode.cs │ │ │ │ │ ├── HasRestedTransitionGraphNode.cs.meta │ │ │ │ │ ├── NeedsRestTransitionGraphNode.cs │ │ │ │ │ ├── NeedsRestTransitionGraphNode.cs.meta │ │ │ │ │ ├── ResourcePickedTransitionGraphNode.cs │ │ │ │ │ ├── ResourcePickedTransitionGraphNode.cs.meta │ │ │ │ │ ├── ResourceUnavailableTransitionGraphNode.cs │ │ │ │ │ ├── ResourceUnavailableTransitionGraphNode.cs.meta │ │ │ │ │ ├── TargetReachedTransitionGraphNode.cs │ │ │ │ │ └── TargetReachedTransitionGraphNode.cs.meta │ │ │ │ └── Transitions.meta │ │ │ └── FSM.meta │ │ ├── Code.meta │ │ ├── Content/ │ │ │ ├── BT/ │ │ │ │ ├── Sample01/ │ │ │ │ │ ├── GathererBT-01.asset │ │ │ │ │ ├── GathererBT-01.asset.meta │ │ │ │ │ ├── GathererBT-01.prefab │ │ │ │ │ └── GathererBT-01.prefab.meta │ │ │ │ ├── Sample01.meta │ │ │ │ ├── Sample02/ │ │ │ │ │ ├── GathererBT-02.asset │ │ │ │ │ ├── GathererBT-02.asset.meta │ │ │ │ │ ├── GathererBT-02.prefab │ │ │ │ │ ├── GathererBT-02.prefab.meta │ │ │ │ │ ├── GathererBT-Gathering.asset │ │ │ │ │ ├── GathererBT-Gathering.asset.meta │ │ │ │ │ ├── GathererBT-Rest.asset │ │ │ │ │ └── GathererBT-Rest.asset.meta │ │ │ │ ├── Sample02.meta │ │ │ │ ├── Sample03/ │ │ │ │ │ ├── GathererBT-03.asset │ │ │ │ │ ├── GathererBT-03.asset.meta │ │ │ │ │ ├── GathererBT-03.prefab │ │ │ │ │ └── GathererBT-03.prefab.meta │ │ │ │ ├── Sample03.meta │ │ │ │ ├── Sample04/ │ │ │ │ │ ├── GathererBT-03.prefab │ │ │ │ │ ├── GathererBT-03.prefab.meta │ │ │ │ │ ├── GathererBT-04-Hide.asset │ │ │ │ │ ├── GathererBT-04-Hide.asset.meta │ │ │ │ │ ├── GathererBT-04-Work.asset │ │ │ │ │ ├── GathererBT-04-Work.asset.meta │ │ │ │ │ ├── GathererBT-04.asset │ │ │ │ │ └── GathererBT-04.asset.meta │ │ │ │ └── Sample04.meta │ │ │ ├── BT.meta │ │ │ ├── Common/ │ │ │ │ ├── Gatherer.mat │ │ │ │ ├── Gatherer.mat.meta │ │ │ │ ├── Home.mat │ │ │ │ ├── Home.mat.meta │ │ │ │ ├── Home.prefab │ │ │ │ ├── Home.prefab.meta │ │ │ │ ├── Resource.mat │ │ │ │ ├── Resource.mat.meta │ │ │ │ ├── Resource.prefab │ │ │ │ └── Resource.prefab.meta │ │ │ ├── Common.meta │ │ │ ├── FSM/ │ │ │ │ ├── Sample 01/ │ │ │ │ │ ├── Gatherer-FSM-01.asset │ │ │ │ │ ├── Gatherer-FSM-01.asset.meta │ │ │ │ │ ├── GathererFSM-01.prefab │ │ │ │ │ ├── GathererFSM-01.prefab.meta │ │ │ │ │ ├── GathererFSM.asset │ │ │ │ │ └── GathererFSM.asset.meta │ │ │ │ ├── Sample 01.meta │ │ │ │ ├── Sample 02/ │ │ │ │ │ ├── Gatherer-FSM-02.asset │ │ │ │ │ ├── Gatherer-FSM-02.asset.meta │ │ │ │ │ ├── GathererFSM-02.prefab │ │ │ │ │ ├── GathererFSM-02.prefab.meta │ │ │ │ │ ├── GathererFetch.asset │ │ │ │ │ ├── GathererFetch.asset.meta │ │ │ │ │ ├── GathererRest.asset │ │ │ │ │ ├── GathererRest.asset.meta │ │ │ │ │ ├── GathererStore.asset │ │ │ │ │ └── GathererStore.asset.meta │ │ │ │ ├── Sample 02.meta │ │ │ │ ├── Sample 03/ │ │ │ │ │ ├── GathererFSM-03.prefab │ │ │ │ │ └── GathererFSM-03.prefab.meta │ │ │ │ ├── Sample 03.meta │ │ │ │ ├── Sample 04/ │ │ │ │ │ ├── Gatherer-FSM-04-Hide.asset │ │ │ │ │ ├── Gatherer-FSM-04-Hide.asset.meta │ │ │ │ │ ├── Gatherer-FSM-04.asset │ │ │ │ │ ├── Gatherer-FSM-04.asset.meta │ │ │ │ │ ├── GathererFSM-03.prefab │ │ │ │ │ └── GathererFSM-03.prefab.meta │ │ │ │ └── Sample 04.meta │ │ │ └── FSM.meta │ │ ├── Content.meta │ │ ├── Scenes/ │ │ │ ├── BT/ │ │ │ │ ├── Gatherer-BT-01.unity │ │ │ │ ├── Gatherer-BT-01.unity.meta │ │ │ │ ├── Gatherer-BT-02.unity │ │ │ │ ├── Gatherer-BT-02.unity.meta │ │ │ │ ├── Gatherer-BT-03.unity │ │ │ │ ├── Gatherer-BT-03.unity.meta │ │ │ │ ├── Gatherer-BT-04.unity │ │ │ │ └── Gatherer-BT-04.unity.meta │ │ │ ├── BT.meta │ │ │ ├── FSM/ │ │ │ │ ├── Gatherer-FSM-01.unity │ │ │ │ ├── Gatherer-FSM-01.unity.meta │ │ │ │ ├── Gatherer-FSM-02.unity │ │ │ │ ├── Gatherer-FSM-02.unity.meta │ │ │ │ ├── Gatherer-FSM-03.unity │ │ │ │ ├── Gatherer-FSM-03.unity.meta │ │ │ │ ├── Gatherer-FSM-04.unity │ │ │ │ └── Gatherer-FSM-04.unity.meta │ │ │ └── FSM.meta │ │ └── Scenes.meta │ └── Gatherer.meta ├── Submodules/ │ └── xNode.meta ├── Submodules.meta ├── package.json └── package.json.meta ================================================ FILE CONTENTS ================================================ ================================================ FILE: .gitmodules ================================================ [submodule "Submodules/xNode"] path = Submodules/xNode url = https://github.com/jlreymendez/xNode ================================================ FILE: BehaviourTree/Base/BehaviourTree.cs ================================================ namespace Planilo.BT { public class BehaviourTree : IAIBehaviour { #region Public public BehaviourTree(BehaviourTreeNode root, int size) { this.root = root; this.size = size; } public BehaviourTreeState Initialize(ref T agent) { return new BehaviourTreeState(size); } public void Run(ref T agent, ref BehaviourTreeState state) { root.Run(ref agent, state.NodeStates); } #endregion #region Private BehaviourTreeNode root; int size; #endregion } } ================================================ FILE: BehaviourTree/Base/BehaviourTree.cs.meta ================================================ fileFormatVersion: 2 guid: ed4ef1c7ca8b1b9499727d97824ea979 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Base/BehaviourTreeEnumerator.cs ================================================ using System.Collections; using System.Collections.Generic; namespace Planilo.BT { public struct BehaviourTreeEnumerator : IEnumerator { int count; int index; public BehaviourTreeEnumerator(int count) { this.count = count; this.index = -1; } public bool MoveNext() { index++; return index < count; } public void Reset() { index = -1; } public int Current => index; object IEnumerator.Current => Current; public void Dispose() { } } } ================================================ FILE: BehaviourTree/Base/BehaviourTreeEnumerator.cs.meta ================================================ fileFormatVersion: 2 guid: 464389cd451545b8acd644a07bf60186 timeCreated: 1598016134 ================================================ FILE: BehaviourTree/Base/BehaviourTreeNode.cs ================================================ using UnityEngine; namespace Planilo.BT { public abstract class BehaviourTreeNode { #region Constructor public BehaviourTreeNode(int nodeIndex) { this.nodeIndex = nodeIndex; } #endregion #region Public public BehaviourTreeResult Run(ref T agent, BehaviourTreeNodeState[] states) { ref var state = ref states[nodeIndex]; state.LastUpdateTime = Time.time; if (state.IsRunning == false) { Initialize(ref agent, states); } state.Result = Update(ref agent, states); if (state.IsRunning == false) { Finalize(ref agent, states); } return state.Result; } public virtual void Initialize(ref T agent, BehaviourTreeNodeState[] states) {} public abstract BehaviourTreeResult Update(ref T agent, BehaviourTreeNodeState[] states); public virtual void Finalize(ref T agent, BehaviourTreeNodeState[] states) {} #endregion #region Protected protected int nodeIndex; #endregion #region Operators public static implicit operator bool(BehaviourTreeNode node) { return node != null; } #endregion } } ================================================ FILE: BehaviourTree/Base/BehaviourTreeNode.cs.meta ================================================ fileFormatVersion: 2 guid: ed661402bf26e884297ea39a1549bb56 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Base/BehaviourTreeNodeState.cs ================================================ using System.Collections; using UnityEngine; namespace Planilo.BT { public struct BehaviourTreeNodeState { #region Static public static BehaviourTreeNodeState Success { get => new BehaviourTreeNodeState(BehaviourTreeResult.Success); } public static BehaviourTreeNodeState Failure { get => new BehaviourTreeNodeState(BehaviourTreeResult.Failure); } public static BehaviourTreeNodeState Running { get => new BehaviourTreeNodeState(BehaviourTreeResult.Running); } #endregion #region Constructor public BehaviourTreeNodeState(BehaviourTreeResult result) { Result = result; LastUpdateTime = Time.time; Enumerator = default; } #endregion #region Public public bool IsSuccess { get => Result == BehaviourTreeResult.Success; } public bool IsFailure { get => Result == BehaviourTreeResult.Failure; } public bool IsRunning { get => Result == BehaviourTreeResult.Running; } public BehaviourTreeResult Result; public BehaviourTreeEnumerator Enumerator; public float LastUpdateTime; #endregion } public enum BehaviourTreeResult { Success, Failure, Running } } ================================================ FILE: BehaviourTree/Base/BehaviourTreeNodeState.cs.meta ================================================ fileFormatVersion: 2 guid: 5c27662892fd0e7409c858e11519194b MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Base/BehaviourTreeState.cs ================================================ namespace Planilo.BT { public struct BehaviourTreeState { public BehaviourTreeNodeState[] NodeStates; public BehaviourTreeState(int size) { NodeStates = new BehaviourTreeNodeState[size]; } } } ================================================ FILE: BehaviourTree/Base/BehaviourTreeState.cs.meta ================================================ fileFormatVersion: 2 guid: 06579914a4164a8f98b76a19d8520a4c timeCreated: 1598353389 ================================================ FILE: BehaviourTree/Base.meta ================================================ fileFormatVersion: 2 guid: cc3363c304bc33d49b2f8702bb78742e folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeGraph.cs ================================================ using System; using System.Collections.Generic; using UnityEngine; using XNode; namespace Planilo.BT.Builder { [CreateAssetMenu(menuName = "Planilo/BT/Tree")] public class BehaviourTreeGraph : NodeGraph, IAIBehaviourBuilder { #region Public public IAIBehaviour Build() { #if UNITY_EDITOR root.BuildingGraph = this; #endif var startIndex = -1; var rootNode = root.Build(ref startIndex); return new BehaviourTree(rootNode, root.Size); } public void SetRoot(BehaviourTreeGraphNode node) { if (root) { root.IsRoot = false; } root = node; root.IsRoot = true; } public override Node AddNode(Type type) { // Only allow the right type of nodes. if (typeof(BehaviourTreeGraphNode).IsAssignableFrom(type) == false) { return null; } // Set first node as root by default var node = base.AddNode(type) as BehaviourTreeGraphNode; if (root == null) { SetRoot(node); } return node; } public BehaviourTreeGraphNode Root => root; #endregion #region Private [SerializeField] BehaviourTreeGraphNode root; #endregion #if UNITY_EDITOR #region Editor Dictionary nodeIdToIndexMap = new Dictionary(); public void SetNodeIndex(int nodeId, int index) { nodeIdToIndexMap[nodeId] = index; } public bool TryGetNodeIndex(int nodeId, out int index) { return nodeIdToIndexMap.TryGetValue(nodeId, out index); } #endregion #endif } } ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeGraph.cs.meta ================================================ fileFormatVersion: 2 guid: 1180afa5dc987974da2f70507dec4e21 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeGraphConnection.cs ================================================ namespace Planilo.BT.Builder { [System.Serializable] public class BehaviourTreeGraphConnection { } } ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeGraphConnection.cs.meta ================================================ fileFormatVersion: 2 guid: 1f7d32e8016e9a14d9c316f25477f41b MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeGraphNode.cs ================================================ using System; using XNode; using UnityEngine; namespace Planilo.BT.Builder { public abstract class BehaviourTreeGraphNode : Node { #region Public public bool IsRoot { get => isRoot; set => isRoot = value; } public BehaviourTreeNode Build(ref int index) { if (AllowedType == null || AllowedType.IsAssignableFrom(typeof(T))) { #if UNITY_EDITOR SetNodeIndexInBuildingGraph(index + 1); #endif index++; return ProtectedBuild(ref index); } return null; } [ContextMenu("Set as root")] public void SetAsRoot() { BehaviourTreeGraph btGraph = graph as BehaviourTreeGraph; btGraph.SetRoot(this); NodePort port = GetInputPort("parent"); port.Disconnect(port.Connection); } public virtual int Size => 1; public override object GetValue(NodePort port) { return null; } #endregion #region Protected protected virtual string NiceName => ""; protected virtual Type AllowedType => null; protected abstract BehaviourTreeNode ProtectedBuild(ref int index); protected override void Init() { name = string.IsNullOrEmpty(NiceName) ? name : NiceName; } #endregion #region Private [SerializeField, HideInInspector] bool isRoot; [SerializeField, Input] BehaviourTreeGraphConnection parent; #endregion #if UNITY_EDITOR #region Editor public BehaviourTreeGraph BuildingGraph { get; set; } void SetNodeIndexInBuildingGraph(int index) { if (IsRoot == false) { var parentNode = GetInputPort("parent").Connection.node as BehaviourTreeGraphNode; BuildingGraph = parentNode.BuildingGraph; } BuildingGraph.SetNodeIndex(GetInstanceID(), index); } #endregion #endif } } ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 343969b3f6168744ea69d33fa7218c01 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeSubGraphNode.cs ================================================ using UnityEngine; namespace Planilo.BT.Builder { [CreateNodeMenu("Planilo/BT/Subtree")] [NodeTint("#2e6b57")] public class BehaviourTreeSubGraphNode : BehaviourTreeGraphNode { #region Public public override int Size => subGraph.Root.Size; #endregion #region Protected protected override BehaviourTreeNode ProtectedBuild(ref int index) { #if UNITY_EDITOR subGraph.Root.BuildingGraph = BuildingGraph; #endif index--; return subGraph.Root.Build(ref index); } #endregion #region Private [SerializeField] BehaviourTreeGraph subGraph = default; #endregion } } ================================================ FILE: BehaviourTree/Builder/Base/BehaviourTreeSubGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 0d4c86fb00794ade9d41dbd82f12ea61 timeCreated: 1598036631 ================================================ FILE: BehaviourTree/Builder/Base.meta ================================================ fileFormatVersion: 2 guid: f52cb0b6ab1d889428941b9c3d2692c8 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Composite/ActiveSelectorGraphNode.cs ================================================ namespace Planilo.BT.Builder { [CreateNodeMenu("Planilo/BT/Composite/ActiveSelector")] public class ActiveSelectorGraphNode : CompositeGraphNode { #region Protected protected override CompositeNode BuildNode(BehaviourTreeNode[] children, int index) { return new ActiveSelector(children, index); } #endregion } } ================================================ FILE: BehaviourTree/Builder/Composite/ActiveSelectorGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: feec9caa577841e4a55c8306c36b2af2 timeCreated: 1598899801 ================================================ FILE: BehaviourTree/Builder/Composite/CompositeGraphNode.cs ================================================ using UnityEngine; using System.Collections.Generic; namespace Planilo.BT.Builder { [NodeTint("#2e4e6b")] public abstract class CompositeGraphNode : BehaviourTreeGraphNode { #region Public public override int Size { get { var size = 0; for (var i = 0; i < childrenCount; i++) { var port = GetOutputPort(string.Format(ChildrenPortNameFormat, i)); var connectedNode = port.Connection.node as BehaviourTreeGraphNode; if (connectedNode == null) continue; size += connectedNode.Size; } return size + 1; } } #endregion #region Protected protected override void Init() { base.Init(); // Calculate children count. // note: it appears that xNode doesn't populate the children list on init. // Which results in children.Count being 0. childrenCount = 0; while (true) { var port = GetOutputPort(string.Format(ChildrenPortNameFormat, childrenCount)); if (port == null) break; childrenCount++; } } protected override BehaviourTreeNode ProtectedBuild(ref int index) { var nodeIndex = index; var builtChildren = BuildChildren(ref index); return BuildNode(builtChildren, nodeIndex); } protected BehaviourTreeNode[] BuildChildren(ref int index) { var childrenNodes = new BehaviourTreeNode[childrenCount]; for (var i = 0; i < childrenCount; i++) { var port = GetOutputPort(string.Format(ChildrenPortNameFormat, i)); var connectedNode = port.Connection.node as BehaviourTreeGraphNode; if (connectedNode != null) { childrenNodes[i] = connectedNode.Build(ref index); } } return childrenNodes; } protected abstract CompositeNode BuildNode(BehaviourTreeNode[] children, int index); #endregion #region Private [SerializeField, Output(dynamicPortList = true)] List children; int childrenCount; const string ChildrenPortNameFormat = "children {0}"; #endregion } } ================================================ FILE: BehaviourTree/Builder/Composite/CompositeGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 5acfda80b53d1a7489ee4eff926af855 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Composite/SelectorGraphNode.cs ================================================ namespace Planilo.BT.Builder { [CreateNodeMenu("Planilo/BT/Composite/Selector")] public class SelectorGraphNode : CompositeGraphNode { #region Protected protected override CompositeNode BuildNode(BehaviourTreeNode[] children, int index) { return new Selector(children, index); } #endregion } } ================================================ FILE: BehaviourTree/Builder/Composite/SelectorGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: c6c0b00122704a0d83cbe9f1b074eb53 timeCreated: 1597947213 ================================================ FILE: BehaviourTree/Builder/Composite/SequencerGraphNode.cs ================================================ namespace Planilo.BT.Builder { [CreateNodeMenu("Planilo/BT/Composite/Sequencer")] public class SequencerGraphNode : CompositeGraphNode { #region Protected protected override CompositeNode BuildNode(BehaviourTreeNode[] children, int index) { return new Sequencer(children, index); } #endregion } } ================================================ FILE: BehaviourTree/Builder/Composite/SequencerGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 439a5b47165d47044a37321987f517d0 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Composite.meta ================================================ fileFormatVersion: 2 guid: 737c6d89e555e8b4aac1948709a1e22c folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Decorator/DecoratorGraphNode.cs ================================================ using UnityEngine; namespace Planilo.BT.Builder { [NodeTint("#6b2e53")] public abstract class DecoratorGraphNode : BehaviourTreeGraphNode { #region Public public override int Size { get { var port = GetOutputPort(string.Format(ChildPortNameFormat)); var connectedNode = port.Connection.node as BehaviourTreeGraphNode; return connectedNode == null ? 1 : connectedNode.Size + 1; } } #endregion #region Protected protected override BehaviourTreeNode ProtectedBuild(ref int index) { var nodeIndex = index; var builtChild = BuildChild(ref index); return BuildNode(builtChild, nodeIndex); } protected BehaviourTreeNode BuildChild(ref int index) { var port = GetOutputPort(string.Format(ChildPortNameFormat)); var connectedNode = port.Connection.node as BehaviourTreeGraphNode; return connectedNode != null ? connectedNode.Build(ref index) : null; } protected abstract DecoratorNode BuildNode(BehaviourTreeNode child, int nodeIndex); #endregion #region Private [SerializeField, Output(dynamicPortList = false)] BehaviourTreeGraphConnection child; const string ChildPortNameFormat = "child"; #endregion } } ================================================ FILE: BehaviourTree/Builder/Decorator/DecoratorGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 86913e94f2204c94b3d8b3883dfac021 timeCreated: 1597949160 ================================================ FILE: BehaviourTree/Builder/Decorator/InverterGraphNode.cs ================================================ namespace Planilo.BT.Builder { [CreateNodeMenu("Planilo/BT/Decorator/Inverter")] public class InverterGraphNode : DecoratorGraphNode { #region Protected protected override DecoratorNode BuildNode(BehaviourTreeNode child, int index) { return new InverterNode(child, index); } #endregion } } ================================================ FILE: BehaviourTree/Builder/Decorator/InverterGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 119f7effb34a49a3a55716e9f173101a timeCreated: 1597949105 ================================================ FILE: BehaviourTree/Builder/Decorator/ResultReplacerGraphNode.cs ================================================ namespace Planilo.BT.Builder { [CreateNodeMenu("Planilo/BT/Decorator/ResultReplacer")] public class ResultReplacerGraphNode : DecoratorGraphNode { #region Public public BehaviourTreeResult FromSuccess = BehaviourTreeResult.Success; public BehaviourTreeResult FromFailure = BehaviourTreeResult.Failure; public BehaviourTreeResult FromRunning = BehaviourTreeResult.Running; #endregion #region Protected protected override DecoratorNode BuildNode(BehaviourTreeNode child, int index) { return new ResultReplacerNode(child, index, FromSuccess, FromFailure, FromRunning); } #endregion } } ================================================ FILE: BehaviourTree/Builder/Decorator/ResultReplacerGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: d1e670abc9c743348bcd401adaacb0c0 timeCreated: 1598901378 ================================================ FILE: BehaviourTree/Builder/Decorator.meta ================================================ fileFormatVersion: 2 guid: 67e9a45ba2f1473688bcfd1fdb992b88 timeCreated: 1597949088 ================================================ FILE: BehaviourTree/Builder/Leaf/LeafGraphNode.cs ================================================ namespace Planilo.BT.Builder { [NodeTint("#2e6b38")] public abstract class LeafGraphNode : BehaviourTreeGraphNode { } } ================================================ FILE: BehaviourTree/Builder/Leaf/LeafGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 0447fb26f3311e148bbc9a8fadd07f19 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder/Leaf.meta ================================================ fileFormatVersion: 2 guid: 450ecae9ca3e13846a1ac61d30aa8277 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Builder.meta ================================================ fileFormatVersion: 2 guid: e0e03a877601715448f75641512ed07d folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Composite/ActiveSelector.cs ================================================ namespace Planilo.BT { public class ActiveSelector : Selector { public ActiveSelector(BehaviourTreeNode[] children, int index) : base(children, index) {} public override BehaviourTreeResult Update(ref T agent, BehaviourTreeNodeState[] states) { states[nodeIndex].Enumerator.Reset(); states[nodeIndex].Enumerator.MoveNext(); return base.Update(ref agent, states); } } } ================================================ FILE: BehaviourTree/Composite/ActiveSelector.cs.meta ================================================ fileFormatVersion: 2 guid: 94fcea079da7480b940a5fd6694b185b timeCreated: 1598898910 ================================================ FILE: BehaviourTree/Composite/CompositeNode.cs ================================================ namespace Planilo.BT { public abstract class CompositeNode : BehaviourTreeNode { #region Constructor public CompositeNode(BehaviourTreeNode[] children, int index) : base(index) { this.children = children; } #endregion #region Public public override void Initialize(ref T agent, BehaviourTreeNodeState[] states) { ref var nodeState = ref states[nodeIndex]; nodeState.Enumerator = new BehaviourTreeEnumerator(children.Length); nodeState.Result = BehaviourTreeResult.Success; NextChild(ref nodeState); } #endregion #region Protected protected BehaviourTreeNode Current(BehaviourTreeNodeState nodeState) { return nodeState.Enumerator.Current < children.Length ? children[nodeState.Enumerator.Current] : null; } protected void NextChild(ref BehaviourTreeNodeState nodeState) { nodeState.Enumerator.MoveNext(); } #endregion #region Private BehaviourTreeNode[] children; #endregion } } ================================================ FILE: BehaviourTree/Composite/CompositeNode.cs.meta ================================================ fileFormatVersion: 2 guid: 3a48c7243474fd945bf8bd5c6b518834 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Composite/Selector.cs ================================================ namespace Planilo.BT { public class Selector : CompositeNode { #region Public public Selector(BehaviourTreeNode[] children, int index) : base(children, index) {} public override BehaviourTreeResult Update(ref T agent, BehaviourTreeNodeState[] states) { ref var state = ref states[nodeIndex]; while (Current(state) != null) { state.Result = Current(state).Run(ref agent, states); if (!state.IsFailure) { break; } NextChild(ref state); } return state.Result; } #endregion } } ================================================ FILE: BehaviourTree/Composite/Selector.cs.meta ================================================ fileFormatVersion: 2 guid: 596b5901dd73ba24a80bf00d2d7d679a MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Composite/Sequencer.cs ================================================ namespace Planilo.BT { public class Sequencer : CompositeNode { #region Public public Sequencer(BehaviourTreeNode[] children, int index) : base(children, index) {} public override BehaviourTreeResult Update(ref T agent, BehaviourTreeNodeState[] states) { ref var state = ref states[nodeIndex]; while (Current(state) != null) { state.Result = Current(state).Run(ref agent, states); if (!state.IsSuccess) { break; } NextChild(ref state); } return state.Result; } #endregion } } ================================================ FILE: BehaviourTree/Composite/Sequencer.cs.meta ================================================ fileFormatVersion: 2 guid: 3c774cf6087a6f345a39248ac49f1076 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Composite.meta ================================================ fileFormatVersion: 2 guid: 0a8dae50cc56cb94e8a278b67c4da501 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Decorator/DecoratorNode.cs ================================================ namespace Planilo.BT { public abstract class DecoratorNode : BehaviourTreeNode { #region Constructor public DecoratorNode(BehaviourTreeNode child, int index) : base(index) { this.child = child; } #endregion #region Protected protected BehaviourTreeResult UpdateChild(ref T agent, BehaviourTreeNodeState[] states) { return child.Update(ref agent, states); } #endregion #region Private BehaviourTreeNode child; #endregion } } ================================================ FILE: BehaviourTree/Decorator/DecoratorNode.cs.meta ================================================ fileFormatVersion: 2 guid: bcc18f1f1c3642b9a882da28f21c5d01 timeCreated: 1597947467 ================================================ FILE: BehaviourTree/Decorator/InverterNode.cs ================================================ namespace Planilo.BT { public class InverterNode : DecoratorNode { #region Constructor public InverterNode(BehaviourTreeNode child, int index) : base(child, index) { } #endregion #region Public public override BehaviourTreeResult Update(ref T agent, BehaviourTreeNodeState[] states) { ref var state = ref states[nodeIndex]; state.Result = UpdateChild(ref agent, states); if (state.IsFailure) { state.Result = BehaviourTreeResult.Success; } else if (state.IsSuccess) { state.Result = BehaviourTreeResult.Failure; } return state.Result; } #endregion } } ================================================ FILE: BehaviourTree/Decorator/InverterNode.cs.meta ================================================ fileFormatVersion: 2 guid: f344b2aa9e5f46f48f6713e44cae17a3 timeCreated: 1597948037 ================================================ FILE: BehaviourTree/Decorator/ResultReplacerNode.cs ================================================ namespace Planilo.BT { public class ResultReplacerNode : DecoratorNode { readonly BehaviourTreeResult fromSuccess; readonly BehaviourTreeResult fromFailure; readonly BehaviourTreeResult fromRunning; public ResultReplacerNode(BehaviourTreeNode child, int index, BehaviourTreeResult fromSuccess, BehaviourTreeResult fromFailure, BehaviourTreeResult fromRunning) : base(child, index) { this.fromSuccess = fromSuccess; this.fromFailure = fromFailure; this.fromRunning = fromRunning; } public override BehaviourTreeResult Update(ref T agent, BehaviourTreeNodeState[] states) { ref var state = ref states[nodeIndex]; state.Result = UpdateChild(ref agent, states); if (state.IsSuccess) { state.Result = fromSuccess; } else if (state.IsFailure) { state.Result = fromFailure; } else if (state.IsRunning) { state.Result = fromRunning; } return state.Result; } } } ================================================ FILE: BehaviourTree/Decorator/ResultReplacerNode.cs.meta ================================================ fileFormatVersion: 2 guid: a29822550b8043abac9899ad55545b9d timeCreated: 1598901099 ================================================ FILE: BehaviourTree/Decorator.meta ================================================ fileFormatVersion: 2 guid: 1062cffa68e04d719a4e1d07c26726db timeCreated: 1597947459 ================================================ FILE: BehaviourTree/Editor/BehaviourTreeGraphEditor.cs ================================================ using System; using Planilo.BT.Builder; using UnityEditor; using XNodeEditor; namespace Planilo.BT.Editor { [CustomNodeGraphEditor(typeof(BehaviourTreeGraph))] public class BehaviourTreeGraphEditor : NodeGraphEditor { public override string GetNodeMenuName(Type type) { if (typeof(BehaviourTreeGraphNode).IsAssignableFrom(type) == false) return null; return base.GetNodeMenuName(type).Replace("BT/", ""); } public override void OnGUI() { if (Selection.activeGameObject == null) return; var runner = Selection.activeGameObject.GetComponent>(); if (runner != null) { NodeEditorWindow.current.Repaint(); } } } } ================================================ FILE: BehaviourTree/Editor/BehaviourTreeGraphEditor.cs.meta ================================================ fileFormatVersion: 2 guid: 1570f3df354e453aa53e5dd7ec72c87d timeCreated: 1598024380 ================================================ FILE: BehaviourTree/Editor/BehaviourTreeGraphNodeEditor.cs ================================================ using Planilo.BT.Builder; using UnityEditor; using UnityEngine; using XNodeEditor; namespace Planilo.BT.Editor { [CustomNodeEditor(typeof(BehaviourTreeGraphNode))] public class BehaviourTreeGraphNodeEditor : NodeEditor { Color rootColor = new Color(0.42f, 0.18f, 0.18f); Color inactiveColor = new Color(0.5f, 0.5f, 0.5f); Color runningColor = new Color(0.43f, 0.41f, 0.18f); public override void OnHeaderGUI() { var name = target.name.Replace(" Graph", ""); GUILayout.Label(name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30)); } public override Color GetTint() { // Make sure node is connected. if (Selection.activeGameObject == null || Application.isPlaying == false) return GetEditorTint(); // Check if there is an active game object with a runner. var runner = Selection.activeGameObject.GetComponent>(); if (runner == null) return GetEditorTint(); // Check if it is running. var behaviourGraph = runner.GetBehaviour(); var runnerState = runner.GetState(); var node = target as BehaviourTreeGraphNode; if (behaviourGraph.TryGetNodeIndex(node.GetInstanceID(), out var nodeIndex)) { var state = runnerState.NodeStates[nodeIndex]; if (state.LastUpdateTime == Time.time) { return runningColor; } } return GetEditorTint(); } Color GetEditorTint() { var node = target as BehaviourTreeGraphNode; var hasParent = node.GetInputPort("parent").Connection != null; return node.IsRoot ? rootColor : hasParent ? base.GetTint() : base.GetTint() * inactiveColor; } } } ================================================ FILE: BehaviourTree/Editor/BehaviourTreeGraphNodeEditor.cs.meta ================================================ fileFormatVersion: 2 guid: 82bc11547dde4c37826bec6e31996ca6 timeCreated: 1598021825 ================================================ FILE: BehaviourTree/Editor/BehaviourTreeSubGraphNodeEditor.cs ================================================ using Planilo.BT.Builder; using UnityEditor; using UnityEngine; using XNodeEditor; namespace Planilo.BT.Editor { [CustomNodeEditor(typeof(BehaviourTreeSubGraphNode))] public class BehaviourTreeSubGraphNodeEditor : BehaviourTreeGraphNodeEditor { public override void OnHeaderGUI() { var name = target.name.Replace("Behaviour Tree Sub Graph", "Sub Tree"); GUILayout.Label(name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30)); } } } ================================================ FILE: BehaviourTree/Editor/BehaviourTreeSubGraphNodeEditor.cs.meta ================================================ fileFormatVersion: 2 guid: 69c1b0a45bb143af8f5d46df57b93708 timeCreated: 1598468049 ================================================ FILE: BehaviourTree/Editor.meta ================================================ fileFormatVersion: 2 guid: 23f10a60f37b47b4aa4a0b15d16b6262 timeCreated: 1598021827 ================================================ FILE: BehaviourTree/Leaf/LeafNode.cs ================================================ namespace Planilo.BT { public abstract class LeafNode : BehaviourTreeNode { public LeafNode(int index) : base(index) {} } } ================================================ FILE: BehaviourTree/Leaf/LeafNode.cs.meta ================================================ fileFormatVersion: 2 guid: 4bd8c2a084702bc46a17900df059e04a MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree/Leaf.meta ================================================ fileFormatVersion: 2 guid: 0026211ea9a9fe64ab19159069a53fe0 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: BehaviourTree.meta ================================================ fileFormatVersion: 2 guid: 6c022f72e6abf154aa6529773d5a7a39 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachine.cs ================================================ using System; namespace Planilo.FSM { public class FiniteStateMachine : IAIBehaviour { #region Public public FiniteStateMachine(FiniteStateMachineState[] states) { this.states = states; } public FiniteStateMachineRuntimeState Initialize(ref T agent) { return FiniteStateMachineRuntimeState.EntryState; } public void Run(ref T agent, ref FiniteStateMachineRuntimeState state) { var currentState = states[state.CurrentState]; if (state.CurrentState != state.LastState) { currentState.OnEnter(ref agent); state.LastState = state.CurrentState; } currentState.OnTick(ref agent); for (var i = 0; i < currentState.Transitions.Length; i++) { if (currentState.Transitions[i].Condition(agent)) { state.CurrentState = currentState.Transitions[i].TargetState; break; } } if (state.CurrentState != state.LastState) { currentState.OnExit(ref agent); } } #endregion #region Private FiniteStateMachineState[] states; #endregion } } ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachine.cs.meta ================================================ fileFormatVersion: 2 guid: 264479c3c5074a53b5c79ddb06c23365 timeCreated: 1598285816 ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachineRuntimeState.cs ================================================ namespace Planilo.FSM { public struct FiniteStateMachineRuntimeState { public int CurrentState; public int LastState; public static FiniteStateMachineRuntimeState EntryState => new FiniteStateMachineRuntimeState { CurrentState = 0, LastState = -1 }; } } ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachineRuntimeState.cs.meta ================================================ fileFormatVersion: 2 guid: 08d6be8b46b44ce0869ca4e95a4b3545 timeCreated: 1598285888 ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachineState.cs ================================================ namespace Planilo.FSM { public abstract class FiniteStateMachineState { #region Public public virtual void OnEnter(ref T agent) {} public abstract void OnTick(ref T agent); public virtual void OnExit(ref T agent) {} #endregion #region Internal internal FiniteStateMachineTransition[] Transitions { get; set; } #endregion } } ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachineState.cs.meta ================================================ fileFormatVersion: 2 guid: 091eaeb6820e4d07a8b703997363c479 timeCreated: 1598285965 ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachineTransition.cs ================================================ using System; namespace Planilo.FSM { public class FiniteStateMachineTransition { public Func Condition; public int TargetState; } } ================================================ FILE: FiniteStateMachine/Base/FiniteStateMachineTransition.cs.meta ================================================ fileFormatVersion: 2 guid: afba9a82b6f543e4a3ac0db1daf0ef0f timeCreated: 1598364529 ================================================ FILE: FiniteStateMachine/Base.meta ================================================ fileFormatVersion: 2 guid: d24b1a71ff5042c1b3d46f6bd8818eb7 timeCreated: 1598285816 ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineConnection.cs ================================================ namespace Planilo.FSM.Builder { [System.Serializable] public struct FiniteStateMachineConnectionToTransition { } [System.Serializable] public struct FiniteStateMachineConnectionToState { } } ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineConnection.cs.meta ================================================ fileFormatVersion: 2 guid: 8ed624537b3d4481b6493c852cddfbd6 timeCreated: 1598299718 ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineGraph.cs ================================================ using System; using System.Collections.Generic; using UnityEngine; using XNode; namespace Planilo.FSM.Builder { [CreateAssetMenu(menuName = "Planilo/FSM")] public class FiniteStateMachineGraph : NodeGraph, IAIBehaviourBuilder { #region Public public IAIBehaviour Build() { var nextIndex = 0; var states = new List>(); var nodeIdToStateIndexMap = new Dictionary(); entryState.Build(ref nextIndex, states, nodeIdToStateIndexMap); #if UNITY_EDITOR nodeIdToIndexMap = nodeIdToStateIndexMap; #endif return new FiniteStateMachine(states.ToArray()); } public override Node AddNode(Type type) { // Only allow the right type of nodes. if (typeof(FiniteStateMachineStateGraphNode).IsAssignableFrom(type) == false && typeof(FiniteStateMachineTransitionGraphNode).IsAssignableFrom(type) == false) { return null; } // Set first node as root by default var node = base.AddNode(type); var stateNode = node as FiniteStateMachineStateGraphNode; if (stateNode != null && entryState == null) { SetEntryNode(stateNode); } return node; } #endregion #region Internal internal FiniteStateMachineStateGraphNode EntryState => entryState; internal void SetEntryNode(FiniteStateMachineStateGraphNode node) { if (entryState != null) { entryState.IsEntry = false; } entryState = node; entryState.IsEntry = true; } #endregion #region Private [SerializeField] FiniteStateMachineStateGraphNode entryState; #endregion #if UNITY_EDITOR #region Editor Dictionary nodeIdToIndexMap = new Dictionary(); internal bool TryGetNodeIndex(int nodeId, out int index) { return nodeIdToIndexMap.TryGetValue(nodeId, out index); } #endregion #endif } } ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineGraph.cs.meta ================================================ fileFormatVersion: 2 guid: cdd908a76ba246eb91d13f28a40a4143 timeCreated: 1598287637 ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineGraphNode.cs ================================================ using XNode; namespace Planilo.FSM.Builder { public abstract class FiniteStateMachineGraphNode : Node { public override object GetValue(NodePort port) => null; } } ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: db3384b79add4143a1545cd9cecdd099 timeCreated: 1598365914 ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineStateGraphNode.cs ================================================ using System.Collections.Generic; using UnityEngine; using XNode; namespace Planilo.FSM.Builder { [NodeTint("#2e506b")] public abstract class FiniteStateMachineStateGraphNode : FiniteStateMachineGraphNode { #region Internal internal bool IsEntry { get => isEntry; set => isEntry = value; } internal bool IsExit => isExit; [ContextMenu("Set as entry state")] internal void SetAsEntry() { var fsmGraph = graph as FiniteStateMachineGraph; fsmGraph.SetEntryNode(this); } [ContextMenu("Toggle exit state")] internal void SetAsExit() { isExit = !isExit; } internal virtual void Build(ref int nextIndex, List> states, Dictionary idToIndexMap) { // Register index. var instanceId = GetInstanceID(); if (idToIndexMap.ContainsKey(instanceId)) return; idToIndexMap[instanceId] = nextIndex; nextIndex++; var state = ProtectedBuild(); states.Add(state); state.Transitions = BuildTransitions(ref nextIndex, states, idToIndexMap); } #endregion #region Protected protected override void Init() { base.Init(); // Calculate children count. // note: it appears that xNode doesn't populate the children list on init. // Which results in children.Count being 0. transitionsCount = 0; while (true) { var transition = GetTransitionNode(transitionsCount); if (transition == null) break; transitionsCount++; } } protected virtual FiniteStateMachineTransition[] BuildTransitions(ref int nextIndex, List> states, Dictionary idToIndexMap) { // Build transitions. var transitionList = new List>(); for (var i = 0; i < transitionsCount; i++) { var transition = GetTransitionNode(i); var targetState = transition.GetTransitionState(); if (targetState == null) continue; if (idToIndexMap.TryGetValue(targetState.GetInstanceID(), out var targetIndex) == false) { targetIndex = nextIndex; targetState.Build(ref nextIndex, states, idToIndexMap); } transitionList.Add(transition.Build(targetIndex)); } return transitionList.ToArray(); } protected FiniteStateMachineTransitionGraphNode GetTransitionNode(int index) { var port = GetOutputPort(string.Format(TransitionKeyFormat, index)); return (FiniteStateMachineTransitionGraphNode) port?.Connection?.node; } protected abstract FiniteStateMachineState ProtectedBuild(); #endregion #region Private [SerializeField, Input] FiniteStateMachineConnectionToState entry; [SerializeField, Output(dynamicPortList = true)] List transitions; [HideInInspector, SerializeField] bool isEntry; [HideInInspector, SerializeField] bool isExit; int transitionsCount; const string TransitionKeyFormat = "transitions {0}"; #endregion } } ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 326bc9f3b49049f99bbaaef87fae77fb timeCreated: 1598303089 ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineSubGraphNode.cs ================================================ using System.Collections.Generic; using UnityEngine; namespace Planilo.FSM.Builder { [CreateNodeMenu("Planilo/FSM/States/SubGraphState")] [NodeWidth(300)] public sealed class FiniteStateMachineSubGraphNode : FiniteStateMachineStateGraphNode { #region Internal internal override void Build(ref int nextIndex, List> states, Dictionary idToIndexMap) { // Check and register index. var instanceId = GetInstanceID(); if (idToIndexMap.ContainsKey(instanceId)) return; idToIndexMap[instanceId] = nextIndex; // Create subgraph. subGraph.EntryState.Build(ref nextIndex, states, idToIndexMap); var exitStates = GetExitStates(states, idToIndexMap, exitType); foreach (var exitState in exitStates) { // Prepend parent graph transitions to node transition. var transitions = new List>(BuildTransitions(ref nextIndex, states, idToIndexMap)); transitions.AddRange(exitState.Transitions); exitState.Transitions = transitions.ToArray(); } } internal FiniteStateMachineState[] GetExitStates(List> states, Dictionary idToIndexMap, FiniteStateMachineGraphExitType withExitType) { var exitStates = new List>(); foreach (var node in subGraph.nodes) { var stateNode = node as FiniteStateMachineStateGraphNode; if (stateNode == null) continue; if (idToIndexMap.ContainsKey(node.GetInstanceID()) == false) continue; if (withExitType == FiniteStateMachineGraphExitType.ExitOnly && stateNode.IsExit == false) continue; var subGraphNode = stateNode as FiniteStateMachineSubGraphNode; if (subGraphNode != null) { exitStates.AddRange(subGraphNode.GetExitStates(states, idToIndexMap, withExitType)); } else { var stateIndex = idToIndexMap[node.GetInstanceID()]; exitStates.Add(states[stateIndex]); } } return exitStates.ToArray(); } public FiniteStateMachineGraph SubGraph => subGraph; #endregion #region Protected protected override FiniteStateMachineState ProtectedBuild() => null; #endregion #region Private [SerializeField] FiniteStateMachineGraph subGraph = default; [SerializeField] FiniteStateMachineGraphExitType exitType = default; #endregion } public enum FiniteStateMachineGraphExitType { All, ExitOnly } } ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineSubGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: d5c365a7459a4e51b5d70760f51d3422 timeCreated: 1598447710 ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineTransitionGraphNode.cs ================================================ using UnityEngine; using XNode; namespace Planilo.FSM.Builder { [NodeTint("#6b532e")] public abstract class FiniteStateMachineTransitionGraphNode : FiniteStateMachineGraphNode { public abstract FiniteStateMachineTransition Build(int targetIndex); public FiniteStateMachineStateGraphNode GetTransitionState() { var port = GetOutputPort("target"); return (FiniteStateMachineStateGraphNode) port?.Connection?.node; } [SerializeField, Input] FiniteStateMachineConnectionToTransition source; [SerializeField, Output] FiniteStateMachineConnectionToState target; } } ================================================ FILE: FiniteStateMachine/Builder/Base/FiniteStateMachineTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 45094c98a8c048a4bc78bf0bcf2b4e86 timeCreated: 1598299907 ================================================ FILE: FiniteStateMachine/Builder/Base.meta ================================================ fileFormatVersion: 2 guid: 13447a4ebe76486eaf010ab4c7b94370 timeCreated: 1598303338 ================================================ FILE: FiniteStateMachine/Builder/Transition/AlwaysTransitionGraphNode.cs ================================================ using XNode; namespace Planilo.FSM.Builder { [CreateNodeMenu("Planilo/FSM/Transitions/Always")] public class AlwaysTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public override FiniteStateMachineTransition Build(int targetIndex) { return new FiniteStateMachineTransition() { Condition = (T agent) => true, TargetState = targetIndex }; } } } ================================================ FILE: FiniteStateMachine/Builder/Transition/AlwaysTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: d6f7728263c24687b8653873d7007634 timeCreated: 1598303388 ================================================ FILE: FiniteStateMachine/Builder/Transition.meta ================================================ fileFormatVersion: 2 guid: a534e37d9adb419ab4357e3ee24cf10a timeCreated: 1598303353 ================================================ FILE: FiniteStateMachine/Builder.meta ================================================ fileFormatVersion: 2 guid: a93d1136348c4e55a2310c63f4f4e0db timeCreated: 1598287596 ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineGraphEditor.cs ================================================ using System; using Planilo.FSM.Builder; using UnityEditor; using XNodeEditor; namespace Planilo.FSM.Editor { [CustomNodeGraphEditor(typeof(FiniteStateMachineGraph))] public class FiniteStateMachineGraphEditor : NodeGraphEditor { public override string GetNodeMenuName(Type type) { if (typeof(FiniteStateMachineStateGraphNode).IsAssignableFrom(type) == false && typeof(FiniteStateMachineTransitionGraphNode).IsAssignableFrom(type) == false) { return null; } return base.GetNodeMenuName(type).Replace("FSM/", ""); } public override void OnGUI() { if (Selection.activeGameObject == null) return; var runner = Selection.activeGameObject.GetComponent>(); if (runner != null) { NodeEditorWindow.current.Repaint(); } } } } ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineGraphEditor.cs.meta ================================================ fileFormatVersion: 2 guid: 0e0f2ad9085045c6b2c476fb4cf315d3 timeCreated: 1598358912 ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineGraphNodeEditor.cs ================================================ using Planilo.FSM.Builder; using UnityEditor; using UnityEngine; using XNodeEditor; namespace Planilo.FSM.Editor { [CustomNodeEditor(typeof(FiniteStateMachineTransitionGraphNode))] public class FiniteStateMachineGraphNodeEditor : NodeEditor { public override void OnHeaderGUI() { var name = target.name.Replace("Transition Graph", ""); GUILayout.Label(name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30)); } } } ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineGraphNodeEditor.cs.meta ================================================ fileFormatVersion: 2 guid: 853921e758314674a0d28255aec17df9 timeCreated: 1598465887 ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineStateGraphNodeEditor.cs ================================================ using Planilo.FSM.Builder; using UnityEditor; using UnityEngine; using XNodeEditor; namespace Planilo.FSM.Editor { [CustomNodeEditor(typeof(FiniteStateMachineStateGraphNode))] public class FiniteStateMachineStateGraphNodeEditor : NodeEditor { Color entryColor = new Color(0.18f, 0.42f, 0.22f); Color entryExitColor = new Color(0.3f, 0.3f, 0.22f); Color exitColor = new Color(0.42f, 0.18f, 0.22f); Color inactiveColor = new Color(0.5f, 0.5f, 0.5f); Color runningColor = new Color(0.43f, 0.41f, 0.18f); public override void OnHeaderGUI() { var stateNode = target as FiniteStateMachineStateGraphNode; var name = stateNode.name.Replace(" State Graph", ""); name = string.Format("{0}{1}{2}", stateNode.IsEntry ? "→ " : "", name, stateNode.IsExit ? " →" : ""); GUILayout.Label(name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30)); } public override Color GetTint() { // Make sure node is connected. if (Selection.activeGameObject == null || Application.isPlaying == false) return GetEditorTint(); // Check if there is an active game object with a runner. var runner = Selection.activeGameObject.GetComponent>(); if (runner == null) return GetEditorTint(); // Check if it is running. var behaviourGraph = runner.GetBehaviour(); var runnerState = runner.GetState(); var node = target as FiniteStateMachineStateGraphNode; if (behaviourGraph.TryGetNodeIndex(node.GetInstanceID(), out var nodeIndex)) { if (runnerState.CurrentState == nodeIndex) { return runningColor; } } return GetEditorTint(); } protected Color GetRunningColor() { return runningColor; } protected Color GetEditorTint() { var node = target as FiniteStateMachineStateGraphNode; var isDisconnected = node.GetInputPort("entry").Connection == null; if (node.IsEntry && node.IsExit) { return entryExitColor; } if (node.IsEntry) { return entryColor; } if (node.IsExit) { return exitColor; } if (isDisconnected) { return base.GetTint() * inactiveColor; } return base.GetTint(); } } } ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineStateGraphNodeEditor.cs.meta ================================================ fileFormatVersion: 2 guid: c5d230aa803d488c813e3c298e14282f timeCreated: 1598378335 ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineSubGraphNodeEditor.cs ================================================ using System.Collections.Generic; using Planilo.FSM.Builder; using UnityEditor; using UnityEngine; using XNodeEditor; namespace Planilo.FSM.Editor { [CustomNodeEditor(typeof(FiniteStateMachineSubGraphNode))] public class FiniteStateMachineSubGraphNodeEditor : FiniteStateMachineStateGraphNodeEditor { public override void OnHeaderGUI() { var stateNode = target as FiniteStateMachineSubGraphNode; var name = target.name.Replace("Finite State Machine Sub Graph", "Sub Graph State"); name = string.Format("{0}{1}{2}", stateNode.IsEntry ? "→ " : "", name, stateNode.IsExit ? " →" : ""); GUILayout.Label(name, NodeEditorResources.styles.nodeHeader, GUILayout.Height(30)); } public override Color GetTint() { // Make sure node is connected. if (Selection.activeGameObject == null || Application.isPlaying == false) return GetEditorTint(); // Check if there is an active game object with a runner. var runner = Selection.activeGameObject.GetComponent>(); if (runner == null) return GetEditorTint(); // Check if it is running. var behaviourGraph = runner.GetBehaviour(); var runnerState = runner.GetState(); if (IsSubGraphRunning(target as FiniteStateMachineSubGraphNode, behaviourGraph, runnerState, new List())) { return GetRunningColor(); } return GetEditorTint(); } bool IsStateRunning(FiniteStateMachineStateGraphNode stateNode, FiniteStateMachineGraph behaviourGraph, FiniteStateMachineRuntimeState state) { if (behaviourGraph.TryGetNodeIndex(stateNode.GetInstanceID(), out var nodeIndex)) { if (state.CurrentState == nodeIndex) { return true; } } return false; } bool IsSubGraphRunning(FiniteStateMachineSubGraphNode subGraphNode, FiniteStateMachineGraph behaviourGraph, FiniteStateMachineRuntimeState state, List checkedSubgraphs) { checkedSubgraphs.Add(subGraphNode.GetInstanceID()); var subGraph = subGraphNode.SubGraph; foreach (var node in subGraph.nodes) { var running = false; // If node is another subgraph execute recursively but prevent infinite cycles. if (node is FiniteStateMachineSubGraphNode && checkedSubgraphs.Contains(node.GetInstanceID()) == false) { running = IsSubGraphRunning(node as FiniteStateMachineSubGraphNode, behaviourGraph, state, checkedSubgraphs); } else if (node is FiniteStateMachineStateGraphNode) { running = IsStateRunning(node as FiniteStateMachineStateGraphNode, behaviourGraph, state); } if (running) return true; } return false; } } } ================================================ FILE: FiniteStateMachine/Editor/FiniteStateMachineSubGraphNodeEditor.cs.meta ================================================ fileFormatVersion: 2 guid: 8cb84b3c62c846979927cf8bfba30d2f timeCreated: 1598466473 ================================================ FILE: FiniteStateMachine/Editor.meta ================================================ fileFormatVersion: 2 guid: 1e96165401b8460fbbe677de2f3a5ea6 timeCreated: 1598358865 ================================================ FILE: FiniteStateMachine.meta ================================================ fileFormatVersion: 2 guid: 2752ac942d074a808c60ab3fa02a26a3 timeCreated: 1598285816 ================================================ FILE: Interfaces/IAIBehaviour.cs ================================================ using Planilo.BT; namespace Planilo { public interface IAIBehaviour { TState Initialize(ref TAgent agent); void Run(ref TAgent agent, ref TState state); } } ================================================ FILE: Interfaces/IAIBehaviour.cs.meta ================================================ fileFormatVersion: 2 guid: 3f1c3386d7926a94b9205f01621148ec MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Interfaces/IAIBehaviourBuilder.cs ================================================ namespace Planilo { public interface IAIBehaviourBuilder { IAIBehaviour Build(); } } ================================================ FILE: Interfaces/IAIBehaviourBuilder.cs.meta ================================================ fileFormatVersion: 2 guid: ce2dde0722302f54893f429df4dd1381 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Interfaces/IAIBehaviourDebugger.cs ================================================ namespace Planilo { public interface IAIBehaviourDebugger { #if UNITY_EDITOR TState GetState(); TBehaviour GetBehaviour(); #endif } } ================================================ FILE: Interfaces/IAIBehaviourDebugger.cs.meta ================================================ fileFormatVersion: 2 guid: 46dfe5098ac84355a3466e935e4c31a9 timeCreated: 1598021665 ================================================ FILE: Interfaces.meta ================================================ fileFormatVersion: 2 guid: bc9eb3ec6dece9c428e5b0e15a58aed2 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: License.md ================================================ MIT License Copyright (c) 2018 jlreymendez Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. ================================================ FILE: License.md.meta ================================================ fileFormatVersion: 2 guid: cf0be06b37c4a5446bd29deb63618fb8 TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Planilo.asmdef ================================================ { "name": "Planilo", "references": ["XNode","XNodeEditor"], "optionalUnityReferences": [], "includePlatforms": [], "excludePlatforms": [], "allowUnsafeCode": false, "overrideReferences": false, "precompiledReferences": [], "autoReferenced": true, "defineConstraints": [], "versionDefines": [] } ================================================ FILE: Planilo.asmdef.meta ================================================ fileFormatVersion: 2 guid: a6582943af2a7f2459da73aa3febf111 AssemblyDefinitionImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: README.md ================================================ ![planilo](https://user-images.githubusercontent.com/1077394/91163953-be4d8d80-e6a4-11ea-9f86-127a6374235d.png) A set of tools for designing AI in a visual node editor on unity. Use for: * Behavior Trees. * Finite State Machines. * Implement your own AI graphs. ## Key features * A visual editor for Behavior Trees, Finite State Machines and the basis to create other types of AI tools. * AI graphs implemented as reusable scriptable objects, same instance can be run by multiple GameObjects. * Share data between the Scene an your Behavior Tree using Blackboard variables. * Ready implemented examples to use as guidance. * See highlighted nodes in runtime to understand how your AI graphs are running. * Modularize your AI graphs and execute them as part of nodes of other AI graphs. * See more in [documentation](https://github.com/jlreymendez/planilo/wiki) ## Road to v0.2.0 As I'm not actively using planilo on any project I have stopped development of planilo for the time being. I have merged the development branch to master, hoping to encourage people to stop using v0.1.0 which in my opinion has major design flaws. The only thing that's stopping the release of v0.2.0 is that the samples have bugs coming from either Unity's Assets v2 or xNode. This was the last thing to convince me that if I ever continue developing this tool I will need to drop xNode to gain control over important parts of the tool. ### What is changing? * **Separation of concerns.** Using xNode as a serialization and behaviour builder tool only. Making no assumptions of how runtime execution should be. * Interface blackboards for behaviours instead of dictionaries. * Behaviour tree overhaul with new composite nodes Active Selector and Active Sequencer. ## Things left to investigate * Jobified versions of the AI behaviour. * Utility based Behaviour Tree. ## v0.1.0 The initial release of planilo had some design flaws which would cause: * Bugs difficult to track. * Less control over the flow execution for the user. * Performance hits due to allocations while using dictionaries for the blackboard variables. If you still want to have access to planilo v0.1.0 you can find it in the releases page [v0.1.0](https://github.com/jlreymendez/planilo/releases/tag/untagged-e47bab49a17a75565867) ## Installing with Unity Package Manager *(Requires Unity version 2019.1 or above)* To install this project as a [Git dependency](https://docs.unity3d.com/Manual/upm-git.html) using the Unity Package Manager, add the following line to your project's `manifest.json`: ``` "com.github.jlreymendez.planilo": "https://github.com/jlreymendez/planilo.git" ``` NOTE: This will also install the dependencies xNode under the Planilo path. You will need to have Git installed and available in your system's PATH. ## Acknowledgements: * [xNode by Siccity](https://github.com/Siccity/xNode) * [Game-icons.net and Delapouite](https://game-icons.net/1x1/delapouite/choice.html) ================================================ FILE: README.md.meta ================================================ fileFormatVersion: 2 guid: 0cdbf1c4baf74bb499e51cd61f6d4ccf TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/BT/Behaviours/GathererBTDebugger.cs ================================================ using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.BT { public class GathererBTDebugger : BehaviourDebugger { } } ================================================ FILE: Samples~/Gatherer/Code/BT/Behaviours/GathererBTDebugger.cs.meta ================================================ fileFormatVersion: 2 guid: 027e1eeb965c47308c0eb9a7f463d140 timeCreated: 1598558576 ================================================ FILE: Samples~/Gatherer/Code/BT/Behaviours/GathererBTRunner.cs ================================================ using Planilo; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.BT { public class GathererBTRunner : MonoBehaviour, // note: This is only required for debugging the tree inside the planilo graph tool IAIBehaviourDebugger { [Header("General")] public BehaviourTreeGraph BehaviourDefinition; [Header("Sample 01")] public float Speed; public float Reach; [Header("Sample 02")] public float WorkTime; public float RestTime; Gatherer agent = default; BehaviourTreeState behaviourTreeState = default; IAIBehaviour behaviourTree = default; void Awake() { behaviourTree = BehaviourDefinition.Build(); behaviourTreeState = behaviourTree.Initialize(ref agent); } void Start() { agent.Id = GetInstanceID(); agent.World.Home = FindObjectOfType().transform.position; agent.Speed = Speed; agent.Reach = Reach; agent.Transform = transform; agent.LastRest = Time.time; agent.WorkTime = WorkTime; agent.RestTime = RestTime; } void Update() { // Update all agent sensors agent.World.Resources = FindObjectsOfType(); // Execute behaviour tree. behaviourTree.Run(ref agent, ref behaviourTreeState); } #if UNITY_EDITOR #region Editor public BehaviourTreeState GetState() { return behaviourTreeState; } public BehaviourTreeGraph GetBehaviour() { return BehaviourDefinition; } #endregion #endif } } ================================================ FILE: Samples~/Gatherer/Code/BT/Behaviours/GathererBTRunner.cs.meta ================================================ fileFormatVersion: 2 guid: b1b24e150d6d5874c9741ff78369f4ce MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/BT/Behaviours/GatherersBTManager.cs ================================================ using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.BT { public class GatherersBTManager : GatherersManager { } } ================================================ FILE: Samples~/Gatherer/Code/BT/Behaviours/GatherersBTManager.cs.meta ================================================ fileFormatVersion: 2 guid: 7a8be2dd4d874ca4884668eab0061623 timeCreated: 1598554820 ================================================ FILE: Samples~/Gatherer/Code/BT/Behaviours.meta ================================================ fileFormatVersion: 2 guid: 21f6e3ac850e43549910fbbac9c860ef timeCreated: 1597954348 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/CheckAlarmRaisedGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using XNode; namespace PlaniloSamples.BT { public class CheckAlarmRaisedNode : LeafNode { public CheckAlarmRaisedNode(int index) : base(index) {} public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { return agent.World.Alarm ? BehaviourTreeResult.Success : BehaviourTreeResult.Failure; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/CheckAlarmRaised")] public class CheckAlarmRaisedGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new CheckAlarmRaisedNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/CheckAlarmRaisedGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 863c2ca275ed4395a81dc8138d815e74 timeCreated: 1598900207 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/CheckNeedsRestGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; using XNode; namespace PlaniloSamples.BT { public class CheckNeedsRestNode : LeafNode { public CheckNeedsRestNode(int index) : base(index) {} public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { if (Time.time - agent.LastRest >= agent.WorkTime) { return BehaviourTreeResult.Success; } return BehaviourTreeResult.Failure; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/CheckNeedsRest")] public class CheckNeedsRestGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new CheckNeedsRestNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/CheckNeedsRestGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 380edce1ad95493996bb9efd2d361ac8 timeCreated: 1598042098 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/ConsumeResourceGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; using XNode; namespace PlaniloSamples.BT { public class ConsumeResourceNode : LeafNode { public ConsumeResourceNode(int index) : base(index) {} public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { if (agent.Resource == null) return BehaviourTreeResult.Failure; var distance = Vector3.Distance(agent.Transform.position, agent.World.Home); if (distance > agent.Reach) return BehaviourTreeResult.Failure; agent.Resource.Consume(); agent.Resource = null; return BehaviourTreeResult.Success; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/ConsumeResource")] public class ConsumeResourceGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new ConsumeResourceNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/ConsumeResourceGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: a88fe74c964a426fb000ff9f4a348534 timeCreated: 1597961104 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/DropResourceGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.BT { public class DropResourceNode : LeafNode { public DropResourceNode(int index) : base(index) { } public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { if (agent.Resource != null && agent.Resource.CarrierId == agent.Id) { agent.Resource.Drop(agent.Transform.position); agent.Resource.CarrierId = 0; agent.Resource = null; } return BehaviourTreeResult.Success; } } [CreateNodeMenuAttribute("PlaniloSamples/Gatherer/DropResource")] public class DropResourceGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new DropResourceNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/DropResourceGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 5fa672b651f64a19a439ee5dc7e32c39 timeCreated: 1598901560 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/FindResourceGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; using XNode; namespace PlaniloSamples.BT { public class FindResourceNode : LeafNode { public FindResourceNode(int index) : base(index) {} public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { agent.Resource = null; var minDistance = float.MaxValue; foreach (var resource in agent.World.Resources) { var distance = Vector3.Distance(agent.Transform.position, resource.transform.position); if (resource.CarrierId == 0 && distance < minDistance) { minDistance = distance; agent.Resource = resource; agent.Target = resource.transform.position; } } if (agent.Resource != null) { agent.Resource.CarrierId = agent.Id; return BehaviourTreeResult.Success; } return BehaviourTreeResult.Failure; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/FindResource")] public class FindResourceGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new FindResourceNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/FindResourceGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 31373fe844ce4ed4b8846208b499f763 timeCreated: 1597954599 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/GoHomeGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; using XNode; namespace PlaniloSamples.BT { public class GoHomeNode : MoveToTargetNode { public GoHomeNode(int index) : base(index) {} public override void Initialize(ref Gatherer agent, BehaviourTreeNodeState[] states) { agent.Target = agent.World.Home; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/GoHome")] public class GoHomeGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new GoHomeNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/GoHomeGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: a157d042975b448fa94d4bcbb7e5d627 timeCreated: 1598560425 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/MoveToTargetGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; using XNode; namespace PlaniloSamples.BT { public class MoveToTargetNode : LeafNode { public MoveToTargetNode(int index) : base(index) {} public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { var position = agent.Transform.position; var distance = Vector3.Distance(position, agent.Target); if (distance <= agent.Reach) { return BehaviourTreeResult.Success; } var direction = Vector3.Normalize(agent.Target - position); agent.Transform.position += direction * (Time.deltaTime * agent.Speed); return BehaviourTreeResult.Running; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/MoveToTarget")] public class MoveToTargetGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new MoveToTargetNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/MoveToTargetGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 6b95438f51c14f18b534180eba3ff087 timeCreated: 1597961310 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/PickResourceGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; using XNode; namespace PlaniloSamples.BT { public class PickResourceNode : LeafNode { public PickResourceNode(int index) : base(index) {} public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { if (!agent.Resource) return BehaviourTreeResult.Failure; var distance = Vector3.Distance(agent.Transform.position, agent.Resource.transform.position); if (distance > agent.Reach || agent.Resource.Pick() == false) return BehaviourTreeResult.Failure; return BehaviourTreeResult.Success; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/PickResource")] public class PickResourceGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new PickResourceNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/PickResourceGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 5740cfef256c48dbb51b82cc660b8f2c timeCreated: 1597956249 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/RestGraphNode.cs ================================================ using System; using Planilo.BT; using Planilo.BT.Builder; using PlaniloSamples.Common; using UnityEngine; using XNode; namespace PlaniloSamples.BT { public class RestNode : LeafNode { public RestNode(int index) : base(index) {} public override void Initialize(ref Gatherer agent, BehaviourTreeNodeState[] states) { agent.LastRest = Time.time; } public override BehaviourTreeResult Update(ref Gatherer agent, BehaviourTreeNodeState[] states) { return Time.time - agent.LastRest > agent.RestTime ? BehaviourTreeResult.Success : BehaviourTreeResult.Running; } public override void Finalize(ref Gatherer agent, BehaviourTreeNodeState[] states) { agent.LastRest = Time.time; } } [Node.CreateNodeMenuAttribute("PlaniloSamples/Gatherer/Rest")] public class RestGraphNode : LeafGraphNode { #region Protected protected override Type AllowedType => typeof(Gatherer); protected override BehaviourTreeNode ProtectedBuild(ref int index) { return new RestNode(index) as BehaviourTreeNode; } #endregion } } ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes/RestGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: c5ea3905ccdf4111bbe8d4a09d9b7ce1 timeCreated: 1598042572 ================================================ FILE: Samples~/Gatherer/Code/BT/LeafNodes.meta ================================================ fileFormatVersion: 2 guid: fa0523d4492349d6919e58eca290e430 timeCreated: 1597964303 ================================================ FILE: Samples~/Gatherer/Code/BT.meta ================================================ fileFormatVersion: 2 guid: bd34d992e0634ba1834ff457c53da51e timeCreated: 1597954406 ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/BehaviourDebugger.cs ================================================ using Planilo; using UnityEngine; namespace PlaniloSamples.Common { public class BehaviourDebugger : MonoBehaviour, IAIBehaviourDebugger { #if UNITY_EDITOR public IBehaviourManager Manager { private get; set; } public int Index { private get; set; } public TBehaviourState GetState() { return Manager.GetAgentState(Index); } public TBehaviourGraph GetBehaviour() { return Manager.BehaviourGraph; } #endif } } ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/BehaviourDebugger.cs.meta ================================================ fileFormatVersion: 2 guid: 8ee27841369646ac9e4fecbdb3024986 timeCreated: 1598641427 ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/GatherersManager.cs ================================================ using System.Collections; using System.Collections.Generic; using Planilo; using UnityEngine; namespace PlaniloSamples.Common { public class GatherersManager : MonoBehaviour, IBehaviourManager where TBehaviourGraph : IAIBehaviourBuilder { [SerializeField] GameObject gathererPrefab = default; [SerializeField] int gatherersCount = default; [SerializeField] TBehaviourGraph behaviourDefinition = default; [Header("Gatherer Stats")] [SerializeField] float speed = 0.5f; [SerializeField] float reach = 0.05f; [SerializeField] float workTime = 24f; [SerializeField] float restTime = 8f; IAIBehaviour behaviourTree; TBehaviourState[] gathererStates; Gatherer[] gatherers; GameObject[] gathererGos; bool alarm; IEnumerator Start() { enabled = false; var homeSpawn = WaitForHomeSpawn(); yield return homeSpawn; SpawnGatherers(homeSpawn.Current); InitializeBehaviours(); enabled = true; } IEnumerator WaitForHomeSpawn() { Home home = null; while (home == null) { home = FindObjectOfType(); yield return null; } yield return home; } void SpawnGatherers(Home home) { gatherers = new Gatherer[gatherersCount]; var homePosition = home.transform.position; // Spawn game objects. for (var i = 0; i < gatherersCount; i++) { var rotation = Quaternion.Euler(0, 0, Random.Range(0f, 360f)); var position = new Vector3(Random.Range(0f, 0.3f), 0, 0); var go = Instantiate(gathererPrefab, rotation * position, Quaternion.identity); InitializeGatherer(i, go, homePosition); } } void InitializeGatherer(int index, GameObject go, Vector3 homePosition) { ref var gatherer = ref gatherers[index]; gatherer.Id = index + 1; gatherer.World.Home = homePosition; gatherer.Transform = go.transform; gatherer.Speed = speed; gatherer.Reach = reach; gatherer.LastRest = Time.time; gatherer.WorkTime = workTime; gatherer.RestTime = restTime; #if UNITY_EDITOR var debugger = go.GetComponent>(); if (debugger != null) { debugger.Manager = this; debugger.Index = index; } #endif } void InitializeBehaviours() { gathererStates = new TBehaviourState[gatherersCount]; behaviourTree = behaviourDefinition.Build(); for (var i = 0; i < gatherersCount; i++) { gathererStates[i] = behaviourTree.Initialize(ref gatherers[i]); } } void Update() { // Toggle alarm in world state. if (Input.GetKeyUp(KeyCode.A)) { alarm = !alarm; } // Find all available resources var resources = FindObjectsOfType(); // Run behaviours and update the world state. for (var i = 0; i < gatherersCount; i++) { gatherers[i].World.Alarm = alarm; gatherers[i].World.Resources = resources; behaviourTree.Run(ref gatherers[i], ref gathererStates[i]); } } #if UNITY_EDITOR public TBehaviourGraph BehaviourGraph => behaviourDefinition; public TBehaviourState GetAgentState(int index) { return gathererStates.Length > index ? gathererStates[index] : default; } #endif } } ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/GatherersManager.cs.meta ================================================ fileFormatVersion: 2 guid: 8a706759fdab4196ae3b50f4571bdcd3 timeCreated: 1598639685 ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/Home.cs ================================================ using UnityEngine; namespace PlaniloSamples.Common { public class Home : MonoBehaviour {} } ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/Home.cs.meta ================================================ fileFormatVersion: 2 guid: 9e5615bec2c34559835bd071d3bb48c2 timeCreated: 1598382326 ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/Resource.cs ================================================ using System; using UnityEngine; namespace PlaniloSamples.Common { public class Resource : MonoBehaviour { public int CarrierId { get; set; } public event Action OnPicked; public event Action OnConsumed; bool picked; bool consumed; public bool Pick() { if (picked) return false; picked = true; gameObject.SetActive(false); OnPicked?.Invoke(this); return true; } public void Drop(Vector3 position) { if (picked == false) return; transform.position = position; gameObject.SetActive(true); } public void Consume() { if (consumed) return; consumed = true; OnConsumed?.Invoke(this); } void OnEnable() { picked = false; consumed = false; CarrierId = 0; } } } ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/Resource.cs.meta ================================================ fileFormatVersion: 2 guid: 30ebf5c271474270873684a51acbc282 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/SampleController.cs ================================================ using System.Collections; using System.Collections.Generic; using UnityEngine; using Random = UnityEngine.Random; namespace PlaniloSamples.Common { public class SampleController : MonoBehaviour { public GameObject homePrefab; public Resource resourcePrefab; public GameObject agentPrefab; public int agentsCount; public int maxResourceCount; public float resourceProductionRate = 0.8f; List resources; List recycledResources; void Awake() { Instantiate(homePrefab); SpawnAgents(); StartCoroutine(SpawnResources()); } void SpawnAgents() { for (var i = 0; i < agentsCount; i++) { var rotation = Quaternion.Euler(0, 0, Random.Range(0f, 360f)); var position = new Vector3(Random.Range(0f, 0.3f), 0, 0); Instantiate(agentPrefab, rotation * position, Quaternion.identity); } } IEnumerator SpawnResources() { recycledResources = new List(); for (var i = 0; i < maxResourceCount; i++) { var resource = Instantiate(resourcePrefab); resource.OnPicked += Resource_OnPick; resource.OnConsumed += Resource_OnConsume; resource.gameObject.SetActive(false); recycledResources.Add(resource); } while (true) { if (recycledResources.Count > 0) { var rotation = Quaternion.Euler(0, 0, Random.Range(0f, 360f)); var position = new Vector3(Random.Range(0.5f, 1f), 0, 0); var resource = recycledResources[0]; resource.transform.position = rotation * position; resource.gameObject.SetActive(true); recycledResources.RemoveAt(0); } yield return new WaitForSeconds(Random.Range(resourceProductionRate * 0.5f, resourceProductionRate)); } } void Resource_OnPick(Resource resource) { } void Resource_OnConsume(Resource resource) { recycledResources.Add(resource); } } } ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours/SampleController.cs.meta ================================================ fileFormatVersion: 2 guid: 87d431af597644b69f7463eee295ca99 timeCreated: 1597952974 ================================================ FILE: Samples~/Gatherer/Code/Common/Behaviours.meta ================================================ fileFormatVersion: 2 guid: 3227b81ded2245e9b3f4e3b8e0947de6 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/Common/Blackboard/Gatherer.cs ================================================ using UnityEngine; namespace PlaniloSamples.Common { public struct Gatherer { public int Id; public Transform Transform; public Resource Resource; public Vector3 Target; public float Reach; public float Speed; public float LastRest; public float WorkTime; public float RestTime; public WorldState World; } } ================================================ FILE: Samples~/Gatherer/Code/Common/Blackboard/Gatherer.cs.meta ================================================ fileFormatVersion: 2 guid: 3a8cf483067447aaaaaf34aa7b4cb96c MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/Common/Blackboard/WorldState.cs ================================================ using UnityEngine; namespace PlaniloSamples.Common { public struct WorldState { public Vector3 Home; public Resource[] Resources; public bool Alarm; } } ================================================ FILE: Samples~/Gatherer/Code/Common/Blackboard/WorldState.cs.meta ================================================ fileFormatVersion: 2 guid: 2264e1910dc340ed9a53117111cde205 timeCreated: 1598625287 ================================================ FILE: Samples~/Gatherer/Code/Common/Blackboard.meta ================================================ fileFormatVersion: 2 guid: 24fe962b4c1b4bda9e7c6cc3abe3937d folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/Common/Interfaces/IBehaviourManager.cs ================================================ namespace PlaniloSamples.Common { public interface IBehaviourManager { TBehaviourGraph BehaviourGraph { get; } TBehaviourState GetAgentState(int index); } } ================================================ FILE: Samples~/Gatherer/Code/Common/Interfaces/IBehaviourManager.cs.meta ================================================ fileFormatVersion: 2 guid: e2327ae99e304c20b13c5c1ca2dd2bab timeCreated: 1598641481 ================================================ FILE: Samples~/Gatherer/Code/Common/Interfaces.meta ================================================ fileFormatVersion: 2 guid: 32cb490a96862584591e3e32ea4c99f2 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/Common.meta ================================================ fileFormatVersion: 2 guid: 8befd0c44e2342dd9c8f1b3af7e11d1d timeCreated: 1598625855 ================================================ FILE: Samples~/Gatherer/Code/FSM/Behaviours/GathererFSMDebugger.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.FSM { public class GathererFSMDebugger : BehaviourDebugger { } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Behaviours/GathererFSMDebugger.cs.meta ================================================ fileFormatVersion: 2 guid: 59eb80b7c79f4504a4089aff3faed7b0 timeCreated: 1598641901 ================================================ FILE: Samples~/Gatherer/Code/FSM/Behaviours/GathererFSMRunner.cs ================================================ using Planilo; using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public class GathererFSMRunner : MonoBehaviour, // Note: this is only required for debugging the agent in the planilo graph tool IAIBehaviourDebugger { [Header("General")] public FiniteStateMachineGraph BehaviourDefinition; [Header("Sample 01")] public float Speed; public float Reach; [Header("Sample 02")] public float WorkTime; public float RestTime; Gatherer agent = default; FiniteStateMachineRuntimeState fsmRuntimeState = default; IAIBehaviour fsm = default; void Awake() { // We need to create an FSM based on the graph definition. And initialize the state for the agent. fsm = BehaviourDefinition.Build(); fsmRuntimeState = fsm.Initialize(ref agent); } void Start() { // Initialize agent on start once all required objects have initialized. agent.Id = GetInstanceID(); agent.World.Home = FindObjectOfType().transform.position; agent.Speed = Speed; agent.Reach = Reach; agent.Transform = transform; agent.LastRest = Time.time; agent.WorkTime = WorkTime; agent.RestTime = RestTime; } void Update() { // Update agent sensors. agent.World.Resources = FindObjectsOfType(); // Execute finite state machine. // Every update we pass by reference the agent and the last state. fsm.Run(ref agent, ref fsmRuntimeState); } #if UNITY_EDITOR #region Editor public FiniteStateMachineRuntimeState GetState() { return fsmRuntimeState; } public FiniteStateMachineGraph GetBehaviour() { return BehaviourDefinition; } #endregion #endif } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Behaviours/GathererFSMRunner.cs.meta ================================================ fileFormatVersion: 2 guid: 51ac5a52e81843fb838880aaeb330450 timeCreated: 1598355869 ================================================ FILE: Samples~/Gatherer/Code/FSM/Behaviours/GatherersFSMManager.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.FSM { public class GatherersFSMManager : GatherersManager {} } ================================================ FILE: Samples~/Gatherer/Code/FSM/Behaviours/GatherersFSMManager.cs.meta ================================================ fileFormatVersion: 2 guid: d522d97a44344e0fbd8054fa1fa1ca59 timeCreated: 1598639109 ================================================ FILE: Samples~/Gatherer/Code/FSM/Behaviours.meta ================================================ fileFormatVersion: 2 guid: 521b4dd62498ebd46b3b2392abc4e433 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/FSM/States/ConsumeResourceStateGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public class ConsumeResourceState : FiniteStateMachineState { public override void OnTick(ref Gatherer agent) { if (agent.Resource != null) { agent.Resource.Consume(); agent.Resource = null; } } } [CreateNodeMenu("PlaniloSamples/FSM/States/ConsumeResource")] public class ConsumeResourceStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new ConsumeResourceState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/ConsumeResourceStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 7369c90c41f7469ab6178a63d1117fe8 timeCreated: 1598362425 ================================================ FILE: Samples~/Gatherer/Code/FSM/States/DropResourceStateGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.FSM { public class DropResourceState : FiniteStateMachineState { public override void OnEnter(ref Gatherer agent) { if (agent.Resource != null && agent.Resource.CarrierId == agent.Id) { agent.Resource.Drop(agent.Transform.position); agent.Resource.CarrierId = 0; agent.Resource = null; } } public override void OnTick(ref Gatherer agent) { } } [CreateNodeMenu("PlaniloSamples/FSM/States/DropResource")] public class DropResourceStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new DropResourceState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/DropResourceStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: ae5589b5b0464be4b9970d20ac2bd9fc timeCreated: 1598904925 ================================================ FILE: Samples~/Gatherer/Code/FSM/States/FindResourceStateGraphNode.cs ================================================ using System.Threading; using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public class FindResourceState : FiniteStateMachineState { public override void OnTick(ref Gatherer agent) { agent.Resource = null; var minDistance = float.MaxValue; foreach (var resource in agent.World.Resources) { var distance = Vector3.Distance(agent.Transform.position, resource.transform.position); if (resource.CarrierId == 0 && distance < minDistance) { minDistance = distance; agent.Resource = resource; agent.Target = resource.transform.position; } } if (agent.Resource != null) { agent.Resource.CarrierId = agent.Id; } } } [CreateNodeMenu("PlaniloSamples/FSM/States/FindResource")] public class FindResourceStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new FindResourceState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/FindResourceStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 2480d82061c942deac16aaf1273f2e7c timeCreated: 1598358266 ================================================ FILE: Samples~/Gatherer/Code/FSM/States/GoHomeStateGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.FSM { public class GoHomeState : MoveToTargetState { public override void OnEnter(ref Gatherer agent) { agent.Target = agent.World.Home; } } [CreateNodeMenu("PlaniloSamples/FSM/States/GoHome")] public class GoHomeStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new GoHomeState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/GoHomeStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 4e601dc71e4749d3acc7a59b2c924ff7 timeCreated: 1598461038 ================================================ FILE: Samples~/Gatherer/Code/FSM/States/MoveToTargetStateGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public class MoveToTargetState : FiniteStateMachineState { public override void OnTick(ref Gatherer agent) { var direction = Vector3.Normalize(agent.Target - agent.Transform.position); agent.Transform.position += direction * (Time.deltaTime * agent.Speed); } } [CreateNodeMenu("PlaniloSamples/FSM/States/MoveToTarget")] public class MoveToTargetStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new MoveToTargetState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/MoveToTargetStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 208d0805e7004efb8763b88ab70d028c timeCreated: 1598360351 ================================================ FILE: Samples~/Gatherer/Code/FSM/States/PickResourceStateGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public class PickResourceState : FiniteStateMachineState { public override void OnTick(ref Gatherer agent) { if (Vector3.Distance(agent.Transform.position, agent.Resource.transform.position) <= agent.Reach) { agent.Resource.Pick(); } } } [CreateNodeMenu("PlaniloSamples/FSM/States/PickResource")] public class PickResourceStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new PickResourceState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/PickResourceStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 78a48d9d87324eb3a78f60d0de091eb1 timeCreated: 1598360762 ================================================ FILE: Samples~/Gatherer/Code/FSM/States/RestStateGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public class RestState : FiniteStateMachineState { public override void OnEnter(ref Gatherer agent) { agent.LastRest = Time.time; } public override void OnTick(ref Gatherer agent) {} public override void OnExit(ref Gatherer agent) { agent.LastRest = Time.time; } } [CreateNodeMenu("PlaniloSamples/FSM/States/Rest")] public class RestStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new RestState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/RestStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 69099855ed1b4e2799e865896a2d588f timeCreated: 1598460894 ================================================ FILE: Samples~/Gatherer/Code/FSM/States/WaitStateGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.FSM { public class WaitState : FiniteStateMachineState { public override void OnTick(ref Gatherer agent) {} } [CreateNodeMenu("PlaniloSamples/FSM/States/Wait")] public class WaitStateGraphNode : FiniteStateMachineStateGraphNode { protected override FiniteStateMachineState ProtectedBuild() { return new WaitState() as FiniteStateMachineState; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/States/WaitStateGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: b6af6373287a46bab01b6311c11fd8a9 timeCreated: 1598905433 ================================================ FILE: Samples~/Gatherer/Code/FSM/States.meta ================================================ fileFormatVersion: 2 guid: 74f61da2682b4048bb2fa691520cc54e timeCreated: 1598364122 ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/AlarmIsRaisedTransitionGraphNode.cs ================================================ using System; using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; namespace PlaniloSamples.FSM { public static class AlarmIsRaisedTransition { public static bool Condition(Gatherer agent) { return agent.World.Alarm; } public static bool InversedCondition(Gatherer agent) { return agent.World.Alarm == false; } } [CreateNodeMenu("PlaniloSamples/FSM/Transitions/AlarmIsRaised")] public class AlarmIsRaisedTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public bool Inversed; public override FiniteStateMachineTransition Build(int targetIndex) { var transition = new FiniteStateMachineTransition { Condition = Inversed ? (Func)AlarmIsRaisedTransition.InversedCondition : AlarmIsRaisedTransition.Condition, TargetState = targetIndex }; return transition as FiniteStateMachineTransition; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/AlarmIsRaisedTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: e93f9f373dc845a9b4e69d4a91592020 timeCreated: 1598904181 ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/FoundResourceTransitionGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public static class FoundResourceTransition { public static bool Condition(Gatherer agent) { return agent.Resource != null; } } [CreateNodeMenu("PlaniloSamples/FSM/Transitions/FoundResource")] public class FoundResourceTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public override FiniteStateMachineTransition Build(int targetIndex) { var transition = new FiniteStateMachineTransition { Condition = FoundResourceTransition.Condition, TargetState = targetIndex }; return transition as FiniteStateMachineTransition; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/FoundResourceTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: efb6bf345c7e45f79e63c44baf9fe264 timeCreated: 1598365200 ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/HasRestedTransitionGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public static class HasRestedTransition { public static bool Condition(Gatherer agent) { return Time.time - agent.LastRest >= agent.RestTime; } } [CreateNodeMenu("PlaniloSamples/FSM/Transitions/HasRested")] public class HasRestedTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public override FiniteStateMachineTransition Build(int targetIndex) { var transition = new FiniteStateMachineTransition { Condition = HasRestedTransition.Condition, TargetState = targetIndex }; return transition as FiniteStateMachineTransition; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/HasRestedTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: c056fe3e0de3b3e46a99d981231f2928 MonoImporter: externalObjects: {} serializedVersion: 2 defaultReferences: [] executionOrder: 0 icon: {instanceID: 0} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/NeedsRestTransitionGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public static class NeedsRestTransition { public static bool Condition(Gatherer agent) { return Time.time - agent.LastRest >= agent.WorkTime; } } [CreateNodeMenu("PlaniloSamples/FSM/Transitions/NeedsRest")] public class NeedsRestTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public override FiniteStateMachineTransition Build(int targetIndex) { var transition = new FiniteStateMachineTransition { Condition = NeedsRestTransition.Condition, TargetState = targetIndex }; return transition as FiniteStateMachineTransition; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/NeedsRestTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 4150a0bc66cb4f27ae8a0f58a55e5f64 timeCreated: 1598365038 ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/ResourcePickedTransitionGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public static class ResourcePickedTransition { public static bool Condition(Gatherer agent) { return agent.Resource != null && agent.Resource.CarrierId == agent.Id; } } [CreateNodeMenu("PlaniloSamples/FSM/Transitions/ResourcePicked")] public class ResourcePickedTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public override FiniteStateMachineTransition Build(int targetIndex) { var transition = new FiniteStateMachineTransition { Condition = ResourcePickedTransition.Condition, TargetState = targetIndex }; return transition as FiniteStateMachineTransition; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/ResourcePickedTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 5a116ab9b5ea43999e6d547dfc91c14b timeCreated: 1598365399 ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/ResourceUnavailableTransitionGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public static class ResourceUnavailableTransition { public static bool Condition(Gatherer agent) { return agent.Resource == null || Vector3.Distance(agent.Transform.position, agent.Target) > agent.Reach || (agent.Resource.CarrierId != 0 && agent.Resource.CarrierId != agent.Id); } } [CreateNodeMenu("PlaniloSamples/FSM/Transitions/ResourceUnavailable")] public class ResourceUnavailableTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public override FiniteStateMachineTransition Build(int targetIndex) { var transition = new FiniteStateMachineTransition { Condition = ResourceUnavailableTransition.Condition, TargetState = targetIndex }; return transition as FiniteStateMachineTransition; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/ResourceUnavailableTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 746ada97dc1e42238e771dd6e1264605 timeCreated: 1598365326 ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/TargetReachedTransitionGraphNode.cs ================================================ using Planilo.FSM; using Planilo.FSM.Builder; using PlaniloSamples.Common; using UnityEngine; namespace PlaniloSamples.FSM { public static class TargetReachedTransition { public static bool Condition(Gatherer agent) { return Vector3.Distance(agent.Target, agent.Transform.position) <= agent.Reach; } } [CreateNodeMenu("PlaniloSamples/FSM/Transitions/TargetReached")] public class TargetReachedTransitionGraphNode : FiniteStateMachineTransitionGraphNode { public override FiniteStateMachineTransition Build(int targetIndex) { var transition = new FiniteStateMachineTransition { Condition = TargetReachedTransition.Condition, TargetState = targetIndex }; return transition as FiniteStateMachineTransition; } } } ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions/TargetReachedTransitionGraphNode.cs.meta ================================================ fileFormatVersion: 2 guid: 6d87c294d43b4c53a3d64335776dccd8 timeCreated: 1598364227 ================================================ FILE: Samples~/Gatherer/Code/FSM/Transitions.meta ================================================ fileFormatVersion: 2 guid: 4a49a6cdb3364ff88d52b589e6472f75 timeCreated: 1598460742 ================================================ FILE: Samples~/Gatherer/Code/FSM.meta ================================================ fileFormatVersion: 2 guid: 44dce9c8298d9fb44a3412b2da7ff25b folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Code.meta ================================================ fileFormatVersion: 2 guid: 46f65c032d014fd0b5110a7339889720 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample01/GathererBT-01.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-7808339345627129985 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 31373fe844ce4ed4b8846208b499f763, type: 3} m_Name: Find Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -104} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -7808339345627129985} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-7204815355833042621 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a88fe74c964a426fb000ff9f4a348534, type: 3} m_Name: Consume Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 216} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -7204815355833042621} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 4 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 4 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-5997825973166041288 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6b95438f51c14f18b534180eba3ff087, type: 3} m_Name: Move To Target m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -24} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -5997825973166041288} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 1 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-4761223669846172206 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 439a5b47165d47044a37321987f517d0, type: 3} m_Name: Sequencer m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -392, y: -24} ports: keys: - children - parent - children 0 - children 1 - children 2 - children 3 - children 4 values: - _fieldName: children _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: -4761223669846172206} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -7808339345627129985} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -5997825973166041288} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 2 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 6550264594699578903} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 3 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -3922521274957318358} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 4 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -7204815355833042621} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] --- !u!114 &-3922521274957318358 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a157d042975b448fa94d4bcbb7e5d627, type: 3} m_Name: Go Home Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 136} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -3922521274957318358} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 3 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 3 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-01 m_EditorClassIdentifier: nodes: - {fileID: -4761223669846172206} - {fileID: -7204815355833042621} - {fileID: -7808339345627129985} - {fileID: -3922521274957318358} - {fileID: -5997825973166041288} - {fileID: 6550264594699578903} root: {fileID: -4761223669846172206} --- !u!114 &6550264594699578903 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5740cfef256c48dbb51b82cc660b8f2c, type: 3} m_Name: Pick Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 56} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 6550264594699578903} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 2 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 2 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 ================================================ FILE: Samples~/Gatherer/Content/BT/Sample01/GathererBT-01.asset.meta ================================================ fileFormatVersion: 2 guid: 1b3f2ea6723381e4da1d2f1c019dac18 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample01/GathererBT-01.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: 7325841998788872593} m_Layer: 0 m_Name: GathererBT-01 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &7325841998788872593 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b1b24e150d6d5874c9741ff78369f4ce, type: 3} m_Name: m_EditorClassIdentifier: BehaviourDefinition: {fileID: 11400000, guid: 1b3f2ea6723381e4da1d2f1c019dac18, type: 2} Speed: 0.5 Reach: 0.05 WorkTime: 0 RestTime: 0 ================================================ FILE: Samples~/Gatherer/Content/BT/Sample01/GathererBT-01.prefab.meta ================================================ fileFormatVersion: 2 guid: 473630c0e7a16ea45a73d9b7e5bbb9ea PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample01.meta ================================================ fileFormatVersion: 2 guid: 3b8c2911872d19b47a032c0ee9a09b00 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-02.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-02 m_EditorClassIdentifier: nodes: - {fileID: 5699466600653079777} - {fileID: 5400389990176100079} - {fileID: 4472946374452244862} root: {fileID: 5699466600653079777} --- !u!114 &4472946374452244862 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -56} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 4472946374452244862} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: 5699466600653079777} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 8508a9d30c031ab43845b7f4fdacc7e2, type: 2} --- !u!114 &5400389990176100079 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 72} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 5400389990176100079} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: 5699466600653079777} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 9bfb238198ae1da40a943ff0f2726144, type: 2} --- !u!114 &5699466600653079777 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c6c0b00122704a0d83cbe9f1b074eb53, type: 3} m_Name: Selector Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -312, y: -24} ports: keys: - children - parent - children 0 - children 1 values: - _fieldName: children _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: 5699466600653079777} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 4472946374452244862} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 5400389990176100079} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-02.asset.meta ================================================ fileFormatVersion: 2 guid: c44872229baa7e6458b0078a3c00d37f NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-02.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: 7325841998788872593} m_Layer: 0 m_Name: GathererBT-02 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &7325841998788872593 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b1b24e150d6d5874c9741ff78369f4ce, type: 3} m_Name: m_EditorClassIdentifier: BehaviourDefinition: {fileID: 11400000, guid: c44872229baa7e6458b0078a3c00d37f, type: 2} Speed: 0.5 Reach: 0.05 WorkTime: 24 RestTime: 8 ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-02.prefab.meta ================================================ fileFormatVersion: 2 guid: d326ef9e89def5f41b90954fb7e56080 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-Gathering.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-7808339345627129985 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 31373fe844ce4ed4b8846208b499f763, type: 3} m_Name: Find Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -104} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -7808339345627129985} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 0 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-7204815355833042621 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a88fe74c964a426fb000ff9f4a348534, type: 3} m_Name: Consume Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 216} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -7204815355833042621} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 4 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 4 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-5997825973166041288 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6b95438f51c14f18b534180eba3ff087, type: 3} m_Name: Move To Target m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -24} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -5997825973166041288} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-4761223669846172206 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 439a5b47165d47044a37321987f517d0, type: 3} m_Name: Sequencer m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -392, y: -24} ports: keys: - children - parent - children 0 - children 1 - children 2 - children 3 - children 4 values: - _fieldName: children _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: -4761223669846172206} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -7808339345627129985} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -5997825973166041288} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 2 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 6550264594699578903} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 3 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 791639346514412445} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 4 _node: {fileID: -4761223669846172206} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -7204815355833042621} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-Gathering m_EditorClassIdentifier: nodes: - {fileID: -4761223669846172206} - {fileID: -7204815355833042621} - {fileID: -7808339345627129985} - {fileID: 791639346514412445} - {fileID: -5997825973166041288} - {fileID: 6550264594699578903} root: {fileID: -4761223669846172206} --- !u!114 &791639346514412445 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a157d042975b448fa94d4bcbb7e5d627, type: 3} m_Name: Go Home Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 136} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 791639346514412445} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 3 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 3 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &6550264594699578903 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5740cfef256c48dbb51b82cc660b8f2c, type: 3} m_Name: Pick Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 56} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 6550264594699578903} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 2 node: {fileID: -4761223669846172206} reroutePoints: [] - fieldName: children 2 node: {fileID: -4761223669846172206} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-Gathering.asset.meta ================================================ fileFormatVersion: 2 guid: 9bfb238198ae1da40a943ff0f2726144 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-Rest.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-8909599937186210244 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 380edce1ad95493996bb9efd2d361ac8, type: 3} m_Name: Check Needs Rest Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 24, y: -168} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -8909599937186210244} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: -8714636845344808043} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-8714636845344808043 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 439a5b47165d47044a37321987f517d0, type: 3} m_Name: Sequencer m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -296, y: -120} ports: keys: - children - parent - children 0 - children 1 - children 2 values: - _fieldName: children _node: {fileID: -8714636845344808043} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: -8714636845344808043} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: -8714636845344808043} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -8909599937186210244} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: -8714636845344808043} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 6968247319495891165} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 2 _node: {fileID: -8714636845344808043} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 245571359189174779} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-Rest m_EditorClassIdentifier: nodes: - {fileID: -8714636845344808043} - {fileID: -8909599937186210244} - {fileID: 6968247319495891165} - {fileID: 245571359189174779} root: {fileID: -8714636845344808043} --- !u!114 &245571359189174779 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c5ea3905ccdf4111bbe8d4a09d9b7ce1, type: 3} m_Name: Rest m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 24, y: 24} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 245571359189174779} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 2 node: {fileID: -8714636845344808043} reroutePoints: [] - fieldName: children 2 node: {fileID: -8714636845344808043} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &6968247319495891165 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a157d042975b448fa94d4bcbb7e5d627, type: 3} m_Name: Go Home Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 24, y: -72} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 6968247319495891165} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: -8714636845344808043} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02/GathererBT-Rest.asset.meta ================================================ fileFormatVersion: 2 guid: 8508a9d30c031ab43845b7f4fdacc7e2 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample02.meta ================================================ fileFormatVersion: 2 guid: 32fb748d79a92164c98be6d8dd802b28 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample03/GathererBT-03.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-664612560427989445 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -40} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -664612560427989445} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: 5699466600653079777} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 8508a9d30c031ab43845b7f4fdacc7e2, type: 2} --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-03 m_EditorClassIdentifier: nodes: - {fileID: 5699466600653079777} - {fileID: 5400389990176100079} - {fileID: -664612560427989445} root: {fileID: 5699466600653079777} --- !u!114 &5400389990176100079 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 72} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 5400389990176100079} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: 5699466600653079777} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 9bfb238198ae1da40a943ff0f2726144, type: 2} --- !u!114 &5699466600653079777 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c6c0b00122704a0d83cbe9f1b074eb53, type: 3} m_Name: Selector Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -312, y: -24} ports: keys: - children - parent - children 0 - children 1 values: - _fieldName: children _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: 5699466600653079777} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -664612560427989445} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 5400389990176100079} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] ================================================ FILE: Samples~/Gatherer/Content/BT/Sample03/GathererBT-03.asset.meta ================================================ fileFormatVersion: 2 guid: b72ad6e615f04fc478667b75c8ec4529 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample03/GathererBT-03.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: 633421382752347569} m_Layer: 0 m_Name: GathererBT-03 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &633421382752347569 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 027e1eeb965c47308c0eb9a7f463d140, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample03/GathererBT-03.prefab.meta ================================================ fileFormatVersion: 2 guid: a4ab309244c765f4ca5db3e781fc0e6e PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample03.meta ================================================ fileFormatVersion: 2 guid: ee2b7ce3906258746b348c677d4aa183 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-03.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: 633421382752347569} m_Layer: 0 m_Name: GathererBT-03 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &633421382752347569 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 027e1eeb965c47308c0eb9a7f463d140, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-03.prefab.meta ================================================ fileFormatVersion: 2 guid: c07a14ebf2e26274e9874613561fa6ab PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-04-Hide.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-4174328911829162998 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 863c2ca275ed4395a81dc8138d815e74, type: 3} m_Name: Check Alarm Raised Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 248, y: 168} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -4174328911829162998} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: child node: {fileID: -2664750685952890471} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-3601333981871129014 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 439a5b47165d47044a37321987f517d0, type: 3} m_Name: Sequencer Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -312, y: -8} ports: keys: - children - parent - children 0 - children 1 - children 2 - children 3 values: - _fieldName: children _node: {fileID: -3601333981871129014} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: -3601333981871129014} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: -3601333981871129014} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -908479744847771203} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: -3601333981871129014} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 5567686470495801977} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 2 _node: {fileID: -3601333981871129014} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -2816579532148944191} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 3 _node: {fileID: -3601333981871129014} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -2664750685952890471} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] --- !u!114 &-2816579532148944191 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: a157d042975b448fa94d4bcbb7e5d627, type: 3} m_Name: Go Home Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 72} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -2816579532148944191} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 2 node: {fileID: -3601333981871129014} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &-2664750685952890471 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d1e670abc9c743348bcd401adaacb0c0, type: 3} m_Name: Result Replacer Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 152} ports: keys: - child - parent values: - _fieldName: child _node: {fileID: -2664750685952890471} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: parent node: {fileID: -4174328911829162998} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: -2664750685952890471} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 3 node: {fileID: -3601333981871129014} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 FromSuccess: 2 FromFailure: 0 FromRunning: 2 --- !u!114 &-908479744847771203 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 863c2ca275ed4395a81dc8138d815e74, type: 3} m_Name: Check Alarm Raised Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -88} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -908479744847771203} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: -3601333981871129014} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-04-Hide m_EditorClassIdentifier: nodes: - {fileID: -3601333981871129014} - {fileID: -908479744847771203} - {fileID: -2816579532148944191} - {fileID: -2664750685952890471} - {fileID: -4174328911829162998} - {fileID: 5567686470495801977} root: {fileID: -3601333981871129014} --- !u!114 &5567686470495801977 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5fa672b651f64a19a439ee5dc7e32c39, type: 3} m_Name: Drop Resource Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -8} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 5567686470495801977} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: -3601333981871129014} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-04-Hide.asset.meta ================================================ fileFormatVersion: 2 guid: 6ffe2b1873699d142ada10cadfcea035 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-04-Work.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-664612560427989445 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -40} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -664612560427989445} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: 5699466600653079777} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 8508a9d30c031ab43845b7f4fdacc7e2, type: 2} --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-04-Work m_EditorClassIdentifier: nodes: - {fileID: 5699466600653079777} - {fileID: 5400389990176100079} - {fileID: -664612560427989445} root: {fileID: 5699466600653079777} --- !u!114 &5400389990176100079 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 72} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 5400389990176100079} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: 5699466600653079777} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 9bfb238198ae1da40a943ff0f2726144, type: 2} --- !u!114 &5699466600653079777 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c6c0b00122704a0d83cbe9f1b074eb53, type: 3} m_Name: Selector Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -312, y: -24} ports: keys: - children - parent - children 0 - children 1 values: - _fieldName: children _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: 5699466600653079777} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -664612560427989445} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: 5699466600653079777} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 5400389990176100079} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-04-Work.asset.meta ================================================ fileFormatVersion: 2 guid: 8d7094a53c00b2749bc0f87cc5ca4b30 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-04.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-664612560427989445 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -40} ports: keys: - parent values: - _fieldName: parent _node: {fileID: -664612560427989445} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 0 node: {fileID: 8471569837389184645} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 6ffe2b1873699d142ada10cadfcea035, type: 2} --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 1180afa5dc987974da2f70507dec4e21, type: 3} m_Name: GathererBT-04 m_EditorClassIdentifier: nodes: - {fileID: 5400389990176100079} - {fileID: -664612560427989445} - {fileID: 8471569837389184645} root: {fileID: 8471569837389184645} --- !u!114 &5400389990176100079 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0d4c86fb00794ade9d41dbd82f12ea61, type: 3} m_Name: Behaviour Tree Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: 72} ports: keys: - parent values: - _fieldName: parent _node: {fileID: 5400389990176100079} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: children 1 node: {fileID: 8471569837389184645} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 isRoot: 0 subGraph: {fileID: 11400000, guid: 8d7094a53c00b2749bc0f87cc5ca4b30, type: 2} --- !u!114 &8471569837389184645 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: feec9caa577841e4a55c8306c36b2af2, type: 3} m_Name: Active Selector Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -296, y: -24} ports: keys: - children - parent - children 0 - children 1 values: - _fieldName: children _node: {fileID: 8471569837389184645} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: parent _node: {fileID: 8471569837389184645} _typeQualifiedName: Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: children 0 _node: {fileID: 8471569837389184645} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: -664612560427989445} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: children 1 _node: {fileID: 8471569837389184645} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.BT.Builder.BehaviourTreeGraphConnection, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: parent node: {fileID: 5400389990176100079} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 isRoot: 1 children: [] ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04/GathererBT-04.asset.meta ================================================ fileFormatVersion: 2 guid: 55ee643f2a668e34bb8503fa50ff825f NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT/Sample04.meta ================================================ fileFormatVersion: 2 guid: 88829b0001d7de943b9369db382e333b folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/BT.meta ================================================ fileFormatVersion: 2 guid: 90ee2e13a0b11a34499eccefd36de2bb folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/Common/Gatherer.mat ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!21 &2100000 Material: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Gatherer m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_ShaderKeywords: m_LightmapFlags: 4 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _BumpMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailAlbedoMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailMask: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailNormalMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _EmissionMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MainTex: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MetallicGlossMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _OcclusionMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _ParallaxMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} m_Floats: - _BumpScale: 1 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 1 - _Glossiness: 0.5 - _GlossyReflections: 1 - _Metallic: 0 - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 - _UVSec: 0 - _ZWrite: 1 m_Colors: - _Color: {r: 0.8018868, g: 0.23073156, b: 0.23073156, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} m_BuildTextureStacks: [] ================================================ FILE: Samples~/Gatherer/Content/Common/Gatherer.mat.meta ================================================ fileFormatVersion: 2 guid: d4e355b1fbfd80340832d1c819625f12 NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/Common/Home.mat ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!21 &2100000 Material: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Home m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_ShaderKeywords: m_LightmapFlags: 4 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _BumpMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailAlbedoMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailMask: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailNormalMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _EmissionMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MainTex: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MetallicGlossMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _OcclusionMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _ParallaxMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} m_Floats: - _BumpScale: 1 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 1 - _Glossiness: 0.5 - _GlossyReflections: 1 - _Metallic: 0 - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 - _UVSec: 0 - _ZWrite: 1 m_Colors: - _Color: {r: 1, g: 1, b: 1, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} m_BuildTextureStacks: [] ================================================ FILE: Samples~/Gatherer/Content/Common/Home.mat.meta ================================================ fileFormatVersion: 2 guid: 05927f2e62dc77a4494a7bed5d0b8866 NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/Common/Home.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &8978833225110489825 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8978833225110489826} - component: {fileID: 8978833225110489827} - component: {fileID: 8978833225110489824} - component: {fileID: 4187142808589720587} m_Layer: 0 m_Name: Home m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &8978833225110489826 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8978833225110489825} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.2, y: 0.2, z: 0.01} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &8978833225110489827 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8978833225110489825} m_Mesh: {fileID: 10202, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &8978833225110489824 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8978833225110489825} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 05927f2e62dc77a4494a7bed5d0b8866, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!114 &4187142808589720587 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8978833225110489825} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 9e5615bec2c34559835bd071d3bb48c2, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Samples~/Gatherer/Content/Common/Home.prefab.meta ================================================ fileFormatVersion: 2 guid: 5ec928f6b96f8f74783f92c2888272db PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/Common/Resource.mat ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!21 &2100000 Material: serializedVersion: 6 m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_Name: Resource m_Shader: {fileID: 46, guid: 0000000000000000f000000000000000, type: 0} m_ShaderKeywords: m_LightmapFlags: 4 m_EnableInstancingVariants: 0 m_DoubleSidedGI: 0 m_CustomRenderQueue: -1 stringTagMap: {} disabledShaderPasses: [] m_SavedProperties: serializedVersion: 3 m_TexEnvs: - _BumpMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailAlbedoMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailMask: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _DetailNormalMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _EmissionMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MainTex: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _MetallicGlossMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _OcclusionMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} - _ParallaxMap: m_Texture: {fileID: 0} m_Scale: {x: 1, y: 1} m_Offset: {x: 0, y: 0} m_Floats: - _BumpScale: 1 - _Cutoff: 0.5 - _DetailNormalMapScale: 1 - _DstBlend: 0 - _GlossMapScale: 1 - _Glossiness: 0.5 - _GlossyReflections: 1 - _Metallic: 0 - _Mode: 0 - _OcclusionStrength: 1 - _Parallax: 0.02 - _SmoothnessTextureChannel: 0 - _SpecularHighlights: 1 - _SrcBlend: 1 - _UVSec: 0 - _ZWrite: 1 m_Colors: - _Color: {r: 0.75, g: 0.65, b: 0.25, a: 1} - _EmissionColor: {r: 0, g: 0, b: 0, a: 1} m_BuildTextureStacks: [] ================================================ FILE: Samples~/Gatherer/Content/Common/Resource.mat.meta ================================================ fileFormatVersion: 2 guid: 33c0852471331d9449a8296af5dcc9c0 NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/Common/Resource.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &6113266835351547083 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 6113266835351547095} - component: {fileID: 6113266835351547080} - component: {fileID: 6113266835351547081} - component: {fileID: -261033501117576378} m_Layer: 0 m_Name: Resource m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &6113266835351547095 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6113266835351547083} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.05, z: 0.02} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!33 &6113266835351547080 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6113266835351547083} m_Mesh: {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &6113266835351547081 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6113266835351547083} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: 33c0852471331d9449a8296af5dcc9c0, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!114 &-261033501117576378 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 6113266835351547083} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 30ebf5c271474270873684a51acbc282, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Samples~/Gatherer/Content/Common/Resource.prefab.meta ================================================ fileFormatVersion: 2 guid: d629e753717899a4ea2dcc9d727b03ce PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/Common.meta ================================================ fileFormatVersion: 2 guid: 0e7037a0eedddfb428d38ca304a4d2cd folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 01/Gatherer-FSM-01.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-9128099374268739313 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7369c90c41f7469ab6178a63d1117fe8, type: 3} m_Name: Consume Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 296} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -9128099374268739313} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -5505001756169161717} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -9128099374268739313} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -9128099374268739313} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -7043699198241317189} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 --- !u!114 &-7043699198241317189 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d6f7728263c24687b8653873d7007634, type: 3} m_Name: Always Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 456} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -7043699198241317189} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -9128099374268739313} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -7043699198241317189} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 3642781729322092997} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-5505001756169161717 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 760} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -5505001756169161717} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 996138240502441056} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -5505001756169161717} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -9128099374268739313} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-4493274378432823143 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1176, y: 376} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -4493274378432823143} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 8959987372097436081} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -4493274378432823143} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -4388663539507761643} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-4433747208530934872 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5a116ab9b5ea43999e6d547dfc91c14b, type: 3} m_Name: Resource Picked Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1048, y: 824} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -4433747208530934872} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -4388663539507761643} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -4433747208530934872} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 996138240502441056} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-4388663539507761643 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 78a48d9d87324eb3a78f60d0de091eb1, type: 3} m_Name: Pick Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 824, y: 824} ports: keys: - entry - transitions - transitions 0 - transitions 1 values: - _fieldName: entry _node: {fileID: -4388663539507761643} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -4493274378432823143} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -4388663539507761643} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -4388663539507761643} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -4433747208530934872} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: transitions 1 _node: {fileID: -4388663539507761643} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: 8298526771882614224} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 --- !u!114 &-2766070802168361328 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: efb6bf345c7e45f79e63c44baf9fe264, type: 3} m_Name: Found Resource Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 744, y: 184} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -2766070802168361328} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 3642781729322092997} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -2766070802168361328} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 8959987372097436081} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: Gatherer-FSM-01 m_EditorClassIdentifier: nodes: - {fileID: 3642781729322092997} - {fileID: -2766070802168361328} - {fileID: 8959987372097436081} - {fileID: -4493274378432823143} - {fileID: -4388663539507761643} - {fileID: 8298526771882614224} - {fileID: -5505001756169161717} - {fileID: -4433747208530934872} - {fileID: -9128099374268739313} - {fileID: -7043699198241317189} - {fileID: 996138240502441056} entryState: {fileID: 3642781729322092997} --- !u!114 &996138240502441056 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e601dc71e4749d3acc7a59b2c924ff7, type: 3} m_Name: Go Home State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 872} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 996138240502441056} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -4433747208530934872} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 996138240502441056} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 996138240502441056} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -5505001756169161717} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 --- !u!114 &3642781729322092997 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2480d82061c942deac16aaf1273f2e7c, type: 3} m_Name: Find Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 504, y: 152} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 3642781729322092997} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: 8298526771882614224} reroutePoints: [] - fieldName: target node: {fileID: -7043699198241317189} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 3642781729322092997} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 3642781729322092997} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -2766070802168361328} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 1 --- !u!114 &8298526771882614224 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 746ada97dc1e42238e771dd6e1264605, type: 3} m_Name: Resource Unavailable Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1048, y: 920} ports: keys: - source - target values: - _fieldName: source _node: {fileID: 8298526771882614224} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 1 node: {fileID: -4388663539507761643} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: 8298526771882614224} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 3642781729322092997} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &8959987372097436081 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 208d0805e7004efb8763b88ab70d028c, type: 3} m_Name: Move To Target State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 952, y: 328} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 8959987372097436081} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -2766070802168361328} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 8959987372097436081} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 8959987372097436081} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -4493274378432823143} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 01/Gatherer-FSM-01.asset.meta ================================================ fileFormatVersion: 2 guid: 48bbfe83bac28f34ebe22b97145cc2b6 NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 01/GathererFSM-01.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: -2571171841456886146} m_Layer: 0 m_Name: GathererFSM-01 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &-2571171841456886146 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 51ac5a52e81843fb838880aaeb330450, type: 3} m_Name: m_EditorClassIdentifier: BehaviourDefinition: {fileID: 11400000, guid: 48bbfe83bac28f34ebe22b97145cc2b6, type: 2} Speed: 0.5 Reach: 0.05 WorkTime: 24 RestTime: 8 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 01/GathererFSM-01.prefab.meta ================================================ fileFormatVersion: 2 guid: 1a6a024a172cd6442b30b89ec4f075d7 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 01/GathererFSM.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-9128099374268739313 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7369c90c41f7469ab6178a63d1117fe8, type: 3} m_Name: Consume Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 296} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -9128099374268739313} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -5505001756169161717} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -9128099374268739313} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -9128099374268739313} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -7043699198241317189} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 --- !u!114 &-7043699198241317189 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d6f7728263c24687b8653873d7007634, type: 3} m_Name: Always Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 456} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -7043699198241317189} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -9128099374268739313} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -7043699198241317189} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 3642781729322092997} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-5505001756169161717 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 760} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -5505001756169161717} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 996138240502441056} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -5505001756169161717} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -9128099374268739313} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-4493274378432823143 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1176, y: 376} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -4493274378432823143} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 8959987372097436081} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -4493274378432823143} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -4388663539507761643} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-4433747208530934872 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5a116ab9b5ea43999e6d547dfc91c14b, type: 3} m_Name: Resource Picked Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1048, y: 824} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -4433747208530934872} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -4388663539507761643} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -4433747208530934872} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 996138240502441056} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-4388663539507761643 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 78a48d9d87324eb3a78f60d0de091eb1, type: 3} m_Name: Pick Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 824, y: 824} ports: keys: - entry - transitions - transitions 0 - transitions 1 values: - _fieldName: entry _node: {fileID: -4388663539507761643} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -4493274378432823143} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -4388663539507761643} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -4388663539507761643} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -4433747208530934872} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: transitions 1 _node: {fileID: -4388663539507761643} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: 8298526771882614224} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 --- !u!114 &-2766070802168361328 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: efb6bf345c7e45f79e63c44baf9fe264, type: 3} m_Name: Found Resource Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 744, y: 184} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -2766070802168361328} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 3642781729322092997} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -2766070802168361328} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 8959987372097436081} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: GathererFSM m_EditorClassIdentifier: nodes: - {fileID: 3642781729322092997} - {fileID: -2766070802168361328} - {fileID: 8959987372097436081} - {fileID: -4493274378432823143} - {fileID: -4388663539507761643} - {fileID: 8298526771882614224} - {fileID: -5505001756169161717} - {fileID: -4433747208530934872} - {fileID: -9128099374268739313} - {fileID: -7043699198241317189} - {fileID: 996138240502441056} entryState: {fileID: 3642781729322092997} --- !u!114 &996138240502441056 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e601dc71e4749d3acc7a59b2c924ff7, type: 3} m_Name: Go Home State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 40, y: 872} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 996138240502441056} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -4433747208530934872} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 996138240502441056} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 996138240502441056} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -5505001756169161717} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 --- !u!114 &3642781729322092997 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2480d82061c942deac16aaf1273f2e7c, type: 3} m_Name: Find Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 504, y: 152} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 3642781729322092997} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: 8298526771882614224} reroutePoints: [] - fieldName: target node: {fileID: -7043699198241317189} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 3642781729322092997} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 3642781729322092997} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -2766070802168361328} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 1 --- !u!114 &8298526771882614224 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 746ada97dc1e42238e771dd6e1264605, type: 3} m_Name: Resource Unavailable Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1048, y: 920} ports: keys: - source - target values: - _fieldName: source _node: {fileID: 8298526771882614224} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 1 node: {fileID: -4388663539507761643} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: 8298526771882614224} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 3642781729322092997} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &8959987372097436081 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 208d0805e7004efb8763b88ab70d028c, type: 3} m_Name: Move To Target State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 952, y: 328} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 8959987372097436081} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -2766070802168361328} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 8959987372097436081} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 8959987372097436081} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -4493274378432823143} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 01/GathererFSM.asset.meta ================================================ fileFormatVersion: 2 guid: 5dadc9d47e922a2408dfdebeee509f50 NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 01.meta ================================================ fileFormatVersion: 2 guid: 4739974843c11e64385a488bd855dc80 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/Gatherer-FSM-02.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-4554646390369327737 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: c056fe3e0de3b3e46a99d981231f2928, type: 3} m_Name: Has Rested Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 216, y: -184} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -4554646390369327737} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 2769158762226800763} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -4554646390369327737} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -649096559822353100} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-3563245021764344097 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4150a0bc66cb4f27ae8a0f58a55e5f64, type: 3} m_Name: Needs Rest Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -40, y: 216} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -3563245021764344097} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 7644277988469675476} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -3563245021764344097} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 2769158762226800763} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-2972300994602206091 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: efb6bf345c7e45f79e63c44baf9fe264, type: 3} m_Name: Found Resource Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -312, y: -56} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -2972300994602206091} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -649096559822353100} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -2972300994602206091} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 7644277988469675476} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-649096559822353100 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d5c365a7459a4e51b5d70760f51d3422, type: 3} m_Name: Pick Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -360, y: -264} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -649096559822353100} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: 4781039801263161860} reroutePoints: [] - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: -4554646390369327737} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -649096559822353100} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -649096559822353100} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -2972300994602206091} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 0 subGraph: {fileID: 11400000, guid: 738092e4ded8c6c47a13491720b661b2, type: 2} exitType: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: Gatherer-FSM-02 m_EditorClassIdentifier: nodes: - {fileID: -649096559822353100} - {fileID: 2769158762226800763} - {fileID: 7644277988469675476} - {fileID: -2972300994602206091} - {fileID: 4781039801263161860} - {fileID: -3563245021764344097} - {fileID: -4554646390369327737} entryState: {fileID: -649096559822353100} --- !u!114 &2769158762226800763 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d5c365a7459a4e51b5d70760f51d3422, type: 3} m_Name: Rest m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 168, y: -72} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 2769158762226800763} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: 0} reroutePoints: [] - fieldName: target node: {fileID: -3563245021764344097} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 2769158762226800763} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 2769158762226800763} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -4554646390369327737} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 subGraph: {fileID: 11400000, guid: c700a57f07dab0843b07f455e13d6c68, type: 2} exitType: 1 --- !u!114 &4781039801263161860 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d6f7728263c24687b8653873d7007634, type: 3} m_Name: Always Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -43, y: 323.5} ports: keys: - source - target values: - _fieldName: source _node: {fileID: 4781039801263161860} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 1 node: {fileID: 7644277988469675476} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: 4781039801263161860} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -649096559822353100} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &7644277988469675476 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d5c365a7459a4e51b5d70760f51d3422, type: 3} m_Name: Store Resource m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -376, y: 152} ports: keys: - entry - transitions - transitions 0 - transitions 1 values: - _fieldName: entry _node: {fileID: 7644277988469675476} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -2972300994602206091} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 7644277988469675476} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 7644277988469675476} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -3563245021764344097} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 - _fieldName: transitions 1 _node: {fileID: 7644277988469675476} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: 4781039801263161860} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 subGraph: {fileID: 11400000, guid: 7a4f0fb2d50b55f499b876d5300929be, type: 2} exitType: 1 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/Gatherer-FSM-02.asset.meta ================================================ fileFormatVersion: 2 guid: 849e2b67845e27143a3cadd0ab4c454e NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererFSM-02.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: -2571171841456886146} m_Layer: 0 m_Name: GathererFSM-02 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &-2571171841456886146 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 51ac5a52e81843fb838880aaeb330450, type: 3} m_Name: m_EditorClassIdentifier: BehaviourDefinition: {fileID: 11400000, guid: 849e2b67845e27143a3cadd0ab4c454e, type: 2} Speed: 0.5 Reach: 0.05 WorkTime: 24 RestTime: 8 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererFSM-02.prefab.meta ================================================ fileFormatVersion: 2 guid: 3268cda8723819b4b91bce3ab3e98b87 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererFetch.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-9168412830814250057 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: efb6bf345c7e45f79e63c44baf9fe264, type: 3} m_Name: Found Resource Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 568, y: 504} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -9168412830814250057} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -4980760558915225263} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -9168412830814250057} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 9147475075459590041} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-7974296636022711950 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 78a48d9d87324eb3a78f60d0de091eb1, type: 3} m_Name: Pick Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1096, y: 744} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -7974296636022711950} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -2845387053228298597} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -7974296636022711950} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -7974296636022711950} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: 6860126784946590959} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 1 --- !u!114 &-4980760558915225263 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 2480d82061c942deac16aaf1273f2e7c, type: 3} m_Name: Find Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 584, y: 616} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -4980760558915225263} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: 6860126784946590959} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -4980760558915225263} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -4980760558915225263} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -9168412830814250057} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 0 --- !u!114 &-2845387053228298597 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1128, y: 536} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -2845387053228298597} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 9147475075459590041} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -2845387053228298597} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -7974296636022711950} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: GathererFetch m_EditorClassIdentifier: nodes: - {fileID: -4980760558915225263} - {fileID: 9147475075459590041} - {fileID: -7974296636022711950} - {fileID: -9168412830814250057} - {fileID: -2845387053228298597} - {fileID: 6860126784946590959} entryState: {fileID: -4980760558915225263} --- !u!114 &6860126784946590959 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 746ada97dc1e42238e771dd6e1264605, type: 3} m_Name: Resource Unavailable Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1096, y: 888} ports: keys: - source - target values: - _fieldName: source _node: {fileID: 6860126784946590959} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -7974296636022711950} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: 6860126784946590959} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -4980760558915225263} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &9147475075459590041 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 208d0805e7004efb8763b88ab70d028c, type: 3} m_Name: Move To Target State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 1128, y: 392} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 9147475075459590041} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -9168412830814250057} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 9147475075459590041} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 9147475075459590041} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -2845387053228298597} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererFetch.asset.meta ================================================ fileFormatVersion: 2 guid: 738092e4ded8c6c47a13491720b661b2 NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererRest.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-4992245329865471588 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 69099855ed1b4e2799e865896a2d588f, type: 3} m_Name: Rest State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 488, y: 808} ports: keys: - entry - transitions values: - _fieldName: entry _node: {fileID: -4992245329865471588} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -2676830324561571134} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -4992245329865471588} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 transitions: [] isEntry: 0 isExit: 1 --- !u!114 &-2676830324561571134 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 488, y: 680} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -2676830324561571134} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 3502814233973911611} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -2676830324561571134} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -4992245329865471588} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: GathererRest m_EditorClassIdentifier: nodes: - {fileID: 3502814233973911611} - {fileID: -4992245329865471588} - {fileID: -2676830324561571134} entryState: {fileID: 3502814233973911611} --- !u!114 &3502814233973911611 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e601dc71e4749d3acc7a59b2c924ff7, type: 3} m_Name: Go Home State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 488, y: 504} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 3502814233973911611} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 3502814233973911611} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 3502814233973911611} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -2676830324561571134} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 0 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererRest.asset.meta ================================================ fileFormatVersion: 2 guid: c700a57f07dab0843b07f455e13d6c68 NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererStore.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-4684737488951740141 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 280, y: 696} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -4684737488951740141} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -2732739099044536325} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -4684737488951740141} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -419121930664275916} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-2732739099044536325 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e601dc71e4749d3acc7a59b2c924ff7, type: 3} m_Name: Go Home State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 280, y: 536} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -2732739099044536325} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -2732739099044536325} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -2732739099044536325} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -4684737488951740141} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 0 --- !u!114 &-419121930664275916 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7369c90c41f7469ab6178a63d1117fe8, type: 3} m_Name: Consume Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 280, y: 808} ports: keys: - entry - transitions values: - _fieldName: entry _node: {fileID: -419121930664275916} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -4684737488951740141} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -419121930664275916} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 transitions: [] isEntry: 0 isExit: 1 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: GathererStore m_EditorClassIdentifier: nodes: - {fileID: -419121930664275916} - {fileID: -4684737488951740141} - {fileID: -2732739099044536325} entryState: {fileID: -2732739099044536325} ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02/GathererStore.asset.meta ================================================ fileFormatVersion: 2 guid: 7a4f0fb2d50b55f499b876d5300929be NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 02.meta ================================================ fileFormatVersion: 2 guid: 4db0a2c1a77c9cd4abca57d215c71455 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 03/GathererFSM-03.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: 6300960816345439604} m_Layer: 0 m_Name: GathererFSM-03 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &6300960816345439604 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 59eb80b7c79f4504a4089aff3faed7b0, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 03/GathererFSM-03.prefab.meta ================================================ fileFormatVersion: 2 guid: fbd6dd1761d9cb746816522a21f6fad6 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 03.meta ================================================ fileFormatVersion: 2 guid: f49a171f79498ba4b843a6217b9cd0b2 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 04/Gatherer-FSM-04-Hide.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-4540219352103440627 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: ae5589b5b0464be4b9970d20ac2bd9fc, type: 3} m_Name: Drop Resource State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 141.56912, y: -254.14732} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -4540219352103440627} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -4540219352103440627} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -4540219352103440627} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -2662105877501766382} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 0 --- !u!114 &-4006124344882652536 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 6d87c294d43b4c53a3d64335776dccd8, type: 3} m_Name: Target Reached Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 136, y: 216} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -4006124344882652536} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 3242673230333338225} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -4006124344882652536} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 3611689030587902770} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &-2662105877501766382 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d6f7728263c24687b8653873d7007634, type: 3} m_Name: Always Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 136, y: -72} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -2662105877501766382} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -4540219352103440627} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -2662105877501766382} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 3242673230333338225} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: Gatherer-FSM-04-Hide m_EditorClassIdentifier: nodes: - {fileID: -4540219352103440627} - {fileID: -2662105877501766382} - {fileID: 3242673230333338225} - {fileID: -4006124344882652536} - {fileID: 3611689030587902770} entryState: {fileID: -4540219352103440627} --- !u!114 &3242673230333338225 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 4e601dc71e4749d3acc7a59b2c924ff7, type: 3} m_Name: Go Home State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 136, y: 56} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 3242673230333338225} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -2662105877501766382} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 3242673230333338225} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 3242673230333338225} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -4006124344882652536} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 --- !u!114 &3611689030587902770 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: b6af6373287a46bab01b6311c11fd8a9, type: 3} m_Name: Wait State Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 136, y: 328} ports: keys: - entry - transitions values: - _fieldName: entry _node: {fileID: 3611689030587902770} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -4006124344882652536} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 3611689030587902770} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 transitions: [] isEntry: 0 isExit: 0 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 04/Gatherer-FSM-04-Hide.asset.meta ================================================ fileFormatVersion: 2 guid: 2fcecdcd6a1cbce41964868636fd6a57 NativeFormatImporter: externalObjects: {} mainObjectFileID: 0 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 04/Gatherer-FSM-04.asset ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!114 &-5463075686089775952 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e93f9f373dc845a9b4e69d4a91592020, type: 3} m_Name: Alarm Is Raised Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 24, y: 248} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -5463075686089775952} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: -1123792146638286018} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -5463075686089775952} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: 1880804011563559307} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 Inversed: 0 Inversed: 1 --- !u!114 &-2039652238014698547 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: e93f9f373dc845a9b4e69d4a91592020, type: 3} m_Name: Alarm Is Raised Transition Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: 24, y: -136} ports: keys: - source - target values: - _fieldName: source _node: {fileID: -2039652238014698547} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: transitions 0 node: {fileID: 1880804011563559307} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: target _node: {fileID: -2039652238014698547} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: entry node: {fileID: -1123792146638286018} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 Inversed: 0 Inversed: 0 --- !u!114 &-1123792146638286018 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d5c365a7459a4e51b5d70760f51d3422, type: 3} m_Name: Finite State Machine Sub Graph m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -24, y: 40} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: -1123792146638286018} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -2039652238014698547} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: -1123792146638286018} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: -1123792146638286018} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -5463075686089775952} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 0 isExit: 0 subGraph: {fileID: 11400000, guid: 2fcecdcd6a1cbce41964868636fd6a57, type: 2} exitType: 0 --- !u!114 &11400000 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: cdd908a76ba246eb91d13f28a40a4143, type: 3} m_Name: Gatherer-FSM-04 m_EditorClassIdentifier: nodes: - {fileID: 1880804011563559307} - {fileID: -2039652238014698547} - {fileID: -1123792146638286018} - {fileID: -5463075686089775952} entryState: {fileID: 1880804011563559307} --- !u!114 &1880804011563559307 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 0} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d5c365a7459a4e51b5d70760f51d3422, type: 3} m_Name: Work m_EditorClassIdentifier: graph: {fileID: 11400000} position: {x: -8, y: -344} ports: keys: - entry - transitions - transitions 0 values: - _fieldName: entry _node: {fileID: 1880804011563559307} _typeQualifiedName: Planilo.FSM.Builder.FiniteStateMachineConnectionToState, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null connections: - fieldName: target node: {fileID: -5463075686089775952} reroutePoints: [] _direction: 0 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions _node: {fileID: 1880804011563559307} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 0 - _fieldName: transitions 0 _node: {fileID: 1880804011563559307} _typeQualifiedName: System.Collections.Generic.List`1[[Planilo.FSM.Builder.FiniteStateMachineConnectionToTransition, Planilo, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]], mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089 connections: - fieldName: source node: {fileID: -2039652238014698547} reroutePoints: [] _direction: 1 _connectionType: 0 _typeConstraint: 0 _dynamic: 1 transitions: [] isEntry: 1 isExit: 0 subGraph: {fileID: 11400000, guid: 849e2b67845e27143a3cadd0ab4c454e, type: 2} exitType: 0 ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 04/Gatherer-FSM-04.asset.meta ================================================ fileFormatVersion: 2 guid: d1b154cc056d51348962c302abea347b NativeFormatImporter: externalObjects: {} mainObjectFileID: 11400000 userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 04/GathererFSM-03.prefab ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!1 &1166321500944852649 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3389551673463484162} - component: {fileID: 4036792051990113276} - component: {fileID: 4418647757956906798} m_Layer: 0 m_Name: Capsule m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &3389551673463484162 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_LocalRotation: {x: 0.7071068, y: 0, z: 0, w: 0.7071068} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0.05, y: 0.02, z: 0.05} m_Children: [] m_Father: {fileID: 7325841998788872598} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 90, y: 0, z: 0} --- !u!33 &4036792051990113276 MeshFilter: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Mesh: {fileID: 10208, guid: 0000000000000000e000000000000000, type: 0} --- !u!23 &4418647757956906798 MeshRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1166321500944852649} m_Enabled: 1 m_CastShadows: 1 m_ReceiveShadows: 1 m_DynamicOccludee: 1 m_MotionVectors: 1 m_LightProbeUsage: 1 m_ReflectionProbeUsage: 1 m_RayTracingMode: 2 m_RayTraceProcedural: 0 m_RenderingLayerMask: 1 m_RendererPriority: 0 m_Materials: - {fileID: 2100000, guid: d4e355b1fbfd80340832d1c819625f12, type: 2} m_StaticBatchInfo: firstSubMesh: 0 subMeshCount: 0 m_StaticBatchRoot: {fileID: 0} m_ProbeAnchor: {fileID: 0} m_LightProbeVolumeOverride: {fileID: 0} m_ScaleInLightmap: 1 m_ReceiveGI: 1 m_PreserveUVs: 0 m_IgnoreNormalsForChartDetection: 0 m_ImportantGI: 0 m_StitchLightmapSeams: 1 m_SelectedEditorRenderState: 3 m_MinimumChartSize: 4 m_AutoUVMaxDistance: 0.5 m_AutoUVMaxAngle: 89 m_LightmapParameters: {fileID: 0} m_SortingLayerID: 0 m_SortingLayer: 0 m_SortingOrder: 0 m_AdditionalVertexStreams: {fileID: 0} --- !u!1 &7325841998788872592 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7325841998788872598} - component: {fileID: 6300960816345439604} m_Layer: 0 m_Name: GathererFSM-03 m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &7325841998788872598 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: - {fileID: 3389551673463484162} m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &6300960816345439604 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7325841998788872592} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 59eb80b7c79f4504a4089aff3faed7b0, type: 3} m_Name: m_EditorClassIdentifier: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 04/GathererFSM-03.prefab.meta ================================================ fileFormatVersion: 2 guid: 47f42ec6ff39bc34aa36a732fb045c63 PrefabImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM/Sample 04.meta ================================================ fileFormatVersion: 2 guid: c1767b63263facc47b415b49785fac94 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content/FSM.meta ================================================ fileFormatVersion: 2 guid: e67f39b6f6d85c1489134a3f27867e5c folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Content.meta ================================================ fileFormatVersion: 2 guid: 852140d3db681254ea78568341a4571a folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-01.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 7325841998788872592, guid: 473630c0e7a16ea45a73d9b7e5bbb9ea, type: 3} agentsCount: 3 maxResourceCount: 20 resourceProductionRate: 0.8 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!224 &8172146326213037592 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8172146326213037796} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 8172146327188326252} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &8172146326213037594 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8172146326213037796} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &8172146326213037595 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8172146326213037796} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!1 &8172146326213037796 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8172146326213037592} - component: {fileID: 8172146326213037595} - component: {fileID: 8172146326213037594} - component: {fileID: 8172146326213037797} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &8172146326213037797 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8172146326213037796} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 55 --- !u!222 &8172146327188326242 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8172146327188326255} m_CullTransparentMesh: 0 --- !u!224 &8172146327188326252 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8172146327188326255} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8172146326213037592} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!114 &8172146327188326253 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8172146327188326255} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'SAMPLE 1: This sample introduces the Sequencer node as a way of defining a complex task that will start over once it''s finished. The sequencer node will execute all its child action nodes until one fails, at which point it will reset to the first task. Each action node inherits from Leaf Node and implements it''s Update function where it performs its part of the task. An action node can return Running when it needs more time to finish and either Success or Failure when it is done.' --- !u!1 &8172146327188326255 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8172146327188326252} - component: {fileID: 8172146327188326242} - component: {fileID: 8172146327188326253} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-01.unity.meta ================================================ fileFormatVersion: 2 guid: 484355d5c0520934e801b43aa7400bf6 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-02.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 7325841998788872592, guid: d326ef9e89def5f41b90954fb7e56080, type: 3} agentsCount: 3 maxResourceCount: 20 resourceProductionRate: 0.8 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!1 &8474485325948834656 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8474485325948834659} - component: {fileID: 8474485325948834669} - component: {fileID: 8474485325948834658} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &8474485325948834658 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8474485325948834656} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "SAMPLE 2:\n\nThis sample introduces the Selector node, a composite node that runs its children until one returns running or succees. It's a useful tool to allow the agents to select different types of tasks, which the agent will run until completes in either a failure or success state. \n\nThis selector in combination with what we name condition nodes allow the agent select tasks to perform only when its requirements are met. Condition nodes are just LeafNodes that return either a success or a failure on their update when the condition is met or not respectively." --- !u!224 &8474485325948834659 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8474485325948834656} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 8474485327192594967} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!222 &8474485325948834669 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8474485325948834656} m_CullTransparentMesh: 0 --- !u!223 &8474485327192594964 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8474485327192595179} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!114 &8474485327192594965 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8474485327192595179} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!224 &8474485327192594967 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8474485327192595179} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 8474485325948834659} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!114 &8474485327192595178 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 8474485327192595179} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 55 --- !u!1 &8474485327192595179 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 8474485327192594967} - component: {fileID: 8474485327192594964} - component: {fileID: 8474485327192594965} - component: {fileID: 8474485327192595178} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-02.unity.meta ================================================ fileFormatVersion: 2 guid: 924c59d98e7b34043b4b4e677277171e DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-03.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1315321489 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1315321490} - component: {fileID: 1315321491} m_Layer: 0 m_Name: GathererController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1315321490 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1315321489} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1315321491 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1315321489} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a8be2dd4d874ca4884668eab0061623, type: 3} m_Name: m_EditorClassIdentifier: gathererPrefab: {fileID: 7325841998788872592, guid: a4ab309244c765f4ca5db3e781fc0e6e, type: 3} gatherersCount: 10 behaviourDefinition: {fileID: 11400000, guid: b72ad6e615f04fc478667b75c8ec4529, type: 2} speed: 0.5 reach: 0.05 workTime: 24 restTime: 8 --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 0} agentsCount: 0 maxResourceCount: 200 resourceProductionRate: 0.5 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!114 &289585378799469948 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 289585378799469954} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &289585378799469949 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 289585378799469954} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &289585378799469950 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 289585378799469954} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 289585380043164682} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!1 &289585378799469954 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 289585378799469950} - component: {fileID: 289585378799469949} - component: {fileID: 289585378799469948} - component: {fileID: 289585378799469955} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &289585378799469955 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 289585378799469954} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 55 --- !u!222 &289585380043164676 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 289585380043164681} m_CullTransparentMesh: 0 --- !u!1 &289585380043164681 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 289585380043164682} - component: {fileID: 289585380043164676} - component: {fileID: 289585380043164683} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &289585380043164682 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 289585380043164681} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 289585378799469950} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!114 &289585380043164683 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 289585380043164681} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'SAMPLE 3: This sample introduces a different way of executing the behaviors. Instead of one runner per agent we have a single runner for all of them. Allowing to possibly save time in world state queries and showing the flexibility of Planilo. ' ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-03.unity.meta ================================================ fileFormatVersion: 2 guid: 137b5d108a845914a974afac0c8d657d DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-04.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &92496117 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 92496118} - component: {fileID: 92496120} - component: {fileID: 92496119} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &92496118 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 92496117} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 1264626050} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!114 &92496119 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 92496117} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'SAMPLE 4: This sample introduces the ActiveSelector node a composite node that behaves like a Selector but resets its execution every frame. Allowing the selection of higher priority tasks as they become available. Press ''A'' to raise the alarm making the gatherers hide at home. Additionally a new decorator is introduced in "Gatherer-FSM-04-Hide" which swaps the result of its child for a specific result. In this sample it is used to convert a Condition node into a wait task.' --- !u!222 &92496120 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 92496117} m_CullTransparentMesh: 0 --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1264626046 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1264626050} - component: {fileID: 1264626049} - component: {fileID: 1264626048} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &1264626048 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1264626046} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &1264626049 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1264626046} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &1264626050 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1264626046} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 92496118} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!1 &1315321489 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1315321490} - component: {fileID: 1315321491} m_Layer: 0 m_Name: GathererController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1315321490 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1315321489} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1315321491 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1315321489} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 7a8be2dd4d874ca4884668eab0061623, type: 3} m_Name: m_EditorClassIdentifier: gathererPrefab: {fileID: 7325841998788872592, guid: a4ab309244c765f4ca5db3e781fc0e6e, type: 3} gatherersCount: 10 behaviourDefinition: {fileID: 11400000, guid: 55ee643f2a668e34bb8503fa50ff825f, type: 2} speed: 0.5 reach: 0.05 workTime: 24 restTime: 8 --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 0} agentsCount: 0 maxResourceCount: 200 resourceProductionRate: 0.5 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} ================================================ FILE: Samples~/Gatherer/Scenes/BT/Gatherer-BT-04.unity.meta ================================================ fileFormatVersion: 2 guid: 880cfaa0f143c5c40b4d9b302251eddc DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/BT.meta ================================================ fileFormatVersion: 2 guid: a1aa1ff72c141964f9cac978aaa5e114 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-01.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 7325841998788872592, guid: 1a6a024a172cd6442b30b89ec4f075d7, type: 3} agentsCount: 3 maxResourceCount: 20 resourceProductionRate: 0.8 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!114 &7889498387652355220 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7889498387652355222} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "SAMPLE 1:\n\nThis sample shows how a single complex task can be implemented using a FSM made of StateNodes that implement simple and reusable tasks. \n\nAdditionally the sample FSM shows how multiple conditions can be used to reset the action when a failure state is found. " --- !u!224 &7889498387652355221 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7889498387652355222} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 7889498388841557473} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!1 &7889498387652355222 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7889498387652355221} - component: {fileID: 7889498387652355227} - component: {fileID: 7889498387652355220} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!222 &7889498387652355227 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7889498387652355222} m_CullTransparentMesh: 0 --- !u!114 &7889498388841557276 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7889498388841557277} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 55 --- !u!1 &7889498388841557277 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7889498388841557473} - component: {fileID: 7889498388841557474} - component: {fileID: 7889498388841557475} - component: {fileID: 7889498388841557276} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &7889498388841557473 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7889498388841557277} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 7889498387652355221} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!223 &7889498388841557474 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7889498388841557277} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!114 &7889498388841557475 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7889498388841557277} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-01.unity.meta ================================================ fileFormatVersion: 2 guid: c83154e996aba6e4a967cc120ff760cc DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-02.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 7325841998788872592, guid: 3268cda8723819b4b91bce3ab3e98b87, type: 3} agentsCount: 3 maxResourceCount: 20 resourceProductionRate: 0.8 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!1 &7136508476788985984 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7136508476788985987} - component: {fileID: 7136508476788985997} - component: {fileID: 7136508476788985986} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &7136508476788985986 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7136508476788985984} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'SAMPLE 2: This sample shows how FiniteStateMachineSubGraphNodes allow to build behaviours modularly using lower level FSMs to implement tasks and a higher level FSM to handle transitions between them. When sub grahp nodes are set with the exit type to ExitOnly the task will execute until its lower level FSM reaches a state marked as an exit. At which point the transition conditions will be evaluated.' --- !u!224 &7136508476788985987 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7136508476788985984} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 7136508477894138359} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!222 &7136508476788985997 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7136508476788985984} m_CullTransparentMesh: 0 --- !u!114 &7136508477894138122 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7136508477894138123} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 55 --- !u!1 &7136508477894138123 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 7136508477894138359} - component: {fileID: 7136508477894138356} - component: {fileID: 7136508477894138357} - component: {fileID: 7136508477894138122} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!223 &7136508477894138356 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7136508477894138123} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!114 &7136508477894138357 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7136508477894138123} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!224 &7136508477894138359 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 7136508477894138123} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 7136508476788985987} m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-02.unity.meta ================================================ fileFormatVersion: 2 guid: be463a4b4c73ccf4a809ee7cc502d90c DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-03.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &230210544 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 230210545} - component: {fileID: 230210546} m_Layer: 0 m_Name: GatherersManager m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &230210545 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230210544} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &230210546 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230210544} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d522d97a44344e0fbd8054fa1fa1ca59, type: 3} m_Name: m_EditorClassIdentifier: gathererPrefab: {fileID: 7325841998788872592, guid: fbd6dd1761d9cb746816522a21f6fad6, type: 3} gatherersCount: 10 behaviourDefinition: {fileID: 11400000, guid: 849e2b67845e27143a3cadd0ab4c454e, type: 2} speed: 0.5 reach: 0.05 workTime: 24 restTime: 8 --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 0} agentsCount: 0 maxResourceCount: 200 resourceProductionRate: 0.5 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!222 &3898952181659605187 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3898952181659605198} m_CullTransparentMesh: 0 --- !u!114 &3898952181659605196 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3898952181659605198} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: 'SAMPLE 3: This sample introduces a different way of executing the behaviors. Instead of one runner per agent we have a single runner for all of them. Allowing to possibly save time in world state queries and showing the flexibility of Planilo. ' --- !u!224 &3898952181659605197 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3898952181659605198} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 3898952182714454457} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!1 &3898952181659605198 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3898952181659605197} - component: {fileID: 3898952181659605187} - component: {fileID: 3898952181659605196} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &3898952182714454340 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3898952182714454341} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 55 --- !u!1 &3898952182714454341 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3898952182714454457} - component: {fileID: 3898952182714454458} - component: {fileID: 3898952182714454459} - component: {fileID: 3898952182714454340} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &3898952182714454457 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3898952182714454341} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 3898952181659605197} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!223 &3898952182714454458 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3898952182714454341} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!114 &3898952182714454459 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3898952182714454341} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-03.unity.meta ================================================ fileFormatVersion: 2 guid: 20dc5419b7e55ea46a806d3cce8f94c6 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-04.unity ================================================ %YAML 1.1 %TAG !u! tag:unity3d.com,2011: --- !u!29 &1 OcclusionCullingSettings: m_ObjectHideFlags: 0 serializedVersion: 2 m_OcclusionBakeSettings: smallestOccluder: 5 smallestHole: 0.25 backfaceThreshold: 100 m_SceneGUID: 00000000000000000000000000000000 m_OcclusionCullingData: {fileID: 0} --- !u!104 &2 RenderSettings: m_ObjectHideFlags: 0 serializedVersion: 9 m_Fog: 0 m_FogColor: {r: 0.5, g: 0.5, b: 0.5, a: 1} m_FogMode: 3 m_FogDensity: 0.01 m_LinearFogStart: 0 m_LinearFogEnd: 300 m_AmbientSkyColor: {r: 0.212, g: 0.227, b: 0.259, a: 1} m_AmbientEquatorColor: {r: 0.114, g: 0.125, b: 0.133, a: 1} m_AmbientGroundColor: {r: 0.047, g: 0.043, b: 0.035, a: 1} m_AmbientIntensity: 1 m_AmbientMode: 0 m_SubtractiveShadowColor: {r: 0.42, g: 0.478, b: 0.627, a: 1} m_SkyboxMaterial: {fileID: 10304, guid: 0000000000000000f000000000000000, type: 0} m_HaloStrength: 0.5 m_FlareStrength: 1 m_FlareFadeSpeed: 3 m_HaloTexture: {fileID: 0} m_SpotCookie: {fileID: 10001, guid: 0000000000000000e000000000000000, type: 0} m_DefaultReflectionMode: 0 m_DefaultReflectionResolution: 128 m_ReflectionBounces: 1 m_ReflectionIntensity: 1 m_CustomReflection: {fileID: 0} m_Sun: {fileID: 0} m_IndirectSpecularColor: {r: 0, g: 0, b: 0, a: 1} m_UseRadianceAmbientProbe: 0 --- !u!157 &3 LightmapSettings: m_ObjectHideFlags: 0 serializedVersion: 12 m_GIWorkflowMode: 1 m_GISettings: serializedVersion: 2 m_BounceScale: 1 m_IndirectOutputScale: 1 m_AlbedoBoost: 1 m_EnvironmentLightingMode: 0 m_EnableBakedLightmaps: 1 m_EnableRealtimeLightmaps: 0 m_LightmapEditorSettings: serializedVersion: 12 m_Resolution: 2 m_BakeResolution: 40 m_AtlasSize: 1024 m_AO: 0 m_AOMaxDistance: 1 m_CompAOExponent: 1 m_CompAOExponentDirect: 0 m_ExtractAmbientOcclusion: 0 m_Padding: 2 m_LightmapParameters: {fileID: 0} m_LightmapsBakeMode: 1 m_TextureCompression: 1 m_FinalGather: 0 m_FinalGatherFiltering: 1 m_FinalGatherRayCount: 256 m_ReflectionCompression: 2 m_MixedBakeMode: 2 m_BakeBackend: 1 m_PVRSampling: 1 m_PVRDirectSampleCount: 32 m_PVRSampleCount: 512 m_PVRBounces: 2 m_PVREnvironmentSampleCount: 256 m_PVREnvironmentReferencePointCount: 2048 m_PVRFilteringMode: 1 m_PVRDenoiserTypeDirect: 1 m_PVRDenoiserTypeIndirect: 1 m_PVRDenoiserTypeAO: 1 m_PVRFilterTypeDirect: 0 m_PVRFilterTypeIndirect: 0 m_PVRFilterTypeAO: 0 m_PVREnvironmentMIS: 1 m_PVRCulling: 1 m_PVRFilteringGaussRadiusDirect: 1 m_PVRFilteringGaussRadiusIndirect: 5 m_PVRFilteringGaussRadiusAO: 2 m_PVRFilteringAtrousPositionSigmaDirect: 0.5 m_PVRFilteringAtrousPositionSigmaIndirect: 2 m_PVRFilteringAtrousPositionSigmaAO: 1 m_ExportTrainingData: 0 m_TrainingDataDestination: TrainingData m_LightProbeSampleCountMultiplier: 4 m_LightingDataAsset: {fileID: 0} m_LightingSettings: {fileID: 0} --- !u!196 &4 NavMeshSettings: serializedVersion: 2 m_ObjectHideFlags: 0 m_BuildSettings: serializedVersion: 2 agentTypeID: 0 agentRadius: 0.5 agentHeight: 2 agentSlope: 45 agentClimb: 0.4 ledgeDropHeight: 0 maxJumpAcrossDistance: 0 minRegionArea: 2 manualCellSize: 0 cellSize: 0.16666667 manualTileSize: 0 tileSize: 256 accuratePlacement: 0 maxJobWorkers: 0 preserveTilesOutsideBounds: 0 debug: m_Flags: 0 m_NavMeshData: {fileID: 0} --- !u!1 &230210544 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 230210545} - component: {fileID: 230210546} m_Layer: 0 m_Name: GatherersManager m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &230210545 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230210544} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 3 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &230210546 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 230210544} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: d522d97a44344e0fbd8054fa1fa1ca59, type: 3} m_Name: m_EditorClassIdentifier: gathererPrefab: {fileID: 7325841998788872592, guid: fbd6dd1761d9cb746816522a21f6fad6, type: 3} gatherersCount: 10 behaviourDefinition: {fileID: 11400000, guid: d1b154cc056d51348962c302abea347b, type: 2} speed: 0.5 reach: 0.05 workTime: 24 restTime: 8 --- !u!1 &959798189 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 959798192} - component: {fileID: 959798191} - component: {fileID: 959798190} m_Layer: 0 m_Name: Main Camera m_TagString: MainCamera m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!81 &959798190 AudioListener: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 --- !u!20 &959798191 Camera: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_Enabled: 1 serializedVersion: 2 m_ClearFlags: 2 m_BackGroundColor: {r: 0.19215688, g: 0.4745098, b: 0.31904534, a: 0} m_projectionMatrixMode: 1 m_GateFitMode: 2 m_FOVAxisMode: 0 m_SensorSize: {x: 36, y: 24} m_LensShift: {x: 0, y: 0} m_FocalLength: 50 m_NormalizedViewPortRect: serializedVersion: 2 x: 0 y: 0 width: 1 height: 1 near clip plane: 0.3 far clip plane: 1000 field of view: 60 orthographic: 0 orthographic size: 1 m_Depth: -1 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingPath: -1 m_TargetTexture: {fileID: 0} m_TargetDisplay: 0 m_TargetEye: 3 m_HDR: 1 m_AllowMSAA: 1 m_AllowDynamicResolution: 0 m_ForceIntoRT: 0 m_OcclusionCulling: 1 m_StereoConvergence: 10 m_StereoSeparation: 0.022 --- !u!4 &959798192 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 959798189} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: -2} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &1639582834 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1639582835} - component: {fileID: 1639582836} m_Layer: 0 m_Name: SampleController m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!4 &1639582835 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: -79.005554, y: -31.989944, z: 158.72939} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 2 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!114 &1639582836 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1639582834} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 87d431af597644b69f7463eee295ca99, type: 3} m_Name: m_EditorClassIdentifier: homePrefab: {fileID: 8978833225110489825, guid: 5ec928f6b96f8f74783f92c2888272db, type: 3} resourcePrefab: {fileID: -261033501117576378, guid: d629e753717899a4ea2dcc9d727b03ce, type: 3} agentPrefab: {fileID: 0} agentsCount: 0 maxResourceCount: 200 resourceProductionRate: 0.5 --- !u!1 &1673388098 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 1673388100} - component: {fileID: 1673388099} m_Layer: 0 m_Name: Directional Light m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!108 &1673388099 Light: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_Enabled: 1 serializedVersion: 10 m_Type: 1 m_Shape: 0 m_Color: {r: 1, g: 0.95686275, b: 0.8392157, a: 1} m_Intensity: 1 m_Range: 10 m_SpotAngle: 30 m_InnerSpotAngle: 21.80208 m_CookieSize: 10 m_Shadows: m_Type: 2 m_Resolution: -1 m_CustomResolution: -1 m_Strength: 1 m_Bias: 0.05 m_NormalBias: 0.4 m_NearPlane: 0.2 m_CullingMatrixOverride: e00: 1 e01: 0 e02: 0 e03: 0 e10: 0 e11: 1 e12: 0 e13: 0 e20: 0 e21: 0 e22: 1 e23: 0 e30: 0 e31: 0 e32: 0 e33: 1 m_UseCullingMatrixOverride: 0 m_Cookie: {fileID: 0} m_DrawHalo: 0 m_Flare: {fileID: 0} m_RenderMode: 0 m_CullingMask: serializedVersion: 2 m_Bits: 4294967295 m_RenderingLayerMask: 1 m_Lightmapping: 4 m_LightShadowCasterMode: 0 m_AreaSize: {x: 1, y: 1} m_BounceIntensity: 1 m_ColorTemperature: 6570 m_UseColorTemperature: 0 m_BoundingSphereOverride: {x: 0, y: 0, z: 0, w: 0} m_UseBoundingSphereOverride: 0 m_ShadowRadius: 0 m_ShadowAngle: 0 --- !u!4 &1673388100 Transform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1673388098} m_LocalRotation: {x: 0.40821788, y: -0.23456968, z: 0.10938163, w: 0.8754261} m_LocalPosition: {x: 0, y: 3, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 0} m_RootOrder: 1 m_LocalEulerAnglesHint: {x: 50, y: -30, z: 0} --- !u!222 &3711095348861855312 CanvasRenderer: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3711095348861855325} m_CullTransparentMesh: 0 --- !u!1 &3711095348861855325 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3711095348861855326} - component: {fileID: 3711095348861855312} - component: {fileID: 3711095348861855327} m_Layer: 5 m_Name: Instruction m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!224 &3711095348861855326 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3711095348861855325} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 3711095349765484330} m_RootOrder: 0 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 1} m_AnchoredPosition: {x: 20, y: 0} m_SizeDelta: {x: 200, y: -40} m_Pivot: {x: 0, y: 0.5} --- !u!114 &3711095348861855327 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3711095348861855325} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} m_Color: {r: 0.19607843, g: 0.19607843, b: 0.19607843, a: 1} m_RaycastTarget: 1 m_RaycastPadding: {x: 0, y: 0, z: 0, w: 0} m_Maskable: 1 m_OnCullStateChanged: m_PersistentCalls: m_Calls: [] m_FontData: m_Font: {fileID: 10102, guid: 0000000000000000e000000000000000, type: 0} m_FontSize: 14 m_FontStyle: 0 m_BestFit: 0 m_MinSize: 10 m_MaxSize: 40 m_Alignment: 3 m_AlignByGeometry: 0 m_RichText: 1 m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1 m_Text: "SAMPLE 4:\n\nThis sample shows how the ExitType from All option in SubGraph nodes may be used to introduce priorities to tasks. When a FSM of a top level requests a transition, lower level machines will exit immediately without waiting to reach an exit state. \n\nIt is important for the programmer to be aware of this and consider what the consequences are of stopping a task while it hasn't changed. Using the OnEnter and OnExit methods are key to resetting the the agent and the world to a correct state.\n\nPress 'A' to raise the alarm making the gatherers hide at home." --- !u!114 &3711095349765484328 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3711095349765484502} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} m_Name: m_EditorClassIdentifier: m_UiScaleMode: 0 m_ReferencePixelsPerUnit: 100 m_ScaleFactor: 1 m_ReferenceResolution: {x: 800, y: 600} m_ScreenMatchMode: 0 m_MatchWidthOrHeight: 0 m_PhysicalUnit: 3 m_FallbackScreenDPI: 96 m_DefaultSpriteDPI: 96 m_DynamicPixelsPerUnit: 1 --- !u!223 &3711095349765484329 Canvas: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3711095349765484502} m_Enabled: 1 serializedVersion: 3 m_RenderMode: 0 m_Camera: {fileID: 0} m_PlaneDistance: 100 m_PixelPerfect: 0 m_ReceivesEvents: 1 m_OverrideSorting: 0 m_OverridePixelPerfect: 0 m_SortingBucketNormalizedSize: 0 m_AdditionalShaderChannelsFlag: 0 m_SortingLayerID: 0 m_SortingOrder: 0 m_TargetDisplay: 0 --- !u!224 &3711095349765484330 RectTransform: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3711095349765484502} m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} m_LocalPosition: {x: 0, y: 0, z: 0} m_LocalScale: {x: 0, y: 0, z: 0} m_Children: - {fileID: 3711095348861855326} m_Father: {fileID: 0} m_RootOrder: 4 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} m_SizeDelta: {x: 0, y: 0} m_Pivot: {x: 0, y: 0} --- !u!1 &3711095349765484502 GameObject: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} serializedVersion: 6 m_Component: - component: {fileID: 3711095349765484330} - component: {fileID: 3711095349765484329} - component: {fileID: 3711095349765484328} - component: {fileID: 3711095349765484503} m_Layer: 5 m_Name: Canvas m_TagString: Untagged m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 m_IsActive: 1 --- !u!114 &3711095349765484503 MonoBehaviour: m_ObjectHideFlags: 0 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 3711095349765484502} m_Enabled: 1 m_EditorHideFlags: 0 m_Script: {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} m_Name: m_EditorClassIdentifier: m_IgnoreReversedGraphics: 1 m_BlockingObjects: 0 m_BlockingMask: serializedVersion: 2 m_Bits: 55 ================================================ FILE: Samples~/Gatherer/Scenes/FSM/Gatherer-FSM-04.unity.meta ================================================ fileFormatVersion: 2 guid: aabf809ab01921140bc7ab7e54b17244 DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes/FSM.meta ================================================ fileFormatVersion: 2 guid: 35b50b1dc4886c745915aa5c10658ac9 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer/Scenes.meta ================================================ fileFormatVersion: 2 guid: 8b96ad9671f30a54f97dfae33b0cd511 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Samples~/Gatherer.meta ================================================ fileFormatVersion: 2 guid: 37e54c6fd961025428fe1896d8a53d05 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Submodules/xNode.meta ================================================ fileFormatVersion: 2 guid: 132ba438bf2a24f4d97a53b0a3235407 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: Submodules.meta ================================================ fileFormatVersion: 2 guid: 67411cbb1edbfac43b45d0be5088e675 folderAsset: yes DefaultImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: ================================================ FILE: package.json ================================================ { "name": "com.github.jlreymendez.planilo", "displayName": "Planilo", "description": "A set of Unity Editor tools for designing AI Graphs like Behavior Trees and Finite State Machines", "version": "0.2.0-preview.1", "keywords": [ "unity", "ai" ], "unity": "2019.1", "samples": [ { "displayName": "Gatherer", "description": "A set of gatherer AI samples using Behaviour Trees and Finite State Machines.", "path": "Samples~/Gatherer" } ] } ================================================ FILE: package.json.meta ================================================ fileFormatVersion: 2 guid: b7630e4b170faca41bfb49460b11ee6b TextScriptImporter: externalObjects: {} userData: assetBundleName: assetBundleVariant: