This is a reupload of Extra Attack Compatibility (EAC) by 3XC4L1B3R which includes the fixes first presented by rolfador. This mod page will be archived and link to the original mod page whenever it gets updated. EAC MAY NOT COMPLETELY WORK IN HONOUR MODE!
Permissions and credits
Author's instructions
For Permissions please see the original mod.
File credits
All credit belongs to 3XC4L1B3R for the original mod. Credit for the fixes goes to rolfador.
Donation Points system
Please log in to find out whether this mod is receiving Donation Points
Changelogs
Version 1.2
EAC_Passive.txt:
new entry "ExtraAttack"
type "PassiveData"
using "ExtraAttack"
data "Conditions" "((context.HasContextFlag(StatsFunctorContext.OnCast) and (ExtraAttackSpellCheck() or IsModdedExtraAttack()) and HasUseCosts('ActionPoint', true) and not Tagged('EXTRA_ATTACK_BLOCKED',context.Source) and not HasStatus('SLAYER_PLAYER',context.Source) and not HasStatus('SLAYER_PLAYER_10',context.Source) and TurnBased(context.Source)) or (context.HasContextFlag(StatsFunctorContext.OnStatusRemoved) and StatusId('INITIAL_ATTACK_TECHNICAL') and TurnBased()) or (context.HasContextFlag(StatsFunctorContext.OnStatusApplied) and StatusId('EXTRA_ATTACK_Q'))) and not IsModdedNonExtraAttack()"
new entry "ExtraAttack_2"
type "PassiveData"
using "ExtraAttack_2"
data "Conditions" "((context.HasContextFlag(StatsFunctorContext.OnCast) and (HasStringInSpellRoll('WeaponAttack') or HasStringInSpellRoll('UnarmedAttack') or SpellId('Target_CommandersStrike') or SpellId('Projectile_ArrowOfSmokepowder') or IsModdedExtraAttack()) and HasUseCosts('ActionPoint', true) and not Tagged('EXTRA_ATTACK_BLOCKED',context.Source) and not HasStatus('SLAYER_PLAYER',context.Source) and not HasStatus('SLAYER_PLAYER_10',context.Source) and TurnBased(context.Source)) or (context.HasContextFlag(StatsFunctorContext.OnStatusRemoved) and StatusId('INITIAL_ATTACK_TECHNICAL') and TurnBased()) or (context.HasContextFlag(StatsFunctorContext.OnStatusApplied) and StatusId('EXTRA_ATTACK_2_Q'))) and not IsModdedNonExtraAttack()"
new entry "ThirstingBlade_Blade"
type "PassiveData"
using "ThirstingBlade_Blade"
data "Conditions" "((context.HasContextFlag(StatsFunctorContext.OnCast) and (HasStringInSpellRoll('WeaponAttack') or HasStringInSpellRoll('UnarmedAttack') or SpellId('Target_CommandersStrike') or SpellId('Projectile_ArrowOfSmokepowder') or IsModdedExtraAttack()) and ExtraAttackSpellCheck() and HasUseCosts('ActionPoint', true) and not Tagged('EXTRA_ATTACK_BLOCKED',context.Source) and not HasStatus('SLAYER_PLAYER',context.Source) and not HasStatus('SLAYER_PLAYER_10',context.Source) and TurnBased(context.Source) and HasPactWeapon(context.Source)) or (context.HasContextFlag(StatsFunctorContext.OnStatusRemoved) and StatusId('INITIAL_ATTACK_TECHNICAL') and TurnBased() and HasPactWeapon(context.Target)) or (context.HasContextFlag(StatsFunctorContext.OnStatusApplied) and StatusId('EXTRA_ATTACK_THIRSTING_BLADE_Q'))) and HasPassive('PactOfTheBlade',context.Source) and not HasPassive('ExtraAttack',context.Source) and not HasPassive('ExtraAttack_2',context.Source) and not IsModdedNonExtraAttack()"
EAC_Status.txt:
new entry "EXTRA_ATTACK"
type "StatusData"
data "StatusType" "BOOST"
using "EXTRA_ATTACK"
data "Boosts" "UnlockSpellVariant(ExtraAttackCheck() | IsModdedExtraAttack() & ~IsModdedNonExtraAttack(),ModifyUseCosts(Replace,ActionPoint,0,0,ActionPoint),ModifyIconGlow(),ModifyTooltipDescription())"
data "RemoveConditions" "(ExtraAttackSpellCheck() or IsModdedExtraAttack()) and HasUseCosts('ActionPoint',false,context.Target) and not IsOffHandAttack()and not IsModdedNonExtraAttack()"
new entry "EXTRA_ATTACK_2"
type "StatusData"
data "StatusType" "BOOST"
using "EXTRA_ATTACK_2"
data "Boosts" "UnlockSpellVariant(ExtraAttackCheck() | IsModdedExtraAttack() & ~IsModdedNonExtraAttack(),ModifyUseCosts(Replace,ActionPoint,0,0,ActionPoint),ModifyIconGlow(),ModifyTooltipDescription())"
new entry "EXTRA_ATTACK_THIRSTING_BLADE"
type "StatusData"
data "StatusType" "BOOST"
using "EXTRA_ATTACK_THIRSTING_BLADE"
data "Boosts" "UnlockSpellVariant(ExtraAttackCheck() | IsModdedExtraAttack() & ~IsModdedNonExtraAttack(),ModifyUseCosts(Replace,ActionPoint,0,0,ActionPoint),ModifyIconGlow(),ModifyTooltipDescription())"
data "RemoveConditions" "(HasStringInSpellRoll('WeaponAttack') or HasStringInSpellRoll('UnarmedAttack') or SpellId('Target_CommandersStrike') or IsModdedExtraAttack()) and HasUseCosts('ActionPoint') and not IsOffHandAttack() and not IsModdedNonExtraAttack()"