(02/05/2024 23:58)Ryzen_ Escreveu:(02/05/2024 20:56)BitSain Escreveu:(02/05/2024 19:24)Ryzen_ Escreveu:Existe sim, usando a Função GetPlayerAnimationIndex. Código de exemplo:(01/05/2024 22:27)BitSain Escreveu:(01/05/2024 21:45)Ryzen_ Escreveu: Criei um comando (/handsup) onde o player iria levantar as mãos, e através disso poderia ser feito um assalto ou sequestro por exemplo (apenas se o player tivesse com a determinada ação ativa. Tudo está funcionando ok para jogadores de PC, porém, quando jogadores mobile a utilizam, nada acontece. Tem alguma forma de corrigir isso?Com o SpecialAction, isso acontecia quando eu estava perto de um veículo. (SAMP Launcher)
Código PHP:CMD:handsup(playerid) {
if (GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_HANDSUP) return ClearAnimations(playerid);
SetPlayerSpecialAction(playerid, SPECIAL_ACTION_HANDSUP);
return 1;
}
Mas tenha de alternativa a função ApplyAnimation:
Código PHP:ApplyAnimation(playerid, "PED", "HANDSUP", 4.1, 0, 1, 1, 0, 0, 1);
Verifiquei, e realmente o que acontece é essa questão do veículo. Existe alguma forma de verificar qual animação o player está usando no momento? No caso da Action, eu poderia simplesmente usar: "if (GetPlayerSpecialAction(playerid) == SPECIAL_ACTION_HANDSUP) {} ...". Existe alguma forma parecida para as animações?
Código PHP:CMD:handsup(playerid, params[]){
if(GetPlayerAnimationIndex(playerid) != 1169) { // 1169 = index da animação HANDSUP.
ApplyAnimation(playerid, "PED", "HANDSUP", 4.1, 0, 1, 1, 0, 0, 1);
SendClientMessage(playerid, -1, "Você levantou suas mãos.");
return true;
}
else{
ClearAnimations(playerid);
SendClientMessage(playerid, -1, "Você abaixou suas mãos.");
return true;
}
}
Muito obrigado, funcionou. Só precisei alterar o a opção de congelar o jogador para "true". Quanto a questão do "Tempo", colocar em 0 tornaria isso um loop. Isso poderia ser considerada uma má prática? (já que o objetivo é executar a animação e ficar parado nela)
Não seria, mas a animação irá se repetir como o próprio parâmetro diz: Loop.
Se eu não me engano: *A Animação irá se repetir sem parar*, até você cancelar.