Raycastで衝突したオブジェクトはRaycastHitのcolliderからGameObjectを取得できる。
またはRaycastHitのtransformからも取得できる。
if (Physics.Raycast(pos, dir, out hit)) { GameObject obj = hit.collider.gameObject; }
で、ここから自分が作っているスクリプトのコンポーネントを取得したいのだけど、そのスクリプトが見つからないとなってしまう。名前空間が違うのでusingが足りないのだろう。追加したStandard Assetsとかプロジェクトで作ったものとかはどのような名前空間になっているのだろう。