diff options
| author | Alex-TIMEHACK <[email protected]> | 2017-05-19 21:51:48 +0100 |
|---|---|---|
| committer | Alex-TIMEHACK <[email protected]> | 2017-05-19 21:51:48 +0100 |
| commit | 43647f873b9c2cd454b0b9389b952e1b36406725 (patch) | |
| tree | c41de99a6103ad72dd449481d1153da3e1114c8b /TimeHACK.Engine | |
| parent | 044d3dd3aa38f02693d1d2561a4276b2dc1bdd9a (diff) | |
| parent | d9fa6d11aa4889ba4538b00ef56d03da78664025 (diff) | |
| download | histacom2-43647f873b9c2cd454b0b9389b952e1b36406725.tar.gz histacom2-43647f873b9c2cd454b0b9389b952e1b36406725.tar.bz2 histacom2-43647f873b9c2cd454b0b9389b952e1b36406725.zip | |
Fixed Conflicts
Diffstat (limited to 'TimeHACK.Engine')
24 files changed, 120 insertions, 21 deletions
diff --git a/TimeHACK.Engine/SaveSystem.cs b/TimeHACK.Engine/SaveSystem.cs new file mode 100644 index 0000000..c6e19a2 --- /dev/null +++ b/TimeHACK.Engine/SaveSystem.cs @@ -0,0 +1,87 @@ +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Newtonsoft.Json; + +namespace TimeHACK.Engine +{ + public static class SaveSystem + { + public static Save CurrentSave { get; private set; } + + public static string GameDirectory + { + get + { + return Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.MyDocuments), "TimeHACK"); + } + } + + public static string ProfileDirectory + { + get + { + return Path.Combine(GameDirectory, "Profiles"); + } + } + + public static bool LoadSave() + { + if(File.Exists(Path.Combine(ProfileDirectory, "user.save"))) + { + //Read base64 string from file + string b64 = File.ReadAllText(Path.Combine(ProfileDirectory, "user.save")); + //Get Unicode byte array + byte[] bytes = Convert.FromBase64String(b64); + //Decode the Unicode + string json = Encoding.UTF8.GetString(bytes); + //Deserialize save object. + CurrentSave = JsonConvert.DeserializeObject<Save>(json); + return true; + } + else + { + NewGame(); + return false; + } + } + + public static void NewGame() + { + //TODO: User must set a username....somehow + if (!Directory.Exists(GameDirectory)) + Directory.CreateDirectory(GameDirectory); + + if (!Directory.Exists(ProfileDirectory)) + Directory.CreateDirectory(ProfileDirectory); + + var save = new Save(); + save.ExperiencedStories = new List<string>(); + save.InstalledPrograms = new Dictionary<string, bool>(); + CurrentSave = save; + SaveGame(); + } + + public static void SaveGame() + { + //Serialize the save to JSON. + string json = JsonConvert.SerializeObject(CurrentSave); + //Get JSON bytes (Unicode format). + var bytes = Encoding.UTF8.GetBytes(json); + //Encode the array into Base64. + string b64 = Convert.ToBase64String(bytes); + //Write to disk. + File.WriteAllText(Path.Combine(ProfileDirectory, "user.save"), b64); + } + } + + public class Save + { + public string Username { get; set; } + public Dictionary<string, bool> InstalledPrograms { get; set; } + public List<string> ExperiencedStories { get; set; } + } +} diff --git a/TimeHACK.Engine/TaskBarController.cs b/TimeHACK.Engine/TaskBarController.cs index 3ede876..3d73d63 100644 --- a/TimeHACK.Engine/TaskBarController.cs +++ b/TimeHACK.Engine/TaskBarController.cs @@ -1,8 +1,4 @@ -using System; -using System.Collections.Generic; -using System.Linq; -using System.Text; -using System.Threading.Tasks; +using System.Collections.Generic; using System.Windows.Forms; using System.Drawing; diff --git a/TimeHACK.Engine/Template/WinClassic.cs b/TimeHACK.Engine/Template/WinClassic.cs index ea99353..615d0f4 100644 --- a/TimeHACK.Engine/Template/WinClassic.cs +++ b/TimeHACK.Engine/Template/WinClassic.cs @@ -26,7 +26,7 @@ namespace TimeHACK.Engine.Template private void Programtopbar_drag(object sender, MouseEventArgs e) { - if (e.Button == MouseButtons.Left) + if (e.Button == MouseButtons.Left && max == false) { ReleaseCapture(); SendMessage(Handle, WM_NCLBUTTONDOWN, HT_CAPTION, 0); diff --git a/TimeHACK.Engine/TimeHACK.Engine.csproj b/TimeHACK.Engine/TimeHACK.Engine.csproj index ecb6b48..14707ae 100644 --- a/TimeHACK.Engine/TimeHACK.Engine.csproj +++ b/TimeHACK.Engine/TimeHACK.Engine.csproj @@ -47,6 +47,7 @@ <ItemGroup> <Compile Include="BSODCreator.cs" /> <None Include="Resources\WinClassic\Window\pjBg6mKP.bin" /> + <Compile Include="SaveSystem.cs" /> <Compile Include="TaskBarController.cs" /> <Compile Include="Template\Win9XBSOD.cs"> <SubType>Form</SubType> diff --git a/TimeHACK.Engine/bin/Debug/TimeHACK.Engine.dll b/TimeHACK.Engine/bin/Debug/TimeHACK.Engine.dll Binary files differdeleted file mode 100644 index acdadae..0000000 --- a/TimeHACK.Engine/bin/Debug/TimeHACK.Engine.dll +++ /dev/null diff --git a/TimeHACK.Engine/bin/Debug/TimeHACK.Engine.pdb b/TimeHACK.Engine/bin/Debug/TimeHACK.Engine.pdb Binary files differdeleted file mode 100644 index 7c3dabc..0000000 --- a/TimeHACK.Engine/bin/Debug/TimeHACK.Engine.pdb +++ /dev/null diff --git a/TimeHACK.Engine/bin/Release/TimeHACK.Engine.dll b/TimeHACK.Engine/bin/Release/TimeHACK.Engine.dll Binary files differdeleted file mode 100644 index 0d5b2f2..0000000 --- a/TimeHACK.Engine/bin/Release/TimeHACK.Engine.dll +++ /dev/null diff --git a/TimeHACK.Engine/bin/Release/TimeHACK.Engine.pdb b/TimeHACK.Engine/bin/Release/TimeHACK.Engine.pdb Binary files differdeleted file mode 100644 index cd0d374..0000000 --- a/TimeHACK.Engine/bin/Release/TimeHACK.Engine.pdb +++ /dev/null diff --git a/TimeHACK.Engine/obj/Debug/CoreCompileInputs.cache b/TimeHACK.Engine/obj/Debug/CoreCompileInputs.cache deleted file mode 100644 index eefe581..0000000 --- a/TimeHACK.Engine/obj/Debug/CoreCompileInputs.cache +++ /dev/null @@ -1 +0,0 @@ -bdbeecc076ab1435c4e764cd236cd99237fe8529 diff --git a/TimeHACK.Engine/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/TimeHACK.Engine/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache Binary files differdeleted file mode 100644 index c2faf9c..0000000 --- a/TimeHACK.Engine/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache +++ /dev/null diff --git a/TimeHACK.Engine/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll b/TimeHACK.Engine/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll Binary files differdeleted file mode 100644 index 3738f7e..0000000 --- a/TimeHACK.Engine/obj/Debug/TempPE/Properties.Resources.Designer.cs.dll +++ /dev/null diff --git a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csproj.FileListAbsolute.txt b/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csproj.FileListAbsolute.txt deleted file mode 100644 index dcb39b9..0000000 --- a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csproj.FileListAbsolute.txt +++ /dev/null @@ -1,11 +0,0 @@ -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\bin\Debug\TimeHACK.Engine.dll -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\bin\Debug\TimeHACK.Engine.pdb -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\bin\Debug\Newtonsoft.Json.dll -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.Properties.Resources.resources -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.Template.Win9XBSOD.resources -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.Template.AboutBox95.resources -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.Template.Infobox95.resources -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.Template.WinClassic.resources -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.csproj.GenerateResource.Cache -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.dll -I:\Desktop\HistamcomVB\My-TimeHACK\TimeHACK\TimeHACK.Engine\obj\Debug\TimeHACK.Engine.pdb diff --git a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csproj.GenerateResource.Cache b/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csproj.GenerateResource.Cache Binary files differdeleted file mode 100644 index 5860591..0000000 --- a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csproj.GenerateResource.Cache +++ /dev/null diff --git a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csprojResolveAssemblyReference.cache b/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csprojResolveAssemblyReference.cache Binary files differnew file mode 100644 index 0000000..7bb033a --- /dev/null +++ b/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.csprojResolveAssemblyReference.cache diff --git a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.dll b/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.dll Binary files differdeleted file mode 100644 index acdadae..0000000 --- a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.dll +++ /dev/null diff --git a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.pdb b/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.pdb Binary files differdeleted file mode 100644 index 7c3dabc..0000000 --- a/TimeHACK.Engine/obj/Debug/TimeHACK.Engine.pdb +++ /dev/null diff --git a/TimeHACK.Engine/obj/Release/CoreCompileInputs.cache b/TimeHACK.Engine/obj/Release/CoreCompileInputs.cache index 016901c..fc241b3 100644 --- a/TimeHACK.Engine/obj/Release/CoreCompileInputs.cache +++ b/TimeHACK.Engine/obj/Release/CoreCompileInputs.cache @@ -1 +1 @@ -03f745c6a0e75bab98ef9919670fab0f1de5ece4 +34172df9cedd638ac7a23f9204409797a1d64c7b diff --git a/TimeHACK.Engine/obj/Release/DesignTimeResolveAssemblyReferences.cache b/TimeHACK.Engine/obj/Release/DesignTimeResolveAssemblyReferences.cache Binary files differdeleted file mode 100644 index 53f448c..0000000 --- a/TimeHACK.Engine/obj/Release/DesignTimeResolveAssemblyReferences.cache +++ /dev/null diff --git a/TimeHACK.Engine/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache b/TimeHACK.Engine/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache Binary files differdeleted file mode 100644 index e421fcc..0000000 --- a/TimeHACK.Engine/obj/Release/DesignTimeResolveAssemblyReferencesInput.cache +++ /dev/null diff --git a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csproj.FileListAbsolute.txt b/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csproj.FileListAbsolute.txt index ff60e63..7fd9d9e 100644 --- a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csproj.FileListAbsolute.txt +++ b/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csproj.FileListAbsolute.txt @@ -2,8 +2,6 @@ D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\bin\Release\TimeHACK.Engine.dll D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\bin\Release\TimeHACK.Engine.pdb D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.csprojResolveAssemblyReference.cache D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Properties.Resources.resources -D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Main.Template.Infobox95.resources -D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Main.Template.WinClassic.resources D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.csproj.GenerateResource.Cache D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.dll D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.pdb @@ -43,3 +41,32 @@ C:\Users\lempamo\Documents\GitHub\TimeHACK-fork\TimeHACK.Engine\obj\Release\Time C:\Users\lempamo\Documents\GitHub\TimeHACK-fork\TimeHACK.Engine\obj\Release\TimeHACK.Engine.csproj.GenerateResource.Cache C:\Users\lempamo\Documents\GitHub\TimeHACK-fork\TimeHACK.Engine\obj\Release\TimeHACK.Engine.dll C:\Users\lempamo\Documents\GitHub\TimeHACK-fork\TimeHACK.Engine\obj\Release\TimeHACK.Engine.pdb +D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\bin\Release\Newtonsoft.Json.dll +D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.Win9XBSOD.resources +D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.AboutBox95.resources +D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.Infobox95.resources +D:\Documents\GitHub\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.WinClassic.resources +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\bin\Release\TimeHACK.Engine.dll +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\bin\Release\TimeHACK.Engine.pdb +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\bin\Release\Newtonsoft.Json.dll +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.csprojResolveAssemblyReference.cache +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Properties.Resources.resources +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.Win9XBSOD.resources +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.AboutBox95.resources +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.Infobox95.resources +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.WinClassic.resources +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.csproj.GenerateResource.Cache +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.dll +C:\Users\Michael\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.pdb +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\bin\Release\TimeHACK.Engine.dll +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\bin\Release\TimeHACK.Engine.pdb +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\bin\Release\Newtonsoft.Json.dll +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.csprojResolveAssemblyReference.cache +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Properties.Resources.resources +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.Win9XBSOD.resources +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.AboutBox95.resources +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.Infobox95.resources +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.Template.WinClassic.resources +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.csproj.GenerateResource.Cache +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.dll +C:\Users\trm\Documents\TimeHACK\TimeHACK.Engine\obj\Release\TimeHACK.Engine.pdb diff --git a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csproj.GenerateResource.Cache b/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csproj.GenerateResource.Cache Binary files differdeleted file mode 100644 index 5860591..0000000 --- a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csproj.GenerateResource.Cache +++ /dev/null diff --git a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csprojResolveAssemblyReference.cache b/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csprojResolveAssemblyReference.cache Binary files differdeleted file mode 100644 index 2e5818a..0000000 --- a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.csprojResolveAssemblyReference.cache +++ /dev/null diff --git a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.dll b/TimeHACK.Engine/obj/Release/TimeHACK.Engine.dll Binary files differdeleted file mode 100644 index 0d5b2f2..0000000 --- a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.dll +++ /dev/null diff --git a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.pdb b/TimeHACK.Engine/obj/Release/TimeHACK.Engine.pdb Binary files differdeleted file mode 100644 index cd0d374..0000000 --- a/TimeHACK.Engine/obj/Release/TimeHACK.Engine.pdb +++ /dev/null |
