Jump to content
  • 0

pomoc RegisterSystem-AdminSystem


Mivčo

Dotaz

Zdravim mam tu jeden script co som si stiahol z sa-mp fora je celkom dobrý

 

 

#include a_samp

#include zmcd

#include dini

#include dudb

#include sscanf

// Colors Define

#define COLOR_GREEN 0x40FFFFFF

#define COLOR_RED 0xFF444499

#define COLOR_YELLOW 0xFFFF00AA

#define COLOR_WHITE 0xFFFFFFAA

#define COLOR_SYSTEM 0xFFFF00AA

#define COLOR_BLACK 0x000000AA

#define COLOR_BLUE 0x0066F6AA

#define COLOR_GREY 0x7A7979AA

#define COLOR_ORANGE 0xFF444499

#define COLOR_PINK 0xF600F6AA

#define COLOR_PURPLE 0x9F00F6AA

#define COLOR_LIGHTBLUE 0x0066F6AA

#define COLOR_VIOLET 0x9955DEEE

#define COLOR_LIGHTRED 0xFF99AADD

#define COLOR_SEAGREEN 0x00EEADDF

#define COLOR_GRAYWHITE 0xEEEEFFC4

#define COLOR_LIGHTNEUTRALBLUE 0xabcdef66

#define COLOR_GREENISHGOLD 0xDEAD4370

#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_NEUTRALGREEN 0x81CFAB00

#define COLOR_DARKGREEN 0x12900BBF

#define COLOR_LIGHTGREEN 0x24FF0AB9

#define COLOR_DARKBLUE 0x300FFAAB

#define COLOR_BLUEGREEN 0x46BBAA00

#define COLOR_DARKRED 0x660000AA

#define COLOR_CYAN 0x40FFFFFF

 

//Main Define

#define loop(%1,%2) for (new %1 = 0; %1 < %2; %1++) // loop (used for FilterScript)

#define SERVER_USER_FILE "Xtreme/%s.ini"

 

// Statics

static iPlayerChatTime[MAX_PLAYERS];

static szPlayerChatMsg[MAX_PLAYERS][128];

 

// Arrays

new szString[256];

 

// Enums

enum pInfo { // Player Info

RegisterDate,

AdminLevel,

VIPLevel,

Cash,

Score,

Skin,

Kills,

Deaths,

Cookies,

IP,

Banned,

Seconds,

Minutes,

Hours,

}

 

 

 

// Defines of Cmds

new PlayerInfo[MAX_PLAYERS][pInfo];

new PlayerLogged[MAX_PLAYERS];

new Spec[MAX_PLAYERS];

new warned[MAX_PLAYERS];

new Muted[MAX_PLAYERS];

new Jailed[MAX_PLAYERS];

new God[MAX_PLAYERS];

new Notify[MAX_PLAYERS];

new MuteTimer[MAX_PLAYERS];

new JailTimer[MAX_PLAYERS];

new wrongpass[MAX_PLAYERS];

 

// Forwards

forward AutoSave();

forward warned1(playerid);

forward ScoreUpdate(playerid);

forward BanLog(string[]);

forward CheckEachPlayer();

forward Unmute(playerid);

forward Unjail(playerid);

forward OnPlayerAdminChat(playerid, message[]);

forward OnPlayerVIPChat(playerid, message[]);

 

 

 

public OnFilterScriptInit()

{

print("\n--------------------------------------");

print(" X Admin Loaded");

print("--------------------------------------\n");

return 1;

}

 

public OnFilterScriptExit()

{

return 1;

}

 

 

 

main()

{

print("\n----------------------------------");

print("X Admin Un Loaded");

print("----------------------------------\n");

}

 

 

// Stocks

stock RichPlayerName(playerid) {

new RichName[32];

GetPlayerName(playerid, RichName, 64);

return RichName;

}

 

//Stocks

stock GotInvitedToDuel[MAX_PLAYERS];

stock HasInvitedToDuel[MAX_PLAYERS];

stock IsPlayerDueling[MAX_PLAYERS];

stock DuelCountDown[MAX_PLAYERS];

stock DuelTimer[MAX_PLAYERS];

stock DuelInProgress;

stock DuelingID1;

stock DuelingID2;

 

//Staff rank

stock staffrank(playerid) {

switch(PlayerInfo[playerid][AdminLevel]) {

case 0: szString = "Not a Staff Member";

case 1: szString = "Trial Admin";

case 2: szString = "Moderator";

case 3: szString = "Senior Moderator";

case 4: szString = "Lead Admin";

case 5: szString = "Head Admin";

case 6: szString = "Scripter";

case 7: szString = "Server Owner";

}

return szString;

}

 

stock GetName(playerid)

{

GetPlayerName(playerid, bName, sizeof(bName));

return bName;

}

 

 

stock SendClientMessageToAdmins(message[]) {

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

if (PlayerInfo[AdminLevel] >= 2) {

SendClientMessage(i, COLOR_WHITE, message);

}

}

}

return 1;

}

 

stock SendClientMessageToAdminChat(message[]) {

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

if (PlayerInfo[AdminLevel] >= 2) {

SendClientMessage(i, COLOR_WHITE, message);

}

}

}

return 1;

}

 

stock SendClientMessageToVIPs(message[]) {

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

if (PlayerInfo[AdminLevel] >= 2 || PlayerInfo[VIPLevel] == 1) {

SendClientMessage(i, 0xF6D888FF, message);

}

}

}

return 1;

}

 

stock SendClientMessageToNotify(message[]) {

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

if (PlayerInfo[AdminLevel] >= 2) {

if(Notify == 1) {

SendClientMessage(i, COLOR_RED, message);

}

}

}

}

return 1;

}

 

// /Report Cmd

stock ReportPlayer(playerid, reporter, reason[]) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(reporter, PlayerName, sizeof(PlayerName));

new szName[MAX_PLAYER_NAME];

GetPlayerName(playerid, szName, sizeof(szName));

format(szString, sizeof(szString), "[REPORT] %s (ID:%d) reported %s (ID:%d) for %s", PlayerName, reporter, szName, playerid, reason);

SendClientMessageToAdmins(szString);

return 1;

}

 

//anti Flood

stock IsPlayerFlooding(playerid) {

if(GetTickCount() - iPlayerChatTime[playerid] < 2000)

return 1;

return 0;

}

 

stock GetTotalPlayers() {

new tot;

for(new i = 0; i < MAX_PLAYERS; i++) {

if (IsPlayerConnected(i)) {

if(PlayerLogged == 1) {

tot++;

}

}

}

return tot;

}

public OnPlayerDisconnect(playerid, reason)

{

 

return 1;

}

 

 

public Unmute(playerid) {

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(playerid, ReturnName, sizeof(ReturnName));

format(szString, sizeof(szString), "-X Admin-: %s (ID:%d) has been automatically unmuted.", ReturnName, playerid);

SendClientMessageToAll(COLOR_RED, szString);

Muted[playerid] = 0;

KillTimer(MuteTimer[playerid]);

return 1;

}

 

public Unjail(playerid) {

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(playerid, ReturnName, sizeof(ReturnName));

format(szString, sizeof(szString), "-X Admin-: %s (ID:%d) has been automatically unjailed.", ReturnName, playerid);

SendClientMessageToAll(COLOR_RED, szString);

Jailed[playerid] = 0;

SetPlayerInterior(playerid, 0);

SetPlayerVirtualWorld(playerid, 0);

SpawnPlayer(playerid);

SetPlayerHealth(playerid, 100);

KillTimer(JailTimer[playerid]);

return 1;

}

 

public BanLog(string[]) {

new entry[128];

format(entry, sizeof(entry), "%s\n",string);

new File:hFile;

hFile = fopen("/logs/bans.log", io_append);

fwrite(hFile, entry);

fclose(hFile);

}

public warned1(playerid) {

if (warned[playerid] == 1) {

warned[playerid] = 1;

}

if (warned[playerid] == 2) {

warned[playerid] = 2;

}

if (warned[playerid] == 3) {

warned[playerid] = 3;

}

return 1;

}

 

 

public OnPlayerSpawn(playerid)

{

if(PlayerInfo[playerid][VIPLevel] == 1) {

new Text3D:label = Create3DTextLabel("VIP PLAYER", COLOR_PINK, 30.0, 40.0, 50.0, 40.0, 0);

Attach3DTextLabelToPlayer(label, playerid, 0.0, 0.0, 0.7);

}

 

return 1;

}

 

 

public OnPlayerText(playerid, text[])

{

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if(Muted[playerid] == 1) {

format(szString, sizeof(szString), "* You are currently muted.");

SendClientMessage(playerid, COLOR_RED, szString);

format(szString, sizeof(szString), "[MUTED]: %s (ID:%d) tried saying: %s", PlayerName, playerid, text);

SendClientMessageToAdmins(szString);

return 0;

}

if(IsPlayerFlooding(playerid)) {

if(PlayerInfo[playerid][AdminLevel] == 0) {

SendClientMessage(playerid, COLOR_RED, "AntiFlood: You can only send a message once every two seconds.");

return 0;

}

}

if(strlen(text) == strlen(szPlayerChatMsg[playerid]) && !strcmp(szPlayerChatMsg[playerid], text, false)) {

if(PlayerInfo[playerid][AdminLevel] == 0) {

SendClientMessage(playerid, COLOR_RED, "* Please do not repeat yourself.");

}

}

if (text[0] == '.') {

OnPlayerAdminChat(playerid, text[1]);

return 0;

}

if (text[0] == '$') {

OnPlayerVIPChat(playerid, text[1]);

return 0;

}

if(PlayerInfo[playerid][AdminLevel] >= 1 || PlayerInfo[playerid][VIPLevel] == 1) {

iPlayerChatTime[playerid] = GetTickCount();

format(szString, sizeof(szString), "(%i): %s", playerid, text);

SendPlayerMessageToAll(playerid, szString);

}

else {

iPlayerChatTime[playerid] = GetTickCount();

format(szString, sizeof(szString), "(%i): %s", playerid, text);

SendPlayerMessageToAll(playerid, szString);

}

return 0;

}

 

public OnPlayerAdminChat(playerid, message[]) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if(PlayerInfo[playerid][AdminLevel] >= 2) {

format(szString, sizeof(szString), "Admin Chat %s: %s", PlayerName, message);

SendClientMessageToAdminChat(szString);

}

else {

return 0;

}

return 1;

}

 

public OnPlayerVIPChat(playerid, message[]) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if(PlayerInfo[playerid][AdminLevel] >= 2 || PlayerInfo[playerid][VIPLevel] == 1) {

format(szString, sizeof(szString), "V.I.P Chat %s: %s", PlayerName, message);

SendClientMessageToVIPs(szString);

}

else {

return 0;

}

return 1;

}

 

public OnPlayerCommandText(playerid, cmdtext[])

{

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if(Muted[playerid] == 1 && PlayerInfo[playerid][AdminLevel] == 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: You are muted and cannot use the commands!");

format(szString, sizeof(szString), "[REPORT]: Player %s (ID:%d) typed the command: %s", PlayerName, playerid, cmdtext);

SendClientMessageToNotify(szString);

return 0;

}

public OnPlayerConnect(playerid)

{

new PlayerName[MAX_PLAYER_NAME];

PlayerLogged[playerid] = 0;

new file[256];

format(file, sizeof(file), SERVER_USER_FILE, PlayerName);

if (!dini_Exists(file)) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "~~~ You're not registered.", "Welcome To The Server, Register by creating a password.", "Register", "Cancel");

if(fexist(file)) {

new plrIP[64];

GetPlayerIp(playerid, plrIP, 64);

if (PlayerInfo[playerid][iP] == GetPlayerIp(playerid, plrIP, 64)) {

PlayerInfo[playerid][RegisterDate] = dini_Int(file, "RegisterDate");

PlayerInfo[playerid][AdminLevel] = dini_Int(file, "AdminLevel");

PlayerInfo[playerid][VIPLevel] = dini_Int(file, "VIPLevel");

PlayerInfo[playerid][Cash] = dini_Int(file, "Money");

PlayerInfo[playerid][score] = dini_Int(file, "Score");

PlayerInfo[playerid][skin] = dini_Int(file, "Skin");

PlayerInfo[playerid][Kills] = dini_Int(file, "Kills");

PlayerInfo[playerid][Deaths] = dini_Int(file, "Deaths");

PlayerInfo[playerid][iP] = dini_Int(file, "IP");

PlayerInfo[playerid][banned] = dini_Int(file, "Banned");

PlayerInfo[playerid][seconds] = dini_Int(file, "Seconds");

PlayerInfo[playerid][Minutes] = dini_Int(file, "Minutes");

PlayerInfo[playerid][Hours] = dini_Int(file, "Hours");

PlayerLogged[playerid] = 1;

GivePlayerMoney(playerid, dini_Int(file, "Money")-GetPlayerMoney(playerid));

SetPlayerScore(playerid, PlayerInfo[playerid][score]);

SendClientMessage(playerid, 0xB1FB44FF, "-X Admin- Auto-IP Loginned.");

static R, G, B;

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

if(GetPlayerColor(playerid) == COLOR_YELLOW) {

if(PlayerInfo[playerid][AdminLevel] == 0) {

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

}

}

if (PlayerInfo[playerid][banned] == 1) {

SendClientMessage(playerid, 0xFF444499, "X Admin: You are banned, do not evade.");

Kick(playerid);

}

}

else {

ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "X Admin: You're registered.", "Welcome, You are registered, Please login.", "Login", "Cancel");

}

}

return 1;

}

 

CMD:vips(playerid, params[])

{

new tot;

SendClientMessage(playerid, 0xFF444499, "~~~ VIP's Online ~~~");

 

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

if (PlayerInfo[VIPLevel] >= 1) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(i, PlayerName, sizeof(PlayerName));

tot++;

format(szString, sizeof(szString), "V.I.P. %s(%d) (Level: %d)", PlayerName, i, PlayerInfo[VIPLevel]);

SendClientMessage(playerid, 0xFF444499, szString);

}

}

}

if (tot == 0) {

SendClientMessage(playerid, 0x99FF00AA, "~~~ X Admin Found No VIPs Online ~~~");

}

else {

format(szString, sizeof(szString), "~~~ There are currently %d Vips Online. ~~~", tot);

SendClientMessage(playerid, 0x99FF00AA, szString);

}

return 1;

}

 

CMD:admins(playerid, params[])

{

new tot;

SendClientMessage(playerid, 0x99FF00AA, "***Administators Online***");

 

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

if (PlayerInfo[AdminLevel] >= 1) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(i, PlayerName, sizeof(PlayerName));

tot++;

format(szString, sizeof(szString), "* Admin %s(%d) (Level: %d) (%s)", PlayerName, i, PlayerInfo[AdminLevel], staffrank(i));

SendClientMessage(playerid, 0x99FF00AA, szString);

}

}

}

if (tot == 0) {

SendClientMessage(playerid, 0x99FF00AA, "X Admin Found No Admins Online");

}

else {

format(szString, sizeof(szString), "There are currently ~~ %d ~~ Admins online..", tot);

SendClientMessage(playerid, 0x99FF00AA, szString);

}

return 1;

}

 

CMD:credits(playerid, params[]) {

SendClientMessage(playerid, COLOR_GREEN, "- XtremeR For Admin System");

SendClientMessage(playerid, COLOR_GREEN, "- YLess For ZCMD Command");

return 1;

}

CMD:pm(playerid, params[]) {

new id, message[1024];

if(sscanf(params,"ds[1024]",id,message))return SendClientMessage(playerid, COLOR_RED, "USAGE: /pm ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(playerid != id) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

format(szString,sizeof(szString), ">> PM To %s (ID:%d): %s", ReturnName, id, message);

SendClientMessage(playerid, 0xFFCC2299, szString);

format(szString,sizeof(szString),"<< PM From %s (ID:%d): %s",PlayerName, playerid, message);

SendClientMessage(id, 0xFFFF22AA, szString);

PlayerPlaySound(id, 1085, 0.0, 0.0, 0.0);

}

else {

SendClientMessage(playerid, COLOR_RED, "ERROR: You cannot PM yourself");

}

return 1;

}

 

CMD:stats(playerid, params[]) {

new id;

if(sscanf(params,"d",id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /stats ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

new Float:ratio=floatdiv(PlayerInfo[id][Kills], PlayerInfo[id][Deaths]);

format(szString, 256, "%d %d %.2f", PlayerInfo[id][Kills], PlayerInfo[id][Deaths], ratio);

format(szString, sizeof(szString), "* Player stats for %s (ID:%d)", ReturnName, id);

SendClientMessage(playerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString), "* Admin Level > %d | VIP Level > %d | Kills > %d | Deaths > %d | (K/D): %.2f", PlayerInfo[id][AdminLevel], PlayerInfo[id][VIPLevel], PlayerInfo[id][Kills], PlayerInfo[id][Deaths], ratio);

SendClientMessage(playerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString), "* Score > %d", PlayerInfo[id][score]);

SendClientMessage(playerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString), "* Total Online Time: %i hours, %i minutes, and %i seconds", PlayerInfo[id][Hours], PlayerInfo[id][Minutes], PlayerInfo[id][seconds]);

SendClientMessage(playerid, COLOR_YELLOW, szString);

return 1;

}

 

CMD:report(playerid, params[]) {

new id;

if(sscanf(params, "is[254]", id, params)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /report ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

ReportPlayer(id, playerid, params);

format(szString, sizeof(szString), "REPORT: %s", params);

SendClientMessage(playerid, COLOR_GREEN, szString);

return 1;

}

 

CMD:god(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2 || PlayerInfo[playerid][VIPLevel] == 1) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if (God[playerid] == 0) {

SendClientMessage(playerid, COLOR_GREEN, "* You have enabled god for yourself.");

SetPlayerHealth(playerid, 100000);

SetPlayerArmour(playerid, 100000);

God[playerid] = 1;

}

else {

SendClientMessage(playerid, COLOR_GREEN, "* You have disabled god for yourself.");

SetPlayerHealth(playerid, 100);

SetPlayerArmour(playerid, 0);

God[playerid] = 0;

}

}

return 1;

}

 

CMD:acmds(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] == 1 || PlayerInfo[playerid][AdminLevel] == 2) {

SendClientMessage(playerid, 0xB1FB44FF, "~~~ X Moderator Commands ~~~");

SendClientMessage(playerid, 0xB1FB44FF, "/aka /warn /mute /unmute /jail /unjail /kick /slap /viewcmds ");

SendClientMessage(playerid, 0xB1FB44FF, "/spawn /weps /get /clearchat /richlist");

}

if (PlayerInfo[playerid][AdminLevel] == 3) {

SendClientMessage(playerid, 0xB1FB44FF, "~~~ X Moderator Commands ~~~");

SendClientMessage(playerid, 0xB1FB44FF, "/aka /warn /mute /unmute /jail /unjail /kick /slap /viewcmds ");

SendClientMessage(playerid, 0xB1FB44FF, "/givecookies /setscore /setdeaths /spec /specoff /getip /ban /unban /weps");

SendClientMessage(playerid, 0xB1FB44FF, "/explode /setallhealth /setallarmor /god /get /clearchat /richlist");

}

if (PlayerInfo[playerid][AdminLevel] == 4) {

SendClientMessage(playerid, 0xB1FB44FF, "~~~ X Admin Commands ~~~");

SendClientMessage(playerid, 0xB1FB44FF, "/aka /warn /mute /unmute /jail /unjail /kick /slap /viewcmds ");

SendClientMessage(playerid, 0xB1FB44FF, "/givecookies /setscore /setkills /setdeaths /spec /specoff /weps /richlist");

SendClientMessage(playerid, 0xB1FB44FF, "/getip /ban /unban /explode /setallhealth /setallarmor /god /banip /unbanip /get /sellallprops /clearchat");

}

if (PlayerInfo[playerid][AdminLevel] == 5) {

SendClientMessage(playerid, 0xB1FB44FF, "~~~ X Admin Commands ~~~");

SendClientMessage(playerid, 0xB1FB44FF, "/aka /warn /mute /unmute /jail /unjail /slap /kick /viewcmds ");

SendClientMessage(playerid, 0xB1FB44FF, "/givecookies /setscore /setkills /setdeaths /spec /specoff /weps /get /sellallprops");

SendClientMessage(playerid, 0xB1FB44FF, "/getip /ban /unban /explode /setallhealth /setallarmor /god /banip /unbanip /gmx /setvip /clearchat");

SendClientMessage(playerid, 0xB1FB44FF, "/richlist");

}

if (PlayerInfo[playerid][AdminLevel] == 6) {

SendClientMessage(playerid, 0xB1FB44FF, "~~~ X Scripters Commands ~~~");

SendClientMessage(playerid, 0xB1FB44FF, "/aka /warn /mute /unmute /jail /unjail /slap /kick /viewcmds ");

SendClientMessage(playerid, 0xB1FB44FF, "/givecookie /setscore /setkills /setdeaths /spec /specoff /weps");

SendClientMessage(playerid, 0xB1FB44FF, "/getip /ban /unban /explode /setallhealth /setallarmor /god /banip /unbanip /get /sellallprops /clearchat");

SendClientMessage(playerid, 0xB1FB44FF, "/gmx /setvip /setlevel /richlist");

}

if (PlayerInfo[playerid][AdminLevel] == 7) {

SendClientMessage(playerid, 0xB1FB44FF, "~~~X Owner Commands ~~~");

SendClientMessage(playerid, 0xB1FB44FF, "/aka /warn /mute /unmute /jail /unjail /slap/kick /viewcmds ");

SendClientMessage(playerid, 0xB1FB44FF, "/givecookie /setscore /setkills /setdeaths /spec /specoff /weps");

SendClientMessage(playerid, 0xB1FB44FF, "/getip /ban /unban /explode /setallhealth /setallarmor /god /banip /unbanip /sellallprops");

SendClientMessage(playerid, 0xB1FB44FF, "/gmx /setvip /setlevel /get /clearchat /richlist");

}

if (PlayerInfo[playerid][AdminLevel] == 0) {

return 0;

}

return 1;

}

 

CMD:richlist(playerid,params[]) {

if(PlayerInfo[playerid][AdminLevel] >= 2) {

new Slot1 = -1, Slot2 = -1, Slot3 = -1, Slot4 = -1;

new HighestCash = -9999;

SendClientMessage(playerid, COLOR_GREEN, "~~~ Rich List: ~~~ ");

 

for(new x=0; x if(IsPlayerConnected(x))

if(GetPlayerMoney(x) >= HighestCash) {

HighestCash = GetPlayerMoney(x);

Slot1 = x;

}

 

HighestCash = -9999;

 

for(new x=0; x if(IsPlayerConnected(x) && x != Slot1)

if(GetPlayerMoney(x) >= HighestCash) {

HighestCash = GetPlayerMoney(x);

Slot2 = x;

}

 

HighestCash = -9999;

 

for(new x=0; x if(IsPlayerConnected(x) && x != Slot1 && x != Slot2)

if(GetPlayerMoney(x) >= HighestCash) {

HighestCash = GetPlayerMoney(x);

Slot3 = x;

}

 

HighestCash = -9999;

 

for(new x=0; x if(IsPlayerConnected(x) && x != Slot1 && x != Slot2 && x != Slot3)

if(GetPlayerMoney(x) >= HighestCash) {

HighestCash = GetPlayerMoney(x);

Slot4 = x;

}

 

format(szString, sizeof(szString), "* %s (ID: %d) - $%d", RichPlayerName(Slot1), Slot1, GetPlayerMoney(Slot1));

SendClientMessage(playerid, COLOR_GREEN, szString);

 

if(Slot2 != -1) {

format(szString, sizeof(szString), "* %s (ID: %d) - $%d", RichPlayerName(Slot2), Slot2, GetPlayerMoney(Slot2));

SendClientMessage(playerid, COLOR_GREEN, szString);

}

if(Slot3 != -1) {

format(szString, sizeof(szString), "* %s (ID: %d) - $%d", RichPlayerName(Slot3), Slot3, GetPlayerMoney(Slot3));

SendClientMessage(playerid, COLOR_GREEN, szString);

}

if(Slot4 != -1) {

format(szString, sizeof(szString), "* %s (ID: %d) - $%d", RichPlayerName(Slot4), Slot4, GetPlayerMoney(Slot4));

SendClientMessage(playerid, COLOR_GREEN, szString);

}

}

else {

return 0;

}

return 1;

}

 

CMD:clearchat(playerid, params[]) {

if(PlayerInfo[playerid][AdminLevel] >= 2) {

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

SendClientMessageToAll(COLOR_WHITE, " ");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

format(szString, sizeof(szString), "AdminCmd Admin %s has cleared the chat!", PlayerName);

SendClientMessageToAll(COLOR_RED, szString);

}

else {

return 0;

}

return 1;

}

CMD:aka(playerid, params[]) {

new id;

if(PlayerInfo[playerid][AdminLevel] >= 2) {

if(sscanf(params, "d", id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /aka ");

if(!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(id > MAX_PLAYERS || id < 0 || !IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Invalid Player ID");

new ip[50], PlayerName[MAX_PLAYER_NAME];

GetPlayerIp(id, ip, 50);

GetPlayerName(id, PlayerName, sizeof(PlayerName));

szString = dini_Get("ip.history.txt", ip);

 

if(strlen(szString) < 3 || (!strcmp(PlayerName, szString, true)) )

{

format(szString, sizeof(szString),"ERROR: There are no A.K.A's for %s (IP:%s)", PlayerName, ip);

SendClientMessage(playerid, COLOR_RED, szString);

}

else {

new index;

index = strfind(szString, PlayerName, true);

new itmp1[256],itmp2[256];

strmid(itmp1, szString, 0, (index)?index-2:index);

strmid(itmp2, szString,(index)?index+strlen(PlayerName):index+strlen(PlayerName)+2,strlen(szString));

 

format(szString, sizeof(szString),"--- %s is AKA ---", PlayerName);

SendClientMessage(playerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString),"* A.K.A: %s %s (IP:%s)", itmp1, itmp2, ip);

SendClientMessage(playerid, COLOR_YELLOW, szString);

 

}

}

else {

return 0;

}

return 1;

}

 

CMD:getid(playerid, params[]) {

if(sscanf(params, "s[35]",params)) return SendClientMessage(playerid, COLOR_RED, "USAGE:/getid ");

new matches;

format(szString, sizeof(szString), "Matches:");

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(i, PlayerName, sizeof(PlayerName));

if (!strfind(PlayerName, params, true)) {

matches++;

format(szString, sizeof(szString), "%s %s(%d)", szString, PlayerName, i);

}

}

}

 

if (matches == 0) {

SendClientMessage(playerid, COLOR_RED, "ERROR: No matches found");

}

else {

SendClientMessage(playerid, COLOR_GREEN, szString);

}

return 1;

}

 

CMD:weaps(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2) {

new id, PlayerName[MAX_PLAYER_NAME], wname[64];

if(sscanf(params, "d", id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /weps ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

GetPlayerName(id, PlayerName, sizeof(PlayerName));

new wepid = GetPlayerWeapon(id);

GetWeaponName(wepid, wname, 64);

format(szString, sizeof(szString), "--- Check Weapons for: %s (ID:%d) ---", PlayerName, id);

SendClientMessage(playerid, COLOR_LIGHTBLUE, szString);

format(szString, sizeof(szString), "- Current weapon: %s (Ammo: %d)", wname, GetPlayerAmmo(id));

SendClientMessage(playerid, COLOR_LIGHTBLUE, szString);

}

else {

return 0;

}

return 1;

}

 

CMD:get(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2) {

new id;

if(sscanf(params, "d", id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /get ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new Float:x, Float:y, Float:z;

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new GPlayerName[MAX_PLAYER_NAME];

GetPlayerName(id, GPlayerName, sizeof(GPlayerName));

GetPlayerPos(playerid, x, y, z);

SetPlayerPos(id, x, y, z);

format(szString, sizeof(szString), "AdminCmd: Admin %s, Command Used 'GET' Target :%s (ID:%d)", PlayerName, GPlayerName, id);

SendClientMessageToAdmins(szString);

format(szString, sizeof(szString), "* %s (ID:%d) has teleported you to him.", PlayerName, playerid);

SendClientMessage(id, COLOR_GREEN, szString);

}

else {

return 0;

}

return 1;

}

CMD:viewcmds(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if (Notify[playerid] == 0) {

SendClientMessage(playerid, COLOR_GREEN, "X Admin: You have enabled (/viewcmds), Now you can view the commands players use.");

 

Notify[playerid] = 1;

}

else {

SendClientMessage(playerid, COLOR_GREEN, "X Admin: You have disabled (/viewcmds), Now you can't view commands players use.");

Notify[playerid] = 0;

}

}

return 1;

}

 

CMD:slap(playerid, params[]) {

new id;

if (PlayerInfo[playerid][AdminLevel] >= 1) {

if(sscanf(params, "d", id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /slap ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

new Float:health;

GetPlayerHealth(id, health);

SetPlayerHealth(id, health - 5);

GetPlayerHealth(id, health);

format(szString, sizeof(szString), "* Admin %s (ID:%d) has slapped %s (ID:%d) [Total Health Left: %0.2f]", PlayerName, playerid, ReturnName, id, health - 5);

SendClientMessageToAll(COLOR_ORANGE, szString);

GameTextForPlayer(id, "SLAP", 4000, 5);

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

PlayerPlaySound(i, 1057, 0.0, 0.0, 0.0);

}

}

}

else {

return 0;

}

return 1;

}

 

CMD:setallarmor(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3) {

new armor;

if(sscanf(params, "d", armor)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /setallarmor ");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

SetPlayerArmour(i, armor);

}

}

format(szString, sizeof(szString), "~~ Admin %s has seted Everyone's Armor to %d!!", PlayerName, armor);

SendClientMessageToAll(COLOR_ORANGE, szString);

}

else {

return 0;

}

return 1;

}

 

CMD:setallhealth(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3) {

new health;

if(sscanf(params, "d", health)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /setallhealth ");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

loop(i, MAX_PLAYERS) {

if (IsPlayerConnected(i)) {

SetPlayerHealth(i, health);

}

}

format(szString, sizeof(szString), "~~ Admin %s has seted everyone's Health to %d!!", PlayerName, health);

SendClientMessageToAll(COLOR_ORANGE, szString);

}

else {

return 0;

}

return 1;

}

 

CMD:explode(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3) {

new id;

if(sscanf(params, "i", id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /explode ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

new Float:x, Float:y, Float:z;

GetPlayerPos(id, x,y, z);

CreateExplosion(x, y, z, 4, 10.00);

format(szString, sizeof(szString), "* You exploded %s (ID:%d)", ReturnName, id);

SendClientMessage(playerid, COLOR_GREEN, szString);

format(szString, sizeof(szString), "Admin %s, Used The Command 'EXPLODED' Target: %s(%d)", PlayerName, ReturnName, id);

SendClientMessageToAdmins(szString);

}

else {

return 0;

}

return 1;

}

 

CMD:warn(playerid,params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 1) {

new id,reason[100],str[128];

if(sscanf(params,"ds",id,reason)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /warn ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

GetPlayerName(id,str,MAX_PLAYER_NAME);

if(warned[id] == 2) {

new plrIP[64];

GetPlayerIp(id, plrIP, 64);

new Year, Month, Day;

getdate(Year, Month, Day);

format(szString, sizeof(szString), "* AdminCmd: %s (ID:%d) has been kicked for: Warning: [3/3]", str, id);

SendClientMessageToAll(0xFF444499, szString);

TogglePlayerControllable(id,0);

ResetPlayerWeapons(id);

SetPlayerInterior(id,10);

SetPlayerPos(id, 366.9682,-57.3005,1001.5103);

SetPlayerCameraPos(id, 366.8701,-61.6168,1002.5078);

SetPlayerCameraLookAt(id, 366.9682,-57.3005,1001.5103);

SetPlayerFacingAngle(id, 180 );

ApplyAnimation(id,"BEACH", "ParkSit_M_loop", 4.0, 1, 0, 0, 0, 0);

SendClientMessage(id, 0xF74646FF, "You have been kicked, please write the following details down..");

format(szString, sizeof(szString), "* Admin: Admin System");

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Reason: You received 3/3 warnings.", reason);

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Date: %02d/%02d/%d", Day, Month, Year);

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Your IP: %s", plrIP);

SendClientMessage(id, 0x00B359FF, szString);

SendClientMessage(id, 0xF74646FF, "If you wish to appeal this kick, do so at the forums at www.sa-mp.com");

Kick(id);

}

else {

warned[id] ++;

format(str, sizeof(str), "AdminCmd: %s (ID:%d) has been warned. [%d/3]; Reason: %s", str, id, warned[id], reason);

SendClientMessageToAll(COLOR_RED, str);

}

}

else {

return 0;

}

return 1;

}

 

CMD:spawn(playerid,params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2) {

new id,PlayerName[MAX_PLAYER_NAME], GPlayerName[MAX_PLAYER_NAME];

if(sscanf(params,"d",id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /spawnplayer ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

SpawnPlayer(id);

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

GetPlayerName(id, GPlayerName, sizeof(GPlayerName));

format(szString, sizeof(szString), "* You have successfully respawned player: %s (ID:%d)", GPlayerName, id);

SendClientMessage(playerid, COLOR_GREEN, szString);

format(szString, sizeof(szString), " Admin %s, Command Used 'SPAWN' Taregt: %s (ID:%d)", PlayerName, GPlayerName, id);

SendClientMessageToAdmins(szString);

}

else {

return 0;

}

return 1;

}

 

CMD:mute(playerid,params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2) {

new id,time,reason[256],PlayerName[MAX_PLAYER_NAME], GPlayerName[MAX_PLAYER_NAME];

if(sscanf(params,"dds",id,time,reason)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /mute ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

if(Muted[id] == 1)return SendClientMessage(playerid,COLOR_RED,"ERROR: Player is already muted.");

GetPlayerName(id, PlayerName, sizeof(PlayerName));

GetPlayerName(playerid, GPlayerName, sizeof(GPlayerName));

format(szString, sizeof(szString), "-X Admin-: %s (ID:%d) has been muted for %d minutes; Reason: %s", PlayerName, id, time, reason);

SendClientMessageToAll(COLOR_RED, szString);

format(szString, sizeof(szString), "Admin %s, Command Used 'MUTE' Taregt: %s (ID:%d)", GPlayerName, PlayerName, id);

SendClientMessageToAdmins(szString);

 

 

Muted[id] = 1;

MuteTimer[id] = SetTimerEx("Unmute",time*60000, false, "i", id);

}

else {

return 0;

}

return 1;

}

 

CMD:unmute(playerid,params[]) {

new id;

if (PlayerInfo[playerid][AdminLevel] >= 2) {

if(sscanf(params,"d",id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /unmute ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(Muted[id] == 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is already muted.");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

format(szString, sizeof(szString), "-X Admin-: %s (ID:%d) has been automatically unmuted.", ReturnName, id);

SendClientMessageToAll(COLOR_RED, szString);

Muted[id] = 0;

KillTimer(MuteTimer[id]);

}

else {

return 0;

}

return 1;

}

 

CMD:jail(playerid,params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2) {

new id,time,reason[100],PlayerName[MAX_PLAYER_NAME],GPlayerName[MAX_PLAYER_NAME];

if(sscanf(params,"dds",id,time,reason)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /jail ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He is a greater level than your level.");

if(Jailed[id] == 1)return SendClientMessage(playerid,COLOR_RED,"ERROR: Player is already jailed.");

GetPlayerName(id, PlayerName, sizeof(PlayerName));

GetPlayerName(playerid, GPlayerName, sizeof(GPlayerName));

format(szString, sizeof(szString), "-X Admin-: %s (ID:%d) has been jailed for %d minutes; Reason: %s", PlayerName, id, time, reason);

SendClientMessageToAll(COLOR_RED, szString);

format(szString, sizeof(szString), "Admin %s, Command Used 'JAIL' Taregt: %s (ID:%d)", GPlayerName, PlayerName, id);

SendClientMessageToAdmins(szString);

Jailed[id] = 1;

SetPlayerInterior(id, 3);

SetPlayerVirtualWorld(id, 10);

SetPlayerFacingAngle(id, 360.0);

SetPlayerPos(id, 197.5662, 175.4800, 1004.0);

SetPlayerHealth(id, 9999999999.0);

ResetPlayerWeapons(id);

JailTimer[id] = SetTimerEx("Unjail",time*60000, false, "i", id);

}

else {

return 0;

}

return 1;

}

 

CMD:unjail(playerid,params[]) {

new id;

if (PlayerInfo[playerid][AdminLevel] >= 2) {

if(sscanf(params,"d",id)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /unjail ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(Jailed[id] == 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not jailed.");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

Jailed[id] = 0;

SetPlayerInterior(id, 0);

SetPlayerVirtualWorld(id, 0);

SpawnPlayer(id);

SetPlayerHealth(id, 100);

KillTimer(JailTimer[id]);

}

else {

return 0;

}

return 1;

}

 

CMD:announce(playerid,params[])

{

if(sscanf(params, "s[26]",params)) return SendClientMessage(playerid, COLOR_RED, "USAGE /announce ");

GameTextForAll(params, 4000, 5);

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

format(szString, sizeof(szString), "Admin %s, Command Used 'ANNOUNCE'.", PlayerName);

SendClientMessageToAdmins(szString);

return 1;

}

 

CMD:kick(playerid,params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 2) {

new reason[100], id;

if(sscanf(params,"ds",id,reason)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /kick ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(id, PlayerName, sizeof(PlayerName));

new GPlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, GPlayerName, sizeof(GPlayerName));

new plrIP[64];

GetPlayerIp(id, plrIP, 64);

new Year, Month, Day;

getdate(Year, Month, Day);

format(szString, sizeof(szString), "* -X Admin-: %s (ID:%d) has been kicked for: Reason: %s", PlayerName, id, reason);

SendClientMessageToAll(0xFF444499, szString);

format(szString, sizeof(szString), "Admin %s, Command Used 'KICK' Taregt: %s (ID:%d)", GPlayerName, PlayerName, id);

SendClientMessageToAdmins(szString);

ApplyAnimation(id,"BEACH", "ParkSit_M_loop", 4.0, 1, 0, 0, 0, 0);

SendClientMessage(id, 0xF74646FF, "You have been kicked, please write the following details down..");

format(szString, sizeof(szString), "* Admin: %s (ID:%d)", GPlayerName, playerid);

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Reason: %s", reason);

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Date: %02d/%02d/%d", Day, Month, Year);

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Your IP: %s", plrIP);

SendClientMessage(id, 0x00B359FF, szString);

SendClientMessage(id, 0xF74646FF, "If you wish to appeal this kick, do so at the forums at Unlimited-stunting.com");

Kick(id);

}

else {

return 0;

}

return 1;

}

CMD:spec(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid)) {

new Float:x, Float:y, Float:z;

GetPlayerPos(playerid, x, y, z);

new id;

if(sscanf(params, "i", id)) return SendClientMessage(playerid, COLOR_RED,"USAGE: /spec ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if (Spec[id] == 1) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is currently in spec");

TogglePlayerSpectating(playerid, 1);

if (IsPlayerInAnyVehicle(id)) {

PlayerSpectateVehicle(playerid, GetPlayerVehicleID(id));

}

else {

PlayerSpectatePlayer(playerid, id);

}

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new GPlayerName[MAX_PLAYER_NAME];

GetPlayerName(id, GPlayerName, sizeof(GPlayerName));

format(szString, sizeof(szString), "~w~%s (ID:%d)", GPlayerName, id);

GameTextForPlayer(playerid, szString, 4, 7000);

format(szString, sizeof(szString), "* You are now specing %s (ID:%d)", GPlayerName, id);

SendClientMessage(playerid, COLOR_GREEN, szString);

format(szString, sizeof(szString), "Admin %s, Command Used 'SPEC' Taregt: %s (ID:%d)", PlayerName, GPlayerName, id);

SendClientMessageToAdmins(szString);

Spec[playerid] = 1;

}

else {

return 0;

}

return 1;

}

 

CMD:specoff(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 1 || IsPlayerAdmin(playerid)) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if (PlayerInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid)) {

if (Spec[playerid] == 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: You are not specing anyone.");

TogglePlayerSpectating(playerid, 0);

SpawnPlayer(playerid);

Spec[playerid]= 0;

SendClientMessage(playerid, COLOR_GREEN, "* Exited spec.");

}

}

else {

return 0;

}

return 1;

}

 

CMD:ip(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid)) {

new id;

if(sscanf(params, "i",id)) return SendClientMessage(playerid, COLOR_RED,"USAGE: /getip ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

if (IsPlayerConnected(id)) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new GPlayerName[MAX_PLAYER_NAME];

GetPlayerName(id, GPlayerName, sizeof(GPlayerName));

new pIP[64];

GetPlayerIp(id, pIP, 64);

format(szString, sizeof(szString), "* %s (ID:%d)'s IP: %s", GPlayerName, id, pIP);

SendClientMessage(playerid, COLOR_GREEN, szString);

format(szString, sizeof(szString), "Admin %s, Command Used 'IP' Target: %s (ID:%d)'s IP (IP: %s).", PlayerName, GPlayerName, id, pIP);

SendClientMessageToAdmins(szString);

}

}

else {

return 0;

}

return 1;

}

 

CMD:givecookie(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid)) {

new id, amount;

if (sscanf(params, "dd", id, amount)) return SendClientMessage(playerid, 0xFF444499, "USAGE: /givecookie ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

format(szString, sizeof(szString), "You gave %s (ID:%d) %d cookies.", ReturnName, id, amount);

SendClientMessage(playerid, 0xB1FB44FF, szString);

format(szString, sizeof(szString), "Admin %s (ID:%d) gave you %d cookies.", PlayerName, playerid, amount);

SendClientMessage(id, 0xB1FB44FF, szString);

PlayerInfo[id][Cookies] = PlayerInfo[id][Cookies] + amount;

}

else {

return 0;

}

return 1;

}

 

CMD:setscore(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid)) {

new id, amount;

if (sscanf(params, "dd", id, amount)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /setplayerscore ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

format(szString, sizeof(szString), "Admin %s (ID:%d) gave you the Score: %d.", PlayerName, playerid, amount);

SendClientMessage(id, 0xB1FB44FF, szString);

format(szString, sizeof(szString), "You gave %s (ID:%d) the Score: %d.", ReturnName, id, amount);

SendClientMessage(playerid, 0xB1FB44FF, szString);

format(szString, sizeof(szString), "Admin %s, Command Used 'SETSCORE' Taregt: %s (ID:%d).", PlayerName, ReturnName, id);

SendClientMessageToAdmins(szString);

 

}

else {

return 0;

}

return 1;

}

 

CMD:setkills(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid)) {

new id, amount;

if (sscanf(params, "dd", id, amount)) return SendClientMessage(playerid, 0xFF444499, "USAGE: /setplayerkills ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

format(szString, sizeof(szString), "Admin %s (ID:%d) set your kills to: %d.", PlayerName, playerid, amount);

SendClientMessage(id, 0xB1FB44FF, szString);

format(szString, sizeof(szString), "You set %s (ID:%d) kills to: %d.", ReturnName, id, amount);

SendClientMessage(playerid, 0xB1FB44FF, szString);

format(szString, sizeof(szString), " Admin %s, Used The Command: 'SETKILLS' Target: %s (ID:%d).", PlayerName, ReturnName, id);

SendClientMessageToAdmins(szString);

 

PlayerInfo[id][Kills] = amount;

}

else {

return 0;

}

return 1;

}

 

CMD:setdeaths(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3 || IsPlayerAdmin(playerid)) {

new id, amount;

if (sscanf(params, "dd", id, amount)) return SendClientMessage(playerid, 0xFF444499, "USAGE: /setplayerdeaths ");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

new ReturnName[MAX_PLAYER_NAME];

GetPlayerName(id, ReturnName, sizeof(ReturnName));

format(szString, sizeof(szString), "Admin %s (ID:%d) set your deaths to: %d.", PlayerName, playerid, amount);

SendClientMessage(id, 0xB1FB44FF, szString);

format(szString, sizeof(szString), "You set %s (ID:%d) deaths to: %d.", ReturnName, id, amount);

SendClientMessage(playerid, 0xB1FB44FF, szString);

format(szString, sizeof(szString), " Admin %s, Used The Command: 'SETDEATHS' Target: %s (ID:%d).", PlayerName, ReturnName, id);

SendClientMessageToAdmins(szString);

PlayerInfo[id][Deaths] = amount;

}

else {

return 0;

}

return 1;

}

 

CMD:ban(playerid,params[]) {

new reason[100], id;

if (PlayerInfo[playerid][AdminLevel] >= 3) {

if(sscanf(params,"ds",id,reason)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /ban ");

if(PlayerInfo[id][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

if (!IsPlayerConnected(id)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected.");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(id, PlayerName, sizeof(PlayerName));

new GPlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, GPlayerName, sizeof(GPlayerName));

new plrIP[64];

GetPlayerIp(id, plrIP, 64);

new Year, Month, Day;

getdate(Year, Month, Day);

format(szString, sizeof(szString), "* AdminCmd: %s (ID:%d) has been banned for: Reason: %s", PlayerName, id, reason);

SendClientMessageToAll(0xFF444499, szString);

format(szString, sizeof(szString), "Admin %s, Used The Command: 'BAN' Target: %s", GPlayerName, PlayerName);

SendClientMessageToAdmins(szString);

format(szString, sizeof(szString), "* You Have Been Banned By Admin: %s (ID:%d)", GPlayerName, playerid);

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Reason: %s", reason);

SendClientMessage(id, 0x00B359FF, szString);

format(szString, sizeof(szString), "* Date: %02d/%02d/%d", Day, Month, Year);

SendClientMessage(id, 0x00B359FF, szString);

SendClientMessage(id, 0xF74646FF, "If you wish to appeal this ban, Then Appeal At: codsamp.co.cc");

format(szString, sizeof(szString), "[bAN] | Admin: %s | Name: %s | Reason: %s | Date: %02d/%02d/%d | IP: %s ", GPlayerName, PlayerName, reason, Day, Month, Year, plrIP);

BanLog(szString);

PlayerInfo[id][banned] = 1;

Kick(id);

}

else {

return 0;

}

return 1;

}

 

CMD:unban(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 3) {

new PlayerFile[50];

if(sscanf(params, "u[50]",PlayerFile)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /unban ");

format(PlayerFile, sizeof(PlayerFile), "Xtreme/%s.ini", params);

if (!dini_Exists(PlayerFile)) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not registered.");

if (dini_Int(PlayerFile, "Banned") == 0) return SendClientMessage(playerid, COLOR_RED, "ERROR: Account is not marked as banned, unable to proceed with unbanning.");

dini_IntSet(PlayerFile, "Banned", 0);

format(szString, sizeof(szString), "AdminCmd:If You Know '%s' Tell Him That He/She Has been unbanned By An Admin..", params);

SendClientMessage(playerid, COLOR_GREEN, szString);

format(szString, sizeof(szString), "Admin %s, (ID:%d) has unbanned Account: %s", params);

SendClientMessageToAdmins(szString);

}

else {

return 0;

}

return 1;

}

 

CMD:banip(playerid,params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 4) {

new PlayerName[MAX_PLAYER_NAME], ip[15];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if(sscanf(params,"s",ip)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /banip ");

format(szString, sizeof(szString), "banip %s", ip);

SendRconCommand(szString);

format(szString, sizeof(szString), "* You have successfully IP Banned: %s", ip);

SendClientMessage(playerid, COLOR_GREEN, szString);

format(szString, sizeof(szString), "reloadbans");

SendRconCommand(szString);

format(szString, sizeof(szString), "Admin %s, Used The Command: 'BANIP' Target ip: %s", PlayerName, ip);

SendClientMessageToAdmins(szString);

}

else {

return 0;

}

return 1;

}

 

CMD:unbanip(playerid,params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 4) {

new PlayerName[MAX_PLAYER_NAME], ip[15];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

if(sscanf(params,"s",ip)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /unbanip ");

format(szString, sizeof(szString), "unbanip %s", ip);

SendRconCommand(szString);

format(szString, sizeof(szString), "* You have successfully unbanned the IP: %s", ip);

SendClientMessage(playerid, COLOR_GREEN, szString);

format(szString, sizeof(szString), "reloadbans");

SendRconCommand(szString);

format(szString, sizeof(szString), "Admin %s, Used The Command: 'UNBANIP' Target ip: %s", PlayerName, ip);

SendClientMessageToAdmins(szString);

}

else {

return 0;

}

return 1;

}

CMD:setvip(playerid, params[]) {

new getplayerid;

if (PlayerInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid)) {

new vipstatus;

if(sscanf(params, "dd", getplayerid, vipstatus)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /setvip <0-1>");

if(getplayerid == INVALID_PLAYER_ID) SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected!");

if(PlayerInfo[getplayerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: This player is a admin!");

if (vipstatus >= 0 && vipstatus <= 1) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(getplayerid, PlayerName, sizeof(PlayerName));

new szName[MAX_PLAYER_NAME];

GetPlayerName(playerid, szName, sizeof(szName));

PlayerInfo[getplayerid][VIPLevel] = vipstatus;

format(szString, sizeof(szString), "Your VIP Status has been changed to: %d!", vipstatus);

SendClientMessage(getplayerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString), "You have set %s (ID:%d) VIP Status to: %d!", PlayerName, getplayerid, vipstatus);

SendClientMessage(playerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString), "Admin %s, Used the command 'SETVIP' Target: %s (ID:%d)!", szName, PlayerName, getplayerid);

SendClientMessageToAdmins(szString);

}

else {

SendClientMessage(playerid, COLOR_RED, "ERROR: VIP status must be at least 0-1!");

}

}

else {

return 0;

}

return 1;

}

 

CMD:gmx(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 5 || IsPlayerAdmin(playerid)) {

SendRconCommand("gmx");

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

format(szString, sizeof(szString), "AdminCmd: Server Restarting.. (Restart by Admin %s (ID:%d)", PlayerName, playerid);

SendClientMessageToAll(0xFF444499, szString);

}

else {

return 0;

}

return 1;

}

 

CMD:setlevel(playerid, params[]) {

if (PlayerInfo[playerid][AdminLevel] >= 6 || IsPlayerAdmin(playerid)) {

new setadmin, getplayerid;

if(sscanf(params, "dd", getplayerid, setadmin)) return SendClientMessage(playerid, COLOR_RED, "USAGE: /setlevel <0-5>");

if(getplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_RED, "ERROR: Player is not connected!");

if(PlayerInfo[getplayerid][VIPLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: This player is a VIP, Demote his/her VIP Level.");

if(PlayerInfo[getplayerid][AdminLevel] > PlayerInfo[playerid][AdminLevel])return SendClientMessage(playerid,COLOR_RED,"ERROR: He/She is a greater level than your level.");

if (setadmin >= 0 && setadmin <= 6) {

new PlayerName[MAX_PLAYER_NAME];

GetPlayerName(getplayerid, PlayerName, sizeof(PlayerName));

new szName[MAX_PLAYER_NAME];

GetPlayerName(playerid, szName, sizeof(szName));

format(szString, sizeof(szString), "* Your Admin Level has been changed to: %d!", setadmin);

SendClientMessage(getplayerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString), "* You have set %s (ID:%d) Admin Level to: %d!", PlayerName, getplayerid, setadmin);

SendClientMessage(playerid, COLOR_YELLOW, szString);

format(szString, sizeof(szString), "Admin %s, Used The Command 'SETLEVEL' Target: %s (ID:%d)!", szName, PlayerName, getplayerid);

SendClientMessageToAdmins(szString);

PlayerInfo[getplayerid][AdminLevel] = setadmin;

}

else {

SendClientMessage(playerid, COLOR_RED, "ERROR: Admin Level must be at least 0-6");

}

}

else {

return 0;

}

return 1;

}

public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])

{

new plrIP[64];

if (dialogid == 1) {

new cMenuString[408];

cMenuString = "";

SetPlayerScore(playerid, PlayerInfo[playerid][score]);

new PlayerName[MAX_PLAYER_NAME], file[256];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

format(file, sizeof(file), SERVER_USER_FILE, PlayerName);

if(!response) return Kick(playerid);

if (!strlen(inputtext)) return

ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "You're not registered.", "Welcome, Register by inputting a password below.", "Register", "Cancel");

dini_Create(file);

new Year, Month, Day;

dini_IntSet(file, "Password", udb_hash(inputtext));

dini_IntSet(file, "RegisterDate",PlayerInfo[playerid][RegisterDate] = getdate(Day, Month, Year));

dini_IntSet(file, "AdminLevel",PlayerInfo[playerid][AdminLevel] = 0);

dini_IntSet(file, "VIPLevel",PlayerInfo[playerid][VIPLevel] = 0);

dini_IntSet(file, "Money",PlayerInfo[playerid][Cash] = 500);

dini_IntSet(file, "Score",PlayerInfo[playerid][score] = 0);

dini_IntSet(file, "Skin",PlayerInfo[playerid][skin] = 0);

dini_IntSet(file, "Kills",PlayerInfo[playerid][Kills] = 0);

dini_IntSet(file, "Deaths",PlayerInfo[playerid][Deaths] = 0);

dini_IntSet(file, "IP",PlayerInfo[playerid][iP] = GetPlayerIp(playerid, plrIP, 64));

dini_IntSet(file, "Banned",PlayerInfo[playerid][banned] = 0);

dini_IntSet(file, "Seconds",PlayerInfo[playerid][seconds] = 0);

dini_IntSet(file, "Minutes",PlayerInfo[playerid][Minutes] = 0);

dini_IntSet(file, "Hours",PlayerInfo[playerid][Hours] = 0);

PlayerLogged[playerid] = 1;

SetPlayerScore(playerid, PlayerInfo[playerid][score]);

 

PlayerLogged[playerid] = 1;

new qwe[256];

format(qwe, 255, "acc.ini");

if(!dini_Exists(qwe) ) {

dini_Create(qwe);

dini_IntSet(qwe, "accounts", 0);

}

new noa;

noa = dini_Int(qwe,"accounts");

dini_IntSet(qwe, "accounts", noa+1);

 

format(szString, 128, "-X Admin- You succesfully registered the nickname %s with password %s", PlayerName, inputtext);

SendClientMessage(playerid, 0x40FFFFFF, szString);

SendClientMessage(playerid, 0x40FFFFFF, "-X Admin- /Admins For Online Admins, /VIPs For Online Vips");

static R, G, B;

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

if(GetPlayerColor(playerid) == COLOR_YELLOW) {

if(PlayerInfo[playerid][AdminLevel] == 0) {

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

}

}

}

if (dialogid == 2) {

new PlayerName[MAX_PLAYER_NAME], file[256];

GetPlayerName(playerid, PlayerName, sizeof(PlayerName));

format(file, sizeof(file), SERVER_USER_FILE, PlayerName);

if(!response) return Kick(playerid);

if (!strlen(inputtext)) {

if (PlayerInfo[playerid][iP] == GetPlayerIp(playerid, plrIP, 64)) {

PlayerLogged[playerid] = 1;

PlayerInfo[playerid][RegisterDate] = dini_Int(file, "RegisterDate");

PlayerInfo[playerid][AdminLevel] = dini_Int(file, "AdminLevel");

PlayerInfo[playerid][VIPLevel] = dini_Int(file, "VIPLevel");

PlayerInfo[playerid][Cash] = dini_Int(file, "Money");

PlayerInfo[playerid][score] = dini_Int(file, "Score");

PlayerInfo[playerid][skin] = dini_Int(file, "Skin");

PlayerInfo[playerid][Kills] = dini_Int(file, "Kills");

PlayerInfo[playerid][Deaths] = dini_Int(file, "Deaths");

PlayerInfo[playerid][iP] = dini_Int(file, "IP");

PlayerInfo[playerid][banned] = dini_Int(file, "Banned");

PlayerInfo[playerid][seconds] = dini_Int(file, "Seconds");

PlayerInfo[playerid][Minutes] = dini_Int(file, "Minutes");

PlayerInfo[playerid][Hours] = dini_Int(file, "Hours");

SetPlayerScore(playerid, PlayerInfo[playerid][score]);

GivePlayerMoney(playerid, dini_Int(file, "Money")-GetPlayerMoney(playerid));

PlayerLogged[playerid] = 1;

SendClientMessage(playerid, 0x40FFFFFF, "-X Admin- Auto-IP Loginned.");

static R, G, B;

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

if(GetPlayerColor(playerid) == COLOR_YELLOW) {

if(PlayerInfo[playerid][AdminLevel] == 0) {

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

}

}

if (PlayerInfo[playerid][banned] == 1) {

SendClientMessage(playerid, 0xFF444499, "-X Admin-: You are banned, do not evade, you making ur chances to get unbaned lower by ban evading!");

Kick(playerid);

}

}

else {

ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "You're registered.", "Welcome, You are registered, Please login.", "Login", "Cancel");

}

}

new tmp;

tmp = dini_Int(file, "Password");

if(udb_hash(inputtext) != tmp) {

SendClientMessage(playerid, 0xFF444499, "Incorrect Password.");

wrongpass[playerid] ++;

ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "You're registered.", "Welcome, You are registered, Please login.", "Login", "Cancel");

if(wrongpass[playerid] == 3) {

format(szString, sizeof(szString), "* Your name has been changed to: %s_XtremeR for too many invalid passwords.", PlayerName);

SendClientMessage(playerid, COLOR_RED, szString);

format(szString, sizeof(szString), "%s_XtremeR", PlayerName);

SetPlayerName(playerid, szString);

wrongpass[playerid] = 0;

SendClientMessage(playerid, COLOR_GREEN, "*** Please make a new name when you leave, because you are on a temporary account for too many invalid logins. ***");

ShowPlayerDialog(playerid, 100, DIALOG_STYLE_MSGBOX, "New Name", "Since you have too many incorrect logins, your name has been changed.\nThis account will not be saved onto the server.", "Okay", "Cancel");

}

}

else

{

PlayerLogged[playerid] = 1;

PlayerInfo[playerid][RegisterDate] = dini_Int(file, "RegisterDate");

PlayerInfo[playerid][AdminLevel] = dini_Int(file, "AdminLevel");

PlayerInfo[playerid][VIPLevel] = dini_Int(file, "VIPLevel");

PlayerInfo[playerid][Cash] = dini_Int(file, "Money");

PlayerInfo[playerid][score] = dini_Int(file, "Score");

PlayerInfo[playerid][skin] = dini_Int(file, "Skin");

PlayerInfo[playerid][Kills] = dini_Int(file, "Kills");

PlayerInfo[playerid][Deaths] = dini_Int(file, "Deaths");

PlayerInfo[playerid][iP] = dini_Int(file, "IP");

PlayerInfo[playerid][banned] = dini_Int(file, "Banned");

PlayerInfo[playerid][seconds] = dini_Int(file, "Seconds");

PlayerInfo[playerid][Minutes] = dini_Int(file, "Minutes");

PlayerInfo[playerid][Hours] = dini_Int(file, "Hours");

SetPlayerScore(playerid, PlayerInfo[playerid][score]);

GivePlayerMoney(playerid, dini_Int(file, "Money")-GetPlayerMoney(playerid));

PlayerLogged[playerid] = 1;

 

SendClientMessage(playerid, 0x40FFFFFF, "-X Admin- Successfully logged in!");

PlayerPlaySound(playerid,1057,0.0,0.0,0.0);

static R, G, B;

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

if(GetPlayerColor(playerid) == COLOR_YELLOW) {

if(PlayerInfo[playerid][AdminLevel] == 0) {

SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));

}

}

if (PlayerInfo[playerid][banned] == 1) {

SendClientMessage(playerid, 0xFF444499, "-X Admin-: You are banned, do not evade.");

Kick(playerid);

}

}

}

return 0;

}

 

 

 

 

ked to pridam na server tak sa mi zobrazí Register

regnem sa je to ok odpojim sa a zas pridem na server a zas píta register ked som zaregistovaný prečo??

 

Prosim HELP

  • Líbí se mi to! (+1) 1
Link to comment
Share on other sites

12 odpovědí na tuto otázku

Recommended Posts

  • 0

#define PATH "/Accounts/%s.ini"

 

přidej a ve scriptfiles udělej složku Accounts

Hovadina ! Ma si ve scriptfiles vytvořit složku Xtreme

Link to comment
Share on other sites

  • 0

Máš strašnej bordel v počtu otevírajících se a zavírajících se závorek v OnPlayerConnect a ke všemu porovnáváš,

jestli je v souboru PlayerName, ale už tam nemáš zjištění jaké to jeho jméno vlastně je. (GetPlayerName)

 

Nezkoušel jsem to, ale podle mě by to mělo jet. A dělej si pořádek pomocí tabování...

public OnPlayerConnect(playerid)
{
new PlayerName[MAX_PLAYER_NAME];
PlayerLogged[playerid] = 0;
new file[256];
GetPlayerName(playerid, PlayerName, sizeof(PlayerName));
format(file, sizeof(file), SERVER_USER_FILE, PlayerName);
if (!dini_Exists(file)) return ShowPlayerDialog(playerid, 1, DIALOG_STYLE_INPUT, "~~~ You're not registered.", "Welcome To The Server, Register by creating a password.", "Register", "Cancel");
if(fexist(file))
{
new plrIP[64];
GetPlayerIp(playerid, plrIP, 64);
if (PlayerInfo[playerid][iP] == GetPlayerIp(playerid, plrIP, 64))
{
PlayerInfo[playerid][RegisterDate] = dini_Int(file, "RegisterDate");
PlayerInfo[playerid][AdminLevel] = dini_Int(file, "AdminLevel");
PlayerInfo[playerid][VIPLevel] = dini_Int(file, "VIPLevel");
PlayerInfo[playerid][Cash] = dini_Int(file, "Money");
PlayerInfo[playerid][score] = dini_Int(file, "Score");
PlayerInfo[playerid][skin] = dini_Int(file, "Skin");
PlayerInfo[playerid][Kills] = dini_Int(file, "Kills");
PlayerInfo[playerid][Deaths] = dini_Int(file, "Deaths");
PlayerInfo[playerid][iP] = dini_Int(file, "IP");
PlayerInfo[playerid][banned] = dini_Int(file, "Banned");
PlayerInfo[playerid][seconds] = dini_Int(file, "Seconds");
PlayerInfo[playerid][Minutes] = dini_Int(file, "Minutes");
PlayerInfo[playerid][Hours] = dini_Int(file, "Hours");
PlayerLogged[playerid] = 1;
GivePlayerMoney(playerid, dini_Int(file, "Money")-GetPlayerMoney(playerid));
SetPlayerScore(playerid, PlayerInfo[playerid][score]);
SendClientMessage(playerid, 0xB1FB44FF, "-X Admin- Auto-IP Loginned.");
static R, G, B;
SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));
if(GetPlayerColor(playerid) == -1)
{
if(PlayerInfo[playerid][AdminLevel] == 0)
{
SetPlayerColor(playerid, random((R * 16777216)) + random((G * 65536)) + random((B*256)));
}
}
if (PlayerInfo[playerid][banned] == 1)
{
SendClientMessage(playerid, 0xFF444499, "X Admin: You are banned, do not evade.");
Kick(playerid);
}
}
ShowPlayerDialog(playerid, 2, DIALOG_STYLE_INPUT, "X Admin: You're registered.", "Welcome, You are registered, Please login.", "Login", "Cancel");
}
return 1;
}

  • Líbí se mi to! (+1) 2
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...