public override void Traverse() { float bestValue = -1f; BSNode bestNode = null; foreach (KeyValuePair <BSNode, BSEvaluator> transition in m_transitions) { float transValue = transition.Value(); if (transValue > bestValue) { bestValue = transValue; bestNode = transition.Key; } } bestNode.Traverse(); }