Автор: WakeUp
Думаю все сталкивались с такой проблемой, когда вводишь какую-либо команду, например: /s (Кричать), текст выходит, а анимация с первого раза не показалась.
При помощи этого кода, мы исправляем эту проблему, то есть теперь любая анимация которая есть в Samp будет действовать с первого ввода команды или чего либо.
Создадим переменную:
Code: Select all
new bool:animloading[MAX_PLAYERS];
Мы создали переменную, далее нам нужна сама погрузка всех анимация:
В public OnPlayerConnect(playerid), добавляем:
Code: Select all
animloading[playerid] = false;
В public OnPlayerSpawn(playerid), добавляем:
Code: Select all
if(animloading[playerid] == false)
{
PreloadAnimLib(playerid,"BOMBER");
PreloadAnimLib(playerid,"RAPPING");
PreloadAnimLib(playerid,"SHOP");
PreloadAnimLib(playerid,"BEACH");
PreloadAnimLib(playerid,"SMOKING");
PreloadAnimLib(playerid,"FOOD");
PreloadAnimLib(playerid,"ON_LOOKERS");
PreloadAnimLib(playerid,"DEALER");
PreloadAnimLib(playerid,"CRACK");
PreloadAnimLib(playerid,"CARRY");
PreloadAnimLib(playerid,"COP_AMBIENT");
PreloadAnimLib(playerid,"PARK");
PreloadAnimLib(playerid,"INT_HOUSE");
PreloadAnimLib(playerid,"FOOD");
PreloadAnimLib(playerid,"CRIB");
PreloadAnimLib(playerid,"ROB_BANK");
PreloadAnimLib(playerid,"JST_BUISNESS");
PreloadAnimLib(playerid,"PED");
PreloadAnimLib(playerid,"OTB");
animload[playerid] = true;
}
То есть мы сделали все подгруппы анимаций, теперь при спавне они автоматом буду прогружаться.
Ну и в любое место добавляем:
Code: Select all
PreloadAnimLib(playerid, animlib[])
{
ApplyAnimation(playerid,animlib,"null",0.0,0,0,0,0,0);
}