accurason
Новичок
Можно ли как-то из обычной команды /ban ID изменить эту команду так, что бы банить можно было и по ID и по никнейму. Так сказать совместить команду /offban с командой /ban. Пример: Введите: /ban ID или Никнейм
Можно и с /jail так совместить, и с /mute тоже.
Код:
if(strcmp(cmd, "/ban", true) == 0)
{
if(IsPlayerConnected(playerid))
{
tmp = strtok(cmdtext, idx);
if(!strlen(tmp) && PlayerInfo[playerid][pAdmin] >= 4) return SCM(playerid, COLOR_GRAD2, "Èñïîëüçóéòå: /ban [id èãðîêà] [ñðîê â äíÿõ] [ïðè÷èíà]");
new playa;
new money;
playa = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
money = strval(tmp);
if (PlayerInfo[playerid][pAdmin] >= 3)
{
if(IsPlayerConnected(playa))
{
if(playa != INVALID_PLAYER_ID)
{
if(money > 30 || money < 3)
{
SCM(playerid, COLOR_GRAD1, "Èñïîëüçóé /ban [id èãðîêà] [ñðîê â äíÿõ (3-30)] [ïðè÷èíà]");
return true;
}
if(Logged[playa] == false) return SCM(playerid, COLOR_GRAD1, "");
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;
new day , month,year;
getdate(day,month,year);
new monthtext[24];
switch(month)
{
case 1: monthtext = "ÿíâàðÿ";
case 2: monthtext = "ôåâðàëÿ";
case 3: monthtext = "ìàðòà";
case 4: monthtext = "àïðåëÿ";
case 5: monthtext = "ìàÿ";
case 6: monthtext = "èþíÿ";
case 7: monthtext = "èþëÿ";
case 8: monthtext = "àâãóñòà";
case 9: monthtext = "ñåíòÿáðÿ";
case 10: monthtext = "îêòÿáðÿ";
case 11: monthtext = "íîÿáðÿ";
case 12: monthtext = "äåêàáðÿ";
}
new curdate = getdate();
format(query, sizeof(query), "Àäìèíèñòðàòîð %s çàáëîêèðîâàë èãðîêà %s íà %i äíåé. Ïðè÷èíà: %s", PlayerInfo[playerid][pName],PlayerInfo[playa][pName], money, (result));
if(!strlen(result)) format(query, sizeof(query), "Àäìèíèñòðàòîð %s çàáëîêèðîâàë èãðîêà %s íà %i äíåé.", PlayerInfo[playerid][pName],PlayerInfo[playa][pName], money);
SCMALL(COLOR_LIGHTRED, query);
format(query, sizeof(query), "{FFFFFF}Äàòà: %d %s %d ã.\nÂàø íèê: %s\nÍèê àäìèíèñòðàòîðà: %s\nÊîëè÷åñòâî äíåé: %i\nÏðè÷èíà: %s\n\n{b2ff66}Åñëè âû íå ñîãëàñíû ñ íàêàçàíèåì, ñäåëàéòå ñêðèíøîò (f8)\nè îñòàâüòå æàëîáó íà ôîðóìå bizon-rp.ru", year, monthtext, day, PlayerInfo[playa][pName],PlayerInfo[playerid][pName],money,(result));
SPD(playa,27,DIALOG_STYLE_MSGBOX,"{ff5555}Áëîêèðîâêà àêêàóíòà",query,"Çàêðûòü","");
PlayerInfo[playa][pBan] = 1;
PlayerInfo[playa][pUnBanTime] = curdate+money;
PlayerInfo[playa][pAdmin] = 0;
PlayerInfo[playa][pMember] = 0;
PlayerInfo[playa][pLeader] = 0;
PlayerInfo[playa][pRang] = 0;
PlayerInfo[playa][pSetSpawn] = 0;
PlayerInfo[playa][pSkinOrg] = 0;
SetPlayerSkin(playa,PlayerInfo[playa][pSkin]);
admin_combo[playerid][pBan] ++;
if(admin_combo[playerid][pTimer] < 1) admin_combo[playerid][pTimer] = 60;
AdminLog("Ban",result,playerid,playa);
KickEx(playa);
}
}
}
else
{
}
}
return true;
}
Можно и с /jail так совместить, и с /mute тоже.
Последнее редактирование:
