#============================================================================== # Text Sound Effect #------------------------------------------------------------------------------ # by Zerbu # edited by mjshi for some variation :) #============================================================================== module Text_Sound_Effect #-------------------------------------------------------------------------- # Configuration #-------------------------------------------------------------------------- # The sound effect to play ("Name", Volume, Pitch) # This can also be a filename without the file extension # (i.e., beep.wav should be written as "beep") MESSAGE_SOUND = RPG::SE.new("Knock", 100, 100) # The number of characters to display before each time the sound plays # I reommend that you make this number at least 2 larger than the # largest number in your variation. MESSAGE_SOUND_FRAMES = 4 # Variation decreases the number of characters displayed before the sound # plays. Set to true to turn on, false to turn off. VARY = true # Have multiple versions of the same number increases the chance of that # specific delay occuring. It is not recommended to have variations # above 2 seconds unless your message sound frames is super long or # something. VARIATION = [0, 1] # Other possible variations: [0, 0, 1, 2] or [0, 0, 1] # Write a switch # here. Turn this switch on to disable sound effects. # To disable this feature, type nil. MESSAGE_SOUND_DISABLE = nil end class Window_Message < Window_Base include Text_Sound_Effect alias textsound_process_character_normal process_character def process_character(c, text, pos) if !MESSAGE_SOUND_DISABLE or !$game_switches[MESSAGE_SOUND_DISABLE] if !defined?(@sound_frames) @sound_frames = 0 end if @sound_frames == 0 MESSAGE_SOUND.play end @sound_frames+=1 if @sound_frames == MESSAGE_SOUND_FRAMES and VARY == false @sound_frames = 0 elsif @sound_frames == MESSAGE_SOUND_FRAMES and VARY == true @sound_frames = VARIATION.sample end end textsound_process_character_normal(c, text, pos) end end