// Mystic ally, cast on elite if not air ally, or low spirit if air ally
bool hasAirAlly = HotbarSkills.AssignedSkills.Any(s => s.Power == SNOPower.X1_Monk_MysticAlly_v2 && s.RuneIndex == 2);
if (CombatBase.CanCast(SNOPower.X1_Monk_MysticAlly_v2, CombatBase.CanCastFlags.NoTimer))
{
bool useMysticAlly = false;
if (hasAirAlly)
useMysticAlly = Player.PrimaryResourcePct < 0.40;
else
useMysticAlly = TargetUtil.EliteOrTrashInRange(30f);
if (useMysticAlly)
return new TrinityPower(SNOPower.X1_Monk_MysticAlly_v2, 0f, Vector3.Zero, CurrentWorldDynamicId, -1, 2, 2, WAIT_FOR_ANIM);
}