//private void Method<BehaviorSnippet>(List<BehaviourSnippet> foos) public void AddNewSnippet(BehaviorSnippet newSnippet) { if (!ContainsType(newSnippet.name)) { availableActions.Add(newSnippet); } }
static bool IsHungerRelated(BehaviorSnippet x) { if (x.typeOfAction == UtilityType.MAKE_BREAD || x.typeOfAction == UtilityType.GET_BREAD) { return(true); } else { return(false); } }
// Update is called once per frame void Update() { CheckForNewActionConditions(); evalTree.UpdateTree(); BehaviorSnippet currentSnippet = evalTree.FindCurrentAction(); if (currentSnippet != null) { currentSnippet.BehaviorUpdate(); movementScript.targetObj = currentSnippet.target; currentActionHeader.text = currentSnippet.currentActionName; currentGoalHeader.text = currentSnippet.name; } }
public BehaviorSnippet FindCurrentAction() { BehaviorSnippet currentHighest = null; foreach (BehaviorSnippet current in availableActions) { if (currentHighest == null) { currentHighest = current; } if (current.actionValue > currentHighest.actionValue) { currentHighest = current; } } return(currentHighest); }