Pozīcijas saglabāšana

Ja kas neizprotams.

Moderator: Moderatori

Locked
User avatar
Crone
Censoņa
Censoņa
Posts: 247
Joined: 30 Oct 2010, 21:48
Location: Valka

Pozīcijas saglabāšana

Post by Crone »

Sveiki! Man ir radusies problēma ar pozīcijas saglabāšanu, kad spēlētājs iziet no servera. Erroru un wārnu nav, bet problēma tāda, ka kad spēlētājs iziet, tad pozīcija saglabājas failā un viss ir ok, bet kad ieiet atkal spēlē, tad tāpat met uz defaulto spawnu (tajos laukos).

Karoč rekur kodi...

OnPlayerDisconnect:

Code: Select all

    new Float:X,Float:Y,Float:Z, name[MAX_PLAYER_NAME], file[256];
	GetPlayerName(playerid, name, sizeof(name));

	format(file, sizeof(file), SERVER_USER_FILE, name);
	if(gPlayerLogged[playerid] == 1)
	{
	GetPlayerPos(playerid,X,Y,Z);
	dini_IntSet(file, "Money", GetPlayerMoney(playerid));
	dini_FloatSet(file, "PosX", floatround(X));
	dini_FloatSet(file, "PosY", floatround(Y));
	dini_FloatSet(file, "PosZ", floatround(Z));
	}
	gPlayerLogged[playerid] = 0;
	return 1;
}
OnPlayerSpawn:

Code: Select all

new name[MAX_PLAYER_NAME], file[256];
	format(file, sizeof(file), SERVER_USER_FILE, name);
	if(gPlayerLogged[playerid]==1)
	{
    SetPlayerPos(playerid, dini_Float(file, "PosX"),dini_Float(file, "PosY"),dini_Float(file, "PosZ"));
    }
    return 1;
}
Paldies jau iepriekš! :)
User avatar
Shetch
Jauniņais
Jauniņais
Posts: 107
Joined: 25 Oct 2010, 02:09
Location: Latvija,Valka

Re: Pozīcijas saglabāšana

Post by Shetch »

Code: Select all

	if (strcmp("/spawn", cmdtext, true, 5) == 0)
	{
		new name[MAX_PLAYER_NAME], file[256], Float:X, Float:Y, Float:Z;
    	GetPlayerName(playerid,name,sizeof(name));
    	format(file,sizeof(file),"Users/%s.txt",name);
   		if(dini_Exists(file))
   		{
	  		X = Float:dini_Float(file,"X");
	  		Y = Float:dini_Float(file,"Y");
	  		Z = Float:dini_Float(file,"Z");
	  		SetPlayerPos(playerid, X, Y, Z);
   			return 1;
    	}
		return 1;
	}
KotoK
Jauniņais
Jauniņais
Posts: 6
Joined: 26 Oct 2008, 09:54

Re: Pozīcijas saglabāšana

Post by KotoK »

Diemžēl dini ir pēdējais mēsls, tapēc izmanto, ko kvalitatīvāku un ātrāku, kā piemēram mysql, yini.
User avatar
[OFF]katelmaisis
Censoņa
Censoņa
Posts: 255
Joined: 20 May 2009, 15:00

Re: Pozīcijas saglabāšana

Post by [OFF]katelmaisis »

Kotok, sevis veiktu testu studijā... Citādi es ev neticu ^^.

Es, patiesībā, neticu, ka vienas rindiņas ierakstīšana failā var būt lēnāka kā pieslēgšanās datubāzei un kverija vai inserta izpildīšana.
Image
User avatar
Shetch
Jauniņais
Jauniņais
Posts: 107
Joined: 25 Oct 2010, 02:09
Location: Latvija,Valka

Re: Pozīcijas saglabāšana

Post by Shetch »

KotoK wrote:Diemžēl dini ir pēdējais mēsls, tapēc izmanto, ko kvalitatīvāku un ātrāku, kā piemēram mysql, yini.
Lieto ko gribi, dini var izmantot serverim ar vismaz 100 spēlētājiem.
Atšķirību starp DINI un visiem pārējiem nejūtu.
User avatar
Crone
Censoņa
Censoņa
Posts: 247
Joined: 30 Oct 2010, 21:48
Location: Valka

Re: Pozīcijas saglabāšana

Post by Crone »

Paldies, Shetch, tgd iet! Varat slēgt ciet. :)
Locked