bad-end-collector/Scripts/_.15.rb
2024-05-18 13:05:37 -05:00

58 lines
No EOL
2 KiB
Ruby

#==============================================================================
# ■ RGSS3 通常攻撃時の攻撃追加回数強制適用 Ver1.00 by 星潟
#------------------------------------------------------------------------------
# 通常攻撃時、攻撃範囲がランダム、もしくは全体になっている場合は
# 攻撃回数が追加されず、1回しか攻撃しない不具合を修正します。
#==============================================================================
class Game_Action
#--------------------------------------------------------------------------
# ● 敵に対するターゲット
#--------------------------------------------------------------------------
alias targets_for_opponents_attack_change targets_for_opponents
def targets_for_opponents
#本来の処理を行い、ターゲット配列を取得する。
array_data = targets_for_opponents_attack_change
#行動が通常攻撃の場合は分岐する。
if attack?
#行動者の攻撃追加回数を取得する。
number = @subject.atk_times_add.to_i
#行動者の攻撃追加回数が0以下の場合は既存の配列を返す。
return array_data if number <= 0
if item.for_random?#行動がランダムターゲットの場合
#攻撃追加回数分だけ、ランダムターゲットを配列に加える。
number.times do
array_data += Array.new(item.number_of_targets) { opponents_unit.random_target }
end
elsif item.for_one?#行動が単体の場合
#何もしない
else#行動が全体の場合
#攻撃追加回数分だけ、敵全体を配列に加える。
number.times do
array_data += opponents_unit.alive_members
end
end
end
#配列を返す。
return array_data
end
end