CSGO BarTime после обновления (1.36.3.6)

komashchenko

Идиот
Сообщения
916
Реакции
2,569
Image 4.png

После обновления 1.36.3.6 в CSGO нельзя включить BarTime используя
PHP:
SetEntPropFloat(iClient, Prop_Send, "m_flProgressBarStartTime", GetGameTime());
SetEntProp(iClient, Prop_Send, "m_iProgressBarDuration", 4);

Используем CSGO BarTime после обновления (1.36.3.6)

Вызвать его можно через функцию CCSPlayer::SetProgressBarTime
PHP:
StartPrepSDKCall(SDKCall_Player);
PrepSDKCall_SetSignature(SDKLibrary_Server, "\x55\x89\xE5\x83\xEC\x48\x89\x5D\xF4\x8B\x5D\x08\x89\x75\xF8\x8B\x75\x0C\x89\x7D\xFC\x39\xB3\xE8\x27\x00\x00", 27); //Linux
PrepSDKCall_AddParameter(SDKType_PlainOldData, SDKPass_Plain);
g_hSetProgressBarTime = EndPrepSDKCall();


SDKCall(g_hSetProgressBarTime, iClient, 4);
После того как отсчет завершится нужно вызвать SDKCall(g_hSetProgressBarTime, iClient, 0); иначе он не исчезнет
 
Последнее редактирование:

gibs

Фитиль народного волненья
Сообщения
722
Реакции
407
Мошенник
А максимальное значение увеличилось? Там было около 15.0 вроде
 

aysbe__

Участник
Сообщения
47
Реакции
0
А не могли бы вы скинуть этот плагин готовый ?
 

Wend4r

I'm Source Engine masochist
Сообщения
107
Реакции
432
Способ без всяких сигнатур

NetProps offsets:
    m_flSimulationTime = FindSendPropInfo("CBaseEntity", "m_flSimulationTime");
    m_flProgressBarStartTime = FindSendPropInfo("CCSPlayer", "m_flProgressBarStartTime");
    m_iProgressBarDuration = FindSendPropInfo("CCSPlayer", "m_iProgressBarDuration");
    m_iBlockingUseActionInProgress = FindSendPropInfo("CCSPlayer", "m_iBlockingUseActionInProgress");
void SetProgressBar():
void SetProgressBar(int iClient, int iProgressTime)
{
    float flGameTime = GetGameTime();

    SetEntDataFloat(iClient, m_flSimulationTime, flGameTime + float(iProgressTime), true);
    SetEntData(iClient, m_iProgressBarDuration, iProgressTime, 4, true);
    SetEntDataFloat(iClient, m_flProgressBarStartTime, flGameTime, true);

    // Progress bar type 0-15
    SetEntData(iClient, m_iBlockingUseActionInProgress, 0, 4, true);
}

void ResetProgressBar():
void ResetProgressBar(int iClient)
{
    SetEntDataFloat(iClient, m_flProgressBarStartTime, 0.0, true);
    SetEntData(iClient, m_iProgressBarDuration, 0, 1, true);
}
 
Последнее редактирование:

komashchenko

Идиот
Сообщения
916
Реакции
2,569
Дополнение к CSGO BarTime после обновления (1.36.3.6)
C++:
void SetProgressBarFloat(int iClient, float fProgressTime)
{
    int iProgressTime = RoundToCeil(fProgressTime);
    float flGameTime = GetGameTime();
    
    SetEntDataFloat(iClient, m_flSimulationTime, flGameTime + fProgressTime, true);
    SetEntData(iClient, m_iProgressBarDuration, iProgressTime, 4, true);
    SetEntDataFloat(iClient, m_flProgressBarStartTime, flGameTime - (iProgressTime - fProgressTime), true);
    SetEntData(iClient, m_iBlockingUseActionInProgress, 0, 4, true);
}
 

Grey83

не пишу плагины с весны 2022
Сообщения
8,521
Реакции
4,982
SetEntDataFloat(iClient, m_flProgressBarStartTime, flGameTime - (iProgressTime - fProgressTime), true);
И для чего нам разница м/у округлённым числом и его неокруглёной версией?
Что-то я не понимаю.
У нас же получится, что там будет число с модулем меньше 1.
 

komashchenko

Идиот
Сообщения
916
Реакции
2,569
@Grey83 Потому что m_iProgressBarDuration может быть только целое число, поскольку fProgressTime всегда будет округлен к большому целому числу, то m_flProgressBarStartTime нужно установить с учётом лишнего времени, так прогресбар будет длиться сколько нужно
 
Последнее редактирование:

RusJJ

Доброе утро девачьки
Сообщения
2,582
Реакции
1,075
Может ли кто-то наделать скринов типов? Или может на пост ссылка, где уже есть.
 

September

Участник
Сообщения
5,238
Реакции
2,742
  • Команда форума
  • #13
Может ли кто-то наделать скринов типов? Или может на пост ссылка, где уже есть.

Можешь ко мне на сервера зайти, давно такое используется, правда чуть по другому реализовано, нежели тут в ресурсах.
 

RusJJ

Доброе утро девачьки
Сообщения
2,582
Реакции
1,075
@September, пока что глянуть не могу, потому и спросил )
 

Wend4r

I'm Source Engine masochist
Сообщения
107
Реакции
432
Последнее редактирование:

RusJJ

Доброе утро девачьки
Сообщения
2,582
Реакции
1,075
@xstage, да знаю я как выглядит) Интересуют именно типы. Ну ничего, дома уже, буду готовить обнову на сервере.

UPD: Ни один из типов не работает, пустота. Нулевой - есть.
 
Последнее редактирование:

Modi

Участник
Сообщения
71
Реакции
16
А есть у кого-то фикс для залипания текста индикатора?
Если игрок пробовал разминировать бомбу или поднять заложника, индикатор до конца карты продолжает отобрать соответствующий текст:
Безымянный.jpg
 
Сверху Снизу