Добро пожаловать на Pro Pawn - Портал о PAWN-скриптинге.
Показано с 1 по 5 из 5
  1. #1
    Аватар для Ruskadance
    Пользователь

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Сообщений
    12
    Репутация:
    32 ±

    [RakSAMP] Парсер ников

    Парсер ников для RakSAMP

    by Ruskadance
    Вставляем в cmds.cpp:
    PHP код:
    if(!strncmp(szCMD"parse"5) || !strncmp(szCMD"PARSE"5)) {
        
    int count 0;
        
    FILE *fileNicks NULL;
        
    char filename[512];
        
    snprintf(filenamesizeof(filename), "nicks.txt");
        
    fileNicks fopenfilename"w" );
        if(
    fileNicks == NULL)
            
    Log("[RakSAMP] Ошибка #15. Не удалось открыть файл");
        for (
    size_t i 0MAX_PLAYERSi++) {
            if(
    playerInfo[i].iIsConnected) {
                
    fprintf(fileNicks"%s\n",getPlayerName(i));
                
    count++;
            }
        }  
        
    fclose(fileNicks);
        if(
    count == 0)
            
    Log("[RakSAMP] Клиент не подключен к серверу/на сервере нет игроков");
        else
            
    Log("[RakSAMP] Ники спарсены в файл \"nicks.txt\" (в папке с RakSAMP)");

    Для того чтобы спарсить ники, введите !parse. Парсинг происходит со скоростью света. Использовать команду можно для любых целей, одна из них - брут задротов.

    Автор: Ruskadance
    Спасибо: Daniel_Cortez
    Специально для Pro-Pawn.Ru
    Последний раз редактировалось Ruskadance; 12.06.2013 в 17:00. Причина: Обновил код

  2. 3 пользователя(ей) сказали cпасибо:
    Daniel_Cortez (12.06.2013) Osetin (12.06.2013) Salvacore (05.11.2013)
  3. #2
    Аватар для Daniel_Cortez
    "Это не хак, это фича"

    Статус
    Оффлайн
    Регистрация
    06.04.2013
    Адрес
    Novokuznetsk, Russia
    Сообщений
    2,201
    Репутация:
    2590 ±
    Неплохо.
    Единственное, что смущает: цикл начинается с 999, когда вместо этого числа можно подставить константу типа MAX_PLAYERS.

    Да и вообще его можно реорганизовать следующим образом:
    PHP код:
        for (size_t i 0MAX_PLAYERSi++) {
            if(
    playerInfo[i].iIsConnected) {
                
    fprintf(fileNicks"%s\n",getPlayerName(i));
                
    counta++;
            }
        } 
    Последний раз редактировалось Daniel_Cortez; 12.06.2013 в 14:37.
    Индивидуально в ЛС по скриптингу не помогаю. Задавайте все свои вопросы здесь (click).

  4. 2 пользователя(ей) сказали cпасибо:
    Ruskadance (12.06.2013) Salvacore (20.10.2013)
  5. #3
    Аватар для #MAVRIN
    Пользователь

    Статус
    Оффлайн
    Регистрация
    10.06.2013
    Сообщений
    171
    Репутация:
    70 ±
    Нормально!

  6. Пользователь сказал cпасибо:
    Salvacore (20.10.2013)
  7. #4
    Аватар для Ra4ok
    Пользователь

    Статус
    Оффлайн
    Регистрация
    20.10.2013
    Адрес
    Pro-Pawn.Ru
    Сообщений
    99
    Репутация:
    7 ±
    Норм

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

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

 

 

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

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

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

Ваши права

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