04.01.2012, 17:44
I am looking for code that may limit the admin username to enter into it only one IP
#define ADMIN_NAME "your_name" // put your name instead of your_name
#define ADMIN_IP "your_ip" // put your IP instead of your_ip
// OnPlayerConnect
new plname[MAX_PLAYER_NAME];
GetPlayerName(playerid,plname,sizeof(plname));
if(!strcmp(plname,ADMIN_NAME,true))
{
new ip[32];
GetPlayerIp(playerid,ip,sizeof(ip))
if(strcmp(ip,ADMIN_IP,true))
{
SendClientMessage(playerid,-1,"This nickname is for admin only");
Kick(playerid);
return 1;
}
}
{"Join7", "127.0.0.1"}
#include <a_samp>
enum info { name[24], ip[16] }
#define ACCOUNTS_IN_SECURITY 1
new IPSecurity[ACCOUNTS_IN_SECURITY][info] = {
{"Join7", "127.0.0.1"}
};
public OnPlayerConnect(playerid) {
new PlayerName[MAX_PLAYER_NAME], pIP[16], checkid = 999;
GetPlayerName(playerid, PlayerName, 24);
GetPlayerIp(playerid, pIP, 16);
for(new i = 0; i < ACCOUNTS_IN_SECURITY; i++) {
if(!strcmp(IPSecurity[i][name], PlayerName, true)) { checkid = i; break; }
}
if(checkid != 999)
{
if(!strcmp(IPSecurity[checkid][ip], pIP, false)) {
SendClientMessage(playerid, 0xFFFFFFAA, "Welcome back admin!");
} else {
SendClientMessage(playerid, 0xFFFFFFAA, "This is an admin account, your IP doesn't match the one that's listed inside the security system!");
Kick(playerid);
}
}
}