上下左右のどの方向に移動しているかの条件式はvx、vyそれぞれ(○>0)と(○<0)みたく符号で判定してやるといいかも。 あとY成分は画面下方向がプラスなので、計算式は上下反転した感じになるのを意識してやるのが注意点ですね。