SA-MP Forums

Go Back   SA-MP Forums > Non-English > Languages > Español/Spanish

 
 
Thread Tools Display Modes
Old 10/11/2016, 12:08 AM   #1
SetPlayerWantedLevel
Big Clucker
 
Join Date: Oct 2014
Posts: 69
Reputation: 6
Default Obtener animaciones del jugador en bucle

Buenas, estoy haciendo un sistema y para probar que todo vaya bien preciso obtener las animaciones del jugador, TODAS las que se hagan mientras una variable que definí esté en 0, lo que hice fue esto:

Code:
CMD:test(playerid,params[])
{
	op[playerid] = 0;
	do{
    	new animlib[32];
        new animname[32];
        new msg[128];
        GetAnimationName(GetPlayerAnimationIndex(playerid),animlib,32,animname,32);
        format(msg, 128, "anim: %s %s", animlib, animname);
        Log("logs/testing.log", msg);
        
        new Float:Velocity[3], string[80];
		GetPlayerVelocity(playerid, Velocity[0], Velocity[1], Velocity[2]);
        format(string, sizeof(string), "Speed: %f, Y: %f, Z: %f", Velocity[0], Velocity[1], Velocity[2]);
        Log("logs/testingVelocity.log", msg);
        return 1;
	}
    while(op[playerid] == 1);
    return 1;
}

Pero en el log solo guarda una animación, no todas, gracias
SetPlayerWantedLevel is offline  
Old 10/11/2016, 01:23 AM   #2
Swedky
Banned
 
Join Date: Jun 2013
Location: Argentina.
Posts: 2,099
Reputation: 827
Default Respuesta: Obtener animaciones del jugador en bucle

Es porque GetPlayerAnimationIndex(playerid) devuelve la animación ACTUAL que está reproduciendo el jugador.

https://wiki.sa-mp.com/wiki/Animations
Swedky is offline  
Old 10/11/2016, 01:38 AM   #3
SetPlayerWantedLevel
Big Clucker
 
Join Date: Oct 2014
Posts: 69
Reputation: 6
Default Re: Respuesta: Obtener animaciones del jugador en bucle

Quote:
Originally Posted by EnzoMetlc View Post
Es porque GetPlayerAnimationIndex(playerid) devuelve la animación ACTUAL que está reproduciendo el jugador.

https://wiki.sa-mp.com/wiki/Animations
Es lo que quiero, la animación actual. El sistema usa muchas animaciones y quiero obtener TODAS las que hace el jugador cuando se usa el comando ese, pero solo marca una animación. Por ejemplo corre, nada, salta, quiero que me marque todo. Gracias!
SetPlayerWantedLevel is offline  
Old 10/11/2016, 01:42 AM   #4
Swedky
Banned
 
Join Date: Jun 2013
Location: Argentina.
Posts: 2,099
Reputation: 827
Default Respuesta: Obtener animaciones del jugador en bucle

En ese caso deberías utilizar OnPlayerUpdate y verificar qué animación está usando el jugador.

Code:
public OnPlayerUpdate(playerid)
{
    static animid;
    animid = GetPlayerAnimationIndex(playerid);
    switch(animid)
    {
        case -anim-: // ...
        case -anim-: // ...
    }
    return 1;    
}

Recorda que cada animación tiene su índice y de ésa manera puedes hacer las verificaciones sin preocuparte por sobrecargar esa callback.
Swedky is offline  
Old 10/11/2016, 08:13 PM   #5
Zume
High-roller
 
Zume's Avatar
 
Join Date: Nov 2011
Location: El Salvador
Posts: 1,659
Reputation: 311
Default Respuesta: Obtener animaciones del jugador en bucle

Tengo varias dudas de tu pregunta, puede ser que no la haya leído en el mismo contexto de programación ..

Quieres guardar en un .log todas las animaciones que hace un jugador, quieres ver todas las que están ejecutando los jugadores o quieres ver?

Si es lo primero no necesitas de un bucle y tienes un bug en la función Log
__________________
Zume is offline  
Old 10/11/2016, 09:29 PM   #6
SetPlayerWantedLevel
Big Clucker
 
Join Date: Oct 2014
Posts: 69
Reputation: 6
Default Re: Obtener animaciones del jugador en bucle

Gracias a ambos, lo terminé resolviendo de otra forma
SetPlayerWantedLevel is offline  
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off



All times are GMT. The time now is 02:29 AM.


Powered by vBulletin® Version 3.8.6
Copyright ©2000 - 2017, Jelsoft Enterprises Ltd.