Jump to content

[0.3] Salvarea statisticilor & Sistem Admin


cmg4life

Recommended Posts

Am scris un mic sistem de salvarea statisticilor (stats), l-am scris in pastebin asa ca s-ar putea sa aibe o greseala de scriere sau doua... L-am facut ca un exemplu pt voi. Sistemul foloseste ZCMD, care e foarte rapid, mai putin lag si foarte simplu de folosit.

Sistemul salveaza Killuri, Morti si Level (admin):

Daca aveti intrebari va ascult (nu uitati sa puneti #include zcmd in scriptul unde il folositi)

http://pastebin.com/f5d988763

PS: Inlocuiti COLOR cu ce culoare vreti voi.

-Toate tutorialele postate intra aici sau puneti-le direct [url=http://www.sa-mp.ro/forum/index

Link to comment
Share on other sites

merge si la rpg dar nu e folositor la rpg trebuie sa iti arate mai multe chestii statusu :P de exemplu (Cheie de la casa, cheie de la biz, bani cash, bani in banca, level , daca ai sotie....) si multe altele :P

cmg4life a spus clar ca arata doar ( cati ai omorat, de cate ori ai murit, levelul de admin daca ai admin, daca esti logat sau nu si atat) il poti folosi la rpg dar nu pentru rpg este facut el este facut pt servere de stunt de "SUMO'(cum au unii :)) )

Mdea chiar folositor cmg gj :P

L-am facut sa invatati cum sa faceti, puteti sa-l dezvoltati.

-Toate tutorialele postate intra aici sau puneti-le direct [url=http://www.sa-mp.ro/forum/index

Link to comment
Share on other sites

Guest Alxxie

...frumos tutorial dar am o problema:am facut ca acolo dar imi da 3 erori:

D:\Jocuri\PENTRU~2\SCRIPT~2\MODELS~1\ADMINS~1.PWN(94) : error 017: undefined symbol "sscanf"

D:\Jocuri\PENTRU~2\SCRIPT~2\MODELS~1\ADMINS~1.PWN(114) : error 017: undefined symbol "sscanf"

D:\Jocuri\PENTRU~2\SCRIPT~2\MODELS~1\ADMINS~1.PWN(151) : error 017: undefined symbol "sscanf"

Pawn compiler 3.2.3664 Copyright © 1997-2006, ITB CompuPhase

3 Errors.

Cu acel sscanf e problema.Ce ii fac ca sa mearga?

Link to comment
Share on other sites

stock sscanf(string[], format[], {Float,_}:...)
{
	#if defined isnull
		if (isnull(string))
	#else
		if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
	#endif
		{
			return format[0];
		}
	#pragma tabsize 4
	new
		formatPos = 0,
		stringPos = 0,
		paramPos = 2,
		paramCount = numargs(),
		delim = ' ';
	while (string[stringPos] && string[stringPos] <= ' ')
	{
		stringPos++;
	}
	while (paramPos < paramCount && string[stringPos])
	{
		switch (format[formatPos++])
		{
			case '\0':
			{
				return 0;
			}
			case 'i', 'd':
			{
				new
					neg = 1,
					num = 0,
					ch = string[stringPos];
				if (ch == '-')
				{
					neg = -1;
					ch = string[++stringPos];
				}
				do
				{
					stringPos++;
					if ('0' <= ch <= '9')
					{
						num = (num * 10) + (ch - '0');
					}
					else
					{
						return -1;
					}
				}
				while ((ch = string[stringPos]) > ' ' && ch != delim);
				setarg(paramPos, 0, num * neg);
			}
			case 'h', 'x':
			{
				new
					ch,
					num = 0;
				while ((ch = string[stringPos]) > ' ' && ch != delim)
				{
					switch (ch)
					{
						case 'x', 'X':
						{
							num = 0;
							continue;
						}
						case '0' .. '9':
						{
							num = (num << 4) | (ch - '0');
						}
						case 'a' .. 'f':
						{
							num = (num << 4) | (ch - ('a' - 10));
						}
						case 'A' .. 'F':
						{
							num = (num << 4) | (ch - ('A' - 10));
						}
						default:
						{
							return -1;
						}
					}
				}
				setarg(paramPos, 0, num);
			}
			case 'c':
			{
				setarg(paramPos, 0, string[stringPos++]);
			}
			case 'f':
			{
				setarg(paramPos, 0, _:floatstr(string[stringPos]));
			}
			case 'p':
			{
				delim = format[formatPos++];
				continue;
			}
			case '\'':
			{
				new
					end = formatPos - 1,
					ch;
				while ((ch = format[++end]) && ch != '\'') {}
				if (!ch)
				{
					return -1;
				}
				format[end] = '\0';
				if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
				{
					if (format[end + 1])
					{
						return -1;
					}
					return 0;
				}
				format[end] = '\'';
				stringPos = ch + (end - formatPos);
				formatPos = end + 1;
			}
			case 'u':
			{
				new
					end = stringPos - 1,
					id = 0,
					bool:num = true,
					ch;
				while ((ch = string[++end]) && ch != delim)
				{
					if (num)
					{
						if ('0' <= ch <= '9')
						{
							id = (id * 10) + (ch - '0');
						}
						else
						{
							num = false;
						}
					}
				}
				if (num && IsPlayerConnected(id))
				{
					setarg(paramPos, 0, id);
				}
				else
				{
					#if !defined foreach
						#define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
						#define __SSCANF_FOREACH__
					#endif
					string[end] = '\0';
					num = false;
					new
						name[MAX_PLAYER_NAME];
					id = end - stringPos;
					foreach (Player, playerid)
					{
						GetPlayerName(playerid, name, sizeof (name));
						if (!strcmp(name, string[stringPos], true, id))
						{
							setarg(paramPos, 0, playerid);
							num = true;
							break;
						}
					}
					if (!num)
					{
						setarg(paramPos, 0, INVALID_PLAYER_ID);
					}
					string[end] = ch;
					#if defined __SSCANF_FOREACH__
						#undef foreach
						#undef __SSCANF_FOREACH__
					#endif
				}
				stringPos = end;
			}
			case 's', 'z':
			{
				new
					i = 0,
					ch;
				if (format[formatPos])
				{
					while ((ch = string[stringPos++]) && ch != delim)
					{
						setarg(paramPos, i++, ch);
					}
					if (!i)
					{
						return -1;
					}
				}
				else
				{
					while ((ch = string[stringPos++]))
					{
						setarg(paramPos, i++, ch);
					}
				}
				stringPos--;
				setarg(paramPos, i, '\0');
			}
			default:
			{
				continue;
			}
		}
		while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
		{
			stringPos++;
		}
		while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
		{
			stringPos++;
		}
		paramPos++;
	}
	do
	{
		if ((delim = format[formatPos++]) > ' ')
		{
			if (delim == '\'')
			{
				while ((delim = format[formatPos++]) && delim != '\'') {}
			}
			else if (delim != 'z')
			{
				return delim;
			}
		}
	}
	while (delim > ' ');
	return 0;
}

Link to comment
Share on other sites

  • 3 months later...
  • 1 year later...

cum il instalez? :-(

1. Copiezi tot ce ii pe link-ul ala

2. Intrii in /pawno si dai pe piesa aia de sah dupa aia dai 'New' si iti apre acolo ceva script il stergi!

3. Dai paste la ce ai copiat!

4. Dai compile pe sageata aia albastra ce ii sus!

5. Daca iti da ceva errori dai click pe main post si dai clikc pe ZCMD!

6. Il downloadezi si il pui in /pawno/includes

Fara reclama in semnatura!

Link to comment
Share on other sites

  • 2 months later...
  • 3 weeks later...
  • 4 weeks later...

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

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

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.