Okay - if it were selectable only once, that would mean that the user didn't need to select which set of additional arms was now primary - there'd only be one set to find.
Actually, thinking about it further, there is a way to accomplish this without the user needing to select a specific set of claws to improve.
Alright. When you set up your additional arms ability, add a custom tag to it. Let's say SWAddArm.
Now, when you bootstrap the claw attack from that ability, press the Tags button, add a new tag, and give it that Custom tag you've defined:
group id: Custom, tag id: SWAddArm
You'll also force that claw to always be secondary:
group id: Helper, tag id: NatOverSec
On the "make our new claws primary attacks" you'll search through all the claw attacks on the hero that have been given that Custom tag:
phase: Pre-Levels, priority: 5000
Code:
var doneone as number
~find the claw attacks that came from the additional arms ability and are still forced to be secondary
foreach pick in hero from BaseNatWep where "IsWeapon.wClaw & Custom.SWAddArm & Helper.NatOverSec"
~as long as we haven't made one of our claw attacks primary, do so
if (doneone = 0) then
perform eachpick.delete[Helper.NatOverSec]
~and make sure we won't make a second one primary
doneone = 1
endif
nexteach
According to the Bestiary, pg. 302, claws default to primary, so that's the behavior Hero Lab follows - once you delete Helper.NatOverSec, the claws will revert to being primary natural attacks.
It should also work if you add multiple copies of "make our new claws primary attacks" - each copy will find and make primary only one set of claws.