设为首页收藏本站|繁體中文

Project1

 找回密码
 注册会员
搜索
查看: 2249|回复: 4

[已经解决] 请教大佬们,如何特定标题菜单中光标移动和确定的音效?

[复制链接]

Lv2.观梦者

梦石
0
星屑
394
在线时间
59 小时
注册时间
2019-7-18
帖子
15
发表于 2019-12-31 14:22:19 | 显示全部楼层 |阅读模式
20星屑
让标题菜单中的光标移动和确认时的声效和其他菜单的不同。
新人初来乍到,请大佬们多多包涵!

最佳答案

查看完整内容

class Window_TitleCommand Sound = ::Sound.dup module Sound # 光标移动 # ["文件名", "音量", "节奏"] SE_Cursor = ["Cursor1", 100, 100] # 确定 # ["文件名", "音量", "节奏"] SE_Ok = ["Decision1", 100, 100] SE_Cursor = RPG::SE.new(*SE_Cursor) SE_Ok = RPG::SE.new(*SE_Ok) def self.play_cursor SE_Cursor.play end def self.play ...

Lv5.捕梦者

梦石
10
星屑
39440
在线时间
1914 小时
注册时间
2010-11-14
帖子
3315

R考场第七期纪念奖

发表于 2019-12-31 14:22:20 | 显示全部楼层
RUBY 代码复制
  1. class Window_TitleCommand
  2.   Sound = ::Sound.dup
  3.  
  4.   module Sound
  5.  
  6.     # 光标移动
  7.     # ["文件名", "音量", "节奏"]
  8.     SE_Cursor = ["Cursor1", 100, 100]
  9.  
  10.     # 确定
  11.     # ["文件名", "音量", "节奏"]
  12.     SE_Ok = ["Decision1", 100, 100]
  13.  
  14.     SE_Cursor = RPG::SE.new(*SE_Cursor)
  15.     SE_Ok = RPG::SE.new(*SE_Ok)
  16.  
  17.     def self.play_cursor
  18.       SE_Cursor.play
  19.     end
  20.  
  21.     def self.play_ok
  22.       SE_Ok.play
  23.     end
  24.   end  
  25.   #--------------------------------------------------------------------------
  26.   # ● 处理光标的移动
  27.   #--------------------------------------------------------------------------
  28.   def process_cursor_move
  29.     return unless cursor_movable?
  30.     last_index = @index
  31.     cursor_down (Input.trigger?(:DOWN))  if Input.repeat?(:DOWN)
  32.     cursor_up   (Input.trigger?(:UP))    if Input.repeat?(:UP)
  33.     cursor_right(Input.trigger?(:RIGHT)) if Input.repeat?(:RIGHT)
  34.     cursor_left (Input.trigger?(:LEFT))  if Input.repeat?(:LEFT)
  35.     cursor_pagedown   if !handle?(:pagedown) && Input.trigger?(:R)
  36.     cursor_pageup     if !handle?(:pageup)   && Input.trigger?(:L)
  37.     Sound.play_cursor if @index != last_index
  38.   end
  39.   #--------------------------------------------------------------------------
  40.   # ● 按下确定键时的处理
  41.   #--------------------------------------------------------------------------
  42.   def process_ok
  43.     if current_item_enabled?
  44.       Sound.play_ok
  45.       Input.update
  46.       deactivate
  47.       call_ok_handler
  48.     else
  49.       Sound.play_buzzer
  50.     end
  51.   end
  52. end


修改 SE_Cursor 与  SE_Ok  的数组可以改变对应的音效
用头画头像,用脚写脚本
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
394
在线时间
59 小时
注册时间
2019-7-18
帖子
15
 楼主| 发表于 2020-1-1 16:58:12 | 显示全部楼层
感谢回答!我还想请教下代码的第2行和第4行是什么意思?
还有为什么在第8行和第12行先给这两个对象赋值,后面再新建这两个对象呢?
回复

使用道具 举报

Lv5.捕梦者

梦石
10
星屑
39440
在线时间
1914 小时
注册时间
2010-11-14
帖子
3315

R考场第七期纪念奖

发表于 2020-1-1 19:11:32 | 显示全部楼层
hersal 发表于 2020-1-1 16:58
感谢回答!我还想请教下代码的第2行和第4行是什么意思?
还有为什么在第8行和第12行先给这两个对象赋值,后 ...

第2、第4行在这个窗口内部建立了一个Sound模块的副本,然后对这个副本作修改
这样的目的是保证其他地方的Sound模块不受影响

第8、12行赋值数组是为了方便使用者操作
后面再建立的对象的参数是基于前面数组的
用头画头像,用脚写脚本
回复

使用道具 举报

Lv2.观梦者

梦石
0
星屑
394
在线时间
59 小时
注册时间
2019-7-18
帖子
15
 楼主| 发表于 2020-1-1 19:48:32 | 显示全部楼层
感谢回答,受教了!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

拿上你的纸笔,建造一个属于你的梦想世界,加入吧。
 注册会员
找回密码

站长信箱:[email protected]|手机版|小黑屋|无图版|Project1游戏制作

GMT+8, 2024-4-16 21:27

Powered by Discuz! X3.1

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表