Class MyGame::Wave
In: mygame/lib/mygame.rb
Parent: Object

効果音クラス

効果音を制御するクラスです。

次のサンプルは効果音 sample.wav を再生する例です。

 require 'mygame/boot'
 main_loop do
   Wave.play("sample.wav") if new_key_pressed?(Key::SPACE)
 end

次のサンプルは効果音オブジェクト生成して sample.wav を再生する例です。

 require 'mygame/boot'
 wav = Wave.new("sample.wav")
 main_loop do
   wav.play if new_key_pressed?(Key::SPACE)
 end

Methods

clear_cache   load   new   play   play  

Public Class methods

ロードした効果音のキャッシュをクリアします。

[Source]

# File mygame/lib/mygame.rb, line 68
    def self.clear_cache
      @@wave = {}
    end

効果音オブジェクトを生成します。

[Source]

# File mygame/lib/mygame.rb, line 54
    def initialize(filename, ch = :auto, loop = 1)
      @ch = ch
      @loop = loop
      @filename = filename
      load(filename)
    end

効果音を再生します。

[Source]

# File mygame/lib/mygame.rb, line 103
    def self.play(*args)
      new(*args).play
    end

Public Instance methods

効果音をロードします。 WAVE, AIFF, RIFF, OGG, VOC 形式に対応しています。

[Source]

# File mygame/lib/mygame.rb, line 63
    def load(filename)
      @@wave[filename] = SDL::Mixer::Wave.load(filename)
    end

効果音を再生します。

[Source]

# File mygame/lib/mygame.rb, line 98
    def play(ch = @ch, loop = @loop)
      _play(ch, @@wave[@filename], loop)
    end

[Validate]