Отлов пройденного времени, после начала раунда

Сообщения
579
Реакции
338
Предупреждения
1
Помог
9 раз(а)
Доброго времени суток, девачки. У меня такая проблема, мой "счетчик" некорректно отображает значение (бывает отстает, либо наоборот опережает). Что подскажите?

upd: roundtime = 8.0
// хочу сделать корректный счетчик с начала раунда

Код:
#include <amxmodx>
new Float: g_fTime;

public plugin_init()
{
    register_clcmd("say /test", "Command_Test");

    register_event("HLTV", "ev_RoundStart", "a", "1=0", "2=0");
    register_logevent("ev_RoundEnd", 2, "1=Round_End");
}

public ev_RoundStart()
{
    g_fTime = get_gametime();
}

public ev_RoundEnd()
{
    g_fTime = 0.0;
}

public Command_Test(iPlayer)
{
    client_print(iPlayer, print_chat, "%f", get_gametime() - g_fTime);
}
Видеофиксация:
 
Последнее редактирование:
Сообщения
1,668
Реакции
1,492
Помог
24 раз(а)
Всё корректно
 
Сообщения
579
Реакции
338
Предупреждения
1
Помог
9 раз(а)
fl0wer, да нет же, отстает время от roundtime
 
Сообщения
278
Реакции
137
I have a plugin that has set_task. Maybe you can use but it may be worse about optimizing.

PHP:
#include <amxmodx>

#define TASKID 2019

new g_time;

public plugin_init()
{
    register_clcmd("say /test", "Command_Test");

    register_event("HLTV", "ev_RoundStart", "a", "1=0", "2=0");
}

public ev_RoundStart()
{
    remove_task(TASKID)
    g_time = 0;

    set_task(1.0, "task_count", TASKID, .flags = "b");
}

public task_count()
{
    g_time++;
}

public Command_Test(iPlayer)
{
    client_print(iPlayer, print_chat, "%i", g_time);
}
 
Сообщения
1,668
Реакции
1,492
Помог
24 раз(а)
Ну возьми из оффсета время...
 
Сообщения
579
Реакции
338
Предупреждения
1
Помог
9 раз(а)
fl0wer, не подскажешь оффсет?
 
Сообщения
1,668
Реакции
1,492
Помог
24 раз(а)
m_fRoundStartTime или m_fRoundStartTimeReal
 

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

Сейчас на форуме нет ни одного пользователя.
Сверху Снизу