Exemple #1
0
    public void setTrapData(string name, int level, out float atk, out int count)
    {
        TrapStatusData Data = new TrapStatusData();

        _CSV.TrapDataValue(name, level, ref Data);
        atk   = Data.atk;
        count = Data.count;
    }
Exemple #2
0
    public int getTrapInstallCount(string name)
    {
        int level = 0;

        level = LoadLevelData(name);

        TrapStatusData Data = new TrapStatusData();

        _CSV.TrapDataValue(name, level, ref Data);

        return(Data.installCount);
    }
    public bool TrapDataValue(string name, int level, ref TrapStatusData data)
    {

        if (trap_datas.Count > 0 && trap_datas.ContainsKey(name))
        {
            try
            {
                data = trap_datas[name][level];
            }
            catch (IndexOutOfRangeException IORE)
            {
                data = trap_datas[name][3];
            }
            return true;
        }
        else
        {
            return false;
        }
    }
    void ReadAndParse()
    {
        monster_dataFile = Resources.Load("006_Database/CSVFileData/Monster") as TextAsset;
        string dataText = monster_dataFile.text;

        string[] lines = dataText.Split(lineSperator);

        string name = "", type = "";
        int levelRange = 0;
        StatusData[] CharacterData;


        #region Monster Data

		for (int i = 0; i < lines.Length - 1; i++)
        {
            string[] fields = lines[i].Split(fieldSeperator);
            name = fields[0];

            if (GDB.isNoneLevelData)
            {
				GDB.getLevelDB.createLevelData(name);
            }

            int checkRange = 1;
            while (fields[++checkRange] != "" && checkRange < fields.Length - 1) ;
            levelRange = checkRange / 5;
            CharacterData = new StatusData[levelRange];
            for (int fieldIndex = 1; fieldIndex < checkRange; fieldIndex += 5)
            {
                int index = (fieldIndex - 1) / 5;
                CharacterData[index] = new StatusData();
                CharacterData[index].hp = float.Parse(fields[fieldIndex + 0]);
                CharacterData[index].atk = float.Parse(fields[fieldIndex + 1]);
                CharacterData[index].range = int.Parse(fields[fieldIndex + 2]);
                CharacterData[index].speed = float.Parse(fields[fieldIndex + 3]);
                CharacterData[index].size = int.Parse(fields[fieldIndex + 4]);
            }
            monster_datas.Add(name, CharacterData);
        }

		if (GDB.isNoneLevelData)
		{
			foreach (string ObjectNames  in createObjectNames) {
				GDB.getLevelDB.LevelUpData (ObjectNames);
			}
		}


        #endregion

        #region Trap
        monster_dataFile = Resources.Load("006_Database/CSVFileData/Trap") as TextAsset;
        dataText = monster_dataFile.text;
        TrapStatusData[] TrapDatas;
        lines = dataText.Split(lineSperator);

        for (int i = 0; i < lines.Length - 1; i++)
        {
            string[] fields = lines[i].Split(fieldSeperator);
            name = fields[0];
            int checkRange = 1;

            if (GDB.isNoneLevelData)
            {
				GDB.getLevelDB.createLevelData(name);
            }

            while (fields[++checkRange] != "" && checkRange < fields.Length - 1) ;

            levelRange = checkRange / 3;

            TrapDatas = new TrapStatusData[levelRange];

            for (int fieldIndex = 1; fieldIndex < checkRange; fieldIndex += 3)
            {
                int index = (fieldIndex - 1) / 3;
                TrapDatas[index] = new TrapStatusData();
                TrapDatas[index].atk = float.Parse(fields[fieldIndex + 0].ToString());
                TrapDatas[index].count = int.Parse(fields[fieldIndex + 1].ToString());
                TrapDatas[index].installCount = int.Parse(fields[fieldIndex + 2].ToString());
            }
            trap_datas.Add(name, TrapDatas);
        }

        #endregion

        #region Price

        price_dataFile = Resources.Load("006_Database/CSVFileData/Price") as TextAsset;
        dataText = price_dataFile.text;
        lines = dataText.Split(lineSperator);

        int[] priceArray;
        for (int i = 0; i < lines.Length; i++)
        {
            string[] fields = lines[i].Split(fieldSeperator);
            name = fields[0];
            int checkRange = 1;
            while (fields[++checkRange] != "" && checkRange < fields.Length - 1) ;
            priceArray = new int[checkRange];
            TrapDatas = new TrapStatusData[levelRange];

            for (int fieldIndex = 1; fieldIndex < checkRange; fieldIndex++)
            {
                priceArray[fieldIndex - 1] = int.Parse(fields[fieldIndex]);
            }
            price_datas.Add(name, priceArray);
        }
        #endregion

        #region Trophy

        int tropy_list_count = 0;
        if ((tropy_list_count = GDB.getTropyDB.currentTropyListCount) == 0)
        {
            monster_dataFile = Resources.Load("006_Database/CSVFileData/Trophy") as TextAsset;
            dataText = monster_dataFile.text;

            lines = dataText.Split(lineSperator);

            for (int i = tropy_list_count + 1; i < lines.Length; i++)
            {
                string[] fields = lines[i].Split(fieldSeperator);

                // 0 : index
                // 1 : Condition
                // 2 : Amount 
                // 3 : spriteName
				GDB.getTropyDB.CreateTropyData(int.Parse(fields[0]), fields[3], fields[1], int.Parse(fields[2]));
            }
			Debug.Log(GDB.getTropyDB.ToString());
        }
        #endregion;


		monster_dataFile = trap_dataFile = price_dataFile = null;
        isReady = true;
    }