Vector math problem

BlitzMax Forums/BlitzMax Programming/Vector math problem

I have implended vectors for movement and such, but I found a problem in my way of setting the speed limit. Each Tank in my game has a force which makes it accelerate. Right now I limit this force to only apply If Tank.Speed.Length() < Tank.MaxSpeed. But the tank could in an explosion be thrown much faster than it's max speed. The side effect is that when the tank goes faster than MaxSpeed because of "outside" factors, it can't break or use it's thrusters/engine force. I need a way to handle this but I'm unsure how to attack the problem. Somehow I would want to project the speed vector on the tank's thruster vector and check if the speed forward is greater than the maxspeed. Does anyone know how to solve this?