26.04.2010, 18:27
eso lo vi en un gm de rol aki te pongo el codigo ahi es de ti para ver como lo acomodas xD ya qe no se mucho jeje
y aca el Kick
pawn Код:
if(strcmp(cmd, "/ban", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /ban [playerid/PartOfName] [razon]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(PlayerInfo[giveplayerid][pAdmin] > 1337)
{
SendClientMessage(playerid, COLOR_GRAD2, "No Puedes Banear A Un Admin LVL1338");
SendClientMessageToAll(COLOR_LIGHTRED, "AdmCmd: Has Sido Baneado Automaticamente Por Intentar Banear A Un Adm LVL1338!");
Ban(playerid);
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USAGE: /ban [playerid/PartOfName] [reason]");
return 1;
}
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdmCmd: %s A sido baneado por %s, razon: %s ", giveplayer, sendername, (result));
BanLog(string);
format(string, sizeof(string), "AdmCmd: %s A sido baneado por %s, razon: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
PlayerInfo[giveplayerid][pAdmin] = PlayerInfo[giveplayerid][pLevel];
PlayerInfo[giveplayerid][pLevel] = -999;
Ban(giveplayerid);
return 1;
}
}//not connected
}
else
{
format(string, sizeof(string), " %d is not an active player.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}
pawn Код:
if(strcmp(cmd, "/kick", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD2, "USO: /kick [IdJugador/ParteDelNombre] [razon]");
return 1;
}
giveplayerid = ReturnUser(tmp);
if(PlayerInfo[giveplayerid][pAdmin] > 1337)
{
SendClientMessage(playerid, COLOR_GRAD2, "No Puedes Kickear A Un Admin LVL1338!");
SendClientMessageToAll(COLOR_LIGHTRED, "AdmCmd: Kickeado Automaticamente Por Intentar Banear A Un Adm LVL1338");
Ban(playerid);
return 1;
}
if (PlayerInfo[playerid][pAdmin] >= 1)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "USO: /kick [IdJugador/ParteDelNombre] [reason]");
return 1;
}
new year, month,day;
getdate(year, month, day);
format(string, sizeof(string), "AdminCmd: %s A sido expulsado por %s, razon: %s (%d-%d-%d)", giveplayer, sendername, (result),month,day,year);
format(string, sizeof(string), "AdmCmd: %s A sido expulsado por %s, razon: %s", giveplayer, sendername, (result));
SendClientMessageToAll(COLOR_LIGHTRED, string);
KickLog(string);
TogglePlayerControllable(giveplayerid,0);
Kick(giveplayerid);
return 1;
}
}
}
else
{
format(string, sizeof(string), " %d no esta conectado.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
}
}
return 1;
}