Esempio n. 1
0
 /// <summary>
 /// Load saved game data from saveddata file
 /// </summary>
 /// <returns>Return saved datas list, including null value</returns>
 public List <SavedDataModel> LoadSavedDatas()
 {
     if (!Directory.Exists(savedDataPath))
     {
         Directory.CreateDirectory(savedDataPath);
     }
     using (FileStream fs = new FileStream(savedDataPath + savedDataFile, FileMode.OpenOrCreate))
     {
         using (StreamReader sr = new StreamReader(fs, Encoding.UTF8))
         {
             string savedDataJson = sr.ReadToEnd();
             if (null == savedDatas)
             {
                 savedDatas = InitList <SavedDataModel>(savdDataPageCount * 12);
             }
             if (!string.IsNullOrEmpty(savedDataJson))
             {
                 JArray savedDataJArray = JArray.Parse(savedDataJson);
                 foreach (JToken jSavedData in savedDataJArray)
                 {
                     if (null != jSavedData && jSavedData.Type != JTokenType.Null)
                     {
                         SavedDataModel thisModel = JsonConvert.DeserializeObject <SavedDataModel>(jSavedData.ToString());
                         savedDatas[thisModel.savedDataIndex] = thisModel;
                     }
                 }
                 return(savedDatas);
             }
         }
     }
     return(InitList <SavedDataModel>(savdDataPageCount * 12));
 }
Esempio n. 2
0
        /// <summary>
        /// Handles the click of the delete button to delete the current profile
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void DeleteProfileButton_Click(object sender, EventArgs e)
        {
            if (this.profileCombobox.SelectedItem is ProfileModel pm)
            {
                if (pm.GUID == "DEFAULT")
                {
                    MessageBox.Show("You cannot delete the default profile.");
                    return;
                }
                else
                {
                    ProfileModel deleteModel = null;
                    foreach (var profile in VoltageDisplayForm.SavedData.Profiles)
                    {
                        if (profile.GUID == pm.GUID)
                        {
                            deleteModel = profile;
                            break;
                        }
                    }

                    if (deleteModel != null)
                    {
                        VoltageDisplayForm.SavedData.Profiles.Remove(deleteModel);
                        SavedDataModel.Write(VoltageDisplayForm.SavedData);
                        SetupProfileList();
                        this.profileCombobox.SelectedIndex = 0;
                    }
                }
            }
        }
Esempio n. 3
0
    public SavedDataModel GetCurrentData()
    {
        SavedDataModel tmpData = new SavedDataModel();

        tmpData.dialogInedx  = dialogIndex - 1;
        tmpData.savedTime    = DateTime.Now;
        tmpData.chapterIndex = chapterIndex;
        tmpData.savedPicName = screenPicName;
        return(tmpData);
    }
Esempio n. 4
0
 public void InitDataList(int size)
 {
     if (size > 0)
     {
         for (int i = 1; i <= size; i++)
         {
             SavedDataModel tempData = new SavedDataModel();
             tempData.chapterIndex   = 0;
             tempData.dialogInedx    = 0;
             tempData.savedTime      = DateTime.Now;
             tempData.savedDataIndex = i;
             savedDatas.Add(tempData);
         }
     }
 }
        public VoltageDisplayForm()
        {
            InitializeComponent();

            SavedData              = SavedDataModel.Read();
            SavedData.DataChanged += this.SavedData_DataChanged;
            this.FormClosed       += this.OnFormClosed;
            this.SetScreenSizeAndPosition();

            this.IsConnected = false;
            this.SetupComPortMenu();
            this.dataWriterDelegate = new WriteDataDelegate(DataWriter);
            this.GetVerionInfo();
            this.SetupProfiles();
        }
Esempio n. 6
0
    public void Load()
    {
        if (File.Exists(savedFileName))
        {
            BinaryFormatter bf   = new BinaryFormatter();
            FileStream      file = File.Open(savedFileName, FileMode.Open);

            SavedDataModel savedDataModel = (SavedDataModel)bf.Deserialize(file);

            GameStateController.LoadData(savedDataModel);
        }
        else
        {
            GameStateController.LoadData(null); // will start new game
        }
    }
Esempio n. 7
0
    public bool Save()
    {
        try
        {
            BinaryFormatter bf   = new BinaryFormatter();
            FileStream      file = File.Create(savedFileName);

            SavedDataModel savedDataModel = new SavedDataModel(GameStateController.playerController.playerModel,
                                                               GameStateController.jobsController.GetJobLevelsSnapshot(),
                                                               GameStateController.characterMetaDataController.characterMetaDataModel);


            bf.Serialize(file, savedDataModel);

            file.Close();
            return(true);
        }
        catch (FileNotFoundException)
        {
            return(false);
        }
    }
Esempio n. 8
0
    private void Start()
    {
        GameObject.DontDestroyOnLoad(gameObject);
        rootPath        = Application.dataPath;
        savedDatasPath  = rootPath + "/Resources/SavedData/";
        savedDatasFile  = "savedData.json";
        qSavedDataFile  = "quickSavedData.json";
        settingDataFile = "settingData.json";
        zeroCGArray     = "0;0;0;0;0;0";
        fullCGArray     = "1_1,1_2,1_3;2_1,2_in,2_out;3_1,3_2;4_1,4_2;5_1,5_2;6_1,6_2";
        titleContainer  = displayCanvas.transform.Find("TitleContainer").gameObject;
        savedDataPanel  = displayCanvas.transform.Find("SavedDataPanel").gameObject;
        skipContainer   = displayCanvas.transform.Find("SkipContainer").gameObject;
        extraContainer  = displayCanvas.transform.Find("ExtraContainer").gameObject;

        cgPanel      = displayCanvas.transform.Find("CGPanel").gameObject;
        cgDetail     = displayCanvas.transform.Find("CGDetail").gameObject;
        fullCGBtn    = extraContainer.transform.Find("FullCG").GetComponent <Button>();
        zeroCGBtn    = extraContainer.transform.Find("ZeroCG").GetComponent <Button>();
        confirmPanel = extraContainer.transform.Find("ConfirmPanel").gameObject;

        bgmPanel  = displayCanvas.transform.Find("BGMPanel").gameObject;
        bgmSource = displayCanvas.transform.Find("AudioContainer").gameObject.transform.Find("TitleAudio").GetComponent <AudioSource>();

        memoryPanel      = displayCanvas.transform.Find("MemoryPanel").gameObject;
        memoryStartArray = new int[] { 29, 46 };
        memoryEndArray   = new int[] { 43, 67 };

        settingPannel = displayCanvas.transform.Find("SettingPanel").gameObject;
        savedDatas    = new List <SavedDataModel>();
        //LoadDatas<List<SavedDataModel>>(savedDatasFile, savedDatas);
        qSavedData = new SavedDataModel();
        // LoadDatas<SavedDataModel>(qSavedDataFile, qSavedData);
        settingDatas = new SettingModel();
        //LoadDatas<SettingModel>(settingDataFile, settingDatas);
        //AnalyzeCGArray(settingDatas.cgSavedData);
        ChapterController._instance.noClothes = settingDatas.noClothes;//先要读取是否着装的设置
    }
Esempio n. 9
0
        /// <summary>
        /// Handles the click of the save button to save the current settings
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void SaveProfileButton_Click(object sender, EventArgs e)
        {
            if (this.profileCombobox.SelectedItem is ProfileModel pm)
            {
                if (pm.GUID != "Default")
                {
                    pm.ProfileName = this.profileNameTextbox.Text.Trim();

                    // Ensure a unique name
                    foreach (var existingProfile in VoltageDisplayForm.SavedData.Profiles)
                    {
                        if (pm.ProfileName == existingProfile.ProfileName && pm.GUID != existingProfile.GUID)
                        {
                            pm.ProfileName += " (Copy)";
                            this.profileNameTextbox.Text = pm.ProfileName;
                            break;
                        }
                    }


                    if (!this.minValueTextbox.Text.Contains("."))
                    {
                        this.minValueTextbox.Text += ".00";
                    }

                    if (!this.maxValueTextbox.Text.Contains("."))
                    {
                        this.maxValueTextbox.Text += ".00";
                    }

                    float.TryParse(this.minValueTextbox.Text, out float minValue);
                    float.TryParse(this.maxValueTextbox.Text, out float maxValue);

                    this.minValueTextbox.Text = minValue.ToString("F2");
                    this.maxValueTextbox.Text = maxValue.ToString("F2");

                    pm.MinValue = minValue;
                    pm.MaxValue = maxValue;

                    if (pm.GUID == "New")
                    {
                        // we're adding a new item
                        pm.GUID = Guid.NewGuid().ToString();
                        VoltageDisplayForm.SavedData.Profiles.Add(pm);
                    }
                    else
                    {
                        // we're updating an existing item
                        foreach (var profile in VoltageDisplayForm.SavedData.Profiles)
                        {
                            if (profile.GUID == pm.GUID)
                            {
                                pm = profile; // overwrite all properties
                                break;
                            }
                        }
                    }
                }

                SavedDataModel.Write(VoltageDisplayForm.SavedData);
                SetupProfileList();
                this.SelectByGUID(pm.GUID);
            }
        }
Esempio n. 10
0
 /*
  * /// <summary>
  * /// 将存储数据存入本地
  * /// </summary>
  * public void SaveDatas<T>(string fileName, T datas)
  * {
  *  if (!Directory.Exists(savedDatasPath))
  *  {
  *      Directory.CreateDirectory(savedDatasPath);
  *  }
  *  using (StreamWriter w = new StreamWriter(savedDatasPath + fileName, false, Encoding.UTF8))
  *  {
  *      string savedDataJson = JsonConvert.SerializeObject(datas);
  *      w.Write(savedDataJson);
  *  }
  * }
  */
 public void SetQuickSavedData()
 {
     qSavedData = ChapterController._instance.GetCurrentData();
     //SaveDatas<SavedDataModel>(qSavedDataFile, qSavedData);
 }