From 830d99fde4555263967dfee94b4095ee300c12e1 Mon Sep 17 00:00:00 2001 From: Heitor Carvalho Date: Wed, 24 Oct 2018 18:10:17 -0300 Subject: Implements volume control to Music (#123) --- test/audio.rb | 25 ++++++++++++++++++------- 1 file changed, 18 insertions(+), 7 deletions(-) (limited to 'test/audio.rb') diff --git a/test/audio.rb b/test/audio.rb index 7d39569..8a0e8f6 100644 --- a/test/audio.rb +++ b/test/audio.rb @@ -11,28 +11,39 @@ set width: 300, height: 200, title: "Ruby 2D — Audio" snd = Sound.new("#{media}/sound.wav") mus = Music.new("#{media}/music.wav") +volume_bar = Rectangle.new(color: 'green', width: 300, height: 50) + +on :mouse_down do |event| + Music.volume = event.x / Window.width.to_f * 100 + volume_bar.width = Music.volume / 100.0 * Window.width + puts "Music volume: #{Music.volume}%" +end + on :key_down do |event| case event.key when 'p' - puts "Playing sound..." + puts "Playing sound" snd.play when 'm' - puts "Playing music..." + puts "Playing music" mus.play + mus.volume = 100 + volume_bar.width = Window.width + puts "Music volume: #{mus.volume}" when 'l' - puts "Loop music true..." + puts "Looping music" mus.loop = true when 'a' - puts "Pause music..." + puts "Music paused" mus.pause when 'r' - puts "Resume music..." + puts "Music resumed" mus.resume when 's' - puts "Stop music..." + puts "Music stopped" mus.stop when 'f' - puts "fade out music..." + puts "Music fading out" mus.fadeout 2000 when 'escape' close -- cgit v1.2.3