Basically with this, I’d InvokeClient and return the mouse position or ray. The problem with this is that it may delay in games with more than 1 player.
This way is good, but exploitable as players know how to exploit things that need to be thrown. I’d have to pass the mouse position, or ray through the function to server for it to work. The problem with this is that people can tamper with the position and make auto aim. How can I prevent this from happening?