Esempio n. 1
0
    public void LoadMapInfo()
    {
        mapInfoList.Clear();
        if (Directory.Exists(FileSystemPath + "/StageInfo") == false)
        {
            Directory.CreateDirectory(FileSystemPath + "/StageInfo");
        }

        if (File.Exists(FileSystemPath + "/StageInfo/StageInfo.List") == false)
        {
            ListMapStruct stageInfo = new ListMapStruct();

            stageInfo.isLock        = false;
            stageInfo.maxScore      = 0;
            stageInfo.maxTotalScore = 1;
            stageInfo.stageNumber   = 1;
            mapInfoList.Add(stageInfo);



            Save_Root("StageList");
            Save_Child("Count");
            Save_Element("StageCount", 1 + "");
            for (int i = 0; i < mapInfoList.Count; ++i)
            {
                Save_Child("StageInfo_" + i);
                Save_Element("stageNumber", mapInfoList[i].stageNumber + "");
                Save_Element("maxTotalScore", mapInfoList[i].maxTotalScore + "");
                Save_Element("maxScore", mapInfoList[i].maxScore + "");
                Save_Element("isLock", mapInfoList[i].isLock + "");
            }
            Save_File(FileSystemPath + "/StageInfo/StageInfo.List");
        }
        else
        {
            Load_File(FileSystemPath + "/StageInfo/StageInfo.List");
            Load_Nodes("StageList/Count");
            int Count = int.Parse(Load_Data("StageCount"));
            for (int i = 0; i < Count; ++i)
            {
                ListMapStruct stageInfo = new ListMapStruct();
                Load_Nodes("StageList/StageInfo_" + i);
                stageInfo.stageNumber   = int.Parse(Load_Data("stageNumber"));
                stageInfo.maxTotalScore = float.Parse(Load_Data("maxTotalScore"));
                stageInfo.maxScore      = int.Parse(Load_Data("maxScore"));
                stageInfo.isLock        = bool.Parse(Load_Data("isLock"));
                mapInfoList.Add(stageInfo);
            }
        }
    }
Esempio n. 2
0
    public void SaveMapInfo(ListMapStruct Info)
    {
        if (Directory.Exists(FileSystemPath + "/StageInfo") == false)
        {
            Directory.CreateDirectory(FileSystemPath + "/StageInfo");
        }


        LoadMapInfo();
        for (int i = 0; i < mapInfoList.Count; ++i)
        {
            if (mapInfoList[i].stageNumber == Info.stageNumber)
            {
                if (mapInfoList[i].maxScore < Info.maxScore)
                {
                    mapInfoList[i].maxScore = Info.maxScore;
                }

                mapInfoList[i].maxTotalScore = Info.maxTotalScore;

                break;
            }
        }
        int nextStageNumber = Info.stageNumber + 1;

        if (mapInfoList.Count < nextStageNumber)
        {
            ListMapStruct stageInfo = new ListMapStruct();
            stageInfo.isLock      = false;
            stageInfo.maxScore    = 0;
            stageInfo.stageNumber = nextStageNumber;
            mapInfoList.Add(stageInfo);
        }



        Save_Root("StageList");
        Save_Child("Count");
        Save_Element("StageCount", mapInfoList.Count + "");
        for (int i = 0; i < mapInfoList.Count; ++i)
        {
            Save_Child("StageInfo_" + i);
            Save_Element("stageNumber", mapInfoList[i].stageNumber + "");
            Save_Element("maxTotalScore", mapInfoList[i].maxTotalScore + "");
            Save_Element("maxScore", mapInfoList[i].maxScore + "");
            Save_Element("isLock", mapInfoList[i].isLock + "");
        }
        Save_File(FileSystemPath + "/StageInfo/StageInfo.List");
    }