Beispiel #1
0
        /// <summary>
        /// Triggers Duality to (re)load its <see cref="DualityUserData"/>.
        /// </summary>
        public static void LoadUserData()
        {
            string path = UserDataPath;

            if (!File.Exists(path) || execContext == ExecutionContext.Editor || runFromEditor)
            {
                path = "defaultuserdata.dat";
            }
            if (File.Exists(path))
            {
                try
                {
                    Log.Core.Write("Loading UserData..");
                    Log.Core.PushIndent();
                    using (FileStream str = File.OpenRead(path))
                    {
                        using (var formatter = Formatter.Create(str))
                        {
                            UserData = formatter.ReadObject() as DualityUserData ?? new DualityUserData();
                        }
                    }
                    Log.Core.PopIndent();
                }
                catch (Exception)
                {
                    UserData = new DualityUserData();
                }
            }
            else
            {
                UserData = new DualityUserData();
            }
        }
Beispiel #2
0
        /// <summary>
        /// Specialized saving routine for <see cref="UserData"/>.
        /// </summary>
        private static void SaveUserData(DualityUserData instance)
        {
            Serializer.WriteObject(instance, UserData.Path, typeof(XmlSerializer));

            // When in the editor, always write both default settings and current game / runtime settings
            if (execContext == ExecutionContext.Editor)
            {
                Serializer.WriteObject(instance, "DefaultUserData.xml", typeof(XmlSerializer));
            }
        }
Beispiel #3
0
        /// <summary>
        /// Triggers Duality to (re)load its <see cref="DualityUserData"/>.
        /// </summary>
        public static void LoadUserData()
        {
            string path = UserDataPath;

            if (!FileOp.Exists(path) || execContext == ExecutionContext.Editor || runFromEditor)
            {
                path = "DefaultUserData.dat";
            }
            userData = Serializer.TryReadObject <DualityUserData>(path) ?? new DualityUserData();
        }
Beispiel #4
0
		/// <summary>
		/// Triggers Duality to (re)load its <see cref="DualityUserData"/>.
		/// </summary>
		public static void LoadUserData()
		{
			string path = UserDataPath;
			if (!File.Exists(path) || execContext == ExecutionContext.Editor || runFromEditor) path = "DefaultUserData.dat";
			userData = Formatter.TryReadObject<DualityUserData>(path) ?? new DualityUserData();
		}
Beispiel #5
0
		/// <summary>
		/// Triggers Duality to (re)load its <see cref="DualityUserData"/>.
		/// </summary>
		public static void LoadUserData()
		{
			string path = UserDataPath;
			if (!File.Exists(path) || execContext == ExecutionContext.Editor || runFromEditor) path = "defaultuserdata.dat";
			if (File.Exists(path))
			{
				try
				{
					Log.Core.Write("Loading UserData..");
					Log.Core.PushIndent();
					using (FileStream str = File.OpenRead(path))
					{
						using (var formatter = Formatter.Create(str))
						{
							UserData = formatter.ReadObject() as DualityUserData ?? new DualityUserData();
						}
					}
					Log.Core.PopIndent();
				}
				catch (Exception)
				{
					UserData = new DualityUserData();
				}
			}
			else
				UserData = new DualityUserData();
		}