Portal SAMP
[Ajuda] aplicar animação de string - Versão de Impressão

+- Portal SAMP (https://portalsamp.com)
+-- Fórum: SA-MP (https://portalsamp.com/forumdisplay.php?fid=5)
+--- Fórum: Área de suporte (https://portalsamp.com/forumdisplay.php?fid=6)
+--- Tópico: [Ajuda] aplicar animação de string (/showthread.php?tid=2903)



aplicar animação de string - hiwyn - 16/10/2022

Código:
CMD:anim(playerid, params[]) {
    new puId;
    if(sscanf(params,"d", puId))
    {
        SendClientMessage(playerid, -1, "Use: /anim [puId]");
        return true;
    }
    new str[256];

    format(str, sizeof(str), "apAnimlib:[%s] apAnimname[%s]", AnimInfo[puId][apAnimlib], AnimInfo[puId][apAnimname] );
    if(IsPlayerInRangeOfPoint(playerid, 3.0, AnimInfo[puId][apX], AnimInfo[puId][apY], AnimInfo[puId][apZ]))
    {
        SendClientMessage(playerid, COLOR_LIGHTRED, "doanim");
        ApplyAnimation(playerid, AnimInfo[puId][apAnimlib], AnimInfo[puId][apAnimname], 4.1, 1, 1, 1, 1, 1, 1);
    }
}

ta printando a msg que eu queria, mas não tá executando a animação:
Código:
apAnimlib:[PED] apAnimname[IDLE_STANCE]
doanim

pq?


RE: aplicar animação de string - xbruno1000x - 16/10/2022

Ou a variável está puxando valores errados, ou pode ser que as animações não estejam sendo pré carregadas.

Neste tópico eu enviei um código de pré-carregamento de anims:
https://portalsamp.com/showthread.php?tid=578


RE: aplicar animação de string - hiwyn - 16/10/2022

aparentemente não é nenhum dos dois

se eu fizer:
ApplyAnimation(playerid, "PED", "IDLE_STANCE", 4.1, 1, 1, 1, 1, 1, 1);
funciona

e o print que eu mostrei lá tá mostrando:
format(str, sizeof(str), "apAnimlib:[%s] apAnimname[%s]", AnimInfo[puId][apAnimlib], AnimInfo[puId][apAnimname] );
Código:
apAnimlib:[PED] apAnimname[IDLE_STANCE]



RE: aplicar animação de string - xbruno1000x - 16/10/2022

Os nomes não deveriam estar entre aspas? Nesse printf tá retornando strings sem aspas.


RE: aplicar animação de string - hiwyn - 17/10/2022

(16/10/2022 23:23)xbruno1000x Escreveu: Os nomes não deveriam estar entre aspas? Nesse printf tá retornando strings sem aspas.

não sei, como fazer pra usar eles com as aspas lá?


RE: aplicar animação de string - White_Blue - 17/10/2022

Revisei seu código várias vezes e não vi nada de errado. Talvez o problema esteja no enumerador AnimInfo, seria legal se você conseguisse mandar esse enumerador.


RE: aplicar animação de string - hiwyn - 17/10/2022

eu sou muito burro, o problema era que eu tava executando a animação de ficar parado
apAnimlib:[PED] apAnimname[IDLE_STANCE]

o meu print anim que tava bugado, eu usei essa função pra mostrar o anim que eu tava usando e ela as vezes mesmo executando uma animação não mostra nada, mostra PED IDLE_STANCE, tlg?

Código:
forward ShowPlayerAnim(playerid); public ShowPlayerAnim(playerid) {
    new animlib[32];
    new animname[32];
    new msg[128];
    GetAnimationName(GetPlayerAnimationIndex(playerid),animlib,32,animname,32);
    format(msg, 128, "ANIMATION(%i): animlib:[%s] animname:[%s]", GetPlayerAnimationIndex(playerid), animlib, animname);
    SendClientMessage(playerid, COLOR_LIGHTBLUE, msg);
    return 1;
}