In my older XMLs I had a great deal of complexity involved with different tiers of accuracy. Eventually more and more got removed as it became less and less relevant. Given that it looks to be a notable issue again, it's definitely worth considering what's needed.
The XML already has a multi-tier accuracy setting (normal, acc, maxacc). For Focus, the simplest thing to do would be to set it such that when Focus is up, it drops an acc tier. So you could use MaxAcc normally, and Acc when Focus is up, or Acc normally and Normal when Focus is up.
A such, I'd add a $Focus variable, and the following rules:
Code xml
<var name="Focus">Normal</var>
<if Spell="Focus" advanced='"$Focus"="Normal"'>
<if advanced='"$OffenseMode"="Acc"'>
<var cmd="set OffenseMode Normal" />
<var cmd="set Focus Acc" />
</if>
<elseif advanced='"$OffenseMode"="MaxAcc"'>
<var cmd="set OffenseMode Acc" />
<var cmd="set Focus MaxAcc" />
</elseif>
<if>
<elseif NotBuffActive="Focus" advanced='"$Focus"!="Normal"'>
<var cmd="set OffenseMode $Focus" />
<var cmd="set Focus Normal" />
</elseif>
That will drop you one accuracy tier while Focus is up (and revert it when Focus is down), if your OffenseMode is set to Acc or MaxAcc.