summaryrefslogtreecommitdiffhomepage
path: root/test/audio.rb
diff options
context:
space:
mode:
authorHeitor Carvalho <[email protected]>2018-10-24 18:10:17 -0300
committerTom Black <[email protected]>2018-10-24 14:10:16 -0700
commit830d99fde4555263967dfee94b4095ee300c12e1 (patch)
tree8360ba4b8bc60a45fd50c484f4de39dee13246cd /test/audio.rb
parent1b646f82c67e7c38df08113bcc3323c7aaf4639f (diff)
downloadruby2d-830d99fde4555263967dfee94b4095ee300c12e1.tar.gz
ruby2d-830d99fde4555263967dfee94b4095ee300c12e1.zip
Implements volume control to Music (#123)
Diffstat (limited to 'test/audio.rb')
-rw-r--r--test/audio.rb25
1 files changed, 18 insertions, 7 deletions
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