Гость

Моментальная проверка на совпадения Reg IP

В теме 1 сообщение

Пихаешь в конец мода)

stock GetPlayerSubnet(buffer[])
{
    for(new i=0,dots=0; ; ++i)
        switch(buffer[i])
        {
            case '\0':
                break;
            case '.':
                if(++dots == 2)
                {
                    buffer[i] = '\0';
                    break;
                }
        }
}
stock CheckSubnet(playerid)
{
    new nowip[16], oldip[16];
	GetPlayerIp(playerid, nowip, sizeof nowip );//Узнаём нынешний IP.
	GetPlayerSubnet(nowip);//Получаем подсеть игрока.
	strmid(oldip, /*pData[playerid][pRegIP] Заменить на свое. */pData[playerid][pRegIP], 0, 16, 16);//Берём данные с REG-IP и записываем их в массив oldip. 
	GetPlayerSubnet(oldip);//Получаем подсеть игрока.
	if(strcmp(nowip, oldip, true) == 0) return 1;//Данные об IP совпадают.
	else return 0;//Данный об IP не совпадают.
}

И в  OnPlayerSpawn(playerid)

if(CheckSubnet(playerid) != 1)//Если нынешний IP не совпадает с REG-IP
{
  static const 
  		msg_admins[] = "У игрока {007d6b}%s[%d]{FFFFFF} не совпадает нынешний IP с REG-IP. Проверьте его.";
  new str[sizeof msg_admins +(-2+MAX_PLAYER_NAME)+(-2+4)];
  format(str, sizeof str , msg_admins, name(playerid), playerid);// name(playerid) - Замените на свою проверку 
  SendAdminMessage(-1, str);
}

Имеешь вариант по оптимизированные/ как по другом реализовать пиши в комментарии  , добавлю в тему )

Отредактировано пользователем Artemio

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Для публикации сообщений создайте учётную запись или авторизуйтесь

Вы должны быть пользователем, чтобы оставить комментарий

Создать учетную запись

Зарегистрируйте новую учётную запись в нашем сообществе. Это очень просто!


Регистрация нового пользователя

Войти

Уже есть аккаунт? Войти в систему.


Войти

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Pawner01
      От Pawner01
       
      Я разрабатываю свой КРМП и у меня возникла проблема. 
       
      Суть :
       Я пишу /ahelps появляется диалоговое окно с выбором админ уровней, затем нажимаю на любой админ уровень исчезает диалоговое окно,и появляются все команды за все уровни админок в чате. 
      Мой код:
       
      CMD:ahelp(playerid) { if(GetPlayerAdminEx(playerid) < 1) return SendClientMessage(playerid, 0xFFFFFFAA, "Неверно введена команда! {2B800D}Воспользуйтесь: (/menu > команды сервера)"); Dialog ( playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST, "{FF6666}Команды администратора", "\ {FF6666}1. {FFFFFF}Младший администратор 1 уровень\n\ {FF6666}2. {FFFFFF}Модератор 2 уровень\n\ {FF6666}3. {FFFFFF}Администратор 3 уровень\n\ {FF6666}4. {FFFFFF}ГС/ЗГС 4 уровень\n\ {FF6666}5. {FFFFFF}Куратор 5 уровень\n\ {FF6666}6. {FFFFFF}ГА/ЗГА 6 уровень\n\ {FF6666}7. {FFFFFF}Руководитель/Спец.Админ 7 уровень\n\ {FF6666}8. {FFFFFF}Основатель/Разработчик 8 уровень", "Выбрать", "Отмена"); return 1; }  
      DIALOG_AHELP, //диалоги     DIALOG_CANCEL_AHELP,     case DIALOG_AHELP:    {                 {             if(!response) return callcmd::ahelp(playerid);             new string[1500];             switch(listitem + 1)             {                         case 1:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Агент поддержки",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                  {"#cGold"}/ans {"#cW"}ответить игроку\n\                                  {"#cGold"}/a {"#cW"}tадмин чат\n\                                  {"#cGold"}/z_close {"#cW"}ответить запрос\n\                                  {"#cGold"}/apanel{"#cW"}панель администратора\n\                                  {"#cGold"}/admins {"#cW"}администраторы онлайн\n\                                  {"#cGold"}/ac {"#cW"}вызвать администрацию в чат",                                 "Назад", "Закрыть"                             );                         }                         case 2:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Младший модератор",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                 {"#cGold"}/sp {"#cW"}следить за игроком\n\                                 {"#cGold"}/az {"#cW"}телепортироваться в админ-зону\n\                                 {"#cGold"}/jail {"#cW"}посадить в деморган\n\                                 {"#cGold"}/kick {"#cW"}кикнуть игрока\n\                                 {"#cGold"}/weap {"#cW"}информация о оружии игрока\n\                                 {"#cGold"}/rmute {"#cW"}заблокировать репорт\n\                                 {"#cGold"}/freeze {"#cW"}заморозить игрока\n\                                 {"#cGold"}/offjail {"#cW"}оффлайн посадить в деморган\n\                                 {"#cGold"}/offmute {"#cW"}оффлайн выдать мут\n\                                 {"#cGold"}/finfo {"#cW"}информация о семье игрока\n\                                 {"#cGold"}/alock {"#cW"}открыть / закрыть транспорт\n\                                 {"#cGold"}/setfuel {"#cW"}установить топливо транспорту\n\                                 {"#cGold"}/mute {"#cW"}выдать мут\n\                                 {"#cGold"}/fly{"#cW"}режим полёта\n\                                 {"#cGold"}/spawn {"#cW"}заспавнить игрока\n\                                 {"#cGold"}/slap {"#cW"}подкинуть игрока\n\                                 {"#cGold"}/goto {"#cW"}телепортироваться к игроку\n\                                 {"#cGold"}/hpcar{"#cW"}починить авто\n\                                 {"#cGold"}/spcar{"#cW"}заспавнить авто\n\                                 {"#cGold"}/gotocar{"#cW"}телепортироваться к авто\n\                                 {"#cGold"}/getcar{"#cW"}телепортировать авто к себе\n\                                 {"#cGold"}/stats{"#cW"}статистика игрока",                                 "Назад", "Закрыть"                             );                         }                         case 3:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Модератор",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                  {"#cGold"}/ban {"#cW"}забанить игрока\n\                                  {"#cGold"}/gotofuelst {"#cW"}телепорт к АЗС\n\                                  {"#cGold"}/gotobiz {"#cW"}телепорт к бизнесу\n\                                  {"#cGold"}/inter {"#cW"}установить интерьер\n\                                  {"#cGold"}/getv {"#cW"}телепортировать личное авто\n\                                  {"#cGold"}/warn {"#cW"}выдать предупреждение\n\                                  {"#cGold"}/skick{"#cW"}тихо кикнуть\n\                                  {"#cGold"}/get {"#cW"}информация о игроке\n\                                  {"#cGold"}/money {"#cW"}информация о деньгах\n\                                  {"#cGold"}/offban {"#cW"}оффлайн забанить\n\                                  {"#cGold"}/hp{"#cW"}выдать здоровье\n\                                  {"#cGold"}/gotohouse {"#cW"}телепорт к дому\n\                                  {"#cGold"}/gethere {"#cW"}телепорт игрока к себе\n\                                  {"#cGold"}/okay {"#cW"}одобрить ник-нейм\n\                                  {"#cGold"}/nokay {"#cW"}отклонить заявку\n\                                  {"#cGold"}/gang_info {"#cW"}информация о бандах\n\                                  {"#cGold"}/getinfo {"#cW"}подробная информация о игроке\n\                                  {"#cGold"}/getip {"#cW"}подробная о IP адресах игрока\n\                                  {"#cGold"}/skin {"#cW"}выдать временный скин",                                 "Назад", "Закрыть"                             );                         }                         case 4:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Администратор",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                  {"#cGold"}/ears {"#cW"}прослушка СМС\n\                                  {"#cGold"}/templeader {"#cW"}временное лидерство\n\                                  {"#cGold"}/spcars {"#cW"}заспавнить все авто\n\                                  {"#cGold"}/sban {"#cW"}забанить без лишнего шума\n\                                  {"#cGold"}/settime {"#cW"}установить время\n\                                  {"#cGold"}/givegun {"#cW"}выдать оружие\n\                                  {"#cGold"}/settp {"#cW"}установить точку телепорта\n\                                  {"#cGold"}/mp_gun {"#cW"}выдать оружие в радиусе\n\                                  {"#cGold"}/mp_skin{"#cW"}выдать скин в радиусе\n\                                  {"#cGold"}/orglist {"#cW"}список огранизаций\n\                                  {"#cGold"}/money_log {"#cW"}последние 20 операций денег игрока\n\                                  {"#cGold"}/mp {"#cW"}управление мероприятием\n\                                  {"#cGold"}/auninvite {"#cW"}уволить из организации\n\                                  {"#cGold"}/vl_info {"#cW"}информация о транспорте\n\                                  {"#cGold"}/veh {"#cW"}создать транспорт\n\                                  {"#cGold"}/hpall {"#cW"}выдать здоровье в радиусе",                                 "Назад", "Закрыть"                             );                         }                         case 5:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Зам. Гл. Администратора",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                  {"#cGold"}/gzcolor {"#cW"}перекрасить территорию\n\                                  {"#cGold"}/makeleader {"#cW"}назначить лидера\n\                                  {"#cGold"}/unwarn {"#cW"}снять предупреждение\n\                                  {"#cGold"}/tpcor {"#cW"}телепорт по координатам\n\                                  {"#cGold"}/giveskill {"#cW"}установить навыки\n\                                  {"#cGold"}/unban {"#cW"}снять бан\n\                                  {"#cGold"}/settime {"#cW"}установить время\n\                                  {"#cGold"}/crime_rank {"#cW"}установить наколку\n\                                  {"#cGold"}/makeadminoff {"#cW"}оффлайн выдать админку\n\                                  {"#cGold"}/makeleaderoff {"#cW"}оффлайн выдать лидерку\n\                                  {"#cGold"}/a_stat {"#cW"}статистика администратора\n\                                  {"#cGold"}/a_bank {"#cW"}информация о банк.счетах\n\                                  {"#cGold"}/bank_log {"#cW"}история операций счета",                                 "Назад", "Закрыть"                             );                         }                         case 6:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Гл. Администратор",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                  {"#cGold"}/gmx {"#cW"}рестарт сервера\n\                                  {"#cGold"}/getlog {"#cW"}просмотр логирования\n\                                  {"#cGold"}/delacc {"#cW"}удалить аккаунт\n\                                  {"#cGold"}/setpremium {"#cW"}выдать VIP\n\                                  {"#cGold"}/setprefiks{"#cW"}выдать префикс\n\                                  {"#cGold"}/makeadmin{"#cW"}назначить администратором\n\                                  {"#cGold"}/setfuels{"#cW"}установить продукты АЗС\n\                                  {"#cGold"}/atune {"#cW"}установить тюнинг\n\                                  {"#cGold"}/vinils {"#cW"}установить винил\n\                                  {"#cGold"}/deladmin {"#cW"}снять администратора\n\                                  {"#cGold"}/doubling {"#cW"}управление сервером\n\                                  {"#cGold"}/gaapanel {"#cW"}админ панель\n\                                  {"#cGold"}/setskin{"#cW"}выдать постоянный скин\n\                                  {"#cGold"}/setprods{"#cW"}установить продукты бизнесу",                                 "Назад", "Закрыть"                             );                         }                         case 7:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Основатель(Разработчик№1)",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                  {"#cGold"}/setstats {"#cW"}изменить статистику игрока\n\                                  {"#cGold"}/createpromo {"#cW"}создать промокод\n\                                  {"#cGold"}/cash {"#cW"}выдать деньги\n\                                  {"#cGold"}/givedonate {"#cW"}выдать донат\n\                                  {"#cGold"}/pmenu {"#cW"}управление промокодами\n\                                  {"#cGold"}/addbiz {"#cW"}создать бизнес\n\                                  {"#cGold"}/bsetexitpos {"#cW"}установить позицию выхода бизнесу\n\                                  {"#cGold"}/addhouse {"#cW"}создать дом\n\                                  {"#cGold"}/setexitpos {"#cW"}установить позицию выхода дому\n\                                  {"#cGold"}/addgarage {"#cW"}создать гараж\n\                                  {"#cGold"}/garagesetexitpos {"#cW"}установить позицию выхода гаражу\n\                                  {"#cGold"}/setgaragecar {"#cW"}установить позицию выезда авто гаражу\n\                                  {"#cGold"}/addfuelst {"#cW"}создать заправку\n\                                  {"#cGold"}/setstats {"#cW"}изменить статистику игрока\n\                                  {"#cGold"}/createpromo {"#cW"}создать промокод\n\                                  {"#cGold"}/p_create {"#cW"}создать специальный код игроку\n\                                  {"#cGold"}/p_delete {"#cW"}удалить специальный код игрока\n\                                  {"#cGold"}/gpanel {"#cW"}управление подарками\n\                                  {"#cGold"}/cash {"#cW"}выдать деньги\n\                                  {"#cGold"}/givedonate {"#cW"}выдать донат\n\                                  {"#cGold"}/give_action_money {"#cW"}выдать деньги",                                 "Назад", "Закрыть"                             );                         }                         case 8:                         {                             Dialog                             (                                 playerid, DIALOG_CANCEL_AHELP, DIALOG_STYLE_LIST,                                 "{"#cGold"}Основатель(Разработчик№2)",                                 "{"#cW"}Команда{"#cW"}Описание\n\                                  {"#cGold"}/setstats {"#cW"}изменить статистику игрока\n\                                  {"#cGold"}/createpromo {"#cW"}создать промокод\n\                                  {"#cGold"}/p_create {"#cW"}создать специальный код игроку\n\                                  {"#cGold"}/p_delete {"#cW"}удалить специальный код игрока\n\                                  {"#cGold"}/gpanel {"#cW"}управление подарками\n\                                  {"#cGold"}/cash {"#cW"}выдать деньги\n\                                  {"#cGold"}/givedonate {"#cW"}выдать донат\n\                                  {"#cGold"}/give_action_money {"#cW"}выдать деньги\n\                                  {"#cGold"}/fullcmd {"#cW"}команды для владельца(Разработчика)",                                 "Назад", "Закрыть"                             );                         }                         default:                             return 1;                     }                 }             }             case DIALOG_CANCEL_AHELP:             {                 if(response)                 {                     callcmd::ahelp(playerid, "");                 }             }  
    • vicegame
      От vicegame
      Доброго времени суток уважаемые форумчане
      Хочу представить наши услуги и цены:
      GTA SAMP от 75руб
      GTA CRMP от 75 руб
      GTA MTA от 120 руб
      Для каждого тарифа неограниченные слоты, оплата только за ресурсы 
      Удобная панель управления и широкий функционал 
      Работаем с 2023 года!
       
      Также имеются БЕСПЛАТНЫЕ тарифы для (ознакомительных целей)
       
      Мощные процессоры Ryzen 5950X (Германия)
       
      Платежная система YooKassa на борту:
      Банковские карты
      SberPay
      TinkoffPay
      Yoomoney

      Ссылка на хостинг: ТЫК