ball now takes a vector for position