public OnVehicleSpawn(vehicleid)
{
UcitajTablice();
return 1;
}
CMD:regv(playerid, params[])
{
new tablica;
if(sscanf(params, "s", tablica)) return SendClientMessage(playerid, -1, "Korištenje: /regv [text - maximalno 8 znakova]");
if(!IsPlayerInAnyVehicle(playerid)) return SendClientMessage( playerid, -1, "Morate biti u vozilu" );
if(IsPlayerInRangeOfPoint(playerid,5,x,y,z)) //ovdje idu tvoje koordinate
{
new vozilo, Float:vP;
vozilo = GetPlayerVehicleID( playerid );
SetVehicleNumberPlate(vozilo, tablica );
new string;
format(string, 40, "Vozilo: %d\nText tablice: %s", vozilo, tablica);
SacuvajTablicu(string);
GetPlayerPos(playerid, vP, vP, vP );
GetVehicleZAngle(vozilo, vP );
SetVehicleToRespawn(vozilo);
SetVehiclePos(vozilo, vP, vP, vP );
SetVehicleZAngle(vozilo, vP );
PutPlayerInVehicle(playerid, vozilo, 0);
}
return 1;
}
stock SacuvajTablicu(string[])
{
new entry;
format(entry, sizeof(entry), "%s\r\n",string);
new File:hFile;
hFile = fopen("tablica.dat", io_append);
fwrite(hFile, entry);
fclose(hFile);
}
stock UcitajTablice()
{
new arrCoords;
new strFromFile2;
new cplate;
new cid;
new File:file = fopen("tablica.dat", io_read);
if (file)
{
new idx;
while (idx < 256)
{
fread(file, strFromFile2);
split(strFromFile2, arrCoords, ',');
strmid(cid, arrCoords, 0, strlen(arrCoords),255);
strmid(cplate, arrCoords, 0, strlen(arrCoords),255);
SetVehicleNumberPlate(cid,cplate);
idx++;
}
fclose(file);
}
return 1;
}
stock split(const strsrc[], strdest[][], delimiter)
{
new i, li;
new aNum;
new len;
while(i <= strlen(strsrc)){
if(strsrc==delimiter || i==strlen(strsrc)){
len = strmid(strdest, strsrc, li, i, 128);
strdest = 0;
li = i+1;
aNum++;
}
i++;
}
return 1;
}
Malo sebi optimiziraj i prebaci na drugi sistem cuvanja podataka na pimjer Y_INI...
Takodje, mozda ces morati malo da sredis jer sam ovo napravio bez testiranja...