NScumm.Scumm.Audio.IMuse.IMuseInternal.IsMT32 C# (CSharp) Метод

IsMT32() защищенный Метод

protected IsMT32 ( int sound ) : bool
sound int
Результат bool
        internal protected bool IsMT32(int sound)
        {
            var ptr = ScummEngine.Instance.ResourceManager.GetSound(ScummEngine.Instance.Sound.MusicType, sound);
            if (ptr == null)
                return false;

            var tag = System.Text.Encoding.UTF8.GetString(ptr, 0, 4);
            switch (tag)
            {
                case "ADL ":
                case "ASFX": // Special AD class for old AdLib sound effects
                case "SPK ":
                    return false;

                case "AMI ":
                case "ROL ":
                    return true;

                case "MAC ": // Occurs in the Mac version of FOA and MI2
                    return false;

                case "GMD ":
                    return false;

                case "MIDI": // Occurs in Sam & Max
                    // HE games use Roland music
                    if (ptr[8] == 'H' && ptr[9] == 'S')
                        return true;
                    else
                        return false;
            }

            // Old style 'RO' has equivalent properties to 'ROL'
            if (System.Text.Encoding.UTF8.GetString(ptr, 0, 2) == "RO")
                return true;
            // Euphony tracks show as 'SO' and have equivalent properties to 'ADL'
            if (System.Text.Encoding.UTF8.GetString(ptr, 4, 2) == "SO")
                return false;

//            Console.Error.WriteLine("Unknown music type: '{0}'", tag);

            return false;
        }