Помогите с /ban по дням
#1

Вот у меня есть команда бан по дням как сделать чтобы можно было писать причину и она выводилась в чат, а то как-то без причины не очень(нуб в павно)
PHP код:
 if(strcmp(cmd"/ban"true) == 0)    
    {    
           
tmp strtok(cmdtextidx);    
           if(!
strlen(tmp))    
           {    
            
SendClientMessage(playeridCOLOR_GRAD2"Используйте: /ban [ID] [Количество дней]");    
            return 
1;    
           }    
           new 
giveplayerid strval(tmp);    
           
tmp strtok(cmdtextidx);    
           if(!
strlen(tmp))    
           {    
            
SendClientMessage(playeridCOLOR_GRAD2"Используйте: /ban [ID] [Количество дней]");    
            return 
1;    
           }    
           new 
days strval(tmp);    
           if (
PlayerInfo[playerid][pAdmin] >= 1)    
           {    
               if(
IsPlayerConnected(giveplayerid))    
               {    
                          new 
curdate getdate();    
                   
GetPlayerName(giveplayeridgiveplayersizeof(giveplayer));    
            
GetPlayerName(playeridsendernamesizeof(sendername));    
            
format(stringsizeof(string), "Администратор %s забанил %s на %d дней."sendernamegiveplayer,days);    
            
SendClientMessageToAll(COLOR_LIGHTREDstring);    
            
PlayerInfo[giveplayerid][pBan] = 1;    
            
PlayerInfo[giveplayerid][pBanTime] = curdate+days;    
            
PlayerInfo[giveplayerid][pBanData] = curdate;    
                          
Kick(giveplayerid);    
               }    
           }    
           return 
1;    
    } 
Reply
#2

А эту команду ты как написал?
Reply
#3

Я ее нашел, а вот в pawno еще нуб.
Reply
#4

Quote:
Originally Posted by Kirill_Walker
Посмотреть сообщение
Я ее нашел, а вот в pawno еще нуб.
Ну тогда вперед грызть гранить науки!
https://sampwiki.blast.hk/wiki/Category:..._Documentation
Reply
#5

pawn Код:
if(strcmp(cmd, "/ban", true) == 0)    
{
    if(PlayerInfo[playerid][pAdmin] < 1) return SendClientMessage(playerid, COLOR_GRAD2, "Для использования этой команды Вы должны иметь уровень администрирования.");
    tmp = strtok(cmdtext, idx);    
    if(strlen(tmp) < 1) return SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /ban [ID] [Количество дней] {причина}");
    new giveplayerid = strval(tmp);
    if(IsPlayerConnected(giveplayerid) || giveplayerid == INVALID_PLAYER_ID) return SendClientMessage(playerid, COLOR_GRAD2, "Вы указали неверный ID игрока.");
    tmp = strtok(cmdtext, idx);
    if(strlen(tmp) < 1) return SendClientMessage(playerid, COLOR_GRAD2, "Используйте: /ban [ID] [Количество дней] {причина}");
    new days = strval(tmp);
    tmp = strtok(cmdtext, idx);
    new reason[64];
    reason = tmp;
    new curdate = getdate();
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    if(strlen(reason) < 1) format(string, sizeof(string), "Администратор %s забанил %s на %d дней.", sendername, giveplayer, days);
    else format(string, sizeof(string), "Администратор %s забанил %s на %d дней. Причина: %s", sendername, giveplayer, days, reason);
    SendClientMessageToAll(COLOR_LIGHTRED, string);
    PlayerInfo[giveplayerid][pBan] = 1;
    PlayerInfo[giveplayerid][pBanTime] = curdate+days;
    PlayerInfo[giveplayerid][pBanData] = curdate;
    Kick(giveplayerid);
    return 1;
}
Рекомендую перепродумать систему, в уроке, из которого Вы это взяли - много лишнего.
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)