<thing id="cMnkS2FOB" name="Flurry of Blows" description="Starting at 1st level, a monk can make a flurry of blows as a full-attack action. When doing so he may make one additional attack using any combination of unarmed strikes or attacks with a special monk weapon (kama, nunchaku, quarterstaff, sai, shuriken, and siangham) as if using the Two-Weapon Fighting feat (even if the monk does not meet the prerequisites for the feat). For the purpose of these attacks, the monk's base attack bonus is equal to his monk level. For all other purposes, such as qualifying for a feat or a prestige class, the monk uses his normal base attack bonus.{br}{br}At 8th level, the monk can make two additional attacks when he uses flurry of blows, as if using Improved Two-Weapon Fighting (even if the monk does not meet the prerequisites for the feat).{br}{br}At 15th level, the monk can make three additional attacks using flurry of blows, as if using Greater Two-Weapon Fighting (even if the monk does not meet the prerequisites for the feat).{br}{br}A monk applies his full Strength bonus to his damage rolls for all successful attacks made with flurry of blows, whether the attacks are made with an off-hand or with a weapon wielded in both hands. A monk may substitute disarm, sunder, and trip combat maneuvers for unarmed attacks as part of a flurry of blows. A monk cannot use any weapon other than an unarmed strike or a special monk weapon as part of a flurry of blows. A monk with natural weapons cannot use such weapons as part of a flurry of blows, nor can he make natural attacks in addition to his flurry of blows attacks.{br}{br}By spending 1 point from his ki pool, a monk can make one additional attack at his highest attack bonus when making a flurry of blows attack." compset="ClSpecial" summary="Make Flurry of Blows attack as a full action." replaces="cMnkFlurr">
<fieldval field="actName" value="Flurry of Blows: 1 Ki: Gain another attack"/>
<tag group="SpecType" tag="Attack" name="Attack" abbrev="Attack"/>
<tag group="AbilType" tag="Extra" name="Extraordinary Ability" abbrev=" (Ex)"/>
<eval phase="Final" priority="10000"><![CDATA[
if (field[xIndex].value = 3) then
field[listname].text = "Flurry of Blows (Greater Two-Weapon Fighting)"
elseif (field[xIndex].value = 2) then
field[listname].text = "Flurry of Blows (Improved Two-Weapon Fighting)"
else
field[listname].text = "Flurry of Blows (Two-Weapon Fighting)"
endif
~if we have the Ki Pool ability, the user can activate this ability for an extra initial attack
if (hero.childfound[cMnkKiPool].tagis[Helper.ShowSpec] <> 0) then
perform assign[User.Activation]
endif]]></eval>
<eval phase="Final" priority="20000" index="2"><![CDATA[
~only run these calculations on the first copy
doneif (tagis[Helper.FirstCopy] = 0)
var i as number
var j as number
var x as number
var MnkBAB as number
~ Set FoB negative value
field[abValue].value += 2
~ Calc just the Monk BAB
MnkBAB = int(0.75*hero.child[cHelpMnk].field[cTotalLev].value)
~starting at our Monk level - 2 + Other classes BAB
~j = field[xAllLev].value - 2
j = (hero.child[Attack].field[tAtkBase].value - MnkBAB) + (field[xAllLev].value - field[abValue].value)
~on the first pass through
i = 1
field[livename].text = "Flurry of Blows "
hero.child[wUnarmed].field[livename].text &= " FoB "
~ Calc just the Monk BAB and remove it from the Unarmed to hit
x = hero.child[wUnarmed].field[wAttack].value - hero.child[Attack].field[tAtkBase].value
~if we're active, the user has spent a Ki point for an extra attack at the highest rating
if (field[abilActive].value <> 0) then
field[livename].text &= signed(j) & "/"
hero.child[wUnarmed].field[livename].text &= signed(j+x) & "/"
endif
~as long as our value remains above -2 (which would mean that our effective BAB remains above 0 - the normal requirement for getting an extra attack)
while (j > -2)
~add a / if this isn't the first time through
if (i > 1) then
field[livename].text &= "/"
hero.child[wUnarmed].field[livename].text &= "/"
endif
~append our bonus
field[livename].text &= signed(j)
hero.child[wUnarmed].field[livename].text &= signed(j+x)
~if we've been through this a number of times that's less than or equal to the number of Flurry abilities we've gained, add a second attack at this bonus
if (i <= field[xCount].value) then
field[livename].text &= "/" & signed(j)
hero.child[wUnarmed].field[livename].text &= "/" & signed(j+x)
endif
~reduce our bonus by 5 and increase our pass count by 1, then go to the next loop
j -= 5
i += 1
loop
~ Apply the bonus to our flurry of blows weapon
~container.childfound[wFlurry].field[wAttack].value += bonus
~var i as number
~var result as number
~for i = 1 to extra
~perform hero.childfound[wFlurry].assign[Helper.ExtraHigh]
~next]]></eval>
</thing>