Project1

标题: 如何在指定战斗中禁用道具? [打印本页]

作者: 布里蓝    时间: 2012-8-23 21:16
标题: 如何在指定战斗中禁用道具?
想做个斗技场,因为斗技场使用道具就没意思了,所以有没有办法禁止使用?
作者: 吾不知    时间: 2012-8-23 22:02
本帖最后由 吾不知 于 2012-8-23 22:05 编辑

Window_ActorCommand中
  1.   #--------------------------------------------------------------------------
  2.   # ● 生成指令列表
  3.   #--------------------------------------------------------------------------
  4.   def make_command_list
  5.     return unless @actor
  6.   if $game_switches[5] ==true  #五号开关
  7.     add_attack_command
  8.     add_skill_commands
  9.     add_guard_command
  10. #~     add_item_command
  11.    else
  12.     add_attack_command
  13.     add_skill_commands
  14.     add_guard_command
  15.     add_item_command
  16.     end
  17.   end
复制代码
Scene_Battle中
  1.   #--------------------------------------------------------------------------
  2.   # ● 生成角色指令窗口
  3.   #--------------------------------------------------------------------------
  4.   def create_actor_command_window
  5.     @actor_command_window = Window_ActorCommand.new
  6.     @actor_command_window.viewport = @info_viewport
  7.     if $game_switches[5] ==true  #五号开关
  8.       @actor_command_window.set_handler(:attack, method(:command_attack))
  9.       @actor_command_window.set_handler(:skill,  method(:command_skill))
  10.       @actor_command_window.set_handler(:guard,  method(:command_guard))
  11. #~     @actor_command_window.set_handler(:item,   method(:command_item))
  12.       @actor_command_window.set_handler(:cancel, method(:prior_command))
  13.      else
  14.       @actor_command_window.set_handler(:attack, method(:command_attack))
  15.       @actor_command_window.set_handler(:skill,  method(:command_skill))
  16.       @actor_command_window.set_handler(:guard,  method(:command_guard))
  17.       @actor_command_window.set_handler(:item,   method(:command_item))
  18.       @actor_command_window.set_handler(:cancel, method(:prior_command))
  19.      end
  20. #~     @actor_command_window.set_handler(:attack, method(:command_attack))
  21. #~     @actor_command_window.set_handler(:skill,  method(:command_skill))
  22. #~     @actor_command_window.set_handler(:guard,  method(:command_guard))
  23. #~     @actor_command_window.set_handler(:item,   method(:command_item))
  24. #~     @actor_command_window.set_handler(:cancel, method(:prior_command))
  25.     @actor_command_window.x = Graphics.width
  26.   end
复制代码
即可实现打开5号开关在角色指令中禁止物品!


作者: chxush    时间: 2012-8-23 22:08
  1. class Window_ActorCommand < Window_Command
  2.   DEFENCE_SWITCH_ID = 1
  3.   def add_item_command
  4.   enabled = DEFENCE_SWITCH_ID == 0 || $game_switches[DEFENCE_SWITCH_ID]
  5.     add_command(Vocab::item, :item, enabled)
  6.   end
  7. end
复制代码
DEFENCE_SWITCH_ID 就是开关ID 例子里面是一号开关
  开了就可以使用物品
关了就不能
作者: chxush    时间: 2012-8-23 22:10
还有大哥 以后发帖点"发表求助" 系统会自动送悬赏100EXP的- -




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