메시지

MessageSound v2.0 글자에 소리 다다닥 스크립트

by 할렘 posted Feb 02, 2009
?

단축키

Prev이전 문서

Next다음 문서

ESC닫기

크게 작게 위로 아래로 댓글로 가기 인쇄
#==============================================================================
# ■ DeadlyDan_MessageSound v2.0 by DeadlyDan
#------------------------------------------------------------------------------
#  Simple "typewriting" style sound when messages are displayed.
#==============================================================================
# Usage:
=begin
  
  Simply change:
  
  MS_SOUND = "Audio/SE/cursor"
  
  To what ever sound file you want, for example:
  
  MS_SOUND = "Audio/SE/cow"
  
  If you want to change how fast it sounds, change
  
  MS_FRAME_INTERVAL = 2
  
  To, for example, if you want longer:
  
  MS_FRAME_INTERVAL = 4

=end

class Window_Message < Window_Selectable
  
  MS_SOUND = "Audio/SE/cursor"
  MS_FRAME_INTERVAL = 2
  
  def update_message
    loop do
      c = @text.slice!(/./m)
      case c
      when nil
        finish_message
        break
      when "x00"
        new_line
        if @line_count >= MAX_LINE
          unless @text.empty?
            self.pause = true
            break
          end
        end
      when "x01"
        @text.sub!(/[([0-9]+)]/, "")
        contents.font.color = text_color($1.to_i)
        next
      when "x02"
        @gold_window.refresh
        @gold_window.open
      when "x03"
        @wait_count = 15
        break
      when "x04"
        @wait_count = 60
        break
      when "x05"
        self.pause = true
        break
      when "x06"
        @line_show_fast = true
      when "x07"
        @line_show_fast = false
      when "x08"
        @pause_skip = true
      else
        if ( @line_show_fast == false and @show_fast == false )
          if ( Graphics.frame_count > ( @last_ms_sound_frame.to_i + MS_FRAME_INTERVAL ) )
            Audio.se_play ( MS_SOUND, 100, 100 )
            @last_ms_sound_frame = Graphics.frame_count
          end
        end
        contents.draw_text(@contents_x, @contents_y, 40, WLH, c)
        c_width = contents.text_size(c).width
        @contents_x += c_width
      end
      break unless @show_fast or @line_show_fast
    end
  end
  
end