I notice this bug today.
to him. he say he cant use any command and it maybe the admin
restoring bug. Heres The Deal on it.
i have proof coz when i try to use /ban it doesnt work. on the beginning
it work but after some secs my admin level sets to 0.
Note: Format just like this "Administrator %s has warn %s <Reason: %s> <Warnings: %d/%d>"
pawn Code:
//// Xtreme Admin System V1.0// Made By// [SP]Mr.Kakashi[WP] & GAMER_PS2// Copyright 2011 - 2016//#include <a_samp>#include <YSI\y_ini>#include <zcmd>#include <sscanf2>#include <XKA>//============================================================================//#define ADM_CHAT_LOG true //Turns off/on Saving Admin Chat!#define SaveLogs true //Turns off/on Save Logs To The Admin Folder#define AUTOLOGIN //Admin System Autologin Dont use it if you dont want it//============================================================================//enum pInfo
{ pPass,
pCash,
pScore,
pAdmin,
pKills,
Freeze,
pDeaths
};
new PlayerInfo
[MAX_PLAYERS
][pInfo
],
pIP
[MAX_PLAYERS
][16],
pLogged
[MAX_PLAYERS
],
AdmRank
[128];
forward SaveIn
(filename
[],text
[]);
forward LoadUser_data
(playerid,name
[],value
[]);
#define DIALOG_REGISTER 451#define DIALOG_LOGIN 452#define PATH "Server/Users/%s.ini"#define REGISTERED_MONEY 5000//============================================================================//#define red "{FF002B}"#define pink "{FF00D9}"#define purple "{DFA7F2}"#define blue "{A1C2FF}"#define green "{3DE3B1}"#define yellow "{FAF623}"#define black "{69670C}"#define orange "{F2C80C}"#define ice "{03F2FF}"#define white "{FFFFFF}"#define lime "{00FF40}"#define COLOR_LIGHTBLUE 0x33CCFFAA#define COLOR_RED 0xFF0000FF#define COLOR_GREY 0xAFAFAFAA#define COLOR_YELLOW 0xFFFF00AA#define COLOR_PINK 0xFF66FFAA#define COLOR_BLUE 0x0000BBAA#define COLOR_WHITE 0xFFFFFFAA#define COLOR_DARKRED 0x660000AA#define COLOR_ORANGE 0xFF9900AA#define COLOR_BRIGHTRED 0xFF0000AA#define COLOR_INDIGO 0x4B00B0AA#define COLOR_VIOLET 0x9955DEEE#define COLOR_LIGHTRED 0xFF99AADD#define COLOR_SEAGREEN 0x00EEADDF#define COLOR_GRAYWHITE 0xEEEEFFC4#define COLOR_LIGHTNEUTRALBLUE 0xabcdef66#define COLOR_GREENISHGOLD 0xCCFFDD56#define COLOR_LIGHTBLUEGREEN 0x0FFDD349#define COLOR_NEUTRALBLUE 0xABCDEF01#define COLOR_LIGHTCYAN 0xAAFFCC33#define COLOR_LEMON 0xDDDD2357#define COLOR_MEDIUMBLUE 0x63AFF00A#define COLOR_NEUTRAL 0xABCDEF97#define COLOR_BLACK 0x00000000#define COLOR_NEUTRALGREEN 0x81CFAB00#define COLOR_DARKGREEN 0x12900BBF#define COLOR_LIGHTGREEN 0x24FF0AB9#define COLOR_DARKBLUE 0x300FFAAB#define COLOR_BLUEGREEN 0x46BBAA00#define COLOR_PINK 0xFF66FFAA#define COLOR_LIGHTBLUE 0x33CCFFAA#define COLOR_DARKRED 0x660000AA#define COLOR_ORANGE 0xFF9900AA#define COLOR_PURPLE 0x800080AA#define COLOR_GRAD1 0xB4B5B7FF#define COLOR_GRAD2 0xBFC0C2FF#define COLOR_RED1 0xFF0000AA#define COLOR_GREY 0xAFAFAFAA#define COLOR_GREEN 0x33AA33AA#define COLOR_YELLOW 0xFFFF00AA#define COLOR_WHITE 0xFFFFFFAA#define COLOR_BROWN 0x993300AA#define COLOR_CYAN 0x99FFFFAA#define COLOR_TAN 0xFFFFCCAA#define COLOR_PINK 0xFF66FFAA#define COLOR_KHAKI 0x999900AA#define COLOR_LIME 0x99FF00AA#define COLOR_SYSTEM 0xEFEFF7AA#define COLOR_GRAD2 0xBFC0C2FF#define COLOR_GRAD4 0xD8D8D8FF#define COLOR_GRAD6 0xF0F0F0FF#define COLOR_GRAD2 0xBFC0C2FF#define COLOR_GRAD3 0xCBCCCEFF#define COLOR_GRAD5 0xE3E3E3FF#define COLOR_GRAD1 0xB4B5B7FF//============================================================================//#if defined FILTERSCRIPTpublic OnFilterScriptInit
(){ print("\n--------------------------------------");
print(" Xtreme Administration V1.0.0 ");
print(" Made by Mr.Kakashi ");
print(" Copyright 2011 - 2016 ");
print("--------------------------------------\n");
return 1;
}public OnFilterScriptExit
(){ return 1;
}#endifpublic LoadUser_data
(playerid,name
[],value
[]){ INI_Int
("Password", PlayerInfo
[playerid
][pPass
]);
INI_String
("IP",pIP
[playerid
],
16);
INI_Int
("Cash",PlayerInfo
[playerid
][pCash
]);
INI_Int
("Score",PlayerInfo
[playerid
][pScore
]);
INI_Int
("Admin",PlayerInfo
[playerid
][pAdmin
]);
INI_Int
("Kills",PlayerInfo
[playerid
][pKills
]);
INI_Int
("Deaths",PlayerInfo
[playerid
][pDeaths
]);
return 1;
}public OnPlayerConnect
(playerid
){ pLogged
[playerid
] = 0;
#if defined AUTOLOGIN new tmpIP
[16];
GetPlayerIp
(playerid,tmpIP,
sizeof(tmpIP
));
#endif if(fexist(UserPath
(playerid
))) { INI_ParseFile
(UserPath
(playerid
),
"LoadUser_%s", .bExtra
= true, .extra
= playerid
);
#if defined AUTOLOGIN if(strcmp(tmpIP,pIP
[playerid
],true
) == 0) { pLogged
[playerid
] = 1;
SetPlayerScore
(playerid,PlayerInfo
[playerid
][pScore
]);
GivePlayerMoney
(playerid,PlayerInfo
[playerid
][pCash
]);
if(PlayerInfo
[playerid
][pAdmin
] >= 0) { switch(PlayerInfo
[playerid
][pAdmin
]) { case 1: AdmRank
= "Trial Moderator";
case 2: AdmRank
= "Moderator";
case 3: AdmRank
= "Global Moderator";
case 4: AdmRank
= "Trial Manager";
case 5: AdmRank
= "Header Administrator";
case 6: AdmRank
= "Senior Administrator";
case 7: AdmRank
= "Junior Administrator";
case 8: AdmRank
= "Scripter/Mapper";
case 9: AdmRank
= "Co-Owner";
} if(PlayerInfo
[playerid
][pAdmin
] >= 10) { AdmRank
= "Server Owner";
} new string
[128];
new PlayerName
[MAX_PLAYER_NAME
];
GetPlayerName
(playerid, PlayerName, MAX_PLAYER_NAME
);
format(string,
sizeof(string
),
"You have been automaticlly login | Level %d - %s - |",PlayerInfo
[playerid
][pAdmin
],AdmRank
);
SendClientMessage
(playerid,COLOR_GREEN,string
);
return 1;
} return 1;
} #endif ShowPlayerDialog
(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,
""white
"Login",
""red
"Note:"white
"If this is not your account please leave to this account and create your own one.\n\n"white
"Type your password below to login to your account",
"Login",
"Exit");
} else { ShowPlayerDialog
(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,
""white
"Register",
""red
"Note:"white
"If you crash ingame your account will be save.\n\n"white
"Type the password below to create new account",
"Register",
"Exit");
} return 1;
}public OnPlayerDisconnect
(playerid, reason
){ new INI:File
= INI_Open
(UserPath
(playerid
));
if(pLogged
[playerid
] == 1) { INI_SetTag
(File,
"data");
INI_WriteString
(File,
"IP",pIP
[playerid
]);
INI_WriteInt
(File,
"Cash",GetPlayerMoney
(playerid
));
INI_WriteInt
(File,
"Score",GetPlayerScore
(playerid
));
INI_WriteInt
(File,
"Admin",PlayerInfo
[playerid
][pAdmin
]);
INI_WriteInt
(File,
"Kills",PlayerInfo
[playerid
][pKills
]);
INI_WriteInt
(File,
"Deaths",PlayerInfo
[playerid
][pDeaths
]);
INI_Close
(File
);
} 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 has left the server. (Lost Connection/Crash)", pname
);
case 1: format(string,
sizeof(string
),
"%s has left the server. (Leaving)", pname
);
case 2: format(string,
sizeof(string
),
"%s has left the server. (Kicked/Banned)", pname
);
} SendClientMessageToAll
(COLOR_GREY, string
);
return 1;
}public OnPlayerRequestSpawn
(playerid
){ if(pLogged
[playerid
] == 0) return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must Register Before Spawning!");
return 1;
}public OnPlayerSpawn
(playerid
){ return 1;
}public OnPlayerDeath
(playerid, killerid, reason
){ PlayerInfo
[killerid
][pKills
]++;
PlayerInfo
[playerid
][pDeaths
]++;
return 1;
}public OnVehicleSpawn
(vehicleid
){ return 1;
}public OnVehicleDeath
(vehicleid, killerid
){ return 1;
}public OnPlayerText
(playerid, text
[]){ return 1;
}public SaveIn
(filename
[],text
[]){ #if SaveLogs == true new File:Lfile;
new filepath
[256];
new string
[256];
new year,month,day;
new hour,minute,second;
getdate(year,month,day
);
gettime(hour,minute,second
);
format(filepath,
sizeof(filepath
),
"Server/Logs/%s.txt",filename
);
Lfile
= fopen(filepath,io_append
);
format(string,
sizeof(string
),
"[%02d/%02d/%02d | %02d:%02d:%02d] %s\r\n",day,month,year,hour,minute,second,text
);
fwrite(Lfile,string
);
fclose(Lfile
);
#endif return 1;
}public OnRconCommand
(cmd
[]){ return 1;
}public OnPlayerPickUpPickup
(playerid, pickupid
){ return 1;
}public OnPlayerInteriorChange
(playerid, newinteriorid, oldinteriorid
){ return 1;
}public OnPlayerKeyStateChange
(playerid, newkeys, oldkeys
){ return 1;
}public OnRconLoginAttempt
(ip
[], password
[], success
){ return 1;
}public OnPlayerUpdate
(playerid
){ return 1;
}public OnDialogResponse
(playerid, dialogid, response, listitem, inputtext
[]){ if(dialogid
== DIALOG_REGISTER
) { if (!response
) return Kick
(playerid
);
if(response
) { if(!strlen(inputtext
)) return ShowPlayerDialog
(playerid, DIALOG_REGISTER, DIALOG_STYLE_INPUT,
""white
"Register",
""red
"Note:"white
"If you crash ingame your account will be save.\n\n"white
"Type the password below to create new account",
"Register",
"Exit");
GetPlayerIp
(playerid,pIP
[playerid
],
16);
new INI:File
= INI_Open
(UserPath
(playerid
));
INI_SetTag
(File,
"data");
INI_WriteInt
(File,
"Password",udb_hash
(inputtext
));
#if defined AUTOLOGIN INI_WriteString
(File,
"IP",pIP
[playerid
]);
#endif INI_WriteInt
(File,
"Cash",REGISTERED_MONEY
);
INI_WriteInt
(File,
"Score",
0);
INI_Close
(File
);
pLogged
[playerid
] = 1;
SendClientMessage
(playerid, COLOR_GREEN,
"You have successfully register.");
return 1;
} } if(dialogid
== DIALOG_LOGIN
) { if (!response
) return Kick
(playerid
);
if(response
) { if(udb_hash
(inputtext
)) { pLogged
[playerid
] = 1;
INI_ParseFile
(UserPath
(playerid
),
"LoadUser_%s", .bExtra
= true, .extra
= playerid
);
GivePlayerMoney
(playerid, PlayerInfo
[playerid
][pCash
]);
SetPlayerScore
(playerid, PlayerInfo
[playerid
][pScore
]);
SendClientMessage
(playerid, COLOR_GREEN,
"You have successfully login to your account.");
} else { ShowPlayerDialog
(playerid, DIALOG_LOGIN, DIALOG_STYLE_INPUT,
""white
"Login",
""red
"You have entered an incorrect password.\n"white
"Type your password below to login.",
"Login",
"Exit");
} return 1;
} } return 1;
}//==========================COMMANDS==========================//CMD:freeze
(playerid, params
[]){ new victimname
[MAX_PLAYER_NAME
], adminname
[MAX_PLAYER_NAME
], reason
[128], id;
if (PlayerInfo
[playerid
][pAdmin
] >= 2) { if (sscanf
(params,
"rs", id, reason
)) return SendClientMessage
(playerid, COLOR_RED,
"USAGE: /freeze <playerid/name> <reason>");
if(!IsPlayerConnected
(id
) && id
!= INVALID_PLAYER_ID
&& id
!= playerid
) { GetPlayerName
(id, victimname,
sizeof(victimname
));
GetPlayerName
(playerid, adminname,
sizeof(adminname
));
new str
[128];
if(PlayerInfo
[id
][Freeze
] == 0) { format(str,
128,
"Administrator %s has frozen %s <Reason: %s>",adminname,victimname,reason
);
SendClientMessageToAll
(COLOR_RED,str
);
format(str,
sizeof(str
),
"Administrator %s has freeze you",adminname
);
SendClientMessage
(id,COLOR_GREEN,str
);
format(str,
sizeof(str
),
"You freeze %s <Reason: %s>",victimname,reason
);
SendClientMessage
(id,COLOR_GREEN,str
);
TogglePlayerControllable
(id,
1);
format(str,
sizeof(str
),
"Administrator %s has freeze %s",adminname,victimname
);
SendToAdmins
(COLOR_GREY,str
);
format(str,
sizeof(str
),
"Administrator %s has freeze %s",adminname,victimname
);
printf(str
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: Player is Already Freeze");
} else return SendClientMessage
(playerid, COLOR_RED,
"ERROR: Player is not connected or its yourself.");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}CMD:unfreeze
(playerid, params
[]){ new victimname
[MAX_PLAYER_NAME
], adminname
[MAX_PLAYER_NAME
], id;
if (PlayerInfo
[playerid
][pAdmin
] >= 2) { if (sscanf
(params,
"rs", id
)) return SendClientMessage
(playerid, COLOR_RED,
"USAGE: /unfreeze <playerid/name>");
if(!IsPlayerConnected
(id
) && id
!= INVALID_PLAYER_ID
&& id
!= playerid
) { GetPlayerName
(id, victimname,
sizeof(victimname
));
GetPlayerName
(playerid, adminname,
sizeof(adminname
));
new str
[128];
if(PlayerInfo
[id
][Freeze
] == 1) { format(str,
128,
"Administrator %s has unfreeze %s",adminname,victimname
);
SendClientMessageToAll
(COLOR_RED,str
);
format(str,
sizeof(str
),
"Administrator %s has unfreeze you",adminname
);
SendClientMessage
(id,COLOR_GREEN,str
);
format(str,
sizeof(str
),
"You unfreeze %s",victimname
);
SendClientMessage
(id,COLOR_GREEN,str
);
TogglePlayerControllable
(id,
0);
format(str,
sizeof(str
),
"Administrator %s has unfreeze %s",adminname,victimname
);
SendToAdmins
(COLOR_GREY,str
);
format(str,
sizeof(str
),
"Administrator %s has unfreeze %s",adminname,victimname
);
printf(str
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: Player is not Frozen");
} else return SendClientMessage
(playerid, COLOR_RED,
"ERROR: Player is not connected or its yourself.");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}CMD:setscore
(playerid, params
[]){ new string
[128], pName
[MAX_PLAYER_NAME
], adminname
[MAX_PLAYER_NAME
], pID, score;
if(PlayerInfo
[playerid
][pAdmin
] >= 4) { if(sscanf
(params,
"ud", pID, score
)) return SendClientMessage
(playerid,COLOR_RED,
"USAGE: /setscore <playerid/name> <amount>");
if(IsPlayerConnected
(pID
) && pID
!= INVALID_PLAYER_ID
) { GetPlayerName
(playerid, adminname,
sizeof(adminname
));
GetPlayerName
(pID, pName,
sizeof(pName
));
format(string,
sizeof(string
),
"Administrator %s has set %s's score to %d", adminname,pName,score
);
SendClientMessageToAll
(COLOR_GREEN, string
);
format(string,
sizeof(string
),
"Administrator %s has set your score to %d", adminname, score
);
SendClientMessage
(pID,COLOR_GREEN, string
);
format(string,
sizeof(string
),
"You set %s's score to %d score",pName,score
);
SendClientMessage
(playerid,COLOR_GREEN, string
);
SetPlayerScore
(pID, score
);
format(string,
sizeof(string
),
"Administrator %s has set %s's Score to %d",adminname,pName,score
);
SendToAdmins
(COLOR_GREY,string
);
format(string,
sizeof(string
),
"Administrator %s has set %s's Score to %d",adminname,pName,score
);
printf(string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: Player is not connected!");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR:You must be Administrator Level 2 to use this command");
return 1;
}CMD:makeadmin
(playerid, params
[]){ new victimname
[MAX_PLAYER_NAME
], adminname
[MAX_PLAYER_NAME
], admlvl, id;
new str
[128];
PlayerInfo
[id
][pAdmin
] = admlvl;
GetPlayerName
(id, victimname,
sizeof(victimname
));
GetPlayerName
(playerid, adminname,
sizeof(adminname
));
if(PlayerInfo
[playerid
][pAdmin
] >= 9 || IsPlayerAdmin
(playerid
)) { if (sscanf
(params,
"ui", id, admlvl
)) return SendClientMessage
(playerid, COLOR_RED,
"USAGE: /makeadmin <playerid/name> <level>");
if (id
== INVALID_PLAYER_ID
) return SendClientMessage
(playerid, COLOR_RED,
"ERROR: Invalid ID");
if (admlvl
> 10 || admlvl
< 0) return SendClientMessage
(playerid, COLOR_RED,
"ERROR: Available Admin Levels: 1-10!");
if(admlvl
== PlayerInfo
[id
][pAdmin
]) return SendClientMessage
(playerid, COLOR_RED,
"ERROR: That player is already in that level");
if(PlayerInfo
[id
][pAdmin
] > admlvl
) GameTextForPlayer
(id,
"~r~Demoted",
3000,
3);
if(PlayerInfo
[id
][pAdmin
] < admlvl
) GameTextForPlayer
(id,
"~g~Promoted",
3000,
3);
format(str,
128,
"Administrator %s has set %s Admin Level to | %i - %s |",adminname,victimname,admlvl,AdmRank
);
SendClientMessage
(playerid,COLOR_GREEN,str
);
format(str,
sizeof(str
),
"Administrator %s has made %s to Admin Level | %i - %s |",adminname,victimname,admlvl,AdmRank
);
SendToAdmins
(COLOR_GREY,str
);
format(str,
sizeof(str
),
"Administrator %s has made %s to Admin Level | %i - %s |",adminname,victimname,admlvl,AdmRank
);
printf(str
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 9/10/RCON Leader to use this command");
return 1;
}CMD:goto(playerid, params
[]){ if (PlayerInfo
[playerid
][pAdmin
] >= 2) { new ID;
if(sscanf
(params,
"u", ID
)) return SendClientMessage
(playerid, COLOR_GREY,
"USAGE: /goto [playerid]");
if(IsPlayerConnected
(ID
) && ID
!= INVALID_PLAYER_ID
&& ID
!= playerid
) { new Float:x,
Float:y,
Float:z;
GetPlayerPos
(ID, x, y, z
);
SetPlayerPos
(playerid, x
+1, y
+1, z
);
if(GetPlayerState
(playerid
) == 2) { SetVehiclePos
(GetPlayerVehicleID
(playerid
),x
+3,y,z
);
LinkVehicleToInterior
(GetPlayerVehicleID
(playerid
),GetPlayerInterior
(ID
));
SetVehicleVirtualWorld
(GetPlayerVehicleID
(playerid
),GetPlayerVirtualWorld
(ID
));
} } else return SendClientMessage
(playerid, COLOR_RED,
"ERROR: Player is not connected or its yourself.");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}CMD:showadmlvl
(playerid, params
[]){ if(PlayerInfo
[playerid
][pAdmin
] >= 1) { new string
[128],AdminName
[24],Level;
Level
= PlayerInfo
[playerid
][pAdmin
];
GetPlayerName
(playerid,AdminName,
128);
format(string,
sizeof(string
),
""white
"<LEVEL>:"yellow
" Administrator "red
"%s "yellow
"| Level %d - %s |",AdminName,Level,AdmRank
);
SendClientMessageToAll
(COLOR_RED,string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 1 to use this command");
return 1;
}CMD:get
(playerid, params
[]){ if(PlayerInfo
[playerid
][pAdmin
] >= 2) { new targetid, string
[128];
if(sscanf
(params,
"u", targetid
)) return SendClientMessage
(playerid, COLOR_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);
format(string,
sizeof(string
),
"You have been teleported to Administrator %s.",AdminName
);
SendClientMessage
(targetid,COLOR_BLUE,string
);
format(string,
sizeof(string
),
"%s has been teleport to you.",pName
);
SendClientMessage
(targetid,COLOR_GREEN,string
);
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, COLOR_RED,
"ERROR: Player is not connected or its yourself.");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}CMD:kick
(playerid, params
[]){ new pid;
if(PlayerInfo
[playerid
][pAdmin
] >= 2) { if(sscanf
(params,
"us[128]", pid, params
[2])) return SendClientMessage
(playerid,COLOR_RED,
"USAGE: /kick <playerid/name> <reason>");
if(!IsPlayerConnected
(pid
) && pid
!= INVALID_PLAYER_ID
&& pid
!= playerid
) { new adminname
[MAX_PLAYER_NAME
], paramname
[MAX_PLAYER_NAME
], string
[180];
GetPlayerName
(pid, paramname,
sizeof(paramname
));
GetPlayerName
(playerid, adminname,
sizeof(adminname
));
format(string,
sizeof(string
),
"Administrator %s has kicked %s <Reason: %s>",adminname,paramname, params
[2]);
SendClientMessageToAll
(COLOR_RED, string
);
format(string,
sizeof(string
),
"You have been kicked by Administrator %s <Reason: %s>", paramname, params
[2]);
SendClientMessage
(pid,COLOR_RED, string
);
format(string,
sizeof(string
),
"You kicked %s <Reason: %s>", paramname, params
[2]);
SendClientMessage
(playerid,COLOR_GREEN, string
);
Kick
(pid
);
format(string,
sizeof(string
),
"Administrator %s has kicked %s",adminname,paramname
);
SendToAdmins
(COLOR_GREY,string
);
format(string,
sizeof(string
),
"Administrator %s has kicked %s <Reason:%s>",adminname,paramname,params
[2]);
printf(string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: Player is not connected or its yourself.");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}CMD:jetpack
(playerid, params
[]){ if(PlayerInfo
[playerid
][pAdmin
] >= 1) { new adminname
[MAX_PLAYER_NAME
],string
[180];
GetPlayerName
(playerid, adminname,
sizeof(adminname
));
SetPlayerSpecialAction
(playerid,
2);
SendClientMessage
(playerid,COLOR_GREEN,
"|- Jetpack Spawned! -|");
format(string,
sizeof(string
),
"Administrator %s has spawned a jetpack!",adminname
);
SendToAdmins
(COLOR_GREY,string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 1 to use this command");
return 1;
}CMD:ban
(playerid, params
[]){ new pid;
if(PlayerInfo
[playerid
][pAdmin
] >= 3) { if(sscanf
(params,
"us[128]", pid, params
[2])) return SendClientMessage
(playerid,COLOR_RED,
"USAGE: /ban <playerid/name> <reason>");
if(!IsPlayerConnected
(pid
) && pid
!= INVALID_PLAYER_ID
&& pid
!= playerid
) { new adminname
[MAX_PLAYER_NAME
], paramname
[MAX_PLAYER_NAME
], string
[180];
new year,month,day;
getdate(year, month, day
);
new hour,minuite,second;
gettime(hour,minuite,second
);
GetPlayerName
(pid, paramname,
sizeof(paramname
));
GetPlayerName
(playerid, adminname,
sizeof(adminname
));
format(string,
sizeof(string
),
"Administrator %s has ban %s <Reason: %s> <Date: %d/%d/%d> <Time: %d:%d>",adminname,paramname, params
[2],day,month,year,hour,minuite
);
SendClientMessageToAll
(COLOR_RED, string
);
format(string,
sizeof(string
),
"You have been ban by Administrator %s <Reason: %s>", paramname, params
[2]);
SendClientMessage
(pid,COLOR_RED, string
);
SendClientMessage
(pid,COLOR_GREEN,
"==============================================");
format(string,
sizeof(string
),
"You have been ban by Administrator %s <Reason: %s>", paramname, params
[2]);
SendClientMessage
(pid,COLOR_RED, string
);
SendClientMessage
(pid,COLOR_RED,
"Make unban appeal at our forums. www.server.com");
SendClientMessage
(pid,COLOR_GREEN,
"==============================================");
format(string,
sizeof(string
),
"You ban %s <Reason: %s>", paramname, params
[2]);
SendClientMessage
(playerid,COLOR_GREEN, string
);
SaveIn
("BanLog",string
);
Kick
(pid
);
format(string,
sizeof(string
),
"Administrator %s has banned %s",adminname,paramname
);
SendToAdmins
(COLOR_GREY,string
);
format(string,
sizeof(string
),
"Administrator %s has banned %s <Reason:%s>",adminname,paramname,params
[2]);
printf(string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: Player is not connected or its yourself.");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}CMD:clearchat
(playerid,params
[]){ if(PlayerInfo
[playerid
][pAdmin
] >= 2) { for(new i
= 0; i
< 100; i
++) SendClientMessageToAll
(COLOR_GREY,
"");
new string
[128];
new adminname
[MAX_PLAYER_NAME
];
GetPlayerName
(playerid, adminname,
sizeof(string
));
format(string,
sizeof(string
),
"Administrator %s has cleared the chat", adminname
);
SendClientMessageToAll
(COLOR_RED, string
);
format(string,
sizeof(string
),
"Administrator %s has cleared the chat",adminname
);
printf(string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}CMD:kill
(playerid,params
[]){ SetPlayerHealth
(playerid,
0);
PlayerPlaySound
(playerid,
1085,
0.0,
0.0,
0.0);
PlayerInfo
[playerid
][pDeaths
]++;
return 1;
}CMD:suicide
(playerid,params
[]){ SetPlayerHealth
(playerid,
0);
PlayerPlaySound
(playerid,
1085,
0.0,
0.0,
0.0);
PlayerInfo
[playerid
][pDeaths
]++;
return 1;
}CMD:asay
(playerid, params
[]){ new string
[128], pname
[MAX_PLAYER_NAME
];
if(PlayerInfo
[playerid
][pAdmin
] >= 1) { if(isnull
(params
)) return SendClientMessage
(playerid,COLOR_RED,
"USAGE: /asay <text>");
GetPlayerName
(playerid, pname, MAX_PLAYER_NAME
);
format(string,
sizeof(string
),
"Admin %s: "white
"%s", pname, params
);
SendClientMessageToAll
(COLOR_RED,string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 1 to use this command");
return 1;
}CMD:forcerules
(playerid, params
[]){ new pid;
if(PlayerInfo
[playerid
][pAdmin
] >= 2) { if(sscanf
(params,
"us[128]", pid, params
[2])) return SendClientMessage
(playerid,COLOR_RED,
"USAGE: /forcerules <playerid/name> <reason>");
if(!IsPlayerConnected
(pid
) && pid
!= INVALID_PLAYER_ID
&& pid
!= playerid
) { new adminname
[MAX_PLAYER_NAME
], paramname
[MAX_PLAYER_NAME
], string
[180];
GetPlayerName
(pid, paramname,
sizeof(paramname
));
GetPlayerName
(playerid, adminname,
sizeof(adminname
));
format(string,
sizeof(string
),
"Administrator %s has force to read rules %s <Reason: %s>",adminname,paramname, params
[2]);
SendClientMessageToAll
(COLOR_RED, string
);
format(string,
sizeof(string
),
"You have been force to read rules by Administrator %s <Reason: %s>", paramname, params
[2]);
SendClientMessage
(pid,COLOR_RED, string
);
format(string,
sizeof(string
),
"You force to read rules %s <Reason: %s>", paramname, params
[2]);
SendClientMessage
(playerid,COLOR_GREEN, string
);
ShowPlayerDialog
(pid,
3, DIALOG_STYLE_MSGBOX,
"Rules:",
"1.)Do Not Hack/Cheat/Mods\n2.)Respect Admins/Players\n3.)Ask To Be Admin if we are Hiring\n4.)No Insulting/Flamming\n5.)Dont AFK on Spawn Areas\n6.)Dont Team Carjack\n7.)Dont Team Kill\n\nIf you break those rules you may Punishment by Our Server Administrators",
"Accept",
"Ignore");
format(string,
sizeof(string
),
"Administrator %s has force to read rules %s",adminname,paramname
);
SendToAdmins
(COLOR_GREY,string
);
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: Player is not connected or its yourself.");
} else return SendClientMessage
(playerid,COLOR_RED,
"ERROR: You must be Administrator Level 2 to use this command");
return 1;
}//============================================================================//stock SendToAdmins
(COLOR,message
[]){ for(new i
= 0; i
< MAX_PLAYERS; i
++) { if(PlayerInfo
[i
][pAdmin
] < 1) return 0;
SendClientMessage
(i,COLOR,message
);
} return 1;
}stock UserPath
(playerid
){ new string
[128],playername
[MAX_PLAYER_NAME
];
GetPlayerName
(playerid,playername,
sizeof(playername
));
format(string,
sizeof(string
),PATH,playername
);
return string;
}
UPDATE: The Problem is Solved Thanks to me i solve it by myself and thanks SmiT you give me a /warn command 1+ rep to you
Bump...
Stop use this admin filterscripts. Create your own.
iit is mine admin script. lol