class Scene_Battle < Scene_Base
  #--------------------------------------------------------------------------
  # ● 身代わりの適用
  #--------------------------------------------------------------------------
  alias takorw44apply_substitute apply_substitute
  def apply_substitute(target, item)

    if check_substitute_friend(target, item)
      substitute2 = target.friends_unit.find_substitute(target)
      if @subject.enemy? && substitute2 && substitute2.alive? 
        @log_window.display_substitute(substitute2, target)
        return substitute2
      end
    end    
    takorw44apply_substitute(target, item)
    
    
  end
  
  def check_substitute_friend(target, item)
    return true
  end  
  #--------------------------------------------------------------------------
  # ● アクター［決定］
  #--------------------------------------------------------------------------
  alias takosubstituteon_actor_ok on_actor_ok
  def on_actor_ok
    if check_skill_substitute_friend
      actor = BattleManager.actor
      actor.substitute_chara_target = @actor_window.index
#~       actor.remove_state_substitute($data_substitute_state)

      actor.add_state_substitute($data_substitute_state)

    end
    takosubstituteon_actor_ok 
  end  
  #--------------------------------------------------------------------------
  # ● アクター［キャンセル］
  #--------------------------------------------------------------------------
  alias takosubstituteon_actor_cancel on_actor_cancel
  def on_actor_cancel
    actor = BattleManager.actor
    actor.remove_state($data_substitute_state)  if actor.state?($data_substitute_state)
 
    takosubstituteon_actor_cancel 
  end  
  
  def check_skill_substitute_friend
    action = BattleManager.actor.input
    action.item.is_a?(RPG::Skill) && $data_substitute_skill_ids.include?(action.item.id)
    
  end  

end  