Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Страница 1 из 2 1 2 ПоследняяПоследняя
Показано с 1 по 10 из 11
  1. #1
    Аватар для Ne_nub
    Пользователь

    Статус
    Оффлайн
    Регистрация
    28.05.2016
    Сообщений
    74
    Репутация:
    0 ±

    Вопрос по банам

    Проблема с командой бан. Например, если я баню, прописав свою причину, он попросу показывает
    PHP код:
    Nick  [%s]    R-IP [%s]    L-IP  [%s]    IP  [%s]

    Ну а если цифри писать (1 или 2), то банится по своей причине ( как указано в коде ) и на свое число дней.

    А вот как сделать так, чтобы банил игрока по примеру /ban 0 30 Реклама ( 0 - id, 30 - кол-во дней, Реклама - причина ). Вот сам код:


    PHP код:
    else if(strcmp(cmd"/ban"true) == 0)
            {
                    if(
    PlayerInfo[playerid][pAdmin] >= 2)
                    {
                            
    tmp strcharsplit(cmdtextidx);
                            new 
    stringr[64];
                            if(!
    strlen(tmp)) return SendClientMessage(playeridCOLOR_WHITE"Введите: /ban [id] [причина]");
                            
    giveplayerid ReturnUser(tmp);
                            if(
    AntiBan[playerid] >= 60) { SendClientMessage(playerid,COLOR_GREY,"[Анти-перебан] Ваши адм действия заблокированы на 3 минуты"); AntiBan[playerid] = 180; return true; }
                            if(
    anti[playerid] == 1) return SendClientMessage(playeridCOLOR_LIGHTRED"[Анти-Наказание] Вы словили блок на наказание сроком 5 минут");
                            if (
    PlayerInfo[playerid][pAdmin] >= 2)
                            {
                                    if(
    IsPlayerConnected(giveplayerid))
                                    {
                                            if(
    giveplayerid != INVALID_PLAYER_ID)
                                            {
                                                if(
    PlayerInfo[giveplayerid][pLeader] > 0) return SendClientMessage(playerid,COLOR_GRAD2"Лидер не может быть забанен!");
                                                    if(
    PlayerInfo[giveplayerid][pAdmin] > 0) return SendClientMessage(playeridCOLOR_GRAD2"Администратор не может быть забанен!");
                                                    new 
    ip[15];
                                                    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(
    IsIpFound(result))
                                                    {
                                                            
    PlayerInfo[playerid][pMuteTime] = 10800;
                                                            
    PlayerInfo[playerid][pMuted] = 1;
                                                            
    format(stringersizeof(stringer), "%s: %s",PlayerInfo[playerid][pNames],result);
                                                            
    ABroadCast(COLOR_LIGHTRED,stringer,1);
                                                            
    GetPlayerIp(playerid,ip,14);
                                                            
    format(stringersizeof(stringer), "- ID: %d | IP: [%s]",playerid,ip);
                                                            
    ABroadCast(COLOR_LIGHTRED,stringer,1);
                                                            
    SendMes(playeridCOLOR_LIGHTRED"Вы получили бан чата на 3 часа");
                                                            
    SetPlayerChatBubble(playerid,"заткнут(а)",COLOR_PURPLE,30.0,10000);
                                                            
    KickEx(playerid);
                                                            return 
    true;
                                                    }
                                                    new 
    chislo;
                                                    switch(
    PlayerInfo[giveplayerid][pBanKol])
                                                    {
                                                    case 
    0chislo 7;
                                                    case 
    1chislo 14;
                                                    case 
    2chislo 7;
                                                    case 
    3chislo 14;
                                                    case 
    4chislo 30;
                                                    default: 
    chislo 30;
                                                    }
                                                    if(
    strfind(result"1"true) == 0)
                                                    {
                                                            
    format(strcmd,sizeof(strcmd), "Администратор {FFFFFF}%s {FF9900}забанил {FFFFFF}%s {FF9900}на {FFFFFF}%d {FF9900}дней. {FF9900}Причина: {FFFFFF}Читы"PlayerInfo[playerid][pNames], PlayerInfo[giveplayerid][pNames], chislo);
                                                            
    SendClientMessageToAll(COLOR_ORANGEstrcmd);
                                                            
    format(stringrsizeof(stringr), "Читы");
                                                            
    getdate(yearmonthday);
                                                            
    gettime(hour,minuite,second);
                                                            
    FixHour(hour);
                                                            
    hour shifthour;
                                                            new 
    data2[64];
                                                            
    format(data216"%d-%d-%d %d:%d",day,month,year,hour,minuite);
                                                            
    format(stringersizeof(stringer), "INSERT INTO `banlog` (`Name`, `NameAdmin`,`Day`, `Date`, `Text`) VALUES ('%s','%s','7','%s','Чит')",PlayerInfo[giveplayerid]
    [
    pNames],PlayerInfo[playerid][pNames],data2);
                                                            
    mysql_function_query(connectsstringerfalse"","");
                                                    }
                                                    else if(
    strfind(result"2"true) == 0)
                                                    {
                                                            
    format(strcmd,sizeof(strcmd), "Администратор {FFFFFF}%s {FF9900}забанил {FFFFFF}%s {FF9900}на {FFFFFF}%d {FF9900}дней. {FF9900}Причина: {FFFFFF}Реклама"PlayerInfo[playerid][pNames], PlayerInfo[giveplayerid][pNames], chislo);
                                                            
    SendClientMessageToAll(COLOR_ORANGEstrcmd);
                                                            
    format(stringrsizeof(stringr), "Реклама");
                                                            
    getdate(yearmonthday);
                                                            
    gettime(hour,minuite,second);
                                                            
    FixHour(hour);
                                                            
    hour shifthour;
                                                            new 
    data2[64];
                                                            
    format(data216"%d-%d-%d %d:%d",day,month,year,hour,minuite);
                                                            
    format(stringersizeof(stringer), "INSERT INTO `banlog` (`Name`, `NameAdmin`,`Day`, `Date`, `Text`) VALUES ('%s','%s','14','%s','Реклама')",PlayerInfo[giveplayerid]
    [
    pNames],PlayerInfo[playerid][pNames],data2);
                                                            
    mysql_function_query(connectsstringerfalse"","");
                                                    }
                                                    else
                                                    {
                                                            
    format(strcmd,sizeof(strcmd), "Администратор {FFFFFF}%s {FF9900}забанил {FFFFFF}%s {FF9900}на {FFFFFF}%d {FF9900}дней. {FF9900}Причина: {FFFFFF}%s",PlayerInfo[playerid][pNames], PlayerInfo[giveplayerid][pNames], chisloresult);
                                                            
    SendClientMessageToAll(COLOR_ORANGE,strcmd);
                                                            
    format(stringrsizeof(stringr), "%s",result);
                                                            
    getdate(yearmonthday);
                                                            
    gettime(hour,minuite,second);
                                                            
    FixHour(hour);
                                                            
    hour shifthour;
                                                            new 
    data2[64];
                                                            
    format(data216"%d-%d-%d %d:%d",day,month,year,hour,minuite);
                                                            
    format(stringersizeof(stringer), "INSERT INTO `banlog` (`Name`, `NameAdmin`,`Day`, `Date`, `Text`) VALUES ('%s','%s','30','%s','%s')",PlayerInfo[giveplayerid]
    [
    pNames],PlayerInfo[playerid][pNames],data2,result);
                                                            
    mysql_function_query(connectsstringerfalse"","");
                                                    }
                                                    
    antiwarn[playerid] += 8;
                                                    
    PlayerInfo[playerid][pBana] += 1;
                                                    if(
    antiwarn[playerid] >= 30 && anti[playerid] == 0anti[playerid] = 1antiwarn[playerid] = 300;
                                                    new 
    curdate getdate(year,month,day);
                                                    
    PlayerInfo[giveplayerid][pLocked2] = 1;
                                                    
    PlayerInfo[giveplayerid][pBanTime1] = curdate+chislo;
                                                    
    PlayerInfo[giveplayerid][pBanData1] = curdate;
                                                    
    getdate(yearmonthday);
                                                    
    gettime(hour,minuite,second);
                                                    
    FixHour(hour);
                                                    
    hour shifthour;
                                                    
    AntiBan[playerid] += 30;
                                                    
    format(stringersizeof(stringer), "    Nick  [%s]    R-IP [%s]    L-IP  [%s]    IP  [%s]",PlayerInfo[giveplayerid][pNames],PlayerInfo[giveplayerid][
    pIpReg],PlayerInfo[giveplayerid][pIpReg],ip);
                                                    
    ABroadCast(COLOR_LIGHTRED,stringer,1);
                                                    
    KickEx(giveplayerid);
                                                    return 
    true;
                                            }
                                    }
                                    else 
    SendClientMessage(playeridCOLOR_GREY"Игрок не найден!");
                            }
                            else 
    SendClientMessage(playeridCOLOR_GREY"У вас недостаточно прав!");
                    }
                    return 
    true
    Голова совсем не варит.
    Последний раз редактировалось Ne_nub; 02.08.2016 в 02:54.

  2. #2
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    ну и код
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  3. #3
    Аватар для Ne_nub
    Пользователь

    Статус
    Оффлайн
    Регистрация
    28.05.2016
    Сообщений
    74
    Репутация:
    0 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    ну и код

    Я знаю )

  4. #4
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    Цитата Сообщение от Ne_nub Посмотреть сообщение
    Я знаю )
    Вангую что тебе не кто не ответил, потому что такой код з@п@дло кому то перебирать и писать с нуля,
    мой тебе совет найти какой нибудь new.pwn на новых командных движках и с норм кодом.
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  5. Пользователь сказал cпасибо:
    Роуди. (02.08.2016)
  6. #5
    Аватар для StevenH
    Пользователь

    Статус
    Оффлайн
    Регистрация
    13.10.2015
    Сообщений
    516
    Репутация:
    21 ±
    Цитата Сообщение от Ne_nub Посмотреть сообщение
    Я знаю )
    Выше совет годный, подобная команда, на DC_CMD, будет занимать в раз 5 меньше строк, да и как минимум будет лучше "оптимизация". С таким кодом, как выше и ответили, врятли кто буде помогать, хотя может найдутся такие

  7. #6
    Аватар для Ne_nub
    Пользователь

    Статус
    Оффлайн
    Регистрация
    28.05.2016
    Сообщений
    74
    Репутация:
    0 ±
    Цитата Сообщение от StevenH Посмотреть сообщение
    Выше совет годный, подобная команда, на DC_CMD, будет занимать в раз 5 меньше строк, да и как минимум будет лучше "оптимизация". С таким кодом, как выше и ответили, врятли кто буде помогать, хотя может найдутся такие
    Да, знаю что dc_cmd хорош, но переводить все команды в моде.. Ухх.

  8. #7
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    Цитата Сообщение от Ne_nub Посмотреть сообщение
    Да, знаю что dc_cmd хорош, но переводить все команды в моде.. Ухх.
    Если этот мод ты начал недавно ковырять, то поверь есть намного лучше моды, бросай этот гиблый код
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

  9. #8
    Аватар для Ne_nub
    Пользователь

    Статус
    Оффлайн
    Регистрация
    28.05.2016
    Сообщений
    74
    Репутация:
    0 ±
    Цитата Сообщение от vovandolg Посмотреть сообщение
    Если этот мод ты начал недавно ковырять, то поверь есть намного лучше моды, бросай этот гиблый код
    Мод свой ( помогали писать ). А, кстати. Можно ли как-нибудь сразу все команды перевести на dc_cmd ?

  10. #9
    Аватар для BadPawn
    Пользователь

    Статус
    Оффлайн
    Регистрация
    15.01.2016
    Адрес
    Приморье, Спасск-Дальний
    Сообщений
    165
    Репутация:
    7 ±
    Цитата Сообщение от Ne_nub Посмотреть сообщение
    Мод свой ( помогали писать ). А, кстати. Можно ли как-нибудь сразу все команды перевести на dc_cmd ?
    Утром начал, ночью закончил. )))

  11. #10
    Аватар для vovandolg
    Пользователь

    Статус
    Оффлайн
    Регистрация
    17.11.2015
    Адрес
    Stavropol
    Сообщений
    1,369
    Репутация:
    113 ±
    Цитата Сообщение от Ne_nub Посмотреть сообщение
    Мод свой ( помогали писать ). А, кстати. Можно ли как-нибудь сразу все команды перевести на dc_cmd ?
    Значит плохому Вас научили писать раз мод Ваш, а команды с говномодов)
    [Anticheat]___Invisible Fly Hack
    [Anticheat]____Weapon/Ammo Hack
    [Function]______ResetPlayerWeaponSlot
    [Function]_______FIX_SetPlayerAmmo
    [ServerMod]______TDM | Zombie Apokalypse

 

 
Страница 1 из 2 1 2 ПоследняяПоследняя

Информация о теме

Пользователи, просматривающие эту тему

Эту тему просматривают: 1 (пользователей: 0 , гостей: 1)

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения
  •