public bool LoadAllCharactersForAccountToCache(string accountHandle)
{
var currentBackupDirectory = BaseDirectory + accountHandle + "/" + CurrentDirectoryName;
//No current directory? WTF
if (!VerifyDirectory(currentBackupDirectory, false))
return false;
var charDirectory = new DirectoryInfo(currentBackupDirectory);
foreach (var file in charDirectory.EnumerateFiles("*.character", SearchOption.AllDirectories))
{
try
{
var fileData = ReadFile(file);
var blankEntity = Activator.CreateInstance("NetMud.Data", "NetMud.Data.EntityBackingData.Character");
var objRef = blankEntity.Unwrap() as ICharacter;
var newChar = objRef.FromBytes(fileData) as ICharacter;
PlayerDataCache.Add(newChar);
}
catch (Exception ex)
{
LoggingUtility.LogError(ex);
//Let it keep going
}
}
return true;
}