make collision check and dead part, handle exception