#define LOCALBANNICK "/Nicks banidos/%s.cfg"
#define LOCALBANIP "/IPs banidos/%s.cfg"
new DSName[MAX_PLAYER_NAME];
new Don[150];
stock BanId(playerid,motivo[])
{
GetPlayerName(playerid,DSName,sizeof(DSName));
format(Don,sizeof(Don),"-Aviso- O jogador %s foi banido [Motivo: %s]",DSName, motivo);
SendClientMessageToAll(-1,Don);
Kick(playerid);
}
stock BanNick(playerid,motivo[])
{
GetPlayerName(playerid,DSName,sizeof(DSName));
format(Don,sizeof(Don),LOCALBANNICK,DSName);
DOF2_CreateFile(Don);
DOF2_SetInt(Don, "Motivo", motivo);
format(Don,sizeof(Don),"-Aviso- O jogador %s foi banido [Motivo: %s]",DSName, motivo);
SendClientMessageToAll(-1,Don);
Kick(playerid);
}
stock BanIP(playerid,motivo[])
{
GetPlayerIp(playerid,IP,sizeof(IP));
format(Don,sizeof(Don),LOCALBANIP,IP);
DOF2_CreateFile(Don);
DOF2_SetInt(Don, "Motivo", motivo);
format(Don,sizeof(Don),"-Aviso- O IP %i foi banido [Motivo: %s]",IP, motivo);
SendClientMessageToAll(-1,Don);
Kick(playerid);
}
stock BanNickOff(Nick,motivo[])
{
format(Don,sizeof(Don),LOCALBANNICK,Nick);
DOF2_CreateFile(Don);
DOF2_SetInt(Don, "Motivo", motivo);
format(Don,sizeof(Don),"-Aviso- O Nick %s foi banido-off [Motivo: %s]",Nick, motivo);
SendClientMessageToAll(-1,Don);
Kick(playerid);
}
stock BanIPOFF(IP,motivo[])
{
format(Don,sizeof(Don),LOCALBANIP,IP);
DOF2_CreateFile(Don);
DOF2_SetInt(Don, "Motivo", motivo);
format(Don,sizeof(Don),"-Aviso- O IP %i foi banido-off [Motivo: %s]",IP, motivo);
SendClientMessageToAll(-1,Don);
}
stock UnBanNick(Nome)
{
format(Don,sizeof(Don),LOCALBANNICK,Nome);
if(!DOF2_FileExists(Don))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");
DOF2_RemoveFile(Don);
format(Don,sizeof(Don),"-Aviso- O nick %s acaba de ser desbanido.",Nome);
SendClientMessageToAll(-1,Don);
}
stock UnBanIP(IP)
{
format(Don,sizeof(Don),LOCALBANIP,IP);
if(!DOF2_FileExists(Don))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");
DOF2_RemoveFile(Don);
format(Don,sizeof(Don),"-Aviso- O ip %i acaba de ser desbanido.",IP);
SendClientMessageToAll(-1,Don);
}
stock CheckBan(playerid)
{
new Don2[150];
GetPlayerIp(playerid,IP,sizeof(IP));
format(Don,sizeof(Don),LOCALBANIP,IP);
if(!DOF2_FileExists(Don))
{
SendClientMessage(playerid,-1,"-Aviso- Voce esta banido");
Kick(playerid);
}
GetPlayerName(playerid,DSName,sizeof(DSName));
format(Don2,sizeof(Don2),LOCALBANNICK,DSName);
if(!DOF2_FileExists(Don2))
{
SendClientMessage(playerid,-1,"-Aviso- Voce esta banido");
Kick(playerid);
}
}
stock BanNickOff(Nick,motivo[])
{
format(Don,sizeof(Don),LOCALBANNICK,Nick);
DOF2_CreateFile(Don);
DOF2_SetInt(Don, "Motivo", motivo);
format(Don,sizeof(Don),"-Aviso- O Nick %s foi banido-off [Motivo: %s]",Nick, motivo);
SendClientMessageToAll(-1,Don);
Kick(playerid);
}
pawn Код:
|
CMD:ban(mPlayer, mParams[])
{
new mMotivo[128];
if(sscanf(mParams, "us[128]", mPlayerID, mMotivo))
{
return SendClientMessage(mPlayer, -1, "/ban (id/name) (motivo)");
}
return BanId(mPlayerID, mMotivo);
}
CMD:desban(mPlayer, mParams[])
{
if(isnull(mParams))
{
return SendClientMessage(mPlayer, -1, "/desban (ip/nick)");
}
new mNum, i;
for(; i != strlen(mParams); ++i)
{
if(mParams[i] == '.' || (mParams[i] >= '0' && mParams[i] <= '9'))
{
++mNum;
}
}
if(mNum >= 5)
{
UnBanIP(mParams);
}
else
{
UnBanNick(mParams);
}
return 1;
}
Nгo tem nem como isso pois playerid nem existe ai
pawn Код:
|
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(376) : error 017: undefined symbol "playerid"
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(380) : warning 209: function "UnBanNick" should return a value
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(384) : error 017: undefined symbol "playerid"
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(388) : warning 209: function "UnBanIP" should return a value
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(589) : error 017: undefined symbol "mPlayerID"
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(593) : error 017: undefined symbol "mPlayerID"
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(593) : warning 209: function "BanId" should return a value
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(613) : error 035: argument type mismatch (argument 1)
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(617) : error 035: argument type mismatch (argument 1)
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
6 Errors.
stock UnBanNick(Nome)
{
format(Don,sizeof(Don),LOCALBANNICK,Nome);
if(!DOF2_FileExists(Don))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");//erro
DOF2_RemoveFile(Don);
format(Don,sizeof(Don),"-Aviso- O nick %s acaba de ser desbanido.",Nome);
SendClientMessageToAll(-1,Don);
}//erro
stock UnBanIP(IP)
{
format(Don,sizeof(Don),LOCALBANIP,IP);
if(!DOF2_FileExists(Don))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");//erro
DOF2_RemoveFile(Don);
format(Don,sizeof(Don),"-Aviso- O ip %i acaba de ser desbanido.",IP);
SendClientMessageToAll(-1,Don);
}//erro
CMD:ban(mPlayer, mParams[])
{
new mMotivo[128];
if(sscanf(mParams, "us[128]", mPlayerID, mMotivo))//erro
{
return SendClientMessage(mPlayer, -1, "/ban (id/name) (motivo)");
}
return BanId(mPlayerID, mMotivo);//erro
}
CMD:desban(mPlayer, mParams[])
{
if(isnull(mParams))
{
return SendClientMessage(mPlayer, -1, "/desban (ip/nick)");
}
new mNum, i;
for(; i != strlen(mParams); ++i)
{
if(mParams[i] == '.' || (mParams[i] >= '0' && mParams[i] <= '9'))
{
++mNum;
}
}
if(mNum >= 5)
{
UnBanIP(mParams);//erro
}
else
{
UnBanNick(mParams);//erro
}
return 1;
}
#define LOCALBANNICK "/Nicks banidos/%s.cfg"
#define LOCALBANIP "/IPs banidos/%s.cfg"
stock BanId(playerid, mMotivo[])
{
new mStr[128], mName[24];
GetPlayerName(playerid, mName, 24);
format(mStr, 128, "-Aviso- O jogador %s foi banido [Motivo: %s]", mName, mMotivo);
SendClientMessageToAll(-1, mStr);
return Kick(playerid);
}
stock BanNick(playerid, mMotivo[])
{
new mStr[128], mName[24];
GetPlayerName(playerid, mName, 24);
format(mStr, 128, LOCALBANNICK, mName);
DOF2_CreateFile(mStr);
DOF2_SetString(mStr, "Motivo", mMotivo);
format(mStr, 128, "-Aviso- O jogador %s foi banido [Motivo: %s]", mName, mMotivo);
SendClientMessageToAll(-1, mStr);
return Kick(playerid);
}
stock BanIP(playerid, mMotivo[])
{
new mStr[128], mIP[16];
GetPlayerIp(playerid, mIP, 16);
format(mStr, 128, LOCALBANIP, mIP);
DOF2_CreateFile(mStr);
DOF2_SetString(mStr, "Motivo", mMotivo);
format(mStr, 128, "-Aviso- O IP %i foi banido [Motivo: %s]", mIP, mMotivo);
SendClientMessageToAll(-1, mStr);
return Kick(playerid);
}
stock BanNickOff(Nick[], mMotivo[])
{
new mStr[128];
format(mStr, 128, LOCALBANNICK, Nick);
DOF2_CreateFile(mStr);
DOF2_SetString(mStr, "Motivo", mMotivo);
format(mStr, 128, "-Aviso- O Nick %s foi banido-off [Motivo: %s]", Nick, mMotivo);
return SendClientMessageToAll(-1, mStr);
}
stock BanIPOFF(mIP[], mMotivo[])
{
new mStr[128];
format(mStr, 128, LOCALBANIP, mIP);
DOF2_CreateFile(mStr);
DOF2_SetString(mStr, "Motivo", mMotivo);
format(mStr, 128, "-Aviso- O IP %i foi banido-off [Motivo: %s]", mIP, mMotivo);
return SendClientMessageToAll(-1, mStr);
}
stock UnBanNick(Nome[])
{
new mStr[128];
format(mStr, 128, LOCALBANNICK, Nome);
if(!DOF2_FileExists(mStr))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");
DOF2_RemoveFile(mStr);
format(mStr, 128, "Aviso- O nick %s acaba de ser desbanido.",Nome);
return SendClientMessageToAll(-1, mStr);
}
stock UnBanIP(mIP[])
{
new mStr[128];
format(mStr, 128, LOCALBANIP, mIP);
if(!DOF2_FileExists(mStr))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");
DOF2_RemoveFile(mStr);
format(mStr, 128, "-Aviso- O ip %i acaba de ser desbanido.", mIP);
SendClientMessageToAll(-1, mStr);
}
stock CheckBan(playerid)
{
new mStr[128], mName[24], mIP[16];
GetPlayerIp(playerid, mIP, 16);
format(mStr, 128, LOCALBANIP, mIP);
if(DOF2_FileExists(mStr))
{
SendClientMessage(playerid,-1,"-Aviso- Voce esta banido");
return Kick(playerid);
}
GetPlayerName(playerid, mName, 24);
format(mStr, 128, LOCALBANNICK, mName);
if(DOF2_FileExists(mStr))
{
SendClientMessage(playerid,-1,"-Aviso- Voce esta banido");
return Kick(playerid);
}
return 1;
}
CMD:ban(mPlayer, mParams[])
{
new mPlayerID, mMotivo[128];
if(sscanf(mParams, "us[128]", mPlayerID, mMotivo))//erro
{
return SendClientMessage(mPlayer, -1, "/ban (id/name) (motivo)");
}
return BanId(mPlayerID, mMotivo);
}
CMD:desban(mPlayer, mParams[])
{
if(isnull(mParams))
{
return SendClientMessage(mPlayer, -1, "/desban (ip/nick)");
}
new mNum, i;
for(; i != strlen(mParams); ++i)
{
if(mParams[i] == '.' || (mParams[i] >= '0' && mParams[i] <= '9'))
{
++mNum;
}
}
if(mNum >= 5)
{
UnBanIP(mParams);
}
else
{
UnBanNick(mParams);
}
return 1;
}
Olha cara seu sistema estava muito bugado, tive que praticamente refaze-lo entгo pode ter escapado algo da minha visгo mais creio que nгo, teste e veja se ira funcionar
pawn Код:
|
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(403) : error 017: undefined symbol "playerid"
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(412) : error 017: undefined symbol "playerid"
C:\Users\Lucas\Desktop\Sprite Gaming - RPG\gamemodes\SG.pwn(416) : warning 209: function "UnBanIP" should return a value
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
2 Errors.
stock UnBanNick(Nome[])
{
new mStr[128];
format(mStr, 128, LOCALBANNICK, Nome);
if(!DOF2_FileExists(mStr))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");//erro
DOF2_RemoveFile(mStr);
format(mStr, 128, "Aviso- O nick %s acaba de ser desbanido.",Nome);
return SendClientMessageToAll(-1, mStr);
}
stock UnBanIP(mIP[])
{
new mStr[128];
format(mStr, 128, LOCALBANIP, mIP);
if(!DOF2_FileExists(mStr))return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");//erro
DOF2_RemoveFile(mStr);
format(mStr, 128, "-Aviso- O ip %i acaba de ser desbanido.", mIP);
SendClientMessageToAll(-1, mStr);
}//erro
stock UnBanNick(Nome[])
{
new mStr[128];
format(mStr, 128, LOCALBANNICK, Nome);
if(!DOF2_FileExists(mStr))return 0;
DOF2_RemoveFile(mStr);
format(mStr, 128, "Aviso- O nick %s acaba de ser desbanido.",Nome);
return SendClientMessageToAll(-1, mStr), 1;
}
stock UnBanIP(mIP[])
{
new mStr[128];
format(mStr, 128, LOCALBANIP, mIP);
if(!DOF2_FileExists(mStr))return 0;
DOF2_RemoveFile(mStr);
format(mStr, 128, "-Aviso- O ip %i acaba de ser desbanido.", mIP);
return SendClientMessageToAll(-1, mStr), 1;
}
CMD:desban(mPlayer, mParams[])
{
if(isnull(mParams))
{
return SendClientMessage(mPlayer, -1, "/desban (ip/nick)");
}
new mNum, i;
for(; i != strlen(mParams); ++i)
{
if(mParams[i] == '.' || (mParams[i] >= '0' && mParams[i] <= '9'))
{
++mNum;
}
}
if(mNum >= 5)
{
if(!UnBanIP(mParams)) return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");
}
else
{
if(!UnBanNick(mParams)) return SendClientMessage(playerid, -1,"[ERRO] Conta nao banida.");
}
return 1;
}