added wall collision bouncing