private void AddToList(List<IPlayerMove> list) { if (BestMove != null) { list.Add(BestMove); if (NextGameState != null) { NextGameState.AddToList(list); } } }