예제 #1
0
파일: KCLCache.cs 프로젝트: awiebe/SM64DSe
        public static KCL GetKCL(string name)
        {
            if (m_Clsns.ContainsKey(name))
            {
                CachedKCL found = m_Clsns[name];
                found.m_References++;
                return(found.m_Clsn);
            }

            if (!Program.m_ROM.FileExists(name))
            {
                return(null);
            }
            NitroFile kclfile = Program.m_ROM.GetFileFromName(name);

            KCL clsn = new KCL(kclfile);

            CachedKCL ckcl = new CachedKCL();

            ckcl.m_Clsn       = clsn;
            ckcl.m_References = 1;
            m_Clsns.Add(name, ckcl);

            return(clsn);
        }
예제 #2
0
파일: KCLCache.cs 프로젝트: awiebe/SM64DSe
        public static void RemoveKCL(KCL clsn)
        {
            if (!m_Clsns.ContainsKey(clsn.m_File.m_Name))
            {
                return;
            }

            RemoveKCL(clsn.m_File.m_Name);
        }
예제 #3
0
        public void LoadKCL(NitroFile kcl)
        {
            m_KCL = new KCL(kcl);

            m_Planes = m_KCL.m_Planes;

            lbxPlanes.Items.Clear();

            for (int i = 0; i < m_Planes.Count; i++)
            {
                lbxPlanes.Items.Add("Plane " + i.ToString("00000"));
            }
        }
예제 #4
0
        public void LoadKCL(NitroFile kcl)
        {
            m_KCL = new KCL(kcl);

            m_Planes = m_KCL.m_Planes;

            lbxPlanes.Items.Clear();

            for (int i = 0; i < m_Planes.Count; i++)
            {
                lbxPlanes.Items.Add("Plane " + i.ToString("00000"));
            }

            LoadColours();
        }