bool ExportData() { MachineConfig machineConfig = new MachineConfig(_config._machineName); if (!machineConfig.BasicConfig.IsMultiLine) { return(false); } CoreMultiLineChecker checker = new CoreMultiLineChecker(machineConfig); int symbolCount0 = machineConfig.ReelConfig.GetSingleReel(0).SymbolCount; int symbolCount1 = machineConfig.ReelConfig.GetSingleReel(1).SymbolCount; int symbolCount2 = machineConfig.ReelConfig.GetSingleReel(2).SymbolCount; // int symbolCount0 = 4; // int symbolCount1 = 4; // int symbolCount2 = 4; int total = symbolCount0 * symbolCount1 * symbolCount2; List <MultiLineExportData> exportDataList = new List <MultiLineExportData>(total); for (int i = 0; i < total; i++) { int index0 = i % symbolCount0; int r = i / symbolCount0; int index1 = r % symbolCount1; int index2 = r / symbolCount1; int[] indexes = new int[] { index0, index1, index2 }; CoreMultiLineCheckResult checkResult = checker.CheckResultWithStopIndexes(indexes); // #if DEBUG // string s = string.Format("indexes:[{0}, {1}, {2}]", index0, index1, index2); // Debug.Log(s); // checkResult.DebugPrint(); // #endif MultiLineExportData exportData = new MultiLineExportData(checkResult.PayoutReward, checkResult.NearHitReward, indexes); exportDataList.Add(exportData); } PrintData(exportDataList); return(true); }
void PrintData(List <MultiLineExportData> dataList) { if (File.Exists(_exportDataFilePath)) { File.Delete(_exportDataFilePath); } StreamWriter writer = FileStreamUtility.CreateFileStream(_exportDataFilePath); FileStreamUtility.WriteFile(writer, "PayoutReward,NearHitReward,Reel1,Reel2,Reel3"); for (int i = 0; i < dataList.Count; i++) { MultiLineExportData data = dataList[i]; string s = string.Format("{0},{1},{2},{3},{4}", data._payoutReward, data._nearHitReward, data._stopIndexes[0], data._stopIndexes[1], data._stopIndexes[2]); FileStreamUtility.WriteFile(writer, s); } FileStreamUtility.CloseFile(writer); }