Exemplo n.º 1
0
        private void LoadGroup(AnimeGroupList.SEX sex, bool isAnim)
        {
            Dictionary <int, Info.GroupInfo> dictionary;
            string key;

            if (sex != null)
            {
                if (sex != AnimeGroupList.SEX.Female)
                {
                    return;
                }

                dictionary = info.dicAGroupCategory;
                key        = "FemaleAnimeGroup_";
            }
            else
            {
                dictionary = info.dicAGroupCategory;
                key        = "MaleAnimeGroup_";
            }

            if (!isAnim)
            {
                dictionary = info.dicVoiceGroupCategory;
                key        = "VoiceGroup_";
            }

            Dictionary <string, List <string[]> > dictionary2 = dicAllFileArgs[key];

            if (dictionary2 == null)
            {
                return;
            }

            foreach (string key2 in dictionary2.Keys)
            {
                foreach (string[] array in dictionary2[key2])
                {
                    if (int.TryParse(array[0], out int num))
                    {
                        int key3 = num + groupOffset;
                        if (dictionary.ContainsKey(key3))
                        {
                            if (force)
                            {
                                dictionary[key3].name = groupSuffix + array[1];
                            }
                        }
                        else
                        {
                            dictionary.Add(key3, new Info.GroupInfo
                            {
                                name        = groupSuffix + array[1],
                                dicCategory = new Dictionary <int, string>()
                            });
                        }
                    }
                }
            }
        }
Exemplo n.º 2
0
        private void LoadCategory(AnimeGroupList.SEX sex, bool isAnim)
        {
            Dictionary <int, Info.GroupInfo> dictionary;
            string text;

            if (sex != null)
            {
                if (sex != AnimeGroupList.SEX.Female)
                {
                    return;
                }

                dictionary = info.dicAGroupCategory;
                text       = "FemaleAnimeCategory_";
            }
            else
            {
                dictionary = info.dicAGroupCategory;
                text       = "MaleAnimeCategory_";
            }

            if (!isAnim)
            {
                dictionary = info.dicVoiceGroupCategory;
                text       = "VoiceCategory_";
            }

            Dictionary <string, List <string[]> > dictionary2 = dicAllFileArgs[text];

            if (dictionary2 == null)
            {
                return;
            }

            foreach (string text2 in dictionary2.Keys)
            {
                if (int.TryParse(text2.Replace(text, "").Split(new string[] { "_" }, StringSplitOptions.None)[0], out int num))
                {
                    int key = num + groupOffset;
                    foreach (string[] array in dictionary2[text2])
                    {
                        if (int.TryParse(array[0], out int key2) && dictionary.ContainsKey(key))
                        {
                            if (dictionary[key].dicCategory.ContainsKey(key2))
                            {
                                if (force)
                                {
                                    dictionary[key].dicCategory[key2] = array[1];
                                }
                            }
                            else
                            {
                                dictionary[key].dicCategory.Add(key2, array[1]);
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 3
0
        public void InitList(AnimeGroupList.SEX _sex)
        {
            if (this.isInit)
            {
                return;
            }
            int childCount = this.transformRoot.get_childCount();

            for (int index = 0; index < childCount; ++index)
            {
                Object.Destroy((Object)((Component)this.transformRoot.GetChild(index)).get_gameObject());
            }
            this.transformRoot.DetachChildren();
            this.scrollRect.set_verticalNormalizedPosition(1f);
            this.dicNode = new Dictionary <int, Image>();
            this.sex     = _sex;
            foreach (KeyValuePair <int, Info.GroupInfo> keyValuePair in (IEnumerable <KeyValuePair <int, Info.GroupInfo> >)Singleton <Info> .Instance.dicAGroupCategory.OrderBy <KeyValuePair <int, Info.GroupInfo>, int>((Func <KeyValuePair <int, Info.GroupInfo>, int>)(_v => _v.Value.sort)))
            {
                // ISSUE: object of a compiler-generated type is created
                // ISSUE: variable of a compiler-generated type
                AnimeGroupList.\u003CInitList\u003Ec__AnonStorey0 listCAnonStorey0 = new AnimeGroupList.\u003CInitList\u003Ec__AnonStorey0();
                // ISSUE: reference to a compiler-generated field
                listCAnonStorey0.\u0024this = this;
                GameObject gameObject = (GameObject)Object.Instantiate <GameObject>((M0)this.objectPrefab);
                if (!gameObject.get_activeSelf())
                {
                    gameObject.SetActive(true);
                }
                gameObject.get_transform().SetParent(this.transformRoot, false);
                ListNode component = (ListNode)gameObject.GetComponent <ListNode>();
                // ISSUE: reference to a compiler-generated field
                listCAnonStorey0.no = keyValuePair.Key;
                // ISSUE: method pointer
                component.AddActionToButton(new UnityAction((object)listCAnonStorey0, __methodptr(\u003C\u003Em__0)));
                component.text = keyValuePair.Value.name;
                this.dicNode.Add(keyValuePair.Key, component.image);
            }
            this.select = -1;
            if (!((Component)this).get_gameObject().get_activeSelf())
            {
                ((Component)this).get_gameObject().SetActive(true);
            }
            this.animeCategoryList.active = false;
            this.animeList.active         = false;
            this.isInit = true;
        }
Exemplo n.º 4
0
 public void InitList(AnimeGroupList.SEX _sex, int _group, int _category)
 {
     this.Init();
     this.listNodePool.Return();
     this.scrollRect.set_verticalNormalizedPosition(1f);
     this.dicNode.Clear();
     foreach (KeyValuePair <int, Info.AnimeLoadInfo> keyValuePair in Singleton <Info> .Instance.dicAnimeLoadInfo[_group][_category])
     {
         // ISSUE: object of a compiler-generated type is created
         // ISSUE: method pointer
         Studio.Anime.ListNode listNode = this.listNodePool.Rent(keyValuePair.Value.name, new UnityAction((object)new AnimeList.\u003CInitList\u003Ec__AnonStorey0()
         {
             \u0024this = this,
             no         = keyValuePair.Key
         }, __methodptr(\u003C\u003Em__0)));
         this.dicNode.Add(keyValuePair.Key, listNode);
     }
     this.sex      = _sex;
     this.group    = _group;
     this.category = _category;
     this.select   = -1;
     this.active   = true;
 }
Exemplo n.º 5
0
 public void InitList(AnimeGroupList.SEX _sex, int _group)
 {
     this.Init();
     this.listNodePool.Return();
     this.scrollRect.set_verticalNormalizedPosition(1f);
     this.dicNode.Clear();
     foreach (KeyValuePair <int, Info.CategoryInfo> keyValuePair in (IEnumerable <KeyValuePair <int, Info.CategoryInfo> >)Singleton <Info> .Instance.dicAGroupCategory[_group].dicCategory.OrderBy <KeyValuePair <int, Info.CategoryInfo>, int>((Func <KeyValuePair <int, Info.CategoryInfo>, int>)(v => v.Value.sort)))
     {
         // ISSUE: object of a compiler-generated type is created
         // ISSUE: method pointer
         Studio.Anime.ListNode listNode = this.listNodePool.Rent(keyValuePair.Value.name, new UnityAction((object)new AnimeCategoryList.\u003CInitList\u003Ec__AnonStorey0()
         {
             \u0024this = this,
             no         = keyValuePair.Key
         }, __methodptr(\u003C\u003Em__0)));
         this.dicNode.Add(keyValuePair.Key, listNode);
     }
     this.select           = -1;
     this.group            = _group;
     this.sex              = _sex;
     this.active           = true;
     this.animeList.active = false;
 }
Exemplo n.º 6
0
        private void LoadAnim(AnimeGroupList.SEX sex, bool isH)
        {
            Dictionary <int, Dictionary <int, Dictionary <int, Info.AnimeLoadInfo> > > dicInfo;
            Dictionary <string, List <string[]> > dicArgs;
            int    index;
            string pattern;

            switch (sex)
            {
            case AnimeGroupList.SEX.Female:
                dicInfo = info.dicFemaleAnimeLoadInfo;
                if (isH)
                {
                    pattern = fileSuffixHAnimF;
                }
                else
                {
                    pattern = fileSuffixAnimF;
                }
                break;

            case AnimeGroupList.SEX.Male:
                dicInfo = info.dicMaleAnimeLoadInfo;
                if (isH)
                {
                    pattern = fileSuffixHAnimM;
                }
                else
                {
                    pattern = fileSuffixAnimM;
                }
                break;

            default:
                return;
            }

            dicArgs = dicAllFileArgs[pattern];
            if (dicArgs == null)
            {
                return;
            }

            foreach (string fileName in dicArgs.Keys)
            {
                // 00_00_00 のはず。
                //または、各行からの方が良いか? <- でも無駄が多くなる?
                string[] ss = fileName.Replace(pattern, "").Split(new string[] { "_" }, 0);

                if (int.TryParse(ss[0], out int baseIndex) && int.TryParse(ss[1], out int catIndex))
                {
                    index = baseIndex + groupOffset;

                    foreach (string[] args in dicArgs[fileName])
                    {
                        //アニメの場合、グループもカテゴリーもインデックスがなければ追加
                        if (int.TryParse(args[0], out int clipIndex))
                        {
                            if (!dicInfo.ContainsKey(index))
                            {
                                dicInfo.Add(index, new Dictionary <int, Dictionary <int, Info.AnimeLoadInfo> >());
                            }
                            if (!dicInfo[index].ContainsKey(catIndex))
                            {
                                dicInfo[index].Add(catIndex, new Dictionary <int, Info.AnimeLoadInfo>());
                            }

                            //アニメ情報入れる
                            //<0管理番号><1大きい項目><2中間項目><3表示名><4バンドルパス><5ファイル名><6クリップ名><7BreastLayerの有り無し><8揺れ制御左><9揺れ制御右><10><11アイテム有り無し><管理番号><バンドルパス><ファイル名><付ける場所><管理番号><バンドルパス><ファイル名><付ける場所>
                            Info.AnimeLoadInfo animInfo = null;
                            try
                            {
                                animInfo = new Info.AnimeLoadInfo()
                                {
                                    name          = args[3],
                                    bundlePath    = extDir + args[4],
                                    fileName      = args[5],
                                    clip          = args[6],
                                    isBreastLayer = args[7] == "True",
                                    isMotion      = true,
                                    isHAnime      = isH,
                                    isScale       = false
                                };
                            }
                            catch
                            {
                                animInfo = null;
                            }

                            if (dicInfo[index][catIndex].ContainsKey(clipIndex))
                            {
                                if (force)
                                {
                                    dicInfo[index][catIndex][clipIndex] = animInfo;
                                }
                            }
                            else
                            {
                                dicInfo[index][catIndex].Add(clipIndex, animInfo);
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 7
0
        private void LoadCategory(AnimeGroupList.SEX sex, bool isAnim)
        {
            Dictionary <int, Info.GroupInfo>      dicInfo;
            Dictionary <string, List <string[]> > dicArgs;
            int    index;
            string pattern;

            switch (sex)
            {
            case AnimeGroupList.SEX.Female:
                dicInfo = info.dicFAGroupCategory;
                pattern = fileSuffixCatF;
                break;

            case AnimeGroupList.SEX.Male:
                dicInfo = info.dicMAGroupCategory;
                pattern = fileSuffixCatM;
                break;

            default:
                return;
            }

            if (!isAnim)
            {
                dicInfo = info.dicVoiceGroupCategory;
                pattern = fileSuffixVoiceCategory;
            }

            dicArgs = dicAllFileArgs[pattern];
            if (dicArgs == null)
            {
                return;
            }

            foreach (string fileName in dicArgs.Keys)
            {
                // 00_00 のはず。
                string[] ss = fileName.Replace(pattern, "").Split(new string[] { "_" }, 0);

                if (int.TryParse(ss[0], out int baseIndex))
                {
                    index = baseIndex + groupOffset;

                    foreach (string[] args in dicArgs[fileName])
                    {
                        if (int.TryParse(args[0], out int catIndex))
                        {
                            if (dicInfo.ContainsKey(index))
                            {
                                if (dicInfo[index].dicCategory.ContainsKey(catIndex))
                                {
                                    if (force)
                                    {
                                        dicInfo[index].dicCategory[catIndex] = args[1];
                                    }
                                }
                                else
                                {
                                    dicInfo[index].dicCategory.Add(catIndex, args[1]);
                                }
                            }
                            else
                            {
                                //グループが先に用意されてない場合 ひとまず無視
                            }
                        }
                    }
                }
            }
        }
Exemplo n.º 8
0
        //Import to Studio Dictionary

        private void LoadGroup(AnimeGroupList.SEX sex, bool isAnim)
        {
            Dictionary <int, Info.GroupInfo>      dicInfo;
            Dictionary <string, List <string[]> > dicArgs;
            int    index;
            string pattern;

            switch (sex)
            {
            case AnimeGroupList.SEX.Female:
                dicInfo = info.dicFAGroupCategory;
                pattern = fileSuffixGrpF;
                break;

            case AnimeGroupList.SEX.Male:
                dicInfo = info.dicMAGroupCategory;
                pattern = fileSuffixGrpM;
                break;

            default:
                return;
            }

            if (!isAnim)
            {
                dicInfo = info.dicVoiceGroupCategory;
                pattern = fileSuffixVoiceGroup;
            }

            dicArgs = dicAllFileArgs[pattern];

            if (dicArgs == null)
            {
                return;
            }

            foreach (string fileName in dicArgs.Keys)
            {
                foreach (string[] args in dicArgs[fileName])
                {
                    if (int.TryParse(args[0], out int baseIndex))
                    {
                        index = baseIndex + groupOffset;
                        if (dicInfo.ContainsKey(index))
                        {
                            if (force)
                            {
                                dicInfo[index].name = groupSuffix + args[1];
                            }
                        }
                        else
                        {
                            dicInfo.Add(index, new Info.GroupInfo()
                            {
                                name        = groupSuffix + args[1],
                                dicCategory = new Dictionary <int, string>()
                            });
                        }
                    }
                }
            }
        }
Exemplo n.º 9
0
        private void LoadAnim(AnimeGroupList.SEX sex, bool isH)
        {
            Dictionary <int, Dictionary <int, Dictionary <int, Info.AnimeLoadInfo> > > dictionary;
            string text;

            if (sex != null)
            {
                if (sex != AnimeGroupList.SEX.Female)
                {
                    return;
                }

                dictionary = info.dicAnimeLoadInfo;
                text       = isH ? "FemaleHAnime_" : "FemaleAnime_";
            }
            else
            {
                dictionary = info.dicAnimeLoadInfo;
                text       = isH ? "MaleHAnime_" : "MaleAnime_";
            }

            Dictionary <string, List <string[]> > dictionary2 = dicAllFileArgs[text];

            if (dictionary2 == null)
            {
                return;
            }

            foreach (string text2 in dictionary2.Keys)
            {
                string[] array = text2.Replace(text, "").Split(new string[] { "_" }, StringSplitOptions.None);

                if (int.TryParse(array[0], out int num) && int.TryParse(array[1], out int key))
                {
                    int key2 = num + groupOffset;
                    foreach (string[] array2 in dictionary2[text2])
                    {
                        if (int.TryParse(array2[0], out int key3))
                        {
                            if (!dictionary.ContainsKey(key2))
                            {
                                dictionary.Add(key2, new Dictionary <int, Dictionary <int, Info.AnimeLoadInfo> >());
                            }

                            if (!dictionary[key2].ContainsKey(key))
                            {
                                dictionary[key2].Add(key, new Dictionary <int, Info.AnimeLoadInfo>());
                            }

                            Info.AnimeLoadInfo value = null;
                            try
                            {
                                value = new Info.AnimeLoadInfo
                                {
                                    name       = array2[3],
                                    bundlePath = Path.Combine(extDir, array2[4]),
                                    fileName   = array2[5],
                                    clip       = array2[6],
                                    //isBreastLayer = (array2[7] == "True"),
                                    //isMotion = true,
                                    //isHAnime = isH,
                                    //isScale = false
                                };
                            }
                            catch
                            {
                                value = null;
                            }

                            if (dictionary[key2][key].ContainsKey(key3))
                            {
                                if (force)
                                {
                                    dictionary[key2][key][key3] = value;
                                }
                            }
                            else
                            {
                                dictionary[key2][key].Add(key3, value);
                            }
                        }
                    }
                }
            }
        }