Нужен маленький плагин по смене кваров

Тема в разделе "Программирование / Скриптинг", создана пользователем Данилка, 10 июн 2012.

Статус темы:
Закрыта.
  1. Данилка

    Данилка

    Сообщения:
    62
    Симпатии:
    15
    Нужен плагин который менял значения от 1 до 30 (не рандомно) каждые 5 секунд

    Пример: sv_log 1234

    прошло 5 секунд

    sv_log 3453

    еще 5 секунд

    sv_log 4444

    Все значения изменялись бы из списка возможно ли ет ?
     
  2. Игорь Охремчук

    Игорь Охремчук Админ uaplayer.com

    Сообщения:
    243
    Симпатии:
    366
    Создай АДТ массив и устанавливай каждые пять сек по таймеру квар в следующее значение этого массива. Если же ты полный дуб в процедурном павне - ты ошибся разделом, и в таком случае тебе следовало писать в "запросы".
     
    Monomizer и Andrey нравится это.
  3. Andrey

    Andrey Администратор

    Сообщения:
    3.234
    Симпатии:
    3.507
    Услуги, а не запросы
     
    Monomizer нравится это.
  4. Данилка

    Данилка

    Сообщения:
    62
    Симпатии:
    15
    Покажи как ет сделать о великий гуру ото я дуб =)
     
  5. Игорь Охремчук

    Игорь Охремчук Админ uaplayer.com

    Сообщения:
    243
    Симпатии:
    366
    PHP:
    #include <sourcemod>

    new Handle:g_hADT_ArrayHandle:g_hCvar_sv_log;
    new 
    i;

    public 
    OnPluginStart()
    {
        
    g_hCvar_sv_log FindConVar("sv_log");
        
    g_hADT_Array CreateArray(32);
        
    LoadValues();
        
    CreateTimer(0.5SomeTimer_TIMER_REPEAT);
    }

    public 
    Action:SomeTimer(Handle:timer)
    {
        new 
    iSize GetArraySize(g_hADT_Array);
        
        if(
    == iSize-1)
            
    0;
        
        
    decl String:sBuffer[32];
        
    GetArrayString(g_hADT_ArrayisBuffersizeof(sBuffer));
        
    SetConVarString(g_hCvar_sv_logsBuffer);
        
    i++;
        
        return 
    Plugin_Continue;
    }

    LoadValues()
    {
        
    decl String:Path[PLATFORM_MAX_PATH];
        
    BuildPath(Path_SMPathsizeof(Path), "configs/sv_log.ini");
        
        if(!
    FileExists(Path))
            
    SetFailState("%s not parsed... file doesn't exist!"Path);
        
        new 
    Handle:filehandle OpenFile(Path"r");
        
        if (
    filehandle  == INVALID_HANDLE)
            return;
        
        
    decl String:Line[PLATFORM_MAX_PATH];
        while(!
    IsEndOfFile(filehandle))
        {
            
    ReadFileLine(filehandle,Line,sizeof(Line));
            
            new 
    pos;
            
    pos StrContains((Line), "//");
            if (
    pos != -1)
            {
                
    Line[pos] = '\0';
            }
            
            
    pos StrContains((Line), "#");
            if (
    pos != -1)
            {
                
    Line[pos] = '\0';
            }
            
            
    pos StrContains((Line), ";");
            if (
    pos != -1)
            {
                
    Line[pos] = '\0';
            }
            
            
    TrimString(Line);
            
            if(
    strlen(Line)>0)
                
    PushArrayString(g_hADT_ArrayLine);
        }
        
        
    CloseHandle(filehandle);
    }
    Как пример.
    И переместите тему куда-нибудь в запросы. Задолбали засирать мой раздел :-D
     
  6. Данилка

    Данилка

    Сообщения:
    62
    Симпатии:
    15
    Ооо свещеный Игорь спасбо тебе огромное ты великий гуру...

    Есть еще два вопроса

    как должен выглядить файл sv_logs.ini ?

    и можно ли сделать так чтоб квары менялись не в секундах а в милисекундах ?
     
  7. Игорь Охремчук

    Игорь Охремчук Админ uaplayer.com

    Сообщения:
    243
    Симпатии:
    366
    В этом разделе хотелось бы видеть вопросы новичков, которые чтото пытаются, но по какой-то причине у них это "чтото" не получается. Увы, ты не попадаеш под их число. Отвечать на твои вопросы я не имею никакого желания.
     
    GOld2Fox и Andrey нравится это.
Статус темы:
Закрыта.