示例#1
0
    public void PlayMusic(string filename, bool repeat = false, byte volume = Byte.MaxValue)
    {
        if (Disabled)
        {
            return;
        }

//		var path = $"Assets/StreamingAssets/Tracker/{filename}";
        var path = GetDataPath("Tracker/" + filename);

        Logger.Log($"Loading track {filename} from {path}", Category.SunVox);
        int loadResult = SunVox.sv_load((int)Slot.Music, path);

        if (loadResult == 0)
        {
            SunVox.sv_stop((int)Slot.Music);
            SunVox.sv_set_autostop((int)Slot.Music, repeat ? 0 : 1);
            SunVox.sv_volume((int)Slot.Music, volume);
            SunVox.sv_play_from_beginning((int)Slot.Music);
        }
        else
        {
            Logger.LogWarning($"Music load error: {path}", Category.SunVox);
        }
    }
示例#2
0
    private void InitAnnounce()
    {
        SunVox.sv_open_slot((int)Slot.Announce);

        Logger.LogTrace("Loading Announce project from file", Category.SunVox);
//		var path = "Assets/StreamingAssets/announcement2.sunvox";
        var path = GetDataPath("announcement2.sunvox");

        if (SunVox.sv_load((int)Slot.Announce, path) == 0)
        {
//			log( "Loaded." );
        }
        else
        {
            Logger.LogWarning($"Announce project load error: {path}", Category.SunVox);
//			SunVox.sv_volume( (int)Slot.Announce, 256 );
        }
    }
示例#3
0
    private void Start()
    {
        log("-Press Space for toggle music-\n");

        try {
            int ver = SunVox.sv_init("0", 44100, 2, 0);
            if (ver >= 0)
            {
                int major  = (ver >> 16) & 255;
                int minor1 = (ver >> 8) & 255;
                int minor2 = (ver) & 255;
                log(String.Format("SunVox lib version: {0}.{1}.{2}", major, minor1, minor2));

                SunVox.sv_open_slot(0);

                log("Loading SunVox song from file...");
                var path = "Assets/StreamingAssets/test.sunvox"; // This path is correct only for standalone
                if (SunVox.sv_load(0, path) == 0)
                {
                    log("Loaded.");
                }
                else
                {
                    log("Load error.");
                    SunVox.sv_volume(0, 256);
                }

                SunVox.sv_play_from_beginning(0);
            }
            else
            {
                log("sv_init() error " + ver);
            }
        } catch (Exception e) {
            log("Exception: " + e);
        }
    }