[Consulta] Caнda
#1

їHay alguna forma de detectar las caнdas?

Es que cuando uno se cae por ejemplo de 10 metros, sigue totalmente vivo, entonces se me dio por intentar programar un sistema en el cual, por dar un ejemplo, a los 10 metros se aplique un textdraw rojo simulando el impacto, mareo, en fin, sй hacer lo del efecto que quiero lograr, lo que no sй, es como detectar que un jugador se cayу..

A mн lo ъnico que se me habнa ocurrido, es tratar de hacer el sistema con la razуn de muerte (reason de OnPlayerDeath) que si no me equivoco, la reason 54 es la de caнda (splat o fall), pero eso nomбs detectarнa si muere, y si sufre daсos leves no. O si no, usar INVALID_PLAYER_ID de OnPlayerTakeDamage, pero no creo que ninguna de mis dos ideas sirva.
Reply
#2

pawn Код:
public OnPlayerTakeDamage(playerid, issuerid, Float:amount, weaponid)
{
    if(issuerid == INVALID_PLAYER_ID && weaponid == 54)
    {
        //asd
    }
    return 1;
}
Reply
#3

Gracias, y una cosa mбs, para detectar por ejemplo, si se cae a una altura de 10 metros (float Z) le de X vida, si se cae a una altura de 20 metros (float Z) le da otra X vida, їcon quй funciуn la hago (me refiero a la funciуn para detectar la altura, no a SetPlayerHealth)?
Reply
#4

Podrias detectar la velocidad pero quizas proboque bug ya que detectaria si vas en coche o en moto (osea la velocidad xd)
Reply
#5

Podrнas detectar la vida que le bajo y asн mбs o menos calcular la altura de la caнda. No se puede detectar nativamente la altura de la caнda, pero podrнa hacerse un timer que detecte cuando la coordenada Z disminuya considerablemente, es decir, cayendo.
Reply
#6

їY por que no detectar la animaciуn?

Una vez detectada seria bastante complejo el obtener la altura pero no imposible. Abrнa que partir de un punto y hacer una especie de "tabla" de alturas y daсo.

No se si me explico...
Reply
#7

No, por daсo no serнa... exacto ni aproximado en algunos casos.

[20:22:01] Altura: 20. Daсo: 20.99
[20:22:07] Altura: 19. Daсo: 19.35

[20:22:15] Altura: 14. Daсo: 10.59
[20:22:20] Altura: 18. Daсo: 17.60
[20:22:25] Altura: 17. Daсo: 16.22
[20:22:29] Altura: 20. Daсo: 20.94

[20:22:33] Altura: 27. Daсo: 3.30
[20:22:42] Altura: 25. Daсo: 28.39
[20:22:57] Altura: 26. Daсo: 29.51

[20:23:05] Altura: 11. Daсo: 4.15

Se ve que lo hace al azar el daсo o algo.. xD En algunos da casi 1 de daсo por 1 de altura, en otro da ni 0.5 de daсo por altura y en otro da mбs de 1 xD

La mejor opciуn serнa la animaciуn. Si sacas la posiciуn del salto y la del aterrizaje:

inicial - final = altura
[21:23:03] 6.53 - 1.57 = 4.95
[21:23:31] 4.89 - 1.58 = 3.31
[21:23:45] 6.55 - 1.57 = 4.97
[21:24:08] 2.01 - 1.57 = 0.43
[21:24:22] 7.66 - 1.43 = 6.23
[21:24:49] 8.57 - 1.42 = 7.14
[21:25:03] 8.57 - 1.46 = 7.11

Te da la altura perfecta.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)