Example #1
0
    public void OnUpdate()
    {
        for (int i = 0; i < view.childCount; i++)
        {
            int       id = i;
            Transform tf = view.GetChild(id);
            tf.SetParent(view, false);
            tf.Find("idx").GetComponent <Text>().text = id.ToString();
            bool      has_save = Tools.HasSave(id);
            Transform info     = tf.Find("Info");
            Transform create   = tf.Find("BtnCreate");
            info.gameObject.SetActive(has_save);
            create.gameObject.SetActive(!has_save);
            if (has_save)
            {
                GameData.instance.save_id = id;
                // 读取存档数据显示
                string    quick_save_path = Tools.SavePath("quick_save.data");
                byte[]    byt             = Tools.ReadAllBytes(quick_save_path);
                QuickSave quick_data      = Tools.DeserializeObject <QuickSave>(byt);

                info.Find("grilHead").gameObject.SetActive(quick_data.sex == Sex.Girl);
                info.Find("boyHead").gameObject.SetActive(quick_data.sex == Sex.Boy);
                info.Find("TextName").GetComponent <Text>().text = quick_data.name;

                info.Find("TextTime").GetComponent <Text>().text  = Tools.ShowTime(new System.DateTime(quick_data.time));
                info.Find("TextLevel").GetComponent <Text>().text = LevelConfigData.GetName(quick_data.level);
            }
        }
    }
Example #2
0
    public static void SaveGame()
    {
        string game_path = Tools.SavePath("game.data");

        GameData.instance.SaveGame();
        byte[] byt2 = Tools.SerializeObject(GameData.instance);
        Tools.WriteAllBytes(game_path, byt2);

        string main_role_path = Tools.SavePath("main_role.data");

        RoleData.mainRole.SaveGame();
        byte[] byt = Tools.SerializeObject(RoleData.mainRole);
        Tools.WriteAllBytes(main_role_path, byt);

        QuickSave save = new QuickSave()
        {
            time  = GameData.instance.GetGameData(GlobalAttribute.time),
            name  = RoleData.mainRole.name,
            level = RoleData.mainRole.GetAttr(RoleAttribute.level),
            sex   = RoleData.mainRole.sex,
        };
        string quick_save_path = Tools.SavePath("quick_save.data");

        byte[] byt3 = Tools.SerializeObject(save);
        Tools.WriteAllBytes(quick_save_path, byt3);


        MessageTips.Message(17);
    }
Example #3
0
    public void OnQuickSave(InputAction.CallbackContext context)
    {
        if (context.ReadValue <float>() <= 0f)
        {
            return;
        }

        // event is fired twice in the same frame
        if (m_QuickSaveFrame == Time.frameCount)
        {
            return;
        }
        m_QuickSaveFrame = Time.frameCount;

        QuickSave?.Invoke();
    }
Example #4
0
    public static void NewGame(RoleData roleData)
    {
        MainUI.HideAll();

        progress = 0;
        string game_path = Tools.SavePath("game.data");
        int    save_id   = GameData.instance.save_id;

        GameData.instance = new GameData();
        GameData.instance.NewGame(save_id);

        roleData.UpdateAttr();
        GameData.instance.SaveGame();
        byte[] byt2 = Tools.SerializeObject(GameData.instance);
        Tools.WriteAllBytes(game_path, byt2);
        progress = 50;



        string main_role_path = Tools.SavePath("main_role.data");

        roleData.SaveGame();
        byte[] byt = Tools.SerializeObject(roleData);
        Tools.WriteAllBytes(main_role_path, byt);



        QuickSave save = new QuickSave()
        {
            time  = GameData.instance.GetGameData(GlobalAttribute.time),
            name  = roleData.name,
            level = roleData.GetAttr(RoleAttribute.level),
            sex   = roleData.sex,
        };
        string quick_save_path = Tools.SavePath("quick_save.data");

        byte[] byt3 = Tools.SerializeObject(save);
        Tools.WriteAllBytes(quick_save_path, byt3);



        progress = 100;

        SaveData.ReadGame(save_id);
    }