Project1

标题: 如何在战斗中被动切换人物 [打印本页]

作者: 可爱的小帅帅    时间: 2014-7-25 03:15
标题: 如何在战斗中被动切换人物
就是在战斗中有人死了就会人替补位置( ゚ω゚)
作者: 芯☆淡茹水    时间: 2014-7-25 09:27
有人替补?是哪儿的人?是否有预设?LZ是否用了人物仓库脚本?
作者: 恐惧剑刃    时间: 2014-7-25 10:16
本帖最后由 恐惧剑刃 于 2014-7-25 10:23 编辑

大概就是这样了
………………………………………………
  1. # ** 简单的替补
  2. class Scene_Battle
  3.   
  4.   # ** alias initialize 会出现意料之外的BUG
  5.   alias update_old_dl update
  6.   def update
  7.     # ** 刷新
  8.     update_old_dl
  9.     # ** 记录同伴数
  10.     @actor_size = $game_party.actors.size if @actor_size.nil?
  11.   end
  12.   
  13.   # 主角登场
  14.   def actor_appear
  15.     for actor in $game_party.actors
  16.       # ** 如果主角死亡
  17.       if actor.dead?
  18.         # ** 移除主角
  19.         $game_party.remove_actor(actor.id)
  20.         # ** 替补
  21.         for id in 1..$data_actors.size
  22.           # ** 保证同伴数不大于最初的同伴数
  23.           next if $game_party.actors.size == @actor_size
  24.           # ** 保证替补不空
  25.           next if $game_actors[id].name == ""
  26.           # ** 保证替补存在
  27.           next if $game_actors[id].dead?
  28.           # ** 保证替补不在队伍中
  29.           if not $game_party.actors.include? $game_actors[id]
  30.             # ** 替补出现
  31.             $game_party.add_actor(id)
  32.           end
  33.         end
  34.       end
  35.     end
  36.     # ** 刷新角色状态窗口
  37.     @status_window.refresh
  38.   end
  39.   
  40.   alias update_phase4_step6_old_dl update_phase4_step6
  41.   def update_phase4_step6
  42.     # ** 刷新
  43.     update_phase4_step6_old_dl
  44.     # ** 主角登场
  45.     actor_appear
  46.   end
  47. end
复制代码





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