Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #define FILTERSCRIPT
- //========Includes=======//
- #include <a_samp>
- #include <zcmd>
- #include <a_mysql>
- new Muted[MAX_PLAYERS];
- new ip[MAX_PLAYERS];
- new Text3D:label[MAX_PLAYERS];
- enum playerinfo
- {
- Kicks,
- level,
- pWarnings,
- PlayerMuted,
- logged,
- Deaths,
- vip,
- PlayerFrozen,
- money,
- message
- };
- new pname[MAX_PLAYER_NAME];
- new playerdata[MAX_PLAYERS][playerinfo];
- new pSpectating[MAX_PLAYERS][MAX_PLAYERS];
- native WP_Hash(buffer[], len, const str[]);
- //=========Defines========//
- #define SQL_HOST "localhost"
- #define SQL_USER "zack"
- #define SQL_PASS ""
- #define SQL_DB "samp-test"
- #if defined FILTERSCRIPT
- #define red 0xFF0000AA
- #define yellow 0xFFFF00AA
- #define green 0x33AA33AA
- #define blue 0x375FFFFF
- #define white 0xFFFFFFAA
- #define COLOR_GREY 0xAFAFAFAA
- #define COLOR_GREEN 0x33AA33AA
- #define COLOR_RED 0xAA3333AA
- #define COLOR_YELLOW 0xFFFF00AA
- #define COLOR_WHITE 0xFFFFFFFF
- //===========Login and Register Info===========//
- public OnFilterScriptInit()
- {
- print("\n***************************************");
- print(" Admin system by Zack ");
- print("***************************************\n");
- SetTimer("ammo",60000,true);
- SetTimer("score",60000,true);
- SetTimer("ping", 20000,true);
- printf("Host: %s", SQL_HOST);
- printf("PW: %s", SQL_PASS);
- mysql_connect(SQL_HOST, SQL_USER, SQL_DB, SQL_PASS);
- if(mysql_ping() == 1)
- {
- mysql_debug(1);
- printf("[MYSQL]: Connection to `%s` succesful!", SQL_DB);
- }
- else
- {
- printf("[MYSQL]: [ERROR]: Connection to `%s` failed!", SQL_DB);
- }
- return 1;
- }
- public OnFilterScriptExit()
- {
- mysql_close();
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- new ss[412];
- mysql_query("SELECT `Username` FROM `names` WHERE `Username` = '%s'", GetPlayerName(playerid, pname, sizeof(pname)));
- mysql_store_result();
- if(mysql_num_rows())
- {
- format(ss, sizeof(ss), "%s is registered.\nPlease Login.", pname);
- ShowPlayerDialog(playerid,2,DIALOG_STYLE_INPUT,"Login to play!",ss,"Login","Disconnect");
- }
- else
- {
- ShowPlayerDialog(playerid,5,DIALOG_STYLE_MSGBOX,"Rules","1) No ramming \n2) NO HACKING \n3) No DM'ing \n4) No reporting in chat \n5) Dont let anyone else use your account","Ok","Cancel");
- }
- mysql_free_result();
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- pSpectating[playerid][i]=0;
- }
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- GetPlayerName(playerid, pname, sizeof(pname));
- label[playerid] = Create3DTextLabel(pname,0x008080FF,30.0,20.0,50.0,40.0,0);
- Attach3DTextLabelToPlayer(label[playerid], playerid, 0.0, 0.0, 0.7);
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- return 1;
- }
- forward SendClientMessageToAdmins(color, string[]);
- public SendClientMessageToAdmins(color,string[])
- {
- printf("%s", string);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if (playerdata[i][level] > 0)
- {
- SendClientMessage(i, color, string);
- }
- }
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid == 1)
- {
- new HashedPW[145], stringS[400];
- WP_Hash(HashedPW, sizeof (HashedPW), inputtext);
- format(stringS,sizeof(stringS),"INSERT INTO `names` (Username, Password, IP, AdminLevel, Score, Money, Kills, Deaths) VALUES ('%s', '%s', '%s', '0', '0', '3000', '0', '0')", GetPlayerName(playerid, pname, sizeof(pname)), inputtext, GetPlayerIp(playerid, ip, sizeof(ip)));
- mysql_query(stringS);
- TogglePlayerControllable(playerid, 0);
- new string[128];
- format(string, sizeof(string), "You succesfully registered the nickname %s with password %s", pname, inputtext);
- SendClientMessage(playerid, green, string);
- playerdata[playerid][logged] = 1;
- SendClientMessage(playerid, green, "You have been automatically logged in!");
- PlayerPlaySound(playerid,1057,0.0,0.0,0.0);
- TogglePlayerControllable(playerid, 1);
- return 1;
- }
- if(dialogid ==2)
- {
- TogglePlayerControllable(playerid, 0);
- if(response == 1)
- {
- LoginPlayer(playerid);
- }
- if(response == 0)
- {
- SendClientMessage(playerid, red, "You must log in or register to use this server");
- Kick(playerid);
- }
- return 1;
- }
- if(dialogid == 3)
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- SendClientMessage(playerid, 0xFFFFFFAA, "You have switched to a army skin.");
- SetPlayerSkin(playerid, 287);
- }
- case 1:
- {
- SendClientMessage(playerid, 0xFFFFFFAA, "You have switched to a firefighter skin.");
- SetPlayerSkin(playerid, 277);
- }
- case 2:
- {
- SendClientMessage(playerid, 0xFFFFFFAA, "You have switched to a paramedic skin.");
- SetPlayerSkin(playerid, 276);
- }
- }
- }
- return 1;
- }
- if(dialogid == 5)
- {
- if(response)
- {
- new s[128];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(s, sizeof(s),"%s is not registered.\nPlease enter a password below.", pname);
- ShowPlayerDialog(playerid,1,DIALOG_STYLE_INPUT,"Register to play!",s,"Register","Disconnect");
- }
- else
- {
- Kick(playerid);
- }
- return 1;
- }
- if(dialogid == 10)
- {
- if(response)
- {
- GetPlayerName(playerid, pname, sizeof(pname));
- }
- return 1;
- }
- if(dialogid == 12)
- {
- if(IsPlayerConnected(playerid))
- {
- if(response)
- {
- switch(listitem)
- {
- case 0:
- {
- new pnaMe[MAX_PLAYER_NAME], s[102];
- GetPlayerName(playerid, pnaMe, sizeof(pnaMe));
- format(s,sizeof(s),"Name:%s \nMoney:%i \nPing:%i \nSkin:%i",pnaMe, GetPlayerMoney(playerid),GetPlayerPing(playerid), GetPlayerSkin(playerid));
- ShowPlayerDialog(playerid, 11, DIALOG_STYLE_MSGBOX,"Stats!", s, "Ok", "Cancel");
- }
- case 1:
- {
- ShowPlayerDialog(playerid,400,DIALOG_STYLE_MSGBOX,"Rules","1) No ramming \n2) NO HACKING \n3) No DM'ing \n4) No reporting in chat \n5) Dont let anyone else use your account","Ok","Cancel");
- }
- }
- }
- }
- return 1;
- }
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- return 1;
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- SendClientMessage(playerid, red, "This is a NO-NO");
- Kick(playerid);
- return 0;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- //new file[256];
- //dini_IntSet(file, "deaths", playerdata[playerid][Deaths]++);
- return 1;
- }
- forward ammo(playerid);
- public ammo(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- if(GetPlayerAmmo(playerid)>0)
- {
- new pName[MAX_PLAYER_NAME];
- new string2[256];
- GetPlayerName(playerid, pName,sizeof(pName));
- format(string2,sizeof(string2),"%s Has Been Banned From The Server. Reason: Weapons",pName);
- SendClientMessageToAll(white,string2);
- playerdata[playerid][Kicks]++;
- SaveUsers(playerid);
- }
- }
- }
- forward score(playerid);
- public score(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- SetPlayerScore(playerid, GetPlayerScore(playerid) + 1);
- }
- return 1;
- }
- forward ping(playerid);
- public ping(playerid)
- {
- if(IsPlayerConnected(playerid))
- {
- if(GetPlayerPing(playerid) > 500)
- {
- Kick(playerid);
- }
- }
- return 1;
- }
- //=================Commands============//
- COMMAND:welcomemessage(playerid, params[])
- {
- if(IsPlayerConnected(playerid))
- {
- ShowPlayerDialog(playerid, 10, DIALOG_STYLE_INPUT,"Welcome Message!", "Message:", "Ok", "Cancel");
- }
- return 1;
- }
- COMMAND:menu(playerid, params[])
- {
- if(IsPlayerConnected(playerid))
- {
- ShowPlayerDialog(playerid, 12, DIALOG_STYLE_LIST, "Menu", "Stats \nRules", "Ok", "Cancel");
- }
- return 1;
- }
- COMMAND:stats(playerid, params[])
- {
- if(IsPlayerConnected(playerid))
- {
- new pnaMe[MAX_PLAYER_NAME], s[102];
- GetPlayerName(playerid, pnaMe, sizeof(pnaMe));
- format(s,sizeof(s),"Name:%s \nMoney:%i \nPing:%i \nSkin:%i",pnaMe, GetPlayerMoney(playerid),GetPlayerPing(playerid), GetPlayerSkin(playerid));
- ShowPlayerDialog(playerid, 11, DIALOG_STYLE_MSGBOX,"Stats!", s, "Ok", "Cancel");
- }
- return 1;
- }
- COMMAND:vip(playerid, params[])
- {
- if (playerdata[playerid][vip] == 0)
- {
- SendClientMessage(playerid, red, "You are not VIP");
- }
- if (playerdata[playerid][vip] == 1)
- {
- SendClientMessage(playerid, yellow, "You are VIP!");
- }
- return 1;
- }
- CMD:skin(playerid, params[])
- {
- if(playerdata[playerid][vip] == 1) return ShowPlayerDialog(playerid,3,DIALOG_STYLE_LIST,"VIP Skins!","Army Skin \nFirefighter \nParamedic","Ok","Cancel");
- else return SendClientMessage(playerid, red, "You are not VIP!");
- }
- COMMAND:rules(playerid, params[])
- {
- ShowPlayerDialog(playerid,4,DIALOG_STYLE_MSGBOX,"Rules","1) No ramming \n2) NO HACKING \n3) No DM'ing \n4) No reporting in chat \n5) Dont let anyone else use your account","Ok","Cancel");
- return 1;
- }
- COMMAND:admincmd(playerid,params[])
- {
- if(playerdata[playerid][level] == 0)
- {
- SendClientMessage(playerid, red, "You are not a admin!");
- }
- else if(playerdata[playerid][level] == 1)
- {
- SendClientMessage(playerid, green, "/goto, /healall");
- }
- else if(playerdata[playerid][level] == 2)
- {
- SendClientMessage(playerid, green, "/kill, /healall, /specplayer, /mute, /specoff");
- }
- else if(playerdata[playerid][level] == 3)
- {
- SendClientMessage(playerid, green, "/goto, /kick, /ban, /kill, /healall, /mute, /specplayer, /specoff");
- }
- else if(playerdata[playerid][level] == 4)
- {
- SendClientMessage(playerid, green, "/goto, /kick, /ban, /kill, /announce, /get, /mute, /healall, /clearchat, /specplayer, /specoff");
- }
- else if(playerdata[playerid][level] == 5)
- {
- SendClientMessage(playerid, green, "/goto, /kick, /ban, /kill, /announce, /get, /mute, /setlevel, /healall, /clearchat, /spec, /specoff");
- }
- return 1;
- }
- CMD:reclass(playerid,params[])
- {
- SetPlayerHealth(playerid, 0);
- ForceClassSelection(playerid);
- }
- COMMAND:freeze(playerid,params[])
- {
- new pId;
- if(playerdata[playerid][level] < 3) return 0;
- else if(sscanf(params, "d", pId)) return SendClientMessage(playerid, yellow, "Usage: /freeze [ID]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was Not Found.");
- else
- {
- new pName[MAX_PLAYER_NAME], pName2[MAX_PLAYER_NAME];
- new string[256];
- GetPlayerName(playerid, pName,sizeof(pName));
- GetPlayerName(pId,pName2,sizeof(pName2));
- if(playerdata[pId][PlayerFrozen] == 0)
- {
- format(string,sizeof(string),"[ADMIN]: %s (%d) Has Frozen %s (%d).",pName,playerid,pName2,pId);
- SendClientMessageToAdmins(red,string);
- playerdata[pId][PlayerFrozen] = 1;
- TogglePlayerControllable(pId, 0);
- SendClientMessage(playerid, green, "You froze a player");
- }
- else
- {
- format(string,sizeof(string),"[ADMIN]: %s (%d) Has Un-Frozen %s (%d).",pName,playerid,pName2,pId);
- SendClientMessageToAdmins(red,string);
- playerdata[pId][PlayerFrozen] = 0;
- TogglePlayerControllable(pId, 1);
- SendClientMessage(playerid, green, "Player is unfrozen");
- }
- }
- return 1;
- }
- COMMAND:announce(playerid,params[])
- {
- if(playerdata[playerid][level] < 3) return 0;
- else if(sscanf(params,"s",params)) return SendClientMessage(playerid, yellow, "/announce [Text]");
- else
- {
- new pName[MAX_PLAYER_NAME];
- new string[256];
- GetPlayerName(playerid,pName,sizeof(pName));
- format(string,sizeof(string),"%s",params);
- GameTextForAll(string,5000,3);
- }
- return 1;
- }
- COMMAND:setlevel(playerid,params[])
- {
- new pId, alevel;
- if(playerdata[playerid][level] == 5 || IsPlayerAdmin(playerid))
- {
- if(sscanf(params, "dd", pId, alevel)) return SendClientMessage(playerid, yellow, "/setlvl [ID] [0 - 5]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was Not Found.");
- else if(alevel < 0) return SendClientMessage(playerid, yellow, "/setlvl [ID] [0 - 5]");
- else if(alevel > 5) return SendClientMessage(playerid, yellow, "/setlvl [ID] [0 - 5]");
- else
- {
- new pName[MAX_PLAYER_NAME], pName2[MAX_PLAYER_NAME];
- new string2[256];
- GetPlayerName(playerid,pName,sizeof(pName));
- GetPlayerName(pId,pName2,sizeof(pName2));
- format(string2,sizeof(string2),"SERVER: Admin %s Has Set Your Level To %d.",pName, alevel);
- SendClientMessage(pId,green,string2);
- playerdata[pId][level] = alevel;
- }
- }
- else
- {
- return 0;
- }
- return 1;
- }
- CMD:kick(playerid,params[])
- {
- new pId;
- if(playerdata[playerid][level] < 2) return 0;
- else if(sscanf(params, "ds", pId,params[2])) return SendClientMessage(playerid, yellow, "/kick [ID] [Reason]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was Not Found.");
- else
- {
- new pName[MAX_PLAYER_NAME], pName2[MAX_PLAYER_NAME];
- new string2[256];
- GetPlayerName(playerid, pName,sizeof(pName));
- GetPlayerName(pId,pName2,sizeof(pName2));
- format(string2,sizeof(string2),"%s Has Been Kicked From The Server. Reason: %s",pName2,params[2]);
- SendClientMessageToAll(white,string2);
- playerdata[pId][Kicks]++;
- Kick(pId);
- }
- return 1;
- }
- CMD:ban(playerid,params[])
- {
- new pId;
- if(playerdata[playerid][level] < 2) return 0;
- else if(sscanf(params, "ds", pId,params[2])) return SendClientMessage(playerid, yellow, "/ban [ID] [Reason]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was Not Found.");
- else
- {
- new pName[MAX_PLAYER_NAME], pName2[MAX_PLAYER_NAME];
- new string2[256];
- GetPlayerName(playerid, pName,sizeof(pName));
- GetPlayerName(pId,pName2,sizeof(pName2));
- format(string2,sizeof(string2),"%s Has Been Banned From The Server. Reason: %s",pName2,params[2]);
- SendClientMessageToAll(white,string2);
- playerdata[pId][Kicks]++;
- }
- return 1;
- }
- CMD:goto(playerid,params[])
- {
- new pId;
- if(playerdata[playerid][level] < 1) return 0;
- else if(sscanf(params, "d", pId)) return SendClientMessage(playerid, yellow, "/goto [ID]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was Not Found.");
- else
- {
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(pId, X, Y, Z);
- if(GetPlayerState(playerid) == 2)
- {
- SetVehiclePos(GetPlayerVehicleID(playerid), X, Y+5, Z+1);
- SetPlayerInterior(playerid, GetPlayerInterior(pId));
- }
- else
- {
- SetPlayerPos(playerid, X, Y+3, Z+1);
- SetPlayerInterior(playerid, GetPlayerInterior(pId));
- }
- }
- return 1;
- }
- CMD:get(playerid,params[])
- {
- new pId;
- if(playerdata[playerid][level] < 3) return 0;
- else if(sscanf(params, "d", pId)) return SendClientMessage(playerid, yellow, "/get [ID]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was Not Found.");
- else
- {
- new Float:X, Float:Y, Float:Z;
- GetPlayerPos(playerid, X, Y, Z);
- if(GetPlayerState(pId) == 2)
- {
- SetVehiclePos(GetPlayerVehicleID(pId), X, Y+5, Z+1);
- SetPlayerInterior(pId, GetPlayerInterior(playerid));
- }
- else
- {
- SetPlayerPos(pId, X, Y+3, Z+1);
- SetPlayerInterior(pId, GetPlayerInterior(playerid));
- }
- }
- return 1;
- }
- COMMAND:healall(playerid,params[])
- {
- #pragma unused params
- if (playerdata[playerid][level] < 0) return 0;
- new string[100];
- format(string, sizeof(string),"Administrator has healed all players!", pname);
- SendClientMessageToAll(green, string);
- SetHealthForAll(100);
- return 1;
- }
- stock SetHealthForAll(Float:Health)
- {
- for(new i; i<MAX_PLAYERS; i++)
- {
- SetPlayerHealth(i, Health);
- }
- }
- COMMAND:clearchat(playerid,params[])
- {
- #pragma unused params
- if (playerdata[playerid][level] < 3) return 0;
- new pName[MAX_PLAYER_NAME];
- for(new cchat=0; cchat<51; cchat++)
- {
- SendClientMessageToAll(white, " ");
- }
- GetPlayerName(playerid, pName, sizeof(pName));
- SendClientMessageToAll(blue, "Chat Cleared");
- return 1;
- }
- COMMAND:admins(playerid,params[])
- {
- #pragma unused params
- if(playerdata[playerid][level] < 0) return 0;
- new pName[MAX_PLAYER_NAME], string[256];
- SendClientMessage(playerid, white, "Online Admins:");
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- if(playerdata[i][level] > 0)
- {
- GetPlayerName(i, pName,sizeof(pName));
- format(string,sizeof(string),"- %s(%d) Level: [%d]",pName,i,playerdata[i][level]);
- SendClientMessage(playerid,yellow,string);
- }
- }
- }
- return 1;
- }
- COMMAND:spec(playerid,params[])
- {
- new pId;
- if(playerdata[playerid][level] < 1) return 0;
- else if(sscanf(params, "d", pId)) return SendClientMessage(playerid, yellow, "Usage: /spec [ID]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was not Found.");
- else
- {
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- pSpectating[playerid][i]=0;
- }
- TogglePlayerSpectating(playerid, 1);
- if(IsPlayerInAnyVehicle(pId))
- {
- PlayerSpectateVehicle(playerid, GetPlayerVehicleID(pId));
- }
- else
- {
- PlayerSpectatePlayer(playerid, pId);
- }
- SetPlayerInterior(playerid,GetPlayerInterior(pId));
- pSpectating[playerid][pId]=1;
- SendClientMessage(playerid, yellow, "Use: /specoff to stop spectating.");
- }
- return 1;
- }
- COMMAND:specoff(playerid,params[])
- {
- #pragma unused params
- if(playerdata[playerid][level] < 1) return 0;
- else
- {
- SetPlayerInterior(playerid, 0);
- TogglePlayerSpectating(playerid, 0);
- for(new i = 0; i < MAX_PLAYERS; i++)
- {
- if(IsPlayerConnected(i))
- {
- pSpectating[playerid][i]=0;
- }
- }
- }
- return 1;
- }
- COMMAND:mute(playerid,params[])
- {
- new pId;
- if(playerdata[playerid][level] < 2) return 0;
- else if(sscanf(params, "d", pId)) return SendClientMessage(playerid, yellow, "Usage: /mute [ID]");
- else if(!IsPlayerConnected(pId)) return SendClientMessage(playerid, red, "The ID You Entered Was Not Found.");
- else
- {
- new pName[MAX_PLAYER_NAME], pName2[MAX_PLAYER_NAME];
- new string[256], string2[256];
- GetPlayerName(playerid,pName,sizeof(pName));
- GetPlayerName(pId,pName2,sizeof(pName2));
- if(playerdata[pId][PlayerMuted] == 0)
- {
- format(string,sizeof(string), "%s (%d) Has Muted %s (%d).",pName,playerid,pName2,pId);
- SendClientMessageToAdmins(red,string);
- format(string2,sizeof(string2),"%s (%d) Has Been Muted.",pName2,pId);
- SendClientMessageToAll(blue,string2);
- playerdata[pId][PlayerMuted] = 1;
- Muted[pId] = 1;
- }
- else
- {
- format(string,sizeof(string), "%s (%d) Has Un-Muted %s (%d).",pName,playerid,pName2,pId);
- SendClientMessageToAdmins(red,string);
- format(string2,sizeof(string2),"%s (%d) Has Been Un-Muted.",pName2,pId);
- SendClientMessageToAll(blue,string2);
- playerdata[pId][PlayerMuted] = 0;
- Muted[pId] = 0;
- }
- }
- return 1;
- }
- COMMAND:pm(playerid,params[])
- {
- new pmid,messageE[400],string[200], pmname[25], name[25], String[200];
- if(sscanf(params,"ds",pmid, messageE)) return SendClientMessage(playerid, red, "/pm (id) (message)");
- if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, red, "This player isn't connected.");
- if(pmid == playerid) return SendClientMessage(playerid, red, "You cannot PM yourself!");
- GetPlayerName(pmid,pmname,25);
- GetPlayerName(playerid,name,25);
- format(string, 200, "From %s(%d): %s", name, playerid, messageE);
- format(String, 200, "To %s(%d): %s", pmname, pmid, messageE);
- SendClientMessage(pmid, COLOR_YELLOW, string);
- SendClientMessage(playerid, COLOR_YELLOW, String);
- return 1;
- }
- /*COMMAND:warn(playerid,params[])
- {
- if(playerdata[playerid][level] < 1) return 0;
- {
- new pName[MAX_PLAYER_NAME];
- new warnID, aReason[128];
- if(sscanf(params,"ds",warnID, aReason)) return SendClientMessage(playerid, red, "/warn (playerid) (reason)");
- if(!IsPlayerConnected(playerid)) return SendClientMessage(playerid, red,"Player not connected.");
- if(warnID == playerid) return SendClientMessage(playerid, red,"You cannot warn yourself!");
- new wString[128], Name[24],warnname[25];
- warns[warnID] ++;
- GetPlayerName(warnID,warnname,25);
- GetPlayerName(playerid,Name,24);
- format(wString, 128, "You have been warned by %s for: %s",pName,aReason);
- SendClientMessage(warnID, COLOR_YELLOW, wString);
- format(wString, 128, "Player %s(%d) was warned by %s for: %s",warnname,warnID,pName,aReason);
- SendClientMessageToAll(COLOR_YELLOW, wString);
- if(warns[warnID] >=3)
- {
- new gName[25],string[75];
- GetPlayerName(warnID,gName,25);
- format(string, sizeof(string),"Player %s has been banned from the server(3/3) Warnings(Excessive warnings)",gName);
- SendClientMessageToAll(COLOR_WHITE,string);
- ban[warnID] =1;
- SaveUsers(playerid);
- Kick(warnID);
- }
- }
- return 1;
- }*/
- COMMAND:save(playerid,params[])
- {
- if(playerdata[playerid][level] < 1) return 0;
- {
- SaveAll(playerid);
- }
- return 1;
- }
- stock SaveAll(playerid)
- {
- GetPlayerName(playerid, pname, sizeof(pname));
- /*for(new i; i<MAX_PLAYERS; i++)
- {
- new file[256];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(file, sizeof(file), "/Users/%s.ini", pname);
- dini_IntSet(file, "Kicks",playerdata[playerid][Kicks]);
- dini_IntSet(file, "level", playerdata[playerid][level]);
- dini_IntSet(file, "vip", playerdata[playerid][vip]);
- dini_IntSet(file, "score", GetPlayerScore(playerid));
- dini_IntSet(file, "money", GetPlayerMoney(playerid));
- dini_IntSet(file, "warn", warns[playerid]);
- dini_IntSet(file, "ban", ban[playerid]);
- dini_IntSet(file, "Ip", GetIp(playerid));
- }*/
- return 1;
- }
- stock SaveUsers(playerid)
- {
- GetPlayerName(playerid, pname, sizeof(pname));
- /*if(playerdata[playerid][logged] == 1)
- {
- new file[256];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(file, sizeof(file), "/Users/%s.ini", pname);
- dini_IntSet(file, "Kicks",playerdata[playerid][Kicks]);
- dini_IntSet(file, "level", playerdata[playerid][level]);
- dini_IntSet(file, "vip", playerdata[playerid][vip]);
- dini_IntSet(file, "score", GetPlayerScore(playerid));
- dini_IntSet(file, "money", GetPlayerMoney(playerid));
- dini_IntSet(file, "warn", warns[playerid]);
- dini_IntSet(file, "ban", ban[playerid]);
- dini_IntSet(file, "Ip", GetIp(playerid));
- }*/
- return 1;
- }
- stock GetIp(playerid)
- {
- GetPlayerIp(playerid, ip, sizeof(ip));
- return 1;
- }
- stock GetName(playerid)
- {
- GetPlayerName(playerid, pname, sizeof(pname));
- return 1;
- }
- stock LoginPlayer(playerid)
- {
- new inputtext;
- new check = mysql_query("SELECT `Username, Password` FROM names WHERE `Username = %s, Password = %s`", GetName(playerid), inputtext);
- mysql_store_result();
- if(inputtext == check)
- {
- SendClientMessage(playerid, yellow, "It worked slut");
- }
- else
- {
- SendClientMessage(playerid, yellow, "WHORE");
- }
- }
- //=============sscanf===============//
- stock sscanf(string[], format[], {Float,_}:...)
- {
- new
- formatPos = 0,
- stringPos = 0,
- paramPos = 2,
- paramCount = numargs();
- while (paramPos < paramCount && string[stringPos])
- {
- switch (format[formatPos++])
- {
- case '\0':
- {
- return 0;
- }
- case 'i', 'd':
- {
- new
- neg = 1,
- num = 0,
- ch = string[stringPos];
- if (ch == '-')
- {
- neg = -1;
- ch = string[++stringPos];
- }
- do
- {
- stringPos++;
- if (ch >= '0' && ch <= '9')
- {
- num = (num * 10) + (ch - '0');
- }
- else
- {
- return 1;
- }
- }
- while ((ch = string[stringPos]) && ch != ' ');
- setarg(paramPos, 0, num * neg);
- }
- case 'h', 'x':
- {
- new
- ch,
- num = 0;
- while ((ch = string[stringPos++]))
- {
- switch (ch)
- {
- case 'x', 'X':
- {
- num = 0;
- continue;
- }
- case '0' .. '9':
- {
- num = (num << 4) | (ch - '0');
- }
- case 'a' .. 'f':
- {
- num = (num << 4) | (ch - ('a' - 10));
- }
- case 'A' .. 'F':
- {
- num = (num << 4) | (ch - ('A' - 10));
- }
- case ' ':
- {
- break;
- }
- default:
- {
- return 1;
- }
- }
- }
- setarg(paramPos, 0, num);
- }
- case 'c':
- {
- setarg(paramPos, 0, string[stringPos++]);
- }
- case 'f':
- {
- new tmp[25];
- strmid(tmp, string, stringPos, stringPos+sizeof(tmp)-2);
- setarg(paramPos, 0, _:floatstr(tmp));
- }
- case 's', 'z':
- {
- new
- i = 0,
- ch;
- if (format[formatPos])
- {
- while ((ch = string[stringPos++]) && ch != ' ')
- {
- setarg(paramPos, i++, ch);
- }
- if (!i) return 1;
- }
- else
- {
- while ((ch = string[stringPos++]))
- {
- setarg(paramPos, i++, ch);
- }
- }
- stringPos--;
- setarg(paramPos, i, '\0');
- }
- default:
- {
- continue;
- }
- }
- while (string[stringPos] && string[stringPos] != ' ')
- {
- stringPos++;
- }
- while (string[stringPos] == ' ')
- {
- stringPos++;
- }
- paramPos++;
- }
- while (format[formatPos] == 'z') formatPos++;
- return format[formatPos];
- }
- #else
- #endif
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement