public static HealNode alloc(Entity p_sourceEntity, HealthRecoveryTrigger p_targetHealTrigger) { HealNode l_instance = new HealNode(); l_instance.SourceEntity = p_sourceEntity; l_instance.TargetHealTrigger = p_targetHealTrigger; l_instance.RecoveredHealth = 0.0f; return(l_instance); }
public static void buildMoveToHealthTrigger(DecisionTree p_decisionTree, Entity p_sourceEntity) { if (EntityComponentContainer.Components.ContainsKey(typeof(HealthRecoveryTrigger))) { var l_healthRecoveryTriggers = EntityComponentContainer.Components[typeof(HealthRecoveryTrigger)]; for (int i = 0; i < l_healthRecoveryTriggers.Count; i++) { HealthRecoveryTrigger l_healthRecoveryTrigger = l_healthRecoveryTriggers[i] as HealthRecoveryTrigger; MoveToNavigationNodeNode l_moveToNavigationNodeNode = MoveToNavigationNodeNode.alloc(p_sourceEntity.CurrentNavigationNode, l_healthRecoveryTrigger.AssociatedEntity.CurrentNavigationNode); DecisionTree.linkDecisionNodes(p_decisionTree, p_decisionTree.RootNode, l_moveToNavigationNodeNode); HealNode l_healNode = HealNode.alloc(p_sourceEntity, l_healthRecoveryTrigger); DecisionTree.linkDecisionNodes(p_decisionTree, l_moveToNavigationNodeNode, l_healNode); } } }