Jump to content

Saving of loading werkt niet, maar geen idee wat er fout is.


propje400

Recommended Posts

Hoi, Ik heb een point systeem nagemaakt van het faction systeem van Carlito's Roleplay.

Ik heb dit als Save:

public LoadPoints()
{
new arrCoords[7][64];
new strFromFile2[256];
new File: file = fopen("points.cfg", io_read);
if (file)
{
	new idx;
	while (idx < sizeof(DynamicPoints))
	{
		fread(file, strFromFile2);
		split(strFromFile2, arrCoords, '|');
		DynamicPoints[idx][fpX] = floatstr(arrCoords[0]);
		DynamicPoints[idx][fpY] = floatstr(arrCoords[1]);
		DynamicPoints[idx][fpZ] = floatstr(arrCoords[2]);
		DynamicPoints[idx][Price] = strval(arrCoords[3]);
		DynamicPoints[idx][Pickupid] = strval(arrCoords[4]);
		strmid(DynamicPoints[idx][PointName], arrCoords[5], 0, strlen(arrCoords[5]), 255);
		strmid(DynamicPoints[idx][CurrentOwner], arrCoords[6], 0, strlen(arrCoords[6]), 255);
		DynamicPoints[idx][Pickupid] = CreateStreamPickup(1239,1,DynamicPoints[idx][fpX],DynamicPoints[idx][fpY],DynamicPoints[idx][fpZ],PICKUP_RANGE);
       	print("[iNFO:] Points locations are loaded.");
       	idx++;
	}
	fclose(file);
}
return 1;
}

En dit als laden, waarschijnlijk is hier iets fout.

public SavePoints()
{
new idx;
new File: file2;
while (idx < sizeof(DynamicPoints))
{
	new coordsstring[256];
	format(coordsstring, sizeof(coordsstring), "%f|%f|%f|%d|%d|%s|%s\n",
	DynamicPoints[idx][fpX],
	DynamicPoints[idx][fpY],
	DynamicPoints[idx][fpZ],
	DynamicPoints[idx][Price],
	DynamicPoints[idx][Pickupid],
	DynamicPoints[idx][PointName],
	DynamicPoints[idx][CurrentOwner]);

	if(idx == 0)
	{
		file2 = fopen("points.cfg", io_write);
	}
	else
	{
		file2 = fopen("points.cfg", io_append);
	}
	fwrite(file2, coordsstring);
	idx++;
	fclose(file2);
}
return 1;
}

Het probleem is, Hij laad het wel alleen bij sommige points gaat de X coord op 0.00000 staan. En daar kan ik niets van begrijpen. meestal staan er 5 niet goed.

Ik weet zker dat ik alles goed heb gedaan maar blijkbaar is er een of andere klein fuck foutje dat ik niet kan vinden. ben er nu al 3 dagen mee aan het klote....

Link to comment
Delen op andere websites

Staan de Coördinaten goed in points.cfg?

EDIT: Hoe declareer jij DynamicPoints?

enum Points
{
Float:fpX,
Float:fpY,
Float:fpZ,
Price,
Pickupid,
PointName[56],
CurrentOwner[56],
HoursLeft,
};
new DynamicPoints[10][Points];

Link to comment
Delen op andere websites

Staan de Coördinaten goed in points.cfg?

EDIT: Hoe declareer jij DynamicPoints?

enum Points
{
Float:fpX,
Float:fpY,
Float:fpZ,
Price,
Pickupid,
PointName[56],
CurrentOwner[56],
HoursLeft,
};
new DynamicPoints[10][Points];

Ik heb dit ook ooit gehad met de factions. dat alles door elkaar werd gegooit, Misschien moet ik de scriptfile verandere zodat hij goed staat, en dan alleen nog maar veranderd hoeft te worden en niet geschreven?

Link to comment
Delen op andere websites

Probeer dit eens:

public SavePoints()
{
       new idx;
       new File: file2 = fopen("points.cfg", io_write);
       if(!file2)
       {
               print("ERROR: File doesn't exist!");
               return 0;
       }
       while (idx < sizeof(DynamicPoints))
       {
               new coordsstring[256];
               format(coordsstring, sizeof(coordsstring), "%f|%f|%f|%d|%d|%s|%s\n",
               DynamicPoints[idx][fpX],
               DynamicPoints[idx][fpY],
               DynamicPoints[idx][fpZ],
               DynamicPoints[idx][Price],
               DynamicPoints[idx][Pickupid],
               DynamicPoints[idx][PointName],
               DynamicPoints[idx][CurrentOwner]);
               fwrite(file2, coordsstring);
               idx++;

       }
       fclose(file2);
       return 1;
}

Link to comment
Delen op andere websites

Een reactie plaatsen

Je kan nu een reactie plaatsen en pas achteraf registreren. Als je al lid bent, log eerst in om met je eigen account een reactie te plaatsen.

Gast
Op dit onderwerp reageren...

×   Je hebt text geplaatst met opmaak.   Opmaak verwijderen

  Only 75 emoji are allowed.

×   Je link is automatisch ingevoegd.   In plaats daarvan weergeven als link

×   Je vorige bewerkingen zijn hersteld.   Alles verwijderen

×   You cannot paste images directly. Upload or insert images from URL.

  • Recent actief   0 leden

    • Er zijn hier geen geregistreerde gebruikers aanwezig.
×
×
  • Create New...