FireLance removing save game entry action implemented.
- Refactoring. - Moved FLC actions into separate functions.
This commit is contained in:
+83
-44
@@ -6,6 +6,7 @@ using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.IO;
|
||||
using System.Linq;
|
||||
using System.Security.Cryptography.X509Certificates;
|
||||
|
||||
namespace DevConsole
|
||||
{
|
||||
@@ -151,8 +152,10 @@ namespace DevConsole
|
||||
|
||||
private static void CmdFlcActions()
|
||||
{
|
||||
Console.WriteLine("A. FireLance Write Predefined SaveData Entry");
|
||||
Console.WriteLine("B. FireLance Read Predefined SaveData Entry");
|
||||
Console.WriteLine("A. FireLance Write Predefined MasterGameRecord");
|
||||
Console.WriteLine("B. FireLance Read Predefined MasterGameRecord");
|
||||
Console.WriteLine("C. FireLance Insert Save Entry into existing MasterGameRecord");
|
||||
Console.WriteLine("D. FireLance Remove Save Entry from existing MasterGameRecord");
|
||||
Console.WriteLine("X. <--- Go back\n");
|
||||
Console.Write(":");
|
||||
|
||||
@@ -162,55 +165,91 @@ namespace DevConsole
|
||||
switch (userInput.ToUpper())
|
||||
{
|
||||
case "A":
|
||||
var writeMasterGameRecord = new MasterGameRecordModel();
|
||||
List<DirectoriesModel> directories = gsmRO.LoadRecords<DirectoriesModel>( "*",
|
||||
GsmRO.Tables.Directories,
|
||||
GsmRO.Columns.GameID,
|
||||
"600",
|
||||
true);
|
||||
|
||||
GameEntryModel gameEntry = gsmRO.LoadRecords<GameEntryModel>( GsmRO.Columns.GameName,
|
||||
GsmRO.Tables.GameEntry,
|
||||
GsmRO.Columns.ID,
|
||||
"600",
|
||||
true).First();
|
||||
|
||||
List<SaveGameEntriesModel> saveGameEntries = new List<SaveGameEntriesModel>();
|
||||
saveGameEntries.Add(new SaveGameEntriesModel());
|
||||
|
||||
writeMasterGameRecord.Directories = directories;
|
||||
writeMasterGameRecord.GameEntry = gameEntry;
|
||||
writeMasterGameRecord.SaveGameEntries = saveGameEntries;
|
||||
|
||||
fireLanceCRUD.InsertRecord("GameRecords", writeMasterGameRecord);
|
||||
FlcWriteMasterGameRecordAction();
|
||||
break;
|
||||
case "B":
|
||||
var readMasterGameRecords = fireLanceCRUD.LoadRecordsFromTable<MasterGameRecordModel>("GameRecords");
|
||||
foreach (var record in readMasterGameRecords)
|
||||
{
|
||||
Console.WriteLine(record.Id);
|
||||
Console.WriteLine("");
|
||||
PrintAllValues(record.GameEntry);
|
||||
Console.WriteLine("");
|
||||
|
||||
foreach (var subRecord in record.Directories)
|
||||
{
|
||||
PrintAllValues(subRecord);
|
||||
Console.WriteLine("");
|
||||
}
|
||||
|
||||
foreach (var subRecord in record.SaveGameEntries)
|
||||
{
|
||||
PrintAllValues(subRecord);
|
||||
Console.WriteLine("");
|
||||
}
|
||||
}
|
||||
|
||||
FlcReadMasterGameRecordAction();
|
||||
break;
|
||||
case "C":
|
||||
FlcInsertSaveEntryAction();
|
||||
break;
|
||||
case "D":
|
||||
FlcRemoveSaveEntryAction();
|
||||
break;
|
||||
case "X":
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
#endregion
|
||||
#region FlcActions
|
||||
private static void FlcWriteMasterGameRecordAction()
|
||||
{
|
||||
var masterGameRecord = new MasterGameRecordModel();
|
||||
List<DirectoriesModel> directories = gsmRO.LoadRecords<DirectoriesModel>("*",
|
||||
GsmRO.Tables.Directories,
|
||||
GsmRO.Columns.GameID,
|
||||
"600",
|
||||
true);
|
||||
|
||||
GameEntryModel gameEntry = gsmRO.LoadRecords<GameEntryModel>(GsmRO.Columns.GameName,
|
||||
GsmRO.Tables.GameEntry,
|
||||
GsmRO.Columns.ID,
|
||||
"600",
|
||||
true).First();
|
||||
|
||||
List<SaveGameEntriesModel> saveGameEntries = new List<SaveGameEntriesModel>();
|
||||
saveGameEntries.Add(new SaveGameEntriesModel());
|
||||
|
||||
masterGameRecord.Directories = directories;
|
||||
masterGameRecord.GameEntry = gameEntry;
|
||||
masterGameRecord.SaveGameEntries = saveGameEntries;
|
||||
|
||||
fireLanceCRUD.InsertRecord("GameRecords", masterGameRecord);
|
||||
}
|
||||
|
||||
static void FlcReadMasterGameRecordAction()
|
||||
{
|
||||
var masterGameRecords = fireLanceCRUD.LoadRecordsFromTable<MasterGameRecordModel>("GameRecords");
|
||||
foreach (var record in masterGameRecords)
|
||||
{
|
||||
Console.WriteLine(record.Id);
|
||||
Console.WriteLine("");
|
||||
PrintAllValues(record.GameEntry);
|
||||
Console.WriteLine("");
|
||||
|
||||
foreach (var subRecord in record.Directories)
|
||||
{
|
||||
PrintAllValues(subRecord);
|
||||
Console.WriteLine("");
|
||||
}
|
||||
|
||||
foreach (var subRecord in record.SaveGameEntries)
|
||||
{
|
||||
PrintAllValues(subRecord);
|
||||
Console.WriteLine("");
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private static void FlcRemoveSaveEntryAction()
|
||||
{
|
||||
Guid firstMasterGameRecordGuid = fireLanceCRUD.LoadRecordsFromTable<MasterGameRecordModel>("GameRecords").First().Id;
|
||||
var masterGameRecordToRemove = fireLanceCRUD.LoadRecordById<MasterGameRecordModel>("GameRecords", firstMasterGameRecordGuid);
|
||||
Guid firstSaveGameEntryGuid = masterGameRecordToRemove.SaveGameEntries.Select(x => x.Id).First();
|
||||
masterGameRecordToRemove.SaveGameEntries.RemoveAll(x => x.Id == firstSaveGameEntryGuid);
|
||||
|
||||
fireLanceCRUD.UpsertRecordById("GameRecords", firstMasterGameRecordGuid, masterGameRecordToRemove);
|
||||
}
|
||||
|
||||
private static void FlcInsertSaveEntryAction()
|
||||
{
|
||||
Guid firstMasterGameRecordGuid = fireLanceCRUD.LoadRecordsFromTable<MasterGameRecordModel>("GameRecords").First().Id;
|
||||
var masterGameRecordToInsert = fireLanceCRUD.LoadRecordById<MasterGameRecordModel>("GameRecords", firstMasterGameRecordGuid);
|
||||
masterGameRecordToInsert.SaveGameEntries.Add(new SaveGameEntriesModel());
|
||||
|
||||
fireLanceCRUD.UpsertRecordById("GameRecords", firstMasterGameRecordGuid, masterGameRecordToInsert);
|
||||
}
|
||||
#endregion
|
||||
|
||||
private static void PrintAllValues<T>(T data)
|
||||
|
||||
Reference in New Issue
Block a user