Project1

标题: 如何禁止制定菜单指令 [打印本页]

作者: 黄濑凉太    时间: 2015-3-29 16:37
标题: 如何禁止制定菜单指令
就好像事件页里有的禁止存档等等的
作者: taroxd    时间: 2015-3-29 17:06
https://rpg.blue/home.php?mod=sp ... o=blog&id=12246
作者: 子弹君    时间: 2015-3-29 19:31
Scene_Menu里的
  1.   #--------------------------------------------------------------------------
  2.   # ● 生成指令窗口
  3.   #--------------------------------------------------------------------------
  4.   def create_command_window
  5.     @command_window = Window_MenuCommand.new
  6.     @command_window.set_handler(:item,      method(:command_item))
  7.     @command_window.set_handler(:skill,     method(:command_personal))
  8.     @command_window.set_handler(:equip,     method(:command_personal))
  9.     @command_window.set_handler(:status,    method(:command_personal))
  10.     @command_window.set_handler(:formation, method(:command_formation))
  11.     @command_window.set_handler(:save,      method(:command_save))
  12.     @command_window.set_handler(:game_end,  method(:command_game_end))
  13.     @command_window.set_handler(:cancel,    method(:return_scene))
  14.   end
复制代码
哪个指令禁制就#掉哪个
作者: 黄濑凉太    时间: 2015-3-29 19:35
子弹君 发表于 2015-3-29 15:31
Scene_Menu里的哪个指令禁制就#掉哪个

不是,我是想要暂时禁用,就是可以制定禁止还是启用的
作者: 子弹君    时间: 2015-3-29 19:40
黄濑凉太 发表于 2015-3-29 19:35
不是,我是想要暂时禁用,就是可以制定禁止还是启用的

加个条件就可以了,给你个例子,你自己照做吧。
  1.   #--------------------------------------------------------------------------
  2.   # ● 生成指令窗口
  3.   #--------------------------------------------------------------------------
  4.   def create_command_window
  5.     @command_window = Window_MenuCommand.new
  6.     if $game_switches[1] == true #如果开关1开启,那么物品界面可点选
  7.       @command_window.set_handler(:item,      method(:command_item))
  8.     end
  9.     @command_window.set_handler(:skill,     method(:command_personal))
  10.     @command_window.set_handler(:equip,     method(:command_personal))
  11.     @command_window.set_handler(:status,    method(:command_personal))
  12.     @command_window.set_handler(:formation, method(:command_formation))
  13.     @command_window.set_handler(:save,      method(:command_save))
  14.     @command_window.set_handler(:game_end,  method(:command_game_end))
  15.     @command_window.set_handler(:cancel,    method(:return_scene))
  16.   end
复制代码

作者: VIPArcher    时间: 2015-3-29 19:55
  1. class Window_MenuCommand < Window_Command
  2.   #--------------------------------------------------------------------------
  3.   # ● 向指令列表添加主要的指令
  4.   #--------------------------------------------------------------------------
  5.   def add_main_commands
  6.     add_command(Vocab::item,   :item,   main_commands_enabled)
  7.     add_command(Vocab::skill,  :skill,  main_commands_enabled)
  8.     add_command(Vocab::equip,  :equip,  main_commands_enabled)
  9.     add_command(Vocab::status, :status, main_commands_enabled)
  10.   end
  11. end
复制代码
add_command 后面的三个参数分别为 "按钮的名字", :对应的符号, 有效状态。
所以你可以把最后一个参数改成一个开关。这样就能达到用开关控制某指令是否有效的效果了
比如
  1. class Window_MenuCommand < Window_Command
  2.   #--------------------------------------------------------------------------
  3.   # ● 添加游戏结束指令
  4.   #--------------------------------------------------------------------------
  5.   def add_game_end_command
  6.     add_command(Vocab::game_end, :game_end,$game_switches[1]) #只有1号开关开启时才能使用游戏结束按钮
  7.   end
  8. end
复制代码





欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1