30.08.2012, 17:09
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!
.
#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;
}