=begin
================================================================================
● 法术多秒系统介绍 BY-Kaiser.DS
================================================================================
『介绍』
☆模拟网游[梦幻西游]的多秒系统,秒的其他对象采用速度判定,并且作用己方多秒
的时候,附加状态判定,即有该魔法附加的状态,秒的其他对象将变成没有该状态的角
色。
=end
class Scene_Battle
def tg_xiuzheng(s)
for kds_dui in $data_skills[@active_battler.current_action.skill_id].plus_state_set
if $game_party.smooth_target_actor(s).states.include?(kds_dui)
return true
end
end
return false
end
def tg_xiuzheng2(s)
for kds_dui in $data_skills[@active_battler.current_action.skill_id].plus_state_set
if $game_troop.smooth_target_enemy(s).states.include?(kds_dui)
return true
end
end
return false
end
def dr_ac
index = @active_battler.current_action.target_index
$miao = 1
if @active_battler.current_action.kind == 1
@skill = $data_skills[@active_battler.current_action.skill_id]
if $data_skills[@skill.id].kds_miao > 1
@sudu = []
@guang = []
for s in 0..$game_party.actors.size-1
if $game_party.actors[s].hp != 0
@sudu.push($game_party.smooth_target_actor(s).agi)
@guang.push(s)
end
end
for a in 0..@sudu.size-1
for s in 0..@sudu.size-1
if s < @sudu.size-1 and @sudu[s] < @sudu[s+1]
elsif s < @sudu.size-1 and @sudu[s] > @sudu[s+1]
@abc = @sudu[s]
@sudu[s] = @sudu[s+1]
@sudu[s+1] = @abc
@bcd = @guang[s]
@guang[s] = @guang[s+1]
@guang[s+1] = @bcd
end
end
end
for s in 0..@sudu.size-1
if @guang[@sudu.size-1-s] == index
else
$miao += 1
@target_battlers.push($game_party.smooth_target_actor(@guang[@sudu.size-1 - s]))
end
if $miao == $data_skills[@skill.id].kds_miao
break
end
end
end
end
end
def dr_dr
index = @active_battler.current_action.target_index
$miao = 1
if @active_battler.current_action.kind == 1
@skill = $data_skills[@active_battler.current_action.skill_id]
if $data_skills[@skill.id].kds_miao > 1
@sudu = []
@guang = []
for s in 0..$game_troop.enemies.size-1
if $game_troop.enemies[s].hp != 0 and @active_battler.current_action.kind == 1 and tg_xiuzheng2(s) == false
@sudu.push($game_troop.smooth_target_enemy(s).agi)
@guang.push(s)
end
end
for a in 0..@sudu.size-1
for s in 0..@sudu.size-1
if s < @sudu.size-1 and @sudu[s] < @sudu[s+1]
elsif s < @sudu.size-1 and @sudu[s] > @sudu[s+1]
@abc = @sudu[s]
@sudu[s] = @sudu[s+1]
@sudu[s+1] = @abc
@bcd = @guang[s]
@guang[s] = @guang[s+1]
@guang[s+1] = @bcd
end
end
end
for s in 0..@sudu.size-1
if @guang[@sudu.size-1-s] == index
else
$miao += 1
@target_battlers.push($game_troop.smooth_target_enemy(@guang[@sudu.size-1 - s]))
end
if $miao == $data_skills[@skill.id].kds_miao
break
end
end
end
end
end
def ac_dr
index = @active_battler.current_action.target_index
if @active_battler.current_action.kind == 1
@skill = $data_skills[@active_battler.current_action.skill_id]
$miao = 1
if $data_skills[@skill.id].kds_miao > 1
@sudu = []
@guang = []
for s in 0..$game_troop.enemies.size-1
if $game_troop.enemies[s].hp != 0
@sudu.push($game_troop.smooth_target_enemy(s).agi)
@guang.push(s)
end
end
for a in 0..@sudu.size-1
for s in 0..@sudu.size-1
if s < @sudu.size-1 and @sudu[s] < @sudu[s+1]
elsif s < @sudu.size-1 and @sudu[s] > @sudu[s+1]
@abc = @sudu[s]
@sudu[s] = @sudu[s+1]
@sudu[s+1] = @abc
@bcd = @guang[s]
@guang[s] = @guang[s+1]
@guang[s+1] = @bcd
end
end
end
for s in 0..@sudu.size-1
if @guang[@sudu.size-1-s] == index
else
$miao += 1
@target_battlers.push($game_troop.smooth_target_enemy(@guang[@sudu.size-1 - s]))
end
if $miao == $data_skills[@skill.id].kds_miao
break
end
end
end
end
end
def ac_ac
index = @active_battler.current_action.target_index
if @active_battler.current_action.kind == 1
@skill = $data_skills[@active_battler.current_action.skill_id]
$miao = 1
if $data_skills[@skill.id].kds_miao > 1
@sudu = []
@guang = []
for s in 0..$game_party.actors.size-1
if $game_party.actors[s].hp != 0 and @active_battler.current_action.kind == 1 and tg_xiuzheng(s) == false
@sudu.push($game_party.smooth_target_actor(s).agi)
@guang.push(s)
end
end
for a in 0..@sudu.size-1
for s in 0..@sudu.size-1
if s < @sudu.size-1 and @sudu[s] < @sudu[s+1]
elsif s < @sudu.size-1 and @sudu[s] > @sudu[s+1]
@abc = @sudu[s]
@sudu[s] = @sudu[s+1]
@sudu[s+1] = @abc
@bcd = @guang[s]
@guang[s] = @guang[s+1]
@guang[s+1] = @bcd
end
end
end
for s in 0..@sudu.size-1
if @guang[@sudu.size-1-s] == index
else
$miao += 1
@target_battlers.push($game_party.smooth_target_actor(@guang[@sudu.size-1 - s]))
end
if $miao == $data_skills[@skill.id].kds_miao
break
end
end
end
end
end
end