| 
 
| 赞 | 4 |  
| VIP | 71 |  
| 好人卡 | 22 |  
| 积分 | 7 |  
| 经验 | 32145 |  
| 最后登录 | 2013-8-9 |  
| 在线时间 | 184 小时 |  
 Lv2.观梦者 天仙 
	梦石0 星屑680 在线时间184 小时注册时间2008-4-15帖子5023 
 | 
| 完成 
 复制代码class Game_Battler
  #--------------------------------------------------------------------------
  # ● 獲取 最大魔力值 
  #--------------------------------------------------------------------------
  def maxmp
    return 100
  end
  #--------------------------------------------------------------------------
  # ● 傷害效果
  #     user : 技能或物品使用者
  #    @hp_damage、@mp_damage、或@absorbed需要在此之前計算完畢。
  #--------------------------------------------------------------------------
  def execute_damage(user)
    if @hp_damage > 0           # 若傷害為正數
      remove_states_shock       # 攻擊移除狀態
    end
    damage = @hp_damage * 100 / maxhp
    self.mp += damage
    self.hp -= @hp_damage
    self.mp -= @mp_damage
    if @absorbed                # 若吸收
      user.hp += @hp_damage
      user.mp += @mp_damage
    end
  end
end
class Game_Enemy < Game_Battler
  alias old_ini initialize
  def initialize(index, enemy_id)
    old_ini(index, enemy_id)
    @mp = 0
  end
end
class Game_BattleAction
  #--------------------------------------------------------------------------
  # ● 生成技能或物品目標
  #     obj : 技能或物品
  #--------------------------------------------------------------------------
  def make_obj_targets(obj)
    targets = []
    if obj.for_opponent?
      if obj.for_random?
        if obj.for_one?         # 敵隨機單體
          number_of_targets = 1
        elsif obj.for_two?      # 敵隨機二體
          number_of_targets = 2
        else                    # 敵隨機三體
          number_of_targets = 3
        end
        number_of_targets.times do
          targets.push(opponents_unit.random_target)
        end
      elsif obj.dual?           # 敵單體連續
        targets.push(opponents_unit.smooth_target(@target_index))
        targets += targets
      elsif obj.for_one?        # 敵單體
        targets.push(opponents_unit.smooth_target(@target_index))
      else                      # 敵全體
        targets += opponents_unit.existing_members
        
        #=======================================
        for b in friends_unit.existing_members
          targets.push(b) unless battler == b
        end
        #=======================================
                
      end
    elsif obj.for_user?         # 使用者
      targets.push(battler)
    elsif obj.for_dead_friend?
      if obj.for_one?           # 我方單體(無法行動)
        targets.push(friends_unit.smooth_dead_target(@target_index))
      else                      # 我方全體(無法行動)
        targets += friends_unit.dead_members
      end
    elsif obj.for_friend?
      if obj.for_one?           # 我方單體
        targets.push(friends_unit.smooth_target(@target_index))
      else                      # 我方全體
        targets += friends_unit.existing_members
      end
    end
    return targets.compact
  end
end
 | 
 |