stock Objectment(){new idx = 1, File:file;new string[1300];while(idx < S_MAX_OBJECTS){ format(string, sizeof(string), \"%d|%f|%f|%f|%f|%f|%f|%d\\r\\n\", Object[idx][oID],Object[idx][oPos][0],Object[idx][oPos][1],Object[idx][oPos][2],Object[idx][oPos][3],Object[idx][oPos][4],Object[idx][oPos][5],Object[idx][oCreated]); if(idx == 1) { file = fopen(\"objectek.cfg\", io_write); } else { file = fopen(\"objectek.cfg\", io_append); }fwrite(file, string);fclose(file);idx++;}print(\"Az Online munkához tartozó elmentett objectek sikeresen mentve.\");} stock Objectbetolt(){new oinfo[8][48];new string[512];new File:file = fopen(\"objectek.cfg\", io_read);if(file){ new idx = 1;while(idx < S_MAX_OBJECTS){ fread(file, string); split(string, oinfo, \'|\'); Object[idx][oID] = strval(oinfo[0]); Object[idx][oPos][0] = floatstr(oinfo[1]); Object[idx][oPos][1] = floatstr(oinfo[2]); Object[idx][oPos][2] = floatstr(oinfo[3]); Object[idx][oPos][3] = floatstr(oinfo[4]); Object[idx][oPos][4] = floatstr(oinfo[5]); Object[idx][oPos][5] = floatstr(oinfo[6]); Object[idx][oCreated] = strval(oinfo[7]); if(Object[idx][oCreated]) { Object[idx][oCreated] = CreateDynamicObject(Object[idx][oID],Object[idx][oPos][0], Object[idx][oPos][1], Object[idx][oPos][2], Object[idx][oPos][3], Object[idx][oPos][4],Object[idx][oPos][5]); } idx++; }}print(\"Az objectek sikeresen betöltve\");return 1;}
while(fread(File:file, str))
//OnFilterScriptInit alá:ReadFile(\"objectek.cfg\");stockReadFile(filename[]){newbuff[256],File:opened = fopen(filename, io_read);if(opened){while(fread(opened, buff)){ print(buff);}}}
Egyetlen egy gond van hogy samp native funkciók közt nincs olyan ami visszaadná egy object modelid számát.Ezért csak a streamer plugin által kínált lehetõséggel lehet megoldani egyszerûen.Sajnos a mentés részét nem igazán értem miért szeretnéd hiszen már eleve megvan!! (abból töltöd be az objecteket)Ha új objecteket készítesz akkor már eleve elegendõ mindig csak az újonnan létrehozott object adatait hozzáírni a meglévõhöz.Persze itt egy idõ után gondot okoz hogyan kell törölni egy objectet.Mivel magadtól szeretnéd megírni, talán annyit hogy betöltésnél a következõ kód szépen kiírja konzolba mit olvasott be a fájlból, az utolsó sorig: //OnFilterScriptInit alá:ReadFile(\"objectek.cfg\");stockReadFile(filename[]){newbuff[256],File:opened = fopen(filename, io_read);if(opened){while(fread(opened, buff)){ print(buff);}}}