now with working wall collision