NScumm.Sword1.ResMan.ResHandle C# (CSharp) Метод

ResHandle() приватный Метод

private ResHandle ( uint id ) : MemHandle
id uint
Результат MemHandle
        private MemHandle ResHandle(uint id)
        {
            if ((id >> 16) == 0x0405)
                id = _srIdList[id & 0xFFFF];
            byte cluster = (byte)((id >> 24) - 1);
            byte group = (byte)(id >> 16);

            // There is a known case of reading beyond array boundaries when trying to use
            // portuguese subtitles (cluster file 2, group 6) with a version that does not
            // contain subtitles for this languages (i.e. has only 6 languages and not 7).
            if (cluster >= _prj.noClu || group >= _prj.clu[cluster].noGrp)
                return null;

            return _prj.clu[cluster].grp[group].resHandle[id & 0xFFFF];
        }