Project1

标题: 如何去除战斗开始时选择战斗、撤退? [打印本页]

作者: tan12345    时间: 2013-9-10 11:48
标题: 如何去除战斗开始时选择战斗、撤退?
如题,如何去除战斗开始时选择战斗、撤退?就是一进入战斗界面,直接跳转到人物选择攻击、技能,而不是先按一下战斗,才到选择。
作者: wai781300    时间: 2013-9-10 20:02
你不是問過了嗎...
傳送門
作者: 黑化の鼠标    时间: 2013-9-10 23:36
为什么问过一遍的事情不能在原帖解决啊....
http://bbs.cgyouxi.com/thread-241165-1-1.html
这份是针对默认战斗即插即用的东西,与其他战斗脚本的兼容性均为进行测试,嘛,帖子的提问者是我就是了.....
直接搬运过来也倒是无所谓.....
RUBY 代码复制
  1. #encoding:utf-8
  2. #==============================================================================
  3. # ■ Scene_Battle
  4. #------------------------------------------------------------------------------
  5. #  战斗画面·改
  6. #==============================================================================
  7.  
  8. class Scene_Battle < Scene_Base
  9.   #--------------------------------------------------------------------------
  10.   # ● 更新信息显示的显示端口
  11.   #--------------------------------------------------------------------------
  12.   def update_info_viewport
  13. #    move_info_viewport(0)   if @party_command_window.active
  14.     move_info_viewport(128) if @actor_command_window.active
  15.     move_info_viewport(64)  if BattleManager.in_turn?
  16.   end
  17.   #--------------------------------------------------------------------------
  18.   # ● 信息窗口打开时的更新
  19.   #    在状态窗口关闭完成前,信息窗口的打开度设置为 0 。
  20.   #--------------------------------------------------------------------------
  21.   def update_message_open
  22.     if $game_message.busy? && !@status_window.close?
  23.       @message_window.openness = 0
  24.       @status_window.close
  25. #      @party_command_window.close
  26.       @actor_command_window.close
  27.     end
  28.   end
  29.   #--------------------------------------------------------------------------
  30.   # ● 生成所有窗口
  31.   #--------------------------------------------------------------------------
  32.   def create_all_windows
  33.     create_message_window
  34.     create_scroll_text_window
  35.     create_log_window
  36.     create_status_window
  37.     create_info_viewport
  38. #    create_party_command_window
  39.     create_actor_command_window
  40.     create_help_window
  41.     create_skill_window
  42.     create_item_window
  43.     create_actor_window
  44.     create_enemy_window
  45.   end
  46.   #--------------------------------------------------------------------------
  47.   # ● 生成角色指令窗口
  48.   #--------------------------------------------------------------------------
  49.   def create_actor_command_window
  50.     @actor_command_window = Window_ActorCommand.new
  51.     @actor_command_window.viewport = @info_viewport
  52.     @actor_command_window.set_handler(:attack, method(:command_attack))
  53.     @actor_command_window.set_handler(:skill,  method(:command_skill))
  54.     @actor_command_window.set_handler(:guard,  method(:command_guard))
  55.     @actor_command_window.set_handler(:item,   method(:command_item))
  56.     @actor_command_window.set_handler(:escape, method(:command_escape))
  57.     @actor_command_window.set_handler(:cancel, method(:prior_command))
  58.     @actor_command_window.x = Graphics.width
  59.   end
  60.   #--------------------------------------------------------------------------
  61.   # ● 开始队伍指令的选择
  62.   #--------------------------------------------------------------------------
  63.   def start_party_command_selection
  64.     unless scene_changing?
  65.       refresh_status
  66.       @status_window.unselect
  67.       @status_window.open
  68.       if BattleManager.input_start
  69. #        @actor_command_window.close
  70. #        @party_command_window.setup
  71.         @actor_command_window.active
  72.         command_fight
  73.       else
  74. #        @party_command_window.deactivate
  75.         turn_start
  76.       end
  77.     end
  78.   end
  79.   #--------------------------------------------------------------------------
  80.   # ● 开始角色指令的选择
  81.   #--------------------------------------------------------------------------
  82.   def start_actor_command_selection
  83.     @status_window.select(BattleManager.actor.index)
  84. #    @party_command_window.close
  85.     @actor_command_window.setup(BattleManager.actor)
  86.   end
  87.   #--------------------------------------------------------------------------
  88.   # ● 回合开始
  89.   #--------------------------------------------------------------------------
  90.   def turn_start
  91. #   @party_command_window.close
  92.     @actor_command_window.close
  93.     @status_window.unselect
  94.     @subject =  nil
  95.     BattleManager.turn_start
  96.     @log_window.wait
  97.     @log_window.clear
  98.   end
  99. end
  100.  
  101.  
  102.  
  103. #==============================================================================
  104. # ■ Window_ActorCommand·改
  105. #------------------------------------------------------------------------------
  106. #  战斗画面中,选择角色行动的窗口。
  107. #==============================================================================
  108.  
  109. class Window_ActorCommand < Window_Command
  110.   #--------------------------------------------------------------------------
  111.   # ● 生成指令列表
  112.   #--------------------------------------------------------------------------
  113.   def make_command_list
  114.     return unless @actor
  115.     add_attack_command
  116.     add_skill_commands
  117.     add_guard_command
  118.     add_item_command
  119.     add_escape_command
  120.   end
  121.   #--------------------------------------------------------------------------
  122.   # ● 添加逃跑指令
  123.   #--------------------------------------------------------------------------
  124.   def add_escape_command
  125.     add_command(Vocab::escape, :escape, BattleManager.can_escape?)
  126.   end
  127. end

作者: tan12345    时间: 2013-9-11 10:14
黑化の鼠标 发表于 2013-9-10 23:36
为什么问过一遍的事情不能在原帖解决啊....
http://bbs.cgyouxi.com/thread-241165-1-1.html
这份 ...

第一,这帖子是2012年的,也不是我问的,所以我不知道已经有答案了
第二,我之前没问过这个问题,这次是第一次问
作者: tan12345    时间: 2013-9-11 10:16
wai781300 发表于 2013-9-10 20:02
你不是問過了嗎...
傳送門

第一,这帖子不是我要的效果,我要的效果是战斗时先出现战斗、撤退,选了战斗再出现攻击、特技等
第二,我之前没问过这个问题,这次是第一次问
作者: tan12345    时间: 2013-9-11 10:36
黑化の鼠标 发表于 2013-9-10 23:36
为什么问过一遍的事情不能在原帖解决啊....
http://bbs.cgyouxi.com/thread-241165-1-1.html
这份 ...

这个是我要的答案,不过其实昨天晚上我自己改了一下,把party_command_window去掉,之后把所有报错的行注释掉,最后在某个地方把party_command_window换成了next_command,然后就成了,就是不知道我这样换有没有影响,还是谢谢你了,你这份我也保存好了,另外,麻烦版主把3楼改为认可答案。
作者: 我在孤岛等你    时间: 2013-9-12 20:10
tan12345 发表于 2013-9-11 10:36
这个是我要的答案,不过其实昨天晚上我自己改了一下,把party_command_window去掉,之后把所有报错的行注 ...

连贴连得真离谱……




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