SA-MP Forums Archive
Help - Printable Version

+- SA-MP Forums Archive (https://sampforum.blast.hk)
+-- Forum: SA-MP Scripting and Plugins (https://sampforum.blast.hk/forumdisplay.php?fid=8)
+--- Forum: Scripting Help (https://sampforum.blast.hk/forumdisplay.php?fid=12)
+--- Thread: Help (/showthread.php?tid=373486)



Help - ThePrograme - 30.08.2012

Ok i have test sever and i have a problem.In the server no comands are working and the server doesen't ever say unknown command what's wrong and if i download a new server the same problem. please help!


Re: Help - curly_wurly - 30.08.2012

Maybe because first of all you didnt put them in ( im guessing ) just search in ******* "how to put in commands in a samp server " and you may find a good guide , Good Luck .


Re: Help - Lordzy - 30.08.2012

This may also occur if scripts are bugged.


Re: Help - ThePrograme - 30.08.2012

No the commands are in i using ZCMD and i make my commands at the bottom of the script.


Re: Help - ThePrograme - 30.08.2012

I don't know but my first guess was that i deleted something from the server


Re: Help - TaLhA XIV - 30.08.2012

Just show us the codes of the scripts you are using,we might be able to help you out.


Re: Help - mamorunl - 30.08.2012

Do you have any filterscripts running? They may disable the functionality in the gamemode (if you want to make sure it is ZCMD, create a simple strcmp command in OnPlayerCommandText and see if that runs)


Re: Help - ThePrograme - 30.08.2012

This is my previous script i started a new one based on this one becouse i thought it vas this script making the problems well have a look:

Код:
#include <a_samp>
#include <YSI\y_ini>
#include <dudb>
#include <sscanf2>
#include <zcmd>
//===============================//
#define PATH "/Users/%s.ini"
#define PLAYER_MUST_REGISTER
#define REGISTERED_MONEY 5000
#define AUTOLOGIN
#define reportPATH      "Logs/ReportLog.ini"
#define warnPATH      "Logs/WarnLog.ini"
//============================================//
#define white 0xFFFFFF
#define red 0xFF0000AA
#define COLOR_GREY 0xAFAFAFAA
#define YELLOW 0xFFFF00FF
#define GREEN 0x21DD00FF
#define LIGHTBLUE 	0x00C2ECFF
#define COLOR_LIGHTBLUE 	0x00C2ECFF
#define COLOR_RED 0xFF0000AA
#define Green 0x33AA33AA
#define Yellow 0xFFFF00AA
#define White 0xFFFFFFAA
#define Blue 0x375FFFFF
#define Red 0xFF0000AA
#define Grey 0xCCCCCAA
#define AC 0xFF1493FF
#define ROJOO 0x800000FF
//================================//
#define DIALOG_REGISTER 999
#define DIALOG_LOGIN 998
#define DIALOG_SUCCESS_1 3
#define DIALOG_SUCCESS_2 4
#define DIALOG_WEAPONS 3
#define DIALOG_DRINKS 3
#define SPECIAL_ACTION_PISSING 68
//======================================================================================================//
#define Name
#pragma unused ret_memcpy
#define errorcolor YELLOW
#define ERRORRcon SendClientMessage(playerid,errorcolor,"You need to be rcon admin to use this command!")
#define ERRORLevel5 SendClientMessage(playerid,errorcolor,"You need to be level 5 to use this command!")
#define ERRORLevel4 SendClientMessage(playerid,errorcolor,"You need to be level 4 to use this command!")
#define ERRORLevel3 SendClientMessage(playerid,errorcolor,"You need to be level 3 to use this command!")
#define ERRORLevel2 SendClientMessage(playerid,errorcolor,"You need to be level 2 to use this command!")
#define ERRORLevel1 SendClientMessage(playerid,errorcolor,"You need to be level 1 to use this command!")
//===============================//
#define ADMIN_SPEC_TYPE_NONE 0
#define ADMIN_SPEC_TYPE_PLAYER 1
#define ADMIN_SPEC_TYPE_VEHICLE 2
#define Saving 				true
#define MAX_PING            900
#define PingKick            true 
#define NameKick            true
#define MAX_WARNINGS             3
//===============================//
#define FormatMSG(%0,%1,%2,%3)\
		do{\
			format(_S_T_R_, sizeof (_S_T_R_), (%2), %3);\
			SendClientMessage((%0),(%1), _S_T_R_);\
		}\
		while (False)
#define CheckImune(%0,%1); \
		if(pInfo[(%0)][Admin] < pInfo[(%1)][Admin]) \
			return SendClientMessage(%0, "You are not allowed to use this command on this admin!");
//=============================================================================//

main() {}

enum iDetails {
	Pass,
	Cash,
	Score,
	Admin,
	Banned,
	Kicked,
	Mute,
	Warns,
	Caged,
	Freeze,
	Jailed,
	Deaths,
	Kills,
	Skin,
    God,
    AFK,
};

new ForbiddenNames[][] =
{
	{"naab"},
	{"nab"},
	{"fuck"},
	{"fack"},
	{"fak"},
	{"fuk"},
	{"gay"},
	{"lesbian"},
	{"lesb"},
	{"shemale"},
	{"fag"},
	{"faggot"},
	{"fucker"},
	{"dick"},
	{"fat"},
	{"asshole"},
	{"ass"},
	{"cunt"},
	{"cancer"},
	{"sucker"},
	{"wanker"},
	{"admin"},
	{"Administrator"}
};

new pInfo[MAX_PLAYERS][iDetails];

#if defined AUTOLOGIN
    new pIP[MAX_PLAYERS][16];
#endif

new pLogged[MAX_PLAYERS];
new JailTimer[MAX_PLAYERS],
    bool:inJail[MAX_PLAYERS];
new Float:RandomJail[1][3] = {
{197.83348083496, 174.56066894531, 1004.0968017578}
};
new gSpectateID[MAX_PLAYERS];
new gSpectateType[MAX_PLAYERS];
new bool:CountDownInProgress = false;
new countdown_counter = 5;
new countdown_counter2 = 30;

stock PlayerPath(playerid) {
	new iStr[256],name[MAX_PLAYER_NAME];
	GetPlayerName(playerid,name,sizeof(name));
	format(iStr,sizeof(iStr),PATH,name);
	return iStr;
}

stock GetName(playerid) 
{
    new name[MAX_PLAYER_NAME];
    if(IsPlayerConnected(playerid))
    {
		GetPlayerName(playerid, name, sizeof(name));
	}
	else
	{
	    name = "Unknown";
	}
	return name;
}

stock WarnKick(Target)
{
    new File:Log = fopen(warnPATH, io_append);
    new logData[128];
    new name[MAX_PLAYER_NAME];
    GetPlayerName(Target,name,sizeof(name));
    new fTime[6];
    getdate(fTime[0], fTime[1], fTime[2]);
    gettime(fTime[3], fTime[4], fTime[5]);
    format(logData, sizeof logData, "[%02d/%02d/%04d || %02d:%02d:%02d]%s got warned by %s! (Reason: %s)\r\n", fTime[2], fTime[1], fTime[0], fTime[3], fTime[4], fTime[5], name);
    fclose(Log);
    return 1;
}

stock
	bool:False = false,
	_S_T_R_[256];

stock IsValidSkin(SkinID)
{
	switch(SkinID)
	{
	    case 1..41:    return 1;	case 42..64:   return 1;	case 65..73:   return 1;
		case 75..86:   return 1;	case 87..119:  return 1;	case 120..149: return 1;
		case 150..208: return 1;	case 209..273: return 1;	case 274..289: return 1;
		case 290..299: return 1;
		default: return 1;
	}
	return 1;
}

forward UserDataLoad_data(playerid,name[],value[]);
forward SendMessageToAdmins(color,const string[]);
forward Unjail(playerid);
forward Uncage(playerid);
forward SaveIn(filename[],text[]);
forward SetPlayerRandomSpawn(playerid);
forward AChat(color,const string[],level);
forward countdown();
forward countdown2();

public OnGameModeInit()
{
	SetGameModeText("|Stunt|DM|Freeroam|Fun|Race|");
	AddPlayerClass(1,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(2,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(3,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(4,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(5,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(6,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(7,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(8,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(9,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(10,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(11,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(12,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(13,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(14,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(15,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(16,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(17,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(18,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(19,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(20,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(21,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(22,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(23,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(24,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(25,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(26,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(27,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(28,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(29,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(30,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(31,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(32,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(33,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(34,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(35,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(36,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(37,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(38,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(39,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(40,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(41,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(43,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(44,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(45,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(46,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(40,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(41,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(42,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(43,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(44,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(45,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(46,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(47,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(48,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(49,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(50,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(51,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(52,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(53,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(54,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(55,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(56,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(57,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(58,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(59,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(60,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(61,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(62,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(63,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(64,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(65,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(66,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(67,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(68,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(69,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(70,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(71,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(72,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(73,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	//AddPlayerClass(74,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(75,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(76,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(77,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(78,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(79,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(80,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(81,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(82,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(83,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(84,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(85,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(86,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(87,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(88,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(89,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(90,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(91,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(92,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(93,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(94,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(95,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(96,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(97,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(98,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(99,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(100,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(101,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(102,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(103,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(104,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(105,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(106,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(107,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(108,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(109,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(110,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(111,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(112,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(113,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(114,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(115,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(116,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(117,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(118,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(119,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(120,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(121,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(122,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(123,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(124,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(125,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(126,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(127,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(128,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(129,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(130,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(131,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(132,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(133,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(134,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(135,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(136,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(137,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(138,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(139,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(140,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(141,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(142,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(143,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(144,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(145,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(146,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(147,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(148,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(140,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(141,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(142,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(143,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(144,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(145,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(146,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(147,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(148,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(149,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(150,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(151,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(152,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(153,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(154,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(155,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(156,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(157,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(158,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(159,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(160,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(161,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(162,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(163,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(164,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(165,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(166,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(167,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(168,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(169,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(170,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(171,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(172,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(173,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(174,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(175,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(176,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(177,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(178,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(179,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(180,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(181,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(182,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(183,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(184,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(185,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(186,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(187,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(188,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(189,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(190,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(191,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(192,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(193,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(194,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(195,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(196,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(197,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(198,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(199,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(200,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(201,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(202,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(203,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(204,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(205,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(206,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(207,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(208,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(209,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(210,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(211,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(212,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(213,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(214,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(215,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(216,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(217,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(218,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(219,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(220,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(221,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(222,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(223,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(224,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(225,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(226,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(227,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(228,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(229,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(230,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(231,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(232,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(233,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(234,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(235,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(236,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(237,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(238,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(239,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(240,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(241,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(242,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(243,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(244,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(245,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(246,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(247,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(248,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(249,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(240,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(241,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(242,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(243,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(244,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(245,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(246,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(247,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(248,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(249,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(250,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(251,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(252,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(253,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(254,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(255,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(256,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(257,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(258,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(259,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(260,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(261,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(262,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(263,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(264,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(265,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(266,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(267,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(268,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(269,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(270,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(271,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(272,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(273,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(274,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(275,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(276,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(277,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(278,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(279,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(280,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(281,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(282,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(283,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(284,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(285,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(286,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(287,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(288,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(289,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(290,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
    AddPlayerClass(291,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(292,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(293,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(294,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(295,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(296,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(297,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(298,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	AddPlayerClass(299,1759.0189,-1898.1260,13.5622,266.4503,-1,-1,-1,-1,-1,-1);
	return 1;
}

public OnGameModeExit()
{
	return 1;
}

public OnPlayerRequestClass(playerid, classid)
{
	SetPlayerPos(playerid, 1759.0189, -1898.1260, 13.5622);
	SetPlayerFacingAngle(playerid, 266.4503);
	SetPlayerCameraPos(playerid, 1759.0189, -1898.1260, 13.5622);
	SetPlayerCameraLookAt(playerid, 1759.0189, -1898.1260, 13.5622);
	return 1;
}

public SaveIn(filename[],text[])
{
	#if Saving == true
	new File:Serverfile, filepath[128], string[128], year,month,day, hour,minute,second;
	getdate(year,month,day); gettime(hour,minute,second);

	format(filepath,sizeof(filepath),"Server/Logs/%s.txt",filename);
	Serverfile = fopen(filepath,io_append);
	format(string,sizeof(string),"[%d.%d.%d %d:%d:%d] %s\r\n",day,month,year,hour,minute,second,text);
	fwrite(Serverfile,string);
	fclose(Serverfile);
	#endif

	return 1;
}

public UserDataLoad_data(playerid,name[],value[]) {
	INI_Int("Pass",pInfo[playerid][Pass]);
	#if defined AUTOLOGIN
		INI_String("IP",pIP[playerid],16);
	#endif
	INI_Int("Cash",pInfo[playerid][Cash]);
	INI_Int("Score",pInfo[playerid][Score]);
	INI_Int("Admin",pInfo[playerid][Admin]);
	INI_Int("Banned",pInfo[playerid][Banned]);
	INI_Int("Kicked",pInfo[playerid][Kicked]);
	INI_Int("Mute",pInfo[playerid][Mute]);
	INI_Int("Warns",pInfo[playerid][Warns]);
	INI_Int("Freeze",pInfo[playerid][Freeze]);
	INI_Int("Jailed",pInfo[playerid][Jailed]);
	INI_Int("Deaths",pInfo[playerid][Deaths]);
	INI_Int("Kills",pInfo[playerid][Kills]);
	INI_Int("Skin",pInfo[playerid][Skin]);
	INI_Int("God",pInfo[playerid][God]);
	INI_Int("AFK",pInfo[playerid][AFK]);
	return 1;
}

public OnPlayerConnect(playerid)
{
    GameTextForPlayer(playerid,"~w~Welcome To Stunt Freeadom",3000,4);
    new pname[MAX_PLAYER_NAME], string[22 + MAX_PLAYER_NAME];
    GetPlayerName(playerid, pname, sizeof(pname));
    if(pInfo[playerid][Admin] >= 0)
    format(string, sizeof(string), "* %s (%i) Has Joined The Server.", pname, playerid);
    SendClientMessageToAll(COLOR_GREY, string);
    pLogged[playerid] = 0;
  #if defined AUTOLOGIN
        new tmpIP[16];
        GetPlayerIp(playerid,tmpIP,sizeof(tmpIP));
    #endif
    if(fexist(PlayerPath(playerid))) {
        INI_ParseFile(PlayerPath(playerid), "UserDataLoad_%s", .bExtra = true, .extra = playerid);
        #if defined AUTOLOGIN
            if(strcmp(tmpIP,pIP[playerid],true) == 0) { 
                pLogged[playerid] = 1;
                SetPlayerScore(playerid,pInfo[playerid][Score]);
                GivePlayerMoney(playerid,pInfo[playerid][Cash]);
                SetPlayerSkin(playerid,pInfo[playerid][Skin]);
                SendClientMessage(playerid,white,"Login Succssesful,You've Been Automatically Logged-in!");
                return 1;
			}
		#endif
		ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Please enter your password below to login.","Login","Quit");
	} else {
	    ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Please enter your password below to create a new account.","Register","Quit");
	}
	#if NameKick == true
	for(new i; i != sizeof(ForbiddenNames); i ++ )
	{
	    if(!strcmp(pname, ForbiddenNames[i], true))
	    {
			new kstring[256];
			format(kstring,sizeof(kstring),"*** SERVER KICK: %s(%i)- Forbidden name!",pname,playerid);
			SendClientMessageToAll(red,kstring);
	        Kick(playerid);
	        return 1;
	    }
	}
	#endif
	return 1;
}

public OnPlayerDisconnect(playerid, reason)
{
	if(pLogged[playerid] == 1) {
		new INI:iFile = INI_Open(PlayerPath(playerid));
		INI_SetTag(iFile,"%s's data");
		INI_WriteInt(iFile,"Cash",GetPlayerMoney(playerid));
		INI_WriteInt(iFile,"Score",GetPlayerScore(playerid));
		INI_WriteInt(iFile,"Skin",GetPlayerSkin(playerid));
		INI_Close(iFile);
    }
    pLogged[playerid] = 0;
    new pname[MAX_PLAYER_NAME], string[39 + MAX_PLAYER_NAME];
    GetPlayerName(playerid, pname, sizeof(pname));
    switch(reason)
    {
        case 0: format(string, sizeof(string), "* %s (%i) has left the server.(Lost Connection)", pname, playerid);
        case 1: format(string, sizeof(string), "* %s (%i) has left the server.(Quit)", pname, playerid);
        case 2: format(string, sizeof(string), "* %s (%i) has left the server.(Kicked/Banned)", pname, playerid);
    }
    SendClientMessageToAll(COLOR_GREY, string);
    return 1;
}

public OnPlayerSpawn(playerid)
{
 	SetPlayerSkin(playerid, pInfo[playerid][Skin]);
    if(pInfo[playerid][Freeze] == 1) 
    {
       TogglePlayerControllable(playerid,0); 
       SendClientMessage(playerid,red,"WARNING: You are still frozen!"); 
    }
    if(pLogged[playerid] == 0) return SendClientMessage(playerid,YELLOW,"You must register or login before spawning!");
    return 1;
}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
   if(dialogid == DIALOG_REGISTER) {
	    GetPlayerIp(playerid,pIP[playerid],16);
	    if(!response) Kick(playerid);
	    if(!strlen(inputtext)) return ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Please enter a password.","Register","Quit");
	    new INI:iFile = INI_Open(PlayerPath(playerid));
		INI_SetTag(iFile,"%s's data");
		INI_WriteInt(iFile,"Pass",udb_hash(inputtext));
		#if defined AUTOLOGIN
			INI_WriteString(iFile,"IP",pIP[playerid]);
		#endif
		INI_WriteInt(iFile,"Cash",REGISTERED_MONEY);
		INI_WriteInt(iFile,"Score",0);
		INI_WriteInt(iFile,"Admin",0);
		INI_WriteInt(iFile,"Banned",0);
		INI_WriteInt(iFile,"Kicked",0);
		INI_WriteInt(iFile,"Mute",0);
		INI_WriteInt(iFile,"Warns",0);
		INI_WriteInt(iFile,"Freeze",0);
		INI_WriteInt(iFile,"Jailed",0);
		INI_WriteInt(iFile,"Deaths",0);
		INI_WriteInt(iFile,"Kills",0);
		INI_WriteInt(iFile,"Skin",0);
		INI_WriteInt(iFile,"God",0);
		INI_WriteInt(iFile,"AFK",0);
		INI_Close(iFile);
		pLogged[playerid] = 1;
		new iStr[128];
		format(iStr,sizeof(iStr),"You've successfully registered with the password \"%s\".",inputtext);
		ShowPlayerDialog(playerid,DIALOG_SUCCESS_1,DIALOG_STYLE_MSGBOX,"Success!",iStr,"OK","");
		return 1;
   }
   if(dialogid == DIALOG_LOGIN){
	    if(!response) Kick(playerid);
		new iStr[128],gTries;
		if(gTries == 0) gTries = 1;
		if(gTries == 3) {
		    new pName[30];
		    GetPlayerName(playerid,pName,sizeof(pName));
		    format(iStr,sizeof(iStr),"*** SERVER KICK: %s (%i)-Failed Login",pName, playerid);
			SendClientMessageToAll(red,iStr);
			return Kick(playerid);
		}
		if(!strlen(inputtext)) {
		    format(iStr,sizeof(iStr),"Please enter your password. Tries: %i/3",gTries);
			return ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login",iStr,"Login","Quit");
		}
		if(udb_hash(inputtext) == pInfo[playerid][Pass]) {
		    pLogged[playerid] = 1;
		    SendClientMessage(playerid,white,"You've successfully logged in.");
		    SetPlayerScore(playerid,pInfo[playerid][Score]);
		    GivePlayerMoney(playerid,pInfo[playerid][Cash]);
		    SetPlayerSkin(playerid,pInfo[playerid][Skin]);
		} else {
		    format(iStr,sizeof(iStr),"Incorrect password. Tries: %i/3",gTries);
			ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register",iStr,"Login","Quit");
			gTries++;
			return 1;
        }
        return 1;
   }
   return 1;
}

public OnPlayerUpdate(playerid)
{
	#if PingKick == true
	new name[MAX_PLAYER_NAME];
	if(GetPlayerPing(playerid) == MAX_PING)
	{
		new kstring[256];
		format(kstring,sizeof(kstring),"*** SERVER KICK: %s(%i)- Ping Extending 900!",name,playerid);
	    SendClientMessageToAll(red,kstring);
	    Kick(playerid);
	}
	#endif
}
public OnPlayerText(playerid, text[])
{
        if (pInfo[playerid][AFK] == 1)
        {
                SendClientMessage(playerid, COLOR_RED, "You Are In AFK State Use /back To Do Anything Again");
                return 1;
        }

        else if (pInfo[playerid][AFK] == 0)
        {
                return 1;
        }
 	    else if(pInfo[playerid][Mute] == 1)
	    {
		   SendClientMessage(playerid, Red, "==--You are muted, noone can hear you!--==");
        }
	    return 1;
}

public OnPlayerCommandText(playerid, cmdtext[])
{
  if(pInfo[playerid][Mute] == 1)
  {
     SendClientMessage(playerid, Red, "==--You are muted, noone can hear you!--==");
     return 1;
  }
  return 0;
}

public Unjail(playerid) 
{
    SpawnPlayer(playerid); 
    SetPlayerInterior(playerid, 0); 
    inJail[playerid] = false; 
    KillTimer(JailTimer[playerid]); 
    GameTextForPlayer(playerid, "~g~Unjailed", 5000, 6); 
}

public SendMessageToAdmins(color,const string[]) 
{
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
        if(IsPlayerConnected(i) == 1) 
        if(pInfo[i][Admin] >= 1)
        SendClientMessage(i, color, string); 
    }
    return 1;
}

public AChat(color,const string[],level)
{
        for(new i = 0; i < MAX_PLAYERS; i++)
        {
                if(IsPlayerConnected(i))
                {
                        if (pInfo[i][Admin] >= level)
                        {
                                SendClientMessage(i, color, string);
                        }
                }
        }
        return 1;
}

public OnPlayerDeath(playerid, killerid, reason)
{
	pInfo[killerid][Kills]++;
    pInfo[playerid][Deaths]++;
    SendDeathMessage(killerid, playerid, reason);
    return 1;
}

public countdown()
{
        if(countdown_counter == 0){countdown_counter = 5;CountDownInProgress = false;return GameTextForAll("GO GO GO!",5000,4);}
        new str[32];format(str,sizeof str,"~g~%i",countdown_counter);
        GameTextForAll(str,5000,4);
        countdown_counter--;
        return SetTimer("countdown",1000,false);
}

public countdown2()
{
        if(countdown_counter2 == 0){countdown_counter2 = 30;CountDownInProgress = false;return GameTextForAll("GO GO GO!",5000,4);}
        new str[32];format(str,sizeof str,"~g~%i",countdown_counter);
        GameTextForAll(str,5000,4);
        countdown_counter--;
        return SetTimer("countdown",1000,false);
}

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
{
    if((newkeys&KEY_JUMP)&&!(oldkeys&KEY_JUMP))
    {
		SetPlayerSpecialAction(playerid,SPECIAL_ACTION_NONE);
    }
    return 1;
}

CMD:setadmin(playerid, params[])
{
    if(pInfo[playerid][Admin] >= 5 && !IsPlayerAdmin(playerid))
    {
        new target, level, String[128];
        if(sscanf(params, "ri", target, level))
        if(level > 5) return SendClientMessage(playerid, red, "[ADMIN] You can not set a Administrator Level higher than level 5.");
        new pName[MAX_PLAYER_NAME], TargetName[MAX_PLAYER_NAME];
        GetPlayerName(playerid, pName, sizeof(pName));
        GetPlayerName(target, TargetName, sizeof(TargetName));
        if( level > pInfo[target][Admin] )
                format(String, sizeof(String), "An Admin has promoted you to a Level %d Administrator.", TargetName, level);
        else if( level < pInfo[target][Admin] )
                format(String, sizeof(String), "An Admin has demoted you to a Level %d Administrator.", TargetName, level);
        pInfo[target][Admin] = level;
        SendClientMessage(target, -1, String);
    }
    else return SendClientMessage(playerid, red, "[CONSOLE] You are not allowed to use this command.");
    return 1;
}

CMD:givemoney(playerid, params[])
{
    if(pInfo[playerid][Admin] >= 3 && !IsPlayerAdmin(playerid))
    {
        new
          toplayerid,
          amount;
        if (!sscanf(params, "ii", toplayerid, amount))
        {
          if (toplayerid != INVALID_PLAYER_ID)
          {
            new
              message[40];
            GivePlayerMoney(toplayerid, amount);
            format(message, sizeof(message), "You got $%d from admin!", amount);
            SendClientMessage(toplayerid, 0x00FF00FF, message);
          }
          else SendClientMessage(playerid, 0xFF0000FF, "That player is not connected");
        }
        else SendClientMessage(playerid, 0xFFFFFFFF, "Usage: /givemoney <playerid> <amount>");
    }
    else SendClientMessage(playerid, 0xFF0000FF, "Only admins can use this command!");
    return 1;
}

CMD:kick(playerid,params[])
{
	new playerid2,pname[MAX_PLAYER_NAME],on[MAX_PLAYER_NAME];
	new tmp[256], Index, str[49], reason[32];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	GetPlayerName(playerid2,on,sizeof(on));
	GetPlayerName(playerid,pname,sizeof(pname));
	if(pInfo[playerid][Admin] >= 2 && !IsPlayerAdmin(playerid)) return ERRORLevel2;
	if (sscanf(params, "us", playerid2,reason)) return SendClientMessage(playerid, Yellow, "Usage: /kick [PlayerId] [reason]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	format(str,sizeof(str),"*** ADMIN KICK: %s (%i)-Reason: %s",on,playerid,reason);
	SendClientMessageToAll(Blue,str);
    SaveIn("KickLog",str);
	pInfo[playerid][Kicked]=1;
    new File:ipkick=fopen("Server/all_bans.ini", io_append);
    format(str, 64, "%s - Admin:%s Reason: %s\r\n",GetName(playerid2),pname,reason);
    fwrite(ipkick, str);
    fclose(ipkick);
	Kick(playerid2);
	return 1;
}
    
CMD:ban(playerid,params[])
{
	new playerid2,pname[MAX_PLAYER_NAME],on[MAX_PLAYER_NAME],file[256];
	new tmp[256], Index, string[64], reason[32];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	GetPlayerName(playerid2,on,sizeof(on));
	GetPlayerName(playerid,pname,sizeof(pname));
	format(file,sizeof(file),PATH,GetName(playerid2));
	if(pInfo[playerid][Admin] >= 3) return ERRORLevel3;
	if (sscanf(params, "us[32]", playerid2,reason)) return SendClientMessage(playerid, Yellow, "Usage: /ban [PlayerId] [reason]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	format(string,sizeof(string),"*** ADMIN KICK: %s (%i)-Reason: %s",on,playerid,reason);
	SendClientMessageToAll(Yellow,string);
    SaveIn("BanLog",string);
	pInfo[playerid][Banned]=1;
    new File:ipban=fopen("Server/all_bans.ini", io_append);
    format(string, 64, "%s - Admin:%s Reason: %s\r\n",GetName(playerid2),pname,reason);
    fwrite(ipban, string);
    fclose(ipban);
	Ban(playerid2);
	return 1;
}
    
CMD:freeze(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 3)
    {
            new Target; 
            if(sscanf(params, "u", Target)) SendClientMessage(playerid, LIGHTBLUE, "USAGE: /freeze [playerid]");
            if(!IsPlayerConnected(Target)) 
                return SendClientMessage(playerid, COLOR_GREY, "ERROR:Player is not connected!");
            if(!sscanf(params, "u", Target))
            {
                if(Target == playerid) return SendClientMessage(playerid, red, "ERROR: Cant perform this command on yourself!" );
                if(pInfo[Target][Admin] > pInfo[playerid][Admin]) return SendClientMessage(playerid,red,"ERROR: You cant perform this on Admins that are higher than your level!");
                new tname[MAX_PLAYER_NAME]; 
                GetPlayerName(Target,tname,sizeof(tname)); 
                new pname[MAX_PLAYER_NAME];
                GetPlayerName(playerid,pname,sizeof(pname)); 
                new tstring[128];
				new astring[128];
                format(tstring,sizeof(tstring),"You have been frozen by administrator %s! You cant move!",pname);
				format(astring,sizeof(astring),"Administrator %s has frozen %s!",pname,tname);
                SendClientMessage(Target,YELLOW,tstring);
                SendClientMessageToAll(LIGHTBLUE,astring);
                TogglePlayerControllable(Target,0); 
                pInfo[Target][Freeze] = 1;
            }

    }
    else return SendClientMessage(playerid,red,"ERROR: You must be level 3 to use this command!");
    return 1;
}

CMD:unfreeze(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 3)
    {
            new Target; 
            if(sscanf(params, "u", Target)) SendClientMessage(playerid, LIGHTBLUE, "USAGE: /unfreeze [playerid]"); 
            if(!IsPlayerConnected(Target)) 
                return SendClientMessage(playerid, COLOR_GREY, "ERROR:Player is not connected!");
            if(!sscanf(params, "u", Target))
            {
                if(Target == playerid) return SendClientMessage(playerid, red, "ERROR: Cant perform this command on yourself!" );
                if(pInfo[Target][Admin] > pInfo[playerid][Admin]) return SendClientMessage(playerid,red,"ERROR: You cant perform this on Admins that are higher than your level!"); 
                new tname[MAX_PLAYER_NAME];
                GetPlayerName(Target,tname,sizeof(tname)); 
                new pname[MAX_PLAYER_NAME]; 
                GetPlayerName(playerid,pname,sizeof(pname)); 
                new tstring[128];
				new astring[128];
                format(tstring,sizeof(tstring),"You have been unfrozen by administrator %s! You cant move!",pname);
				format(astring,sizeof(astring),"Administrator %s has unfrozen %s!",pname,tname);
                SendClientMessage(Target,YELLOW,tstring);
                SendClientMessageToAll(LIGHTBLUE,astring);
                TogglePlayerControllable(Target,1); 
                pInfo[Target][Freeze] = 0;
            }

	}
    else return SendClientMessage(playerid,red,"ERROR: You must be level 3 to use this command!");
    return 1;
}

CMD:report(playerid,params[])
{

    new Target; 
    new Reason[128];
    if(!sscanf(params, "us[32]",Target, Reason))
    {
        if(Target == playerid) return SendClientMessage(playerid, red, "SERVER: Cant perform this command on yourself!");
        if(!IsPlayerConnected(Target)) 
            return SendClientMessage(playerid, red, "ERROR: Player is not connected!");
            
        new tname[MAX_PLAYER_NAME];
        new pname[MAX_PLAYER_NAME];
        GetPlayerName(Target,tname,sizeof(tname));
        GetPlayerName(playerid,pname,sizeof(pname));
            
        new rstring[256];
        format(rstring,sizeof(rstring),"* Player %s (%i) reported %s (%i)-Reason: %s", pname,playerid,tname,Target,Reason);
        SendMessageToAdmins(white,rstring);
            
        new File:Log = fopen(reportPATH, io_append);
        new logData[128];
        new name[MAX_PLAYER_NAME];
        GetPlayerName(Target,name,sizeof(name));
        new fTime[6];
        getdate(fTime[0], fTime[1], fTime[2]);
        gettime(fTime[3], fTime[4], fTime[5]);
        format(logData, sizeof logData, "[%02d/%02d/%04d || %02d:%02d:%02d]%s got reported by %s! (Reason: %s)\r\n", fTime[2], fTime[1], fTime[0], fTime[3], fTime[4], fTime[5], tname, pname, Reason);
        fclose(Log);
        }
        else return SendClientMessage(playerid, YELLOW, "USAGE: /report <playerid> <reason>");

    return 1;
}

CMD:setscore(playerid, params[])
{
    new id, score, str[84], victimname[28], adminname[28];
    if (pInfo[playerid][Admin] >= 4)
    {
        if (sscanf(params, "ui", id, score)) return SendClientMessage(playerid, YELLOW, "USAGE: /setscore [id] [ammount]");
        if (id == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_GREY, "AdmCmd: This player is not connected.");
        SetPlayerScore(id, score);
        GetPlayerName(id, victimname, 28);
        GetPlayerName(playerid, adminname, 28);
        format(str, 84, "AdmWarn: You've given %s [ID %d] score %d", victimname, id, score);
        SendClientMessage(id, LIGHTBLUE,str);
        format(str,84,"You've received %d score from admin %s [ID %d]", score, adminname, playerid);
        SendClientMessage(id, LIGHTBLUE, str);
        return 1;
    }
    else return SendClientMessage(playerid,COLOR_GREY,"  You don't have authorization!");
}

CMD:jail(playerid, params[])
    {
        if(pInfo[playerid][Admin] >= 4)
        {
            new targetid, minutes, reason;
            if(sscanf(params, "ris", targetid, minutes, reason)) return SendClientMessage(playerid, red,"Usage: /jail <playerid> <minutes>");
            if(minutes <= 0 || minutes > 60) return SendClientMessage(playerid, red, "Minutes can't be less than 0 or more than 60!");
            if(targetid == playerid) return SendClientMessage(playerid, red, "You can't jail yourself!");
            if(pInfo[targetid][Admin] > pInfo[playerid][Admin]) return SendClientMessage(playerid, red, "You can't jail higher level admins!");
            else
            {
            new str[128], rand = random(sizeof(RandomJail));
            format(str, sizeof(str), "*** ADMIN JAIL: %s(%i) for [%d Min.]-Reason: %s ", Name(targetid), minutes, reason);
            SendClientMessageToAll(COLOR_LIGHTBLUE,str);
            JailTimer[targetid] = SetTimer("Unjail", minutes*60*1000, false);
            SetPlayerPos(targetid, RandomJail[rand][0], RandomJail[rand][1], RandomJail[rand][2]);
            ResetPlayerWeapons(targetid);
            SetPlayerInterior(targetid, 3);
            inJail[targetid] = true;
            GameTextForPlayer(playerid, "~p~JAILED", 10000, 6);
            }
        }
        else return SendClientMessage(playerid, red, "You have to be level 4 to use this command!");
        if(inJail[playerid] == true){ 
        SendClientMessage(playerid,red,"You can't use any command in the jail!");
        }
        return 1;
    }

CMD:heal(playerid, params[])
{
	SetPlayerHealth(playerid, 100.0);
	SetPlayerArmour(playerid, 100.0);
	return 1;
}

CMD:god(playerid, params[])
{
    if(pInfo[playerid][Admin] >= 2)
    {
      if(pInfo[playerid][God] == 0)
      {
         pInfo[playerid][God] = 1;
         SetPlayerHealth(playerid,100000);
         SetPlayerArmour(playerid,100000);
         GivePlayerWeapon(playerid,16,50000);
         GivePlayerWeapon(playerid,8,1);
         GivePlayerWeapon(playerid,28,50000);
         GivePlayerWeapon(playerid,34,50000);
         GivePlayerWeapon(playerid,22,50000);
         SendClientMessage(playerid,GREEN,"| - God Mode On - |");
      }
      else
      {
         pInfo[playerid][God] = 0;
         SendClientMessage(playerid,red,"| - God Mode Off - |");
         SetPlayerHealth(playerid, 100.0);
         SetPlayerArmour(playerid, 100.0);
         ResetPlayerWeapons(playerid);
         SpawnPlayer(playerid);
      }
    }
    else return SendClientMessage(playerid,red,"ERROR: You must be Administrator Level 2 to use this command");
    return 1;
}

CMD:announce(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 1)
    {
		if(pLogged[playerid] == 1)
		{
		    new Announce[50];
	        if(!sscanf(params, "s[50]",Announce))
		    {
		        GameTextForAll(Announce,5000,3);
			}
			else SendClientMessage(playerid,YELLOW,"USAGE: /ann <text>");
		}
		else SendClientMessage(playerid,red,"ERROR: You must be logged in to use this command!");
	}
	else SendClientMessage(playerid,red,"ERROR: You must be an Admin level 1 or higher to perform this command!");
	return 1;
}

CMD:ann(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 1)
    {
		if(pLogged[playerid] == 1)
		{
		    new Announce[50];
	        if(!sscanf(params, "s[50]",Announce))
		    {
		        GameTextForAll(Announce,5000,3);
			}
			else SendClientMessage(playerid,YELLOW,"USAGE: /ann <text>");
		}
		else SendClientMessage(playerid,red,"ERROR: You must be logged in to use this command!");
	}
	else SendClientMessage(playerid,red,"ERROR: You must be an Admin level 1 or higher to perform this command!");
	return 1;
}

CMD:goto(playerid, params[])
{
    if(pInfo[playerid][Admin] < 2)
    {
      new ID,adminname[MAX_PLAYER_NAME],pname[MAX_PLAYER_NAME];
      GetPlayerName(playerid,adminname,MAX_PLAYER_NAME);
      GetPlayerName(ID,pname,MAX_PLAYER_NAME);
      if(sscanf(params, "u", ID)) return SendClientMessage(playerid, red, "USAGE: /goto <playername/id>");
      if(IsPlayerConnected(ID) && ID != INVALID_PLAYER_ID && ID != playerid)
      {
         new Float:x, Float:y, Float:z;
         new vehicleid = GetPlayerVehicleID(playerid);
         GetPlayerPos(ID, x, y, z);
         SetPlayerPos(playerid, x+1, y+1, z);
         if(IsPlayerInVehicle(playerid,vehicleid))
         {
           SetVehiclePos(GetPlayerVehicleID(playerid),x+3,y,z);
           LinkVehicleToInterior(GetPlayerVehicleID(playerid),GetPlayerInterior(ID));
           SetVehicleVirtualWorld(GetPlayerVehicleID(playerid),GetPlayerVirtualWorld(ID));
         }
      }
      else return SendClientMessage(playerid, red, "ERROR: Player is not connected or its yourself.");
    }
    else return SendClientMessage(playerid,red, "ERROR: You must be Administrator Level 2 to use this command");
    return 1;
}

CMD:get(playerid, params[])
{
    if(pInfo[playerid][Admin] >= 2)
    {
       new targetid;
       if(sscanf(params, "u", targetid)) return SendClientMessage(playerid, red, "USAGE: /get <playerid/name>");
       if(IsPlayerConnected(targetid) && targetid != INVALID_PLAYER_ID && targetid != playerid)
       {
           new AdminName[24];
           new pName[24];
           GetPlayerName(playerid,AdminName,128);
           GetPlayerName(targetid,pName,128);
           SetPlayerInterior(targetid,GetPlayerInterior(playerid));
           new Float:TPX, Float:TPY, Float:TPZ;
           GetPlayerPos(playerid, TPX, TPY, TPZ);
           SetPlayerPos(targetid, TPX, TPY, TPZ+1);
       }
       else return SendClientMessage(playerid, red, "ERROR: Player is not connected or its yourself.");
    }
    else return SendClientMessage(playerid,red, "ERROR: You must be Administrator Level 2 to use this command");
    return 1;
}

CMD:stats(playerid,params[])
{
    new string[128];
    new name[MAX_PLAYER_NAME];
    new deaths = pInfo[playerid][Deaths];
    new kills = pInfo[playerid][Kills];
    new admin = pInfo[playerid][Admin];
    new money = pInfo[playerid][Cash];
    new score = pInfo[playerid][Score];
    new mute = pInfo[playerid][Mute];
    new warns = pInfo[playerid][Warns];
    new freeze = pInfo[playerid][Freeze];
    new skin = pInfo[playerid][Skin];
    new kicked = pInfo[playerid][Kicked];
    new banned = pInfo[playerid][Banned];
    new stats[1024];
    GetPlayerName(playerid, name, sizeof(string));
    format(string, sizeof(string), "Name:%s\nScore:%d\nMoney:%d\nAdmin Level:%d\nKills:%d\nDeaths:%d\nMutes:%d\nWarns:%d\nFrozen:%d\nSkin:%d\nKicked:%d\nBanned:%d",name,score,money,admin,kills,deaths,mute,warns,freeze,skin,kicked,banned);
    format(stats, sizeof(stats), "%s", string);
    ShowPlayerDialog(playerid,3,DIALOG_STYLE_MSGBOX,"Stats:",stats,"OK","");
    return 1;
}

CMD:kill(playerid,params[])
{
    SetPlayerHealth(playerid, 0);
    PlayerPlaySound(playerid,1085,0.0,0.0,0.0);
    return 1;
}

CMD:asay(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 1) return SendClientMessage ( playerid , -1 , "Your not admin" ) ;
    new pName [ MAX_PLAYER_NAME ] , Str [ 128 ] ;
    GetPlayerName ( playerid , pName , MAX_PLAYER_NAME ) ;
    format ( Str , 128 , "[Admin %s]: %s" , pName , params ) ;
    SendClientMessageToAll ( -1 , Str ) ;
    return 1;
}

CMD:afk(playerid, params[])
{
    new string[128]; 
    if(pInfo[playerid][AFK] == 1) 
    {
        SendClientMessage(playerid, COLOR_RED, "You Are Already AFK"); 
    }
    else if(pInfo[playerid][AFK] == 0)
    {
        new pName[MAX_PLAYER_NAME]; 
        GetPlayerName(playerid, pName, sizeof(pName)); 
        format(string, sizeof(string), "%s Is Now AFK", pName); 
        SendClientMessageToAll(COLOR_RED, string); 
        TogglePlayerControllable(playerid, 0); 
        pInfo[playerid][AFK] = 1; 
    }
    return 1; 
}

CMD:back(playerid, params[])
{
    new string[128];
    if(pInfo[playerid][AFK] == 0)
    {
        SendClientMessage(playerid, COLOR_RED, "You Are Not AFK"); 
    }
    else if(pInfo[playerid][AFK] == 1)
    {
        new pName[MAX_PLAYER_NAME]; 
        GetPlayerName(playerid, pName, sizeof(pName)); 
        format(string, sizeof(string), "%s Is Back", pName);
        SendClientMessageToAll(COLOR_RED, string); 
        TogglePlayerControllable(playerid, 1); 
        pInfo[playerid][AFK] = 0;
    }
    return 1; 
}

CMD:pafk(playerid, params[])
{
    new count = 0;
    new pName[MAX_PLAYER_NAME]; 
    new string[128]; 
    GetPlayerName(playerid, pName, sizeof(pName)); 
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
        if(IsPlayerConnected(i)) 
        {
            if(pInfo[i][AFK] == 1)
            {
                format(string, 128, "Players AFK: %s",pName,i);
                SendClientMessage(playerid, COLOR_RED, string); 
                count++;
            }
        }
    }
    if(count == 0)
    {
        SendClientMessage(playerid, COLOR_RED, "No One Is AFK"); 
    }
    return 1;
}

CMD:playersafk(playerid, params[])
{
    new count = 0;
    new pName[MAX_PLAYER_NAME];
    new string[128];
    GetPlayerName(playerid, pName, sizeof(pName));
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
        if(IsPlayerConnected(i))
        {
            if(pInfo[i][AFK] == 1)
            {
                format(string, 128, "Players AFK: %s",pName,i);
                SendClientMessage(playerid, COLOR_RED, string);
                count++;
            }
        }
    }
    if(count == 0)
    {
        SendClientMessage(playerid, COLOR_RED, "No One Is AFK");
    }
    return 1;
}

CMD:afkhelp(playerid, params[])
{
    SendClientMessage(playerid, COLOR_RED, "==============================");
    SendClientMessage(playerid, COLOR_RED, "/pafk(/playersafk), /afk, /back");
    SendClientMessage(playerid, COLOR_RED, "==============================");
    return 1;
}

CMD:slap(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256],Float:health;
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 1)return ERRORLevel1;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, YELLOW, "Usage: /slap [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,YELLOW,"Player is not connected!");
	GetPlayerHealth(playerid2, health);
	SetPlayerHealth(playerid2, health-25);
	format(string,sizeof(string),"Admin %s has slapped player %s!",GetName(playerid),GetName(playerid2));
	SendClientMessageToAll(YELLOW,string);
	return 1;
}

CMD:spec(playerid,params[])
{
	new playerid2;
	new tmp[256], Index;
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 2) return ERRORLevel2;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /spec [PlayerId]");
	playerid2 = strval(tmp);

	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");

	TogglePlayerSpectating(playerid, 1);
	PlayerSpectatePlayer(playerid, playerid2);
	SetPlayerInterior(playerid,GetPlayerInterior(playerid2));
	gSpectateID[playerid] = playerid2;
	gSpectateType[playerid] = ADMIN_SPEC_TYPE_PLAYER;
	return 1;
}


CMD:specoff(playerid,params[])
{
	if(pInfo[playerid][Admin] >= 2) return ERRORLevel2;
	TogglePlayerSpectating(playerid, 0);
	gSpectateID[playerid] = INVALID_PLAYER_ID;
	gSpectateType[playerid] = ADMIN_SPEC_TYPE_NONE;
	return 1;
}

CMD:banip(playerid,params[])
{
	new string[64],string2[64], PlayerName[MAX_PLAYER_NAME];
	GetPlayerName(playerid,PlayerName,MAX_PLAYER_NAME);
	if(pInfo[playerid][Admin] >= 4) return ERRORLevel4;
	if (sscanf(params, "s[32]", params)) return SendClientMessage(playerid, Yellow, "Usage: /banip ip");
	format(string,64,"banip %s",params);
	SendRconCommand(string);
	format(string,64,"You have banned IP: %s",params);
    new File:ipban=fopen("Server/all_bans.txt", io_append);
    format(string2, 64, "%s - Admin:%s\r\n",params, PlayerName);
    fwrite(ipban, string2);
    fclose(ipban);
	SendClientMessage(playerid,Red,string);
	return 1;
}

CMD:unbanip(playerid,params[])
{
	if(pInfo[playerid][Admin] >= 4) return ERRORLevel4;
	if (sscanf(params, "s[32]", params)) return SendClientMessage(playerid, Yellow, "Usage: /unbanip ip");
	new string[64];
	format(string,64,"unbanip %s",params);
	SendRconCommand(string);
	format(string,64,"You have unbanned IP: %s",params);
	SendClientMessage(playerid,Red,string);
	return 1;
}

CMD:gmx(playerid,params[])
{
	if(pInfo[playerid][Admin] >= 5) return SendClientMessage(playerid,Yellow,"You need to be level 5 to use this command!");
	SendRconCommand("gmx");
	return 1;
}

CMD:ip(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 1)
    {
		if(pLogged[playerid] == 1)
		{
		    new Target;
	        if(!sscanf(params, "u", Target))
		    {
    			if(Target == INVALID_PLAYER_ID) return SendClientMessage(playerid,red,"ERROR: Wrong player ID");
				new PIP[30];
				GetPlayerIp(Target,PIP,sizeof(PIP));
				new pstring[256];
				new tname[MAX_PLAYER_NAME];
				GetPlayerName(Target,tname,sizeof(tname));
				format(pstring,sizeof(pstring),"%sґs IP: %s",tname,PIP);
				SendClientMessage(playerid,YELLOW,pstring);
			}
			else SendClientMessage(playerid,YELLOW,"USAGE: /ip <playerid>");
		}
		else SendClientMessage(playerid,red,"ERROR: You must be logged in to use this command!");
	}
	else SendClientMessage(playerid,red,"ERROR: You must be an Admin level 1 or higher to perform this command!");
	return 1;
}

CMD:ping(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 1)
    {
		if(pLogged[playerid] == 1)
		{
		    new Target;
	        if(!sscanf(params, "u", Target))
		    {
		        if(Target == INVALID_PLAYER_ID) return SendClientMessage(playerid,red,"ERROR: Wrong player ID");
				new pstring[256];
				new tname[MAX_PLAYER_NAME];
				GetPlayerName(Target,tname,sizeof(tname));
				format(pstring,sizeof(pstring),"%sґs ping: %d",tname, GetPlayerPing(Target));
				SendClientMessage(playerid,YELLOW,pstring);
			}
			else SendClientMessage(playerid,YELLOW,"USAGE: /ping <playerid>");
		}
		else SendClientMessage(playerid,red,"ERROR: You must be logged in to use this command!");
	}
	else SendClientMessage(playerid,red,"ERROR: You must be an Admin level 1 or higher to perform this command!");
	return 1;
}

CMD:kickall(playerid,params[])
{
	#pragma unused params
	if(pInfo[playerid][Admin] >= 5)return SendClientMessage(playerid,Yellow,"You need to be level 5 to use this command!");
    for(new i = 0; i < MAX_PLAYERS; i++) {
	if(IsPlayerConnected(i)) {
	Kick(i);
	}
  	}
	return 1;
}

CMD:eject(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 2) return ERRORLevel2;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /eject [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	new Float:x,Float:y,Float:z;
	GetPlayerPos(playerid2, x, y, z);
	SetPlayerPos(playerid2, x, y, z+3);
	format(string,sizeof(string),"You have ejected player %s from his vehicle.",GetName(playerid2));
	SendClientMessage(playerid,Yellow,string);
	return 1;
}

CMD:disarm(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 4) return ERRORLevel4;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /disarm [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	ResetPlayerWeapons(playerid2);
	format(string,sizeof(string),"You have disarmed player %s",GetName(playerid2));
	SendClientMessage(playerid,Yellow,string);
	return 1;
}

CMD:mute(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 1) return ERRORLevel1;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /mute [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	if(pInfo[playerid2][Mute] == 1) return SendClientMessage(playerid,Yellow,"Player is muted already");
	pInfo[playerid][Mute] = 1;
	format(string,sizeof(string),"Admin %s has muted player %s!",GetName(playerid),GetName(playerid2));
	SendClientMessageToAll(Red,string);
	SaveIn("MuteLog",string);
	return 1;
}

CMD:unmute(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 1) return ERRORLevel1;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /unmute [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	if(pInfo[playerid2][Mute] == 0) return SendClientMessage(playerid,Yellow,"Player is not muted");
	pInfo[playerid][Mute] = 0;
	format(string,sizeof(string),"Admin %s has unmuted player %s!",GetName(playerid),GetName(playerid2));
	SendClientMessageToAll(Red,string);
	return 1;
}

CMD:akill(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 3) return ERRORLevel3;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /akill [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	SetPlayerHealth(playerid2, 0);
	format(string,sizeof(string),"Admin %s has killed player %s!",GetName(playerid),GetName(playerid2));
	SendClientMessageToAll(Yellow,string);
	return 1;
}

CMD:drop(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 2) return ERRORLevel2;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /drop [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	new Float:x,Float:y,Float:z;
	GetPlayerPos(playerid2, x, y, z);
	SetPlayerPos(playerid2, x, y, z+20);
	format(string,sizeof(string),"You have dropped player '%s' from 20 feet.",GetName(playerid2));
	SendClientMessage(playerid,Yellow,string);
	return 1;
}

CMD:explode(playerid,params[])
{
	new playerid2;
	new tmp[256], Index, string[256];
	tmp = strtok(params,Index), playerid2 = strval(tmp);
	if(pInfo[playerid][Admin] >= 3) return ERRORLevel3;
	if (sscanf(params, "u", playerid2)) return SendClientMessage(playerid, Yellow, "Usage: /explode [PlayerId]");
	if(!IsPlayerConnected(playerid2))return SendClientMessage(playerid,Yellow,"Player is not connected!");
	new Float:x, Float:y, Float:z;
	GetPlayerPos(playerid2,x, y, z);
	CreateExplosion(x, y , z, 7,10.0);
	format(string,sizeof(string),"You have exploded player %s!",GetName(playerid2));
	SendClientMessage(playerid,Yellow,string);
	return 1;
}

CMD:a(playerid, params[])
{
        new administrator[MAX_PLAYER_NAME], string[128],chat;
        if(!sscanf(params, "s", chat)) 
        {
                if(pInfo[playerid][Admin] >= 1)
                {
                    GetPlayerName(playerid, administrator, sizeof(administrator));
                    format(string, sizeof(string), "[Admin %s]: %s", administrator, chat);
                    AChat(AC, string, 1); 
                }
                else return SendClientMessage(playerid, ROJOO, "[ERROR]: You are not an Administrator.");
        }
        else return SendClientMessage(playerid, AC, "[USAGE]: /A [Chat]");
        return 1;
}

CMD:clearchat(playerid,params[])
{
   if(pInfo[playerid][Admin] >= 1) return SendClientMessage( playerid, red, "ERROR: You must be level 1 to use this command!" );
   {
   for( new i = 0; i <= 100; i ++ ) SendClientMessageToAll( white, "" );}
   return 1;
}

CMD:pm(playerid,params[])
{
        new pid; 
        new message[128];
        if(sscanf(params, "us[32]", pid, message)) 
        {
            return SendClientMessage(playerid, YELLOW, "USAGE: /pm <playerid> <message>");
        }
        if(!IsPlayerConnected(pid))
            return SendClientMessage(playerid, red, "ERROR: Player is not connected!");

        new pmsg[256]; 
        new pname[MAX_PLAYER_NAME]; 
        GetPlayerName(playerid,pname,sizeof(pname)); 
        format(pmsg,sizeof(pmsg),"PM from %s(%d): %s",pname,playerid,message); 

        new pidmsg[256]; 
        new pidname[MAX_PLAYER_NAME]; 
        GetPlayerName(pid,pidname,sizeof(pidname)); 
        format(pidmsg,sizeof(pidmsg),"PM to %s(%d): %s",pidname,pid,message); 
        SendClientMessage(pid, YELLOW, pmsg);
        SendClientMessage(playerid, YELLOW, pidmsg);

        return 1;
}

CMD:count(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 5) return SendClientMessage(playerid,red,"You have no permission to use this command!");
    if(CountDownInProgress == true) return SendClientMessage(playerid,red,"There is already a countdown in progress!");
    CountDownInProgress = true;
    SetTimer("countdown",1000,false);
    SendClientMessageToAll(white,"Adminiatrator has started a 5 second countdown");
    return 1;
}

CMD:count2(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 5) return SendClientMessage(playerid,red,"You have no permission to use this command!");
    if(CountDownInProgress == true) return SendClientMessage(playerid,red,"There is already a countdown in progress!");
    CountDownInProgress = true;
    SetTimer("countdown",1000,false);
    SendClientMessageToAll(white,"Adminiatrator has started a 30 second countdown");
    return 1;
}

CMD:warn(playerid,params[])
{
    if(pInfo[playerid][Admin] >= 3)
    {
		if(pLogged[playerid])
		{
	        new Target;
	        new Reason[50];
	        if(!sscanf(params, "us[50]", Target, Reason))
		    {
		        if(Target == playerid) return SendClientMessage(playerid, COLOR_RED, "SERVER: Cant perform this command on yourself!" );
                if(Target == INVALID_PLAYER_ID) return SendClientMessage(playerid,red,"ERROR: Wrong player ID");
                if(pInfo[Target][Admin] >= pInfo[playerid][Admin]) return SendClientMessage(playerid,red,"ERROR: You cant perform this on Admins that are equal or higher than your level!");
				pInfo[Target][Warns]++;
		        new tname[MAX_PLAYER_NAME];
				GetPlayerName(Target,tname,sizeof(tname));
				new pname[MAX_PLAYER_NAME];
				GetPlayerName(playerid,pname,sizeof(pname));
				new MyString[256];
				new TargetString[256];
				new string[128];
				WarnKick(Target);
				format(MyString,sizeof MyString, "You have warned %s! (Reason: %s) (Warnings: %d/%d)", tname, Reason, pInfo[Target][Warns],MAX_WARNINGS);
				format(TargetString,sizeof TargetString, "You have been warned by %s! (Reason: %s) (Warnings: %d/%d)", pname, Reason, pInfo[Target][Warns],MAX_WARNINGS);
				format(string,sizeof string, "*** ADMIN WARN: %s (%i)-Reason: %s [Warnings: %d/%d]", tname, Target, Reason, pInfo[Target][Warns],MAX_WARNINGS);
				SendClientMessage(Target, COLOR_RED, MyString);
				SendClientMessage(playerid, GREEN, TargetString);
				SendClientMessageToAll(red, string);
				if(pInfo[Target][Warns] == MAX_WARNINGS)
				{
				    new kstring[256];
				    new name[MAX_PLAYER_NAME];
				    GetPlayerName(Target,name,sizeof(name));
				    format(kstring,sizeof(kstring),"*** SERVER KICK: %s (%i)-Maximum Warnings)", name, Target);
				    SendClientMessageToAll(red,kstring);
				    pInfo[Target][Warns] = 0;
				    WarnKick(Target);
				    Kick(Target);
				}
			}
			else SendClientMessage(playerid,YELLOW,"USAGE: /warn <playerid> <reason>");
		}
		else SendClientMessage(playerid,red,"ERROR: You must be logged in to use this command!");
	}
	else SendClientMessage(playerid,red,"ERROR: You must be an Admin level 3 or higher to perform this command!");
	return 1;
}

CMD:tplayer(playerid, params[])
{
    if(pInfo[playerid][Admin] >= 3){
	new Player, Player2;
    if(sscanf(params, "uu", Player, Player2)) return SendClientMessage(playerid,white,"USAGE: /tplayer <id1> <id2>");
	else
	{
	    if(Player  == (0xFFFF))  return SendClientMessage(playerid,white,"Player1 not connected!");
	    if(Player2 == (0xFFFF))  return SendClientMessage(playerid,white,"Player2 not connected!");
	    if(Player  == playerid )  return SendClientMessage(playerid,white,"Player1 entered is you!");
	    if(Player2 == playerid )  return SendClientMessage(playerid,white,"Player2 entered is you!");

        if(pInfo[playerid][Admin] < pInfo[Player][Admin])
				return SendClientMessage(playerid,white,"You are not allowed to use this command on this admin!");

        if(pInfo[playerid][Admin] < pInfo[Player2][Admin])
				return SendClientMessage(playerid,white,"You are not allowed to use this command on this admin!");

	    new Float: Pos[4];

        GetPlayerPos(Player2, Pos[0], Pos[1], Pos[2]);
	    GetPlayerFacingAngle(Player2, Pos[3]);
	    if(IsPlayerInAnyVehicle(Player))
	    {
	        LinkVehicleToInterior(GetPlayerVehicleID(Player), GetPlayerInterior(Player2));
			SetVehicleVirtualWorld(GetPlayerVehicleID(Player), GetPlayerVirtualWorld(Player2));

			SetVehiclePos(GetPlayerVehicleID(Player), Pos[0] + 2, Pos[1] + 2, Pos[2] + 1);
			SetVehicleZAngle(GetPlayerVehicleID(Player), Pos[3]);
	    }
	    else
	    {
	    	SetPlayerPos(Player, Pos[0], Pos[1] + 2, Pos[2] + 0.5);
	    	SetPlayerFacingAngle(Player, Pos[3]);
	    }

	    SetPlayerVirtualWorld(Player, GetPlayerVirtualWorld(Player2));
	    SetPlayerInterior(Player, GetPlayerInterior(Player2));

	    FormatMSG(playerid,COLOR_GREY, "You teleported %s[%i] to %s[%i]", Name(Player), Player ,Name(Player2), Player2);

	    FormatMSG(Player,COLOR_GREY, "Admin %s[%i] teleported you to %s[%i]", Name(playerid), playerid ,Name(Player2), Player2);
	    FormatMSG(Player2,COLOR_GREY, "Admin %s[%i] teleported %s[%i] to your position", Name(playerid), playerid ,Name(Player), Player);
	    }
	}
	return 1;
}

CMD:setskin(playerid, params[])
{
     new name[MAX_PLAYER_NAME], targetname[MAX_PLAYER_NAME], id, skinid, string[128];
     if(pInfo[playerid][Admin] >= 2){
     if(sscanf(params, "ui", id, skinid)) return SendClientMessage(playerid, -1, "USAGE: /setskin [playerid] [skinid]");
     GetPlayerName(playerid, name, MAX_PLAYER_NAME);
     GetPlayerName(id, targetname, MAX_PLAYER_NAME);
     if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Player not connected!");
     if(!IsValidSkin(skinid)) return SendClientMessage(playerid, -1,"Invalid skin!");
     SetPlayerSkin(id, skinid);
     format(string, 128, "Admin %s(%d) has set your skinid to %i", name, playerid, skinid);
     SendClientMessage(id, -1, string);
     format(string, 128, "You set %s(%d) skin to skinid %i", targetname, id, skinid);
     SendClientMessage(playerid, -1, string);
     }
     return 1;
}

CMD:cskin(playerid, params[])
{
     new name[MAX_PLAYER_NAME], targetname[MAX_PLAYER_NAME], id, skinid, string[128];
     if(sscanf(params, "i",skinid)) return SendClientMessage(playerid, -1, "USAGE: /cskin(/changeskin) [skinid]");
     GetPlayerName(playerid, name, MAX_PLAYER_NAME);
     GetPlayerName(id, targetname, MAX_PLAYER_NAME);
     if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1, "Player not connected!");
     if(!IsValidSkin(skinid)) return SendClientMessage(playerid, -1,"Invalid skin!");
     SetPlayerSkin(id, skinid);
     format(string, 128, "You successfully changed your skin to %d",skinid);
     SendClientMessage(playerid, -1, string);
     return 1;
}

CMD:changeskin(playerid, params[])
{
     new name[MAX_PLAYER_NAME], targetname[MAX_PLAYER_NAME], id, skinid, string[128];
     if(sscanf(params, "i",skinid)) return SendClientMessage(playerid, -1, "USAGE: /changeskin(/cskin) [skinid]");
     GetPlayerName(playerid, name, MAX_PLAYER_NAME);
     GetPlayerName(id, targetname, MAX_PLAYER_NAME);
     if(id == INVALID_PLAYER_ID) return SendClientMessage(playerid, -1,"Player not connected!");
     if(!IsValidSkin(skinid)) return SendClientMessage(playerid, -1,"Invalid skin!");
     SetPlayerSkin(id, skinid);
     format(string, 128, "You successfully changed your skin to %d",skinid);
     SendClientMessage(playerid, -1, string);
     return 1;
}
I fixed the return 0 = OnPlayerCommandText


Re: Help - mamorunl - 30.08.2012

return 0 on OnPlayerCommandText.


Re: Help - ThePrograme - 30.08.2012

Thanks anything else