Ok, I figured out the maneuverability part, for anyone interested here's the code I used.
Code:
if (hero.child[xFly].tagis[Maneuver.Good] <> 0) then
perform hero.child[xFly].assign[Maneuver.Perfect]
elseif (hero.child[xFly].tagis[Maneuver.Average] <> 0) then
perform hero.child[xFly].assign[Maneuver.Good]
elseif (hero.child[xFly].tagis[Maneuver.Poor] <> 0) then
perform hero.child[xFly].assign[Maneuver.Average]
elseif (hero.child[xFly].tagis[Maneuver.Clumsy] <> 0) then
perform hero.child[xFly].assign[Maneuver.Poor]
endif
Still not sure on the rest.
Andrew