started to implemented collisionstate(untested)