Sometimes (or is it always?) switchmove animations don't work from the init field.
Only if the loon don't have the appropriate behaviour, e.g. "safe", "aware" and so forth... some switchMoves have other conditions that needs to be fulfilled in order to work in the initField, but your method is also correct and simpler. I allways set the loons various behaviours in the "init.sqs": "_x setbehaviour ""safe""" foreach [eg1,eg2,eg3] <--------- Groups asigned in the array