public static MaterialBase GetItem(MaterialType type)
    {
        TableMaterialData data = Array.Find(Table, i => i.Mtype == type);

        MaterialBase item = new MaterialBase();

        item.Initialize();
        AttachData(item, data, false);
        return(item);
    }
    public static MaterialBase GetItem(long objNo, bool isRandomValue)
    {
        TableMaterialData data = Array.Find(Table, i => i.ObjNo == objNo);
        MaterialBase      item = new MaterialBase();

        item.Initialize();
        AttachData(item, data, isRandomValue);

        return(item);
    }
    public static List <MaterialBase> GetItems(MaterialType type)
    {
        TableMaterialData[] datas = Array.FindAll(Table, i => i.Mtype == type);

        List <MaterialBase> list = new List <MaterialBase>();

        foreach (TableMaterialData data in datas)
        {
            MaterialBase item = new MaterialBase();
            item.Initialize();
            AttachData(item, data, false);

            list.Add(item);
        }

        return(list);
    }