じ☆ve冰风 发表于 2026-8-3 14:35:43

Message SFX

Message SFX, applies beeping sfx into your message box whenever each character is typed and also whenever the user presses OK or Cancel.

This was my first script ever simple made that might be useful for some, and also might be worth sharing. Wrote it like 3 years ago, forgotten, but i've came back to decide and finally to share it.

Spoiler: Script                Ruby:       
#=============================================================================
# ** Message SFX by NoPiessadface
# ** ver. 1.0
#=============================================================================

module GetSE
#=============================================================================
# ** Edit stuff here
#=============================================================================
#set this to "false" if you want to edit the SE only in the system database
#set this to "true" if you want it to be fully costumizable
Edit = true

#choose sound for drawing characters on text
#This uses the "Cursor" SE in the system database
SE_Char = [ "Cursor1", 60, 200 ]
   
#choose sound for processing the text to the next page
#This uses the "OK" SE in the system database
SE_Confirm = [ "Cursor2", 80, 100 ]
   
#choose sound for closing window message or ending the message
#This uses the "Cancel" SE in the system database
SE_Close = [ "Cancel1", 80, 100 ]

#delay on every character is drawn
Delay = 1
end

class Window_Message < Window_Base
#--------------------------------------------------------------------------
# * Normal Character Processing
#--------------------------------------------------------------------------
alias NP_SEonMessage_WindowMessage_process_normal_character_wu34   process_normal_character
def process_normal_character(*args)
    NP_SEonMessage_WindowMessage_process_normal_character_wu34(*args)
    if GetSE::Edit == true
      RPG::SE.new( *GetSE::SE_Char ).play
    else
      Sound.play_cursor
    end
    if Input.repeat?(:C) | Input.repeat?(:D)
      wait (0)
    else
      wait( *GetSE::Delay )
    end
end

#--------------------------------------------------------------------------
# * New Page
#--------------------------------------------------------------------------
alias NP_SEonMessage_WindowMessage_new_page_oief    new_page
def new_page(*args)
    if GetSE::Edit == true
      RPG::SE.new( *GetSE::SE_Confirm ).play
    else
      Sound.play_ok
    end
    NP_SEonMessage_WindowMessage_new_page_oief(*args)
end

#--------------------------------------------------------------------------
# * Close Window
#--------------------------------------------------------------------------
alias NP_SEonMessage_WindowMessage_close_o3ie   close
def close
    if GetSE::Edit == true
      RPG::SE.new( *GetSE::SE_Close ).play
    else
      Sound.play_cancel
    end
    NP_SEonMessage_WindowMessage_close_o3ie()
end
end




本贴来自国际rpgmaker官方论坛作者:NoPiessadface处,因国际论坛即将永久关站,为了存档多年珍贵资料,署名转载到本论坛存档,由于官方帖子为英文原帖,需要中文翻译请点击论坛顶部切换语言为中文就可以将帖子翻译成中文浏览,方便大家随时查看,原文地址:https://forums.rpgmakerweb.com/threads/message-sfx.183548/
页: [1]
查看完整版本: Message SFX