コード例 #1
0
        public void GenerateTreeByName(VMContext context)
        {
            TreeByName = new Dictionary <string,VMTreeByNameTableEntry>();

            var bhavs = Object.Resource.List <BHAV>();

            if (bhavs != null)
            {
                foreach (var bhav in bhavs)
                {
                    string name = bhav.ChunkLabel;
                    for (var i = 0; i < name.Length; i++)
                    {
                        if (name[i] == 0)
                        {
                            name = name.Substring(0,i);
                            break;
                        }
                    }
                    TreeByName.Add(name,new VMTreeByNameTableEntry(bhav,Object));
                }
            }
            //also add semiglobals

            if (SemiGlobal != null)
            {
                bhavs = SemiGlobal.List <BHAV>();
                if (bhavs != null)
                {
                    foreach (var bhav in bhavs)
                    {
                        string name = bhav.ChunkLabel;
                        for (var i = 0; i < name.Length; i++)
                        {
                            if (name[i] == 0)
                            {
                                name = name.Substring(0,i);
                                break;
                            }
                        }
                        if (!TreeByName.ContainsKey(name))
                        {
                            TreeByName.Add(name,new VMTreeByNameTableEntry(bhav,Object));
                        }
                    }
                }
            }
        }
コード例 #2
0
ファイル: EditorScope.cs プロジェクト: wishiwashi-hack/FreeSO
        public List <T> GetAllResource <T>(ScopeSource source)
        {
            switch (source)
            {
            case ScopeSource.Private:
                return(Object.Resource.List <T>());

            case ScopeSource.SemiGlobal:
                return((SemiGlobal == null) ? new List <T>():SemiGlobal.List <T>());

            case ScopeSource.Global:
                return(Globals.Resource.List <T>());

            default:
                return(new List <T>());
            }
        }