Had another look, the syntax of the function call to handle if the raycast hit something is wrong.
It was:
if (result) {
this.onRayHit.bind(this);
}
And it should be:
if (result) {
this.onRayHit(result);
}
As you are calling a function.
I’ve fixed this particular issue in your project so you should be able to move onto the next bug