本帖最后由 饿啊 于 2024-10-10 11:45 编辑
感谢提点,另对父类修改后还需要对一楼中脚本主体的第19行做出如下改动:@command_window = Window_ExtraMenuCommand.new(0,0)
@command_window = Window_ExtraMenuCommand.new(0,0)
以及如果有后来的兄弟想引入这个脚本,还是用如下的改良版好些,(请务必配合一楼中对于Scene_Manager的改动)起码不会报错:
#================================================================= #"更多功能"子菜单 #================================================================= class Window_ExtraMenuCommand < Window_Command def make_command_list #~ add_command("任务/书籍",:book,true) #~ add_command("自主合成",:itemsynthesis,$game_system.i_rcp_sw.size > 0) #~ unless TMMEDAL::HIDE_COMMAND && !medal_enabled #~ add_command(TMMEDAL::COMMAND_MEDAL, :medal, medal_enabled) #~ end add_command("返回上级",:originmenu,true) #此处仅保留"返回上级",以适配其他工程 end end #============================================================================== #MenuCommand扩展 #============================================================================== class Window_MenuCommand alias saren_extramenu_add_original_commands add_original_commands def add_original_commands saren_extramenu_add_original_commands add_command("更多功能",:moreoptions,true) end end #============================================================================== #“更多功能”窗口的Scene_ExtraMenu扩展 #============================================================================== class Scene_ExtraMenu < Scene_Menu #-------------------------------------------------------------------------- # ● 菜单条目生成 #-------------------------------------------------------------------------- def create_command_window @command_window = Window_ExtraMenuCommand.new(0,0) #~ @command_window.set_handler(:medal, method(:command_medal)) #~ @command_window.set_handler(:book, method(:command_book)) #~ @command_window.set_handler(:itemsynthesis, method(:command_itemsynthesis)) @command_window.set_handler(:originmenu, method(:return_scene)) @command_window.set_handler(:cancel, method(:return_scene)) #此处仅保留"返回上级",以适配其他工程 end #-------------------------------------------------------------------------- # 窗口调用 #-------------------------------------------------------------------------- #~ def command_medal #~ SceneManager.call(Scene_Medal) #~ end end
#=================================================================
#"更多功能"子菜单
#=================================================================
class Window_ExtraMenuCommand < Window_Command
def make_command_list
#~ add_command("任务/书籍",:book,true)
#~ add_command("自主合成",:itemsynthesis,$game_system.i_rcp_sw.size > 0)
#~ unless TMMEDAL::HIDE_COMMAND && !medal_enabled
#~ add_command(TMMEDAL::COMMAND_MEDAL, :medal, medal_enabled)
#~ end
add_command("返回上级",:originmenu,true)
#此处仅保留"返回上级",以适配其他工程
end
end
#==============================================================================
#MenuCommand扩展
#==============================================================================
class Window_MenuCommand
alias saren_extramenu_add_original_commands add_original_commands
def add_original_commands
saren_extramenu_add_original_commands
add_command("更多功能",:moreoptions,true)
end
end
#==============================================================================
#“更多功能”窗口的Scene_ExtraMenu扩展
#==============================================================================
class Scene_ExtraMenu < Scene_Menu
#--------------------------------------------------------------------------
# ● 菜单条目生成
#--------------------------------------------------------------------------
def create_command_window
@command_window = Window_ExtraMenuCommand.new(0,0)
#~ @command_window.set_handler(:medal, method(:command_medal))
#~ @command_window.set_handler(:book, method(:command_book))
#~ @command_window.set_handler(:itemsynthesis, method(:command_itemsynthesis))
@command_window.set_handler(:originmenu, method(:return_scene))
@command_window.set_handler(:cancel, method(:return_scene))
#此处仅保留"返回上级",以适配其他工程
end
#--------------------------------------------------------------------------
# 窗口调用
#--------------------------------------------------------------------------
#~ def command_medal
#~ SceneManager.call(Scene_Medal)
#~ end
end
如果还有其他使用上的疑问,烦请告知我。 |