• Filter a source's strike modes to those usable given how many limbs currently grip it. A weapon strike mode declares the limb count it needs to wield (minParts) — a longbow's missile mode is minParts: 2 because it takes two hands to draw — so a mode whose minParts exceeds the holding-limb count is dropped. Intrinsic sources that no limb "holds" (combat-technique skills, signalled by heldLimbs === null) keep every mode.

    Mirrors the availability rule in sohl.document.actor.logic.BeingLogic.availableStrikeModes so the combat-tab listing and the roll-time usable-mode set agree (#836).

    Type Parameters

    • SM extends object

    Parameters

    • modes: readonly SM[]

      The source's strike modes.

    • heldLimbs: null | number

      Number of limbs gripping the source, or null for an intrinsic source (always available).

    Returns SM[]

    The subset of modes usable at this grip.