Zdravím, mám udělaný vytváření/editování/načítání a ukládání objectů. Ale problém je v tom, že vždy se mi uloží max 37 objectů ..
prosím o rady
COMMAND:saveobjects(playerid,params[])
{
if(GetPVarInt(playerid,"Admin") < 3) return 0;
if(isnull(params)) return SendClientMessage(playerid,0xFF0000FF,"Uložení objektů: /saveobjects <název>");
new string[100];
format(string,sizeof(string),"Server/Objekty/%s.ini",params);
if(DOF2_FileExists(string)) return SendClientMessage(playerid,0xFF0000FF,"Tento název již existuje");
new Float:Pos[3];
new Float:Rot[3];
new ulozit[40];
new total;
for(new i=0; i<1000; i++)
{
if(Objects[i] != -1) //Pokud je daný object vytvořen
{
if(Objekty[i] != 0) //Při vytváření dosazuji do proměnné model, kvůli ukládání, takže tady to zjistí, zda se model != 0
{
GetObjectPos(Objects[i],Pos[0],Pos[1],Pos[2]); //Zjistí se pozice
GetObjectRot(Objects[i],Rot[0],Rot[1],Rot[2]); //Zjistí se rotace
format(ulozit,sizeof(ulozit),"Object%d",i);
DOF2_SetInt(string,ulozit,Objekty[i]); //Uloží se model
format(ulozit,sizeof(ulozit),"X%d",i);
DOF2_SetFloat(string,ulozit,Pos[0]); //Uloží se pozice
format(ulozit,sizeof(ulozit),"Y%d",i);
DOF2_SetFloat(string,ulozit,Pos[1]); //Uloží se pozice
format(ulozit,sizeof(ulozit),"Z%d",i);
DOF2_SetFloat(string,ulozit,Pos[2]); //Uloží se pozice
format(ulozit,sizeof(ulozit),"RotX%d",i);
DOF2_SetFloat(string,ulozit,Rot[0]); //Uloží se rotace
format(ulozit,sizeof(ulozit),"RotY%d",i);
DOF2_SetFloat(string,ulozit,Rot[1]); //Uloží se rotace
format(ulozit,sizeof(ulozit),"RotZ%d",i);
DOF2_SetFloat(string,ulozit,Rot[2]); //Uloží se rotace
total++; //Počet objectů se navýší
}
}
}
DOF2_Exit();
format(string,sizeof(string),"Uloženo %d objektů pod názvem %s",total,params); //Pošle zprávu o počtu obj a název
SendClientMessage(playerid,0xFF0000FF,string);
return 1;
}
Pokud chci uložit např. 50 obj, napíše se, že bylo uloženo 50, ale uloží se jen 37
Díky za rady a tipy