Detectar movimiento del screen del player
Hola gente, me surgió una idea en un mod que estoy haciendo, pero para poder llevarla a cabo tengo que detectar algo y no se si esto es posible.
A lo que voy, es posible detectar si el player hace un movimiento de 360º? (no con el cuerpo, si no lo que sería el screen del player). Gracias. |
Re: Detectar movimiento del screen del player
Quote:
|
Re: Detectar movimiento del screen del player
Quote:
|
Re: Detectar movimiento del screen del player
En realidad seria 180º, porque 360º te dejaria en la misma posicion, para que darias una vuelta para matar a alguien :3, lo siento no poder ayudarte ya que soy nuevo;), pienso que seria así.
|
Re: Detectar movimiento del screen del player
Supongo que se refiere a esto...
[IMG]http://desmond.**************/Himg221/scaled.php?server=221&filename=dibujogts.jpg& res=landing[/IMG] Y luego que realiza el giro de 360º, el jugador mismo que realizó el giro, asesine en ese momento a una victima. Supongo que seria fácil si previenes que el ángulo de la vista del usuario, pasa por los diferentes puntos tomando como referencia de inicio ese momento en que apunto por primera vez a la victima, y luego realizas cálculos en caso de que el usuario haya intercedido entre 4 puntos como minimo, tales como 90º, 180º, 270º y luego el final y verificar si asesino a tal. Claro esta que no tengo idea de como verificar los diferentes cortes de ángulo. Saludos. PD: Arte. |
Re: Detectar movimiento del screen del player
Quote:
Me encantó.. alta explicación y despues tu respuesta, sinceramente me encantó xDD, igual gracias voy a ver si en scripting help saben algo :) Edit: vas a mi firma idolo xD |
Re: Detectar movimiento del screen del player
La verdad me la pase pensando estos últimos dias en tu idea, y llegue a una conclusión que vas a tener que sobreescribirlo vos en PAWN, como un simple calculo...
No es sencillo pero tampoco dificil de comprender el calculo. Tomas el angulo del screen del player, y refiriendo al de YAW. Si no recuerdo mal era Pitch, Yaw, y Roll, por lo tanto el de la posicion '1' en el vector asociado al angulo, es Yaw. PHP Code:
Si tengo un angulo obtenido en el CS el cual su valor es: -90º => | ( -90º ) | = 270º. Por lo tanto uno ves que se obtuvo dicho valor, pasamos a calculos su valor en radianes. Rad = Deg * ( K.pi / 180 ); Español: Radianes = Grados * ( pi / 180 ); Una ves que obtuvistes dicho valor en radianes puedes verificar los diferentes puntos mediante un simple if x1 == x2, claro que estariamos pasando una linea de consumo, supongo que es infima, ya que el unico valor que recorremos y verificamos son valores con coma flotante o decimales, como les quieras llamar. Te dejo un lindo dibujo: [IMG]http://img404.**************/img404/4194/superimagensenusradian.jpg[/IMG] Edit: Te sigo dejando datos... Para obtener el valor absoluto del angulo que se presente en un valor negativo: PHP Code:
Te dejo el plugin que estuve desarrollando hasta ahora, sirve, lo unico es que esta adaptado para funcionar correctamente si el giro se hace hacia la izquierda, hacia la derecha habria que cambiar unas lineas. PHP Code:
Detecta hacia los 2 lados, cuanto menor sea el tiempo aceptable para llegar a cada valor del vector fValores, es menos propenso a errores. PHP Code:
|
Re: Detectar movimiento del screen del player
Impresionante fear, muchísimas gracias por tu tiempo (se nota que te gusto la idea); ahora lo pruebo.
|
Re: Detectar movimiento del screen del player
Usa la constante M_PI y no es necesario usar las natives floatmul y las otras de su categoria porque el compilador convierte los signos en sus natives respectivamente. Chequea los angulos en PreThink porque es llamado antes de la funcion PM_Move del engine. En Post/PreThink NUNCA el parametro principal sera mayor o menor a 32 y 1 respectivamente. En lo personal no gastaria tanto code para realizar tan pequeño detalle, solo se necesitan usar operatorias simples para lograr esto.
|
| All times are GMT -4. The time now is 20:10. |
Powered by vBulletin®
Copyright ©2000 - 2024, vBulletin Solutions, Inc.