Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Мануал Исправляем 0 лвл у ботов ZOOPI

plakapenka

Специалист
Недавно я разместил ресурс с ботами

Боты крутые, работают на стороне клиента и всё такое.
Но многие жалуются на 0 лвл в табе. И сегодня мы решим эту проблему

Для начала нужно загрузить ники ботов из файла.


  • Скопируйте файл NickNames.txt в папку scriptfiles

  • Создадим массив:
C++:
#define MAX_BOTS     500
new name_bots[MAX_BOTS][MAX_PLAYER_NAME];

  • Заполним массив никами из файла:
OnGameModeInit()
C++:
new File: bots = fopen("NickNames.txt", io_read);

for(new i = 0; i < MAX_BOTS; i++)
{
    fread(bots, name_bots[i]);
}


  • И остается лишь сравнить имя подключившегося игрока с имена из БД ботов:
OnPlayerConnect(playerid)

C++:
new name_connect[MAX_PLAYER_NAME];
GetPlayerName(playerid, name_connect, MAX_PLAYER_NAME);

for(new i = 0; i < MAX_BOTS; i++)
{
    if(strfind(name_bots[i], name_connect) != -1)
    {
        // если проверка прошла - playerid бот
        // можно дать лвл в табе прямо здесь
        // можете пометить бота какой-либо переменной чтобы сделать с ним еще что-либо
  
        SetPlayerScore(playerid, random(15));
        break;
    }
}

З.Ы. Данный урок использовал не стандартный файл с именами ботов. Т.к в дефолтном 7к имен, и массив вышел бы весьма большим
Просто оставьте лишь 500 ников в файле и убедитесь, что файл NickNames.txt в scriptfiles такой же, как в папке с программой ботов.
 
Последнее редактирование:
Сверху Снизу