예제 #1
0
    public override bool Load()
    {
        MineralTable targetData = target as MineralTable;

        var    client = new DatabaseClient("", "");
        string error  = string.Empty;
        var    db     = client.GetDatabase(targetData.SheetName, ref error);
        var    table  = db.GetTable <MineralTableData>(targetData.WorksheetName) ?? db.CreateTable <MineralTableData>(targetData.WorksheetName);

        List <MineralTableData> myDataList = new List <MineralTableData>();

        var all = table.FindAll();

        foreach (var elem in all)
        {
            MineralTableData data = new MineralTableData();

            data = Cloner.DeepCopy <MineralTableData>(elem.Element);
            myDataList.Add(data);
        }

        targetData.dataArray = myDataList.ToArray();

        EditorUtility.SetDirty(targetData);
        AssetDatabase.SaveAssets();

        return(true);
    }
예제 #2
0
    public virtual void InitMineral(string name)
    {
        MineralTableData data = MineralManager.Instance.GetMineralData(name);

        mMineralName = data.Name;
        mMineralBase = data.Basemineral;
        mHardness    = data.Hardness;
        ani          = gameObject.GetComponent <Animator>();

        spriteObj = gameObject.transform.GetChild(0).gameObject;
        sprite    = spriteObj.GetComponent <SpriteRenderer>();
        col       = GetComponent <BoxCollider2D>();
    }
예제 #3
0
    public MineralTableData GetMineralData(string name)
    {
        MineralTableData data = null;

        if (m_MineralTableData == null)
        {
            LoadMineralTable();
        }
        for (int i = 0; i < m_MineralTableData.dataArray.Length; i++)
        {
            if (m_MineralTableData.dataArray[i].Name == name)
            {
                data = m_MineralTableData.dataArray[i];
                return(data);
            }
        }
        return(null);
    }