/// <summary> /// ソート&フィルタ情報の設定 /// </summary> /// <param name="sortInfo"></param> public void SetUpSortData(LocalSaveSortInfo sortInfo) { ClearSortInfo(); ClearFilter(); //-------------------------------- // ソートの設定 //-------------------------------- if (sortInfo != null) { if (sortInfo.m_SortType == (int)MAINMENU_SORT_SEQ.SEQ_SORT_TYPE_FAVORITE_SORT) { // お好みソート if (sortInfo != null && sortInfo.m_FavoriteSorts != null) { // 使用中優先 if (sortInfo.m_FavoriteSortIsUsePriority) { AddSortInfo(SORT_PARAM.PARTY, SORT_ORDER.ASCENDING); } // ソート for (int i = 0; i < sortInfo.m_FavoriteSorts.Length; i++) { SORT_PARAM sortparam = SortUtil.GetSortParam((MAINMENU_SORT_SEQ)sortInfo.m_FavoriteSorts[i].m_SortType); if (sortparam == SORT_PARAM.NONE) { continue; } AddSortInfo(sortparam, (sortInfo.m_FavoriteSorts[i].m_IsAscOrder) ? SORT_ORDER.ASCENDING : SORT_ORDER.DESCENDING); } } } else if (sortInfo.m_SortType != (int)MAINMENU_SORT_SEQ.SEQ_SORT_TYPE_DEFAULT) { // 通常ソート SORT_PARAM sortparam = SortUtil.GetSortParam((MAINMENU_SORT_SEQ)sortInfo.m_SortType); if (sortparam != SORT_PARAM.NONE) { AddSortInfo(sortparam, (sortInfo.m_SortIsAscOrder) ? SORT_ORDER.ASCENDING : SORT_ORDER.DESCENDING); } } } //-------------------------------- // フィルタの設定 //-------------------------------- if (sortInfo != null) { // レア度 if (SortUtil.CheckFilterWorking(sortInfo.m_FilterRares)) { AddFilter <int>(SORT_PARAM.RARITY, sortInfo.m_FilterRares); } // 属性 if (SortUtil.CheckFilterWorking(sortInfo.m_FilterElements)) { AddFilter <int>(SORT_PARAM.ELEMENT, SortUtil.GetFilterNumElements(sortInfo.m_FilterElements)); } // 種族 if (SortUtil.CheckFilterWorking(sortInfo.m_FilterKinds)) { if (sortInfo.m_FilterIsIncludeKindsSub) { AddFilter <int>(new SORT_PARAM[] { SORT_PARAM.KIND, SORT_PARAM.SUB_KIND }, SortUtil.GetFilterNumKindss(sortInfo.m_FilterKinds)); } else { AddFilter <int>(SORT_PARAM.KIND, SortUtil.GetFilterNumKindss(sortInfo.m_FilterKinds)); } } } }