示例#1
0
        public override Buffer GetMusic(uint index)
        {
            switch (MusicDataUsage)
            {
            case DataUsage.ForceAmiga:
                if (!amigaMusicOk)
                {
                    throw new ExceptionFreeserf(ErrorSystemType.Data, "Amiga music data not available.");
                }
                return(amiga.GetMusic(index));

            case DataUsage.ForceDos:
                if (!dosOk)
                {
                    throw new ExceptionFreeserf(ErrorSystemType.Data, "DOS music data not available.");
                }
                return(dos.GetMusic(index));

            case DataUsage.PreferAmiga:
            default:
                if (amigaMusicOk)
                {
                    return(amiga.GetMusic(index));
                }
                else
                {
                    return(dos.GetMusic(index));
                }

            case DataUsage.PreferDos:
                if (dosOk)
                {
                    return(dos.GetMusic(index));
                }
                else
                {
                    return(amiga.GetMusic(index));
                }
            }
        }