Are you using two md2's or are you using a md2 for the weapon and ms3d for the model? I have found that with md2 animation you cannot use setCurrentFrame() or setFrameLoop() but must use setMD2Animation(). So, you should either use all ms3d or all md2.
If you use two md2's then simply do this
Code: Select all
model->setMD2Animation(animLoop);
weapon->setMD2Animation(animLoop);
If two ms3ds
Code: Select all
model->setFrameLoop (start, end);
weapon->setFrameLoop (start, end);
It is also awkward to use md2 weapons with ms3d models because md2 weapons (the ones that were actually made for Q2 anyway) have animations that match the movement of their respective models. That's why when you download an md2 model you get a tris.md2 (the model) and a weapon.md2 both, because the match each other but do not match others. That could also be your problem: you could be using a homer simpson md2 model with a sonic the hedgehog weapong model or something like that and thus they will be out of sync even if you correctly set them both to the same animation.