JS port is working, needs more collision check