//A transition is true if all of its expressions evaluate to true. //eg, if all of the expression have their conditions evaluate to the same bool as their truth value. private bool TestTransition(FSMTransition transition) { foreach (FSMExpression expression in transition.GetExpressions()) { bool conditionTruth = conditionChecker.TestCondition(expression.condition, expression.param, fsmCounter); if (conditionTruth != expression.trueIfConditionTrue) { return(false); } } return(true); }