still weird but getting less weird, fixed an error in the reflection vector