a bit of an unintuitive as this merely alters the velocity, but doesn't include collision  effects such as damage, youcollidedwithsomethingevent(), etc. alterVelocity<byCollision>() might be a better choice