Remélem nem gond de írtam én is egy változatot sõt nemsokára kész a másik változat is ahol csak az anim library nevek kerülnek lekérdezésre.
Csak azért írtam hogy ilyen megoldás is van, meg hogy elfoglaljam magam valamivel. :angel:
De így észre vettem hogy 131 animációs könyvtár van, hacsak a kódban nincs valami hibás rész.
Elsõ változat:[pawn]
public
OnPlayerSpawn(playerid)
{
if(IsPlayerNPC(playerid)) return 1; // Én kizártam innen az NPC-ket de lehet nekik se árt ez aki úgy gondolja törli ezt a sort.
if(!GetPVarType(playerid, \"anims_loaded\"))
{
SetPVarInt(playerid, \"anims_loaded\", 1);
new
animlib[32],
checkanimlib[32],
count; // Anim library számláló
checkanimlib = \"Csak azért hogy\"; // ne legyen üres mert akkor az strcmp nem azt az eredményt adja vissza amit kell.
for(new i = 1; i < 1812; i++)
{
if(!GetAnimationName(i, animlib, 32, \"\", 0))continue;
if(strcmp(animlib, checkanimlib) != 0)
{
count++;
// printf(\" %s \", animlib); // Debug
ApplyAnimation(playerid, animlib, \"null\", 0.0, 0, 0, 0, 0, 0);
}
format(checkanimlib, 32, \"%s\", animlib);
}
printf(\"%d, animlibrary preloaded succesfully.\", count); // Debug jellegû üzenet
}
return 1;
}
[/pawn]
Második változat:[pawn]
public
OnPlayerSpawn(playerid)
{
static
GetAnimLibraryIndex[ ] =
{
1, 2, 5, 17, 28, 41, 46, 53, 57, 76,
94, 103, 123, 141, 145, 163, 169, 179, 220, 225,
234, 248, 259, 266, 287, 312, 323, 341, 354, 360,
367, 379, 383, 393, 398, 403, 416, 423, 432, 436,
446, 454, 472, 482, 494, 504, 508, 524, 532, 533,
536, 569, 578, 611, 631, 638, 639, 641, 644, 647,
671, 684, 694, 704, 714, 722, 726, 730, 745, 761,
763, 765, 767, 806, 831, 839, 840, 881, 899, 916,
918, 947, 958, 980, 983, 995, 1289, 1293, 1298, 1308,
1329, 1331, 1336, 1353, 1357, 1365, 1370, 1377, 1382, 1387,
1392, 1408, 1420, 1424, 1449, 1452, 1456, 1459, 1467, 1468,
1470, 1490, 1508, 1531, 1538, 1545, 1555, 1561, 1618, 1622,
1626, 1643, 1648, 1656, 1662, 1666, 1684, 1701, 1713, 1746,
1779
};
if(IsPlayerNPC(playerid)) return 1;
if(!GetPVarType(playerid, \"anims_loaded\"))
{
SetPVarInt(playerid, \"anims_loaded\", 1);
new
animlib[32],
count;
for(new i; i < sizeof GetAnimLibraryIndex; i++)
{
if(!GetAnimationName(GetAnimLibraryIndex
, animlib, 32, \"\", 0)) continue;
count++;
// printf(\" %s \", animlib); // Debug
ApplyAnimation(playerid, animlib, \"null\", 0.0, 0, 0, 0, 0, 0);
}
printf(\"%d, animlibrary preloaded succesfully.\", count); // Debug jellegû üzenet
}
return 1;
}
[/pawn]
El is készült a második változat.