Bueno, pues otra dudilla de las mias:
En esta ocasión estoy intentando crear un offset en un personaje 2D. El objetivo es crear X distancia de seguridad mínima, a partir de la cual el jugador pueda disparar, apuntando con el ratón. Esa distancia será justo la longitud del brazo del personaje. Es decir, quiero que no se pueda disparar desde la punta de mi pistola hacia el interior de mi personaje (para no poder suicidarme, básicamente).
Hasta ahora lo que he conseguido es algo muy vago y con eróticos resultados. Estoy calculando la posición del ratón, la del player, un radio (un poco a ojo, de momento tengo 0,73f) y comprobando si la posición del ratón es mayor que la del player+radio (también compruebo player-radio para la parte trasera y la de abajo del player). El resultado es nefasto xD. Sólo me funciona cuando apunto en las diagonales, con un ángulo un tanto ámplio, pero nada bueno vaya...
Antes tenía menos restricciones en la comprobación, y probando sólo en el eje Y, conseguía que toda la zona superior estuviera bien cubierta, pero al añadir el eje X, todo se va a la mierda >.<.
Os dejo el código de lo que tengo (la parte de rotar los brazos y de disparar no la pongo, no creo que tenga importancia):