This script is awesome !! but can someone please tell me on how to make this work on tanketai side script... it always give me an error at ATB 1.2c ...
Thanks in advance
#--------------------------------------------------------------------------
# ● 合体攻撃判定
#--------------------------------------------------------------------------
def union_skill?(member)
# スキルに合体攻撃設定があるかチェック
for union_action in member.action.skill.union_action
union_skills = union_action if union_action.size != 0 && union_action.include?(member.action.skill_id)
end
return if union_skills == nil
@partners = []
@union_targets = union_target_decision(member, member.action.skill)
@union_target_index =
member.action.target_index
# 合体攻撃メンバーが使用可能かチェック
for skill_id in union_skills
for actor in $game_party.members
if actor.skill_can_use?($data_skills[skill_id]) && actor.skill_id_learn?(skill_id)
@partners.push(actor)
actor.union_skill_id = skill_id
end
end
end
# 合体攻撃使用不可
if @partners.size != union_skills.size
for actor in @partners do actor.union_skill_id = 0 end
@partners = nil
member.action.clear if !member.action.guard?
return
end
# 合体攻撃使用可
for actor in @partners
# パートナーアクション決定
actor.action.kind = 1
actor.action.skill_id = actor.union_skill_id
actor.action.target_index =
member.action.target_index
# コマンド強制キャンセル
if @command_members.include?(actor)
force_action_command_cansel(actor)
start_auto_action(member)
end
end
$in_union_action = true
@union_size = 0
end
#--------------------------------------------------------------------------
# ● 合体攻撃可能か
#--------------------------------------------------------------------------
def union_possibility?
return if @partners == nil
for member in @partners
union_cansel = true unless member.inputable?
end
return if !union_cansel
end_union_skill
@active_battler.action.clear if !@active_battler.action.guard?
end
#--------------------------------------------------------------------------
# ● 合体攻撃ターゲット決定
#--------------------------------------------------------------------------
def union_target_decision(member, obj)
targets = member.action.make_targets
# デフォルトの複数回攻撃が設定されていれば単体ターゲットに変換
targets = [targets[0]] if obj.for_two? or obj.for_three? or obj.dual?
# ランダムターゲットの場合、一体を選択しランダム範囲を保持
if obj.extension.include?("RANDOMTARGET")
randum_targets = targets.dup
targets = [randum_targets[rand(randum_targets.size)]]
end
# ターゲット情報をバトラースプライトに送る
@spriteset.set_target(
member.actor?, member.index, targets)
return targets
end
#--------------------------------------------------------------------------
# ● 合体攻撃処理
#--------------------------------------------------------------------------
def process_union_skill
@union_size += 1
if @union_size != @partners.size
return @active_battler.union_battler = true
end
# 合体攻撃スタート
@action_battlers.delete(@active_battler)
@active_battler.active = false
@active_battler = @partners.shift
@active_battler.act_active = true
@active_battler.active = true
@active_battler.union_battler = false
@active_battler.action.kind = 1
@active_battler.action.skill_id = @active_battler.union_skill_id
@active_
battler.action.target_index = @union_target_index
for member in @partners
member.action.kind = 1
member.action.skill_id = member.union_skill_id
member.action.target_index = @union_target_index
member.mp -= member.calc_mp_cost($data_skills[member.action.skill_id]) if member != @active_battler # 3.4a
member.force_target = ["N01target_change", @union_targets]
@spriteset.update_target(true, member.index)
# アクション実行
@spriteset.set_action(true, member.index, member.action.skill.base_action)
end
@status_window.refresh # 3.4a
end
#--------------------------------------------------------------------------
# ● 合体攻撃終了処理
#--------------------------------------------------------------------------
def end_union_skill
@active_battler.union_skill_id = 0
@active_battler.union_battler = false
for member in @partners
member.union_skill_id = 0
member.union_battler = false
member.action.clear
@action_battlers.delete(member)
turn_end(member)
end
@union_size = 0
@partners = nil
$in_union_action = false
end