09.10.2016, 07:25
Hey guys. This is my first dynamic system and i found bug that i really can't fix. This system is for creating pickups. When i type /createpickup it is creating it. But problem is that in scriptfiles it wll make only 1 .txt file named %d. It will save VW and X, Y, Z positions and will set their values 0. But only in one .txt file. Here is saving, loading and command
Thank you in advance 
EDIT:I fixed thos coords in .txt file but still it only creates 1 .txt file named %d..
PHP код:
CMD:createpickup(playerid, params[])
{
new Float:x, Float:y, Float:z, pid = NextPickupID();
GetPlayerPos(playerid, x, y, z);
PickupInfo[pickid][pPickup] = CreateDynamicPickup(PICKUP_ID, PICKUP_TYPE, x, y, z);
SavePickups(pid);
return 1;
}
stock SavePickups(pid)
{
new piFile[50];
format(piFile, sizeof(piFile), PICKUPI_FILE, pid);
new INI:File = INI_Open(PICKUPI_FILE);
INI_WriteInt(File, "VW", PickupInfo[pickid][pVW]);
INI_WriteFloat(File, "X", PickupInfo[pickid][pX]);
INI_WriteFloat(File, "Y", PickupInfo[pickid][pY]);
INI_WriteFloat(File, "Z", PickupInfo[pickid][pZ]);
INI_Close(File);
return 1;
}
stock NextPickupID() //stock by Slay_ ... I Think
{
new id = -1;
for(new loop = (0), provjera = (-1), Data_[64] = "\0"; loop != MAX_PICKUPA; ++ loop)
{
provjera = (loop + 1);
format(Data_, (sizeof Data_), PICKUPI_FILE, provjera);
if(!fexist(Data_))
{
id = (provjera);
break;
}
}
return id;
}
forward LoadPickups(name[], value[]);
public LoadPickups(name[], value[])
{
INI_Int("VW", PickupInfo[pickid][pVW]);
INI_Float("X", PickupInfo[pickid][pX]);
INI_Float("Y", PickupInfo[pickid][pY]);
INI_Float("Z", PickupInfo[pickid][pZ]);
return 1;
}
public OnGameModeInit()
{
for(new p = 0; p < MAX_PICKUPA; p++)
{
new piFile[50];
format(piFile, sizeof(piFile), PICKUPI_FILE, p);
if(fexist(piFile))
{
INI_ParseFile(piFile, "LoadPickups", .bExtra = true, .extra = p);
}
}
return 1;
}

EDIT:I fixed thos coords in .txt file but still it only creates 1 .txt file named %d..
