Hallo, ich hab für mich so ein Markierungssystem gescriptet, wo die Positionen in einer Datei abgespeichert werden sollen, um irgendwann später wieder ausgelesen zu werden und sich dorthinzu porten.
Hier, die Auszüge aus dem Script
enum UserInfo
{
	Float:MarkPosX_1,
	Float:MarkPosY_1,
	Float:MarkPosZ_1,
	MarkInt_1,
	Float:MarkPosX_2,
	Float:MarkPosY_2,
	Float:MarkPosZ_2,
	MarkInt_2,
	Float:MarkPosX_3,
	Float:MarkPosY_3,
	Float:MarkPosZ_3,
	MarkInt_3,
};
new User[MAX_PLAYERS][UserInfo];
das hier sind die enums, auf die dann die Positionen und das Interior draufgespeichert werden solln
		        else if(zeile == 66) { User[playerid][MarkPosX_1] = strval(string); } // Markierung 1 PosX
		        else if(zeile == 67) { User[playerid][MarkPosY_1] = strval(string); } // Markierung 1 PosY
		        else if(zeile == 68) { User[playerid][MarkPosZ_1] = strval(string); } // Markierung 1 PosZ
		        else if(zeile == 69) { User[playerid][MarkInt_1] = strval(string); }  // Markierung 1 Interior
		        else if(zeile == 70) { User[playerid][MarkPosX_2] = strval(string); } // Markierung 2 PosX
		        else if(zeile == 71) { User[playerid][MarkPosY_2] = strval(string); } // Markierung 2 PosY
		        else if(zeile == 72) { User[playerid][MarkPosZ_2] = strval(string); } // Markierung 2 PosZ
		        else if(zeile == 73) { User[playerid][MarkInt_2] = strval(string); }  // Markierung 2 Interior
		        else if(zeile == 74) { User[playerid][MarkPosX_3] = strval(string); } // Markierung 3 PosX
		        else if(zeile == 75) { User[playerid][MarkPosY_3] = strval(string); } // Markierung 3 PosY
		        else if(zeile == 76) { User[playerid][MarkPosZ_3] = strval(string); } // Markierung 3 PosZ
		        else if(zeile == 77) { User[playerid][MarkInt_3] = strval(string); }  // Markierung 3 Interior
dann, hier, wo sicher das Problem liegt, das ist unter OnUserEinloggen drinnen, also, wenn sich der Spieler einloggt
Die datei wird ausgelesen, und das, was dann in der Zeile steht sollte dann dort draufgespeichert werden, aber, das Problem ist, dass ich nur ganze Zahlen habe, ohne komma, also statt zB.: 659.4572 hab ich dann nur 659.0000
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosX_1]); fwrite(userdatei, eintrag); // Markierung 1 PosX
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosY_1]); fwrite(userdatei, eintrag); // Markierung 1 PosY
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosZ_1]); fwrite(userdatei, eintrag); // Markierung 1 PosZ
			format(eintrag, sizeof(eintrag), "%d\n\r", User[playerid][MarkInt_1]); fwrite(userdatei, eintrag);  // Markierung 1 Interior
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosX_2]); fwrite(userdatei, eintrag); // Markierung 2 PosX
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosY_2]); fwrite(userdatei, eintrag); // Markierung 2 PosY
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosZ_2]); fwrite(userdatei, eintrag); // Markierung 2 PosZ
			format(eintrag, sizeof(eintrag), "%d\n\r", User[playerid][MarkInt_2]); fwrite(userdatei, eintrag);  // Markierung 2 Interior
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosX_3]); fwrite(userdatei, eintrag); // Markierung 3 PosX
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosY_3]); fwrite(userdatei, eintrag); // Markierung 3 PosY
			format(eintrag, sizeof(eintrag), "%f\n\r", User[playerid][MarkPosZ_3]); fwrite(userdatei, eintrag); // Markierung 3 PosZ
			format(eintrag, sizeof(eintrag), "%d\n\r", User[playerid][MarkInt_3]); fwrite(userdatei, eintrag);  // Markierung 3 Interior
das ist der abschnitt, wie das ganze dann in den Dateien abgespeichert wird
-1985.5967
137.9961
27.6875
0
-1985.5967
137.9961
27.6875
0
-1985.5967
137.9961
27.6875
0
So sieht das dann in der Datei aus, ich hab hier einfach mal auf alle 3 die gleichen Positionen drauf
	if(strcmp(cmd, "/mark1", true) == 0)
	{
		if(IsPlayerAdmin(playerid))
		{
			if(IsPlayerInAnyVehicle(playerid))
			{
				new Auto;
				Auto = GetPlayerVehicleID(playerid);
				GetVehiclePos(Auto, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
				User[playerid][MarkInt_1] GetPlayerInterior(playerid);
			}
			else
			{
				GetPlayerPos(playerid, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
				User[playerid][MarkInt_1] GetPlayerInterior(playerid);
			}
			SendClientMessage(playerid, GRUEN, "-| Du hast diese Position unter Markierung 1 gespeichert. |-");
			PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
		}
		else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
		return 1;
	}
	if(strcmp(cmd, "/mark2", true) == 0)
	{
		if(IsPlayerAdmin(playerid))
		{
			if(IsPlayerInAnyVehicle(playerid))
			{
				new Auto;
				Auto = GetPlayerVehicleID(playerid);
				GetVehiclePos(Auto, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
				User[playerid][MarkInt_2] GetPlayerInterior(playerid);
			}
			else
			{
				GetPlayerPos(playerid, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
				User[playerid][MarkInt_2] GetPlayerInterior(playerid);
			}
			SendClientMessage(playerid, GRUEN, "-| Du hast diese Position unter Markierung 2 gespeichert. |-");
			PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
		}
		else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
		return 1;
	}
	if(strcmp(cmd, "/mark3", true) == 0)
	{
		if(IsPlayerAdmin(playerid))
		{
			if(IsPlayerInAnyVehicle(playerid))
			{
				new Auto;
				Auto = GetPlayerVehicleID(playerid);
				GetVehiclePos(Auto, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
				User[playerid][MarkInt_3] GetPlayerInterior(playerid);
			}
			else
			{
				GetPlayerPos(playerid, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
				User[playerid][MarkInt_3] GetPlayerInterior(playerid);
			}
			SendClientMessage(playerid, GRUEN, "-| Du hast diese Position unter Markierung 3 gespeichert. |-");
			PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
		}
		else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
		return 1;
	}
das sind die Befehle, mit denen dann die Positionen auf den enums abgespeichert werden
	if(strcmp(cmd, "/gehzumark1", true) == 0)
	{
		if(IsPlayerAdmin(playerid))
		{
			if(IsPlayerInAnyVehicle(playerid))
			{
				new Auto;
				Auto = GetPlayerVehicleID(playerid);
				SetVehiclePos(Auto, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
				SetPlayerInterior(playerid, User[playerid][MarkInt_1]);
				LinkVehicleToInterior(playerid, User[playerid][MarkInt_1]);
			}
			else
			{
				SetPlayerPos(playerid, User[playerid][MarkPosX_1], User[playerid][MarkPosY_1], User[playerid][MarkPosZ_1]);
				SetPlayerInterior(playerid, User[playerid][MarkInt_1]);
			}
			SendClientMessage(playerid, GRUEN, "-| Du hast dich zu deiner Markierung 1 geportet. |-");
			PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
		}
		else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
		return 1;
	}
	if(strcmp(cmd, "/gehzumark2", true) == 0)
	{
		if(IsPlayerAdmin(playerid))
		{
			if(IsPlayerInAnyVehicle(playerid))
			{
				new Auto;
				Auto = GetPlayerVehicleID(playerid);
				SetVehiclePos(Auto, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
				SetPlayerInterior(playerid, User[playerid][MarkInt_2]);
				LinkVehicleToInterior(playerid, User[playerid][MarkInt_2]);
			}
			else
			{
				SetPlayerPos(playerid, User[playerid][MarkPosX_2], User[playerid][MarkPosY_2], User[playerid][MarkPosZ_2]);
				SetPlayerInterior(playerid, User[playerid][MarkInt_2]);
			}
			SendClientMessage(playerid, GRUEN, "-| Du hast dich zu deiner Markierung 1 geportet. |-");
			PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
		}
		else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
		return 1;
	}
	if(strcmp(cmd, "/gehzumark3", true) == 0)
	{
		if(IsPlayerAdmin(playerid))
		{
			if(IsPlayerInAnyVehicle(playerid))
			{
				new Auto;
				Auto = GetPlayerVehicleID(playerid);
				SetVehiclePos(Auto, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
				SetPlayerInterior(playerid, User[playerid][MarkInt_3]);
				LinkVehicleToInterior(playerid, User[playerid][MarkInt_3]);
			}
			else
			{
				SetPlayerPos(playerid, User[playerid][MarkPosX_3], User[playerid][MarkPosY_3], User[playerid][MarkPosZ_3]);
				SetPlayerInterior(playerid, User[playerid][MarkInt_3]);
			}
			SendClientMessage(playerid, GRUEN, "-| Du hast dich zu deiner Markierung 1 geportet. |-");
			PlayerPlaySound(playerid, 1056, 0.0, 0.0, 0.0);
		}
		else { SendClientMessage(playerid, ELSE_ROT, "Du bist kein Admin !"); }
		return 1;
	}
und hier sind die Befehle, mit denen man sich dann wieder zu den Positionen porten kann
das ist das ganze System, wär cool, wenn mir das jmd so machen kann, dass das dann richtig funktioniert, würde mich freuen
solltet Ihr noch ein paar Auszüge brauchen, dann Bitte melden und sagen, was noch benötigt wird
Mit freundlichen Grüßen
Hofgreith
 
		 
		
		
	