Exemplo n.º 1
0
    /// <summary>
    /// ボスのパラメータを格納
    /// </summary>
    private static void BossData(CharaDataSet charaDataSet, int rowIdx, ICell valueCell)
    {
        BossData bossData = new BossData();

        if (valueCell.CellType == CellType.String)
        {
            string posCsv = valueCell.StringCellValue;
            if (!posCsv.Contains(","))
            {
                return;
            }

            string[] posArray = posCsv.Split(',');
            string   posx     = posArray[0].Replace("(", "");
            string   posy     = posArray[1].Replace(")", "");
            float    x        = float.Parse(posx);
            float    y        = float.Parse(posy);
            Vector2  pos      = new Vector2(x, y);
            bossData.translate_positions.Add(pos);
        }
        else
        {
            bossData.param = (float)valueCell.NumericCellValue;
        }

        charaDataSet.BossAdd(bossData);
    }
Exemplo n.º 2
0
    /// <summary>
    /// プレイヤーのパラメータを格納
    /// </summary>
    private static void PlayerData(CharaDataSet charaDataSet, int rowIdx, ICell valueCell)
    {
        PlayerData charaData = new PlayerData();

        charaData.param = (float)valueCell.NumericCellValue;

        charaDataSet.PlayerAdd(charaData);
    }
Exemplo n.º 3
0
    static CharaData AddToAsset(CharaDataSet _dataSet, Transform _chara)
    {
        CharaData data = new CharaData();

        data.m_name = _chara.name;
        data.m_hp = Random.Range(0, 100);
        data.m_position = new Vector3(_chara.position.x, _chara.position.y, _chara.position.z);

        _dataSet.list.Add(data);

        return data;
    }
Exemplo n.º 4
0
    /// <summary>
    /// 指定したデータを設定
    /// </summary>
    /// <param name="i"></param>
    /// <param name="rowIdx"></param>
    /// <param name="valueCell"></param>
    /// <returns></returns>
    private static void SetData(int i, CharaDataSet charaDataSet, int rowIdx, ICell valueCell)
    {
        switch (i)
        {
        case 0:
            PlayerData(charaDataSet, rowIdx, valueCell);
            break;

        case 1:
            BossData(charaDataSet, rowIdx, valueCell);
            break;
        }
    }
Exemplo n.º 5
0
    public static void Import(string file, int num)
    {
        if (file.EndsWith(".xls"))
        {
            string asset_path = "Assets/Data/Asset/" + Path.GetFileNameWithoutExtension(file) + ".asset";

            using (FileStream fs = new FileStream(file, FileMode.Open, FileAccess.Read, FileShare.ReadWrite))
            {
                CharaDataSet charaDataSet = AssetDatabase.LoadAssetAtPath(asset_path, typeof(CharaDataSet)) as CharaDataSet;
                if (charaDataSet == null)
                {
                    charaDataSet = ScriptableObject.CreateInstance <CharaDataSet>();
                    AssetDatabase.CreateAsset(charaDataSet, asset_path);
                }
                charaDataSet.Clear();

                IWorkbook book     = new HSSFWorkbook(fs);
                int       sheetNum = book.NumberOfSheets;
                for (int i = 0; i < sheetNum; ++i)
                {
                    ISheet sheet = book.GetSheetAt(i);

                    int firstRow = sheet.FirstRowNum;
                    int lastRow  = sheet.LastRowNum;

                    for (int rowIdx = firstRow + 1; rowIdx <= lastRow; ++rowIdx)
                    {
                        IRow row = sheet.GetRow(rowIdx);
                        if (row == null)
                        {
                            continue;
                        }

                        int cellIdx = 2;

                        ICell valueCell = row.GetCell(cellIdx);

                        SetData(num, charaDataSet, rowIdx, valueCell);
                    }
                }

                //データ更新
                ScriptableObject obj = AssetDatabase.LoadAssetAtPath(asset_path, typeof(ScriptableObject)) as ScriptableObject;
                EditorUtility.SetDirty(obj);
            }
        }
    }