This wiki is out of date, use the continuation of this wiki instead

Set song volume

From FenixWiki

Revision as of 12:29, 30 July 2007 by G105b (Talk | contribs)
Jump to: navigation, search


Contents

Definition

INT set_song_volume ( <INT volume> )

Change the reproduction volume of the music track.

With this function, it is possible to set the background music to a different volume than the sound effects, etc.

Parameters

INT volume - New volume. (0 to 128).

Notes

This function changes the reproduction volume of the music track. The volume level can be set between 0 (silence) and 128 (original 100% volume of the track.

Example

program music_example;
global
    my_song;
    playing;
    paused;
    faded_in;
    v;
begin
    set_mode(640,480,16);
    
    my_song=load_song("beat.ogg");
    
    
    write(0,320,30,4,"Use the keyboard to control the music playback.");
    write(0,320,50,4,"Key [ENTER] starts / stops the song.");
    write(0,320,60,4,"Key [SPACE] pauses / resumes the song.");
    write(0,320,70,4,"Key [0] through key [9] changes the song volume.");
    write(0,320,80,4,"Key [F] fades the song in or out.");
    
    write(0,320,120,5,"Playing: ");
    write_int(0,320,120,3,&playing);
    
    write(0,320,140,5,"Paused: ");
    write_int(0,320,140,3,&paused);
    
    write(0,320,160,5,"Faded in: ");
    write_int(0,320,160,3,&faded_in);
    
    write(0,320,180,5,"Volume: ");
    write_int(0,320,180,3,&v);
    
    v=128;
    faded_in=true;


    repeat
        if(key(_enter))
            if(is_playing_song())
                stop_song();
                playing=false;
            else
                play_song(my_song,1);
                playing=true;
            end
            while(key(_enter))frame;end
        end
        
        if(key(_space))
            if(paused)
                paused=false;
                resume_song();
            else
                paused=true;
                pause_song();
            end
            while(key(_space))frame;end
        end
        
        if(key(_f))
            if(faded_in)
                faded_in=false;
                fade_music_off(100);
            else
                faded_in=true;
                fade_music_in(my_song,1,100);
            end
            while(key(_f))frame;end
        end
        
        if(key(_0))v=0;end
        if(key(_1))v=14;end
        if(key(_2))v=28;end
        if(key(_3))v=43;end
        if(key(_4))v=57;end
        if(key(_5))v=71;end
        if(key(_6))v=85;end
        if(key(_7))v=100;end
        if(key(_8))v=114;end
        if(key(_9))v=128;end
        
        set_song_volume(v);

    frame;
    until(key(_esc))
    
    exit();
end

Used in example: key, set_mode, load_song, write, write_int, pause_song, play_song, stop_song, resume_song, fade_music_in, fade_music_off, set_song_volume.

Personal tools